name: docker-builder-testing-plugins concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true on: workflow_dispatch: push: branches: - develop paths: - ".github/workflows/docker-builder-testing-plugins.yml" - ".github/docker/testing/*" pull_request: paths: - ".github/workflows/docker-builder-testing-plugins.yml" - ".github/docker/testing/*" jobs: get-environment: uses: ./.github/workflows/get-environment.yml dockerize: needs: [get-environment] if: | needs.get-environment.outputs.skip_workflow == 'false' && needs.get-environment.outputs.stability != 'stable' strategy: fail-fast: false matrix: include: - runner: ubuntu-24.04 dockerfile: alma8 image: alma8 - runner: ubuntu-24.04 dockerfile: alma9 image: alma9 - runner: ubuntu-24.04 dockerfile: bullseye image: bullseye - runner: ["self-hosted", "collect-arm64"] dockerfile: bullseye image: bullseye-arm64 - runner: ubuntu-24.04 dockerfile: bookworm image: bookworm - runner: ubuntu-24.04 dockerfile: jammy image: jammy runs-on: ${{ matrix.runner }} steps: - name: Checkout sources uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Login to Registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: registry: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }} username: ${{ secrets.HARBOR_CENTREON_PUSH_USERNAME }} password: ${{ secrets.HARBOR_CENTREON_PUSH_TOKEN }} - name: Login to proxy registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: registry: ${{ vars.DOCKER_PROXY_REGISTRY_URL }} username: ${{ secrets.HARBOR_CENTREON_PUSH_USERNAME }} password: ${{ secrets.HARBOR_CENTREON_PUSH_TOKEN }} - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 - uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: file: .github/docker/testing/Dockerfile.testing-plugins-${{ matrix.dockerfile }} context: . build-args: "REGISTRY_URL=${{ vars.DOCKER_PROXY_REGISTRY_URL }}" pull: true push: true tags: ${{ vars.DOCKER_INTERNAL_REGISTRY_URL }}/testing-plugins-${{ matrix.image }}:latest set-skip-label: needs: [get-environment, dockerize] if: | needs.get-environment.outputs.skip_workflow == 'false' && ! cancelled() && ! contains(needs.*.result, 'failure') && ! contains(needs.*.result, 'cancelled') uses: ./.github/workflows/set-pull-request-skip-label.yml