/run

Automate your file management. Elwood Run lets you automate your file management tasks by responding to files as they move through your system.

Primary LanguageTypeScriptApache License 2.0Apache-2.0

Elwood Run

🚨 Elwood Run is currently in public ALPHA and NOT ready for Production. 🚨
We are actively developing the code and things will change quickly. If you have any questions, please reach out to us at hello@elwood.software or on Discord

Documentation

Read the full documentation at ./docs/readme.md

🚀 Actions

Actions are the building blocks of Elwood Run. They are small, reusable, and composable units of work that can be combined to create workflows. More about Elwood Run Actions

📔 Workflows

Workflows are a set of actions that are executed in a specific order. More about Elwood Run Workflows

Example

# yaml-language-server: $schema=https:/x.elwood.run/schema@latest.json

name: hello-world
jobs:
  echo:
    steps:
      # simple example uses bash to echo "hello world" to
      # standard output
      - run: echo "Hello, World!"
        description: "Prints 'Hello, World!' to stdout."

      # We can do the same thing with the "echo" action
      # You an check out the echo action in ../actions/echo.ts
      - action: "echo"
        description: "Prints 'Hello, World!' to stdout."
        input:
          content: "Hello, World!"
  expressions:
    steps:
      - action: "echo"
        input:
          content: ${{ step.name }}
      - action: "echo"
        input:
          content: ${{ "awesome".toUpperCase() }}
  output:
    steps:
      - name: whoami
        run: echo "name=Mr. Awesome" >> $ELWOOD_OUTPUT
      - action: echo
        input:
          content: ${{ steps.whoami.outputs.name }}

You can run this example in docker using:

deno task up

✋ Support

🏛️ License

Distributed under the Apache-2.0 license. See LICENSE for more information.

📧 Contact

Elwood - support@elwood.software