SANDBOX Full- Deploy feature branch to sandbox #1695
This file contains hidden or 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
| name: "SANDBOX Full- Deploy feature branch to sandbox" | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| build_branch: | |
| description: "Feature branch to push?" | |
| required: true | |
| type: "string" | |
| default: "main" | |
| sandbox: | |
| description: "Which Sandbox to push to." | |
| required: true | |
| type: "string" | |
| default: "ndr" | |
| environment: | |
| description: "Which Environment settings to use." | |
| required: true | |
| type: "string" | |
| default: "development" | |
| bulk_upload: | |
| description: "Do you want to run a Bulk Upload on this sandbox?" | |
| required: true | |
| type: boolean | |
| default: false | |
| disable_pds: | |
| description: "Do you want to disable the PDS stub?" | |
| required: true | |
| type: boolean | |
| default: true | |
| mock_login_enabled: | |
| description: "Do you want to deploy with mock login enabled?" | |
| required: true | |
| type: boolean | |
| default: true | |
| permissions: | |
| actions: read # Required for anchore/sbom-action | |
| contents: write # Required for anchore/sbom-action | |
| pull-requests: write | |
| id-token: write # This is required for requesting the JWT | |
| jobs: | |
| view_action_parameters: | |
| name: View input params | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Display client passed variables | |
| run: | | |
| echo Build Branch: ${{ inputs.build_branch }} | |
| echo Sandbox: ${{ inputs.sandbox }} | |
| echo Environment: ${{ inputs.environment }} | |
| echo Cypress Base Url: ${{ vars.CYPRESS_BASE_URL }} | |
| lambda_test_job: | |
| name: Run Lambda Unit Tests | |
| uses: ./.github/workflows/base-lambdas-reusable-test.yml | |
| with: | |
| python_version: "3.11" | |
| build_branch: ${{ inputs.build_branch }} | |
| react_testing_job: | |
| name: Run UI Unit Tests | |
| uses: ./.github/workflows/base-vitest-test.yml | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| cypress_build_job: | |
| name: Build UI version for E2E Tests | |
| uses: ./.github/workflows/base-cypress-build.yml | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| cypress_test_job: | |
| name: Run Cypress E2E Tests | |
| needs: [cypress_build_job] | |
| uses: ./.github/workflows/base-cypress-test-all-env.yml | |
| with: | |
| cypress_base_url: ${{ vars.CYPRESS_BASE_URL }} | |
| build_branch: ${{ inputs.build_branch }} | |
| publish_all_lambda_layers: | |
| name: Publish all Lambda Layers | |
| uses: ./.github/workflows/base-lambda-layer-reusable-publish-all.yml | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| sandbox: ${{ inputs.sandbox }} | |
| environment: ${{ inputs.environment }} | |
| python_version: "3.11" | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| deploy_all_lambdas: | |
| name: Deploy all Lambdas | |
| uses: ./.github/workflows/base-lambdas-reusable-deploy-all.yml | |
| needs: ["publish_all_lambda_layers"] | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| sandbox: ${{ inputs.sandbox }} | |
| environment: ${{ inputs.environment }} | |
| python_version: "3.11" | |
| is_sandbox: true | |
| mock_login_enabled: ${{ inputs.mock_login_enabled }} | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| disable_fhir_stub: | |
| name: "Disable PDS stub" | |
| if: ${{ inputs.disable_pds || inputs.bulk_upload }} | |
| uses: "./.github/workflows/base-run-disable-pds-stub.yml" | |
| needs: ["deploy_all_lambdas"] | |
| with: | |
| environment: ${{ inputs.environment }} | |
| sandbox: ${{ inputs.sandbox }} | |
| base_branch: ${{ inputs.build_branch }} | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| run_lg_e2etest: | |
| uses: ./.github/workflows/base-e2e-backendtest.yml | |
| needs: ["disable_fhir_stub"] | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| environment: development | |
| sandbox: ${{ inputs.sandbox }} | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| run_pdm_e2etest: | |
| uses: ./.github/workflows/base-e2e-fhir-backendtest.yml | |
| needs: ["disable_fhir_stub"] | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| environment: development | |
| sandbox: ${{ inputs.sandbox }} | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| deploy_ui: | |
| name: Deploy UI | |
| uses: ./.github/workflows/base-deploy-ui.yml | |
| with: | |
| build_branch: ${{ inputs.build_branch }} | |
| environment: ${{ inputs.environment }} | |
| sandbox: ${{ inputs.sandbox }} | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} | |
| bulk_upload: | |
| name: "Run Bulk Upload" | |
| if: ${{ inputs.bulk_upload }} | |
| uses: "./.github/workflows/base-run-bulk-upload.yml" | |
| needs: ["run_lg_e2etest", "run_pdm_e2etest"] | |
| with: | |
| environment: ${{ inputs.environment }} | |
| sandbox: ${{ inputs.sandbox }} | |
| combi_settings: "combi300" | |
| base_branch: ${{ inputs.build_branch }} | |
| file_count: "3" | |
| secrets: | |
| AWS_ASSUME_ROLE: ${{ secrets.AWS_ASSUME_ROLE }} |