Merge pull request #2450 from bcgov/chore/release #3140
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is the main workflow which will orchestrate the other workflows: | |
name: main | |
on: | |
push: | |
branches: [develop, main] | |
pull_request: | |
branches: [develop, main] | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
PGUSER: postgres | |
jobs: | |
check-nx-affected: | |
runs-on: ubuntu-latest | |
outputs: | |
NX_AFFECTED_E2E: ${{steps.check-nx-affected.outputs.NX_AFFECTED_E2E}} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: dev env setup | |
uses: ./.github/actions/dev-env-setup | |
- name: check nx affected target e2e:ci projects and save output | |
id: check-nx-affected | |
run: | | |
NX_AFFECTED_E2E=$(yarn nx show projects --affected --with-target e2e:ci --base=origin/develop) | |
echo "NX_AFFECTED_E2E="$NX_AFFECTED_E2E"" >> "$GITHUB_OUTPUT" | |
working-directory: ./bciers | |
shell: bash | |
build-administration: | |
uses: ./.github/workflows/build-administration.yaml | |
build-backend: | |
uses: ./.github/workflows/build-backend.yaml | |
build-coam: | |
uses: ./.github/workflows/build-coam.yaml | |
build-dashboard: | |
uses: ./.github/workflows/build-dashboard.yaml | |
build-dashboard-e2e: | |
uses: ./.github/workflows/build-dashboard-e2e.yaml | |
build-registration: | |
uses: ./.github/workflows/build-registration.yaml | |
build-registration1: | |
uses: ./.github/workflows/build-registration1.yaml | |
build-reporting: | |
uses: ./.github/workflows/build-reporting.yaml | |
test-code: | |
needs: [check-nx-affected] | |
uses: ./.github/workflows/test-code.yaml | |
test-backend: | |
needs: [build-backend, check-nx-affected] | |
uses: ./.github/workflows/test-backend.yaml | |
secrets: inherit | |
test-administration-e2e: | |
needs: | |
[ | |
build-backend, | |
build-dashboard-e2e, | |
build-administration, | |
check-nx-affected, | |
] | |
uses: ./.github/workflows/test-nx-project-e2e.yaml | |
with: | |
image_url: "ghcr.io/bcgov/cas-admin-frontend" | |
is_nx_affected: ${{contains(needs.check-nx-affected.outputs.NX_AFFECTED_E2E, 'administration') || github.ref_name == 'develop' || github.ref_name == 'main' || github.head_ref == 'develop' || github.head_ref == 'main'}} | |
nx_app_port: 4001 | |
nx_project: administration | |
secrets: inherit | |
test-coam-e2e: | |
needs: [build-backend, build-dashboard-e2e, build-coam, check-nx-affected] | |
uses: ./.github/workflows/test-nx-project-e2e.yaml | |
with: | |
image_url: "ghcr.io/bcgov/cas-coam-frontend" | |
is_nx_affected: ${{contains(needs.check-nx-affected.outputs.NX_AFFECTED_E2E, 'coam') || github.ref_name == 'develop' || github.ref_name == 'main' || github.head_ref == 'develop' || github.head_ref == 'main'}} | |
nx_app_port: 7000 | |
nx_project: coam | |
secrets: inherit | |
test-dashboard-e2e: | |
needs: | |
[ | |
build-administration, | |
build-backend, | |
build-coam, | |
build-dashboard-e2e, | |
build-registration, | |
build-reporting, | |
check-nx-affected, | |
] | |
uses: ./.github/workflows/test-nx-project-e2e.yaml | |
with: | |
docker_compose_file: "docker-compose-bciers-apps.yaml" | |
image_url: "ghcr.io/bcgov/cas-dash-frontend" | |
is_nx_affected: ${{contains(needs.check-nx-affected.outputs.NX_AFFECTED_E2E, 'dashboard') || github.ref_name == 'develop' || github.ref_name == 'main' || github.head_ref == 'develop' || github.head_ref == 'main'}} | |
nx_project: dashboard | |
secrets: inherit | |
test-registration-e2e: | |
needs: | |
[ | |
build-backend, | |
build-dashboard-e2e, | |
build-registration, | |
check-nx-affected, | |
] | |
uses: ./.github/workflows/test-nx-project-e2e.yaml | |
with: | |
image_url: "ghcr.io/bcgov/cas-reg-frontend" | |
is_nx_affected: ${{contains(needs.check-nx-affected.outputs.NX_AFFECTED_E2E, 'registration') || github.ref_name == 'develop' || github.ref_name == 'main' || github.head_ref == 'develop' || github.head_ref == 'main'}} | |
nx_app_port: 4000 | |
nx_project: registration | |
secrets: inherit | |
test-registration1-e2e: | |
needs: [build-backend, build-registration1, check-nx-affected] | |
uses: ./.github/workflows/test-registration1-e2e.yaml | |
secrets: inherit | |
test-reporting-e2e: | |
needs: | |
[build-backend, build-dashboard-e2e, build-reporting, check-nx-affected] | |
uses: ./.github/workflows/test-nx-project-e2e.yaml | |
with: | |
image_url: "ghcr.io/bcgov/cas-rep-frontend" | |
is_nx_affected: ${{contains(needs.check-nx-affected.outputs.NX_AFFECTED_E2E, 'reporting') || github.ref_name == 'develop' || github.ref_name == 'main' || github.head_ref == 'develop' || github.head_ref == 'main'}} | |
nx_app_port: 5000 | |
nx_project: reporting | |
secrets: inherit | |
zap-owasp: | |
# We will need to set up the BCIERS apps to get zap scanned | |
needs: [build-backend, build-registration1, check-nx-affected] | |
uses: ./.github/workflows/zap-owasp.yaml | |
trivy: | |
uses: ./.github/workflows/trivy.yaml | |
codeql: | |
uses: ./.github/workflows/codeql.yaml |