Flux

Flux is a command-line tool we use at MojoTech to automate some parts of our workflow.

It provides hooks for interacting with the following:

  • Pivotal Tracker
  • Git
  • Github pull requests

Configuration

A project is configured by placing a file named .flux.rb in the project root.

This project's .flux file is as follows:

use :pivotal_tracker, project_id: 128808
use :github, repo_user: 'mojotech', repo_name: 'flux'

Local configuration

The .flux.rb file should be used for project-wide configuration and kept under version control. Obviously you aren't going to store your account credentials there, so you need a different place where you can store them. That place is .flux.local.rb. This file should be added to the project's .gitignore.

Here's an example of a .flux.local.rb file.

use :pivotal_tracker, token: 'abcdef1234567890', email: '[email protected]'
use :github, username: 'david', password: 'IL0vePandas!'

Your Pivotal Tracker API token is at https://www.pivotaltracker.com/profile

Use

$ flux # show a list of available tasks

For a complete description of our workflow, see MOJOTECH.md.