From 63b58592713fe24574c21cda204dfdf1440cd19d Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 22 May 2024 11:03:07 -0700 Subject: [PATCH 01/39] Create backup.yaml --- .github/workflows/backup.yaml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/backup.yaml diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml new file mode 100644 index 00000000..987c5649 --- /dev/null +++ b/.github/workflows/backup.yaml @@ -0,0 +1,33 @@ +name: Backup + +on: + workflow_dispatch: +env: + IMAGE_NAME: backup + WORKING_DIRECTORY: ./ +jobs: + build: + runs-on: ubuntu-latest + + steps: + + - name: Login to Artifactory + uses: docker/login-action@v1 + with: + registry: artifacts.developer.gov.bc.ca + username: ${{ secrets.CAS_ARTIFACTORY_USERNAME }} + password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} + + - name: Checkout Schema Spy Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: BCDevOps/backup-container.git + ref: master + + - name: Docker Build Backup Image + run: | + cd docker + docker build --tag ${{ env.IMAGE_NAME }} . + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} From 60b1a1868c26ac20954cbc5216e00065b8915379 Mon Sep 17 00:00:00 2001 From: "Taylor, Jonathan" Date: Wed, 22 May 2024 11:10:55 -0700 Subject: [PATCH 02/39] Add backup.yaml --- .github/workflows/backup.yaml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/backup.yaml diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml new file mode 100644 index 00000000..72faa257 --- /dev/null +++ b/.github/workflows/backup.yaml @@ -0,0 +1,33 @@ +name: Backup + +on: + workflow_dispatch: +env: + IMAGE_NAME: backup + WORKING_DIRECTORY: ./ +jobs: + build: + runs-on: ubuntu-latest + + steps: + + - name: Login to Artifactory + uses: docker/login-action@v1 + with: + registry: artifacts.developer.gov.bc.ca + username: ${{ secrets.CAS_ARTIFACTORY_USERNAME }} + password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} + + - name: Checkout Schema Spy Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: BCDevOps/backup-container.git + ref: master + + - name: Docker Build Backup Image + run: | + cd docker + docker build --tag ${{ env.IMAGE_NAME }} . + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} \ No newline at end of file From 8f9b761adad0dc3ddd99a60d53b930128e941a29 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 22 May 2024 11:26:45 -0700 Subject: [PATCH 03/39] Create schema-spy.yaml --- .github/workflows/schema-spy.yaml | 32 +++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/schema-spy.yaml diff --git a/.github/workflows/schema-spy.yaml b/.github/workflows/schema-spy.yaml new file mode 100644 index 00000000..d81de524 --- /dev/null +++ b/.github/workflows/schema-spy.yaml @@ -0,0 +1,32 @@ +name: Schema-Spy + +on: + workflow_dispatch: +env: + IMAGE_NAME: schema-spy + WORKING_DIRECTORY: ./ +jobs: + build: + runs-on: ubuntu-latest + + steps: + + - name: Login to Artifactory + uses: docker/login-action@v1 + with: + registry: artifacts.developer.gov.bc.ca + username: ${{ secrets.CAS_ARTIFACTORY_USERNAME }} + password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} + + - name: Checkout Schema Spy Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov/SchemaSpy.git + ref: master + + - name: Docker Build Schema Spy Image + run: | + docker build --tag ${{ env.IMAGE_NAME }} . + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} From fc91340570ca2a4f6808289bf95335b6dbf9e2e8 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 11:20:22 -0700 Subject: [PATCH 04/39] Update api-buildandpush.yaml --- .github/workflows/api-buildandpush.yaml | 74 +++++++++++++------------ 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/.github/workflows/api-buildandpush.yaml b/.github/workflows/api-buildandpush.yaml index b7f6050f..3b26c140 100644 --- a/.github/workflows/api-buildandpush.yaml +++ b/.github/workflows/api-buildandpush.yaml @@ -1,24 +1,20 @@ -name: Build & Push API Image to Artifactory +name: API on: - push: - branches: [main] - paths: - - "api" - - ".github/workflows/api-buildandpush.yaml" workflow_dispatch: env: IMAGE_NAME: cas-api WORKING_DIRECTORY: ./ jobs: - builds: + build: runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 + steps: + + - name: Checkout Repo + uses: actions/checkout@v4 - name: Login to Artifactory - # if: github.repository_owner == 'bcgov-c' uses: docker/login-action@v1 with: registry: artifacts.developer.gov.bc.ca @@ -31,34 +27,42 @@ jobs: run: | echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" echo "Short SHA: $SHORT_SHA" + + - name: Docker Build Image + run: | + docker build --tag ${{ env.IMAGE_NAME }} -f api/Dockerfile . + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - # - name: Install dependencies - # run: dotnet restore - # working-directory: ${{env.WORKING_DIRECTORY}} + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops - # - name: Build - # run: dotnet build --configuration Release --no-restore - # working-directory: ${{env.WORKING_DIRECTORY}} + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts - # - name: Test - # run: dotnet test --no-restore --verbosity normal - # working-directory: ${{env.WORKING_DIRECTORY}} + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time - # - name: Push to Artifactory - # id: publish - # run: dotnet push artifacts.developer.gov.bc.ca/cac1-cas-api/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml - - name: Docker Build Backend Image - working-directory: ${{env.WORKING_DIRECTORY}} - run: | - docker build --tag api . --file api/Dockerfile - docker tag api artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - # docker compose build backend - # docker tag cas-api artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" cas-api/values.yaml - - name: Docker Push to Artifactory - id: publish - # if: github.repository_owner == 'bcgov-c' - run: | - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml + From 8e66ae9839c640ffb3a960f71713429bebb7f857 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 12:12:30 -0700 Subject: [PATCH 05/39] Update api-buildandpush.yaml --- .github/workflows/api-buildandpush.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/api-buildandpush.yaml b/.github/workflows/api-buildandpush.yaml index 3b26c140..48da5706 100644 --- a/.github/workflows/api-buildandpush.yaml +++ b/.github/workflows/api-buildandpush.yaml @@ -29,9 +29,10 @@ jobs: echo "Short SHA: $SHORT_SHA" - name: Docker Build Image + working-directory: ${{env.WORKING_DIRECTORY}} run: | - docker build --tag ${{ env.IMAGE_NAME }} -f api/Dockerfile . - docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker build --tag api . -f api/Dockerfile + docker tag api artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Checkout ArgoCD Repo From 01039c00766ca1aa0a350a182b920a2a55bb3d6d Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 12:26:04 -0700 Subject: [PATCH 06/39] Update api-buildandpush.yaml --- .github/workflows/api-buildandpush.yaml | 31 ++++++++++++++++--------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/.github/workflows/api-buildandpush.yaml b/.github/workflows/api-buildandpush.yaml index 48da5706..091ff0e0 100644 --- a/.github/workflows/api-buildandpush.yaml +++ b/.github/workflows/api-buildandpush.yaml @@ -1,20 +1,24 @@ -name: API +name: Build & Push API Image to Artifactory on: + push: + branches: [main] + paths: + - "api" + - ".github/workflows/api-buildandpush.yaml" workflow_dispatch: env: IMAGE_NAME: cas-api WORKING_DIRECTORY: ./ jobs: - build: + builds: runs-on: ubuntu-latest - steps: - - - name: Checkout Repo - uses: actions/checkout@v4 + steps: + - uses: actions/checkout@v2 - name: Login to Artifactory + # if: github.repository_owner == 'bcgov-c' uses: docker/login-action@v1 with: registry: artifacts.developer.gov.bc.ca @@ -27,14 +31,19 @@ jobs: run: | echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" echo "Short SHA: $SHORT_SHA" - - - name: Docker Build Image + + - name: Docker Build Backend Image working-directory: ${{env.WORKING_DIRECTORY}} - run: | - docker build --tag api . -f api/Dockerfile + run: | + docker build --tag api . --file api/Dockerfile docker tag api artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + + - name: Docker Push to Artifactory + id: publish + # if: github.repository_owner == 'bcgov-c' + run: | docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - + - name: Checkout ArgoCD Repo id: gitops uses: actions/checkout@v4 From 7f9a7bf4870a776f1a0a482ae876c967881c4b38 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 12:35:44 -0700 Subject: [PATCH 07/39] Update api-buildandpush.yaml --- .github/workflows/api-buildandpush.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/api-buildandpush.yaml b/.github/workflows/api-buildandpush.yaml index 091ff0e0..0687e312 100644 --- a/.github/workflows/api-buildandpush.yaml +++ b/.github/workflows/api-buildandpush.yaml @@ -66,7 +66,7 @@ jobs: sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml - sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" cas-api/values.yaml + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" api/values.yaml # Commit and push the changes git config --global user.email "actions@github.com" From 9250afeab7d590f0997756b09fc8972687f35319 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 13:35:12 -0700 Subject: [PATCH 08/39] Update web-buildandpush.yaml --- .github/workflows/web-buildandpush.yaml | 71 +++++++++++++++---------- 1 file changed, 42 insertions(+), 29 deletions(-) diff --git a/.github/workflows/web-buildandpush.yaml b/.github/workflows/web-buildandpush.yaml index df16ecf7..2fc5176b 100644 --- a/.github/workflows/web-buildandpush.yaml +++ b/.github/workflows/web-buildandpush.yaml @@ -31,39 +31,52 @@ jobs: - run: npm run build --if-present working-directory: ${{env.working-directory}} - # # Get SHORT_SHA to tag images - # - name: Get short SHA - # id: short_sha - # run: | - # echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" - # echo "Short SHA: $SHORT_SHA" - - # - name: Install dependencies - # run: dotnet restore - # working-directory: ${{env.WORKING_DIRECTORY}} - - # - name: Build - # run: dotnet build --configuration Release --no-restore - # working-directory: ${{env.WORKING_DIRECTORY}} - - # - name: Test - # run: dotnet test --no-restore --verbosity normal - # working-directory: ${{env.WORKING_DIRECTORY}} - - # - name: Push to Artifactory - # id: publish - # run: dotnet push artifacts.developer.gov.bc.ca/cac1-cas-api/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + # Get SHORT_SHA to tag images + - name: Get short SHA + id: short_sha + run: | + echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" + echo "Short SHA: $SHORT_SHA" - # - name: Docker Build Backend Image - # working-directory: ${{env.WORKING_DIRECTORY}}web/ - # run: | - # docker build --tag web . - # docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - # # docker compose build backend - # # docker tag cas-web artifacts.developer.gov.bc.ca/cac1-cas-web/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + - name: Docker Build Web Image + working-directory: ${{env.WORKING_DIRECTORY}}web/ + run: | + docker build --tag web . --file web/Dockerfile + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Docker Push to Artifactory id: publish run: | docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops + + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts + + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" web/values.yaml + + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml From b3f504a6bea0a1b441ee8f7ab2eb20b8a2c51cf7 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 13:39:47 -0700 Subject: [PATCH 09/39] Update app-vue.yml --- .github/workflows/app-vue.yml | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/.github/workflows/app-vue.yml b/.github/workflows/app-vue.yml index 3313c862..8a664f53 100644 --- a/.github/workflows/app-vue.yml +++ b/.github/workflows/app-vue.yml @@ -57,4 +57,34 @@ jobs: run: | docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops + + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts + + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" web/values.yaml + + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml From de54b0e69005511301df2ec43b79794e46862330 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 13:48:18 -0700 Subject: [PATCH 10/39] Update app-vue.yml --- .github/workflows/app-vue.yml | 49 ++++++++++++++++++++++------------- 1 file changed, 31 insertions(+), 18 deletions(-) diff --git a/.github/workflows/app-vue.yml b/.github/workflows/app-vue.yml index 8a664f53..f055c8ba 100644 --- a/.github/workflows/app-vue.yml +++ b/.github/workflows/app-vue.yml @@ -22,15 +22,15 @@ jobs: node-version: [10.x] steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - run: npm ci - working-directory: ${{env.working-directory}} - - run: npm run build --if-present --tag web - working-directory: ${{env.working-directory}} + # - uses: actions/checkout@v2 + # - name: Use Node.js ${{ matrix.node-version }} + # uses: actions/setup-node@v1 + # with: + # node-version: ${{ matrix.node-version }} + # - run: npm ci + # working-directory: ${{env.working-directory}} + # - run: npm run build --if-present --tag web + # working-directory: ${{env.working-directory}} - name: Login to Artifactory uses: docker/login-action@v1 @@ -39,6 +39,9 @@ jobs: username: ${{ secrets.CAS_ARTIFACTORY_USERNAME }} password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} + - name: Checkout Repo + uses: actions/checkout@v4 + # Get SHORT_SHA to tag images - name: Get short SHA id: short_sha @@ -46,16 +49,26 @@ jobs: echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" echo "Short SHA: $SHORT_SHA" - - name: Docker Build Backend Image - working-directory: ${{env.working-directory}} - run: | - docker build --tag web . --file Dockerfile - docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + # - name: Docker Build Backend Image + # working-directory: ${{env.working-directory}} + # run: | + # docker build --tag web . --file Dockerfile + # docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - - name: Docker Push to Artifactory - id: publish - run: | - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + # - name: Docker Push to Artifactory + # id: publish + # run: | + # docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + + - name: Docker Build Image + run: | + docker build --tag nginx-runtime -f docker/nginx-runtime/Dockerfile ./docker/nginx-runtime/ + cd web + docker build --tag ss-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} + cd .. + docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} - name: Checkout ArgoCD Repo id: gitops From 181e1ebdb501f144c56e9399c01cdbe345c870ac Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 13:51:00 -0700 Subject: [PATCH 11/39] Create Dockerfile.node --- web/Dockerfile.node | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 web/Dockerfile.node diff --git a/web/Dockerfile.node b/web/Dockerfile.node new file mode 100644 index 00000000..c1bb00d5 --- /dev/null +++ b/web/Dockerfile.node @@ -0,0 +1,7 @@ +ARG WEB_BASE_HREF +FROM centos/nodejs-10-centos7:10 +ENV WEB_BASE_HREF="$WEB_BASE_HREF/court-admin-scheduling" +WORKDIR /opt/app-root/src +COPY . . +RUN npm install +RUN npm run build From 9923874fdfe75ce369477f7158f1aed025d28171 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 14:05:00 -0700 Subject: [PATCH 12/39] Update app-vue.yml --- .github/workflows/app-vue.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/app-vue.yml b/.github/workflows/app-vue.yml index f055c8ba..8fad43c9 100644 --- a/.github/workflows/app-vue.yml +++ b/.github/workflows/app-vue.yml @@ -67,8 +67,8 @@ jobs: docker build --tag ss-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} cd .. docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ - docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Checkout ArgoCD Repo id: gitops From ccb54ccf91f81b2c9683eaf41edc1eb9ffbaccf1 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 14:28:46 -0700 Subject: [PATCH 13/39] Update backup.yaml --- .github/workflows/backup.yaml | 40 ++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml index 987c5649..b32f034e 100644 --- a/.github/workflows/backup.yaml +++ b/.github/workflows/backup.yaml @@ -19,15 +19,53 @@ jobs: password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} - name: Checkout Schema Spy Repo - id: gitops uses: actions/checkout@v4 with: repository: BCDevOps/backup-container.git ref: master + # Get SHORT_SHA to tag images + - name: Get short SHA + id: short_sha + run: | + echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" + echo "Short SHA: $SHORT_SHA" + - name: Docker Build Backup Image run: | cd docker docker build --tag ${{ env.IMAGE_NAME }} . docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops + + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts + + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" backup/values.yaml + + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml From 7631160aa29ca1c73af87c21e4b7d9d015a3d0e6 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 28 May 2024 14:30:00 -0700 Subject: [PATCH 14/39] Update backup.yaml --- .github/workflows/backup.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml index b32f034e..e7cc604f 100644 --- a/.github/workflows/backup.yaml +++ b/.github/workflows/backup.yaml @@ -35,8 +35,8 @@ jobs: run: | cd docker docker build --tag ${{ env.IMAGE_NAME }} . - docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Checkout ArgoCD Repo id: gitops From c978b4a0f2fe563135585b60d3528c1332bb5c09 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 09:15:25 -0700 Subject: [PATCH 15/39] Update schema-spy.yaml --- .github/workflows/schema-spy.yaml | 44 ++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/.github/workflows/schema-spy.yaml b/.github/workflows/schema-spy.yaml index d81de524..5e56bfa7 100644 --- a/.github/workflows/schema-spy.yaml +++ b/.github/workflows/schema-spy.yaml @@ -19,14 +19,52 @@ jobs: password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} - name: Checkout Schema Spy Repo - id: gitops uses: actions/checkout@v4 with: repository: bcgov/SchemaSpy.git ref: master + # Get SHORT_SHA to tag images + - name: Get short SHA + id: short_sha + run: | + echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" + echo "Short SHA: $SHORT_SHA" + - name: Docker Build Schema Spy Image run: | docker build --tag ${{ env.IMAGE_NAME }} . - docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops + + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts + + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" schema-spy/values.yaml + + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml From f427007014de176a1758c3551d9095e580d6d9f3 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 13:27:52 -0700 Subject: [PATCH 16/39] Create web.yaml --- .github/workflows/web.yaml | 63 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/web.yaml diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml new file mode 100644 index 00000000..d03076e6 --- /dev/null +++ b/.github/workflows/web.yaml @@ -0,0 +1,63 @@ +name: Web + +on: + workflow_dispatch: +env: + IMAGE_NAME: web + WORKING_DIRECTORY: ./ +jobs: + builds: + runs-on: ubuntu-latest + + steps: + - name: Login to Artifactory + uses: docker/login-action@v1 + with: + registry: artifacts.developer.gov.bc.ca + username: ${{ secrets.CAS_ARTIFACTORY_USERNAME }} + password: ${{ secrets.CAS_ARTIFACTORY_PASSWORD }} + + - name: Checkout Repo + uses: actions/checkout@v4 + + - name: Docker Build Image + run: | + docker build --tag nginx-runtime -f docker/nginx-runtime/Dockerfile ./docker/nginx-runtime/ + cd web + docker build --tag ss-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} + cd .. + docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + + - name: Checkout ArgoCD Repo + id: gitops + uses: actions/checkout@v4 + with: + repository: bcgov-c/tenant-gitops-ac1cc8 + ref: develop + token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT + path: gitops + + - name: Update Helm Values and Commit + id: helm + if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful + run: | + # Clone the GitOps deployment configuration repository + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + cd gitops/charts + + # Update the Helm values file with the new image tag and version + DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + + sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" web/values.yaml + + # Commit and push the changes + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + + git add . + + git add ../deploy/dev_values.yaml From b62a8c02e1a042a30336d3ce905bc4e8a9a444b5 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 13:35:54 -0700 Subject: [PATCH 17/39] Update web.yaml --- .github/workflows/web.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index d03076e6..f924bc6b 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -24,11 +24,11 @@ jobs: run: | docker build --tag nginx-runtime -f docker/nginx-runtime/Dockerfile ./docker/nginx-runtime/ cd web - docker build --tag ss-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} + docker build --tag cas-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} cd .. docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ - docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:latest - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }} + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Checkout ArgoCD Repo id: gitops From 7578f83f8ae6afd2d2cdc4eb644df25a8e2185ce Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 13:43:52 -0700 Subject: [PATCH 18/39] Update web.yaml --- .github/workflows/web.yaml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index f924bc6b..12ed03e6 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -20,16 +20,6 @@ jobs: - name: Checkout Repo uses: actions/checkout@v4 - - name: Docker Build Image - run: | - docker build --tag nginx-runtime -f docker/nginx-runtime/Dockerfile ./docker/nginx-runtime/ - cd web - docker build --tag cas-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} - cd .. - docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ - docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - - name: Checkout ArgoCD Repo id: gitops uses: actions/checkout@v4 @@ -39,6 +29,16 @@ jobs: token: ${{ secrets.GIT_OPS_SSH_KEY }} # `GH_PAT` is a secret that contains your PAT path: gitops + - name: Docker Build Image + run: | + docker build --tag nginx-runtime -f docker/nginx-runtime/Dockerfile ./docker/nginx-runtime/ + cd web + docker build --tag cas-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} + cd .. + docker build --tag cas-web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ + docker tag cas-web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + - name: Update Helm Values and Commit id: helm if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful From 862ff4972acedd56d727a013c2a4b87dffd39197 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 13:50:11 -0700 Subject: [PATCH 19/39] Update web.yaml --- .github/workflows/web.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index 12ed03e6..8efd2969 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -3,7 +3,7 @@ name: Web on: workflow_dispatch: env: - IMAGE_NAME: web + IMAGE_NAME: cas-web WORKING_DIRECTORY: ./ jobs: builds: @@ -35,8 +35,8 @@ jobs: cd web docker build --tag cas-web-artifacts -f Dockerfile.node . --build-arg WEB_BASE_HREF=${{ secrets.WEB_BASE_HREF }} cd .. - docker build --tag cas-web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ - docker tag cas-web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} + docker build --tag web -f docker/vue-on-nginx/Dockerfile ./docker/vue-on-nginx/ + docker tag web artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} - name: Update Helm Values and Commit From 15c5573d471251078d8f4c10af9175140432bb69 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 29 May 2024 13:54:12 -0700 Subject: [PATCH 20/39] Update web.yaml --- .github/workflows/web.yaml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index 8efd2969..cd274211 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -19,7 +19,14 @@ jobs: - name: Checkout Repo uses: actions/checkout@v4 - + + # Get SHORT_SHA to tag images + - name: Get short SHA + id: short_sha + run: | + echo "::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)" + echo "Short SHA: $SHORT_SHA" + - name: Checkout ArgoCD Repo id: gitops uses: actions/checkout@v4 From 24a375047c6cdcd75daf8282d46e4c4f9817f7c5 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 21 Jun 2024 12:55:03 -0700 Subject: [PATCH 21/39] Update Dockerfile.node --- web/Dockerfile.node | 2 ++ 1 file changed, 2 insertions(+) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index c1bb00d5..d5cd981b 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -5,3 +5,5 @@ WORKDIR /opt/app-root/src COPY . . RUN npm install RUN npm run build + +EXPOSE 8080 From 336b26ac38f6ccf5407375a3c49623fcbe928b40 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 21 Jun 2024 13:22:24 -0700 Subject: [PATCH 22/39] Update Dockerfile.node --- web/Dockerfile.node | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index d5cd981b..30a7af0c 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -1,9 +1,12 @@ ARG WEB_BASE_HREF -FROM centos/nodejs-10-centos7:10 +FROM centos/nodejs-10-centos7:10 as build-stage ENV WEB_BASE_HREF="$WEB_BASE_HREF/court-admin-scheduling" WORKDIR /opt/app-root/src COPY . . RUN npm install RUN npm run build +FROM nginx-runtime:latest as prod-stage +COPY --from=build-stage /app/dist /usr/share/nginx/html EXPOSE 8080 +CMD ["nginx", "-g", "daemon off;"] From 9bd961a401f65f4978eb43b0e6a53b832c01c54e Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 21 Jun 2024 13:48:32 -0700 Subject: [PATCH 23/39] Update Dockerfile.node --- web/Dockerfile.node | 1 - 1 file changed, 1 deletion(-) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index 30a7af0c..58b129cf 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -7,6 +7,5 @@ RUN npm install RUN npm run build FROM nginx-runtime:latest as prod-stage -COPY --from=build-stage /app/dist /usr/share/nginx/html EXPOSE 8080 CMD ["nginx", "-g", "daemon off;"] From 340fd54f792b7e2e601427678d6160e86aca6cfa Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:07:25 -0700 Subject: [PATCH 24/39] Update Dockerfile.node --- web/Dockerfile.node | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index 58b129cf..3db90439 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -1,5 +1,5 @@ ARG WEB_BASE_HREF -FROM centos/nodejs-10-centos7:10 as build-stage +FROM centos/nodejs-10-centos7:10 ENV WEB_BASE_HREF="$WEB_BASE_HREF/court-admin-scheduling" WORKDIR /opt/app-root/src COPY . . From fd19851787b7ef86932ed113a008f14de9e8081c Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:12:34 -0700 Subject: [PATCH 25/39] Update Dockerfile.node --- web/Dockerfile.node | 4 ---- 1 file changed, 4 deletions(-) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index 3db90439..c1bb00d5 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -5,7 +5,3 @@ WORKDIR /opt/app-root/src COPY . . RUN npm install RUN npm run build - -FROM nginx-runtime:latest as prod-stage -EXPOSE 8080 -CMD ["nginx", "-g", "daemon off;"] From 71b7830b2c5b39e0b7d5ca54579045e816210a3c Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 3 Jul 2024 15:22:46 -0700 Subject: [PATCH 26/39] Update web.yaml --- .github/workflows/web.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index cd274211..9d6a5c65 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -68,3 +68,5 @@ jobs: git add . git add ../deploy/dev_values.yaml + git commit -m "Update Dev Web image tag" + git push origin develop # Update the branch name as needed From d235dbe0ea799312e0c6e5064d2d3e1aba4efdf8 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Wed, 3 Jul 2024 15:23:48 -0700 Subject: [PATCH 27/39] Update api-buildandpush.yaml --- .github/workflows/api-buildandpush.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/api-buildandpush.yaml b/.github/workflows/api-buildandpush.yaml index 0687e312..b479868a 100644 --- a/.github/workflows/api-buildandpush.yaml +++ b/.github/workflows/api-buildandpush.yaml @@ -75,4 +75,5 @@ jobs: git add . git add ../deploy/dev_values.yaml - + git commit -m "Update Dev Api image tag" + git push origin develop # Update the branch name as needed From bd5beffc3b9cb61fa8eb7d906074f4e15398e833 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 5 Jul 2024 09:32:20 -0700 Subject: [PATCH 28/39] Update Dockerfile.node --- web/Dockerfile.node | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/web/Dockerfile.node b/web/Dockerfile.node index c1bb00d5..3390f3b1 100644 --- a/web/Dockerfile.node +++ b/web/Dockerfile.node @@ -1,7 +1,10 @@ -ARG WEB_BASE_HREF FROM centos/nodejs-10-centos7:10 -ENV WEB_BASE_HREF="$WEB_BASE_HREF/court-admin-scheduling" +ARG WEB_BASE_HREF +ENV WEB_BASE_HREF="$WEB_BASE_HREF" +ENV WEB1_BASE_HREF="$WEB_BASE_HREF" WORKDIR /opt/app-root/src COPY . . +RUN echo "$WEB1_BASE_HREF" +RUN echo "$WEB_BASE_HREF" RUN npm install RUN npm run build From 3222ed60f1745b3253b10cb2128129a0572a11ed Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 5 Jul 2024 09:34:49 -0700 Subject: [PATCH 29/39] Update Dockerfile --- api/Dockerfile | 30 ++++++------------------------ 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/api/Dockerfile b/api/Dockerfile index 3c596917..b36f83fd 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -9,38 +9,20 @@ ENV VERSION=$VERSION FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build -# install diagnostics tools -RUN dotnet tool install --tool-path /tools dotnet-trace -RUN dotnet tool install --tool-path /tools dotnet-counters -RUN dotnet tool install --tool-path /tools dotnet-dump - -WORKDIR / +WORKDIR /src COPY ["api/api.csproj", "api/"] COPY ["db/db.csproj", "db/"] -COPY ["jc-interface-client/jc-interface-client.csproj", "jc-interface-client/"] - -RUN dotnet restore ./api/api.csproj -#RUN dotnet restore ./db/db.csproj +RUN dotnet restore api/api.csproj +RUN dotnet restore db/db.csproj COPY . . - -# Install Node.js and npm -RUN apt-get update -RUN apt-get install -y nodejs npm -RUN npm install -g autorest - -# run unit tests -#RUN dotnet test -c Release - +RUN dotnet build "api/api.csproj" -c Release # build FROM build AS publish -RUN dotnet publish "api/api.csproj" -c Release -o /app/publish -# --runtime linux-musl-x64 --no-self-contained +RUN dotnet publish "api/api.csproj" -c Release -o /app/publish --runtime linux-musl-x64 --no-self-contained FROM base AS final -# copy diagnostics tools -WORKDIR /tools -COPY --from=build /tools . + # copy app WORKDIR /app COPY --from=publish /app/publish . From 11cb7008c7728addf35cd5489029cf5ee2453be2 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 5 Jul 2024 09:49:41 -0700 Subject: [PATCH 30/39] Update web.yaml --- .github/workflows/web.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/web.yaml b/.github/workflows/web.yaml index 9d6a5c65..0ff35da3 100644 --- a/.github/workflows/web.yaml +++ b/.github/workflows/web.yaml @@ -57,9 +57,9 @@ jobs: # Update the Helm values file with the new image tag and version DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time - sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + sed -i "s/webtag: .*/webtag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml - sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" web/values.yaml + sed -i "s/webtag: .*/webtag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" web/values.yaml # Commit and push the changes git config --global user.email "actions@github.com" From 28cfad824be7d7808e8b679b00417f3439589ca4 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 5 Jul 2024 12:24:49 -0700 Subject: [PATCH 31/39] Update XForwardedForHelper.cs To address forwarding port issue --- api/helpers/XForwardedForHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/helpers/XForwardedForHelper.cs b/api/helpers/XForwardedForHelper.cs index 688142df..cbd29ceb 100644 --- a/api/helpers/XForwardedForHelper.cs +++ b/api/helpers/XForwardedForHelper.cs @@ -4,7 +4,7 @@ public static class XForwardedForHelper { public static string BuildUrlString(string forwardedHost, string forwardedPort, string baseUrl) { - var portComponent = string.IsNullOrEmpty(forwardedPort) || forwardedPort == "80" || forwardedPort == "443" ? "" : $":{forwardedPort}"; + var portComponent = string.IsNullOrEmpty(forwardedPort) || forwardedPort == "80" || forwardedPort == "443" || forwardedPort == "8080" ? "" : $":{forwardedPort}"; return $"https://{forwardedHost}{portComponent}{baseUrl}"; } } From 1e57df3ecff9963decd9fa126fab0b8d8f2803b0 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Thu, 11 Jul 2024 11:19:06 -0700 Subject: [PATCH 32/39] Update Dockerfile --- api/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/api/Dockerfile b/api/Dockerfile index b36f83fd..f32252c9 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -26,4 +26,5 @@ FROM base AS final # copy app WORKDIR /app COPY --from=publish /app/publish . +COPY --from=build /src/db/sql /src/db/sql ENTRYPOINT ["dotnet", "api.dll"] From de8234cb2010aa51ffb654fcd537af0fc74619b2 Mon Sep 17 00:00:00 2001 From: "Taylor, Jonathan" Date: Fri, 12 Jul 2024 14:33:33 -0700 Subject: [PATCH 33/39] update XForwardedForHelper for forwardport 8080 --- api/helpers/XForwardedForHelper.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/helpers/XForwardedForHelper.cs b/api/helpers/XForwardedForHelper.cs index cbd29ceb..2386d37b 100644 --- a/api/helpers/XForwardedForHelper.cs +++ b/api/helpers/XForwardedForHelper.cs @@ -1,4 +1,4 @@ -namespace CAS.API.helpers +namespace SS.Api.helpers { public static class XForwardedForHelper { @@ -8,4 +8,4 @@ public static string BuildUrlString(string forwardedHost, string forwardedPort, return $"https://{forwardedHost}{portComponent}{baseUrl}"; } } -} +} \ No newline at end of file From fddb8e719b90be24afe61ba329102286a6188d67 Mon Sep 17 00:00:00 2001 From: Wade Barnes Date: Fri, 12 Jul 2024 14:46:09 -0700 Subject: [PATCH 34/39] Enable Npgsql.EnableLegacyTimestampBehavior Signed-off-by: Wade Barnes --- api/Startup.cs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/api/Startup.cs b/api/Startup.cs index c293b4fc..cbd58ff3 100644 --- a/api/Startup.cs +++ b/api/Startup.cs @@ -42,6 +42,8 @@ public Startup(IWebHostEnvironment env, IConfiguration configuration) CurrentEnvironment = env; DevelopmentMode = CurrentEnvironment.IsDevelopment() && Configuration.GetNonEmptyValue("ByPassAuthAndUseImpersonatedUser").Equals("true"); + + AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true); } private IConfiguration Configuration { get; } @@ -50,7 +52,7 @@ public void ConfigureServices(IServiceCollection services) { //for debugging purposes //IdentityModelEventSource.ShowPII = true; - + services.AddLogging(options => { options.AddConsole(c => @@ -143,10 +145,10 @@ public void ConfigureServices(IServiceCollection services) }); services.AddSwaggerGenNewtonsoftSupport(); - - services.AddQuartz(q => - { - q.AddJobAndTrigger(Configuration); + + services.AddQuartz(q => + { + q.AddJobAndTrigger(Configuration); }); services.AddQuartzHostedService(q => q.WaitForJobsToComplete = true); } @@ -206,7 +208,7 @@ public void Configure(IApplicationBuilder app, IWebHostEnvironment env) app.UseEndpoints(endpoints => { - //Note this will allow access everywhere for local development. + //Note this will allow access everywhere for local development. if (DevelopmentMode) endpoints.MapControllers().WithMetadata(new AllowAnonymousAttribute()); else @@ -214,4 +216,4 @@ public void Configure(IApplicationBuilder app, IWebHostEnvironment env) }); } } -} \ No newline at end of file +} From d4f9263f0b053d571a909f8eded21515ec643e6e Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 12 Jul 2024 15:03:33 -0700 Subject: [PATCH 35/39] Update XForwardedForHelper.cs --- api/helpers/XForwardedForHelper.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/helpers/XForwardedForHelper.cs b/api/helpers/XForwardedForHelper.cs index 2386d37b..091ee1bf 100644 --- a/api/helpers/XForwardedForHelper.cs +++ b/api/helpers/XForwardedForHelper.cs @@ -1,4 +1,4 @@ -namespace SS.Api.helpers +namespace CAS.Api.helpers { public static class XForwardedForHelper { @@ -8,4 +8,4 @@ public static string BuildUrlString(string forwardedHost, string forwardedPort, return $"https://{forwardedHost}{portComponent}{baseUrl}"; } } -} \ No newline at end of file +} From cdeec5d7391debb51f818d2fb3dd30de6c9073aa Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Fri, 12 Jul 2024 15:07:08 -0700 Subject: [PATCH 36/39] Update XForwardedForHelper.cs --- api/helpers/XForwardedForHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/helpers/XForwardedForHelper.cs b/api/helpers/XForwardedForHelper.cs index 091ee1bf..cbd29ceb 100644 --- a/api/helpers/XForwardedForHelper.cs +++ b/api/helpers/XForwardedForHelper.cs @@ -1,4 +1,4 @@ -namespace CAS.Api.helpers +namespace CAS.API.helpers { public static class XForwardedForHelper { From 3d87333f158d86830992a80869c704ce21ebf23f Mon Sep 17 00:00:00 2001 From: Wade Barnes Date: Tue, 16 Jul 2024 14:42:16 -0700 Subject: [PATCH 37/39] Set backup container version to 2.6.1 - This version can verify without errors. Signed-off-by: Wade Barnes --- .github/workflows/backup.yaml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml index e7cc604f..005d58da 100644 --- a/.github/workflows/backup.yaml +++ b/.github/workflows/backup.yaml @@ -9,7 +9,7 @@ jobs: build: runs-on: ubuntu-latest - steps: + steps: - name: Login to Artifactory uses: docker/login-action@v1 @@ -22,7 +22,7 @@ jobs: uses: actions/checkout@v4 with: repository: BCDevOps/backup-container.git - ref: master + ref: '2.6.1' # Get SHORT_SHA to tag images - name: Get short SHA @@ -34,7 +34,7 @@ jobs: - name: Docker Build Backup Image run: | cd docker - docker build --tag ${{ env.IMAGE_NAME }} . + docker build --tag ${{ env.IMAGE_NAME }} . docker tag ${{ env.IMAGE_NAME }} artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} docker push artifacts.developer.gov.bc.ca/cac1-cas/${{ env.IMAGE_NAME }}:dev-${{ steps.short_sha.outputs.SHORT_SHA }} @@ -52,7 +52,7 @@ jobs: if: steps.gitops.outcome == 'success' # Only run if the previous step (publish) was successful run: | # Clone the GitOps deployment configuration repository - # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and + # Navigate to the directory containing your Helm values file for the environment develop -> DEV, test -> test and cd gitops/charts # Update the Helm values file with the new image tag and version @@ -61,11 +61,11 @@ jobs: sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" backup/values.yaml - + # Commit and push the changes git config --global user.email "actions@github.com" git config --global user.name "GitHub Actions" - + git add . - + git add ../deploy/dev_values.yaml From 9b2b7c9a7a21b18022b470cba88a7da5f9db6e66 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 16 Jul 2024 15:25:22 -0700 Subject: [PATCH 38/39] Update app-vue.yml Remove auto-execute since this is no longer used --- .github/workflows/app-vue.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/app-vue.yml b/.github/workflows/app-vue.yml index 8fad43c9..8f83e28c 100644 --- a/.github/workflows/app-vue.yml +++ b/.github/workflows/app-vue.yml @@ -1,10 +1,6 @@ name: APP (Vue) on: - push: - branches: [main] - pull_request: - branches: [main] workflow_dispatch: env: IMAGE_NAME: cas-web From d40493d09ad9a65bdc276d3ef87ccf25f0a8ffb5 Mon Sep 17 00:00:00 2001 From: JonTaylorBCGov2 <55515424+JonTaylorBCGov2@users.noreply.github.com> Date: Tue, 16 Jul 2024 15:30:05 -0700 Subject: [PATCH 39/39] Update backup.yaml --- .github/workflows/backup.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backup.yaml b/.github/workflows/backup.yaml index 005d58da..2c652bd9 100644 --- a/.github/workflows/backup.yaml +++ b/.github/workflows/backup.yaml @@ -58,9 +58,9 @@ jobs: # Update the Helm values file with the new image tag and version DATETIME=$(date +'%Y-%m-%d %H:%M:%S') # Get current date and time - sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml + sed -i "s/backuptag: .*/backuptag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" ../deploy/dev_values.yaml - sed -i "s/apitag: .*/apitag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" backup/values.yaml + sed -i "s/backuptag: .*/backuptag: dev-${{ steps.short_sha.outputs.SHORT_SHA }} # Image Updated on $DATETIME/" backup/values.yaml # Commit and push the changes git config --global user.email "actions@github.com" @@ -69,3 +69,6 @@ jobs: git add . git add ../deploy/dev_values.yaml + + git commit -m "Update Dev Web image tag" + git push origin develop # Update the branch name as needed