From 8fba4c02927b6f047b82e16541f029415bb39346 Mon Sep 17 00:00:00 2001 From: Kieron Wilkinson Date: Thu, 31 Oct 2024 14:34:19 +0000 Subject: [PATCH] Run container image tests before publishing --- .github/workflows/nightly-alpine.yaml | 20 +++++++++++ .github/workflows/release-nu-image.yaml | 44 +++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/.github/workflows/nightly-alpine.yaml b/.github/workflows/nightly-alpine.yaml index ac7fe1a886..6a8c7405e4 100644 --- a/.github/workflows/nightly-alpine.yaml +++ b/.github/workflows/nightly-alpine.yaml @@ -50,6 +50,26 @@ jobs: $'BUILD_REF=(git rev-parse --short HEAD)(char nl)' o>> $env.GITHUB_ENV $'BUILD_DATE=(date now | format date %Y-%m-%dT%H:%M:%SZ)(char nl)' o>> $env.GITHUB_ENV + - name: Build Alpine Test Image + uses: docker/build-push-action@v6 + env: + DOCKER_BUILD_SUMMARY: false + with: + push: false + load: true + context: ./docker + file: ./docker/Dockerfile + tags: nushell-test-image + + - name: Test Alpine Image + run: | + echo "## Alpine Container Test Results" >> $GITHUB_STEP_SUMMARY + docker run --rm \ + -v "$(pwd)/docker:/work" \ + --env GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} \ + nushell-test-image -c /work/test_docker.nu \ + >> $GITHUB_STEP_SUMMARY + - name: Build and Push Alpine Image uses: docker/build-push-action@v6 with: diff --git a/.github/workflows/release-nu-image.yaml b/.github/workflows/release-nu-image.yaml index 1b7310f03f..5c0fa6651c 100644 --- a/.github/workflows/release-nu-image.yaml +++ b/.github/workflows/release-nu-image.yaml @@ -57,6 +57,28 @@ jobs: $'NU_VERSION=($tagName)(char nl)' o>> $env.GITHUB_ENV $'BUILD_DATE=(date now | format date %Y-%m-%dT%H:%M:%SZ)(char nl)' o>> $env.GITHUB_ENV + - name: Build Debian Test Image + uses: docker/build-push-action@v6 + if: ${{ matrix.base == 'debian' }} + env: + DOCKER_BUILD_SUMMARY: false + with: + push: false + load: true + context: ./docker + file: ./docker/debian.Dockerfile + tags: nushell-debian-test-image + + - name: Test Debian Image + if: ${{ matrix.base == 'debian' }} + run: | + echo "## Debian Container Test Results" >> $GITHUB_STEP_SUMMARY + docker run --rm \ + -v "$(pwd)/docker:/work" \ + --env GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} \ + nushell-debian-test-image -c /work/test_docker.nu \ + >> $GITHUB_STEP_SUMMARY + - name: Build and Push Debian Image uses: docker/build-push-action@v6 if: ${{ matrix.base == 'debian' }} @@ -75,6 +97,28 @@ jobs: ghcr.io/nushell/nushell:latest-bookworm ghcr.io/nushell/nushell:${{ env.NU_VERSION }}-bookworm + - name: Build Alpine Test Image + uses: docker/build-push-action@v6 + if: ${{ matrix.base == 'alpine' }} + env: + DOCKER_BUILD_SUMMARY: false + with: + push: false + load: true + context: ./docker + file: ./docker/Dockerfile + tags: nushell-alpine-test-image + + - name: Test Alpine Image + if: ${{ matrix.base == 'alpine' }} + run: | + echo "## Alpine Container Test Results" >> $GITHUB_STEP_SUMMARY + docker run --rm \ + -v "$(pwd)/docker:/work" \ + --env GITHUB_ACTIONS=${{ env.GITHUB_ACTIONS }} \ + nushell-alpine-test-image -c /work/test_docker.nu \ + >> $GITHUB_STEP_SUMMARY + - name: Build and Push Alpine Image uses: docker/build-push-action@v6 if: ${{ matrix.base == 'alpine' }}