Skip to content

WATonomous/gha-remove-artifacts

 
 

Repository files navigation

gha-remove-artifacts

GitHub Action to customize artifact cleanup

Status and support

  • ✔ stable
  • ✔ supported
  • ✖ no ongoing development

CI

GitHub Action Artifacts are removed after 90 days by default. GitHub now supports changing this setting. This action allows you to further customize the cleanup. It

  • removes artifacts that are older than the specified age
  • has the option to keep release (tagged) artifacts
  • has the option to keep a number of recent artifacts
  • respects GitHub's rate limit

Example use cases:

  • keep all release artifacts for a year, remove non-release artifacts after 30 days
  • keep the most recent 10 artifacts

Usage

Add the following workflow to your repository and configure options.

.github/workflows/remove-old-artifacts.yml

name: Remove old artifacts

on:
  schedule:
    # Every day at 1am
    - cron: '0 1 * * *'

jobs:
  remove-old-artifacts:
    runs-on: ubuntu-latest
    timeout-minutes: 10

    steps:
    - name: Remove old artifacts
      uses: c-hive/gha-remove-artifacts@v1
      with:
        age: '1 month' # '<number> <unit>', e.g. 5 days, 2 years, 90 seconds, parsed by Moment.js
        # Optional inputs
        # skip-tags: true
        # skip-recent: 5

Conventions

This project follows C-Hive guides for code style, way of working and other development concerns.

License

The project is available as open source under the terms of the MIT License.

Packages

No packages published

Languages

  • JavaScript 98.0%
  • Shell 2.0%