Skip to content

chore(deps-dev): bump @types/node from 22.13.0 to 22.13.1 in /backend… #310

chore(deps-dev): bump @types/node from 22.13.0 to 22.13.1 in /backend…

chore(deps-dev): bump @types/node from 22.13.0 to 22.13.1 in /backend… #310

Workflow file for this run

name: Deploy application to production
on:
push:
paths:
- 'frontend/**'
- 'backend/**'
tags:
- "frontend/v[0-9]+.[0-9]+.[0-9]+"
- "backend/v[0-9]+.[0-9]+.[0-9]+"
branches:
- master
jobs:
build-frontend:
name: Build frontend
if: startsWith(github.ref, 'refs/tags/frontend/v')
runs-on: ubuntu-latest
environment: production
permissions:
contents: read
packages: write
attestations: write
id-token: write
outputs:
app_frontend_image: ${{ steps.build.outputs.aws_ecr_image }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build and push image
uses: ./.github/actions/build-action
id: build
with:
ghcr_registry: ghcr.io
ghcr_repository: kishieel
ghcr_username: ${{ github.actor }}
ghcr_password: ${{ secrets.GITHUB_TOKEN }}
aws_access_key: ${{ secrets.AWS_ACCESS_KEY }}
aws_secret_key: ${{ secrets.AWS_SECRET_KEY }}
aws_region: ${{ vars.AWS_REGION }}
aws_ecr_registry: ${{ vars.AWS_ECR_REGISTRY }}
aws_ecr_repository: ${{ vars.AWS_ECR_REPOSITORY }}
aws_ecr_enabled: ${{ vars.STAGING_ENABLED == 'true' }}
image_name: men3-stack-frontend
context: frontend
build-backend:
name: Build backend
if: startsWith(github.ref, 'refs/tags/backend/v')
runs-on: ubuntu-latest
environment: production
permissions:
contents: read
packages: write
attestations: write
id-token: write
outputs:
app_backend_image: ${{ steps.build.outputs.aws_ecr_image }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build and push image
uses: ./.github/actions/build-action
id: build
with:
ghcr_registry: ghcr.io
ghcr_repository: kishieel
ghcr_username: ${{ github.actor }}
ghcr_password: ${{ secrets.GITHUB_TOKEN }}
aws_access_key: ${{ secrets.AWS_ACCESS_KEY }}
aws_secret_key: ${{ secrets.AWS_SECRET_KEY }}
aws_region: ${{ vars.AWS_REGION }}
aws_ecr_registry: ${{ vars.AWS_ECR_REGISTRY }}
aws_ecr_repository: ${{ vars.AWS_ECR_REPOSITORY }}
aws_ecr_enabled: ${{ vars.STAGING_ENABLED == 'true' }}
image_name: men3-stack-backend
context: backend
deploy:
name: Deploy
needs:
- build-frontend
- build-backend
runs-on: ubuntu-latest
environment: production
if: |
always() && vars.PRODUCTION_ENABLED == 'true' &&
(needs.build-frontend.result == 'success' || needs.build-backend.result == 'success')
concurrency:
group: deploy-to-production
cancel-in-progress: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Get deployed images
uses: ./.github/actions/get-deployed-images-action
id: deployed_images
with:
aws_region: ${{ vars.AWS_REGION }}
aws_access_key: ${{ secrets.AWS_ACCESS_KEY }}
aws_secret_key: ${{ secrets.AWS_SECRET_KEY }}
terraform_backend: ${{ secrets.TF_BACKEND }}
- name: Deploy application
uses: ./.github/actions/deploy-action
with:
aws_region: ${{ vars.AWS_REGION }}
aws_access_key: ${{ secrets.AWS_ACCESS_KEY }}
aws_secret_key: ${{ secrets.AWS_SECRET_KEY }}
terraform_backend: ${{ secrets.TF_BACKEND }}
terraform_vars: |-
${{ secrets.TF_VARS }}
${{ vars.TF_VARS }}
app_backend_image: ${{ needs.build-backend.outputs.app_backend_image || steps.deployed_images.outputs.app_backend_deployed_image }}
app_frontend_image: ${{ needs.build-frontend.outputs.app_frontend_image || steps.deployed_images.outputs.app_frontend_deployed_image }}