🔧 Improve DID bootstrap error handling #1960
Workflow file for this run
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: CICD | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| reset-deployments: | |
| description: Reset deployment - Clean start | |
| required: false | |
| default: false | |
| type: boolean | |
| run-e2e-tests: | |
| description: Run End-to-End Tests on EKS | |
| required: false | |
| default: true | |
| type: boolean | |
| run-k6-tests: | |
| description: Run K6 Tests on EKS | |
| required: false | |
| default: true | |
| type: boolean | |
| run-regression-tests: | |
| description: Run Regression Tests on EKS | |
| required: false | |
| default: true | |
| type: boolean | |
| push: | |
| branches: | |
| - master | |
| tags: | |
| - "v*" | |
| paths: | |
| - "**" | |
| - "!docs/**" # Ignore changes in the docs folder | |
| - "!**.md" # Ignore changes to any markdown file | |
| - "!.github/dependabot.yml" # Ignore changes to Dependabot config | |
| pull_request: | |
| branches: | |
| - master | |
| types: | |
| - opened | |
| - reopened | |
| - synchronize | |
| - ready_for_review | |
| paths: | |
| - "**" | |
| - "!docs/**" # Ignore changes in the docs folder | |
| - "!**.md" # Ignore changes to any markdown file | |
| - "!.github/dependabot.yml" # Ignore changes to Dependabot config | |
| permissions: {} | |
| env: | |
| HELM_VERSION: v3.18.4 | |
| HELMFILE_VERSION: v1.1.2 | |
| MISE_VERSION: 2025.7.3 | |
| RESET_DEPLOYMENTS: ${{ github.event.inputs.reset-deployments || 'false' }} | |
| RUN_E2E_TESTS: ${{ github.event.inputs.run-e2e-tests || 'true' }} | |
| RUN_K6_TESTS: ${{ github.event.inputs.run-k6-tests || 'true' }} | |
| RUN_REGRESSION_TESTS: ${{ github.event.inputs.run-regression-tests || 'true' }} | |
| jobs: | |
| prep: | |
| name: Prep workflow | |
| runs-on: ubuntu-latest | |
| outputs: | |
| ### | |
| # Because we can't pass env vars (`${{ env.HELM_VERSION }}`) to `workflow_call` | |
| ### | |
| helm-version: ${{ steps.export-versions.outputs.helm-version }} | |
| helmfile-version: ${{ steps.export-versions.outputs.helmfile-version }} | |
| mise-version: ${{ steps.export-versions.outputs.mise-version }} | |
| ### | |
| # Because https://github.com/actions/runner/issues/1483 | |
| ### | |
| reset-deployments: ${{ steps.export-bools.outputs.reset-deployments }} | |
| run-e2e-tests: ${{ steps.export-bools.outputs.run-e2e-tests }} | |
| run-k6-tests: ${{ steps.export-bools.outputs.run-k6-tests }} | |
| run-regression-tests: ${{ steps.export-bools.outputs.run-regression-tests }} | |
| steps: | |
| - name: Export tool versions | |
| id: export-versions | |
| run: | | |
| echo "helm-version=${HELM_VERSION}" >> $GITHUB_OUTPUT | |
| echo "helmfile-version=${HELMFILE_VERSION}" >> $GITHUB_OUTPUT | |
| echo "mise-version=${MISE_VERSION}" >> $GITHUB_OUTPUT | |
| - name: Export boolean env vars | |
| id: export-bools | |
| run: | | |
| echo "reset-deployments=${RESET_DEPLOYMENTS}" >> $GITHUB_OUTPUT | |
| echo "run-e2e-tests=${RUN_E2E_TESTS}" >> $GITHUB_OUTPUT | |
| echo "run-k6-tests=${RUN_K6_TESTS}" >> $GITHUB_OUTPUT | |
| echo "run-regression-tests=${RUN_REGRESSION_TESTS}" >> $GITHUB_OUTPUT | |
| lint: | |
| name: Lint | |
| needs: prep | |
| uses: ./.github/workflows/format.yml | |
| with: | |
| mise-version: ${{ needs.prep.outputs.mise-version }} | |
| concurrency: | |
| group: format-check-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| unit-test: | |
| name: Tests | |
| needs: prep | |
| uses: ./.github/workflows/unit.yml | |
| with: | |
| mise-version: ${{ needs.prep.outputs.mise-version }} | |
| concurrency: | |
| group: unit-test-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| docker: | |
| name: Docker | |
| uses: ./.github/workflows/docker-build.yml | |
| needs: | |
| - lint | |
| - unit-test | |
| permissions: | |
| packages: write | |
| concurrency: | |
| group: docker-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| openapi: | |
| name: OpenAPI | |
| needs: docker | |
| uses: ./.github/workflows/update-openapi.yml | |
| if: (github.event_name == 'pull_request' && github.actor != 'dependabot[bot]') || github.ref_name == github.event.repository.default_branch | |
| with: | |
| image-version: ${{ needs.docker.outputs.image_version }} | |
| secrets: | |
| devops-app-id: ${{ secrets.DEVOPS_APP_ID }} | |
| devops-private-key: ${{ secrets.DEVOPS_PRIVATE_KEY }} | |
| concurrency: | |
| group: update-openapi-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: write # Required to push changes to the repository | |
| pull-requests: write # Required to comment on PRs about OpenAPI spec changes | |
| local-test: | |
| name: Tests | |
| needs: | |
| - docker | |
| - prep | |
| uses: ./.github/workflows/local-tests.yml | |
| with: | |
| image-version: ${{ needs.docker.outputs.image_version }} | |
| mise-version: ${{ needs.prep.outputs.mise-version }} | |
| secrets: | |
| codacy-token: ${{ secrets.CODACY_PROJECT_TOKEN }} | |
| cheqd-mnemonic: ${{ secrets.CHEQD_MNEMONIC }} | |
| concurrency: | |
| group: local-tests-${{ github.ref_name }} | |
| cancel-in-progress: true | |
| eks: | |
| if: github.actor != 'dependabot[bot]' && github.event.pull_request.draft == false | |
| name: EKS | |
| uses: ./.github/workflows/deploy-test-eks.yml | |
| needs: | |
| - docker | |
| - prep | |
| with: | |
| acapy-helmfile-path: ./helm/acapy-cloud.yaml.gotmpl | |
| acapy-test-helmfile-path: ./helm/acapy-test.yaml.gotmpl | |
| connect-configs-dir: ./resources/connect-processors/cloud | |
| helm-plugins: https://github.com/databus23/helm-diff | |
| helm-version: ${{ needs.prep.outputs.helm-version }} | |
| helmfile-version: ${{ needs.prep.outputs.helmfile-version }} | |
| image-version: ${{ needs.docker.outputs.image_version }} | |
| namespace: acapy-cloud-dev | |
| reset-deployments: ${{ needs.prep.outputs.reset-deployments == 'true' }} | |
| run-e2e-tests: ${{ needs.prep.outputs.run-e2e-tests == 'true' }} | |
| run-k6-tests: ${{ needs.prep.outputs.run-k6-tests == 'true' }} | |
| run-regression-tests: ${{ needs.prep.outputs.run-regression-tests == 'true' }} | |
| skip-deploy: false # Downstream workflow has boolean input, but we don't want to run it from here | |
| tailscale-tags: ${{ vars.TAILSCALE_TAGS }} | |
| secrets: | |
| tailscale-oauth-client-id: ${{ secrets.TAILSCALE_OAUTH_CLIENT_ID }} | |
| tailscale-oauth-secret: ${{ secrets.TAILSCALE_OAUTH_SECRET }} | |
| permissions: | |
| id-token: write # Required to authenticate with AWS | |
| checks: write # Required for action-junit-report | |
| pull-requests: write # Required to comment on PRs for Pytest coverage comment | |
| notify: | |
| name: Notify | |
| if: github.actor != 'dependabot[bot]' && github.event_name != 'pull_request' | |
| needs: | |
| - docker | |
| - eks | |
| - local-test | |
| - prep | |
| uses: ./.github/workflows/notify.yml | |
| with: | |
| acapy-cloud-ref: ${{ github.sha }} | |
| image-version: ${{ needs.docker.outputs.image_version }} | |
| reset-deployments: ${{ inputs.reset-deployments || false }} | |
| run-e2e-tests: ${{ inputs.run-e2e-tests || true }} | |
| run-k6-tests: ${{ inputs.run-k6-tests || true }} | |
| run-regression-tests: ${{ inputs.run-regression-tests || true }} | |
| secrets: | |
| devops-app-id: ${{ secrets.DEVOPS_APP_ID }} | |
| devops-private-key: ${{ secrets.DEVOPS_PRIVATE_KEY }} |