gha-remove-artifacts 使用教程
项目介绍
gha-remove-artifacts
是一个专门用于自定义清理过期构建产物(artifacts)的 GitHub Action。不同于 GitHub 默认的 90 天清理策略,该 Action 允许开发者按照自己的时间表和规则来定制化清理策略,确保仓库整洁的同时,也能保留重要或高价值的构建产物。
项目快速启动
安装步骤
- 在您的 GitHub 仓库中,创建一个新的 GitHub Actions 工作流文件,例如
github/workflows/remove-old-artifacts.yml
。 - 将以下内容复制到该文件中:
name: Remove old artifacts
on:
schedule:
- cron: '0 1 * * *' # 每天凌晨1点执行
jobs:
remove-old-artifacts:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Remove old artifacts
uses: c-hive/gha-remove-artifacts@v1.4.0
with:
age: '1 month' # 清理超过1个月的构建产物
# skip-tags: true # 可选:跳过带有标签的构建产物
# skip-recent: 5 # 可选:保留最近的5个构建产物
配置选项
age
: 指定清理超过一定时间的构建产物,例如1 month
、2 years
。skip-tags
: 可选,跳过带有标签的构建产物。skip-recent
: 可选,保留最近的若干个构建产物。
应用案例和最佳实践
应用案例
假设您有一个持续集成项目,每天都会生成大量的构建产物。为了节省存储空间并保持仓库的运行效率,您可以使用 gha-remove-artifacts
来定期清理超过 30 天的非发布构建产物,并保留最近的 10 个构建产物。
最佳实践
- 定期清理: 设置一个定期任务,例如每天或每周清理一次,以避免构建产物过多占用存储空间。
- 保留重要构建产物: 使用
skip-tags
选项保留带有标签的构建产物,这些通常是发布版本的重要构建产物。 - 灵活配置: 根据项目需求灵活配置
age
和skip-recent
参数,以达到最佳的清理效果。
典型生态项目
gha-remove-artifacts
可以与其他 GitHub Actions 结合使用,形成一个完整的持续集成和持续部署(CI/CD)生态系统。以下是一些典型的生态项目:
- gha-yarn-cache: 用于缓存 Yarn 安装依赖,加快构建速度。
- gha-cron-demo: 使用 GitHub Actions 的 Cron 功能定期更新仓库。
- free-disk-space: 用于在 Ubuntu 运行器上释放磁盘空间。
通过这些生态项目的结合使用,可以构建一个高效、自动化的软件开发和持续集成流程。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考