Wye is a simple command line tool for running a bash pipeline
$ dotnet add package Wye.CliThis is alpha software. Use at your own risk.
A task runner allowing easy sharing of data across jobs.
dotnet for installing the tool. Download heredotnet tool install -g Wye.Cli
Create a config.yml file in the root of your project.
jobs:
- id: hello
steps:
- command: echo "Hello" >> $OUTPUT
- command: echo "World" >> $OUTPUT
- id: print
dependsOn: [hello]
vars:
- name: GREET
value: $$jobs.hello.steps.0.output
- name: PLACE
value: $$jobs.hello.steps.1.output
steps:
- command: echo "$GREET $PLACE"
Then execute the following command:
wye run ./config.yml
Wye is a task runner that allows you to share data between jobs.
It does this by creating a temporary file for each job and storing the output of each step in that file.
Storing is done by simply sending the output to $OUTPUT.
The output of a step can be referenced in another job by using the $$jobs.<job-id>.steps.<step-id>.output syntax.
When you define vars key value pairs in a job, you can reference that variable in the job.