All Projects → jbrunton → gflows

jbrunton / gflows

Licence: MIT license
A CLI tool that makes templating GitHub Workflows easy

Programming Languages

go
31211 projects - #10 most used programming language
Jsonnet
166 projects

GFlows - GitHub Workflow Templates

Build Status Maintainability Test Coverage

GFlows is a CLI tool that makes templating GitHub Workflows easy, using either Jsonnet or ytt (Yaml Templating Tool). It can:

  • Import existing workflows to help you quickly get started.
  • Validate GitHub workflows are up to date with their source templates and conform to a valid schema.
  • Share common config code and workflows with GFlows Packages.
  • Watch changes to the templates, so you can develop and refactor workflows with fast feedback on your changes.

Example refactor

Note: this project is very new so I expect there is room for improvement, but I've used it comfortably in my own projects and the risk of adoption is low since it mostly just builds on top of existing tooling (primarily Jsonnet and ytt). If you have any feedback I'd love to hear it!

Installing

Either download from Releases or install with Go:

go install github.com/jbrunton/gflows@latest

You can also install in GitHub workflows using the setup-gflows action:

steps:
- uses: jbrunton/setup-gflows@v1
  with:
    token: ${{ secrets.GITHUB_TOKEN }}
- run: gflows check

Getting Started

See Getting Started.

Docs

See the wiki for detailed documentation.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].