From: Stanislaw Kardach Date: Wed, 24 Feb 2016 20:04:03 +0100 Subject: [PATCH] Add arm64 deb repositories setup --- build/f_isoroot/f_kscfg/ks.cfg | 1 + build/install/apt-ftparchive-deb.conf | 8 +++++++- build/install/apt-ftparchive-release.conf | 2 +- build/install/apt-ftparchive-udeb.conf | 7 ++++++- build/install/install.sh | 22 ++++++++++++++++++---- build/install/uninstall.sh | 18 ++++++++++-------- 6 files changed, 43 insertions(+), 15 deletions(-) diff --git a/build/f_isoroot/f_kscfg/ks.cfg b/build/f_isoroot/f_kscfg/ks.cfg index c93babe..30bad1d 100644 --- a/build/f_isoroot/f_kscfg/ks.cfg +++ b/build/f_isoroot/f_kscfg/ks.cfg @@ -448,6 +448,7 @@ cp -r ${SOURCE}/extra-repos ${repodir}/ cp ${SOURCE}/.treeinfo ${repodir}/centos/x86_64 # Copying Ubuntu files +# FIXME: This is missleading as dist/pool may contain multiple arch! mkdir -p ${repodir}/ubuntu/x86_64/images cp -r ${SOURCE}/ubuntu/dists ${repodir}/ubuntu/x86_64 cp -r ${SOURCE}/ubuntu/pool ${repodir}/ubuntu/x86_64 diff --git a/build/install/apt-ftparchive-deb.conf b/build/install/apt-ftparchive-deb.conf index 0d15aec..e6392f8 100644 --- a/build/install/apt-ftparchive-deb.conf +++ b/build/install/apt-ftparchive-deb.conf @@ -16,12 +16,18 @@ TreeDefault { Directory "pool"; }; -BinDirectory "pool/main" { +BinDirectory "pool/main/binary-amd64" { Packages "dists/trusty/main/binary-amd64/Packages"; BinOverride "./indices/override.trusty.main"; ExtraOverride "./indices/override.trusty.extra.main"; }; +BinDirectory "pool/main/binary-arm64" { + Packages "dists/trusty/main/binary-arm64/Packages"; + BinOverride "./indices/override.trusty.main"; + ExtraOverride "./indices/override.trusty.extra.main"; +}; + Default { Packages { Extensions ".deb"; diff --git a/build/install/apt-ftparchive-release.conf b/build/install/apt-ftparchive-release.conf index 02706bd..2838714 100644 --- a/build/install/apt-ftparchive-release.conf +++ b/build/install/apt-ftparchive-release.conf @@ -13,6 +13,6 @@ APT::FTPArchive::Release::Label "Ubuntu"; APT::FTPArchive::Release::Suite "trusty"; APT::FTPArchive::Release::Version "1.04"; APT::FTPArchive::Release::Codename "trusty"; -APT::FTPArchive::Release::Architectures "amd64"; +APT::FTPArchive::Release::Architectures "amd64 arm64"; APT::FTPArchive::Release::Components "main"; APT::FTPArchive::Release::Description "Ubuntu Trusty Tahr 14.04 LTS"; diff --git a/build/install/apt-ftparchive-udeb.conf b/build/install/apt-ftparchive-udeb.conf index 3b5b239..c6ab4fb 100644 --- a/build/install/apt-ftparchive-udeb.conf +++ b/build/install/apt-ftparchive-udeb.conf @@ -16,11 +16,16 @@ TreeDefault { Directory "pool"; }; -BinDirectory "pool/debian-installer" { +BinDirectory "pool/debian-installer/binary-amd64" { Packages "dists/trusty/main/debian-installer/binary-amd64/Packages"; BinOverride "./indices/override.trusty.main.debian-installer"; }; +BinDirectory "pool/debian-installer/binary-arm64" { + Packages "dists/trusty/main/debian-installer/binary-arm64/Packages"; + BinOverride "./indices/override.trusty.main.debian-installer"; +}; + Default { Packages { Extensions ".udeb"; diff --git a/build/install/install.sh b/build/install/install.sh index 4e0389e..8c29e08 100755 --- a/build/install/install.sh +++ b/build/install/install.sh @@ -122,12 +122,24 @@ prep_make_live() { ssh-copy-id root@$FUELHOST sshfs root@1${FUELHOST}:/ $TMP_HOSTMOUNT - if [ -f $REPO/dists/trusty/main/binary-amd64/Packages.backup ]; then + for arch in arm64 amd64; do + if [ -f $REPO/dists/trusty/main/binary-${arch}/Packages.backup ]; then + echo "Error - found backup file for Packages for ${arch}!" + exit 1 + fi + + if [ -f $REPO/dists/trusty/main/binary-${arch}/Packages.gz.backup ]; then + echo "Error - found backup file for Packages.gz for ${arch}!" + exit 1 + fi + done + + if [ -f $REPO/dists/trusty/main/binary-arm64/Packages.backup ]; then echo "Error - found backup file for Packages!" exit 1 fi - if [ -f $REPO/dists/trusty/main/binary-amd64/Packages.gz.backup ]; then + if [ -f $REPO/dists/trusty/main/binary-arm64/Packages.gz.backup ]; then echo "Error - found backup file for Packages.gz!" exit 1 fi @@ -142,8 +154,10 @@ prep_make_live() { exit 1 fi - cp $REPO/dists/trusty/main/binary-amd64/Packages $REPO/dists/trusty/main/binary-amd64/Packages.backup - cp $REPO/dists/trusty/main/binary-amd64/Packages.gz $REPO/dists/trusty/main/binary-amd64/Packages.gz.backup + for arch in arm64 amd64; do + cp $REPO/dists/trusty/main/binary-${arch}/Packages $REPO/dists/trusty/main/binary-${arch}/Packages.backup + cp $REPO/dists/trusty/main/binary-${arch}/Packages.gz $REPO/dists/trusty/main/binary-${arch}/Packages.gz.backup + done cp $REPO/dists/trusty/Release $REPO/dists/trusty/Release.backup cp -Rvp $DEST/etc/puppet $DEST/etc/puppet.backup } diff --git a/build/install/uninstall.sh b/build/install/uninstall.sh index a9e74bc..e90c632 100755 --- a/build/install/uninstall.sh +++ b/build/install/uninstall.sh @@ -31,15 +31,17 @@ DEST=$MOUNT REPO=$DEST/var/www/nailgun/ubuntu/fuelweb/x86_64 cd $REPO -if [ ! -f $REPO/dists/trusty/main/binary-amd64/Packages.backup ]; then - echo "Error - didn't find backup file for Packages!" - exit 1 -fi +for arch in arm64 amd64; do + if [ ! -f $REPO/dists/trusty/main/binary-${arch}/Packages.backup ]; then + echo "Error - didn't find backup file for Packages for ${arch}!" + exit 1 + fi -if [ ! -f $REPO/dists/trusty/main/binary-amd64/Packages.gz.backup ]; then - echo "Error - didn't find backup file for Packages.gz!" - exit 1 -fi + if [ ! -f $REPO/dists/trusty/main/binary-${arch}/Packages.gz.backup ]; then + echo "Error - didn't find backup file for Packages.gz for ${arch}!" + exit 1 + fi +done if [ ! -f $REPO/dists/trusty/Release.backup ]; then echo "Error - didn't find backup file for Release!"