Skip to content

add VPC.id

add VPC.id #96

Workflow file for this run

---
name: Deploy
on:
push:
branches:
- main
- prod
jobs:
test-lint:
uses: ./.github/workflows/test-and-lint.yml
name: Test and lint
secrets:
DOCKERHUB_USER: ${{ vars.DOCKERHUB_USER }}
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
deploy:
name: Deploy
runs-on: ubuntu-22.04
needs: [test-lint]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set vars
run: |
if [[ $GITHUB_REF == 'refs/heads/prod' ]]; then
echo "prod" > .workspace
else
echo "staging" > .workspace
fi
- name: Push to ECR
env:
AWS_ACCESS_KEY_ID: ${{ vars.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin ${{ vars.AWS_ACCOUNT_ID }}.dkr.ecr.us-east-1.amazonaws.com
docker build --compress -t ${{ vars.ECR_REPO_APP }}:$GITHUB_SHA .
docker push ${{ vars.ECR_REPO_APP }}:$GITHUB_SHA
docker build --compress -t ${{ vars.ECR_REPO_PROXY }}:$GITHUB_SHA proxy/
docker push ${{ vars.ECR_REPO_PROXY }}:$GITHUB_SHA
- name: Terraform apply
env:
AWS_ACCESS_KEY_ID: ${{ vars.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
TF_VAR_db_password: ${{ secrets.TF_VAR_DB_PASSWORD }}
TF_VAR_django_secret_key: ${{ secrets.TF_DJANGO_SECRET_KEY }}
TF_LOG: DEBUG
run: |
export TF_VAR_ecr_app_image="${{ vars.ECR_REPO_APP }}:$GITHUB_SHA"
export TF_VAR_ecr_proxy_image="${{ vars.ECR_REPO_PROXY }}:$GITHUB_SHA"
workspace=$(cat .workspace)
cd Infra-TF
docker compose run --rm terraform -chdir=deploy/ init
docker compose run --rm terraform -chdir=deploy/ workspace select -or-create $workspace
docker compose run --rm terraform -chdir=deploy/ apply -auto-approve