Skip to content

set seed sa permissions to folder level #165

set seed sa permissions to folder level

set seed sa permissions to folder level #165

name: GCP Full Infra Creation/Deletion Test [PLAN]
on:
workflow_dispatch:
inputs:
pr_number:
description: "Pull Request Number"
required: true
pull_request:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: "read"
id-token: "write"
env:
PR_NUMBER: ${{ github.event.pull_request.number }}
tenant_group_name: "workflow-pr-${{ github.event.pull_request.number }}"
tenant_name: "t-1"
TF_VAR_falkordb_version: 'edge'
jobs:
plan:
runs-on: ubuntu-latest
environment: testing
steps:
- uses: actions/checkout@v4
- name: Set PR_NUMBER env variable
if: github.event_name == 'workflow_dispatch'
run: |
# If event is workflow_dispatch, use the event.workflow_dispatch.inputs.pr_number
echo "PR_NUMBER=${{ github.event.inputs.pr_number }}" >> $GITHUB_ENV
echo "tenant_group_name=workflow-pr-${{ github.event.inputs.pr_number }}" >> $GITHUB_ENV
- name: Setup GCloud
uses: "google-github-actions/[email protected]"
with:
workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}
- name: Set up Cloud SDK
uses: "google-github-actions/[email protected]"
with:
version: ">= 363.0.0"
- name: Set up Tofu
uses: opentofu/[email protected]
- name: Plan GCP Test Environment
env:
TF_VAR_project_id: ${{ vars.GCP_PROJECT_ID }}
TF_VAR_region: ${{ vars.GCP_REGION }}
TF_VAR_tenant_group_name: ${{ env.tenant_group_name }}
TF_VAR_force_destroy_backup_bucket: ${{ vars.GCP_FORCE_DESTROY_BACKUP_BUCKET }}
TF_VAR_subnet_cidr: ${{ vars.GCP_SUBNET_CIDR }}
TF_VAR_ip_range_pods: ${{ vars.GCP_IP_RANGE_PODS }}
TF_VAR_ip_range_services: ${{ vars.GCP_IP_RANGE_SERVICES }}
TF_VAR_tenant_provision_sa: ${{ vars.GCP_TENANT_PROVISION_SA }}
TF_VAR_backup_retention_policy_days: ${{ vars.GCP_BACKUP_RETENTION_POLICY_DAYS }}
TF_VAR_cluster_deletion_protection: ${{ vars.GCP_CLUSTER_DELETION_PROTECTION }}
TF_VAR_tenant_name: ${{ env.tenant_name }}
TF_VAR_falkordb_password: ${{ secrets.TF_VAR_FALKORDB_PASSWORD }}
TF_VAR_backup_schedule: ${{ vars.TF_VAR_BACKUP_SCHEDULE }}
TF_VAR_dns_domain: "${{ env.tenant_group_name }}.${{ vars.TF_VAR_DNS_DOMAIN }}"
working-directory: ./tofu/gcp/test_env
run: |
mkdir -p ${GITHUB_WORKSPACE}/artifacts
tofu init -backend-config="bucket=${{ vars.GCP_STATE_BUCKET_NAME }}" -backend-config="prefix=test_env/$PR_NUMBER"
tofu test
tofu plan -out ${GITHUB_WORKSPACE}/artifacts/test_env.tfplan
- name: Archive artifacts
uses: actions/upload-artifact@v4
with:
name: artifacts-${{ env.PR_NUMBER }}
path: artifacts