diff --git a/.github/workflows/linux-builder-update.yml b/.github/workflows/linux-builder-update.yml index f99e402..4f1b437 100644 --- a/.github/workflows/linux-builder-update.yml +++ b/.github/workflows/linux-builder-update.yml @@ -149,6 +149,35 @@ jobs: topic: ${{ github.repository }} scheduled job failure content: ${{ github.server_url}}/${{ github.repository }}/actions/runs/${{ github.run_id }} failed. + x86-64-unknown-linux-builder-with-openssl_3_3_2: + needs: + - x86-64-unknown-linux-builder + + name: Update x86-64-unknown-linux-builder-with-openssl_3.3.2 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4.1.1 + - name: Login to GitHub Container Registry + # v2.2.0 + uses: docker/login-action@5139682d94efc37792e6b54386b5b470a68a4737 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and push + run: bash x86-64-unknown-linux-builder-with-openssl_3.3.2/build-and-push.bash + - name: Send alert on failure + if: ${{ failure() }} + uses: zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5 + with: + api-key: ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_API_KEY }} + email: ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_EMAIL }} + organization-url: 'https://ponylang.zulipchat.com/' + to: notifications + type: stream + topic: ${{ github.repository }} scheduled job failure + content: ${{ github.server_url}}/${{ github.repository }}/actions/runs/${{ github.run_id }} failed. + x86-64-unknown-linux-builder-with-pcre: needs: - x86-64-unknown-linux-builder @@ -185,6 +214,7 @@ jobs: - x86-64-unknown-linux-builder-with-libressl_3_9_1 - x86-64-unknown-linux-builder-with-openssl_1_1_1w - x86-64-unknown-linux-builder-with-openssl_3_3_0 + - x86-64-unknown-linux-builder-with-openssl_3_3_2 - x86-64-unknown-linux-builder-with-pcre name: Send 'shared-docker-linux-builders-updated' event diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index a1dd199..a0f0774 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -86,6 +86,14 @@ jobs: - name: Docker build run: "docker build --pull --file=x86-64-unknown-linux-builder-with-openssl_3.3.0/Dockerfile ." + validate-x86-64-unknown-linux-builder-with-openssl_3_3_2-image-builds: + name: Validate x86-64-unknown-linux-builder-with-openssl_3.3.2 Docker image builds + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4.1.1 + - name: Docker build + run: "docker build --pull --file=x86-64-unknown-linux-builder-with-openssl_3.3.2/Dockerfile ." + validate-x86-64-unknown-linux-builder-with-pcre-image-builds: name: Validate x86-64-unknown-linux-builder-with-pcre Docker image builds runs-on: ubuntu-latest diff --git a/x86-64-unknown-linux-builder-with-openssl_3.3.2/Dockerfile b/x86-64-unknown-linux-builder-with-openssl_3.3.2/Dockerfile new file mode 100644 index 0000000..d37276f --- /dev/null +++ b/x86-64-unknown-linux-builder-with-openssl_3.3.2/Dockerfile @@ -0,0 +1,22 @@ +ARG FROM_TAG=release +FROM ghcr.io/ponylang/shared-docker-ci-x86-64-unknown-linux-builder:${FROM_TAG} + +RUN apk add --update --no-cache \ + clang-dev \ + linux-headers \ + perl + +RUN cd /tmp && \ + wget https://www.openssl.org/source/openssl-3.3.2.tar.gz && \ + tar xf openssl-3.3.2.tar.gz && \ + cd openssl-3.3.2 && \ + ./Configure --api=3.0.0 no-shared linux-x86_64 enable-rc5 enable-md2 && \ + make && \ + make install && \ + cd /tmp && \ + rm -rf openssl-3.3.2 + +# For some reason, even though lib64 is in the linker search path, the +# libraries when installed there can't be found +RUN cp /usr/local/lib64/libssl.a /usr/local/lib/ && \ + cp /usr/local/lib64/libcrypto.a /usr/local/lib diff --git a/x86-64-unknown-linux-builder-with-openssl_3.3.2/README.md b/x86-64-unknown-linux-builder-with-openssl_3.3.2/README.md new file mode 100644 index 0000000..2733b6d --- /dev/null +++ b/x86-64-unknown-linux-builder-with-openssl_3.3.2/README.md @@ -0,0 +1,3 @@ +# x86-64-unknown-linux-builder-with-openssl_3.3.2 + +The x86-64-unknown-linux-builder with OpenSSL 3.3.2 implementation installed as well. Rebuilt daily. diff --git a/x86-64-unknown-linux-builder-with-openssl_3.3.2/build-and-push.bash b/x86-64-unknown-linux-builder-with-openssl_3.3.2/build-and-push.bash new file mode 100644 index 0000000..aa43ea3 --- /dev/null +++ b/x86-64-unknown-linux-builder-with-openssl_3.3.2/build-and-push.bash @@ -0,0 +1,28 @@ +#!/bin/bash + +set -o errexit +set -o nounset + +# +# *** You should already be logged in to GitHub Container Registry when you run +# this *** +# +DOCKERFILE_DIR="$(dirname "$0")" + +## GitHub Container Registry + +NAME="ghcr.io/ponylang/shared-docker-ci-x86-64-unknown-linux-builder-with-openssl_3.3.2" + +# built from x86-64-unknown-linux-builder release tag +FROM_TAG=release +TAG_AS=release +docker build --pull --build-arg FROM_TAG="${FROM_TAG}" \ + -t "${NAME}:${TAG_AS}" "${DOCKERFILE_DIR}" +docker push "${NAME}:${TAG_AS}" + +# built from x86-64-unknown-linux-builder latest tag +FROM_TAG=latest +TAG_AS=latest +docker build --pull --build-arg FROM_TAG="${FROM_TAG}" \ + -t "${NAME}:${TAG_AS}" "${DOCKERFILE_DIR}" +docker push "${NAME}:${TAG_AS}"