Presidio Docker Build #31
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Presidio Docker Build | |
| on: | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| env: | |
| REGISTRY_NAME: ghcr.io # SDSC ADD-ON | |
| USERNAME: ${{ github.repository_owner }} | |
| TAG: gha${{ github.run_number }} | |
| jobs: | |
| build-platform-images: | |
| name: Build presidio images. | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout current repo | |
| uses: actions/checkout@v5 | |
| - uses: ./.github/actions/setup-nix | |
| - name: Apply patches | |
| run: just external::patch | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| # SDSC ADD-ON | |
| # https://github.com/docker/login-action | |
| - name: Log in to the Container registry | |
| uses: docker/login-action@v3.0.0 | |
| with: | |
| registry: ${{ env.REGISTRY_NAME }} | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Build and Push patched Presidio images | |
| run: | | |
| just image::build ${{ env.TAG }} --push | |
| create-manifests: | |
| name: Create Multi-Platform Manifests | |
| runs-on: ubuntu-latest | |
| needs: build-platform-images | |
| steps: | |
| # SDSC ADD-ON | |
| # https://github.com/docker/login-action | |
| - name: Log in to the Container registry | |
| uses: docker/login-action@v3.0.0 | |
| with: | |
| registry: ${{ env.REGISTRY_NAME }} | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Create all multi-platform manifests | |
| run: | | |
| IMAGES=("presidio-anonymizer" "presidio-analyzer") | |
| for image in "${IMAGES[@]}"; do | |
| echo "Creating manifest for $image" | |
| docker buildx imagetools create \ | |
| --tag ${{ env.REGISTRY_NAME }}/${{ env.USERNAME }}/${image}:${{ env.TAG }} \ | |
| ${{ env.REGISTRY_NAME }}/${{ env.USERNAME }}/${image}:${{ env.TAG }}-linux-amd64 | |
| done |