From cb044649292f27b9ae2ec91791bdf4a87ddd2593 Mon Sep 17 00:00:00 2001 From: Davanum Srinivas Date: Tue, 20 Oct 2020 14:25:32 -0400 Subject: [PATCH] Build powerpc (ppc64le) distroless base and static images (#622) * Add support for powerpc (ppc64el) Signed-off-by: Davanum Srinivas * Adjust ppc64le<->ppc64el between bazel and debian Signed-off-by: Davanum Srinivas --- WORKSPACE | 7 +++ base/distro.bzl | 10 +++ checksums.bzl | 34 ++++++---- cloudbuild_bazel.sh | 12 ++++ cloudbuild_docker.sh | 31 ++++++++-- package_bundle_ppc64le_debian10.versions | 77 +++++++++++++++++++++++ package_bundle_ppc64le_debian9.versions | 79 ++++++++++++++++++++++++ package_manager/dpkg_parser.py | 8 +++ updateWorkspaceSnapshots.sh | 24 ++++++- 9 files changed, 263 insertions(+), 19 deletions(-) create mode 100644 package_bundle_ppc64le_debian10.versions create mode 100644 package_bundle_ppc64le_debian9.versions diff --git a/WORKSPACE b/WORKSPACE index bfbf7a27a..37d42db17 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -416,6 +416,13 @@ http_file( urls = ["https://busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-s390x"], ) +http_file( + name = "busybox_ppc64le", + executable = True, + sha256 = "7f896a2560ef3e2d11438018fef2fbdf8c2a6a2e4b84b1bcbaacc669967532d4", + urls = ["https://busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-powerpc64"], +) + # Docker rules. http_archive( name = "io_bazel_rules_docker", diff --git a/base/distro.bzl b/base/distro.bzl index 88492214e..684f91293 100644 --- a/base/distro.bzl +++ b/base/distro.bzl @@ -4,6 +4,8 @@ load("@package_bundle_arm64_debian9//file:packages.bzl", packages_arm64_debian9 load("@package_bundle_arm64_debian10//file:packages.bzl", packages_arm64_debian10 = "packages") load("@package_bundle_s390x_debian9//file:packages.bzl", packages_s390x_debian9 = "packages") load("@package_bundle_s390x_debian10//file:packages.bzl", packages_s390x_debian10 = "packages") +load("@package_bundle_ppc64le_debian9//file:packages.bzl", packages_ppc64le_debian9 = "packages") +load("@package_bundle_ppc64le_debian10//file:packages.bzl", packages_ppc64le_debian10 = "packages") DISTRO_SUFFIXES = ("_debian9", "_debian10") @@ -20,6 +22,10 @@ DISTRO_PACKAGES = { "_debian9": packages_s390x_debian9, "_debian10": packages_s390x_debian10, }, + "ppc64le": { + "_debian9": packages_ppc64le_debian9, + "_debian10": packages_ppc64le_debian10, + }, } DISTRO_REPOSITORY = { @@ -35,4 +41,8 @@ DISTRO_REPOSITORY = { "_debian9": "@s390x_debian9", "_debian10": "@s390x_debian10", }, + "ppc64le": { + "_debian9": "@ppc64le_debian9", + "_debian10": "@ppc64le_debian10", + }, } diff --git a/checksums.bzl b/checksums.bzl index 49b557f08..3e30c4393 100644 --- a/checksums.bzl +++ b/checksums.bzl @@ -3,54 +3,66 @@ # TO GENERATE THIS RUN: ./updateWorkspaceSnapshots.sh BASE_ARCHITECTURES = ["amd64", "arm64"] -ARCHITECTURES = BASE_ARCHITECTURES + ["s390x"] +ARCHITECTURES = BASE_ARCHITECTURES + ["s390x", "ppc64le"] VERSIONS = [ ("debian9", "stretch"), ("debian10", "buster"), ] -DEBIAN_SNAPSHOT = "20201013T085123Z" +DEBIAN_SNAPSHOT = "20201020T085102Z" -DEBIAN_SECURITY_SNAPSHOT = "20201011T134029Z" +DEBIAN_SECURITY_SNAPSHOT = "20201019T222439Z" SHA256s = { "amd64": { "debian9": { "main": "90ff32c8226b57b879bf6b8c3cfda15e24f2b8c22de28426872f162db4e8d444", - "backports": "d974ef641167c420730833c1ffc7256f44eed36af787f5efdbbbc0d4c5b47a2e", + "backports": "113f1ea6c7c7b218d17ee39a194f3179a563071ac7a9f6403e7fa364ea45b21b", "updates": "b702e0888f32074ee212accbf56c732beacf0d9f570ca082a9c859b23a2596e9", - "security": "f1c1986b3737835bb218a295572db155062e20ebeebd6bbf46b2d74e2b8bcea8", + "security": "fe3720467cde121c2403ede7541485470ab726d47a5b04cedcdb97c19822d91c", }, "debian10": { "main": "369d45f6c138af98d8ea8a598564dcabc1f6991ac777fb2d351e846f195cdc13", "updates": "80f0b86ca11476ea485625c3dff1505285f249f5603dd9458415707dacc5fb71", - "security": "b9b739373933c5b244cd6b5b55a9ffd64b6b267f690013e5cea81acb9ead8524", + "security": "9866f20bc7880ff53078655626a9f0992fbf3d05bbdbbcce9754c3ae56ddeeec", }, }, "arm64": { "debian9": { "main": "881d279ca3536ce84dbe9073a150ec2dfba898cb4c5010cbd50d07ba54942b3e", - "backports": "b88b2b870ea716776c817a887be8f1b3fcb33e33f017f01798d0328d75787d2a", + "backports": "1c66410ff2c43f415507686199ba51405ee08b25ff59817b63454142f28c2879", "updates": "df9eadde7ef2ea7c7d3c07417e4924aece7bf3ccad8575e13ae68c71dcaa1d40", - "security": "61f5517bae9ec4af0eee105c785acb4413bec1058dcbb3402c4af0b440eed7d2", + "security": "c4fd729b69fdf7380a4ff32706ace07a46f4f1a63d7d1e8629191325b8f43566", }, "debian10": { "main": "62a7e0c34f45a2524024ef4871e48f061f8d57d54e6f9d75d2aa2bff55ca91b8", "updates": "dbaa8fd29f1fdd677468b6ec1dd6a0f68bcc037ae4a43f3550ef3435d3e651fd", - "security": "ca58beb4004a640021b75e7cda710ff88ae0e7091d7f14d53521b75c01bc116a", + "security": "30b78a7b70ad26e56d832de134ac0a64186c7e04f8209f248388be4e20a4f7bd", }, }, "s390x": { "debian9": { "main": "f40e0f3d2c203557de8670874703b7462b40c7db3d9ef7ea45bee166c0327abb", - "backports": "e0509c6ecf3b015dc2e42a01b4f94bdd1e788e1246d5ec11c319678f24dd2777", + "backports": "2271a88ad912531e9beab00b54034d57df1fb51345e55336d8ad7ce11a24dfb1", "updates": "dad6720cfbc75a335005e7c471722a2f67bfc7da9f75e653a74e73b3a7acc89f", }, "debian10": { "main": "ad07beb5da6151e8289f1f32b0eb43da061c28bbbb1a625c58974cfe5543cd1b", "updates": "3be4fd77f75edd1b0d734530560f77c9fd0cbf2d721759b000f239bbf5ddd8b0", - "security": "e5b35f05ac5b446e8beaaf828e88a4708e8fabc03d86a0236a0ad5fc1d32efed", + "security": "47a3fe35d21f0f5135b03bc7f6ef53ff9bb27be1ee00e38e024cd963bec320af", + }, + }, + "ppc64le": { + "debian9": { + "main": "34aef3b450ec40c36b23aa61e8b1d68ed40ee4b496d597364db10a9eadad590e", + "backports": "b983f7ad16859e172b8481972c7de3fe3eb7ec23fbc01ee580c840e32b61aea0", + "updates": "2ef877054f0dd43151aed073c66214f217c25cc4a31efa7004a5aafb2442e809", + }, + "debian10": { + "main": "6a60359ca6e3421c2b1ea1a9003f2127cb9e4c8e702a87c0c1074ea212cf171e", + "updates": "ebb59cadbf9ea75cdb90a3026bfcfaadc441602bd2f85e75ea393fa5e713dafe", + "security": "f114505bb208f38c9bb64d0485ebe67d1283e50f748ea23e08d05df9cad1709a", }, }, } diff --git a/cloudbuild_bazel.sh b/cloudbuild_bazel.sh index 917032141..fe14f0c29 100755 --- a/cloudbuild_bazel.sh +++ b/cloudbuild_bazel.sh @@ -13,6 +13,10 @@ bazel run --host_force_python=PY2 //base:static_root_arm64_debian9 bazel run --host_force_python=PY2 //base:static_root_arm64_debian10 bazel run --host_force_python=PY2 //base:static_nonroot_arm64_debian9 bazel run --host_force_python=PY2 //base:static_nonroot_arm64_debian10 +bazel run --host_force_python=PY2 //base:static_root_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:static_root_ppc64le_debian10 +bazel run --host_force_python=PY2 //base:static_nonroot_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:static_nonroot_ppc64le_debian10 bazel run --host_force_python=PY2 //base:static_root_s390x_debian9 bazel run --host_force_python=PY2 //base:static_root_s390x_debian10 bazel run --host_force_python=PY2 //base:static_nonroot_s390x_debian9 @@ -42,6 +46,14 @@ bazel run --host_force_python=PY2 //base:debug_root_s390x_debian9 bazel run --host_force_python=PY2 //base:debug_root_s390x_debian10 bazel run --host_force_python=PY2 //base:debug_nonroot_s390x_debian9 bazel run --host_force_python=PY2 //base:debug_nonroot_s390x_debian10 +bazel run --host_force_python=PY2 //base:base_root_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:base_root_ppc64le_debian10 +bazel run --host_force_python=PY2 //base:base_nonroot_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:base_nonroot_ppc64le_debian10 +bazel run --host_force_python=PY2 //base:debug_root_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:debug_root_ppc64le_debian10 +bazel run --host_force_python=PY2 //base:debug_nonroot_ppc64le_debian9 +bazel run --host_force_python=PY2 //base:debug_nonroot_ppc64le_debian10 bazel run --host_force_python=PY2 //cc:cc_root_amd64_debian9 bazel run --host_force_python=PY2 //cc:cc_root_amd64_debian10 diff --git a/cloudbuild_docker.sh b/cloudbuild_docker.sh index 7147b97bb..ec20f43f4 100755 --- a/cloudbuild_docker.sh +++ b/cloudbuild_docker.sh @@ -57,6 +57,13 @@ docker tag bazel/base:base_nonroot_s390x_debian9 gcr.io/$PROJECT_ID/base:non docker tag bazel/base:debug_root_s390x_debian9 gcr.io/$PROJECT_ID/base:debug-s390x docker tag bazel/base:debug_nonroot_s390x_debian9 gcr.io/$PROJECT_ID/base:debug-nonroot-s390x +docker tag bazel/base:static_root_ppc64le_debian9 gcr.io/$PROJECT_ID/static:latest-ppc64le +docker tag bazel/base:static_nonroot_ppc64le_debian9 gcr.io/$PROJECT_ID/static:nonroot-ppc64le +docker tag bazel/base:base_root_ppc64le_debian9 gcr.io/$PROJECT_ID/base:latest-ppc64le +docker tag bazel/base:base_nonroot_ppc64le_debian9 gcr.io/$PROJECT_ID/base:nonroot-ppc64le +docker tag bazel/base:debug_root_ppc64le_debian9 gcr.io/$PROJECT_ID/base:debug-ppc64le +docker tag bazel/base:debug_nonroot_ppc64le_debian9 gcr.io/$PROJECT_ID/base:debug-nonroot-ppc64le + docker tag bazel/experimental/python3:python3_amd64_debian9 gcr.io/$PROJECT_ID/python3:latest-amd64 docker tag bazel/experimental/python3:python3_amd64_debian9 gcr.io/$PROJECT_ID/python3-debian9:latest docker tag bazel/experimental/python3:python3_amd64_debian10 gcr.io/$PROJECT_ID/python3-debian10:latest @@ -201,6 +208,8 @@ docker push gcr.io/$PROJECT_ID/static:latest-arm64 docker push gcr.io/$PROJECT_ID/static:nonroot-arm64 docker push gcr.io/$PROJECT_ID/static:latest-s390x docker push gcr.io/$PROJECT_ID/static:nonroot-s390x +docker push gcr.io/$PROJECT_ID/static:latest-ppc64le +docker push gcr.io/$PROJECT_ID/static:nonroot-ppc64le docker push gcr.io/$PROJECT_ID/static-debian9:${COMMIT_SHA} docker push gcr.io/$PROJECT_ID/static-debian9:latest docker push gcr.io/$PROJECT_ID/static-debian9:nonroot @@ -220,6 +229,10 @@ docker push gcr.io/$PROJECT_ID/base:latest-s390x docker push gcr.io/$PROJECT_ID/base:nonroot-s390x docker push gcr.io/$PROJECT_ID/base:debug-s390x docker push gcr.io/$PROJECT_ID/base:debug-nonroot-s390x +docker push gcr.io/$PROJECT_ID/base:latest-ppc64le +docker push gcr.io/$PROJECT_ID/base:nonroot-ppc64le +docker push gcr.io/$PROJECT_ID/base:debug-ppc64le +docker push gcr.io/$PROJECT_ID/base:debug-nonroot-ppc64le docker push gcr.io/$PROJECT_ID/base-debian9:${COMMIT_SHA} docker push gcr.io/$PROJECT_ID/base-debian9:latest docker push gcr.io/$PROJECT_ID/base-debian9:nonroot @@ -380,37 +393,43 @@ sed -i 's/^{/{"experimental": "enabled",/g' ~/.docker/config.json docker manifest create gcr.io/$PROJECT_ID/static:nonroot \ gcr.io/$PROJECT_ID/static:nonroot-amd64 \ gcr.io/$PROJECT_ID/static:nonroot-arm64 \ - gcr.io/$PROJECT_ID/static:nonroot-s390x + gcr.io/$PROJECT_ID/static:nonroot-s390x \ + gcr.io/$PROJECT_ID/static:nonroot-ppc64le docker manifest push gcr.io/$PROJECT_ID/static:nonroot docker manifest create gcr.io/$PROJECT_ID/static:latest \ gcr.io/$PROJECT_ID/static:latest-amd64 \ gcr.io/$PROJECT_ID/static:latest-arm64 \ - gcr.io/$PROJECT_ID/static:latest-s390x + gcr.io/$PROJECT_ID/static:latest-s390x \ + gcr.io/$PROJECT_ID/static:latest-ppc64le docker manifest push gcr.io/$PROJECT_ID/static:latest docker manifest create gcr.io/$PROJECT_ID/base:nonroot \ gcr.io/$PROJECT_ID/base:nonroot-amd64 \ gcr.io/$PROJECT_ID/base:nonroot-arm64 \ - gcr.io/$PROJECT_ID/base:nonroot-s390x + gcr.io/$PROJECT_ID/base:nonroot-s390x \ + gcr.io/$PROJECT_ID/base:nonroot-ppc64le docker manifest push gcr.io/$PROJECT_ID/base:nonroot docker manifest create gcr.io/$PROJECT_ID/base:latest \ gcr.io/$PROJECT_ID/base:latest-amd64 \ gcr.io/$PROJECT_ID/base:latest-arm64 \ - gcr.io/$PROJECT_ID/base:latest-s390x + gcr.io/$PROJECT_ID/base:latest-s390x \ + gcr.io/$PROJECT_ID/base:latest-ppc64le docker manifest push gcr.io/$PROJECT_ID/base:latest docker manifest create gcr.io/$PROJECT_ID/base:debug-nonroot \ gcr.io/$PROJECT_ID/base:debug-nonroot-amd64 \ gcr.io/$PROJECT_ID/base:debug-nonroot-arm64 \ - gcr.io/$PROJECT_ID/base:debug-nonroot-s390x + gcr.io/$PROJECT_ID/base:debug-nonroot-s390x \ + gcr.io/$PROJECT_ID/base:debug-nonroot-ppc64le docker manifest push gcr.io/$PROJECT_ID/base:debug-nonroot docker manifest create gcr.io/$PROJECT_ID/base:debug \ gcr.io/$PROJECT_ID/base:debug-amd64 \ gcr.io/$PROJECT_ID/base:debug-arm64 \ - gcr.io/$PROJECT_ID/base:debug-s390x + gcr.io/$PROJECT_ID/base:debug-s390x \ + gcr.io/$PROJECT_ID/base:debug-ppc64le docker manifest push gcr.io/$PROJECT_ID/base:debug docker manifest create gcr.io/$PROJECT_ID/cc:latest \ diff --git a/package_bundle_ppc64le_debian10.versions b/package_bundle_ppc64le_debian10.versions new file mode 100644 index 000000000..684c0ecf6 --- /dev/null +++ b/package_bundle_ppc64le_debian10.versions @@ -0,0 +1,77 @@ +{ + "base-files": "10.3+deb10u6", + "ca-certificates": "20200601~deb10u1", + "curl": "7.64.0-4+deb10u1", + "dash": "0.5.10.2-5", + "fontconfig-config": "2.13.1-2", + "fonts-dejavu-core": "2.37-1", + "libacl1": "2.2.53-4", + "libattr1": "1:2.4.48-4", + "libbz2-1.0": "1.0.6-9.2~deb10u1", + "libc-bin": "2.28-10", + "libc6": "2.28-10", + "libcomerr2": "1.44.5-1+deb10u3", + "libcurl4": "7.64.0-4+deb10u1", + "libdb5.3": "5.3.28+dfsg1-0.5", + "libexpat1": "2.2.6-2+deb10u1", + "libffi6": "3.2.1-9", + "libfontconfig1": "2.13.1-2", + "libfreetype6": "2.9.1-3+deb10u1", + "libgcc1": "1:8.3.0-6", + "libgcrypt20": "1.8.4-5", + "libgmp10": "2:6.1.2+dfsg-4", + "libgnutls30": "3.6.7-4+deb10u5", + "libgomp1": "8.3.0-6", + "libgpg-error0": "1.35-1", + "libgssapi-krb5-2": "1.17-3", + "libhogweed4": "3.4.1-1", + "libicu63": "63.1-6+deb10u1", + "libidn11": "1.33-2.2", + "libidn2-0": "2.0.5-1+deb10u1", + "libjpeg62-turbo": "1:1.5.2-2+b1", + "libk5crypto3": "1.17-3", + "libkeyutils1": "1.6-6", + "libkrb5-3": "1.17-3", + "libkrb5support0": "1.17-3", + "liblcms2-2": "2.9-3", + "libldap-2.4-2": "2.4.47+dfsg-3+deb10u2", + "libldap-common": "2.4.47+dfsg-3+deb10u2", + "liblttng-ust0": "2.10.3-1", + "liblzma5": "5.2.4-1", + "libmpdec2": "2.4.2-2", + "libncursesw6": "6.1+20181013-2+deb10u2", + "libnettle6": "3.4.1-1", + "libnghttp2-14": "1.36.0-2+deb10u1", + "libp11-kit0": "0.23.15-2", + "libpcre3": "2:8.39-12", + "libpng16-16": "1.6.36-6", + "libpsl5": "0.20.2-2", + "libpython2.7-minimal": "2.7.16-2+deb10u1", + "libpython2.7-stdlib": "2.7.16-2+deb10u1", + "libpython3.7-minimal": "3.7.3-2+deb10u2", + "libpython3.7-stdlib": "3.7.3-2+deb10u2", + "libreadline7": "7.0-5", + "librtmp1": "2.4+20151223.gitfa8646d.1-2", + "libsasl2-2": "2.1.27+dfsg-1+deb10u1", + "libsasl2-modules-db": "2.1.27+dfsg-1+deb10u1", + "libselinux1": "2.8-1+b1", + "libsqlite3-0": "3.27.2-3", + "libssh2-1": "1.8.0-2.1", + "libssl1.1": "1.1.1d-0+deb10u3", + "libstdc++6": "8.3.0-6", + "libtasn1-6": "4.13-3", + "libtinfo6": "6.1+20181013-2+deb10u2", + "libunistring2": "0.9.10-1", + "libuuid1": "2.33.1-0.1", + "mime-support": "3.62", + "netbase": "5.6", + "openjdk-11-jdk-headless": "11.0.8+10-1~deb10u1", + "openjdk-11-jre-headless": "11.0.8+10-1~deb10u1", + "openssl": "1.1.1d-0+deb10u3", + "python2.7-minimal": "2.7.16-2+deb10u1", + "python3-distutils": "3.7.3-1", + "python3.7-minimal": "3.7.3-2+deb10u2", + "readline-common": "7.0-5", + "tzdata": "2020a-0+deb10u1", + "zlib1g": "1:1.2.11.dfsg-1" +} diff --git a/package_bundle_ppc64le_debian9.versions b/package_bundle_ppc64le_debian9.versions new file mode 100644 index 000000000..e021c1826 --- /dev/null +++ b/package_bundle_ppc64le_debian9.versions @@ -0,0 +1,79 @@ +{ + "base-files": "9.9+deb9u13", + "ca-certificates": "20200601~deb9u1", + "curl": "7.52.1-5+deb9u10", + "dash": "0.5.8-2.4", + "fontconfig-config": "2.11.0-6.7", + "fonts-dejavu-core": "2.37-1", + "libacl1": "2.2.52-3+b1", + "libattr1": "1:2.4.47-2+b2", + "libbz2-1.0": "1.0.6-8.1", + "libc-bin": "2.24-11+deb9u4", + "libc6": "2.24-11+deb9u4", + "libcomerr2": "1.44.5-1~bpo9+1", + "libcurl3": "7.52.1-5+deb9u10", + "libdb5.3": "5.3.28-12+deb9u1", + "libexpat1": "2.2.0-2+deb9u3", + "libffi6": "3.2.1-6", + "libfontconfig1": "2.11.0-6.7+b1", + "libfreetype6": "2.6.3-3.2+deb9u1", + "libgcc1": "1:6.3.0-18+deb9u1", + "libgcrypt20": "1.7.6-2+deb9u3", + "libgmp10": "2:6.1.2+dfsg-1", + "libgnutls30": "3.5.8-5+deb9u5", + "libgomp1": "6.3.0-18+deb9u1", + "libgpg-error0": "1.35-1~bpo9+1", + "libgssapi-krb5-2": "1.15-1+deb9u1", + "libhogweed4": "3.3-1+b2", + "libicu57": "57.1-6+deb9u4", + "libidn11": "1.33-1+deb9u1", + "libidn2-0": "2.0.5-1~bpo9+1", + "libjpeg62-turbo": "1:1.5.1-2", + "libk5crypto3": "1.15-1+deb9u1", + "libkeyutils1": "1.5.9-9", + "libkrb5-3": "1.15-1+deb9u1", + "libkrb5support0": "1.15-1+deb9u1", + "liblcms2-2": "2.8-4+deb9u1", + "libldap-2.4-2": "2.4.47+dfsg-3+deb10u2~bpo9+1", + "libldap-common": "2.4.47+dfsg-3+deb10u2~bpo9+1", + "liblttng-ust0": "2.9.0-2+deb9u1", + "liblzma5": "5.2.2-1.2+b1", + "libmpdec2": "2.4.2-1", + "libncursesw5": "6.0+20161126-1+deb9u2", + "libnettle6": "3.3-1+b2", + "libnghttp2-14": "1.18.1-1+deb9u1", + "libp11-kit0": "0.23.3-2", + "libpcre3": "2:8.39-3", + "libpng16-16": "1.6.28-1+deb9u1", + "libpsl5": "0.17.0-3", + "libpython2.7-minimal": "2.7.13-2+deb9u3", + "libpython2.7-stdlib": "2.7.13-2+deb9u3", + "libpython3.5-minimal": "3.5.3-1+deb9u1", + "libpython3.5-stdlib": "3.5.3-1+deb9u1", + "libreadline7": "7.0-3", + "librtmp1": "2.4+20151223.gitfa8646d.1-1+b1", + "libsasl2-2": "2.1.27~101-g0780600+dfsg-3+deb9u1", + "libsasl2-modules-db": "2.1.27~101-g0780600+dfsg-3+deb9u1", + "libselinux1": "2.6-3+b3", + "libsqlite3-0": "3.27.2-3~bpo9+1", + "libssh2-1": "1.7.0-1+deb9u1", + "libssl1.0.2": "1.0.2u-1~deb9u1", + "libssl1.1": "1.1.0l-1~deb9u1", + "libstdc++6": "6.3.0-18+deb9u1", + "libtasn1-6": "4.10-1.1+deb9u1", + "libtinfo5": "6.0+20161126-1+deb9u2", + "libunistring0": "0.9.6+really0.9.3-0.1", + "libuuid1": "2.29.2-1+deb9u1", + "mime-support": "3.60", + "netbase": "5.4", + "openjdk-11-jdk-headless": "11.0.6+10-1~bpo9+1", + "openjdk-11-jre-headless": "11.0.6+10-1~bpo9+1", + "openjdk-8-jdk-headless": "8u252-b09-1~deb9u1", + "openjdk-8-jre-headless": "8u252-b09-1~deb9u1", + "openssl": "1.1.0l-1~deb9u1", + "python2.7-minimal": "2.7.13-2+deb9u3", + "python3.5-minimal": "3.5.3-1+deb9u1", + "readline-common": "7.0-3", + "tzdata": "2020a-0+deb9u1", + "zlib1g": "1:1.2.8.dfsg-5" +} diff --git a/package_manager/dpkg_parser.py b/package_manager/dpkg_parser.py index 6d7f1df27..ab9eebf3a 100644 --- a/package_manager/dpkg_parser.py +++ b/package_manager/dpkg_parser.py @@ -70,6 +70,14 @@ def main(): """ A tool for downloading debian packages and package metadata """ args = parser.parse_args() + + # golang/bazel use "ppc64le" https://golang.org/doc/install/source#introduction + # unfortunately debian uses "ppc64el" https://wiki.debian.org/ppc64el + if args.arch == "ppc64le": + args.arch = "ppc64el" + if args.packages_gz_url and 'ppc64le' in args.packages_gz_url: + args.packages_gz_url = args.packages_gz_url.replace("ppc64le", "ppc64el") + if args.download_and_extract_only: download_package_list(args.mirror_url,args.distro, args.arch, args.snapshot, args.sha256, args.packages_gz_url, args.package_prefix) diff --git a/updateWorkspaceSnapshots.sh b/updateWorkspaceSnapshots.sh index ad0d15837..eb0a11c52 100755 --- a/updateWorkspaceSnapshots.sh +++ b/updateWorkspaceSnapshots.sh @@ -10,6 +10,8 @@ cp package_bundle_arm64_debian9.versions package_bundle_arm64_debian9.versions~ cp package_bundle_arm64_debian10.versions package_bundle_arm64_debian10.versions~ cp package_bundle_s390x_debian9.versions package_bundle_s390x_debian9.versions~ cp package_bundle_s390x_debian10.versions package_bundle_s390x_debian10.versions~ +cp package_bundle_ppc64le_debian9.versions package_bundle_ppc64le_debian9.versions~ +cp package_bundle_ppc64le_debian10.versions package_bundle_ppc64le_debian10.versions~ YEAR=`date +"%Y"` MONTH=`date +"%m"` @@ -37,7 +39,7 @@ cat > checksums.bzl <&1 | sha256sum | cut -d " " -f 1`", }, }, + "ppc64le": { + "debian9": { + "main": "`curl -s https://snapshot.debian.org/archive/debian/$DEBIAN_SNAPSHOT/dists/stretch/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + "backports": "`curl -s https://snapshot.debian.org/archive/debian/$DEBIAN_SNAPSHOT/dists/stretch-backports/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + "updates": "`curl -s https://snapshot.debian.org/archive/debian/$DEBIAN_SNAPSHOT/dists/stretch-updates/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + }, + "debian10": { + "main": "`curl -s https://snapshot.debian.org/archive/debian/$DEBIAN_SNAPSHOT/dists/buster/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + "updates": "`curl -s https://snapshot.debian.org/archive/debian/$DEBIAN_SNAPSHOT/dists/buster-updates/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + "security": "`curl -s https://snapshot.debian.org/archive/debian-security/$DEBIAN_SECURITY_SNAPSHOT/dists/buster/updates/main/binary-ppc64el/Packages.gz 2>&1 | sha256sum | cut -d " " -f 1`", + }, + }, } EOF @@ -100,6 +114,8 @@ bazel build --host_force_python=PY2 @package_bundle_arm64_debian9//file:packages bazel build --host_force_python=PY2 @package_bundle_arm64_debian10//file:packages.bzl bazel build --host_force_python=PY2 @package_bundle_s390x_debian9//file:packages.bzl bazel build --host_force_python=PY2 @package_bundle_s390x_debian10//file:packages.bzl +bazel build --host_force_python=PY2 @package_bundle_ppc64le_debian9//file:packages.bzl +bazel build --host_force_python=PY2 @package_bundle_ppc64le_debian10//file:packages.bzl # Check if any of the version lock files are updated @@ -108,7 +124,9 @@ if diff -w package_bundle_amd64_debian9.versions package_bundle_amd64_debian9.ve diff -w package_bundle_arm64_debian9.versions package_bundle_arm64_debian9.versions~ && diff -w package_bundle_arm64_debian10.versions package_bundle_arm64_debian10.versions~ && diff -w package_bundle_s390x_debian9.versions package_bundle_s390x_debian9.versions~ && - diff -w package_bundle_s390x_debian10.versions package_bundle_s390x_debian10.versions~; then + diff -w package_bundle_s390x_debian10.versions package_bundle_s390x_debian10.versions~ && + diff -w package_bundle_ppc64le_debian9.versions package_bundle_ppc64le_debian9.versions~ && + diff -w package_bundle_ppc64le_debian10.versions package_bundle_ppc64le_debian10.versions~; then echo "No changes detected to package_bundle versions." mv checksums.bzl~ checksums.bzl mv package_bundle_amd64_debian9.versions~ package_bundle_amd64_debian9.versions @@ -117,6 +135,8 @@ if diff -w package_bundle_amd64_debian9.versions package_bundle_amd64_debian9.ve mv package_bundle_arm64_debian10.versions~ package_bundle_arm64_debian10.versions mv package_bundle_s390x_debian9.versions~ package_bundle_s390x_debian9.versions mv package_bundle_s390x_debian10.versions~ package_bundle_s390x_debian10.versions + mv package_bundle_ppc64le_debian9.versions~ package_bundle_ppc64le_debian9.versions + mv package_bundle_ppc64le_debian10.versions~ package_bundle_ppc64le_debian10.versions else echo "Changes detected to package_bundle version files. Please update snapshots." rm *~