Auto-merge main back to develop post release #139
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
name: Deploy Development Environment | |
on: | |
push: | |
branches: [ "main", "develop", "release/**" ] | |
permissions: | |
id-token: write | |
contents: read | |
jobs: | |
CheckPendingWorkflow: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: ahmadnassri/action-workflow-queue@v1 | |
with: | |
delay: 300000 | |
timeout: 7200000 | |
DeployMLSpace: | |
needs: CheckPendingWorkflow | |
environment: development | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Configure AWS Credentials | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
aws-region: ${{ vars.AWS_REGION }} | |
role-to-assume: arn:aws:iam::${{ vars.AWS_ACCOUNT }}:role/${{ vars.ROLE_NAME_TO_ASSUME }} | |
role-session-name: GitHub_to_AWS_via_FederatedOIDC | |
role-duration-seconds: 7200 | |
- name: Create config.json | |
id: create-json | |
uses: jsdaniell/[email protected] | |
with: | |
name: "config.json" | |
json: | | |
{ | |
"AWS_ACCOUNT": "${{ vars.AWS_ACCOUNT }}", | |
"AWS_REGION": "${{ vars.AWS_REGION }}", | |
"OIDC_URL": "${{ secrets.OIDC_URL }}", | |
"OIDC_CLIENT_NAME": "${{ secrets.OIDC_CLIENT_NAME }}", | |
"KEY_MANAGER_ROLE_NAME": "${{ vars.KEY_MANAGER_ROLE_NAME }}" | |
} | |
dir: './lib/' | |
- name: Set up Python 3.11 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Use Node.js 20.x | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: Install frontend dependencies | |
working-directory: ./frontend | |
run: | | |
npm install | |
- name: Install CDK dependencies | |
run: | | |
npm install | |
- name: Deploy CDK | |
run: | | |
npm install -g aws-cdk | |
cdk deploy --require-approval never --all | |
SendSlackNotification: | |
name: Send Slack Notification | |
needs: [ DeployMLSpace ] | |
runs-on: ubuntu-latest | |
if: always() | |
steps: | |
- name: Send Notification that Dev Deploy Finished | |
uses: rtCamp/action-slack-notify@v2 | |
env: | |
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }} | |
SLACK_COLOR: ${{ contains(join(needs.*.result, ' '), 'failure') && 'failure' || 'success' }} | |
SLACK_TITLE: 'Dev Deploy Finished' | |
SLACK_FOOTER: '' | |
MSG_MINIMAL: 'actions url,commit' | |
SLACK_MESSAGE_ON_FAILURE: '<!here> Dev Deploy FAILED on branch ${{ github.head_ref || github.ref_name }} for <${{ github.event.pull_request.html_url || github.event.head_commit.url }}|commit>' | |
SLACK_MESSAGE_ON_SUCCESS: 'Dev Deploy SUCCESS on branch ${{ github.head_ref || github.ref_name }} for <${{ github.event.pull_request.html_url || github.event.head_commit.url }}|commit>.' | |
SLACK_MESSAGE: 'Dev Deploy Finished with status ${{ job.status }} on branch ${{ github.head_ref || github.ref_name }} for <${{ github.event.pull_request.html_url || github.event.head_commit.url }}|commit>' |