Skip to content

Commit 013d952

Browse files
committed
[优化删除工作流配置]: 改进 GitHub Actions 工作流删除功能的配置选项和默认值
-**输入参数描述优化**: 更新所有输入参数的描述文字,使其更加清晰易懂 -**工作流状态筛选**: 将 `delete_workflow_by_state_pattern` 改为非必需参数,提供更灵活的状态筛选选项 -**运行结论筛选**: 将 `delete_run_by_conclusion_pattern` 改为非必需参数,支持按运行结果类型筛选 -**模拟执行选项**: 为 `dry_run` 参数添加选项列表和默认值,支持更好的模拟删除体验 -**权限配置更新**: 在工作流中增加 `contents: read` 权限,确保操作完整性 -**表达式格式调整**: 优化条件表达式的格式,提高代码可读性 -**工作流命名更新**: 将作业名称从 `delete-workflow-runs` 改为 `delete-runs`,更简洁明了
1 parent 1ac5eda commit 013d952

File tree

1 file changed

+21
-16
lines changed

1 file changed

+21
-16
lines changed

.github/workflows/delete_workflow.yml

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,19 @@ on:
33
workflow_dispatch:
44
inputs:
55
days:
6-
description: 'Days-worth of runs to keep for each workflow'
6+
description: "Days to retain runs"
77
required: true
8-
default: '30'
8+
default: "30"
99
minimum_runs:
10-
description: 'Minimum runs to keep for each workflow'
10+
description: "Minimum runs to keep"
1111
required: true
12-
default: '6'
12+
default: "6"
1313
delete_workflow_pattern:
14-
description: 'Name or filename of the workflow (if not set, all workflows are targeted)'
14+
description: "Workflow name or filename (omit for all). Use `|` to separate multiple filters (e.g. 'build|deploy')."
1515
required: false
1616
delete_workflow_by_state_pattern:
17-
description: 'Filter workflows by state: active, deleted, disabled_fork, disabled_inactivity, disabled_manually'
18-
required: true
17+
description: "Workflow state: active, deleted, disabled_fork, disabled_inactivity, disabled_manually"
18+
required: false
1919
default: "ALL"
2020
type: choice
2121
options:
@@ -25,8 +25,8 @@ on:
2525
- disabled_inactivity
2626
- disabled_manually
2727
delete_run_by_conclusion_pattern:
28-
description: 'Remove runs based on conclusion: action_required, cancelled, failure, skipped, success'
29-
required: true
28+
description: "Run conclusion: action_required, cancelled, failure, skipped, success"
29+
required: false
3030
default: "Unsuccessful: action_required,cancelled,failure,skipped"
3131
type: choice
3232
options:
@@ -38,14 +38,19 @@ on:
3838
- skipped
3939
- success
4040
dry_run:
41-
description: 'Logs simulated changes, no deletions are performed'
41+
description: "Simulate deletions"
4242
required: false
43-
43+
default: "false"
44+
type: choice
45+
options:
46+
- "false"
47+
- "true"
4448
jobs:
45-
delete-workflow-runs:
49+
delete-runs:
4650
runs-on: ubuntu-latest
4751
permissions:
4852
actions: write
53+
contents: read
4954
steps:
5055
- name: Delete workflow runs
5156
uses: Mattraks/delete-workflow-runs@v2
@@ -58,8 +63,8 @@ jobs:
5863
delete_workflow_by_state_pattern: ${{ github.event.inputs.delete_workflow_by_state_pattern }}
5964
delete_run_by_conclusion_pattern: >-
6065
${{
61-
startsWith(github.event.inputs.delete_run_by_conclusion_pattern, 'Unsuccessful:')
62-
&& 'action_required,cancelled,failure,skipped'
63-
|| github.event.inputs.delete_run_by_conclusion_pattern
66+
startsWith(github.event.inputs.delete_run_by_conclusion_pattern, 'Unsuccessful:') &&
67+
'action_required,cancelled,failure,skipped' ||
68+
github.event.inputs.delete_run_by_conclusion_pattern
6469
}}
65-
dry_run: ${{ github.event.inputs.dry_run }}
70+
dry_run: ${{ github.event.inputs.dry_run }}

0 commit comments

Comments
 (0)