broccoli-debug
Utility for build pipeline authors to allow trivial debugging of the Broccoli pipelines they author.
Heavily inspired by @stefanpenner's
broccoli-stew's debug
's helper,
but improved in a few ways:
- Supports leaving debug trees in the build with minimal cost when not being used.
- Supports binary files (e.g. does not write
.png
's asutf8
text). - Adds debug style debug matching.
Usage
Pipeline Authors
To allow consumers to debug the internals of various stages in your build pipeline,
you create a new instance of BroccoliDebug
and return it instead.
Something like this:
var BroccoliDebug = ; let tree = input `ember-engines::addon-input`;
Obviously, this would get quite verbose to do many times, so we have created a shortcut to easily create a number of debug trees with a shared prefix:
let debugTree = BroccoliDebug; let tree1 = ;// tree1.debugLabel => 'ember-engines:<some-name>:addon-input' let tree2 = ;// tree2.debugLabel => 'ember-engines:<some-name>:addon-output
Consumers
Folks wanting to inspect the state of the build pipeline at that stage, would do the following:
BROCCOLI_DEBUG=ember-engines:* ember b
Now you can take a look at the state of that input tree by:
ls DEBUG/ember-engines/*
API
Development
Installation
git clone git@github.com:broccolijs/broccoli-debug.git
cd broccoli-debug
yarn
Testing
yarn test