Files
windmill/cli
Kai Jellinghaus fc494fbf7f feat(cli): 2-Way sync (#1071)
* Export file type from each file

* Fix example scripts

* Strongly type CLI files

* Allow bash files

* Update API version

* Remove useless files

* WIP: Diff based push

* Fixup other code

* Implement Flow diffing

* Implement resource type

* Remaining impls

* WIP

* Fix missing file error

* Fix misstyping

* Improve error message

* Fix type inferrence

* Allow REMOVE everywhere

* Fix empty changeset

* Fix error message

* Fix type inferrence 2

* Fix variable diffs

* Fix include checks

* Move push & pull

* Handle script in sync

* Handle scripts

* Allow multi-path creation

* Fix merge conflicts

* Fix #1173

* Update Dependencies

* Add missing await

* Apply review comments

* Fix diff

---------

Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2023-02-03 19:49:46 +01:00
..
2022-11-01 15:53:28 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00
2023-02-03 19:49:46 +01:00

Windmill CLI

A simple CLI allowing interactions with windmill from the command line.

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 --input/-i <name>=<value> curl-style syntax using -i @- for stdin or -i @<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.

Pushing a folder

You can push all files in a folder at once using wmill push Files MUST be named resource_name.<type>.json. They will be pushed to the remote path they are in, for example the file u/admin/fib/fib.script.json will be pushed as a script to u/admin/fib/fib.

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)