From d6f249e858bf32e68acf78d6372d64cee4791ca3 Mon Sep 17 00:00:00 2001 From: Usman Ghani Date: Mon, 24 Aug 2026 09:33:15 +0500 Subject: [PATCH 1/5] add caching docker image --- .../test-authsvc-docker-push-action.yaml | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) rename .github/{archive-workflows => workflows}/test-authsvc-docker-push-action.yaml (72%) diff --git a/.github/archive-workflows/test-authsvc-docker-push-action.yaml b/.github/workflows/test-authsvc-docker-push-action.yaml similarity index 72% rename from .github/archive-workflows/test-authsvc-docker-push-action.yaml rename to .github/workflows/test-authsvc-docker-push-action.yaml index 8067d7b..77d0883 100644 --- a/.github/archive-workflows/test-authsvc-docker-push-action.yaml +++ b/.github/workflows/test-authsvc-docker-push-action.yaml @@ -16,6 +16,26 @@ jobs: - name: Create Custom Docker Network run: docker network create authsvc-net + - name: Cache Docker Image Archive + id: image-cache + uses: actions/cache@v6 + with: + path: /tmp/docker-images + key: ${{ runner.os }}-docker-postgres-18 + + # Step 2: If cache is found, load the image into the Docker daemon local registry + - name: Load Cached Docker Image + if: steps.image-cache.outputs.cache-hit == 'true' + run: docker load --input /tmp/docker-images/postgres.tar + + # Step 3: If cache is missed, pull the fresh image and archive it for the "Save" step + - name: Pull and Archive Docker Image + if: steps.image-cache.outputs.cache-hit != 'true' + run: | + mkdir -p /tmp/docker-images + docker pull postgres:18 + docker save --output /tmp/docker-images/postgres.tar postgres:18 + - name: Start PostgreSQL Container run: > docker run -d --rm --name db-authsvc --network authsvc-net From bb37328c2138d010e9cbe02773d7cd67ed33318a Mon Sep 17 00:00:00 2001 From: Usman Ghani Date: Mon, 24 Aug 2026 09:36:26 +0500 Subject: [PATCH 2/5] update bun base container version in dockerfile --- auth-svc/dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/auth-svc/dockerfile b/auth-svc/dockerfile index 0f37260..8a1c7fa 100644 --- a/auth-svc/dockerfile +++ b/auth-svc/dockerfile @@ -1,4 +1,4 @@ -FROM oven/bun:1.3-alpine AS base +FROM oven/bun:1.4-alpine AS base RUN mkdir -p /usr/auth-svc WORKDIR /usr/auth-svc From 5041209a0b4a7911e3b1207794e86fced5e26233 Mon Sep 17 00:00:00 2001 From: Usman Ghani Date: Mon, 24 Aug 2026 11:24:44 +0500 Subject: [PATCH 3/5] add authsvc test action with container job --- .../test-authsvc-container-jobs.yaml | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .github/workflows/test-authsvc-container-jobs.yaml diff --git a/.github/workflows/test-authsvc-container-jobs.yaml b/.github/workflows/test-authsvc-container-jobs.yaml new file mode 100644 index 0000000..9057591 --- /dev/null +++ b/.github/workflows/test-authsvc-container-jobs.yaml @@ -0,0 +1,49 @@ +name: "integration tests for authsvc Using Container Job" +on: + push + +jobs: + authsvc-test: + runs-on: ubuntu-latest + container: + image: oven/bun:1.4 + env: + NODE_ENV: test + volumes: + - docker_images:/temp/docker_images + + environment: test + defaults: + run: + working-directory: ./auth-svc + services: + db-authsvc: + image: postgres:18 + env: + POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD}} + POSTGRES_USER: ${{ secrets.POSTGRES_PASSWORD}} + POSTGRES_DB: ${{ secrets.POSTGRES_DB}} + options: >- + --health-cmd pg_isready + --health-interval 4s + --health-timeout 2s + --health-retries 2 + steps: + - name: Check out repository code + uses: actions/checkout@v6 + + + - name: Install Deps + run: bun install --frozen-lockfile + + - name: Migrate DataBase + run: bun run drizzlekit-dev migrate + env: + DOTENV_PRIVATE_KEY_DEVELOPMENT: ${{ secrets.DOTENV_PRIVATE_KEY_DEVELOPMENT }} + - name: Run Tests + run: bun run test + env: + DOTENV_PRIVATE_KEY_DEVELOPMENT: ${{ secrets.DOTENV_PRIVATE_KEY_DEVELOPMENT }} + + + \ No newline at end of file From ec413660ccd2890b4fec1e60f3b6874fcae57415 Mon Sep 17 00:00:00 2001 From: Usman Ghani Date: Mon, 24 Aug 2026 11:31:54 +0500 Subject: [PATCH 4/5] fix authsvc test action with container job --- .github/workflows/test-authsvc-container-jobs.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-authsvc-container-jobs.yaml b/.github/workflows/test-authsvc-container-jobs.yaml index 9057591..88d30c8 100644 --- a/.github/workflows/test-authsvc-container-jobs.yaml +++ b/.github/workflows/test-authsvc-container-jobs.yaml @@ -21,7 +21,7 @@ jobs: image: postgres:18 env: POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD}} - POSTGRES_USER: ${{ secrets.POSTGRES_PASSWORD}} + POSTGRES_USER: ${{ secrets.POSTGRES_USER}} POSTGRES_DB: ${{ secrets.POSTGRES_DB}} options: >- --health-cmd pg_isready From 453b837c1c4f9faf5de4c96c7b1300d05802bdd4 Mon Sep 17 00:00:00 2001 From: Usman Ghani Date: Mon, 24 Aug 2026 11:35:11 +0500 Subject: [PATCH 5/5] move push-action and host-jobs action to archive --- .../test-authsvc-docker-push-action.yaml | 0 .../{workflows => archive-workflows}/test-authsvc-host-jobs.yaml | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .github/{workflows => archive-workflows}/test-authsvc-docker-push-action.yaml (100%) rename .github/{workflows => archive-workflows}/test-authsvc-host-jobs.yaml (100%) diff --git a/.github/workflows/test-authsvc-docker-push-action.yaml b/.github/archive-workflows/test-authsvc-docker-push-action.yaml similarity index 100% rename from .github/workflows/test-authsvc-docker-push-action.yaml rename to .github/archive-workflows/test-authsvc-docker-push-action.yaml diff --git a/.github/workflows/test-authsvc-host-jobs.yaml b/.github/archive-workflows/test-authsvc-host-jobs.yaml similarity index 100% rename from .github/workflows/test-authsvc-host-jobs.yaml rename to .github/archive-workflows/test-authsvc-host-jobs.yaml