Package Exports
- mxflow
- mxflow/bin/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (mxflow) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Why |
Config |
Installation |
Usage |
Options
⚡ A modern, general purpose CLI task runner with human readable yaml config file
mxflow
is a CLI task runner which is defined by a yaml config file. It searches for a .mxflow/config.yml
in the current directory and parent directories recursively up which it then parses for commands and arguments
Why?
Internal processes can get complicated or too repetitive
Group commands under a workflow, write steps, use special commands like confirm
Major features:
- Interactive first
- Extensive config
- Shell completion
- Confirmation step
💥 Unopinionated config based workflow engine
💩 Human readable yaml config
🗃️ Streamline complex workflows across teams
💡 Simplify complex commands
Config
./.mxflow/config.yml
...
~/.mxflow/config.yml
mxflow trigger foobar --foo fval --bar 222
version: 0.60.0
sleep: 1000
workflows:
foobar:
description: example placeholder
args:
- name: foo
type: string
default: fdef
export: foox
- name: bar
type: number
default: 123
export: barx
- name: MXF_BUG_TRACKER_NAME
type: env
default: jira
export: bugTrackerName
steps:
- echo {foox} world
- echo goodbye {barx} cruel world
- confirm echo {bugTrackerName} goodbye
Special command prefix
confirm {command}
adds a confirmation step to any commands
Sample use case: git-workflow
Arg Types
- string
- number
- env
Requirements
- Node 16.x
Installation
npm i -g mxflow
mxflow --setup-completion
or
npx mxflow
npx mxflow --setup-completion
Usage
mxflow # or mxf
mxflow trigger foobar --verbose
mxflow trigger feature --taskId xorg --description zelda
mxflow --no-catch-git # to bypass initial git checks
Options
init | init sample configuration
trigger <workflow-name> | non-interactive workflow trigger
verbose | verbose logs
version | show version
help | help menu
--no-catch-git | bypass initial git checks
--setup-completion | setup tab completion, your shell
--clean-completion | cleanup tab completion
Roadmap
- project based config file
- plugin system for dynamic lists
- aurgument mode
- argument autocomplete
⚠️ MXFlow is in an early state of release. Breaking changes may be made to APIs/core structures as the tool matures.