Skip to content

zabawaba99/snag

 
 

Repository files navigation

Snag Build Status Coverage Status

An automatic build tool for all your needs

Installation

If you have go installed and want to install the latest and greatest you can run:

$ go get github.com/Tonkpils/snag

If you do not have go installed on your machine, you can checkout the releases section to download the binary for your platform.

Usage

Snag works by reading a .snag.yml file which contains a set of commands, ignored directories, and options.

As an example, the file with these contents:

script:
  - echo "hello world"
  - go test
ignore:
  - .git
verbose: true

will make snag run the commands echo "hello world" and go test, ignoring changes in the .git directory, and returning output on success through the verbose option.

Simply run:

snag

From a project with a .snag.yml file and develop away!

Caveats

  • Endless build loops

Snag will run your configured scripts if ANY file modifed in your current directory. If you scripts generate any files, you should add them to the ignore section in your .snag.yml to avoid an endless build loop.

Known Issues

  • open /dev/null: too many open files

You may experience this error if you're running on OSX. You may need to bump the maximum number of open file on your machine. You can refer to this article for more information on the max files on OSX and this superuser post for a solution

About

Automatic build tool for all your projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 99.2%
  • Other 0.8%