#ci #check #git #push #locally #github #hook

app belay

Run your CI checks locally to git push with confidence

8 releases (4 breaking)

0.5.0 Mar 31, 2020
0.4.0 Mar 23, 2020
0.3.0 Mar 23, 2020
0.2.0 Mar 11, 2020
0.1.3 Mar 7, 2020

#1237 in Development tools

MIT/Apache

23KB
479 lines

Belay crates.io badge github action badge

Belay makes it easy to run your CI checks locally, so you can git push with confidence.

asciicast

Usage

In a git repo with either Gitlab or GitHub CI configured, running belay with no arguments will parse your CI configuration and run your CI scripts on your local machine.

$ belay
Checking 'build':
Success!
Checking 'test':
... test output
..
.
Success!

Belay can also setup pre-commit or pre-push git hooks in your repo.

# to create a pre-push hook
$ belay hook push

# to create a pre-commit hook
$ belay hook commit

Install

cargo install --force belay

Configuration

Belay creates a configuration file in the following location:

  • Linux: /home/alice/.config/belay/config.yml
  • Windows: C:\Users\Alice\AppData\Roaming\cargo\belay\config.yml
  • macOS: /Users/Alice/Library/Preferences/com.cargo.belay/config.yml

The keys of the config file are described below:

  • command_blacklist
    • array of strings
    • belay will skip CI tasks which contain any string in the command blacklist

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~3–4MB
~74K SLoC