ta: multiarch build: ISO, python-peewee RPM 41/1441/9
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Wed, 21 Aug 2019 13:24:09 +0000 (15:24 +0200)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Fri, 13 Sep 2019 16:46:22 +0000 (18:46 +0200)
commitc109904304d487c973b3bcfab90425661826a401
tree4c660014fe08bc06af29bc6eff2df32cd9dbfbdf
parent605a84f23c42ebe91add58935901d4ac2ec3bfa9
ta: multiarch build: ISO, python-peewee RPM

Enable both amd64 and arm64 builds for python-peewee, which will
later be extended to all arch-dependent packages in TA.

To accomodate non-x86 ISO builds (triggered on RPM changes merge):
- rename artifacts to include the machine architecture in their
  names (e.g. bootcd.aarch64.iso, bootcd.aarch64.iso.md5 etc.),
  only applicable if $(uname -m) is not 'x86_64' so x86 artifact
  names remain unchanged (e.g. bootcd.iso);
- akraino-project-stream-type-ta: new 'arch' job parameter,
  defaulting to 'amd64', which will allow selecting the proper
  ISO build job (for arm64 TA RPM merge jobs, 'arch' should be
  set to 'arm64', while for amd64 no action is required);
- create arch-specific ISO build jobs (ta-ci-build-{amd64,arm64})
  and let the TA RPM merge jobs trigger the appropiate one;

While at it, fix some related issues:
- adjust ta-rpm-deploy.sh to publish artifacts for the
  current machine architecture (x86_64 or aarch64);
- explicitly set shell to bash where needed, e.g. where `pushd`
  bash builtin is used (otherwise it will fail on systems using
  sh as default shell);
- cleanup git repository destination before clone to allow
  re-running the jobs on non-volatile slaves;
- extend dependency package installation for Debian systems,
  not only RHEL;

Depends-on: I32cfdc2adc43fb703843383a1e94a807919f4e8c
Depends-on: I3a940e2e0ece6febc9fc90d6bbbc6ff8ef212e14

Change-Id: If3adcae723aa4932fc095cc71debdef2d28840ff
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
jjb/akraino-templates/akraino-ta-common-macros.yaml
jjb/akraino-templates/akraino-ta-common-templates.yaml
jjb/shell/ta-iso-deploy.sh
jjb/shell/ta-rpm-deploy.sh
jjb/ta/ci-build.yaml
jjb/ta/python-peewee.yaml