1
0
Fork 0
Go to file
Renovate Bot 6263982cdd update: update dependency standard-version to v9.3.2 2022-01-17 11:33:10 -06:00
.vscode feat(build): add vscode task to compile 2020-08-11 19:13:59 -05:00
config remove(build): codecov step 2021-08-06 03:05:36 +00:00
docs lint: remove default type parameter from gitlab client 2021-08-04 22:15:27 -05:00
scripts revert(build): image build script back to master 2021-08-06 03:05:36 +00:00
src fix(sync): better logging for existing/updated labels 2021-08-05 19:39:39 -05:00
test fix(sync): better logging for existing/updated labels 2021-08-05 19:39:39 -05: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
.gitignore lint: remove unused existing-label verb 2020-08-27 14:10:32 -05:00
.gitlab-ci.yml remove(build): codecov step 2021-08-06 03:05:36 +00: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.2.0 2021-07-10 14:59:14 -05:00
Dockerfile.alpine update: update node.js to v16 2021-07-10 16:57:39 -05:00
Dockerfile.stretch fix(image): use correct package manager in stretch image 2021-08-06 03:05:36 +00:00
LICENSE.md add license doc 2020-08-22 08:36:42 -05:00
Makefile remove(build): unnecessary memory limit for tests 2021-08-04 23:26:14 -05:00
README.md fix(docs): add logo to readme 2020-08-30 20:03:16 -05:00
package.json update: update dependency standard-version to v9.3.2 2022-01-17 11:33:10 -06:00
renovate.json fix: reduce renovate noise, automerge test deps 2021-06-11 10:06:44 -05:00
run.mk fix(docs): remove references to remote option 2020-08-22 17:48:07 -05:00
tsconfig.json feat: initial project structure from template 2020-08-11 18:12:14 -05:00
yarn.lock update: update dependency standard-version to v9.3.2 2022-01-17 11:33:10 -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.