1
0
Fork 0
Go to file
renovate[bot] b5a1efce8a update: update dependency typescript to v4.9.5 2023-02-10 10:14:06 -06:00
.gitlab feature(build): replace rollup with esbuild 2023-01-01 17:15:22 -06:00
.vscode feat(build): add vscode task to compile 2020-08-11 19:13:59 -05:00
config fix(build): add codeclimate target 2023-01-01 21:41:54 -06:00
docs fix(build): add API visibility notices 2023-01-01 17:42:42 -06:00
scripts feature(build): replace rollup with esbuild 2023-01-01 17:15:22 -06:00
src fix(build): add API visibility notices 2023-01-01 17:42:42 -06:00
test fix(config): use a URL for config schema path for tests 2023-01-01 17:37:32 -06:00
vendor feat: initial project structure from template 2020-08-11 18:12:14 -05:00
.codeclimate.yml fix(build): add cc config 2020-08-27 14:11:12 -05:00
.eslintignore feat: initial project structure from template 2020-08-11 18:12:14 -05:00
.eslintrc.json feature(build): replace rollup with esbuild 2023-01-01 17:15:22 -06:00
.gitignore lint: remove unused existing-label verb 2020-08-27 14:10:32 -05:00
.gitlab-ci.yml feature(build): replace rollup with esbuild 2023-01-01 17:15:22 -06:00
.mdlrc fix(build): configure markdownlint 2020-08-27 14:36:38 -05:00
.npmignore fix(build): publish to npm central 2020-08-22 08:52:51 -05:00
.npmrc fix(build): install packages from nexus 2020-08-31 08:48:22 -05:00
CHANGELOG.md chore(release): 0.3.0 2022-11-23 08:04:08 -06:00
Dockerfile.alpine fix: copy unbundled output to containers 2023-01-01 19:13:51 -06:00
Dockerfile.stretch fix: copy unbundled output to containers 2023-01-01 19:13:51 -06:00
LICENSE.md add license doc 2020-08-22 08:36:42 -05:00
Makefile feature(build): replace rollup with esbuild 2023-01-01 17:15:22 -06:00
README.md fix(docs): add logo to readme 2020-08-30 20:03:16 -05:00
package.json update: update dependency typescript to v4.9.5 2023-02-10 10:14:06 -06:00
renovate.json fix: reduce renovate noise, automerge test deps 2021-06-11 10:06:44 -05:00
tsconfig.json feat: initial project structure from template 2020-08-11 18:12:14 -05:00
yarn.lock update: update dependency typescript to v4.9.5 2023-02-10 10:14:06 -06:00

README.md

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.