Skip to content

[DEV-13666] Fixing ci flow for building images #11

[DEV-13666] Fixing ci flow for building images

[DEV-13666] Fixing ci flow for building images #11

name: Build and Push Docker Images
on:
push:
branches:
- main
- dev
- DEV-13666-build-images
jobs:
build-base-images:
name: Build Base Images
runs-on: ubuntu-latest
strategy:
matrix:
include:
- dockerfile: Dockerfile.sdk-react
image_name: sdk-react
- dockerfile: Dockerfile.sdk-demo
image_name: sdk-demo
- dockerfile: Dockerfile.sdk-demo-with-nextjs-and-clerk-auth
image_name: sdk-demo-with-nextjs-and-clerk-auth
- dockerfile: Dockerfile.sdk-drop-in
image_name: sdk-drop-in
- dockerfile: Dockerfile.private-registry
image_name: private-registry
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Log in to GitLab Container Registry
uses: docker/login-action@v3
with:
registry: registry.monite.com
username: ${{ vars.GITLAB_BOT_USERNAME }}
password: ${{ secrets.GITLAB_BOT_ACCESS_TOKEN }}
- name: Build and push Docker image to GitLab
run: |
COMMIT_SHA=${{ github.sha }}
IMAGE_TAG=${{ matrix.image_name }}-${COMMIT_SHA}
docker build -t registry.monite.com/monite/frontend/sdkapp:${IMAGE_TAG} -f ./${{ matrix.dockerfile }} .
docker push registry.monite.com/monite/frontend/sdkapp:${IMAGE_TAG}
continue-on-error: true
build-dependent-images:
name: Build Dependent Images
runs-on: ubuntu-latest
needs: build-base-images
strategy:
matrix:
include:
- dockerfile: Dockerfile.sdk-demo-nginx
base_image: sdk-demo
image_name: sdk-demo-nginx
- dockerfile: Dockerfile.sdk-drop-in-nginx
base_image: sdk-drop-in
image_name: sdk-drop-in-nginx
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Log in to GitLab Container Registry
uses: docker/login-action@v3
with:
registry: registry.monite.com
username: ${{ vars.GITLAB_BOT_USERNAME }}
password: ${{ secrets.GITLAB_BOT_ACCESS_TOKEN }}
- name: Build and push Docker image to GitLab
run: |
COMMIT_SHA=${{ github.sha }}
IMAGE_TAG=${{ matrix.image_name }}-${COMMIT_SHA}
BASE_IMAGE_TAG=${{ matrix.base_image }}-${COMMIT_SHA}
docker pull registry.monite.com/monite/frontend/sdkapp:${BASE_IMAGE_TAG}
docker build --build-arg BASE_IMAGE=registry.monite.com/monite/frontend/sdkapp:${BASE_IMAGE_TAG} \
-t registry.monite.com/monite/frontend/sdkapp:${IMAGE_TAG} -f ./${{ matrix.dockerfile }} .
docker push registry.monite.com/monite/frontend/sdkapp:${IMAGE_TAG}