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

如何配置GitHub Actions在PR关闭或特定标签移除时触发销毁工作流?

解决方案

要实现仅在移除preview标签时触发unlabeled事件的销毁工作流,你需要调整工作流的触发条件判断逻辑,核心是利用GitHub Actions事件上下文里的github.event.label字段识别被移除的标签:

修正后的工作流配置

on:
  pull_request:
    types: [ closed, unlabeled ]

jobs:
  destroy_preview:
    # 两个触发条件:PR关闭,或者移除的是preview标签
    if: >
      (github.event.action == 'closed') ||
      (github.event.action == 'unlabeled' && github.event.label.name == 'preview')
    uses: myrepo/.github/workflows/preview-app-destroy.yml@v0.3.6
    with:
      project_id: xxx

关键说明

  • unlabeled事件精准触发:在unlabeled事件触发时,github.event.label会指向刚被移除的标签对象,直接判断其name是否为preview,就能确保只有移除该标签时才启动销毁流程。
  • 修正原配置的无效判断:你之前用contains( github.event.pull_request.labels.*.name, 'preview')作为条件是错误的——标签被移除后,PR当前的标签列表里已经没有preview,这个条件会直接阻止工作流运行。
  • 保留PR关闭触发逻辑:保留closed事件的触发,满足你“PR关闭时销毁资源”的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 18:57:10