1+ name : " release-X: Merge container digests"
2+
3+ env :
4+ GIT_USERNAME : " DefectDojo release bot"
5+ GIT_EMAIL : " dojo-release-bot@users.noreply.github.com"
6+
7+ on :
8+ workflow_dispatch :
9+ inputs :
10+ # the actual branch that can be chosen on the UI is made irrelevant by further steps
11+ # because someone will forget one day to change it.
12+ release_number :
13+ type : string
14+ description : ' Release version (x.y.z format)'
15+ required : true
16+
17+ workflow_call :
18+ inputs :
19+ # the actual branch that can be chosen on the UI is made irrelevant by further steps
20+ # because someone will forget one day to change it.
21+ release_number :
22+ type : string
23+ description : ' Release version (x.y.z format)'
24+ required : true
25+
26+ jobs :
27+ merge-digests :
28+ runs-on : ubuntu-latest
29+ strategy :
30+ fail-fast : false
31+ matrix :
32+ docker-image : [django, nginx]
33+
34+ steps :
35+ # deduce docker org name from git repo to make the build also work in forks
36+ - id : Set-docker-org
37+ run : echo "DOCKER_ORG=$(echo ${GITHUB_REPOSITORY%%/*} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
38+
39+ - name : Login to DockerHub
40+ uses : docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
41+ with :
42+ username : ${{ secrets.DOCKERHUB_USERNAME }}
43+ password : ${{ secrets.DOCKERHUB_TOKEN }}
44+
45+ - name : Set up Docker Buildx
46+ uses : docker/setup-buildx-action@v3
47+
48+ # debian images are the default / official ones, and these were already tagged, so these get the latest tag
49+ - name : Tag Debian with latest tags
50+ working-directory : ${{ runner.temp }}/digests
51+ run : |
52+ set -x
53+ docker buildx imagetools create -t "${{ env.DOCKER_ORG }}/defectdojo-${{ matrix.docker-image}}:latest" ${{ env.DOCKER_ORG }}/defectdojo-${{ matrix.docker-image}}:${{ inputs.release_number }}
54+
55+ # just for logging
56+ - name : Inspect default images
57+ run : |
58+ docker buildx imagetools inspect ${{ env.DOCKER_ORG }}/defectdojo-${{ matrix.docker-image}}:latest
0 commit comments