Skip to content

Commit c2edf10

Browse files
authored
Merge pull request #159 from tawoe/develop
decouple container build and conditionally push, merge develop/non-d…
2 parents d1ad17b + bd694d4 commit c2edf10

1 file changed

Lines changed: 24 additions & 10 deletions

File tree

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
name: build and publish container
22

3-
on:
4-
push:
5-
branches:
6-
- develop
3+
on: [push]
74
env:
85
DOCKER_HUB_ORGANIZATION: ${{ vars.DOCKER_HUB_ORGANIZATION }}
96
DOCKER_HUB_REPOSITORY: api-explorer-ii
107

8+
119
jobs:
1210
build:
1311
runs-on: ubuntu-latest
@@ -18,21 +16,34 @@ jobs:
1816
id: extract_branch
1917

2018
- uses: actions/checkout@v4
21-
- name: Build the Docker image with latest tag
19+
- name: Build container images
2220
run: |
23-
echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u "${{ secrets.DOCKER_HUB_USERNAME }}" --password-stdin docker.io
24-
docker build . --file Dockerfiles/Dockerfile_backend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:${{ steps.extract_branch.outputs.branch }} --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:latest
25-
docker build . --file Dockerfiles/Dockerfile_frontend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:${{ steps.extract_branch.outputs.branch }} --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:latest
26-
echo docker api-explorer-ii with latest tag done
21+
if [ "${{ github.ref }}" == "refs/heads/develop" ]; then
22+
echo start building api-explorer-ii containers develop branch with latest tag
23+
docker build . --file Dockerfiles/Dockerfile_backend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:${{ steps.extract_branch.outputs.branch }} --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:latest
24+
docker build . --file Dockerfiles/Dockerfile_frontend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:${{ steps.extract_branch.outputs.branch }} --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:latest
25+
echo building api-explorer-ii containers develop branch with latest tag done
26+
else
27+
echo start building api-explorer-ii containers non-develop branch without latest tag
28+
docker build . --file Dockerfiles/Dockerfile_backend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:${{ steps.extract_branch.outputs.branch }}
29+
docker build . --file Dockerfiles/Dockerfile_frontend --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:$GITHUB_SHA --tag docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx:${{ steps.extract_branch.outputs.branch }}
30+
echo building api-explorer-ii containers non-develop branch without latest tag done
31+
fi
2732
33+
- name: Upload container images
34+
if: github.secrets.DOCKER_HUB_USERNAME != ''
35+
run: |
36+
echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u "${{ secrets.DOCKER_HUB_USERNAME }}" --password-stdin docker.io
2837
docker push docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }} --all-tags
2938
docker push docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}-nginx --all-tags
30-
echo docker push api-explorer-ii with latest tag done
39+
echo pushing api-explorer-ii containers done
3140
3241
- uses: sigstore/cosign-installer@main
3342
- name: Write signing key to disk (only needed for `cosign sign --key`)
43+
if: github.secrets.DOCKER_HUB_USERNAME != ''
3444
run: echo "${{ secrets.COSIGN_PRIVATE_KEY }}" > cosign.key
3545
- name: Sign container image with annotations from our environment
46+
if: github.secrets.DOCKER_HUB_USERNAME != ''
3647
env:
3748
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
3849
run: |
@@ -42,3 +53,6 @@ jobs:
4253
-a "ref=${{ github.sha }}" \
4354
docker.io/${{ env.DOCKER_HUB_ORGANIZATION }}/${{ env.DOCKER_HUB_REPOSITORY }}:${{ steps.extract_branch.outputs.branch }}
4455
56+
57+
58+

0 commit comments

Comments
 (0)