Tool for collecting and rolling out GitHub Actions workflows across projects.
scansearches repositories for.github/workflows/*.yml|*.yamland adds new files to the SQLite database.- Each workflow belongs to a user-defined group.
rolllets you pick workflows by group and opens them innvimwith a prefix comment so you can save with a new file name.- During
scan, you can open a workflow in read-only mode before deciding how to categorize it.
# in the project root
GOCACHE=/tmp/go-cache go build ./cmd/cier# scan a single repository
./cier scan /path/to/repo
# scan multiple repositories
./cier scan /path/to/repo1 /path/to/repo2
# roll selected workflows into the current project
./cier roll
# remove workflows from a group and add to the blacklist
./cier remove
# move workflows to another group
./cier move
# manage the blacklist
./cier blacklist list
./cier blacklist add /path/to/workflow.yml
./cier blacklist restoreBy default, the database is created at ~/.config/cier/cier.db.
You can provide an explicit path:
./cier --db /path/to/cier.db scan /path/to/repoOr via environment variable:
CIER_DB=/path/to/cier.db ./cier scan /path/to/reporollcreates.github/workflowsin the current directory if it does not exist.- For each selected workflow, a new unnamed buffer is opened in
nvim. - A comment is inserted at the top with the group, source, and project.