concord-consortium/lara

View on GitHub
.github/workflows/deploy_backend_to_aws.yml

Summary

Maintainability
Test Coverage
name: 🚀 Deploy Web Backend to AWS

on:
  # Make this a reusable workflow
  workflow_call:
    inputs:
      environment:
        type: string
        required: true
      version:
        default: ''
        type: string
        required: false
  workflow_dispatch:
    inputs:
      environment:
        type: environment
        default: 'authoring.lara.staging.concord.org'
        description: CloudFormation stack to deploy to
        required: true
      version:
        default: ''
        type: string
        description: >-
          Application version to deploy (defaults to latest pre-release/release version depending on if stack is a
          staging or production environment)

env:
  CONTAINER_IMAGE: ghcr.io/${{ github.repository }}
  # To use GitHub CLI in a GitHub Actions workflow, set the GH_TOKEN environment variable.
  GH_TOKEN: ${{ github.token }}

jobs:
  deploy:
    name: 🚀 Deploy to '${{ inputs.environment }}'
    runs-on: ubuntu-latest
    environment:
      name: ${{ inputs.environment }}
      url: https://${{ inputs.environment }}
    steps:
      - name: 📥 Checkout project source
        uses: actions/checkout@v4
      - name: 🚀 Deploy Rails App
        uses: ./.github/workflows/actions/deploy-rails-app-to-aws
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: ${{ vars.AWS_REGION }}
          cf-stack-name: ${{ vars.CF_STACK_NAME }}
          docker-image-template-key-prefix: Lara