From 1734c2f11dfd4cac94186710e92cc1617c2d6e38 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 01:44:55 +0530 Subject: [PATCH 01/17] Created docker-publish.yml --- .github/workflows/docker-publish.yml | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/docker-publish.yml diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml new file mode 100644 index 0000000..51ebf91 --- /dev/null +++ b/.github/workflows/docker-publish.yml @@ -0,0 +1,31 @@ +name: Docker Build & Push + +on: + push: + branches: [ "master", "SetupDocker" ] + +jobs: + build-and-push: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Build and push + uses: docker/build-push-action@v5 + with: + context: . # Uses the Dockerfile in the root folder + push: true + tags: | + brother5012/microforge:latest + brother5012/microforge:${{ github.sha }} \ No newline at end of file From a67cb906ce8a7e821634a726dfc6837587dd16cb Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 01:50:21 +0530 Subject: [PATCH 02/17] Improved tags --- .github/workflows/docker-publish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 51ebf91..0a8baeb 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -27,5 +27,5 @@ jobs: context: . # Uses the Dockerfile in the root folder push: true tags: | - brother5012/microforge:latest - brother5012/microforge:${{ github.sha }} \ No newline at end of file + ${{ secrets.DOCKER_USERNAME }}/microforge:latest + ${{ secrets.DOCKER_USERNAME }}/microforge:${{ github.sha }} \ No newline at end of file From 195ac469a84c132ff7509eb8809a9cfc65481993 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:06:55 +0530 Subject: [PATCH 03/17] Added DockerFile --- Dockerfile | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..98a578a --- /dev/null +++ b/Dockerfile @@ -0,0 +1,116 @@ +# Dockerfile for MicroForge + +# ============================================================================== +# Auth Service +# ============================================================================== +FROM golang:1.25.1-bookworm AS auth-service-builder + +WORKDIR /usr/src/app + +COPY ./src/auth-service/go.mod ./src/auth-service/go.sum ./ +RUN go mod download + +COPY ./src/auth-service/ ./ + +RUN CGO_ENABLED=0 GOOS=linux GO111MODULE=on go build -ldflags "-s -w" -o /auth-service main.go + +FROM gcr.io/distroless/static-debian12:nonroot AS auth-service +WORKDIR /usr/src/app + +COPY --from=auth-service-builder /auth-service ./ + +EXPOSE 8082 + +ENTRYPOINT [ "./auth-service" ] + +# ============================================================================== +# Frontend Service +# ============================================================================== +FROM docker.io/library/node:22-slim AS frontend-service-builder + +WORKDIR /app + +COPY ./src/frontend-service/package.json ./src/frontend-service/package-lock.json ./ +RUN npm ci + +COPY ./src/frontend-service/src/ ./src/ +COPY ./src/frontend-service/public/ ./public/ + +RUN npm run build + +FROM nginx:alpine AS frontend-service +COPY --from=frontend-service-builder /app/build /usr/share/nginx/html +COPY ./src/frontend-service/nginx.conf /etc/nginx/conf.d/default.conf +COPY ./src/frontend-service/config.template.json /usr/share/nginx/html/config.template.json +COPY ./src/frontend-service/frontendEntrypoint.sh /frontendEntrypoint.sh +RUN chmod +x /frontendEntrypoint.sh + +EXPOSE 80 +ENTRYPOINT [ "/frontendEntrypoint.sh" ] + +# ============================================================================== +# Login Service +# ============================================================================== +FROM eclipse-temurin:21.0.5_11-jdk-jammy AS login-service-builder + +WORKDIR /app + +COPY ./src/login-service/mvnw ./src/login-service/.mvn ./ +COPY ./src/login-service/pom.xml ./ + +RUN chmod +x mvnw && ./mvnw dependency:go-offline + +COPY ./src/login-service/src ./src/ + +RUN ./mvnw clean package -DskipTests + +FROM gcr.io/distroless/java21-debian12:latest AS login-service + +WORKDIR /app + +COPY --from=login-service-builder /app/target/login-service-1.0.0.jar login-service.jar + +EXPOSE 8081 + +ENTRYPOINT [ "java" , "-jar", "login-service.jar" ] + +# ============================================================================== +# Metadata Service +# ============================================================================== +FROM docker.io/library/python:3.12-alpine3.22 AS metadata-service-builder + +RUN apk update && \ + apk add gcc g++ linux-headers + +WORKDIR /app + +COPY ./src/metadata-service/requirements.txt requirements.txt + +RUN python -m venv /opt/venv && \ + /opt/venv/bin/pip install -r requirements.txt + +FROM docker.io/library/python:3.12-alpine3.22 AS metadata-service + +COPY --from=metadata-service-builder /opt/venv /opt/venv + +WORKDIR /app + +COPY ./src/metadata-service/ . + +CMD ["/opt/venv/bin/gunicorn", "app:app", "--workers", "4", "--bind", "0.0.0.0:8084"] + +# ============================================================================== +# Notification Service +# ============================================================================== +FROM node:18-alpine AS notification-service-builder +WORKDIR /app +COPY ./src/notification-service/package.json ./src/notification-service/package-lock.json ./ +RUN npm ci + +FROM gcr.io/distroless/nodejs18-debian11:nonroot AS notification-service +WORKDIR /app + +COPY --from=notification-service-builder /app/node_modules ./node_modules +COPY ./src/notification-service/ . + +CMD [ "app.js" ] From 113d46a4a56cb72ff84de8a3add9502e987c0152 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:07:29 +0530 Subject: [PATCH 04/17] Updated docker-publish --- .github/workflows/docker-publish.yml | 31 +++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 0a8baeb..b147f21 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,11 +2,27 @@ name: Docker Build & Push on: push: - branches: [ "master", "SetupDocker" ] + branches: [ "master" ] jobs: build-and-push: runs-on: ubuntu-latest + + # MATRIX STRATEGY: This runs the job 5 times in parallel! + strategy: + fail-fast: false + matrix: + include: + - service: auth-service + image-name: auth-service + - service: frontend-service + image-name: frontend-service + - service: login-service + image-name: login-service + - service: metadata-service + image-name: metadata-service + - service: notification-service + image-name: notification-service steps: - name: Checkout code @@ -21,11 +37,16 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Build and push + - name: Build and push ${{ matrix.service }} uses: docker/build-push-action@v5 with: - context: . # Uses the Dockerfile in the root folder + context: . + file: ./Dockerfile push: true + # THE MAGIC PART: We specify exactly which 'stage' to build + target: ${{ matrix.service }} + + # This creates tags like: yourname/microforge-auth-service:latest tags: | - ${{ secrets.DOCKER_USERNAME }}/microforge:latest - ${{ secrets.DOCKER_USERNAME }}/microforge:${{ github.sha }} \ No newline at end of file + ${{ secrets.DOCKER_USERNAME }}/microforge-${{ matrix.image-name }}:latest + ${{ secrets.DOCKER_USERNAME }}/microforge-${{ matrix.image-name }}:${{ github.sha }} \ No newline at end of file From 31b993b218e68ed21a7f292640066408de89c0d0 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:10:01 +0530 Subject: [PATCH 05/17] Fixed docker-publish --- .github/workflows/docker-publish.yml | 47 ++++++++++++++-------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index b147f21..a1537d5 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -1,28 +1,30 @@ -name: Docker Build & Push +name: Docker Build & Push Services on: push: - branches: [ "master" ] + branches: [ "master", "SetupDocker" ] jobs: - build-and-push: + build-and-push-services: runs-on: ubuntu-latest - - # MATRIX STRATEGY: This runs the job 5 times in parallel! strategy: - fail-fast: false matrix: - include: - - service: auth-service - image-name: auth-service - - service: frontend-service - image-name: frontend-service - - service: login-service - image-name: login-service - - service: metadata-service - image-name: metadata-service - - service: notification-service - image-name: notification-service + service: + - name: auth-service + image_suffix: microforge-auth-service + version: v1.0.0 + - name: frontend-service + image_suffix: microforge-frontend-service + version: v1.1.0 + - name: login-service + image_suffix: microforge-login-service + version: v1.1.0 + - name: metadata-service + image_suffix: microforge-metadata-service + version: v1.0.0 + - name: notification-service + image_suffix: microforge-notification-service + version: v1.0.0 steps: - name: Checkout code @@ -37,16 +39,13 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Build and push ${{ matrix.service }} + - name: Build and push uses: docker/build-push-action@v5 with: context: . file: ./Dockerfile + target: ${{ matrix.service.name }} push: true - # THE MAGIC PART: We specify exactly which 'stage' to build - target: ${{ matrix.service }} - - # This creates tags like: yourname/microforge-auth-service:latest tags: | - ${{ secrets.DOCKER_USERNAME }}/microforge-${{ matrix.image-name }}:latest - ${{ secrets.DOCKER_USERNAME }}/microforge-${{ matrix.image-name }}:${{ github.sha }} \ No newline at end of file + ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:${{ matrix.service.version }} + ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:latest From bee50daa172b4745ca2041076801cf59a61f555f Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:12:58 +0530 Subject: [PATCH 06/17] removed docker.yml --- .github/workflows/docker.yaml | 26 -------------------------- 1 file changed, 26 deletions(-) delete mode 100644 .github/workflows/docker.yaml diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml deleted file mode 100644 index efc65f8..0000000 --- a/.github/workflows/docker.yaml +++ /dev/null @@ -1,26 +0,0 @@ -name: Build, Test and Push Docker Image -on: - push: - branches: - - master - -jobs: - docker-build: - runs-on: ubuntu-latest - defaults: - run: - shell: bash - working-directory: ./src - strategy: - matrix: - service: - - name: login-service - image: manojmdocker14/microforge-login-service - - name: auth-service - image: manojmdocker14/microforge-auth-service - - name: frontend-service - image: manojmdocker14/microforge-frontend-service - - name: metadata-service - image: manojmdocker14/microforge-metadata-service - - name: notification-service - image: manojmdocker14/microforge-notification-service \ No newline at end of file From c3cc2ebb26edc98a742458e05588cba8665b8ce2 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:16:30 +0530 Subject: [PATCH 07/17] Fixed issue in building login service --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 98a578a..96b05c3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -55,7 +55,8 @@ FROM eclipse-temurin:21.0.5_11-jdk-jammy AS login-service-builder WORKDIR /app -COPY ./src/login-service/mvnw ./src/login-service/.mvn ./ +COPY ./src/login-service/mvnw ./ +COPY ./src/login-service/.mvn/ ./.mvn/ COPY ./src/login-service/pom.xml ./ RUN chmod +x mvnw && ./mvnw dependency:go-offline From 148e2d6b20358e4dc9b369f0dd466ccbe44dba1b Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 02:26:29 +0530 Subject: [PATCH 08/17] Removed testing branch name --- .github/workflows/docker-publish.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index a1537d5..2362e1c 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master", "SetupDocker" ] + branches: [ "master"] jobs: build-and-push-services: @@ -49,3 +49,4 @@ jobs: tags: | ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:${{ matrix.service.version }} ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:latest + ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:${{github.sha}} From 644e54f20a51d47fd79a2ae28b5a4582244f37a1 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sat, 10 Jan 2026 09:26:57 +0530 Subject: [PATCH 09/17] fix: add stage branch to workflow triggers --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 2362e1c..e661898 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master"] + branches: [ "master", "stage"] jobs: build-and-push-services: From e9740bc2a5e738fbcd095689c60b55465d5c9f9a Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sun, 11 Jan 2026 07:52:35 +0530 Subject: [PATCH 10/17] Added Manual Trigger and Version Input --- .github/workflows/docker-publish.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index e661898..363b340 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,14 @@ name: Docker Build & Push Services on: push: - branches: [ "master", "stage"] + branches: [ "master", "stage", "docker/setup-push-pipeline"] + # Manual Trigger + workflow_dispatch: + inputs: + version: + description: 'Version Tag (e.g., v1.2.0)' + required: true + default: 'manual-latest' jobs: build-and-push-services: @@ -47,6 +54,8 @@ jobs: target: ${{ matrix.service.name }} push: true tags: | - ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:${{ matrix.service.version }} - ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:latest - ${{ secrets.DOCKER_USERNAME }}/${{ matrix.service.image_suffix }}:${{github.sha}} + ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ matrix.service.version }} + ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-latest + ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ github.sha }} + # Additional Logic for Version Input. + ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} From 2c7d761fe55702726270efa6a14c001e5529bc99 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sun, 11 Jan 2026 07:55:11 +0530 Subject: [PATCH 11/17] Fixed the Comment --- .github/workflows/docker-publish.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 363b340..ac77d65 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -57,5 +57,4 @@ jobs: ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ matrix.service.version }} ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-latest ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ github.sha }} - # Additional Logic for Version Input. ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} From b7c84238694bd2f4f9fa6f2bd615d46003a2c0b6 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Sun, 11 Jan 2026 08:13:47 +0530 Subject: [PATCH 12/17] Removed Additional Branches --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index ac77d65..ade5e0d 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master", "stage", "docker/setup-push-pipeline"] + branches: [ "master"] # Manual Trigger workflow_dispatch: inputs: From 24e0048eca22dbb77183612c53f1ed260824ed3c Mon Sep 17 00:00:00 2001 From: parth5012 Date: Mon, 12 Jan 2026 12:08:58 +0530 Subject: [PATCH 13/17] fix: allow per-service versioning and implement manual tag usage --- .github/workflows/docker-publish.yml | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index ade5e0d..3a0935d 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,14 +2,26 @@ name: Docker Build & Push Services on: push: - branches: [ "master"] - # Manual Trigger + branches: [ "master" , "docker/setup-push-pipeline"] + # Manual Trigger with dropdown workflow_dispatch: inputs: + service_target: + description: 'Which service to build?' + required: true + type: choice + default: 'all' + options: + - all + - auth-service + - frontend-service + - login-service + - metadata-service + - notification-service version: description: 'Version Tag (e.g., v1.2.0)' - required: true - default: 'manual-latest' + required: false + default: '' jobs: build-and-push-services: @@ -48,6 +60,11 @@ jobs: - name: Build and push uses: docker/build-push-action@v5 + # LOGIC: Run if target is 'all' OR if the current matrix service matches the input + if: ${{ inputs.service_target == 'all' || inputs.service_target == matrix.service.name || github.event_name == 'push' }} + env: + # Logic: If a manual version is provided, format it. Otherwise empty. + MANUAL_TAG: ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} with: context: . file: ./Dockerfile @@ -58,3 +75,4 @@ jobs: ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-latest ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ github.sha }} ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} + ${{ env.MANUAL_TAG }} From 3ba724a2ba1f6c96ea21134c5856d9ee9ea63c0c Mon Sep 17 00:00:00 2001 From: parth5012 Date: Mon, 12 Jan 2026 12:21:25 +0530 Subject: [PATCH 14/17] Added Version overriding --- .github/workflows/docker-publish.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 3a0935d..c7db0d5 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -58,21 +58,25 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} + - name: Determine Version + id: versioning + run: | + if [[ "${{ inputs.version }}" != "" ]]; then + echo "VERSION=${{ inputs.version }}" >> $GITHUB_ENV + else + echo "VERSION=${{ matrix.service.version }}" >> $GITHUB_ENV + fi - name: Build and push uses: docker/build-push-action@v5 # LOGIC: Run if target is 'all' OR if the current matrix service matches the input if: ${{ inputs.service_target == 'all' || inputs.service_target == matrix.service.name || github.event_name == 'push' }} - env: - # Logic: If a manual version is provided, format it. Otherwise empty. - MANUAL_TAG: ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} with: context: . file: ./Dockerfile target: ${{ matrix.service.name }} push: true tags: | - ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ matrix.service.version }} + ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ env.VERSION }} ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-latest ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ github.sha }} ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} - ${{ env.MANUAL_TAG }} From 60dd09482f9cd15074cf5e2f831dd02e7ef5f88b Mon Sep 17 00:00:00 2001 From: parth5012 Date: Mon, 12 Jan 2026 12:26:37 +0530 Subject: [PATCH 15/17] Removed Testing Branch --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index c7db0d5..88b5bd3 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master" , "docker/setup-push-pipeline"] + branches: [ "master"] # Manual Trigger with dropdown workflow_dispatch: inputs: From 42064241a835e97c5a6f5b9646217978b9e85123 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Tue, 13 Jan 2026 09:06:58 +0530 Subject: [PATCH 16/17] fix:Removed hardcoded versions from matrix services --- .github/workflows/docker-publish.yml | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 88b5bd3..dba3662 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master"] + branches: [ "master",'docker/setup-push-pipeline'] # Manual Trigger with dropdown workflow_dispatch: inputs: @@ -31,19 +31,14 @@ jobs: service: - name: auth-service image_suffix: microforge-auth-service - version: v1.0.0 - name: frontend-service image_suffix: microforge-frontend-service - version: v1.1.0 - name: login-service image_suffix: microforge-login-service - version: v1.1.0 - name: metadata-service image_suffix: microforge-metadata-service - version: v1.0.0 - name: notification-service image_suffix: microforge-notification-service - version: v1.0.0 steps: - name: Checkout code @@ -57,26 +52,19 @@ jobs: with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Determine Version - id: versioning - run: | - if [[ "${{ inputs.version }}" != "" ]]; then - echo "VERSION=${{ inputs.version }}" >> $GITHUB_ENV - else - echo "VERSION=${{ matrix.service.version }}" >> $GITHUB_ENV - fi - name: Build and push uses: docker/build-push-action@v5 - # LOGIC: Run if target is 'all' OR if the current matrix service matches the input - if: ${{ inputs.service_target == 'all' || inputs.service_target == matrix.service.name || github.event_name == 'push' }} + # LOGIC: Run if target is 'all' OR matches the current service name + if: ${{ inputs.service_target == 'all' || inputs.service_target == matrix.service || github.event_name == 'push' }} + env: + # Logic: Only create this tag if input.version is NOT empty + MANUAL_TAG: ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service, inputs.version) || '' }} with: context: . file: ./Dockerfile target: ${{ matrix.service.name }} push: true tags: | - ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ env.VERSION }} ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-latest ${{ secrets.DOCKER_USERNAME }}/microforge:${{ matrix.service.name }}-${{ github.sha }} - ${{ inputs.version != '' && format('{0}/microforge:{1}-{2}', secrets.DOCKER_USERNAME, matrix.service.name, inputs.version) || '' }} + ${{ env.MANUAL_TAG }} From e5c170ff0dcac2ecfd2a71b1a9b5747bbe177ef8 Mon Sep 17 00:00:00 2001 From: parth5012 Date: Tue, 13 Jan 2026 09:12:08 +0530 Subject: [PATCH 17/17] Removed testing branch --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index dba3662..f573460 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: Docker Build & Push Services on: push: - branches: [ "master",'docker/setup-push-pipeline'] + branches: [ "master"] # Manual Trigger with dropdown workflow_dispatch: inputs: