From 66995ada6fdc63ddc52a64b88b64e609d521ff5e Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Wed, 6 Nov 2024 09:12:20 -0800 Subject: [PATCH 01/27] Update tests action to run django unit tests. --- .github/workflows/.tests.yml | 89 +++++++---------------------------- .github/workflows/pr-open.yml | 40 +++++++--------- 2 files changed, 33 insertions(+), 96 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index ed214b93d..ab6c3c896 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -20,81 +20,26 @@ env: PREFIX: ${{ github.event.repository.name }}-${{ inputs.target }} jobs: - integration-tests: - name: Integration - runs-on: ubuntu-latest + unit-test: + name: Unit Tests + if: github.event_name != 'pull_request' || !github.event.pull_request.draft + continue-on-error: true + runs-on: unbuntu-latest timeout-minutes: 1 steps: - - uses: actions/checkout@v4 - - id: cache-npm - uses: actions/cache@v4 - with: - path: ~/.npm - key: ${{ runner.os }}-build-cache-node-modules-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-build-cache-node-modules- - ${{ runner.os }}-build- - ${{ runner.os }}- - - - env: - API_NAME: nest - BASE_URL: https://${{ github.event.repository.name }}-${{ inputs.target }}-frontend.${{ env.DOMAIN }} - run: | - cd tests/integration - npm ci - node src/main.js + - name: Checkout Code + uses: actions/checkout@v3 - e2e-tests: - name: E2E - defaults: - run: - working-directory: frontend - runs-on: ubuntu-latest - timeout-minutes: 5 - strategy: - matrix: - project: [ chromium, Google Chrome, firefox, safari, Microsoft Edge ] - steps: - - uses: actions/checkout@v4 - name: Checkout - - uses: actions/setup-node@v4 - name: Setup Node + - name: Set up Python + uses: actions/setup-python@v3 with: - node-version: 20 - cache: 'npm' - cache-dependency-path: frontend/package-lock.json - - name: Install dependencies - run: | - npm ci - npx playwright install --with-deps + python-version: '3.7' - - name: Run Tests - env: - E2E_BASE_URL: https://${{ github.event.repository.name }}-${{ inputs.target }}-frontend.${{ env.DOMAIN }}/ - CI: 'true' - run: | - npx playwright test --project="${{ matrix.project }}" --reporter=html + - name: Install Dependencies + run: python -m pip install --upgrade pip && pip install -r requirements.txt + working-directory: ./backend - - uses: actions/upload-artifact@v4 - if: ${{ !cancelled() }} - name: upload results - with: - name: playwright-report-${{ matrix.project }} - path: "./frontend/playwright-report" # path from current folder - retention-days: 7 - - load-tests: - name: Load - runs-on: ubuntu-latest - strategy: - matrix: - name: [backend, frontend] - steps: - - uses: actions/checkout@v4 - - uses: grafana/k6-action@v0.3.1 - env: - BACKEND_URL: https://${{ env.PREFIX }}-frontend.${{ env.DOMAIN }}/api - FRONTEND_URL: https://${{ env.PREFIX }}-frontend.${{ env.DOMAIN }} - with: - filename: ./tests/load/${{ matrix.name }}-test.js - flags: --vus 10 --duration 30s + - name: Run Django Tests + run: python manage.py test + working-directory: ./backend + \ No newline at end of file diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index f041baa06..6c5369cae 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -26,32 +26,24 @@ jobs: tag_fallback: latest triggers: ('${{ matrix.package }}/') - deploy: - name: Deploy + deploys: + name: Deploys needs: [builds] secrets: inherit uses: ./.github/workflows/.deploy.yml - # tests: - # name: Tests - # if: needs.deploys.outputs.triggered == 'true' - # needs: [deploys] - # uses: ./.github/workflows/.tests.yml - # with: - # target: ${{ github.event.number }} + tests: + name: Tests + if: needs.deploys.outputs.triggered == 'true' + needs: [deploys] + uses: ./.github/workflows/.tests.yml + with: + target: ${{ github.event.number }} - # results: - # name: PR Results - # # needs: [builds, deploys, tests] - # if: always() && (!failure()) && (!cancelled()) - # runs-on: ubuntu-latest - # steps: - # - run: echo "Success!" - - # dump: - # name: Dump Context - # runs-on: ubuntu-latest - # env: - # CONTEXT: ${{ toJson(github) }} - # steps: - # - run: echo "${{ env.CONTEXT }}" + results: + name: PR Results + needs: [builds, deploys, tests] + if: always() && (!failure()) && (!cancelled()) + runs-on: ubuntu-latest + steps: + - run: echo "Success!" From 8110e4b9c95ff7ac79f52b9ec2094eb6415a2d37 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:09:54 -0800 Subject: [PATCH 02/27] Comment out builds and deploys. --- .github/workflows/.deploy.yml | 206 +++++++++++++++++----------------- .github/workflows/pr-open.yml | 8 +- 2 files changed, 107 insertions(+), 107 deletions(-) diff --git a/.github/workflows/.deploy.yml b/.github/workflows/.deploy.yml index 5be73bd47..5bc3133ff 100644 --- a/.github/workflows/.deploy.yml +++ b/.github/workflows/.deploy.yml @@ -54,110 +54,110 @@ jobs: -p S3_HOST=${{ secrets.S3_HOST }} -p S3_ROOT_BUCKET=${{ secrets.S3_ROOT_BUCKET }} - minio: - name: Minio - needs: [ init ] - runs-on: ubuntu-latest - steps: - - name: Deploy Minio - uses: bcgov-nr/action-deployer-openshift@v3.0.1 - with: - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - oc_version: "4.14.37" - file: minio/openshift.deploy.yml - parameters: - -p NAME_SUFFIX=${{ inputs.target }} - -p IMAGE_TAG=${{ inputs.tag }} - ${{ inputs.environment && '' || '-p MINIO_DATA_DIR=/tmp/data' }} - ${{ inputs.environment && '' || '-p DEST_PVC_SIZE=1Mi' }} + # minio: + # name: Minio + # needs: [ init ] + # runs-on: ubuntu-latest + # steps: + # - name: Deploy Minio + # uses: bcgov-nr/action-deployer-openshift@v3.0.1 + # with: + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # oc_version: "4.14.37" + # file: minio/openshift.deploy.yml + # parameters: + # -p NAME_SUFFIX=${{ inputs.target }} + # -p IMAGE_TAG=${{ inputs.tag }} + # ${{ inputs.environment && '' || '-p MINIO_DATA_DIR=/tmp/data' }} + # ${{ inputs.environment && '' || '-p DEST_PVC_SIZE=1Mi' }} - database: - name: Database - needs: init - environment: ${{ inputs.environment }} - runs-on: ubuntu-latest - steps: - - name: Database - uses: bcgov-nr/action-deployer-openshift@v3.0.1 - with: - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - oc_version: "4.14.37" - file: database/openshift.deploy.yml - overwrite: true - parameters: - -p IMAGE_STREAM_NAMESPACE=${{ vars.OC_NAMESPACE }} - -p IMAGE_STREAM_NAME=crunchy-postgres-gis - -p IMAGE_TAG=${{ inputs.tag }} - -p NAME_SUFFIX=${{ inputs.target }} - -p STORAGE_CLASS=netapp-file-standard - -p REQUEST_CPU=200m - -p LIMIT_CPU=500m - -p LIMIT_MEMORY=1Gi + # database: + # name: Database + # needs: init + # environment: ${{ inputs.environment }} + # runs-on: ubuntu-latest + # steps: + # - name: Database + # uses: bcgov-nr/action-deployer-openshift@v3.0.1 + # with: + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # oc_version: "4.14.37" + # file: database/openshift.deploy.yml + # overwrite: true + # parameters: + # -p IMAGE_STREAM_NAMESPACE=${{ vars.OC_NAMESPACE }} + # -p IMAGE_STREAM_NAME=crunchy-postgres-gis + # -p IMAGE_TAG=${{ inputs.tag }} + # -p NAME_SUFFIX=${{ inputs.target }} + # -p STORAGE_CLASS=netapp-file-standard + # -p REQUEST_CPU=200m + # -p LIMIT_CPU=500m + # -p LIMIT_MEMORY=1Gi - backend: - name: Backend - needs: [ init, database ] - environment: ${{ inputs.environment }} - runs-on: ubuntu-latest - steps: - - name: Deploy Backend - uses: bcgov-nr/action-deployer-openshift@v3.0.1 - with: - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - oc_version: "4.14.37" - file: backend/openshift.deploy.yml - parameters: - -p NAME_SUFFIX=${{ inputs.target }} - -p IMAGE_TAG=${{ inputs.tag }} - -p E_LICENSING_URL=${{ vars.E_LICENSING_URL }} - -p DB_REPLICATE=${{ vars.DB_REPLICATE }} - -p DJANGO_DEBUG=${{ vars.DJANGO_DEBUG }} - -p ENABLE_ADDITIONAL_DOCUMENTS=${{ vars.ENABLE_ADDITIONAL_DOCUMENTS }} - -p S3_PRIVATE_BUCKET=${{ vars.S3_PRIVATE_BUCKET }} - -p S3_PRIVATE_HOST=${{ vars.S3_PRIVATE_HOST }} - -p S3_WELL_EXPORT_BUCKET=${{ vars.S3_WELL_EXPORT_BUCKET }} - -p SSO_AUDIENCE=${{ vars.SSO_AUDIENCE }} - -p SSO_AUTH_HOST=${{ vars.SSO_AUTH_HOST }} - -p SSO_CLIENT=${{ vars.SSO_CLIENT }} - -p SSO_IDP_HINT=${{ vars.SSO_IDP_HINT }} - -p SSO_PORT=${{ vars.SSO_PORT }} - -p SSO_PUBKEY=${{ vars.SSO_PUBKEY }} - -p SSO_REALM=${{ vars.SSO_REALM }} - -p SSO_TEST_AUDIENCE=${{ vars.SSO_TEST_AUDIENCE }} - -p SSO_TEST_CLIENT=${{ vars.SSO_TEST_CLIENT }} - -p GDAL_LIBRARY_PATH=${{ vars.GDAL_LIBRARY_PATH }} - -p GEOS_LIBRARY_PATH=${{ vars.GEOS_LIBRARY_PATH }} - -p S3_AQUIFER_BUCKET=${{ vars.S3_AQUIFER_BUCKET }} - -p S3_REGISTRANT_BUCKET=${{ vars.S3_REGISTRANT_BUCKET }} - -p S3_PRIVATE_ROOT_BUCKET=${{ vars.S3_PRIVATE_ROOT_BUCKET }} - -p S3_PRIVATE_AQUIFER_BUCKET=${{ vars.S3_PRIVATE_AQUIFER_BUCKET }} - -p S3_PRIVATE_REGISTRANT_BUCKET=${{ vars.S3_PRIVATE_REGISTRANT_BUCKET }} - -p S3_PRIVATE_WELL_BUCKET=${{ vars.S3_PRIVATE_WELL_BUCKET }} - -p ENABLE_AQUIFERS_SEARCH=${{ vars.ENABLE_AQUIFERS_SEARCH }} - -p EMAIL_NOTIFICATION_RECIPIENT=${{ vars.EMAIL_NOTIFICATION_RECIPIENT }} - -p GEOCODER_ADDRESS_API_BASE=${{ vars.GEOCODER_ADDRESS_API_BASE }} + # backend: + # name: Backend + # needs: [ init, database ] + # environment: ${{ inputs.environment }} + # runs-on: ubuntu-latest + # steps: + # - name: Deploy Backend + # uses: bcgov-nr/action-deployer-openshift@v3.0.1 + # with: + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # oc_version: "4.14.37" + # file: backend/openshift.deploy.yml + # parameters: + # -p NAME_SUFFIX=${{ inputs.target }} + # -p IMAGE_TAG=${{ inputs.tag }} + # -p E_LICENSING_URL=${{ vars.E_LICENSING_URL }} + # -p DB_REPLICATE=${{ vars.DB_REPLICATE }} + # -p DJANGO_DEBUG=${{ vars.DJANGO_DEBUG }} + # -p ENABLE_ADDITIONAL_DOCUMENTS=${{ vars.ENABLE_ADDITIONAL_DOCUMENTS }} + # -p S3_PRIVATE_BUCKET=${{ vars.S3_PRIVATE_BUCKET }} + # -p S3_PRIVATE_HOST=${{ vars.S3_PRIVATE_HOST }} + # -p S3_WELL_EXPORT_BUCKET=${{ vars.S3_WELL_EXPORT_BUCKET }} + # -p SSO_AUDIENCE=${{ vars.SSO_AUDIENCE }} + # -p SSO_AUTH_HOST=${{ vars.SSO_AUTH_HOST }} + # -p SSO_CLIENT=${{ vars.SSO_CLIENT }} + # -p SSO_IDP_HINT=${{ vars.SSO_IDP_HINT }} + # -p SSO_PORT=${{ vars.SSO_PORT }} + # -p SSO_PUBKEY=${{ vars.SSO_PUBKEY }} + # -p SSO_REALM=${{ vars.SSO_REALM }} + # -p SSO_TEST_AUDIENCE=${{ vars.SSO_TEST_AUDIENCE }} + # -p SSO_TEST_CLIENT=${{ vars.SSO_TEST_CLIENT }} + # -p GDAL_LIBRARY_PATH=${{ vars.GDAL_LIBRARY_PATH }} + # -p GEOS_LIBRARY_PATH=${{ vars.GEOS_LIBRARY_PATH }} + # -p S3_AQUIFER_BUCKET=${{ vars.S3_AQUIFER_BUCKET }} + # -p S3_REGISTRANT_BUCKET=${{ vars.S3_REGISTRANT_BUCKET }} + # -p S3_PRIVATE_ROOT_BUCKET=${{ vars.S3_PRIVATE_ROOT_BUCKET }} + # -p S3_PRIVATE_AQUIFER_BUCKET=${{ vars.S3_PRIVATE_AQUIFER_BUCKET }} + # -p S3_PRIVATE_REGISTRANT_BUCKET=${{ vars.S3_PRIVATE_REGISTRANT_BUCKET }} + # -p S3_PRIVATE_WELL_BUCKET=${{ vars.S3_PRIVATE_WELL_BUCKET }} + # -p ENABLE_AQUIFERS_SEARCH=${{ vars.ENABLE_AQUIFERS_SEARCH }} + # -p EMAIL_NOTIFICATION_RECIPIENT=${{ vars.EMAIL_NOTIFICATION_RECIPIENT }} + # -p GEOCODER_ADDRESS_API_BASE=${{ vars.GEOCODER_ADDRESS_API_BASE }} - frontend: - name: Frontend - needs: [ init, database, backend ] - environment: ${{ inputs.environment }} - runs-on: ubuntu-latest - steps: - - name: Deploy Frontend - uses: bcgov-nr/action-deployer-openshift@v3.0.1 - with: - oc_namespace: ${{ vars.OC_NAMESPACE }} - oc_server: ${{ vars.OC_SERVER }} - oc_token: ${{ secrets.OC_TOKEN }} - oc_version: "4.14.37" - file: frontend/openshift.deploy.yml - parameters: - -p NAME_SUFFIX=${{ inputs.target }} - -p IMAGE_TAG=${{ inputs.tag }} + # frontend: + # name: Frontend + # needs: [ init, database, backend ] + # environment: ${{ inputs.environment }} + # runs-on: ubuntu-latest + # steps: + # - name: Deploy Frontend + # uses: bcgov-nr/action-deployer-openshift@v3.0.1 + # with: + # oc_namespace: ${{ vars.OC_NAMESPACE }} + # oc_server: ${{ vars.OC_SERVER }} + # oc_token: ${{ secrets.OC_TOKEN }} + # oc_version: "4.14.37" + # file: frontend/openshift.deploy.yml + # parameters: + # -p NAME_SUFFIX=${{ inputs.target }} + # -p IMAGE_TAG=${{ inputs.tag }} \ No newline at end of file diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index 6c5369cae..70d1f7bc3 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - package: [database, backend, frontend, minio] + # package: [database, backend, frontend, minio] timeout-minutes: 20 steps: - uses: bcgov-nr/action-builder-ghcr@v2.2.0 @@ -28,21 +28,21 @@ jobs: deploys: name: Deploys - needs: [builds] + # needs: [builds] secrets: inherit uses: ./.github/workflows/.deploy.yml tests: name: Tests if: needs.deploys.outputs.triggered == 'true' - needs: [deploys] + # needs: [deploys] uses: ./.github/workflows/.tests.yml with: target: ${{ github.event.number }} results: name: PR Results - needs: [builds, deploys, tests] + # needs: [builds, deploys, tests] if: always() && (!failure()) && (!cancelled()) runs-on: ubuntu-latest steps: From 67e4831bcd534b80885cbff4967622c810a138c0 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:15:39 -0800 Subject: [PATCH 03/27] Comment out build job. --- .github/workflows/pr-open.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index 70d1f7bc3..b3c4d5f09 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -10,21 +10,21 @@ concurrency: jobs: # https://github.com/bcgov-nr/action-builder-ghcr - builds: - name: Builds - runs-on: ubuntu-latest - strategy: - matrix: - # package: [database, backend, frontend, minio] - timeout-minutes: 20 - steps: - - uses: bcgov-nr/action-builder-ghcr@v2.2.0 - with: - keep_versions: 50 - package: ${{ matrix.package }} - tag: ${{ github.event.number }} - tag_fallback: latest - triggers: ('${{ matrix.package }}/') + # builds: + # name: Builds + # runs-on: ubuntu-latest + # strategy: + # matrix: + # package: [database, backend, frontend, minio] + # timeout-minutes: 20 + # steps: + # - uses: bcgov-nr/action-builder-ghcr@v2.2.0 + # with: + # keep_versions: 50 + # package: ${{ matrix.package }} + # tag: ${{ github.event.number }} + # tag_fallback: latest + # triggers: ('${{ matrix.package }}/') deploys: name: Deploys From 7cee3d963477268af1c46701fd60684f3a409343 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:19:56 -0800 Subject: [PATCH 04/27] Comment out test event check. --- .github/workflows/.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index ab6c3c896..d548d7eeb 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -22,7 +22,7 @@ env: jobs: unit-test: name: Unit Tests - if: github.event_name != 'pull_request' || !github.event.pull_request.draft + # if: github.event_name != 'pull_request' || !github.event.pull_request.draft continue-on-error: true runs-on: unbuntu-latest timeout-minutes: 1 From fb7c395f0eec8e4204fd68016af6da5849a989ef Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:21:46 -0800 Subject: [PATCH 05/27] =?UTF-8?q?=F0=9F=99=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index d548d7eeb..5a026d339 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -24,7 +24,7 @@ jobs: name: Unit Tests # if: github.event_name != 'pull_request' || !github.event.pull_request.draft continue-on-error: true - runs-on: unbuntu-latest + runs-on: ubuntu-latest timeout-minutes: 1 steps: - name: Checkout Code From 2a247092b548e6b0371d5a9e77cb7d584dbafa30 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:23:37 -0800 Subject: [PATCH 06/27] Comment out check for deploys. --- .github/workflows/pr-open.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index b3c4d5f09..74a7c38cc 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -34,7 +34,7 @@ jobs: tests: name: Tests - if: needs.deploys.outputs.triggered == 'true' + # if: needs.deploys.outputs.triggered == 'true' # needs: [deploys] uses: ./.github/workflows/.tests.yml with: From aecd1ef78f31b50535c349e63645188a416d9c75 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:26:43 -0800 Subject: [PATCH 07/27] Add GDAL setup. --- .github/workflows/.tests.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 5a026d339..5c9642b07 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -35,6 +35,9 @@ jobs: with: python-version: '3.7' + - name: Install GDAL dependencies + run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev + - name: Install Dependencies run: python -m pip install --upgrade pip && pip install -r requirements.txt working-directory: ./backend From 5eae848c806597da58e0b422c991d758e1950b32 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:32:32 -0800 Subject: [PATCH 08/27] Pin version of setuptools. --- .github/workflows/.tests.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 5c9642b07..1fb346a38 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -38,11 +38,14 @@ jobs: - name: Install GDAL dependencies run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev + - name: Install Setuptools + run: python3 -m pip install 'setuptools<58.0' + - name: Install Dependencies - run: python -m pip install --upgrade pip && pip install -r requirements.txt + run: python3 -m pip install --upgrade pip && pip install -r requirements.txt working-directory: ./backend - name: Run Django Tests - run: python manage.py test + run: python3 manage.py test working-directory: ./backend \ No newline at end of file From 05b6c0584ffc909c919e24f5fcd4e54d6cb53c18 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:36:48 -0800 Subject: [PATCH 09/27] Split out python deps. --- .github/workflows/.tests.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 1fb346a38..5592391d2 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -38,11 +38,17 @@ jobs: - name: Install GDAL dependencies run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev + - name: Upgrade pip + run: python3 -m pip install --upgrade pip + + - name: Install ptvsd + run: python3 -m pip install ptvsd + - name: Install Setuptools run: python3 -m pip install 'setuptools<58.0' - name: Install Dependencies - run: python3 -m pip install --upgrade pip && pip install -r requirements.txt + run: python3 -m pip install -r requirements.txt working-directory: ./backend - name: Run Django Tests From 9f0d3cdb9282de5a239889c7bd80b6a0053969de Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:40:42 -0800 Subject: [PATCH 10/27] Add numpy. --- .github/workflows/.tests.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 5592391d2..e82260acd 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -41,6 +41,9 @@ jobs: - name: Upgrade pip run: python3 -m pip install --upgrade pip + - name: Install Numpy + run: python3 -m pip install numpy + - name: Install ptvsd run: python3 -m pip install ptvsd From 21c0bb8d7f4a1fe8b76de2de3dfd3348ce36b163 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:46:45 -0800 Subject: [PATCH 11/27] Uninstall setuptools first. --- .github/workflows/.tests.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index e82260acd..f0de927b3 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -47,11 +47,14 @@ jobs: - name: Install ptvsd run: python3 -m pip install ptvsd + - name: Uninstall setuptool + run: python3 -m pip install setuptools + - name: Install Setuptools run: python3 -m pip install 'setuptools<58.0' - name: Install Dependencies - run: python3 -m pip install -r requirements.txt + run: python3 -m pip install -r requirements.txt --verbose working-directory: ./backend - name: Run Django Tests From 39ffcfe2da36024a23ed4a5711921b3d7f3b5959 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 08:48:18 -0800 Subject: [PATCH 12/27] Use slim python version. --- .github/workflows/.tests.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index f0de927b3..cce97ee0e 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -33,7 +33,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v3 with: - python-version: '3.7' + python-version: '3.7-slim' - name: Install GDAL dependencies run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev @@ -41,15 +41,9 @@ jobs: - name: Upgrade pip run: python3 -m pip install --upgrade pip - - name: Install Numpy - run: python3 -m pip install numpy - - name: Install ptvsd run: python3 -m pip install ptvsd - - name: Uninstall setuptool - run: python3 -m pip install setuptools - - name: Install Setuptools run: python3 -m pip install 'setuptools<58.0' From 3886e32b0efb587b4d4f582190e5816242dcb5b1 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 10:37:53 -0800 Subject: [PATCH 13/27] Run tests in docker container. --- .github/workflows/.tests.yml | 45 +++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 18 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index cce97ee0e..128d7fe13 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -30,28 +30,37 @@ jobs: - name: Checkout Code uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v3 - with: - python-version: '3.7-slim' + - name: Build Docker Image + run: docker build -t nr-gwells-backend-image --no-cache ./backend - - name: Install GDAL dependencies - run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev + - name: Run Tests + run: docker run -rm nr-gwells-backend-image python3 manage.py test - - name: Upgrade pip - run: python3 -m pip install --upgrade pip + # - name: Set up Python + # uses: actions/setup-python@v3 + # with: + # python-version: '3.7' - - name: Install ptvsd - run: python3 -m pip install ptvsd + # - name: Install GDAL dependencies + # run: sudo apt update && sudo apt install -y gdal-bin libgdal-dev - - name: Install Setuptools - run: python3 -m pip install 'setuptools<58.0' + # - name: Upgrade pip + # run: python3 -m pip install --upgrade pip - - name: Install Dependencies - run: python3 -m pip install -r requirements.txt --verbose - working-directory: ./backend + # - name: Install Numpy + # run: python3 -m pip install numpy - - name: Run Django Tests - run: python3 manage.py test - working-directory: ./backend + # - name: Install ptvsd + # run: python3 -m pip install ptvsd + + # - name: Install Setuptools + # run: python3 -m pip install 'setuptools<58.0' + + # - name: Install Dependencies + # run: python3 -m pip install -r requirements.txt --verbose + # working-directory: ./backend + + # - name: Run Django Tests + # run: python3 manage.py test + # working-directory: ./backend \ No newline at end of file From 14f477d447bb11684bc56c52908a42f369a185fa Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 10:43:39 -0800 Subject: [PATCH 14/27] Update timeout. --- .github/workflows/.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 128d7fe13..fdab701be 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -25,7 +25,7 @@ jobs: # if: github.event_name != 'pull_request' || !github.event.pull_request.draft continue-on-error: true runs-on: ubuntu-latest - timeout-minutes: 1 + timeout-minutes: 5 steps: - name: Checkout Code uses: actions/checkout@v3 From 8b78b8084867a4130c7ecf42f82509c8f53a7280 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 10:48:24 -0800 Subject: [PATCH 15/27] Update docker remove container flag. --- .github/workflows/.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index fdab701be..6ea8162c6 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -34,7 +34,7 @@ jobs: run: docker build -t nr-gwells-backend-image --no-cache ./backend - name: Run Tests - run: docker run -rm nr-gwells-backend-image python3 manage.py test + run: docker run --rm nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 From ba7717ec082180cc2f82c673421d689b5c9a10c3 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 13:15:26 -0800 Subject: [PATCH 16/27] Add db service. --- .github/workflows/.tests.yml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 6ea8162c6..774a83508 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -26,6 +26,20 @@ jobs: continue-on-error: true runs-on: ubuntu-latest timeout-minutes: 5 + services: + database: + image: postgres:12.2 + env: + POSTGRES_USER: myuser + POSTGRES_PASSWORD: mypassword + POSTGRES_DB: test_db + ports: + - 5432:5432 + options: >- + --health-cmd="pg_isready -U myuser" + --health-interval=10s + --health-timeout=5s + --health-retries=5 steps: - name: Checkout Code uses: actions/checkout@v3 @@ -33,8 +47,11 @@ jobs: - name: Build Docker Image run: docker build -t nr-gwells-backend-image --no-cache ./backend + - name: Run Migrations + run: docker run --network host --rm -e DB_HOST=localhost -e DB_NAME=test_db -e DB_USER=myuser -e DB_PASSWORD=mypassword nr-gwells-backend-image python3 manage.py migrate + - name: Run Tests - run: docker run --rm nr-gwells-backend-image python3 manage.py test + run: docker run --network host --rm -e DB_HOST=localhost -e DB_NAME=test_db -e DB_USER=myuser -e DB_PASSWORD=mypassword nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 From 38c982410cdd54821679b223247dae8189d99a31 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 14:27:57 -0800 Subject: [PATCH 17/27] Uncomment database service. --- .github/workflows/.deploy.yml | 48 +++++++++++++++++------------------ .github/workflows/.tests.yml | 29 ++++++++++----------- .github/workflows/pr-open.yml | 35 ++++++++++++------------- 3 files changed, 55 insertions(+), 57 deletions(-) diff --git a/.github/workflows/.deploy.yml b/.github/workflows/.deploy.yml index 5bc3133ff..0dcaeec1b 100644 --- a/.github/workflows/.deploy.yml +++ b/.github/workflows/.deploy.yml @@ -73,30 +73,30 @@ jobs: # ${{ inputs.environment && '' || '-p MINIO_DATA_DIR=/tmp/data' }} # ${{ inputs.environment && '' || '-p DEST_PVC_SIZE=1Mi' }} - # database: - # name: Database - # needs: init - # environment: ${{ inputs.environment }} - # runs-on: ubuntu-latest - # steps: - # - name: Database - # uses: bcgov-nr/action-deployer-openshift@v3.0.1 - # with: - # oc_namespace: ${{ vars.OC_NAMESPACE }} - # oc_server: ${{ vars.OC_SERVER }} - # oc_token: ${{ secrets.OC_TOKEN }} - # oc_version: "4.14.37" - # file: database/openshift.deploy.yml - # overwrite: true - # parameters: - # -p IMAGE_STREAM_NAMESPACE=${{ vars.OC_NAMESPACE }} - # -p IMAGE_STREAM_NAME=crunchy-postgres-gis - # -p IMAGE_TAG=${{ inputs.tag }} - # -p NAME_SUFFIX=${{ inputs.target }} - # -p STORAGE_CLASS=netapp-file-standard - # -p REQUEST_CPU=200m - # -p LIMIT_CPU=500m - # -p LIMIT_MEMORY=1Gi + database: + name: Database + needs: init + environment: ${{ inputs.environment }} + runs-on: ubuntu-latest + steps: + - name: Database + uses: bcgov-nr/action-deployer-openshift@v3.0.1 + with: + oc_namespace: ${{ vars.OC_NAMESPACE }} + oc_server: ${{ vars.OC_SERVER }} + oc_token: ${{ secrets.OC_TOKEN }} + oc_version: "4.14.37" + file: database/openshift.deploy.yml + overwrite: true + parameters: + -p IMAGE_STREAM_NAMESPACE=${{ vars.OC_NAMESPACE }} + -p IMAGE_STREAM_NAME=crunchy-postgres-gis + -p IMAGE_TAG=${{ inputs.tag }} + -p NAME_SUFFIX=${{ inputs.target }} + -p STORAGE_CLASS=netapp-file-standard + -p REQUEST_CPU=200m + -p LIMIT_CPU=500m + -p LIMIT_MEMORY=1Gi # backend: # name: Backend diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 774a83508..a980c5995 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -26,20 +26,6 @@ jobs: continue-on-error: true runs-on: ubuntu-latest timeout-minutes: 5 - services: - database: - image: postgres:12.2 - env: - POSTGRES_USER: myuser - POSTGRES_PASSWORD: mypassword - POSTGRES_DB: test_db - ports: - - 5432:5432 - options: >- - --health-cmd="pg_isready -U myuser" - --health-interval=10s - --health-timeout=5s - --health-retries=5 steps: - name: Checkout Code uses: actions/checkout@v3 @@ -48,10 +34,21 @@ jobs: run: docker build -t nr-gwells-backend-image --no-cache ./backend - name: Run Migrations - run: docker run --network host --rm -e DB_HOST=localhost -e DB_NAME=test_db -e DB_USER=myuser -e DB_PASSWORD=mypassword nr-gwells-backend-image python3 manage.py migrate + run: | + docker run --network host --rm \ + -e DB_HOST=localhost \ + -e DB_NAME=test_db \ + -e DB_USER=myuser \ + -e DB_PASSWORD=mypassword \ + nr-gwells-backend-image python3 manage.py migrate - name: Run Tests - run: docker run --network host --rm -e DB_HOST=localhost -e DB_NAME=test_db -e DB_USER=myuser -e DB_PASSWORD=mypassword nr-gwells-backend-image python3 manage.py test + run: docker run --network host --rm \ + -e DB_HOST=localhost \ + -e DB_NAME=test_db \ + -e DB_USER=myuser \ + -e DB_PASSWORD=mypassword \ + nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index 74a7c38cc..f4d610104 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -10,32 +10,33 @@ concurrency: jobs: # https://github.com/bcgov-nr/action-builder-ghcr - # builds: - # name: Builds - # runs-on: ubuntu-latest - # strategy: - # matrix: - # package: [database, backend, frontend, minio] - # timeout-minutes: 20 - # steps: - # - uses: bcgov-nr/action-builder-ghcr@v2.2.0 - # with: - # keep_versions: 50 - # package: ${{ matrix.package }} - # tag: ${{ github.event.number }} - # tag_fallback: latest - # triggers: ('${{ matrix.package }}/') + builds: + name: Builds + runs-on: ubuntu-latest + strategy: + matrix: + # package: [database, backend, frontend, minio] + package: [database] + timeout-minutes: 20 + steps: + - uses: bcgov-nr/action-builder-ghcr@v2.2.0 + with: + keep_versions: 50 + package: ${{ matrix.package }} + tag: ${{ github.event.number }} + tag_fallback: latest + triggers: ('${{ matrix.package }}/') deploys: name: Deploys - # needs: [builds] + needs: [builds] secrets: inherit uses: ./.github/workflows/.deploy.yml tests: name: Tests # if: needs.deploys.outputs.triggered == 'true' - # needs: [deploys] + needs: [deploys] uses: ./.github/workflows/.tests.yml with: target: ${{ github.event.number }} From 275289655e0d99cd0b2f50ea975ba6a994de28a7 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 14:35:41 -0800 Subject: [PATCH 18/27] Update test database. --- .github/workflows/.tests.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index a980c5995..0800760e6 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -36,18 +36,18 @@ jobs: - name: Run Migrations run: | docker run --network host --rm \ - -e DB_HOST=localhost \ - -e DB_NAME=test_db \ - -e DB_USER=myuser \ - -e DB_PASSWORD=mypassword \ + -e PG_PRIMARY_HOST=gwells-164-database \ + -e DB_NAME=postgresql \ + -e PG_USER=${{ vars.PG_USER }} \ + -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ nr-gwells-backend-image python3 manage.py migrate - name: Run Tests run: docker run --network host --rm \ - -e DB_HOST=localhost \ - -e DB_NAME=test_db \ - -e DB_USER=myuser \ - -e DB_PASSWORD=mypassword \ + -e PG_PRIMARY_HOST=gwells-164-database \ + -e DB_NAME=postgresql \ + -e PG_USER=${{ vars.PG_USER }} \ + -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ nr-gwells-backend-image python3 manage.py test # - name: Set up Python From f551e134d70e324464154d06033dd6ba61049aa7 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 14:43:56 -0800 Subject: [PATCH 19/27] Remove args for service running in the same container. --- .github/workflows/.tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 0800760e6..8210fbec4 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -35,7 +35,7 @@ jobs: - name: Run Migrations run: | - docker run --network host --rm \ + docker run --rm \ -e PG_PRIMARY_HOST=gwells-164-database \ -e DB_NAME=postgresql \ -e PG_USER=${{ vars.PG_USER }} \ @@ -43,7 +43,7 @@ jobs: nr-gwells-backend-image python3 manage.py migrate - name: Run Tests - run: docker run --network host --rm \ + run: docker run --rm \ -e PG_PRIMARY_HOST=gwells-164-database \ -e DB_NAME=postgresql \ -e PG_USER=${{ vars.PG_USER }} \ From 0233e5db0182eb9c43a34c6d3c3419d12e6b1498 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 14:51:03 -0800 Subject: [PATCH 20/27] Add db host. --- .github/workflows/.tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 8210fbec4..27ed58df3 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -39,6 +39,7 @@ jobs: -e PG_PRIMARY_HOST=gwells-164-database \ -e DB_NAME=postgresql \ -e PG_USER=${{ vars.PG_USER }} \ + -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ nr-gwells-backend-image python3 manage.py migrate @@ -47,6 +48,7 @@ jobs: -e PG_PRIMARY_HOST=gwells-164-database \ -e DB_NAME=postgresql \ -e PG_USER=${{ vars.PG_USER }} \ + -e PG_HOST=5432 \ -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ nr-gwells-backend-image python3 manage.py test From 6164c98d451cab0161a1bd0ad2e9c848169bd521 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 14:59:16 -0800 Subject: [PATCH 21/27] Inline docker command. --- .github/workflows/.tests.yml | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 27ed58df3..add4e8244 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -35,22 +35,10 @@ jobs: - name: Run Migrations run: | - docker run --rm \ - -e PG_PRIMARY_HOST=gwells-164-database \ - -e DB_NAME=postgresql \ - -e PG_USER=${{ vars.PG_USER }} \ - -e PG_HOST=5432 - -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ - nr-gwells-backend-image python3 manage.py migrate + docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py migrate - name: Run Tests - run: docker run --rm \ - -e PG_PRIMARY_HOST=gwells-164-database \ - -e DB_NAME=postgresql \ - -e PG_USER=${{ vars.PG_USER }} \ - -e PG_HOST=5432 \ - -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} \ - nr-gwells-backend-image python3 manage.py test + run: docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 From 8eac22e2e13988bed5c86a55e2bdb20b587ec8e6 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 15:14:43 -0800 Subject: [PATCH 22/27] Update db host. --- backend/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index e97ab29a9..f2747db86 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -14,7 +14,7 @@ ENV DJANGO_DEBUG="true" ENV DJANGO_SECRET_KEY=secret ENV ENABLE_ADDITIONAL_DOCUMENTS="true" ENV ENABLE_AQUIFERS_SEARCH="true" -ENV GWELLS_SERVICE_HOST="db" +ENV GWELLS_SERVICE_HOST="gwells-164-database" ENV GWELLS_SERVICE_PORT="5432" ENV MINIO_ACCESS_KEY=minio ENV MINIO_SECRET_KEY=minio1234 From 5e096ce45fd718732c24a0b5103f0a52fee04bd2 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 15:22:24 -0800 Subject: [PATCH 23/27] Update database vars. --- .github/workflows/.tests.yml | 4 ++-- backend/Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index add4e8244..73cd2c768 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -35,10 +35,10 @@ jobs: - name: Run Migrations run: | - docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py migrate + docker run --rm -e PG_PRIMARY_HOST=db -e DB_NAME=gwells -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py migrate - name: Run Tests - run: docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py test + run: docker run --rm -e PG_PRIMARY_HOST=db -e DB_NAME=gwells -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 diff --git a/backend/Dockerfile b/backend/Dockerfile index f2747db86..e97ab29a9 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -14,7 +14,7 @@ ENV DJANGO_DEBUG="true" ENV DJANGO_SECRET_KEY=secret ENV ENABLE_ADDITIONAL_DOCUMENTS="true" ENV ENABLE_AQUIFERS_SEARCH="true" -ENV GWELLS_SERVICE_HOST="gwells-164-database" +ENV GWELLS_SERVICE_HOST="db" ENV GWELLS_SERVICE_PORT="5432" ENV MINIO_ACCESS_KEY=minio ENV MINIO_SECRET_KEY=minio1234 From 1db557a2e21afb6079f0d78ed3daf99395550b45 Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Thu, 7 Nov 2024 15:32:37 -0800 Subject: [PATCH 24/27] Comment vars. --- .github/workflows/.tests.yml | 4 +- backend/Dockerfile | 94 ++++++++++++++++++------------------ 2 files changed, 49 insertions(+), 49 deletions(-) diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml index 73cd2c768..add4e8244 100644 --- a/.github/workflows/.tests.yml +++ b/.github/workflows/.tests.yml @@ -35,10 +35,10 @@ jobs: - name: Run Migrations run: | - docker run --rm -e PG_PRIMARY_HOST=db -e DB_NAME=gwells -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py migrate + docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py migrate - name: Run Tests - run: docker run --rm -e PG_PRIMARY_HOST=db -e DB_NAME=gwells -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py test + run: docker run --rm -e PG_PRIMARY_HOST=gwells-164-database -e DB_NAME=postgresql -e PG_USER=${{ vars.PG_USER }} -e PG_HOST=5432 -e PG_PRIMARY_PASSWORD=${{ secrets.PG_PRIMARY_PASSWORD}} nr-gwells-backend-image python3 manage.py test # - name: Set up Python # uses: actions/setup-python@v3 diff --git a/backend/Dockerfile b/backend/Dockerfile index e97ab29a9..4bf121279 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,53 +1,53 @@ FROM python:3.7-slim # Envars -ENV ENVIRONMENT="local" -ENV APP_CONTEXT_ROOT=gwells -ENV CSRF_COOKIE_SECURE="False" -ENV CUSTOM_GDAL_GEOS="False" -ENV DATABASE_NAME=gwells -ENV DATABASE_USER="gwells" -ENV DATABASE_PASSWORD="test1" -ENV DATABASE_SERVICE_NAME=gwells -ENV DJANGO_ADMIN_URL=admin -ENV DJANGO_DEBUG="true" -ENV DJANGO_SECRET_KEY=secret -ENV ENABLE_ADDITIONAL_DOCUMENTS="true" -ENV ENABLE_AQUIFERS_SEARCH="true" -ENV GWELLS_SERVICE_HOST="db" -ENV GWELLS_SERVICE_PORT="5432" -ENV MINIO_ACCESS_KEY=minio -ENV MINIO_SECRET_KEY=minio1234 -ENV PYTHONUNBUFFERED="1" -ENV SESSION_COOKIE_SECURE="False" -ENV SSO_AUDIENCE=gwells-4121 -ENV SSO_CLIENT=gwells-4121 -ENV SSO_TEST_AUDIENCE=gwells-api-tests-4820 -ENV SSO_TEST_CLIENT=gwells-api-tests-4820 -ENV SSO_AUTH_HOST=https://test.loginproxy.gov.bc.ca/auth -ENV SSO_IDP_HINT="undefined" -ENV SSO_PORT=0 -ENV SSO_REALM=standard -ENV SSO_PUBKEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiFdv9GA83uHuy8Eu9yiZHGGF9j6J8t7FkbcpaN81GDjwbjsIJ0OJO9dKRAx6BAtTC4ubJTBJMPvQER5ikOhIeBi4o25fg61jpgsU6oRZHkCXc9gX6mrjMjbsPaf3/bjjYxP5jicBDJQeD1oRa24+tiGggoQ7k6gDEN+cRYqqNpzC/GQbkUPk8YsgroncEgu8ChMh/3ERsLV2zorchMANUq76max16mHrhtWIQxrb/STpSt4JuSlUzzBV/dcXjJe5gywZHe0jAutFhNqjHzHdgyaC4RAd3eYQo+Kl/JOgy2AZrnx+CiPmvOJKe9tAW4k4H087ng8aVE40v4HW/FEbnwIDAQAB -ENV S3_HOST=minio-public:9000 -ENV S3_PRIVATE_HOST=minio-private:9001 -ENV S3_PRIVATE_BUCKET=gwells -ENV S3_PRIVATE_ROOT_BUCKET=gwells -ENV S3_PRIVATE_WELL_BUCKET=well-docs -ENV S3_PRIVATE_AQUIFER_BUCKET=aquifer-docs -ENV S3_PRIVATE_REGISTRANT_BUCKET=driller-docs -ENV S3_PUBLIC_ACCESS_KEY=minio -ENV S3_PUBLIC_SECRET_KEY=minio1234 -ENV S3_AQUIFER_BUCKET=aquifer-docs -ENV S3_REGISTRANT_BUCKET=driller-docs -ENV S3_ROOT_BUCKET=gwells -ENV S3_WELL_BUCKET=well-docs -ENV S3_WELL_EXPORT_BUCKET=gwells -ENV S3_USE_SECURE=0 -ENV EMAIL_NOTIFICATION_RECIPIENT=sustainment.team@gov.bc.ca -ENV GEOCODER_ADDRESS_API_BASE=https://geocoder.api.gov.bc.ca/addresses.json? -ENV LOCAL="true" -ENV LOAD_FIXTURES="true" +# ENV ENVIRONMENT="local" +# ENV APP_CONTEXT_ROOT=gwells +# ENV CSRF_COOKIE_SECURE="False" +# ENV CUSTOM_GDAL_GEOS="False" +# ENV DATABASE_NAME=gwells +# ENV DATABASE_USER="gwells" +# ENV DATABASE_PASSWORD="test1" +# ENV DATABASE_SERVICE_NAME=gwells +# ENV DJANGO_ADMIN_URL=admin +# ENV DJANGO_DEBUG="true" +# ENV DJANGO_SECRET_KEY=secret +# ENV ENABLE_ADDITIONAL_DOCUMENTS="true" +# ENV ENABLE_AQUIFERS_SEARCH="true" +# ENV GWELLS_SERVICE_HOST="db" +# ENV GWELLS_SERVICE_PORT="5432" +# ENV MINIO_ACCESS_KEY=minio +# ENV MINIO_SECRET_KEY=minio1234 +# ENV PYTHONUNBUFFERED="1" +# ENV SESSION_COOKIE_SECURE="False" +# ENV SSO_AUDIENCE=gwells-4121 +# ENV SSO_CLIENT=gwells-4121 +# ENV SSO_TEST_AUDIENCE=gwells-api-tests-4820 +# ENV SSO_TEST_CLIENT=gwells-api-tests-4820 +# ENV SSO_AUTH_HOST=https://test.loginproxy.gov.bc.ca/auth +# ENV SSO_IDP_HINT="undefined" +# ENV SSO_PORT=0 +# ENV SSO_REALM=standard +# ENV SSO_PUBKEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiFdv9GA83uHuy8Eu9yiZHGGF9j6J8t7FkbcpaN81GDjwbjsIJ0OJO9dKRAx6BAtTC4ubJTBJMPvQER5ikOhIeBi4o25fg61jpgsU6oRZHkCXc9gX6mrjMjbsPaf3/bjjYxP5jicBDJQeD1oRa24+tiGggoQ7k6gDEN+cRYqqNpzC/GQbkUPk8YsgroncEgu8ChMh/3ERsLV2zorchMANUq76max16mHrhtWIQxrb/STpSt4JuSlUzzBV/dcXjJe5gywZHe0jAutFhNqjHzHdgyaC4RAd3eYQo+Kl/JOgy2AZrnx+CiPmvOJKe9tAW4k4H087ng8aVE40v4HW/FEbnwIDAQAB +# ENV S3_HOST=minio-public:9000 +# ENV S3_PRIVATE_HOST=minio-private:9001 +# ENV S3_PRIVATE_BUCKET=gwells +# ENV S3_PRIVATE_ROOT_BUCKET=gwells +# ENV S3_PRIVATE_WELL_BUCKET=well-docs +# ENV S3_PRIVATE_AQUIFER_BUCKET=aquifer-docs +# ENV S3_PRIVATE_REGISTRANT_BUCKET=driller-docs +# ENV S3_PUBLIC_ACCESS_KEY=minio +# ENV S3_PUBLIC_SECRET_KEY=minio1234 +# ENV S3_AQUIFER_BUCKET=aquifer-docs +# ENV S3_REGISTRANT_BUCKET=driller-docs +# ENV S3_ROOT_BUCKET=gwells +# ENV S3_WELL_BUCKET=well-docs +# ENV S3_WELL_EXPORT_BUCKET=gwells +# ENV S3_USE_SECURE=0 +# ENV EMAIL_NOTIFICATION_RECIPIENT=sustainment.team@gov.bc.ca +# ENV GEOCODER_ADDRESS_API_BASE=https://geocoder.api.gov.bc.ca/addresses.json? +# ENV LOCAL="true" +# ENV LOAD_FIXTURES="true" # Install dependencies RUN apt -y update && apt -y install git build-essential gdal-bin libgdal-dev From 0843822a18c5950af70ed633436728f567fe62db Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Fri, 15 Nov 2024 09:50:51 -0800 Subject: [PATCH 25/27] Comment check for code changes. --- .github/workflows/pr-open.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index 7a7343bfd..db6171a0d 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -35,7 +35,7 @@ jobs: tests: name: Tests - if: needs.deploys.outputs.triggered == 'true' + # if: needs.deploys.outputs.triggered == 'true' needs: [deploys] uses: ./.github/workflows/.tests.yml with: From 0051f5ab767c8e6fedd34f90f79f69895f9c795e Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Fri, 15 Nov 2024 10:16:33 -0800 Subject: [PATCH 26/27] Add some logs. --- backend/Dockerfile | 98 ++++++++++++++++++++++++---------------------- 1 file changed, 51 insertions(+), 47 deletions(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index 4bf121279..699d6ba9b 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,57 +1,61 @@ FROM python:3.7-slim # Envars -# ENV ENVIRONMENT="local" -# ENV APP_CONTEXT_ROOT=gwells -# ENV CSRF_COOKIE_SECURE="False" -# ENV CUSTOM_GDAL_GEOS="False" -# ENV DATABASE_NAME=gwells -# ENV DATABASE_USER="gwells" -# ENV DATABASE_PASSWORD="test1" -# ENV DATABASE_SERVICE_NAME=gwells -# ENV DJANGO_ADMIN_URL=admin -# ENV DJANGO_DEBUG="true" -# ENV DJANGO_SECRET_KEY=secret -# ENV ENABLE_ADDITIONAL_DOCUMENTS="true" -# ENV ENABLE_AQUIFERS_SEARCH="true" -# ENV GWELLS_SERVICE_HOST="db" -# ENV GWELLS_SERVICE_PORT="5432" -# ENV MINIO_ACCESS_KEY=minio -# ENV MINIO_SECRET_KEY=minio1234 -# ENV PYTHONUNBUFFERED="1" -# ENV SESSION_COOKIE_SECURE="False" -# ENV SSO_AUDIENCE=gwells-4121 -# ENV SSO_CLIENT=gwells-4121 -# ENV SSO_TEST_AUDIENCE=gwells-api-tests-4820 -# ENV SSO_TEST_CLIENT=gwells-api-tests-4820 -# ENV SSO_AUTH_HOST=https://test.loginproxy.gov.bc.ca/auth -# ENV SSO_IDP_HINT="undefined" -# ENV SSO_PORT=0 -# ENV SSO_REALM=standard -# ENV SSO_PUBKEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiFdv9GA83uHuy8Eu9yiZHGGF9j6J8t7FkbcpaN81GDjwbjsIJ0OJO9dKRAx6BAtTC4ubJTBJMPvQER5ikOhIeBi4o25fg61jpgsU6oRZHkCXc9gX6mrjMjbsPaf3/bjjYxP5jicBDJQeD1oRa24+tiGggoQ7k6gDEN+cRYqqNpzC/GQbkUPk8YsgroncEgu8ChMh/3ERsLV2zorchMANUq76max16mHrhtWIQxrb/STpSt4JuSlUzzBV/dcXjJe5gywZHe0jAutFhNqjHzHdgyaC4RAd3eYQo+Kl/JOgy2AZrnx+CiPmvOJKe9tAW4k4H087ng8aVE40v4HW/FEbnwIDAQAB -# ENV S3_HOST=minio-public:9000 -# ENV S3_PRIVATE_HOST=minio-private:9001 -# ENV S3_PRIVATE_BUCKET=gwells -# ENV S3_PRIVATE_ROOT_BUCKET=gwells -# ENV S3_PRIVATE_WELL_BUCKET=well-docs -# ENV S3_PRIVATE_AQUIFER_BUCKET=aquifer-docs -# ENV S3_PRIVATE_REGISTRANT_BUCKET=driller-docs -# ENV S3_PUBLIC_ACCESS_KEY=minio -# ENV S3_PUBLIC_SECRET_KEY=minio1234 -# ENV S3_AQUIFER_BUCKET=aquifer-docs -# ENV S3_REGISTRANT_BUCKET=driller-docs -# ENV S3_ROOT_BUCKET=gwells -# ENV S3_WELL_BUCKET=well-docs -# ENV S3_WELL_EXPORT_BUCKET=gwells -# ENV S3_USE_SECURE=0 -# ENV EMAIL_NOTIFICATION_RECIPIENT=sustainment.team@gov.bc.ca -# ENV GEOCODER_ADDRESS_API_BASE=https://geocoder.api.gov.bc.ca/addresses.json? -# ENV LOCAL="true" -# ENV LOAD_FIXTURES="true" +ENV ENVIRONMENT="local" +ENV APP_CONTEXT_ROOT=gwells +ENV CSRF_COOKIE_SECURE="False" +ENV CUSTOM_GDAL_GEOS="False" +ENV DATABASE_NAME=gwells +ENV DATABASE_USER="gwells" +ENV DATABASE_PASSWORD="test1" +ENV DATABASE_SERVICE_NAME=gwells +ENV DJANGO_ADMIN_URL=admin +ENV DJANGO_DEBUG="true" +ENV DJANGO_SECRET_KEY=secret +ENV ENABLE_ADDITIONAL_DOCUMENTS="true" +ENV ENABLE_AQUIFERS_SEARCH="true" +ENV GWELLS_SERVICE_HOST="db" +ENV GWELLS_SERVICE_PORT="5432" +ENV MINIO_ACCESS_KEY=minio +ENV MINIO_SECRET_KEY=minio1234 +ENV PYTHONUNBUFFERED="1" +ENV SESSION_COOKIE_SECURE="False" +ENV SSO_AUDIENCE=gwells-4121 +ENV SSO_CLIENT=gwells-4121 +ENV SSO_TEST_AUDIENCE=gwells-api-tests-4820 +ENV SSO_TEST_CLIENT=gwells-api-tests-4820 +ENV SSO_AUTH_HOST=https://test.loginproxy.gov.bc.ca/auth +ENV SSO_IDP_HINT="undefined" +ENV SSO_PORT=0 +ENV SSO_REALM=standard +ENV SSO_PUBKEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiFdv9GA83uHuy8Eu9yiZHGGF9j6J8t7FkbcpaN81GDjwbjsIJ0OJO9dKRAx6BAtTC4ubJTBJMPvQER5ikOhIeBi4o25fg61jpgsU6oRZHkCXc9gX6mrjMjbsPaf3/bjjYxP5jicBDJQeD1oRa24+tiGggoQ7k6gDEN+cRYqqNpzC/GQbkUPk8YsgroncEgu8ChMh/3ERsLV2zorchMANUq76max16mHrhtWIQxrb/STpSt4JuSlUzzBV/dcXjJe5gywZHe0jAutFhNqjHzHdgyaC4RAd3eYQo+Kl/JOgy2AZrnx+CiPmvOJKe9tAW4k4H087ng8aVE40v4HW/FEbnwIDAQAB +ENV S3_HOST=minio-public:9000 +ENV S3_PRIVATE_HOST=minio-private:9001 +ENV S3_PRIVATE_BUCKET=gwells +ENV S3_PRIVATE_ROOT_BUCKET=gwells +ENV S3_PRIVATE_WELL_BUCKET=well-docs +ENV S3_PRIVATE_AQUIFER_BUCKET=aquifer-docs +ENV S3_PRIVATE_REGISTRANT_BUCKET=driller-docs +ENV S3_PUBLIC_ACCESS_KEY=minio +ENV S3_PUBLIC_SECRET_KEY=minio1234 +ENV S3_AQUIFER_BUCKET=aquifer-docs +ENV S3_REGISTRANT_BUCKET=driller-docs +ENV S3_ROOT_BUCKET=gwells +ENV S3_WELL_BUCKET=well-docs +ENV S3_WELL_EXPORT_BUCKET=gwells +ENV S3_USE_SECURE=0 +ENV EMAIL_NOTIFICATION_RECIPIENT=sustainment.team@gov.bc.ca +ENV GEOCODER_ADDRESS_API_BASE=https://geocoder.api.gov.bc.ca/addresses.json? +ENV LOCAL="true" +ENV LOAD_FIXTURES="true" + +RUN echo "before deps install" # Install dependencies RUN apt -y update && apt -y install git build-essential gdal-bin libgdal-dev +RUN echo "before deps install" + ENV PATH="/usr/bin/python3:${PATH}" WORKDIR /app From 02cea69c6a2946b0733edc969b2add10a8f9739d Mon Sep 17 00:00:00 2001 From: "Fergus MacConnell WLRS:EX" Date: Tue, 19 Nov 2024 09:55:05 -0800 Subject: [PATCH 27/27] Comment out dockerfile env vars. --- .github/workflows/pr-open.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index db6171a0d..1234c17a4 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -16,7 +16,7 @@ jobs: strategy: matrix: # package: [database, backend, frontend, minio] - package: [database] + package: [database, backend] timeout-minutes: 20 steps: - uses: bcgov-nr/action-builder-ghcr@v2.2.0