Skip to content

[Workflow] Cleanup PR Workspaces #379

[Workflow] Cleanup PR Workspaces

[Workflow] Cleanup PR Workspaces #379

name: "[Workflow] Cleanup PR Workspaces"
on:
schedule:
# 4am every day except Sundays
- cron: '0 4 * * 0-6'
permissions:
contents: read
security-events: none
pull-requests: none
actions: none
checks: none
deployments: none
issues: none
packages: none
repository-projects: none
statuses: none
jobs:
terraform_environment_cleanup:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
- uses: unfor19/install-aws-cli-action@27d6061dae5d39e89be4d2246824f15e111a7e06
- uses: hashicorp/setup-terraform@4b8e29db070e511fc9f67a42cf566d74cfc83c24
with:
terraform_version: 1.7.2
terraform_wrapper: false
- name: Configure AWS Credentials For Terraform
uses: aws-actions/configure-aws-credentials@2cefa29f8797029f898b1baeff3e21a144128687
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_ACTIONS }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_ACTIONS }}
aws-region: eu-west-1
role-duration-seconds: 3600
role-session-name: OPGLPACodesClearupEnvs
- name: Install Terraform Workspace Manager
run: |
wget https://github.com/ministryofjustice/opg-terraform-workspace-manager/releases/download/v0.3.2/opg-terraform-workspace-manager_Linux_x86_64.tar.gz -O $HOME/terraform-workspace-manager.tar.gz
sudo tar -xvf $HOME/terraform-workspace-manager.tar.gz -C /usr/local/bin
sudo chmod +x /usr/local/bin/terraform-workspace-manager
- name: Terraform Init
working-directory: terraform/environment
run: terraform init -input=false
- name: Destroy PR Terraform Workspaces
working-directory: terraform/environment
run: |
./scripts/workspace_cleanup.sh $(terraform-workspace-manager -protected-workspaces=true -aws-account-id=288342028542 -aws-iam-role=integrations-ci)