资源组
使用选择器为不同的 PipelineRuns/TaskRuns 集合应用不同的清理策略。
重要: 选择器仅适用于 namespace 级别的 ConfigMaps(tekton-pruner-namespace-spec)。全局 ConfigMaps 中的选择器会被 pruner 忽略。
WARNING
namespace 级别的 ConfigMaps 不属于 TektonConfig 生命周期的一部分。如果你之后需要备份或恢复 Tekton 配置,请单独保存这些 ConfigMaps。
工作原理
- 根据 PipelineRuns/TaskRuns 上的 labels 或 annotations 进行匹配
- 首个匹配生效:按顺序评估各组
- 回退:未匹配的资源使用 namespace 或全局默认值
- 位置:必须位于 namespace ConfigMap 中,而不是全局 ConfigMap 中
选择器类型
Label selectors:
Annotation selectors:
混合选择器(labels 和 annotations 都必须匹配):
常见模式
按 Pipeline 类型:
按环境:
按重要性:
顺序很重要
首个匹配生效 - 将选择器按从最具体到最不具体的顺序排列:
最佳实践
- 为基于选择器的组使用 namespace ConfigMaps
- 按从最具体到最不具体的顺序排列选择器(首个匹配生效)
- 使用一致的 labels:
app、component、env、tier - 在选择器上方用注释记录分组说明
- 在生产环境之前先用示例运行进行测试
高级配置
多层应用
发布类型
为 Pipeline 添加标签
为 PipelineRuns 添加 labels 以便分组:
相关内容
- Namespace Configuration - 设置 namespace ConfigMaps
- Time-based Pruning - 组的 TTL 策略
- History-based Pruning - 组的保留策略