go-groom run grooming commands against multiple repositories concurrently.
$ go get -u github.com/kenju/go-groom
Path any executable script to run in the each repositories.
$ cat script.sh
#!/usr/bin/env sh
git checkout master
git pull --prune
$ go-groom -script script.sh
Specify target repository.
# all repository under "github.com/**/*"
$ go-groom -script script.sh -target github.com
# all repository under "github.com/golang/*"
$ go-groom -script script.sh -target github.com/golang
# single repository "github.com/golang/go"
$ go-groom -script script.sh -target github.com/golang/go
Specify the number of concurrency to execute.
# spin up 8 pipeline
$ go-groom \
-script script.sh \
-target github.com \
-concurrency 8
- Support inline-script option (instead of -scriptPath)
- Support timeout (a.k.a. deadlines) for each execution
Run below commands to show all available tasks.
make help
$ npm install -g auto-changelog
$ git tag vx.x.x
$ make changelog
$ git push