Skip to content

Commit ae93eb5

Browse files
authored
Refactor Dockerfile creation workflow
Removed version input from workflow dispatch and refactored Docker image build and push steps.
1 parent c265cb4 commit ae93eb5

File tree

1 file changed

+24
-95
lines changed

1 file changed

+24
-95
lines changed

.github/workflows/create-dockerfiles.yml

Lines changed: 24 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,9 @@ name: Create and push dockerfiles
22

33
on:
44
workflow_dispatch:
5-
inputs:
6-
version:
7-
description: 'Version tag to use for Docker images (e.g. 3.0.0)'
8-
required: true
9-
type: string
10-
115
release:
126
types: [released]
13-
7+
148
jobs:
159
latest:
1610
runs-on: ubuntu-22.04
@@ -55,99 +49,34 @@ jobs:
5549
- name: Build Project
5650
run: mvn install -DskipTests=true
5751

58-
- name: Determine Version
59-
id: version
60-
run: |
61-
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
62-
VERSION="${{ github.event.inputs.version }}"
63-
else
64-
VERSION="${GITHUB_REF#refs/tags/}"
65-
# Strip leading 'v' if present (e.g. v3.0.4 → 3.0.4)
66-
VERSION="${VERSION#v}"
67-
fi
68-
echo "Using version: $VERSION"
69-
echo "version=$VERSION" >> $GITHUB_OUTPUT
70-
71-
- name: Build All Docker Images
52+
- name: Set up QEMU
53+
uses: docker/setup-qemu-action@v3
54+
55+
- name: Set up Docker Buildx
56+
uses: docker/setup-buildx-action@v2
57+
58+
- name: Build Docker Images
7259
run: |
73-
export DOCKER_REPO=${{ secrets.docker_username }}
74-
export VERSION=${GITHUB_REF#refs/tags/} # GitHub release tag
75-
echo "Using version: $VERSION"
76-
77-
# OLD_DOCKER_MODULES=("agent-module/agent" "flink" "hbase/hbase-docker")
78-
SPRING_BOOT_MODULES=("collector-starter" "web-starter" "batch" "collector" "web")
79-
80-
build_old_docker() {
81-
MODULE_PATH=$1
82-
echo "Building old Docker module $MODULE_PATH ..."
83-
mvn docker:build -pl $MODULE_PATH -DskipTests=true
84-
}
85-
86-
build_spring_boot() {
87-
MODULE=$1
88-
echo "Building Spring Boot module $MODULE (multi-arch)..."
89-
mvn -pl $MODULE clean package spring-boot:build-image -DskipTests=true -Dspring-boot.build-image.platform=linux/amd64,linux/arm64
90-
}
91-
92-
# Build old Docker modules
93-
#for MODULE in "${OLD_DOCKER_MODULES[@]}"; do
94-
# build_old_docker $MODULE
95-
#done
96-
97-
# Set up Buildx for multi-arch Spring Boot builds
98-
docker buildx create --use --name multiarch-builder || true
99-
docker buildx inspect --bootstrap
100-
101-
# Build Spring Boot modules
102-
for MODULE in "${SPRING_BOOT_MODULES[@]}"; do
103-
build_spring_boot $MODULE
104-
done
60+
mvn docker:build -pl agent-module/agent
61+
mvn docker:build -pl hbase/hbase-docker
62+
mvn jib:build -pl collector-starter
63+
mvn jib:build -pl web-starter
64+
mvn jib:build -pl batch
65+
mvn jib:build -pl collector
66+
mvn jib:build -pl web
67+
docker images
10568
10669
- name: Log in to Docker Hub
10770
uses: docker/login-action@v3
10871
with:
10972
username: ${{ secrets.docker_username }}
11073
password: ${{ secrets.docker_token }}
111-
112-
- name: Push All Docker Images
113-
run: |
114-
export DOCKER_REPO=${{ secrets.docker_username }}
115-
export VERSION=${{ steps.version.outputs.version }}
116-
echo "Pushing Docker images for version: $VERSION"
117-
118-
# --- Old Docker modules ---
119-
docker tag $DOCKER_REPO/pinpoint-agent:latest $DOCKER_REPO/pinpoint-agent:$VERSION
120-
docker push $DOCKER_REPO/pinpoint-agent:latest
121-
docker push $DOCKER_REPO/pinpoint-agent:$VERSION
122-
123-
docker tag $DOCKER_REPO/pinpoint-flink:latest $DOCKER_REPO/pinpoint-flink:$VERSION
124-
docker push $DOCKER_REPO/pinpoint-flink:latest
125-
docker push $DOCKER_REPO/pinpoint-flink:$VERSION
126-
127-
docker tag $DOCKER_REPO/pinpoint-hbase-docker:latest $DOCKER_REPO/pinpoint-hbase-docker:$VERSION
128-
docker push $DOCKER_REPO/pinpoint-hbase-docker:latest
129-
docker push $DOCKER_REPO/pinpoint-hbase-docker:$VERSION
130-
131-
132-
# --- Spring Boot modules (metric images) ---
133-
docker tag $DOCKER_REPO/pinpoint-collector-starter:$VERSION-metric $DOCKER_REPO/pinpoint-collector-starter:latest-metric
134-
docker push $DOCKER_REPO/pinpoint-collector-starter:$VERSION-metric
135-
docker push $DOCKER_REPO/pinpoint-collector-starter:latest-metric
136-
137-
docker tag $DOCKER_REPO/pinpoint-web-starter:$VERSION-metric $DOCKER_REPO/pinpoint-web-starter:latest-metric
138-
docker push $DOCKER_REPO/pinpoint-web-starter:$VERSION-metric
139-
docker push $DOCKER_REPO/pinpoint-web-starter:latest-metric
140-
141-
docker tag $DOCKER_REPO/pinpoint-batch:$VERSION-metric $DOCKER_REPO/pinpoint-batch:latest-metric
142-
docker push $DOCKER_REPO/pinpoint-batch:$VERSION-metric
143-
docker push $DOCKER_REPO/pinpoint-batch:latest-metric
144-
145-
docker tag $DOCKER_REPO/pinpoint-collector:$VERSION-metric $DOCKER_REPO/pinpoint-collector:latest-metric
146-
docker push $DOCKER_REPO/pinpoint-collector:$VERSION-metric
147-
docker push $DOCKER_REPO/pinpoint-collector:latest-metric
148-
149-
docker tag $DOCKER_REPO/pinpoint-web:$VERSION-metric $DOCKER_REPO/pinpoint-web:latest-metric
150-
docker push $DOCKER_REPO/pinpoint-web:$VERSION-metric
151-
docker push $DOCKER_REPO/pinpoint-web:latest-metric
152-
15374

75+
- name: Push to Docker Hub
76+
run: |
77+
docker push --all-tags ${{ secrets.docker_username }}/pinpoint-agent
78+
docker push --all-tags ${{ secrets.docker_username }}/pinpoint-hbase
79+
docker push --all-tags ${{ secrets.docker_username }}/pinpoint-batch
80+
docker push --all-tags ${{ secrets.docker_username }}/pinpoint-collector
81+
docker push --all-tags ${{ secrets.docker_username }}/pinpoint-web
82+

0 commit comments

Comments
 (0)