ci: read target base image from TARGET_BASE file

This commit is contained in:
Nicolas Giard 2024-10-28 22:40:12 -04:00 committed by GitHub
parent 50d4dc61fe
commit 88dfeff3f7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 19 additions and 5 deletions

View file

@ -23,7 +23,7 @@ jobs:
- name: Set Version - name: Set Version
run: | run: |
printf -v CURDATE '%(%Y%m%d%H%M)' -1 printf -v CURDATE '%(%Y%m%d%H%M)' -1
echo "IMGVERSION=$CURDATE" >> $GITHUB_OUTPUT echo "IMGVERSION=$CURDATE" >> $GITHUB_ENV
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@v3
@ -54,10 +54,11 @@ jobs:
- name: Update version references - name: Update version references
run: | run: |
sed -i "1s/.*/FROM ghcr.io/ietf-tools/datatracker-app-base:${{ env.IMGVERSION }}/" dev/build/Dockerfile sed -i "1s/.*/FROM ghcr.io/ietf-tools/datatracker-app-base:${{ env.IMGVERSION }}/" dev/build/Dockerfile
echo "${{ env.IMGVERSION }}" > dev/build/TARGET_BASE
- name: Commit CHANGELOG.md - name: Commit CHANGELOG.md
uses: stefanzweifel/git-auto-commit-action@v5 uses: stefanzweifel/git-auto-commit-action@v5
with: with:
branch: main branch: main
commit_message: 'ci: update base image target version to ${{ env.IMGVERSION }}' commit_message: 'ci: update base image target version to ${{ env.IMGVERSION }}'
file_pattern: dev/build/Dockerfile file_pattern: dev/build/Dockerfile dev/build/TARGET_BASE

View file

@ -63,6 +63,7 @@ jobs:
pkg_version: ${{ steps.buildvars.outputs.pkg_version }} pkg_version: ${{ steps.buildvars.outputs.pkg_version }}
from_tag: ${{ steps.semver.outputs.nextStrict }} from_tag: ${{ steps.semver.outputs.nextStrict }}
to_tag: ${{ steps.semver.outputs.current }} to_tag: ${{ steps.semver.outputs.current }}
base_image_version: ${{ steps.baseimgversion.outputs.base_image_version }}
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -122,6 +123,11 @@ jobs:
echo "::notice::Non-production build ${{ steps.semverdev.outputs.nextMajorStrict }}.0.0-dev.$GITHUB_RUN_NUMBER created using branch $GITHUB_REF_NAME" echo "::notice::Non-production build ${{ steps.semverdev.outputs.nextMajorStrict }}.0.0-dev.$GITHUB_RUN_NUMBER created using branch $GITHUB_REF_NAME"
fi fi
- name: Get Base Image Target Version
id: baseimgversion
run: |
echo "base_image_version=$(sed -n '1p' dev/build/TARGET_BASE)" >> $GITHUB_OUTPUT
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# TESTS # TESTS
# ----------------------------------------------------------------- # -----------------------------------------------------------------
@ -133,6 +139,7 @@ jobs:
needs: [prepare] needs: [prepare]
with: with:
ignoreLowerCoverage: ${{ github.event.inputs.ignoreLowerCoverage == 'true' }} ignoreLowerCoverage: ${{ github.event.inputs.ignoreLowerCoverage == 'true' }}
targetBaseVersion: ${{ needs.prepare.outputs.base_image_version }}
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# RELEASE # RELEASE
@ -200,6 +207,7 @@ jobs:
SKIP_TESTS: ${{ github.event.inputs.skiptests }} SKIP_TESTS: ${{ github.event.inputs.skiptests }}
DEBIAN_FRONTEND: noninteractive DEBIAN_FRONTEND: noninteractive
BROWSERSLIST_IGNORE_OLD_DATA: 1 BROWSERSLIST_IGNORE_OLD_DATA: 1
TARGETBASE: ${{ needs.prepare.outputs.base_image_version }}
with: with:
host: ${{ steps.azlaunch.outputs.ipaddr }} host: ${{ steps.azlaunch.outputs.ipaddr }}
port: 22 port: 22
@ -310,7 +318,7 @@ jobs:
echo "==========================================================================" echo "=========================================================================="
echo "Collecting statics..." echo "Collecting statics..."
echo "==========================================================================" echo "=========================================================================="
sudo docker run --rm --name collectstatics -v $(pwd):/workspace ghcr.io/ietf-tools/datatracker-app-base:latest sh dev/build/collectstatics.sh sudo docker run --rm --name collectstatics -v $(pwd):/workspace ghcr.io/ietf-tools/datatracker-app-base:$TARGETBASE sh dev/build/collectstatics.sh
echo "Pushing statics..." echo "Pushing statics..."
cd static cd static
aws s3 sync . s3://static/dt/$PKG_VERSION --only-show-errors aws s3 sync . s3://static/dt/$PKG_VERSION --only-show-errors

View file

@ -8,12 +8,17 @@ on:
default: false default: false
required: true required: true
type: boolean type: boolean
targetBaseVersion:
description: 'Target Base Image Version'
default: latest
required: true
type: string
jobs: jobs:
tests-python: tests-python:
name: Python Tests name: Python Tests
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: ghcr.io/ietf-tools/datatracker-app-base:latest container: ghcr.io/ietf-tools/datatracker-app-base:${{ github.event.inputs.targetBaseVersion }}
services: services:
db: db:
@ -114,7 +119,7 @@ jobs:
tests-playwright-legacy: tests-playwright-legacy:
name: Playwright Legacy Tests name: Playwright Legacy Tests
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: ghcr.io/ietf-tools/datatracker-app-base:latest container: ghcr.io/ietf-tools/datatracker-app-base:${{ github.event.inputs.targetBaseVersion }}
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix: