Skip to content

Commit

Permalink
add manual deploy workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
and-mora committed Nov 18, 2024
1 parent eea0b16 commit 275161e
Showing 1 changed file with 67 additions and 0 deletions.
67 changes: 67 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Deploy

on:
workflow_dispatch:
inputs:
environment:
type: environment
description: Environment where to deploy
image-hash:
type: string
required: false
default: ''
description: SHA256 of the image to deploy
image-tag:
type: string
required: false
default: 'latest'
description: Tag of the image to deploy

jobs:
deploy:
runs-on: ubuntu-22.04

environment: ${{ inputs.environment }}

permissions:
id-token: write

steps:
#
# Setup Terraform
#
- name: Setup Terraform
uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2
with:
terraform_version: 1.9.7

#
# Checkout the source code
#
- name: Checkout the source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2

#
# Terraform
#
- name: Terraform
shell: bash
working-directory: src/main/terraform
env:
IMAGE_HASH: "${{ inputs.image-hash }}"
IMAGE_TAG: "${{ inputs.image-tag }}"
ENVIRONMENT: "${{ inputs.environment }}"
ARM_CLIENT_ID: "${{ secrets.AZURE_CLIENT_ID }}"
ARM_SUBSCRIPTION_ID: "${{ secrets.AZURE_SUBSCRIPTION_ID }}"
ARM_TENANT_ID: "${{ secrets.AZURE_TENANT_ID }}"
run: |
if [ -n "$IMAGE_HASH" ]; then
IMAGE="ghcr.io/${{ github.repository }}:$IMAGE_TAG@sha256:$IMAGE_HASH"
else
IMAGE="ghcr.io/${{ github.repository }}:$IMAGE_TAG"
fi
echo "[$IMAGE] will be deployed."
terraform init -backend-config="env/$ENVIRONMENT/backend.tfvars" -reconfigure
terraform apply -var-file="env/$ENVIRONMENT/terraform.tfvars" -var="mil_auth_image=$IMAGE" -auto-approve -lock-timeout=300s

0 comments on commit 275161e

Please sign in to comment.