@@ -2,95 +2,66 @@ name: "Container Image"
22
33on :
44 workflow_call :
5- secrets :
6- DOCKER_HUB_TOKEN :
7- required : true
8- DOCKER_HUB_USER :
9- required : true
10- GH_PAT :
11- required : true
12- GH_USER :
13- required : true
14- AWS_OIDC_ROLE_TO_ASSUME :
15- required : true
165 workflow_dispatch :
176
187env :
19- AWS_REGION : us-east-1
8+ MAKE_STOP_ON_ERRORS : true
9+ MAKE_DEBUG : true
2010
2111permissions :
2212 id-token : write
23- contents : read
13+ contents : write
14+ packages : write
2415
2516jobs :
26- build_publish_container_images :
17+ build :
2718 name : Build and Publish Container Images
2819 runs-on : ubuntu-latest
2920 steps :
3021 - name : Check out code
3122 uses : actions/checkout@v6
3223
33- - name : Set up Go 1.x
34- id : go
35- uses : actions/setup-go@v6
36- with :
37- go-version-file : ./go.mod
38-
39- - name : Go version
24+ - name : Install Podman
4025 run : |
41- go version
26+ sudo apt-get update
27+ sudo apt-get install -y podman
4228
43- - name : Git Current branch name (Version)
29+ - name : Tools and versions
4430 run : |
45- echo ${{ github.ref_name }}
31+ echo "# Container Image Summary" > $GITHUB_STEP_SUMMARY
32+ echo "" >> $GITHUB_STEP_SUMMARY
33+ echo "## Tools and versions" >> $GITHUB_STEP_SUMMARY
4634
47- - name : Docker Version
48- run : |
49- docker version
35+ podman_version=$(podman --version | awk '{print $3}')
36+ echo "Podman version: $podman_version"
37+ echo "**Podman Version:** $podman_version" >> $GITHUB_STEP_SUMMARY
5038
51- - name : Set up QEMU
52- uses : docker/setup-qemu-action@v4
39+ make_version=$(make --version | head -n 1)
40+ echo "Make version: $make_version"
41+ echo "**Make Version:** $make_version" >> $GITHUB_STEP_SUMMARY
5342
54- - name : Set up Docker Buildx
55- uses : docker/setup-buildx-action@v4
43+ - name : Download Distribution files
44+ uses : actions/download-artifact@v7
45+ with :
46+ name : dist
47+ path : ./dist/
5648
57- - name : Build container images
49+ - name : Make container-build
5850 run : |
59- GIT_VERSION=${{ github.ref_name }} make container-build
51+ echo "## Make container-build" >> $GITHUB_STEP_SUMMARY
52+ GIT_VERSION=${{ github.ref_name }} make container-build | tee -a $GITHUB_STEP_SUMMARY
6053
6154 - name : Show container images
6255 run : |
63- docker images
64-
65- - name : Logging in Docker Hub
66- run : |
67- echo ${{ secrets.DOCKER_HUB_TOKEN }} | docker login -u ${{ secrets.DOCKER_HUB_USER }} --password-stdin
68-
69- - name : Publish Images in Docker Hub
70- run : |
71- GIT_VERSION=${{ github.ref_name }} make container-publish-docker
72-
73- - name : Logging in GitHub Registry
74- run : |
75- echo ${{ secrets.GH_PAT }} | docker login ghcr.io -u ${{ secrets.GH_USER }} --password-stdin
76-
77- - name : Publish Images in GitHub Registry
78- run : |
79- GIT_VERSION=${{ github.ref_name }} make container-publish-github
80-
81- - name : Configure AWS Credentials
82- uses : aws-actions/configure-aws-credentials@v5
83- with :
84- role-to-assume : ${{ secrets.AWS_OIDC_ROLE_TO_ASSUME }}
85- role-session-name : publish-ecr-public-images
86- aws-region : ${{ env.AWS_REGION }}
56+ echo "## Show container images" >> $GITHUB_STEP_SUMMARY
57+ podman images | tee -a $GITHUB_STEP_SUMMARY
8758
88- - name : Logging in AWS ECR Public Repository
89- env :
90- AWS_REGION : ${{ env.AWS_REGION }}
59+ - name : Make container-login
9160 run : |
92- aws ecr-public get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin public.ecr.aws
61+ echo "## Make container-login" >> $GITHUB_STEP_SUMMARY
62+ GIT_VERSION=${{ github.ref_name }} REPOSITORY_REGISTRY_TOKEN=${{ secrets.GITHUB_TOKEN }} REPOSITORY_REGISTRY_USERNAME=${{ github.actor }} make container-login | tee -a $GITHUB_STEP_SUMMARY
9363
94- - name : Publish Images in GitHub Packages
64+ - name : Make container-publish
9565 run : |
96- GIT_VERSION=${{ github.ref_name }} make container-publish-aws-ecr
66+ echo "## Make container-publish" >> $GITHUB_STEP_SUMMARY
67+ GIT_VERSION=${{ github.ref_name }} make container-publish | tee -a $GITHUB_STEP_SUMMARY
0 commit comments