From 101424f2d152dd850887cbe2c28574c30558511d Mon Sep 17 00:00:00 2001 From: Kuan Fan <31664961+kuanfandevops@users.noreply.github.com> Date: Tue, 11 Jun 2024 11:56:13 -0700 Subject: [PATCH] Pull request to merge release-2.19.0 to master (#2885) * remove pr build and update pr number * update pr number and remove template * fix: updated summary balance logic, removed schedule b totals due to balance discrepancy with backend (#2889) Co-authored-by: Your Name * Bump jinja2 from 3.1.3 to 3.1.4 in /backend (#2886) Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4) --- updated-dependencies: - dependency-name: jinja2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * --- (#2887) updated-dependencies: - dependency-name: requests dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * remove artifactory user for build process * not to use artifactory for frontend build --------- Signed-off-by: dependabot[bot] Co-authored-by: Alex Zorkin <47334977+AlexZorkin@users.noreply.github.com> Co-authored-by: Your Name Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/branch-deploy-template.yaml | 142 ----------- .github/workflows/build-template.yaml | 233 ------------------ .github/workflows/dev-release.yaml | 8 +- .github/workflows/dev-test-jan-release.yaml | 130 ---------- .github/workflows/pr-dev-cicd.yaml | 54 ---- .../workflows/pr-dev-database-template.yaml | 69 ------ .github/workflows/pr-dev-deploy-template.yaml | 124 ---------- .github/workflows/pr-teardown.yaml | 41 --- .github/workflows/tfrs-release.yaml | 6 +- .pipeline/lib/config.js | 4 +- backend/requirements.txt | 4 +- frontend/.s2i/bin/assemble | 4 +- .../ComplianceReportingEditContainer.js | 2 +- .../components/SchedulesPage.js | 6 +- .../schedule_summary/Part3SummaryContainer.js | 12 +- .../templates/backend/backend-bc.yaml | 11 - scripts/import-data.sh | 2 +- 17 files changed, 26 insertions(+), 826 deletions(-) delete mode 100644 .github/workflows/branch-deploy-template.yaml delete mode 100644 .github/workflows/build-template.yaml delete mode 100644 .github/workflows/dev-test-jan-release.yaml delete mode 100644 .github/workflows/pr-dev-cicd.yaml delete mode 100644 .github/workflows/pr-dev-database-template.yaml delete mode 100644 .github/workflows/pr-dev-deploy-template.yaml delete mode 100644 .github/workflows/pr-teardown.yaml diff --git a/.github/workflows/branch-deploy-template.yaml b/.github/workflows/branch-deploy-template.yaml deleted file mode 100644 index 4feae06ab..000000000 --- a/.github/workflows/branch-deploy-template.yaml +++ /dev/null @@ -1,142 +0,0 @@ -name: Branch Deploy Template - -on: - workflow_call: - inputs: - branch-name: # sample value: release-2.9.0 or main-release-jan-2024 - required: true - type: string - # suffix is in format of -dev, -test, -dev-jan, test-jan, -dev-1923, dev-jan-1923 - suffix: - required: true - type: string - # env-name is in format of dev, test - env-name: - required: true - type: string - # database-service-host-name, sample tfrs-spilo, tfrs-spilo-jan, tfrs-spilo-dev-1988 - database-service-host-name: - required: true - type: string - # this virtual host name, sample tfrs-jan-vhost - rabbitmq-vhost: - required: true - type: string - secrets: - tools-namespace: - required: true - namespace: - required: true - openshift-server: - required: true - openshift-token: - required: true - -jobs: - - deploy: - - name: Deploy tfrs - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3 - with: - ref: ${{ inputs.branch-name }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Deploy tfrs-frontend - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-frontend:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-frontend:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-frontend - helm status -n ${{ secrets.namespace }} tfrs-frontend${{ inputs.suffix }} - helm upgrade --install \ - --set frontendImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-name }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-frontend${{ inputs.suffix }} . - - - name: Deploy tfrs-backend - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-backend:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-backend:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-backend - helm status -n ${{ secrets.namespace }} tfrs-backend${{ inputs.suffix }} - helm upgrade --install \ - --set backendImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-Name }} \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=${{ inputs.rabbitmq-vhost }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-backend${{ inputs.suffix }} . - - - name: Deploy tfrs-celery - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-celery:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-celery:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-celery - helm status -n ${{ secrets.namespace }} tfrs-celery${{ inputs.suffix }} - helm upgrade --install \ - --set celeryImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-Name }} \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=${{ inputs.rabbitmq-vhost }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-celery${{ inputs.suffix }} . - - - name: Deploy tfrs-scan-handler - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-scan-handler:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-scan-handler:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-scan-handler - helm status -n ${{ secrets.namespace }} tfrs-scan-handler${{ inputs.suffix }} - helm upgrade --install \ - --set scanHandlerImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-Name }} \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=${{ inputs.rabbitmq-vhost }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-scan-handler${{ inputs.suffix }} . - - - name: Deploy tfrs-scan-coordinator - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-scan-coordinator:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-scan-coordinator:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-scan-coordinator - helm status -n ${{ secrets.namespace }} tfrs-scan-coordinator${{ inputs.suffix }} - helm upgrade --install \ - --set scanCoordinatorImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-Name }} \ - --set rabbitmqVHost=${{ inputs.rabbitmq-vhost }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-scan-coordinator${{ inputs.suffix }} . - - - name: Deploy tfrs-notification-server - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-notification-server:build-${{ inputs.branch-name }} ${{ secrets.namespace }}/tfrs-notification-server:${{ inputs.env-name }}-${{ inputs.branch-name }} - cd charts/tfrs-apps/charts/tfrs-notification-server - helm status -n ${{ secrets.namespace }} tfrs-notification-server${{ inputs.suffix }} - helm upgrade --install \ - --set notificationServerImageTagName=${{ inputs.env-name }}-${{ inputs.branch-name }} \ - --set suffix=${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=${{ inputs.env-Name }} \ - --set rabbitmqVHost=${{ inputs.rabbitmq-vhost }} \ - -n ${{ secrets.namespace }} -f ./values${{ inputs.suffix }}.yaml tfrs-notification-server${{ inputs.suffix }} . \ No newline at end of file diff --git a/.github/workflows/build-template.yaml b/.github/workflows/build-template.yaml deleted file mode 100644 index 2111a94e1..000000000 --- a/.github/workflows/build-template.yaml +++ /dev/null @@ -1,233 +0,0 @@ - -# This template supports both pr build and branch build -name: Build Template - -on: - workflow_call: - inputs: - # when build branch, the sample value is -main-release-jan-2024 - # when build pull request, the sample value is -jan-2024 - suffix: - required: true - type: string - # when build branch, the sample value is main-release-jan-2024 - # when build pull request, the sample value is refs/pull/2024/head - checkout-ref: - required: true - type: string - secrets: - tools-namespace: - required: true - openshift-server: - required: true - openshift-token: - required: true - -env: - GIT_URL: https://github.com/bcgov/tfrs.git - -jobs: - - build-backend: - - name: Build TFRS Backend on Openshift - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build tfrs Backend - run: | - cd openshift-v4/templates/backend - oc process -f ./backend-bc.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-backend-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-backend-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} - - build-frontend: - - name: Build TFRS Frontend on Openshift - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build TFRS Frontend - run: | - cd openshift-v4/templates/frontend - oc process -f ./frontend-bc-docker.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-frontend-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-frontend-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} - - build-celery: - - name: Build TFRS Celery on Openshift - needs: [build-frontend, build-backend] - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build TFRS Celery - run: | - cd openshift-v4/templates/celery - pwd - ls -l - oc process -f ./celery-bc-docker.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-celery-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-celery-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} - - build-scan-coordinator: - - name: Build TFRS Scan Coordinator on Openshift - needs: [build-frontend, build-backend] - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build TFRS Scan Coordinator - run: | - cd openshift-v4/templates/scan-coordinator - oc process -f ./scan-coordinator-bc.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-scan-coordinator-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-scan-coordinator-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} - - build-scan-handler: - - name: Build TFRS Scan Handler on Openshift - needs: [build-scan-coordinator, build-celery] - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build TFRS Scan-Handler - run: | - cd openshift-v4/templates/scan-handler - oc process -f ./scan-handler-bc-docker.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-scan-handler-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-scan-handler-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} - - build-notification-server: - - name: Build TFRS Notification Server on Openshift - needs: [build-scan-coordinator, build-celery] - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3.5.3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Build TFRS Notification Server - run: | - cd openshift-v4/templates/notification - oc process -f ./notification-server-bc.yaml NAME=tfrs \ - SUFFIX=-build${{ inputs.suffix}} \ - VERSION=build${{ inputs.suffix }} \ - GIT_URL=${{ env.GIT_URL }} \ - GIT_REF=${{ inputs.checkout-ref }} \ - | oc apply --wait=true -f - -n ${{ secrets.tools-namespace }} - oc cancel-build bc/tfrs-notification-server-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} || true - oc start-build --wait=true tfrs-notification-server-build${{ inputs.suffix}} -n ${{ secrets.tools-namespace }} \ No newline at end of file diff --git a/.github/workflows/dev-release.yaml b/.github/workflows/dev-release.yaml index ac8da41f9..123cc43bf 100644 --- a/.github/workflows/dev-release.yaml +++ b/.github/workflows/dev-release.yaml @@ -1,11 +1,11 @@ ## For each release, the value of name, branches, RELEASE_NAME and PR_NUMBER need to be adjusted accordingly ## For each release, update lib/config.js: version and releaseBranch -name: TFRS Dev release-2.18.0 +name: TFRS Dev release-2.19.0 on: push: - branches: [ release-2.18.0 ] + branches: [ release-2.19.0 ] paths: - frontend/** - backend/** @@ -15,8 +15,8 @@ on: env: ## The pull request number of the Tracking pull request to merge the release branch to main ## Also remember to update the version in .pipeline/lib/config.js - PR_NUMBER: 2860 - RELEASE_NAME: release-2.18.0 + PR_NUMBER: 2885 + RELEASE_NAME: release-2.19.0 concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/dev-test-jan-release.yaml b/.github/workflows/dev-test-jan-release.yaml deleted file mode 100644 index 21704738f..000000000 --- a/.github/workflows/dev-test-jan-release.yaml +++ /dev/null @@ -1,130 +0,0 @@ - -## For each release, the value of name, branches, RELEASE_NAME and PR_NUMBER need to be adjusted accordingly -## For each release, update lib/config.js: version and releaseBranch - -name: TFRS Dev/Test Jan Release - -on: - push: - branches: [ main-release-jan-2024 ] - # paths: - # - frontend/** - # - backend/** - # - security-scan/** - workflow_dispatch: - branches: - - main-release-jan-2024 - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - - unit-test: - - name: Run Backend Unit Tests - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - name: Checkout - uses: actions/checkout@v3.5.3 - - - name: Run coverage report for django tests - uses: kuanfandevops/django-test-action@itvr-django-test - continue-on-error: true - with: - settings-dir-path: "backend/api" - requirements-file: "backend/requirements.txt" - managepy-dir: backend - - lint: - - name: Linting - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - name: Checkout - uses: actions/checkout@v3.5.3 - - - name: Frontend Linting - continue-on-error: true - run: | - cd frontend - pwd - npm install - npm run lint - - - name: Backend linting - uses: github/super-linter/slim@v4 - continue-on-error: true - env: - DEFAULT_BRANCH: ${{ github.ref_name }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - FILTER_REGEX_INCLUDE: .*backend/.*.py - VALIDATE_PYTHON_PYLINT: true - LOG_LEVEL: WARN - - # when build branch, the suffix sample is -main-release-jan-2024 - # the checkout-ref sample is main-release-jan-2024 - build: - name: Build - needs: [unit-test, lint] - uses: ./.github/workflows/build-template.yaml - with: - suffix: -${{ github.ref_name }} - checkout-ref: ${{ github.ref_name }} - secrets: - tools-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} - - # The suffix is -dev-jan, the deployment names are tfrs-backend-dev-jan, tfrs-frontend-dev-jan and etc.. - # The image tags are tfrs-backend:dev-main-release-jan-2024, tfrs-frontend:dev-main-release-jan-2024 and etc.. - deploy-on-dev: - name: Deploy on Dev - needs: build - uses: ./.github/workflows/branch-deploy-template.yaml - with: - branch-name: ${{ github.ref_name }} - suffix: -dev-jan - env-name: dev - database-service-host-name: tfrs-crunchy-dev-pgbouncer - rabbitmq-vhost: tfrs-jan-vhost - secrets: - tools-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-dev - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} - - approval-test-deployment: - name: Approval deployment on Test - runs-on: ubuntu-latest - needs: deploy-on-dev - timeout-minutes: 60 - steps: - - name: Ask for approval for TFRS Test deployment - uses: trstringer/manual-approval@v1.6.0 - with: - secret: ${{ github.TOKEN }} - approvers: AlexZorkin,emi-hi,tim738745,kuanfandevops,jig-patel,prv-proton,JulianForeman - minimum-approvals: 1 - issue-title: "TFRS main-release-jan-2024 Test Deployment" - - deploy-on-test: - name: Deploy on Test - needs: approval-test-deployment - uses: ./.github/workflows/branch-deploy-template.yaml - with: - branch-name: main-release-jan-2024 - suffix: -test-jan - env-name: test - database-service-host-name: tfrs-crunchy-test-pgbouncer - rabbitmq-vhost: tfrs-jan-vhost - secrets: - tools-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-test - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/pr-dev-cicd.yaml b/.github/workflows/pr-dev-cicd.yaml deleted file mode 100644 index ce6128835..000000000 --- a/.github/workflows/pr-dev-cicd.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# Please refer to ./readme.md for how to build single pull request - -# Update this workflow name per pull request -name: TFRS Dev Jan PR CICD -on: - workflow_dispatch: - pull_request: - types: [opened, edited, synchronize, reopened] - branches: - - 'main-release-jan-2024' - -jobs: - - setup-database: - if: endsWith( github.event.pull_request.title, 'build-on-dev' ) - uses: ./.github/workflows/pr-dev-database-template.yaml - with: - pr-number: ${{ github.event.pull_request.number }} - dev-suffix: -jan-${{ github.event.pull_request.number }} - secrets: - dev-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-dev - tfrs-dev-username: ${{ secrets.TFRS_DEV_USERNAME }} - tfrs-dev-password: ${{ secrets.TFRS_DEV_PASSWORD }} - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} - - # when build pull reuqest, the suffix sample is -jan-1234 - # the checkout-ref is in the format of refs/pull/1234/head - build: - if: endsWith( github.event.pull_request.title, 'build-on-dev' ) - name: Build Pull Request - uses: ./.github/workflows/build-template.yaml - with: - suffix: -jan-${{ github.event.pull_request.number }} - checkout-ref: refs/pull/${{ github.event.pull_request.number }}/head - secrets: - tools-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} - - deploy: - if: endsWith( github.event.pull_request.title, 'build-on-dev' ) - needs: [setup-database, build] - uses: ./.github/workflows/pr-dev-deploy-template.yaml - with: - suffix: -jan-${{ github.event.pull_request.number }} - checkout-ref: refs/pull/${{ github.event.pull_request.number }}/head - database-service-host-name: tfrs-spilo-jan-${{ github.event.pull_request.number }} - secrets: - tools-namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - namespace: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-dev - openshift-server: ${{ secrets.OPENSHIFT_SERVER }} - openshift-token: ${{ secrets.OPENSHIFT_TOKEN }} - \ No newline at end of file diff --git a/.github/workflows/pr-dev-database-template.yaml b/.github/workflows/pr-dev-database-template.yaml deleted file mode 100644 index 6205e8f62..000000000 --- a/.github/workflows/pr-dev-database-template.yaml +++ /dev/null @@ -1,69 +0,0 @@ -name: PR Dev Database Template - -on: - workflow_call: - inputs: - # pull request number - pr-number: - required: true - type: string - # the suffix will be appended to tfrs-spilo, same values: -1234, -jan-1242 - dev-suffix: - required: true - type: string - secrets: - dev-namespace: - required: true - tfrs-dev-username: - required: true - tfrs-dev-password: - required: true - openshift-server: - required: true - openshift-token: - required: true - -jobs: - - database: - - name: Start Database - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3 - with: - ref: refs/pull/${{ inputs.pr-number }}/head - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.dev-namespace }} - - - name: Setup Database - shell: bash {0} - run: | - cd charts/tfrs-spilo - helm dependency build - helm status -n ${{ secrets.dev-namespace }} tfrs-spilo${{ inputs.dev-suffix }} - if [ $? -eq 0 ]; then - echo "tfrs-spilo${{ inputs.dev-suffix }} exists already" - else - echo "Installing tfrs-spilo${{ inputs.dev-suffix }}" - helm install -n ${{ secrets.dev-namespace }} -f ./values-dev.yaml --wait tfrs-spilo${{ inputs.dev-suffix }} . - oc -n ${{ secrets.dev-namespace }} wait --for=condition=Ready pod/tfrs-spilo${{ inputs.dev-suffix }}-0 - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "create user \"${{ secrets.tfrs-dev-username }}\" WITH PASSWORD '${{ secrets.tfrs-dev-password }}'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "create database tfrs owner \"${{ secrets.tfrs-dev-username }}\" ENCODING 'UTF8' LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "ALTER SYSTEM SET log_filename='postgresql-%H.log'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "ALTER SYSTEM SET log_connections='off'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "ALTER SYSTEM SET log_disconnections='off'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "ALTER SYSTEM SET log_checkpoints='off'" || true - oc -n ${{ secrets.dev-namespace }} exec tfrs-spilo${{ inputs.dev-suffix }}-0 -- psql -c "select pg_reload_conf()" || true - fi - diff --git a/.github/workflows/pr-dev-deploy-template.yaml b/.github/workflows/pr-dev-deploy-template.yaml deleted file mode 100644 index 987a8a9e9..000000000 --- a/.github/workflows/pr-dev-deploy-template.yaml +++ /dev/null @@ -1,124 +0,0 @@ - - -name: PR Dev Deploy Template - -on: - workflow_call: - inputs: - # suffix is in format of -jan-1923 - suffix: - required: true - type: string - # when build pull request, the sample value is refs/pull/2023/head - checkout-ref: - required: true - type: string - # database-service-host-name, sample tfrs-spilo-dev-1988 - database-service-host-name: - required: true - type: string - secrets: - tools-namespace: - required: true - namespace: - required: true - openshift-server: - required: true - openshift-token: - required: true - -jobs: - - deploy: - - name: Deploy tfrs - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - - name: Check out repository - uses: actions/checkout@v3 - with: - ref: ${{ inputs.checkout-ref }} - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.openshift-server }} - openshift_token: ${{ secrets.openshift-token }} - insecure_skip_tls_verify: true - namespace: ${{ secrets.tools-namespace }} - - - name: Create vhost on Rabbitmq Dev - shell: bash {0} - run: | - oc -n ${{ secrets.namespace }} exec tfrs-rabbitmq-0 -- rabbitmqctl add_vhost tfrs-dev${{ inputs.suffix }}-vhost - oc -n ${{ secrets.namespace }} exec tfrs-rabbitmq-0 -- rabbitmqctl set_permissions --vhost tfrs-dev${{ inputs.suffix }}-vhost tfrs ".*" ".*" ".*" - - - name: Deploy tfrs-frontend - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-frontend:build${{ inputs.suffix }} ${{ secrets.namespace }}/tfrs-frontend:dev${{ inputs.suffix }} - cd charts/tfrs-apps/charts/tfrs-frontend - helm upgrade --install \ - --set frontendImageTagName=dev${{ inputs.suffix }} \ - --set suffix=-dev${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=dev \ - -n ${{ secrets.namespace }} -f ./values-dev-jan.yaml tfrs-frontend-dev${{ inputs.suffix }} . - - - name: Deploy tfrs-backend - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-backend:build${{ inputs.suffix }} ${{ secrets.namespace }}/tfrs-backend:dev${{ inputs.suffix }} - cd charts/tfrs-apps/charts/tfrs-backend - helm upgrade --install \ - --set backendImageTagName=dev${{ inputs.suffix }} \ - --set suffix=-dev${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=dev \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=tfrs-dev${{ inputs.suffix }}-vhost \ - -n ${{ secrets.namespace }} -f ./values-dev-jan.yaml tfrs-backend-dev${{ inputs.suffix }} . - - - name: Deploy tfrs-celery - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-celery:build${{ inputs.suffix }} ${{ secrets.namespace }}/tfrs-celery:dev${{ inputs.suffix }} - cd charts/tfrs-apps/charts/tfrs-celery - helm upgrade --install \ - --set celeryImageTagName=dev${{ inputs.suffix }} \ - --set suffix=-dev${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=dev \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=tfrs-dev${{ inputs.suffix }}-vhost \ - -n ${{ secrets.namespace }} -f ./values-dev-jan.yaml tfrs-celery-dev${{ inputs.suffix }} . - - - name: Deploy tfrs-scan-handler - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-scan-handler:build${{ inputs.suffix }} ${{ secrets.namespace }}/tfrs-scan-handler:dev${{ inputs.suffix }} - cd charts/tfrs-apps/charts/tfrs-scan-handler - helm upgrade --install \ - --set scanHandlerImageTagName=dev${{ inputs.suffix }} \ - --set suffix=-dev${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=dev \ - --set databaseServiceHostName=${{ inputs.database-service-host-name }} \ - --set rabbitmqVHost=tfrs-dev${{ inputs.suffix }}-vhost \ - -n ${{ secrets.namespace }} -f ./values-dev-jan.yaml tfrs-scan-handler-dev${{ inputs.suffix }} . - - - name: Deploy tfrs-scan-coordinator - shell: bash {0} - run: | - oc tag ${{ secrets.tools-namespace }}/tfrs-scan-coordinator:build${{ inputs.suffix}} ${{ secrets.namespace }}/tfrs-scan-coordinator:dev${{ inputs.suffix}} - cd charts/tfrs-apps/charts/tfrs-scan-coordinator - helm upgrade --install \ - --set scanCoordinatorImageTagName=dev${{ inputs.suffix}} \ - --set suffix=-dev${{ inputs.suffix }} \ - --set namespace=${{ secrets.namespace }} \ - --set envName=dev \ - --set rabbitmqVHost=tfrs-dev${{ inputs.suffix }}-vhost \ - -n ${{ secrets.namespace }} -f ./values-dev-jan.yaml tfrs-scan-coordinator-dev${{ inputs.suffix }} . diff --git a/.github/workflows/pr-teardown.yaml b/.github/workflows/pr-teardown.yaml deleted file mode 100644 index 035362386..000000000 --- a/.github/workflows/pr-teardown.yaml +++ /dev/null @@ -1,41 +0,0 @@ -name: TFRS Dev Jan PR Teardown - -on: - pull_request: - types: closed - branches: - - 'main-release-jan-2024' - -env: - TOOLS_NAMESPACE: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-tools - DEV_NAMESPACE: ${{ secrets.OPENSHIFT_NAMESPACE_PLATE }}-dev - -jobs: - - teardown-on-dev: - if: endsWith( github.event.pull_request.title, 'build-on-dev' ) - name: Tear TFRS down on Dev - runs-on: ubuntu-latest - timeout-minutes: 20 - - steps: - - - name: Log in to Openshift - uses: redhat-actions/oc-login@v1.3 - with: - openshift_server_url: ${{ secrets.OPENSHIFT_SERVER }} - openshift_token: ${{ secrets.OPENSHIFT_TOKEN }} - insecure_skip_tls_verify: true - namespace: ${{ env.TOOLS_NAMESPACE }} - - - name: Undeploy on Dev - shell: bash {0} - run: | - oc -n ${{ env.DEV_NAMESPACE }} exec tfrs-rabbitmq-0 -- rabbitmqctl delete_vhost tfrs-dev-jan-${{ github.event.pull_request.number }}-vhost - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-spilo-jan-${{ github.event.pull_request.number }} || true - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-backend-dev-jan-${{ github.event.pull_request.number }} || true - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-frontend-dev-jan-${{ github.event.pull_request.number }} || true - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-celery-dev-jan-${{ github.event.pull_request.number }} || true - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-scan-handler-dev-jan-${{ github.event.pull_request.number }} || true - helm -n ${{ env.DEV_NAMESPACE }} uninstall tfrs-scan-coordinator-dev-jan-${{ github.event.pull_request.number }} || true - diff --git a/.github/workflows/tfrs-release.yaml b/.github/workflows/tfrs-release.yaml index b88bb61a4..71c666580 100644 --- a/.github/workflows/tfrs-release.yaml +++ b/.github/workflows/tfrs-release.yaml @@ -1,7 +1,7 @@ ## For each release, the value of name, branches, RELEASE_NAME and PR_NUMBER need to be adjusted accordingly ## For each release, update lib/config.js: version and releaseBranch -name: TFRS release-2.18.0 +name: TFRS release-2.19.0 on: workflow_dispatch: @@ -10,8 +10,8 @@ on: env: ## The pull request number of the Tracking pull request to merge the release branch to main ## Also remember to update the version in .pipeline/lib/config.js - PR_NUMBER: 2860 - RELEASE_NAME: release-2.18.0 + PR_NUMBER: 2885 + RELEASE_NAME: release-2.19.0 concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.pipeline/lib/config.js b/.pipeline/lib/config.js index 5afaffb65..e2d91f9b5 100644 --- a/.pipeline/lib/config.js +++ b/.pipeline/lib/config.js @@ -1,7 +1,7 @@ 'use strict'; const options= require('@bcgov/pipeline-cli').Util.parseArguments() const changeId = options.pr //aka pull-request -const version = '2.18.0' +const version = '2.19.0' const name = 'tfrs' const ocpName = 'apps.silver.devops' @@ -13,7 +13,7 @@ options.git.repository='tfrs' const phases = { build: { namespace:'0ab226-tools' , name: `${name}`, phase: 'build' , changeId:changeId, suffix: `-build-${changeId}` , instance: `${name}-build-${changeId}` , version:`${version}-${changeId}`, tag:`build-${version}-${changeId}`, - releaseBranch: 'release-2.18.0' + releaseBranch: 'release-2.19.0' }, dev: {namespace:'0ab226-dev' , name: `${name}`, phase: 'dev' , changeId:changeId, suffix: `-dev` , instance: `${name}-dev` , version:`${version}`, tag:`dev-${version}`, dbServiceName: 'tfrs-spilo', diff --git a/backend/requirements.txt b/backend/requirements.txt index e4f9b9f65..0b2952b25 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -27,7 +27,7 @@ gunicorn==20.1.0 idna==3.4 importlib-metadata==4.8.3 itypes==1.2.0 -Jinja2==3.1.3 +Jinja2==3.1.4 kombu==4.6.11 Markdown==2.6.8 MarkupSafe==2.1.1 @@ -41,7 +41,7 @@ python-crontab==2.6.0 python-dateutil==2.8.2 python-dotenv==0.21.0 pytz==2022.5 -requests==2.31.0 +requests==2.32.0 six==1.16.0 sqlparse==0.4.4 typing_extensions==4.4.0 diff --git a/frontend/.s2i/bin/assemble b/frontend/.s2i/bin/assemble index 98ecacd36..dbdd95101 100755 --- a/frontend/.s2i/bin/assemble +++ b/frontend/.s2i/bin/assemble @@ -86,8 +86,8 @@ if [ "$NODE_ENV" != "production" ]; then else echo "---> Installing all dependencies" - npm config set registry https://artifacts.developer.gov.bc.ca/artifactory/api/npm/npm-remote/ - curl -u $ARTIFACTORY_USER:$ARTIFACTORY_PASSWORD https://artifacts.developer.gov.bc.ca/artifactory/api/npm/auth >> ~/.npmrc + # npm config set registry https://artifacts.developer.gov.bc.ca/artifactory/api/npm/npm-remote/ + # curl -u $ARTIFACTORY_USER:$ARTIFACTORY_PASSWORD https://artifacts.developer.gov.bc.ca/artifactory/api/npm/auth >> ~/.npmrc NODE_ENV=development npm install #do not fail when there is no build script diff --git a/frontend/src/compliance_reporting/ComplianceReportingEditContainer.js b/frontend/src/compliance_reporting/ComplianceReportingEditContainer.js index 7519c01e6..f8822441a 100644 --- a/frontend/src/compliance_reporting/ComplianceReportingEditContainer.js +++ b/frontend/src/compliance_reporting/ComplianceReportingEditContainer.js @@ -646,7 +646,7 @@ class ComplianceReportingEditContainer extends Component { : null }

, -

+

{organizationAddress && atLeastOneAttorneyAddressFieldExists(organizationAddress) && this.props.loggedInUser.isGovernmentUser ? ( <> Company Profile, EDRMS Record #: {item.organization.edrmsRecord || ''} diff --git a/frontend/src/compliance_reporting/components/SchedulesPage.js b/frontend/src/compliance_reporting/components/SchedulesPage.js index 83bbeb45b..4a61fdc41 100644 --- a/frontend/src/compliance_reporting/components/SchedulesPage.js +++ b/frontend/src/compliance_reporting/components/SchedulesPage.js @@ -80,13 +80,13 @@ const SchedulesPage = props => ( totals={props.totals} /> } - - {props.scheduleType === 'schedule-b' && + {/* Removed June 6 2024 due to balance discrepancy with backend */} + {/* {props.scheduleType === 'schedule-b' && - } + } */}

diff --git a/frontend/src/schedule_summary/Part3SummaryContainer.js b/frontend/src/schedule_summary/Part3SummaryContainer.js index cd72717fd..f872d09f7 100644 --- a/frontend/src/schedule_summary/Part3SummaryContainer.js +++ b/frontend/src/schedule_summary/Part3SummaryContainer.js @@ -427,10 +427,14 @@ function Part3SupplementalData ( function SupplementalComplianceUnitData (complianceReport, lastAcceptedOffset, part3) { let availableBalance = Number(Math.min(complianceReport.maxCreditOffsetExcludeReserved, complianceReport.maxCreditOffset)) availableBalance += complianceReport.totalPreviousCreditReductions - // handle the scenario wherein previous balance changed w.r.t initial report - if (availableBalance !== complianceReport.maxCreditOffsetExcludeReserved && lastAcceptedOffset === null) { - availableBalance = complianceReport.maxCreditOffsetExcludeReserved - } + + // Removed June 6 2024 - logic did not match business requirements, left for posterity + // Handle the scenario wherein previous balance changed w.r.t initial report + // if (availableBalance !== complianceReport.maxCreditOffsetExcludeReserved && lastAcceptedOffset === null) { + // availableBalance = complianceReport.maxCreditOffsetExcludeReserved + // console.log('Updated available balance due to previous balance change:', availableBalance) + // } + let totalPreviousValidations = 0 let totalPreviousReductions = 0 const totalPreviousComplianceUnits = Number(complianceReport.deltas[0].snapshot.data.summary.lines['25']) diff --git a/openshift-v4/templates/backend/backend-bc.yaml b/openshift-v4/templates/backend/backend-bc.yaml index 866735857..59c7abdd2 100644 --- a/openshift-v4/templates/backend/backend-bc.yaml +++ b/openshift-v4/templates/backend/backend-bc.yaml @@ -66,17 +66,6 @@ objects: from: kind: ImageStreamTag name: python-39:1-74 - env: - - name: ARTIFACTORY_USER - valueFrom: - secretKeyRef: - name: artifacts-tfrs-artifactory-service-account-wofwpt - key: username - - name: ARTIFACTORY_PASSWORD - valueFrom: - secretKeyRef: - name: artifacts-tfrs-artifactory-service-account-wofwpt - key: password forcePull: true noCache: true output: diff --git a/scripts/import-data.sh b/scripts/import-data.sh index 8a1168e7f..31ee6abc1 100644 --- a/scripts/import-data.sh +++ b/scripts/import-data.sh @@ -32,7 +32,7 @@ echo # prod variables if [ $1 = "prod" ]; then project_name='0ab226-prod' - pod_name='tfrs-spilo-0' + pod_name='tfrs-crunchy-prod-tfrs-trg4-0' env='prod' elif [ $1 = "dev" ]; then project_name='0ab226-dev'