1
0
Fork 0
cautious-journey/README.md

6.2 KiB

Cautious Journey

Label manager and state machine, for Github and Gitlab.

Features

  • create, delete, and update project labels
  • add and remove issue labels
  • mutually-exclusive label groups
  • state machine between group values
  • dot graph output
  • supports Github and Gitlab

Contents

Status

Pipeline status Lines of Code Test coverage MIT license

Open bug count Open issue count Closed issue count

Renovate badge Dependency status Known vulnerabilities

Maintainability Technical debt ratio Quality issues Language grade: JavaScript Total alerts

Releases

github release link github release version github commits since release

npm package link npm release version Typescript definitions

Usage

cautious-journey can be installed as a Docker image or an npm package:

> docker pull ssube/cautious-journey
> yarn global add cautious-journey

Running with Docker

> docker run --rm --it ssube/cautious-journey --help

Usage: cautious-journey <mode> [options]

Commands:
  index.js graph-labels   graph label state changes
  index.js sync-issues    sync issue labels
  index.js sync-projects  sync project labels

Options:
  --help         Show help                                             [boolean]
  --version      Show version number                                   [boolean]
  --config, -c                                               [string] [required]
  --dryrun, -d                                         [boolean] [default: true]
  --project, -p                                                          [array]

Docker provides a single output stream, regardless of logger configuration. When running graph-labels, turning the logger.level to warn or error will suppress log messages that could confuse dot.

Running with Yarn

$(yarn global bin)/cautious-journey --help

Yarn will install a copy of the latest cautious-journey package into your $(yarn global dir) path.

Logging with Bunyan

$(yarn global bin)/cautious-journey sync-issues | $(yarn global bin)/bunyan

Piping logs through bunyan will pretty-print the JSON records that cautious-journey emits. When running with docker, note that all program output will be combined into a single stream.

You can also use jq to format or filter messages. Logs are line-delimited JSON.

Graphing with GraphViz

$(yarn global bin)/cautious-journey graph-labels | dot -Tpng -o /tmp/labels.png
sensible-browser /tmp/labels.png

More details can be found in the getting started guide.

Build

cautious-journey is built with make, node, and yarn. The developer guide has steps for installing these, or you can use a container that provides them.

Node 12 or better is required, along with Yarn 1.x or better.

License

Released under the MIT license.