Windmill CLI
A simple CLI allowing interactions with windmill from the command line.
You can find more information in Windmill Docs
Installation
Install the wmill
CLI tool using
deno install --unstable -A https://deno.land/x/wmill/main.ts
.
Update to the latest version using wmill upgrade
.
Workspaces
To get started run wmill workspace add
or use the instructions from the
workspace settings.
Running Flows & Scripts
Run a script or flow using wmill flow/script run u/username/path/to/script
and
pass any inputs using --data
+ Inputs specified as a JSON string or a file using @ <filename>
or stdin using @-.
Curl-style syntax using -d @-
for stdin or -d @<filename>
is also supported.
Flow Steps and Logs will be streamed during execution automatically.
Pushing Resources, Scripts & More
The CLI can push specifications to a windmill instance. See the examples/ folder for formats.
Switch to a different workspace
wmill workspace switch <workspace_name>
Sync a workspace
Pull
wmill sync pull
Push
wmill sync push
We recommend using the --yaml option to use yaml instead of json as the encoding format. Yaml will be made the default soon.
Pushing individual files
You can push individual resources using
wmill <type> push <file_name> \<remote_name\>
. This does not require a special
folder layout or file name, as this is given at runtime.
Listing
All commands support listing by just not providing a subcommand, ie
wmill script
will result in a list of scripts. Some allow additional options,
learn about this by specifying --help
.
User Management
You can add & remove users via wmill user add/remove
, and list them using
wmill user
Pulling
You can pull the entire workspace using wmill pull
Completion
The CLI comes with completions out of the box via wmill completions <shell>
.
(Via cliffy)
Bash
To enable bash completions add the following line to your ~/.bashrc
:
source <(wmill completions bash)
Fish
To enable fish completions add the following line to your
~/.config/fish/config.fish
:
source (wmill completions fish | psub)
Zsh
To enable zsh completions add the following line to your ~/.zshrc
:
source <(wmill completions zsh)