build_config: AArch64 (arm64) basic support 33/1533/3
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Wed, 4 Sep 2019 12:54:45 +0000 (14:54 +0200)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Thu, 12 Sep 2019 10:34:56 +0000 (10:34 +0000)
- parameterize repo URIs in build_config.ini based on target machine
  architecture where possible;
- add support for diverging values of the same variable based on target
  machine architecture: since nested variable interpolation is not
  supported, implement a mechanism in build-tools which expands
  variables containing the magic string '#ARCH#' to $(uname -m);
- while at it, drop '.x86_64' from packages.yaml versions and let yum
  automatically choose the proper package;

Depends-on: I32cfdc2adc43fb703843383a1e94a807919f4e8c

Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Co-authored-by: Valentin Radulescu <Valentin.Radulescu@enea.com>
Change-Id: I3a940e2e0ece6febc9fc90d6bbbc6ff8ef212e14

build_config.ini
packages.yaml

index 1153a8b..3f797ef 100644 (file)
@@ -6,8 +6,17 @@ iso_image_label=%(product_release_label)s
 
 nexus_url=https://nexus3.akraino.org
 
-centos_reposnap=http://mirror.centos.org/centos/7
-base_image=https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1809.qcow2
+centos_arch_x86_64=x86_64
+centos_arch_aarch64=aarch64
+centos_arch=%(centos_arch_#ARCH#)s
+
+centos_reposnap_x86_64=http://mirror.centos.org/centos/7
+centos_reposnap_aarch64=http://mirror.centos.org/altarch/7
+centos_reposnap=%(centos_reposnap_#ARCH#)s
+
+base_image_x86_64=https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1809.qcow2
+base_image_aarch64=https://cloud.centos.org/altarch/7/images/aarch64/CentOS-7-aarch64-GenericCloud-1708.qcow2.xz
+base_image=%(base_image_#ARCH#)s
 
 [rpm]
 centos_sources=
@@ -24,21 +33,21 @@ localrepo=file:///work/results/repo#priority=1
 #  - these are the repository name used by CentOS when building the base image
 #  - "none" is repository for base packages without repository information
 #none=<should-we-have-single-repo-to-provide-it-all??>
-none1=%(centos_reposnap)s/extras/x86_64
-none2=%(centos_reposnap)s/os/x86_64
-none3=%(centos_reposnap)s/updates/x86_64
-base=%(centos_reposnap)s/os/x86_64
-updates=%(centos_reposnap)s/updates/x86_64
-extras=%(centos_reposnap)s/extras/x86_64
+none1=%(centos_reposnap)s/extras/%(centos_arch)s
+none2=%(centos_reposnap)s/os/%(centos_arch)s
+none3=%(centos_reposnap)s/updates/%(centos_arch)s
+base=%(centos_reposnap)s/os/%(centos_arch)s
+updates=%(centos_reposnap)s/updates/%(centos_arch)s
+extras=%(centos_reposnap)s/extras/%(centos_arch)s
 
 [repositories]
 akraino-ta=%(nexus_url)s/repository/rpm.snapshots/%(product)s/release-%(product_release)s/rpms/x86_64#priority=10
-docker-ce-stable=https://download.docker.com/linux/centos/7/x86_64/stable
-epel=https://dl.fedoraproject.org/pub/epel/7/x86_64/#exclude=python2-voluptuous python2-pbr
-centos-base=%(centos_reposnap)s/os/x86_64/
-centos-updates=%(centos_reposnap)s/updates/x86_64/
-centos-extras=%(centos_reposnap)s/extras/x86_64/
-centos-ceph=%(centos_reposnap)s/storage/x86_64/ceph-luminous/
-centos-kvm=%(centos_reposnap)s/virt/x86_64/kvm-common/#exclude=libcacard libcacard-devel
-centos-cloud=%(centos_reposnap)s/cloud/x86_64/openstack-queens/#exclude=python2-ironicclient,openstack-ironic-api,openstack-ironic-common,openstack-ironic-conductor
-centos-altarch=http://mirror.centos.org/altarch/7/kernel/x86_64/
+docker-ce-stable=https://download.docker.com/linux/centos/7/%(centos_arch)s/stable
+epel=https://dl.fedoraproject.org/pub/epel/7/%(centos_arch)s/#exclude=python2-voluptuous python2-pbr
+centos-base=%(centos_reposnap)s/os/%(centos_arch)s/
+centos-updates=%(centos_reposnap)s/updates/%(centos_arch)s/
+centos-extras=%(centos_reposnap)s/extras/%(centos_arch)s/
+centos-ceph=%(centos_reposnap)s/storage/%(centos_arch)s/ceph-luminous/
+centos-kvm=%(centos_reposnap)s/virt/%(centos_arch)s/kvm-common/#exclude=libcacard libcacard-devel
+centos-cloud=%(centos_reposnap)s/cloud/%(centos_arch)s/openstack-queens/#exclude=python2-ironicclient,openstack-ironic-api,openstack-ironic-common,openstack-ironic-conductor
+centos-altarch=http://mirror.centos.org/altarch/7/kernel/%(centos_arch)s/
index 1285a5b..63673d2 100644 (file)
@@ -8,14 +8,14 @@ teamd:
     uninstall: True
 wpa_supplicant:
     uninstall: True
-kernel-4.14.106-200.el7.x86_64:
+kernel-4.14.106-200.el7:
 image-provision:
 product-manifest:
 access-management:
 ansible-2.4.4.0-1.el7.ans.noarch:
-containerd.io-1.2.6-3.3.el7.x86_64:
-docker-ce-19.03.2-3.el7.x86_64:
-docker-ce-cli-19.03.2-3.el7.x86_64:
+containerd.io-1.2.6-3.3.el7:
+docker-ce-19.03.2-3.el7:
+docker-ce-cli-19.03.2-3.el7:
 caas-chartrepo:
 caas-cpupooler:
 caas-custom_metrics: