You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需HashiCorp工作区,如何手动触发Github Actions销毁Terraform AWS资源

手动触发GitHub Action执行Terraform资源销毁的实现方案

可以实现无代码提交、无PR的手动触发,核心是给工作流配置workflow_dispatch触发事件,全流程完全依托GitHub Actions运行,不需要HashiCorp云工作区。

具体实现步骤

  • 第一步:在你的仓库.github/workflows/目录下创建工作流配置文件,比如命名为terraform-destroy.yml,配置示例如下:
name: Terraform Destroy Infrastructure
# 仅配置手动触发,不需要其他触发条件
on:
  workflow_dispatch:
    # 可选:添加输入参数适配多环境场景
    inputs:
      environment:
        description: '要销毁的部署环境'
        required: true
        default: 'prod'
        type: choice
        options:
        - dev
        - test
        - prod

permissions:
  contents: read
  # 如果你用AWS OIDC认证需要配这个权限,用AKSK的话可以删掉
  id-token: write

jobs:
  destroy:
    runs-on: ubuntu-latest
    environment: ${{ github.event.inputs.environment }}
    steps:
      - name: 检出仓库代码
        uses: actions/checkout@v4

      - name: 配置AWS访问凭证
        uses: aws-actions/configure-aws-credentials@v4
        with:
          role-to-assume: arn:aws:iam::你的AWS账号ID:role/你的OIDC角色名
          aws-region: 你的AWS区域
          # 如果不用OIDC,直接配置这里的密钥,存在GitHub Secrets里即可:
          # aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          # aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

      - name: 执行Terraform销毁
        uses: dflook/terraform-destroy@v1
        with:
          path: ./terraform # 替换为你仓库里Terraform配置文件的目录
          var_file: ./terraform/envs/${{ github.event.inputs.environment }}.tfvars # 替换为你的变量文件路径
  • 第二步:把这个工作流文件推送到你仓库的默认分支(比如main/master),仅需要推送这一次代码,后续销毁操作不需要任何代码提交。
  • 第三步:手动触发销毁的操作路径:
    1. 打开你的GitHub仓库页面,点击顶部「Actions」标签
    2. 在左侧工作流列表里找到刚才创建的「Terraform Destroy Infrastructure」工作流
    3. 点击右侧的「Run workflow」按钮,选择要运行的分支、要销毁的环境,点击「Run workflow」确认即可触发销毁流程

可选优化建议

  • 可以给对应环境配置GitHub Environment保护规则,开启「Required reviewers」选项,销毁工作流触发后需要指定的审批人确认才会执行实际销毁操作,避免误删资源
  • 可以在工作流里加terraform plan的前置步骤,先输出销毁计划,确认计划符合预期后再执行实际销毁
  • 确保工作流使用的AWS凭证和你之前执行apply时的凭证权限一致,避免出现权限不足无法销毁部分资源的问题

内容的提问来源于stack exchange,提问作者Vaulstein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:33:03