Skip to content

.github/workflows/deploy_archivematica_prod.yml #20

.github/workflows/deploy_archivematica_prod.yml

.github/workflows/deploy_archivematica_prod.yml #20

on:
workflow_dispatch:
jobs:
deploy_archivematica_staging:
uses: ./.github/workflows/deploy_archivematica_staging.yml
secrets: inherit
deploy:
runs-on: ubuntu-latest
needs:
- deploy_archivematica_staging
environment: prod
env:
ARCHIVEMATICA_DASHBOARD_IMAGE_TAG: ${{ needs.deploy_archivematica_staging.outputs.ARCHIVEMATICA_DASHBOARD_IMAGE_TAG }}
ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG: ${{ needs.deploy_archivematica_staging.outputs.ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG }}
ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG: ${{ needs.deploy_archivematica_staging.outputs.ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG }}
ARCHIVEMATICA_STORAGE_SERVICE_IMAGE_TAG: ${{ needs.deploy_archivematica_staging.outputs.ARCHIVEMATICA_STORAGE_SERVICE_IMAGE_TAG }}
defaults:
run:
working-directory: ./archivematica/prod_cluster
steps:
- uses: actions/checkout@v6
- name: Setup Terraform
uses: hashicorp/setup-terraform@v4
with:
cli_config_credentials_token: ${{ secrets.TERRAFORM_API_TOKEN }}
- name: Terraform Init
run: terraform init
- name: Terraform Validate
run: terraform validate -no-color
- name: Terraform Plan
run: |
terraform plan -no-color -input=false \
-var "image_overrides={
\"archivematica-dashboard-prod\" = \"$ARCHIVEMATICA_DASHBOARD_IMAGE_TAG\",
\"archivematica-mcp-client-prod\" = \"$ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG\",
\"archivematica-mcp-server-prod\" = \"$ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG\",
\"archivematica-storage-service-prod\" = \"$ARCHIVEMATICA_STORAGE_SERVICE_IMAGE_TAG\",
}"
- name: Terraform Apply
run: |
terraform apply -auto-approve -input=false \
-var "image_overrides={
\"archivematica-dashboard-prod\" = \"$ARCHIVEMATICA_DASHBOARD_IMAGE_TAG\",
\"archivematica-mcp-client-prod\" = \"$ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG\",
\"archivematica-mcp-server-prod\" = \"$ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG\",
\"archivematica-storage-service-prod\" = \"$ARCHIVEMATICA_STORAGE_SERVICE_IMAGE_TAG\",
}"