Clean Atlas organization #626
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Clean Atlas organization | |
on: | |
schedule: | |
- cron: "*/30 7-22 * * 1-5" | |
workflow_dispatch: | |
inputs: | |
lifetime: | |
description: "Lifetime of project in hours" | |
type: number | |
default: 1 | |
required: true | |
workflow_call: | |
inputs: | |
lifetime: | |
description: "Lifetime of project in hours" | |
type: number | |
default: 1 | |
required: true | |
concurrency: | |
group: cleanup-test | |
jobs: | |
cleanup: | |
environment: test | |
name: Cleanup Atlas Cloud | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout codebase | |
uses: actions/checkout@v4 | |
- name: Install devbox | |
uses: jetify-com/[email protected] | |
with: | |
enable-cache: 'true' | |
- name: Build clean tool | |
run: | | |
devbox run -- 'cd tools/clean && go build .' | |
- name: Persist GCP credentials | |
id: gcp-cred | |
env: | |
GCP_SA_CRED: ${{ secrets.GCP_SA_CRED }} | |
run: | | |
echo $GCP_SA_CRED > ~/gcp_sa_cred.json | |
echo credentials=$(realpath ~/gcp_sa_cred.json) >> $GITHUB_OUTPUT | |
- name: Run cleaner | |
env: | |
MCLI_OPS_MANAGER_URL: 'https://cloud-qa.mongodb.com/' | |
MCLI_PUBLIC_API_KEY: ${{ secrets.ATLAS_PUBLIC_KEY }} | |
MCLI_PRIVATE_API_KEY: ${{ secrets.ATLAS_PRIVATE_KEY }} | |
MCLI_ORG_ID: ${{ secrets.ATLAS_ORG_ID }} | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
GOOGLE_APPLICATION_CREDENTIALS: ${{ steps.gcp-cred.outputs.credentials }} | |
GOOGLE_PROJECT_ID: atlasoperator | |
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} | |
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} | |
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} | |
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }} | |
AZURE_RESOURCE_GROUP_NAME: svet-test | |
PROJECT_LIFETIME: ${{ inputs.lifetime || 1 }} | |
run: | | |
devbox run -- 'cd tools/clean && ./clean atlas' |