From 27449780b03fbf155534b9953cef379655d08a05 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Tue, 6 Sep 2022 20:23:22 +0200 Subject: [PATCH 01/30] Added ARM64 support with multiarch build --- bin/build.sh | 8 ++++---- heroku-18/setup.sh | 11 +++++++---- heroku-20/setup.sh | 11 +++++++---- heroku-22/setup.sh | 11 +++++++---- 4 files changed, 25 insertions(+), 16 deletions(-) diff --git a/bin/build.sh b/bin/build.sh index ae0f3d2f..38da7c78 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -20,7 +20,7 @@ RUN_IMAGE_TAG="heroku/heroku:${STACK_VERSION}" RUN_DOCKERFILE_DIR="heroku-${STACK_VERSION}" [[ -d "${RUN_DOCKERFILE_DIR}" ]] || abort "fatal: directory ${RUN_DOCKERFILE_DIR} not found" display "Building ${RUN_DOCKERFILE_DIR} / ${RUN_IMAGE_TAG} Heroku runtime image" -docker build --pull --tag "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" | indent +docker buildx build --pull --platform=linux/arm64,linux/amd64 --tag "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" | indent write_package_list "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" # The --pull option is not used for variants to ensure they are based on the @@ -29,7 +29,7 @@ write_package_list "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-build" BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-build" display "Building ${BUILD_DOCKERFILE_DIR} / ${BUILD_IMAGE_TAG} Heroku build-time image" -docker build --tag "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" | indent write_package_list "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" # write_package_list is not needed for *cnb* variants, as they don't install @@ -38,12 +38,12 @@ write_package_list "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" CNB_RUN_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb" CNB_RUN_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb" display "Building ${CNB_RUN_DOCKERFILE_DIR} / ${CNB_RUN_IMAGE_TAG} CNB runtime image" -docker build --tag "$CNB_RUN_IMAGE_TAG" "$CNB_RUN_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_RUN_IMAGE_TAG" "$CNB_RUN_DOCKERFILE_DIR" | indent CNB_BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb-build" CNB_BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb-build" display "Building ${CNB_BUILD_DOCKERFILE_DIR} / ${CNB_BUILD_IMAGE_TAG} CNB build-time image" -docker build --tag "$CNB_BUILD_IMAGE_TAG" "$CNB_BUILD_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_BUILD_IMAGE_TAG" "$CNB_BUILD_DOCKERFILE_DIR" | indent display "Size breakdown..." docker images --format "table {{.Repository}}:{{.Tag}}\t{{.Size}}" \ diff --git a/heroku-18/setup.sh b/heroku-18/setup.sh index bbc04cf2..39255038 100755 --- a/heroku-18/setup.sh +++ b/heroku-18/setup.sh @@ -10,9 +10,12 @@ export DEBIAN_FRONTEND=noninteractive # The default sources list minus backports, restricted and multiverse. cat >/etc/apt/sources.list </etc/apt/sources.list </etc/apt/sources.list < Date: Wed, 14 Sep 2022 12:48:21 +0200 Subject: [PATCH 02/30] Get correct libpq that has packages for both architectures --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 0d206f25..31341422 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev \ + libpq-dev=14.5-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 38c8ede8d2b49958cfadc35440fca8ed23345adb Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 14 Sep 2022 12:48:28 +0200 Subject: [PATCH 03/30] Update installed-packages.txt --- heroku-22/installed-packages.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/heroku-22/installed-packages.txt b/heroku-22/installed-packages.txt index fb8da5a4..ca839725 100644 --- a/heroku-22/installed-packages.txt +++ b/heroku-22/installed-packages.txt @@ -306,7 +306,6 @@ mawk media-types mlock mount -mtools mysql-common ncurses-base ncurses-bin @@ -341,7 +340,7 @@ sensible-utils shared-mime-info socat stunnel4 -syslinux +syslinux-common systemd sysvinit-utils tar From bdc6c4f5065ff3f6f025d847e37dcdde49ddf211 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Tue, 6 Sep 2022 20:54:07 +0200 Subject: [PATCH 04/30] Push latest/no-suffix tags directly after build to support multiarch --- bin/build.sh | 8 ++++---- bin/publish-to-registries.sh | 11 ++--------- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/bin/build.sh b/bin/build.sh index 38da7c78..7eecf3ad 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -20,7 +20,7 @@ RUN_IMAGE_TAG="heroku/heroku:${STACK_VERSION}" RUN_DOCKERFILE_DIR="heroku-${STACK_VERSION}" [[ -d "${RUN_DOCKERFILE_DIR}" ]] || abort "fatal: directory ${RUN_DOCKERFILE_DIR} not found" display "Building ${RUN_DOCKERFILE_DIR} / ${RUN_IMAGE_TAG} Heroku runtime image" -docker buildx build --pull --platform=linux/arm64,linux/amd64 --tag "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" | indent +docker buildx build --pull --platform=linux/arm64,linux/amd64 --tag "${RUN_IMAGE_TAG}" --push "${RUN_DOCKERFILE_DIR}" | indent write_package_list "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" # The --pull option is not used for variants to ensure they are based on the @@ -29,7 +29,7 @@ write_package_list "${RUN_IMAGE_TAG}" "${RUN_DOCKERFILE_DIR}" BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-build" BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-build" display "Building ${BUILD_DOCKERFILE_DIR} / ${BUILD_IMAGE_TAG} Heroku build-time image" -docker buildx build --platform=linux/arm64,linux/amd64 --tag "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$BUILD_IMAGE_TAG" --push "$BUILD_DOCKERFILE_DIR" | indent write_package_list "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" # write_package_list is not needed for *cnb* variants, as they don't install @@ -38,12 +38,12 @@ write_package_list "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" CNB_RUN_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb" CNB_RUN_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb" display "Building ${CNB_RUN_DOCKERFILE_DIR} / ${CNB_RUN_IMAGE_TAG} CNB runtime image" -docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_RUN_IMAGE_TAG" "$CNB_RUN_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_RUN_IMAGE_TAG" --push "$CNB_RUN_DOCKERFILE_DIR" | indent CNB_BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb-build" CNB_BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb-build" display "Building ${CNB_BUILD_DOCKERFILE_DIR} / ${CNB_BUILD_IMAGE_TAG} CNB build-time image" -docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_BUILD_IMAGE_TAG" "$CNB_BUILD_DOCKERFILE_DIR" | indent +docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_BUILD_IMAGE_TAG" --push "$CNB_BUILD_DOCKERFILE_DIR" | indent display "Size breakdown..." docker images --format "table {{.Repository}}:{{.Tag}}\t{{.Size}}" \ diff --git a/bin/publish-to-registries.sh b/bin/publish-to-registries.sh index 1911003e..e32d34fa 100755 --- a/bin/publish-to-registries.sh +++ b/bin/publish-to-registries.sh @@ -3,13 +3,12 @@ set -euo pipefail set -x - -bin/build.sh "${STACK_VERSION}" - # Disable tracing temporarily to prevent logging registry tokens. (set +x; echo "${DOCKER_HUB_TOKEN}" | docker login -u "${DOCKER_HUB_USERNAME}" --password-stdin) (set +x; curl -f -X POST "$ID_SERVICE_TOKEN_ENDPOINT" -d "{\"username\":\"$ID_SERVICE_USERNAME\",\"password\":\"$ID_SERVICE_PASSWORD\"}" -s --retry 3 | jq -r ".raw_id_token" | docker login "$INTERNAL_REGISTRY_HOST" -u "$INTERNAL_REGISTRY_USERNAME" --password-stdin) +bin/build.sh "${STACK_VERSION}" + push_group() { local targetTagBase="$1" local targetTagSuffix="$2" @@ -38,10 +37,4 @@ if [[ -v CIRCLE_TAG ]]; then # Push release tags to internal registry push_group "${internalTag}" ".${CIRCLE_TAG}" - - # Push latest/no-suffix tags to dockerhub (e.g. heroku/heroku:22) - push_group "${publicTag}" "" - - # Push latest/no-suffix tags to internal registry - push_group "${internalTag}" "" fi From 0152774978abd3eee19ec82f02f9e21e1ec66d3d Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 14 Sep 2022 12:49:13 +0200 Subject: [PATCH 05/30] Build for Robuust --- bin/build.sh | 18 +++++++++--------- heroku-22-build/Dockerfile | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/bin/build.sh b/bin/build.sh index 7eecf3ad..6d1a6980 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -16,7 +16,7 @@ write_package_list() { docker run --rm "$image_tag" dpkg-query --show --showformat='${Package}\n' >> "$output_file" } -RUN_IMAGE_TAG="heroku/heroku:${STACK_VERSION}" +RUN_IMAGE_TAG="robuust/heroku:${STACK_VERSION}" RUN_DOCKERFILE_DIR="heroku-${STACK_VERSION}" [[ -d "${RUN_DOCKERFILE_DIR}" ]] || abort "fatal: directory ${RUN_DOCKERFILE_DIR} not found" display "Building ${RUN_DOCKERFILE_DIR} / ${RUN_IMAGE_TAG} Heroku runtime image" @@ -35,15 +35,15 @@ write_package_list "$BUILD_IMAGE_TAG" "$BUILD_DOCKERFILE_DIR" # write_package_list is not needed for *cnb* variants, as they don't install # any additional packages over their non-*cnb* counterparts. -CNB_RUN_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb" -CNB_RUN_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb" -display "Building ${CNB_RUN_DOCKERFILE_DIR} / ${CNB_RUN_IMAGE_TAG} CNB runtime image" -docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_RUN_IMAGE_TAG" --push "$CNB_RUN_DOCKERFILE_DIR" | indent +# CNB_RUN_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb" +# CNB_RUN_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb" +# display "Building ${CNB_RUN_DOCKERFILE_DIR} / ${CNB_RUN_IMAGE_TAG} CNB runtime image" +# docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_RUN_IMAGE_TAG" --push "$CNB_RUN_DOCKERFILE_DIR" | indent -CNB_BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb-build" -CNB_BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb-build" -display "Building ${CNB_BUILD_DOCKERFILE_DIR} / ${CNB_BUILD_IMAGE_TAG} CNB build-time image" -docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_BUILD_IMAGE_TAG" --push "$CNB_BUILD_DOCKERFILE_DIR" | indent +# CNB_BUILD_IMAGE_TAG="${RUN_IMAGE_TAG}-cnb-build" +# CNB_BUILD_DOCKERFILE_DIR="${RUN_DOCKERFILE_DIR}-cnb-build" +# display "Building ${CNB_BUILD_DOCKERFILE_DIR} / ${CNB_BUILD_IMAGE_TAG} CNB build-time image" +# docker buildx build --platform=linux/arm64,linux/amd64 --tag "$CNB_BUILD_IMAGE_TAG" --push "$CNB_BUILD_DOCKERFILE_DIR" | indent display "Size breakdown..." docker images --format "table {{.Repository}}:{{.Tag}}\t{{.Size}}" \ diff --git a/heroku-22-build/Dockerfile b/heroku-22-build/Dockerfile index ab70d943..6e891133 100644 --- a/heroku-22-build/Dockerfile +++ b/heroku-22-build/Dockerfile @@ -1,3 +1,3 @@ -FROM heroku/heroku:22 +FROM robuust/heroku:22 COPY setup.sh /tmp/setup.sh RUN /tmp/setup.sh From 9190299fbac3ca9a571633e4e47d6612bba5df87 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Tue, 20 Sep 2022 12:01:02 +0200 Subject: [PATCH 06/30] Install syslinux on amd64 only and always install mtools --- heroku-18/Dockerfile | 1 + heroku-18/installed-packages.txt | 1 + heroku-18/setup.sh | 3 +++ heroku-20/Dockerfile | 1 + heroku-20/setup.sh | 3 +++ heroku-22/Dockerfile | 1 + heroku-22/installed-packages.txt | 3 ++- heroku-22/setup.sh | 4 +++- 8 files changed, 15 insertions(+), 2 deletions(-) diff --git a/heroku-18/Dockerfile b/heroku-18/Dockerfile index b9e44de0..1dc68294 100644 --- a/heroku-18/Dockerfile +++ b/heroku-18/Dockerfile @@ -1,3 +1,4 @@ FROM ubuntu:18.04 +ARG TARGETARCH COPY setup.sh /tmp/setup.sh RUN /tmp/setup.sh diff --git a/heroku-18/installed-packages.txt b/heroku-18/installed-packages.txt index e63d2701..49b1172a 100644 --- a/heroku-18/installed-packages.txt +++ b/heroku-18/installed-packages.txt @@ -341,6 +341,7 @@ shared-mime-info socat stunnel4 syslinux +syslinux-common sysvinit-utils tar telnet diff --git a/heroku-18/setup.sh b/heroku-18/setup.sh index 39255038..2fb7a0e0 100755 --- a/heroku-18/setup.sh +++ b/heroku-18/setup.sh @@ -186,6 +186,7 @@ apt-get install -y --no-install-recommends \ locales \ lsb-release \ make \ + mtools \ netcat-openbsd \ openssh-client \ openssh-server \ @@ -208,6 +209,8 @@ apt-get install -y --no-install-recommends \ zip \ zstd \ +# Install syslinux for amd64 only +if [ "$TARGETARCH" == "amd64" ]; then apt-get install -y --no-install-recommends syslinux; fi cat > /etc/ImageMagick-6/policy.xml <<'IMAGEMAGICK_POLICY' diff --git a/heroku-20/Dockerfile b/heroku-20/Dockerfile index 013a998d..cd311d82 100644 --- a/heroku-20/Dockerfile +++ b/heroku-20/Dockerfile @@ -1,3 +1,4 @@ FROM ubuntu:20.04 +ARG TARGETARCH COPY setup.sh /tmp/setup.sh RUN /tmp/setup.sh diff --git a/heroku-20/setup.sh b/heroku-20/setup.sh index 2650b5b3..1bd69360 100755 --- a/heroku-20/setup.sh +++ b/heroku-20/setup.sh @@ -187,6 +187,7 @@ apt-get install -y --no-install-recommends \ locales \ lsb-release \ make \ + mtools \ netcat-openbsd \ openssh-client \ openssh-server \ @@ -210,6 +211,8 @@ apt-get install -y --no-install-recommends \ zip \ zstd \ +# Install syslinux for amd64 only +if [ "$TARGETARCH" == "amd64" ]; then apt-get install -y --no-install-recommends syslinux; fi cat > /etc/ImageMagick-6/policy.xml <<'IMAGEMAGICK_POLICY' diff --git a/heroku-22/Dockerfile b/heroku-22/Dockerfile index 35da0384..6760c094 100644 --- a/heroku-22/Dockerfile +++ b/heroku-22/Dockerfile @@ -1,3 +1,4 @@ FROM ubuntu:22.04 +ARG TARGETARCH COPY setup.sh /tmp/setup.sh RUN /tmp/setup.sh diff --git a/heroku-22/installed-packages.txt b/heroku-22/installed-packages.txt index ca839725..fb8da5a4 100644 --- a/heroku-22/installed-packages.txt +++ b/heroku-22/installed-packages.txt @@ -306,6 +306,7 @@ mawk media-types mlock mount +mtools mysql-common ncurses-base ncurses-bin @@ -340,7 +341,7 @@ sensible-utils shared-mime-info socat stunnel4 -syslinux-common +syslinux systemd sysvinit-utils tar diff --git a/heroku-22/setup.sh b/heroku-22/setup.sh index 5dbe6ffc..7ee2df19 100755 --- a/heroku-22/setup.sh +++ b/heroku-22/setup.sh @@ -188,6 +188,7 @@ apt-get install -y --no-install-recommends \ locales \ lsb-release \ make \ + mtools \ netcat-openbsd \ openssh-client \ openssh-server \ @@ -200,7 +201,6 @@ apt-get install -y --no-install-recommends \ shared-mime-info \ socat \ stunnel \ - syslinux-common \ tar \ telnet \ tzdata \ @@ -210,6 +210,8 @@ apt-get install -y --no-install-recommends \ zip \ zstd \ +# Install syslinux for amd64 only +if [ "$TARGETARCH" == "amd64" ]; then apt-get install -y --no-install-recommends syslinux; fi cat > /etc/ImageMagick-6/policy.xml <<'IMAGEMAGICK_POLICY' From 43d86e38d992ab37d117472b64c4088cf3b88cd5 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 21 Sep 2022 14:04:44 +0200 Subject: [PATCH 07/30] Use regctl to retag images --- bin/publish-to-registries.sh | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/bin/publish-to-registries.sh b/bin/publish-to-registries.sh index e32d34fa..f4c2c4e4 100755 --- a/bin/publish-to-registries.sh +++ b/bin/publish-to-registries.sh @@ -15,8 +15,11 @@ push_group() { for variant in "" "-build" "-cnb" "-cnb-build"; do source="${publicTag}${variant}" target="${targetTagBase}${variant}${targetTagSuffix}" - docker tag "${source}" "${target}" - docker push "${target}" + chmod +r $HOME/.docker/config.json + docker container run --rm --net host \ + -v regctl-conf:/home/appuser/.regctl/ \ + -v $HOME/.docker/config.json:/home/appuser/.docker/config.json \ + regclient/regctl image copy "${source}" "${target}" done } @@ -37,4 +40,10 @@ if [[ -v CIRCLE_TAG ]]; then # Push release tags to internal registry push_group "${internalTag}" ".${CIRCLE_TAG}" + + # Push latest/no-suffix tags to dockerhub (e.g. heroku/heroku:22) + push_group "${publicTag}" "" + + # Push latest/no-suffix tags to internal registry + push_group "${internalTag}" "" fi From 73409f80a45e4008be261ecff8624e595a02c762 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 6 Oct 2022 07:48:58 +0200 Subject: [PATCH 08/30] Publish to Github via CI --- .github/workflows/docker-publish.yml | 28 ++++++++++++++++++++++++++++ bin/build.sh | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/docker-publish.yml diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml new file mode 100644 index 00000000..8ac5180b --- /dev/null +++ b/.github/workflows/docker-publish.yml @@ -0,0 +1,28 @@ +name: Docker + +on: + push: + # Publish `multiarch-push-robuust` branch to Container Registry + branches: 'multiarch-push-robuust' + +jobs: + # Push image to GitHub Packages. + # See also https://docs.docker.com/docker-hub/builds/ + push: + runs-on: ubuntu-latest + if: github.event_name == 'push' + + steps: + - uses: actions/checkout@v2 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Log into GitHub Container Registry + run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin + + - name: Build & push image to GitHub Container Registry + run: bin/build.sh 22 diff --git a/bin/build.sh b/bin/build.sh index 6d1a6980..4b1db812 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -16,7 +16,7 @@ write_package_list() { docker run --rm "$image_tag" dpkg-query --show --showformat='${Package}\n' >> "$output_file" } -RUN_IMAGE_TAG="robuust/heroku:${STACK_VERSION}" +RUN_IMAGE_TAG="ghcr.io/robuust/heroku:${STACK_VERSION}" RUN_DOCKERFILE_DIR="heroku-${STACK_VERSION}" [[ -d "${RUN_DOCKERFILE_DIR}" ]] || abort "fatal: directory ${RUN_DOCKERFILE_DIR} not found" display "Building ${RUN_DOCKERFILE_DIR} / ${RUN_IMAGE_TAG} Heroku runtime image" From 1e1e47fdf448dddded1b8f54aa987c366e251c47 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 13 Oct 2022 08:39:05 +0200 Subject: [PATCH 09/30] Updated action dependencies --- .github/workflows/docker-publish.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 8ac5180b..ad2ff694 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -13,13 +13,13 @@ jobs: if: github.event_name == 'push' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v2 - name: Log into GitHub Container Registry run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin From be96e1543bfedeabde33fc78304f2926a4ffdd53 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 26 Oct 2022 07:58:14 +0200 Subject: [PATCH 10/30] Updated libpq-dev --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 31341422..1ff897d5 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=14.5-1.pgdg22.04+1 \ + libpq-dev=15.0-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 0a6c4a3879653016996eb608f43cc12ce6ef1369 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink <378974+boboldehampsink@users.noreply.github.com> Date: Thu, 26 Jan 2023 07:44:25 +0100 Subject: [PATCH 11/30] Updated libpq-dev to 15.1-1.pgdg22.04+1 --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 1ff897d5..0d27faa3 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=15.0-1.pgdg22.04+1 \ + libpq-dev=15.1-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 95c81823f16707427979585b0bcbe2b315bb8651 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 26 Jan 2023 08:10:20 +0100 Subject: [PATCH 12/30] Fix ci --- bin/publish-to-registries.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/publish-to-registries.sh b/bin/publish-to-registries.sh index f786aa9e..e90b76de 100755 --- a/bin/publish-to-registries.sh +++ b/bin/publish-to-registries.sh @@ -24,10 +24,10 @@ push_group() { for variant in "" "-build" "-cnb" "-cnb-build"; do source="${publicTag}${variant}" target="${targetTagBase}${variant}${targetTagSuffix}" - chmod +r $HOME/.docker/config.json + chmod +r "$HOME"/.docker/config.json docker container run --rm --net host \ - -v regctl-conf:/home/appuser/.regctl/ \ - -v $HOME/.docker/config.json:/home/appuser/.docker/config.json \ + -v regctl-conf:/home/appuser/.regctl/\ + -v "$HOME"/.docker/config.json:/home/appuser/.docker/config.json\ regclient/regctl image copy "${source}" "${target}" done } From 36db314015277da0a8a5ed2faf5f73bfd15c0e94 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 26 Jan 2023 08:14:00 +0100 Subject: [PATCH 13/30] Fix trailing spaces --- bin/publish-to-registries.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/publish-to-registries.sh b/bin/publish-to-registries.sh index e90b76de..f50568c0 100755 --- a/bin/publish-to-registries.sh +++ b/bin/publish-to-registries.sh @@ -26,8 +26,8 @@ push_group() { target="${targetTagBase}${variant}${targetTagSuffix}" chmod +r "$HOME"/.docker/config.json docker container run --rm --net host \ - -v regctl-conf:/home/appuser/.regctl/\ - -v "$HOME"/.docker/config.json:/home/appuser/.docker/config.json\ + -v regctl-conf:/home/appuser/.regctl/ \ + -v "$HOME"/.docker/config.json:/home/appuser/.docker/config.json \ regclient/regctl image copy "${source}" "${target}" done } From 4dc8573b0eab25bae41c27968a6a0bfecf025861 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 26 Jan 2023 08:17:22 +0100 Subject: [PATCH 14/30] Create buildx driver first --- bin/build.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bin/build.sh b/bin/build.sh index 7eecf3ad..6be57ae2 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -16,6 +16,9 @@ write_package_list() { docker run --rm "$image_tag" dpkg-query --show --showformat='${Package}\n' >> "$output_file" } +# Create buildx driver +docker buildx create --use + RUN_IMAGE_TAG="heroku/heroku:${STACK_VERSION}" RUN_DOCKERFILE_DIR="heroku-${STACK_VERSION}" [[ -d "${RUN_DOCKERFILE_DIR}" ]] || abort "fatal: directory ${RUN_DOCKERFILE_DIR} not found" From 6e945ee26c172891e3de2772e4eac4db07a57d1b Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 26 Jan 2023 08:32:38 +0100 Subject: [PATCH 15/30] =?UTF-8?q?Don=E2=80=99t=20build=20stack?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yml | 40 ---------------------------------------- 1 file changed, 40 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e878b4af..3df6495f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,43 +20,3 @@ jobs: uses: actions/checkout@v3 - name: Run shellcheck run: find . -type f \( -name "*.sh" -o -path "*/bin/*" \) ! -name '*.jq' | xargs -t shellcheck - build-stack: - runs-on: ubuntu-22.04 - needs: - - shellcheck - env: - STACK: heroku-${{ matrix.stack-version }} - STACK_VERSION: "${{ matrix.stack-version }}" - DOCKER_HUB_TOKEN: "${{ secrets.DOCKER_HUB_TOKEN }}" - DOCKER_HUB_USERNAME: "${{ secrets.DOCKER_HUB_USERNAME }}" - ID_SERVICE_PASSWORD: "${{ secrets.ID_SERVICE_PASSWORD }}" - ID_SERVICE_TOKEN_ENDPOINT: "${{ secrets.ID_SERVICE_TOKEN_ENDPOINT }}" - ID_SERVICE_USERNAME: "${{ secrets.ID_SERVICE_USERNAME }}" - INTERNAL_REGISTRY_HOST: "${{ secrets.INTERNAL_REGISTRY_HOST }}" - INTERNAL_REGISTRY_USERNAME: "${{ secrets.INTERNAL_REGISTRY_USERNAME }}" - MANIFEST_APP_TOKEN: "${{ secrets.MANIFEST_APP_TOKEN }}" - MANIFEST_APP_URL: "${{ secrets.MANIFEST_APP_URL }}" - strategy: - fail-fast: false - matrix: - stack-version: ["18", "20", "22"] - steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Build images - run: bin/build.sh $STACK_VERSION - - name: Check that the generated files are in sync - run: |- - status="$(git status --porcelain)" - if [[ -n "$status" ]]; then - echo "Generated files differ from checked-in versions! Run bin/build.sh to regenerate them locally." - echo -e "\nChanged files:\n${status}\n" - git diff - exit 1 - fi - - name: Publish to image registries - run: bin/publish-to-registries.sh - if: success() && (github.ref_name == 'main' || github.ref_type == 'tag') - - name: Convert docker image and release to Heroku staging - run: bin/convert-and-publish-to-heroku.sh - if: success() && github.ref_type == 'tag' From a6578dbc743f58b5ea5265c7baeb437db1188ef7 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 30 Mar 2023 20:56:53 +0200 Subject: [PATCH 16/30] Updated libpq-dev to 15.2.2 --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index d1b6f794..880b041c 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=15.1-1.pgdg22.04+1 \ + libpq-dev=15.2.2.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 59ab8ec463420981aa0d91c7644433899bbe84e9 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 30 Mar 2023 21:16:42 +0200 Subject: [PATCH 17/30] Downgrade to available libpq-dev version --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 880b041c..6390cbd1 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=15.2.2.pgdg22.04+1 \ + libpq-dev=15.2-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 0cc97cbf34d58ec5654fa85752340d6309875db0 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Sat, 1 Apr 2023 21:00:39 +0200 Subject: [PATCH 18/30] Update imagemagick --- heroku-22/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22/setup.sh b/heroku-22/setup.sh index a78e35e8..dc0dc93f 100755 --- a/heroku-22/setup.sh +++ b/heroku-22/setup.sh @@ -130,7 +130,7 @@ apt-get install -y --no-install-recommends \ gir1.2-harfbuzz-0.0 \ git \ gsfonts \ - imagemagick \ + imagemagick=8:6.9.11.60+dfsg-1.3ubuntu0.22.04.3 \ iproute2 \ iputils-tracepath \ language-pack-en \ From 7e56b3145319e19a162005ff9a610b5f98081175 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink <378974+boboldehampsink@users.noreply.github.com> Date: Tue, 18 Apr 2023 08:09:56 +0200 Subject: [PATCH 19/30] Update setup.sh --- heroku-22/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22/setup.sh b/heroku-22/setup.sh index dc0dc93f..a78e35e8 100755 --- a/heroku-22/setup.sh +++ b/heroku-22/setup.sh @@ -130,7 +130,7 @@ apt-get install -y --no-install-recommends \ gir1.2-harfbuzz-0.0 \ git \ gsfonts \ - imagemagick=8:6.9.11.60+dfsg-1.3ubuntu0.22.04.3 \ + imagemagick \ iproute2 \ iputils-tracepath \ language-pack-en \ From f3baa4dd6ddb819318f42f9d5c9703ab49a27367 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Thu, 1 Jun 2023 08:33:22 +0200 Subject: [PATCH 20/30] Updated libpq-dev --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 6390cbd1..021e30f2 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=15.2-1.pgdg22.04+1 \ + libpq-dev=15.3-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From a87bddb99576d8be610cf5b37401799065f004f6 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 4 Oct 2023 15:01:46 +0200 Subject: [PATCH 21/30] Updated libpq --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 021e30f2..328d0e53 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=15.3-1.pgdg22.04+1 \ + libpq-dev=16.0-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From bb8440c3a76e8372beea53386619c1d2f3a64a4c Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 24 Jan 2024 14:55:20 +0100 Subject: [PATCH 22/30] Updated actions --- .github/workflows/docker-publish.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index ad2ff694..744bb218 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -13,13 +13,13 @@ jobs: if: github.event_name == 'push' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Log into GitHub Container Registry run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin From 707783075a52f0a2a6c6dc223c40fb218eb81930 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Wed, 24 Jan 2024 14:55:26 +0100 Subject: [PATCH 23/30] Updated libpq-dev --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index 328d0e53..b35f80e4 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=16.0-1.pgdg22.04+1 \ + libpq-dev=16.1-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 34436f9f8a570203ba9b5ec956632d6d62ddcc12 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 4 Mar 2024 10:50:48 +0100 Subject: [PATCH 24/30] Add arg --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 744bb218..9bb5b665 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -25,4 +25,4 @@ jobs: run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin - name: Build & push image to GitHub Container Registry - run: bin/build.sh 22 + run: bin/build.sh 22 "" From 760eb8c938f99943df45f9f2a733bb3b0f22960c Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 4 Mar 2024 10:53:32 +0100 Subject: [PATCH 25/30] Force buildkit detection --- .github/workflows/docker-publish.yml | 2 +- bin/build.sh | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 9bb5b665..744bb218 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -25,4 +25,4 @@ jobs: run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin - name: Build & push image to GitHub Container Registry - run: bin/build.sh 22 "" + run: bin/build.sh 22 diff --git a/bin/build.sh b/bin/build.sh index 9fe0cd25..e4761079 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -45,10 +45,7 @@ docker buildx create --use [[ $STACK_VERSION =~ ^[0-9]+$ ]] || (>&2 print_usage && abort "fatal: invalid STACK_VERSION") -have_docker_container_driver= -if (docker buildx inspect; true) | grep -q 'Driver:\s*docker-container$'; then - have_docker_container_driver=1 -fi +have_docker_container_driver=1 have_containerd_snapshotter= if docker info -f "{{ .DriverStatus }}" | grep -qF "io.containerd.snapshotter."; then have_containerd_snapshotter=1; fi From 7d4c95632e205b89db591dfed656bcbed0722c57 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 4 Mar 2024 10:54:25 +0100 Subject: [PATCH 26/30] Re-add publish suffix --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 744bb218..9bb5b665 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -25,4 +25,4 @@ jobs: run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin - name: Build & push image to GitHub Container Registry - run: bin/build.sh 22 + run: bin/build.sh 22 "" From 8c94e8a32e88b0265c0d2c73ee70b107f3da6cdc Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 4 Mar 2024 10:56:09 +0100 Subject: [PATCH 27/30] Always build and push --- .github/workflows/docker-publish.yml | 2 +- bin/build.sh | 10 ++-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 9bb5b665..744bb218 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -25,4 +25,4 @@ jobs: run: echo "${{ secrets.CR_PAT }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin - name: Build & push image to GitHub Container Registry - run: bin/build.sh 22 "" + run: bin/build.sh 22 diff --git a/bin/build.sh b/bin/build.sh index e4761079..c9ed8170 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -64,7 +64,7 @@ fi # Due to weak feature support parity between Docker on Linux and Docker # Desktop building and publishing across platforms has caveats (see the # top of this file). -if [[ $have_containerd_snapshotter ]] || { [[ $PUBLISH_SUFFIX ]] && [[ $have_docker_container_driver ]]; }; then +if [[ $have_containerd_snapshotter ]] || [[ $have_docker_container_driver ]]; then DOCKER_ARGS=("buildx" "build" "--platform=linux/amd64,linux/arm64") elif [[ ! $PUBLISH_SUFFIX ]] && [[ ! $have_docker_container_driver ]]; then DOCKER_ARGS=("buildx" "build" "--platform=linux/amd64") @@ -82,13 +82,7 @@ else abort 1 fi -if [[ $PUBLISH_SUFFIX ]]; then - # If there is a tag suffix, this script is pushing to a remote registry. - DOCKER_ARGS+=("--push") -else - # Otherwise, load the image into the local image store. - DOCKER_ARGS+=("--load") -fi +DOCKER_ARGS+=("--push") write_package_list() { local image_tag="$1" From 6a348819831900ddb7dcffaa7c32cbf370552b5c Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 4 Mar 2024 11:08:52 +0100 Subject: [PATCH 28/30] bump libpq-dev --- heroku-22-build/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heroku-22-build/setup.sh b/heroku-22-build/setup.sh index b35f80e4..c0a40af2 100755 --- a/heroku-22-build/setup.sh +++ b/heroku-22-build/setup.sh @@ -63,7 +63,7 @@ apt-get install -y --no-install-recommends \ libonig-dev \ libpam0g-dev \ libpopt-dev \ - libpq-dev=16.1-1.pgdg22.04+1 \ + libpq-dev=16.2-1.pgdg22.04+1 \ librabbitmq-dev \ libreadline-dev \ librtmp-dev \ From 7b971ccc9e7b64245f69ff1ec7bbfe726dc24b66 Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 8 Apr 2024 08:26:26 +0200 Subject: [PATCH 29/30] shellcheck disable=SC2034 --- bin/build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/build.sh b/bin/build.sh index 9f2dd359..c6305b5c 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# shellcheck disable=SC2034 set -euo pipefail From 65a5e386fc632dac479df7f428fa3329b4fe29ee Mon Sep 17 00:00:00 2001 From: Bob Olde Hampsink Date: Mon, 8 Apr 2024 08:31:58 +0200 Subject: [PATCH 30/30] syslinux-common --- heroku-20-build/installed-packages.txt | 2 +- heroku-20/installed-packages.txt | 2 +- heroku-20/setup.sh | 2 +- heroku-22-build/installed-packages.txt | 2 +- heroku-22/installed-packages.txt | 2 +- heroku-22/setup.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/heroku-20-build/installed-packages.txt b/heroku-20-build/installed-packages.txt index 78e3fa1a..6f822e56 100644 --- a/heroku-20-build/installed-packages.txt +++ b/heroku-20-build/installed-packages.txt @@ -608,7 +608,7 @@ shared-mime-info socat ssl-cert stunnel4 -syslinux +syslinux-common sysvinit-utils tar telnet diff --git a/heroku-20/installed-packages.txt b/heroku-20/installed-packages.txt index 591b54c8..5597a58e 100644 --- a/heroku-20/installed-packages.txt +++ b/heroku-20/installed-packages.txt @@ -380,7 +380,7 @@ sensible-utils shared-mime-info socat stunnel4 -syslinux +syslinux-common sysvinit-utils tar telnet diff --git a/heroku-20/setup.sh b/heroku-20/setup.sh index 2dfd466e..41244045 100755 --- a/heroku-20/setup.sh +++ b/heroku-20/setup.sh @@ -144,7 +144,7 @@ packages=( shared-mime-info socat stunnel - syslinux + syslinux-common tar telnet tzdata diff --git a/heroku-22-build/installed-packages.txt b/heroku-22-build/installed-packages.txt index f0c310bc..d22af05b 100644 --- a/heroku-22-build/installed-packages.txt +++ b/heroku-22-build/installed-packages.txt @@ -589,7 +589,7 @@ sensible-utils shared-mime-info socat stunnel4 -syslinux +syslinux-common systemd sysvinit-utils tar diff --git a/heroku-22/installed-packages.txt b/heroku-22/installed-packages.txt index 8127a061..d2fe333c 100644 --- a/heroku-22/installed-packages.txt +++ b/heroku-22/installed-packages.txt @@ -377,7 +377,7 @@ sensible-utils shared-mime-info socat stunnel4 -syslinux +syslinux-common systemd sysvinit-utils tar diff --git a/heroku-22/setup.sh b/heroku-22/setup.sh index 893fef79..1708fb45 100755 --- a/heroku-22/setup.sh +++ b/heroku-22/setup.sh @@ -146,7 +146,7 @@ packages=( shared-mime-info socat stunnel - syslinux + syslinux-common tar telnet tzdata