This repository serves as a template for our open source projects. It uses urfave/cli as for creating a cli. The release process follows semver, with an optional test on every build and automerges passing dependency upgrades. You can optionally use [ci skip] to skip a release
For Entropy Organization Members
While we're working to open source as much of our code as possible, this will take time so if you need to create a private repository please do so here.
- Create a new repository from this template on github
- Find and replace:
go-template
withyour-repo-name
across the entire project - Mark the appropriate package as public
- Optional: If you won't be writing test (you should!) you can delete
.github/workflows/test.yml
. Tests are enabled by default, so you'll need to switch theif
line withif: false
or delete the test file
If your repo does not have a binary, you can remove the
.github
: contains configs for making sure users don't create issues, workflows for releasing and a disabled worfklow for testing as well as our renovatebot configcmd
: contains start command and cli interfacedocker
: contains docker files for deployinginternal
: for packages you don't want exported
Note: we follow the standard go project layout. Modules required by other packages should go in the pkg
library