Skip to content
/ go-template Public template

Template for @xplorfin open source repositories

License

Notifications You must be signed in to change notification settings

xplorfin/go-template

Repository files navigation

Coverage Status Renovate enabled Build status Build status Go Report Card

What is this?

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.

Using this repository:

  1. Create a new repository from this template on github
  2. Find and replace: go-template with your-repo-name across the entire project
  3. Mark the appropriate package as public
  4. 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 the if line with if: false or delete the test file

Library only releases

If your repo does not have a binary, you can remove the

Directory structure:

  1. .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 config
  2. cmd: contains start command and cli interface
  3. docker: contains docker files for deploying
  4. internal: 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