Skip to content

Commit 7ba4268

Browse files
committed
fix(example): fix setting INFRASTRUCTURE_REPO in resolve-env-vars step in backend_default_workflow.yml
add secret value validation to example backend_default_workflow.yml
1 parent 198c400 commit 7ba4268

1 file changed

Lines changed: 24 additions & 3 deletions

File tree

.github/examples/backend/.github/workflows/backend_default_workflow.yml

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "backend default workflow"
1+
name: "backend workflow"
22

33
permissions:
44
contents: write
@@ -44,6 +44,27 @@ jobs:
4444
run: |
4545
echo "resolving environment specific variables for environment ${{ needs.set-env.outputs.environment }}"
4646
echo "infrastructure_repo=${{ vars.INFRASTRUCTURE_REPO }}"
47+
echo "infrastructure_repo=${{ vars.INFRASTRUCTURE_REPO }}" >> "$GITHUB_OUTPUT"
48+
49+
validate-secret-values:
50+
runs-on: ubuntu-latest
51+
needs: [ set-env, resolve-env-vars ]
52+
environment: ${{ needs.set-env.outputs.environment }}
53+
steps:
54+
- name: Validate secret values
55+
env:
56+
AWS_DEPLOYMENT_ROLE_ARN: ${{ secrets.AWS_DEPLOYMENT_ROLE_ARN }}
57+
AWS_OIDC_ROLE_ARN: ${{ secrets.AWS_OIDC_ROLE_ARN }}
58+
run: |
59+
echo "Validating secret values for environment ${{ needs.set-env.outputs.environment }}"
60+
AWS_ROLE_PATTERN='^arn:aws:iam::[0-9]{12}:role\/[A-Za-z0-9+=,.@_-]+$'
61+
echo "Roles should match pattern: $AWS_ROLE_PATTERN"
62+
if [[ ! "$AWS_DEPLOYMENT_ROLE_ARN" =~ $AWS_ROLE_PATTERN ]]; then
63+
echo "Invalid AWS_DEPLOYMENT_ROLE_ARN, does not match pattern $AWS_ROLE_PATTERN"
64+
echo "Secret value length: ${#AWS_DEPLOYMENT_ROLE_ARN}"
65+
exit 1
66+
fi
67+
echo "All secret values are valid"
4768
4869
backend-workflow:
4970
name: "."
@@ -63,8 +84,8 @@ jobs:
6384
semver-app-id: ${{vars.SEMVER_APP_ID}}
6485
gitleaks-app-id: ${{ vars.GH_ORG_GITLEAKS_APP_ID }}
6586
aws-region: ${{ vars.AWS_REGION }}
66-
ecr-repository-name: 'agate-test-backend'
87+
ecr-repository-name: 'agate-test-backend' # CHANGEME
6788
deployment-app-id: ${{ vars.PC_CORE_BLW_AGATE_DEV_DEPLOY_APP_ID}}
68-
application-name: 'agate-test-backend'
89+
application-name: 'agate-test-backend' # CHANGEME
6990
infrastructure_repo: ${{ needs.resolve-env-vars.outputs.infrastructure_repo }}
7091
github-organization: 'blw-ofag-ufag'

0 commit comments

Comments
 (0)