Skip to content

Commit f7a2866

Browse files
committed
feat: update Docker workflow to include DockerHub login and adjust image tagging
1 parent b6fc54e commit f7a2866

3 files changed

Lines changed: 15 additions & 22 deletions

File tree

.github/workflows/docker-build-and-scan.yaml

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,20 @@ jobs:
3535
uses: docker/setup-qemu-action@v3
3636
- name: Set up Docker Buildx
3737
uses: docker/setup-buildx-action@v3
38-
- name: Build Docker Image
39-
id: build-image
38+
- name: Login to DockerHub
39+
if: github.event_name == 'workflow_call'
40+
uses: docker/login-action@v3
41+
with:
42+
username: ${{ secrets.DOCKERHUB_USERNAME }}
43+
password: ${{ secrets.DOCKERHUB_TOKEN }}
44+
- name: Build (and maybe push) Docker image
4045
uses: docker/build-push-action@v6
4146
with:
42-
context: ${{ inputs.DOCKER_PATH_CONTEXT || env.DOCKER_PATH_CONTEXT }}
43-
file: ${{ inputs.DOCKER_BUILD_DOCKERFILE || env.DOCKER_BUILD_DOCKERFILE }}
44-
load: ${{ inputs.DOCKER_LOAD_BOOL || env.DOCKER_LOAD_BOOL }}
45-
tags: ${{ inputs.DOCKER_TAGS || env.DOCKER_TAGS }}
47+
context: ${{ github.event_name == 'workflow_call' && inputs.DOCKER_PATH_CONTEXT || env.DOCKER_PATH_CONTEXT }}
48+
file: ${{ github.event_name == 'workflow_call' && inputs.DOCKER_BUILD_DOCKERFILE || env.DOCKER_BUILD_DOCKERFILE }}
49+
load: ${{ github.event_name != 'workflow_call' }}
50+
push: ${{ github.event_name == 'workflow_call' }}
51+
tags: ${{ github.event_name == 'workflow_call' && inputs.DOCKER_TAGS || env.DOCKER_TAGS }}
4652
- name: Run Trivy vulnerability scanner
4753
uses: aquasecurity/trivy-action@0.33.1
4854
with:
@@ -52,17 +58,3 @@ jobs:
5258
ignore-unfixed: true
5359
vuln-type: 'os,library'
5460
severity: 'CRITICAL,HIGH'
55-
- name: Login to DockerHub
56-
if: github.event_name == 'workflow_call'
57-
uses: docker/login-action@v3
58-
with:
59-
username: ${{ secrets.DOCKERHUB_USERNAME }}
60-
password: ${{ secrets.DOCKERHUB_TOKEN }}
61-
- name: Push Docker image to DockerHub
62-
if: github.event_name == 'workflow_call'
63-
uses: docker/build-push-action@v6
64-
with:
65-
context: ${{ inputs.DOCKER_PATH_CONTEXT || env.DOCKER_PATH_CONTEXT }}
66-
file: ${{ inputs.DOCKER_BUILD_DOCKERFILE || env.DOCKER_BUILD_DOCKERFILE }}
67-
push: true
68-
tags: ${{ inputs.DOCKER_TAGS || env.DOCKER_TAGS }}

.github/workflows/release.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,9 @@ jobs:
8080
docker-build-and-scan:
8181
needs: Semantic-Release
8282
uses: milsman2/python-app-template/.github/workflows/docker-build-and-scan.yaml@main
83+
secrets: inherit
8384
with:
8485
DOCKER_PATH_CONTEXT: .
8586
DOCKER_BUILD_DOCKERFILE: Dockerfile
8687
DOCKER_LOAD_BOOL: true
87-
DOCKER_TAGS: sample-python-app:${{ needs.Semantic-Release.outputs.tag }}
88+
DOCKER_TAGS: milsman2/sample-python-app:${{ needs.Semantic-Release.outputs.tag }}

src/sample_python_app/main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
def run_app():
1212
console = Console()
1313
f = Figlet(font="slant")
14-
ascii_art = f.renderText("Hello, Synthwave!")
14+
ascii_art = f.renderText(f"Welcome to {settings.APP_NAME}!")
1515
console.print(f"[bold magenta]{ascii_art}[/bold magenta]")
1616
logger = setup_logger(mode="silent")
1717
logger.info(f"Starting {settings.APP_NAME}...")

0 commit comments

Comments
 (0)