| 
6 | 6 |         default: "devel"  | 
7 | 7 |         required: false  | 
8 | 8 |         type: string  | 
 | 9 | +      registry:  | 
 | 10 | +        default: "docker.io/intel"  | 
 | 11 | +        required: false  | 
 | 12 | +        type: string  | 
9 | 13 | env:  | 
10 | 14 |   no_base_check: "['intel-qat-plugin-kerneldrv', 'intel-idxd-config-initcontainer', 'crypto-perf', 'opae-nlb-demo']"  | 
11 | 15 | 
 
  | 
12 | 16 | permissions:  | 
13 | 17 |   contents: read  | 
 | 18 | +  id-token: write  | 
14 | 19 | 
 
  | 
15 | 20 | jobs:  | 
16 | 21 |   image:  | 
17 | 22 |     name: Build image  | 
18 | 23 |     runs-on: ubuntu-22.04  | 
 | 24 | +    permissions:  | 
 | 25 | +      contents: read  | 
 | 26 | +      id-token: write  | 
19 | 27 |     strategy:  | 
20 | 28 |       fail-fast: false  | 
21 | 29 |       matrix:  | 
@@ -52,21 +60,33 @@ jobs:  | 
52 | 60 |         env:  | 
53 | 61 |           IMAGE_NAME: ${{ matrix.image }}  | 
54 | 62 |         run: |  | 
55 |  | -          REG=intel/ make ${IMAGE_NAME} BUILDER=docker  | 
 | 63 | +          ORG=${{ inputs.registry }} TAG=${{ inputs.image_tag }} make ${IMAGE_NAME} BUILDER=docker  | 
56 | 64 |       - name: Trivy scan for image  | 
57 | 65 |         uses: aquasecurity/trivy-action@6e7b7d1fd3e4fef0c5fa8cce1229c54b2c9bd0d8 # 0.24.0  | 
58 | 66 |         with:  | 
59 | 67 |           scan-type: image  | 
60 |  | -          image-ref: intel/${{ matrix.image }}:${{ inputs.image_tag }}  | 
 | 68 | +          image-ref: ${{ inputs.registry }}/${{ matrix.image }}:${{ inputs.image_tag }}  | 
61 | 69 |           exit-code: 1  | 
62 | 70 |       - name: Test image base layer  | 
63 | 71 |         # Don't run base layer check for selected images  | 
64 | 72 |         if: ${{ !contains(fromJson(env.no_base_check), matrix.image) }}  | 
65 |  | -        run: IMG=intel/${{ matrix.image }}:${{ inputs.image_tag }} make test-image-base-layer BUILDER=docker  | 
 | 73 | +        run: IMG=${{ inputs.registry }}/${{ matrix.image }}:${{ inputs.image_tag }} make test-image-base-layer BUILDER=docker  | 
66 | 74 |       - name: Login  | 
67 | 75 |         uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3  | 
68 | 76 |         with:  | 
69 | 77 |           username: ${{ secrets.DOCKERHUB_USER }}  | 
70 | 78 |           password: ${{ secrets.DOCKERHUB_PASS }}  | 
71 | 79 |       - name: Push  | 
72 |  | -        run: docker push intel/${{ matrix.image }}:${{ inputs.image_tag }}  | 
 | 80 | +        run: docker push ${{ inputs.registry }}/${{ matrix.image }}:${{ inputs.image_tag }}  | 
 | 81 | +      - name: Get image digest  | 
 | 82 | +        if: ${{ inputs.image_tag != 'devel' }}  | 
 | 83 | +        id: digest  | 
 | 84 | +        run: |  | 
 | 85 | +          echo "image_sha=$(docker inspect --format='{{index .RepoDigests 0}}' ${{ inputs.registry }}/${{ matrix.image }}:${{ inputs.image_tag }})" >> $GITHUB_OUTPUT  | 
 | 86 | +      - name: Install cosign  | 
 | 87 | +        if: ${{ inputs.image_tag != 'devel' }}  | 
 | 88 | + | 
 | 89 | +      - name: Keyless image sign  | 
 | 90 | +        if: ${{ inputs.image_tag != 'devel' }}  | 
 | 91 | +        run: |  | 
 | 92 | +          cosign sign --yes ${{ steps.digest.outputs.image_sha }}  | 
0 commit comments