Lyra is a workflow engine for provisioning and orchestrating cloud native infrastructure.


Setting up Lyra

Installing Lyra

Using Lyra

Deploying a Lyra workflow

Writing a Lyra workflow in YAML

Running Lyra in Kubernetes controller mode



Building blocks

Workflow semantics

YAML workflows

Puppet workflow DSL

Installing Lyra

On Linux and MacOS you can download Lyra and build it with Go. Lyra is also available as a Homebrew package, or as a Docker container.

Run Lyra in a Docker container

To run Lyra in a Docker container, make sure you’ve installed the latest stable version of Docker.

To set up the Lyra Docker container:

  1. Create a lyra-local directory to save your work locally:

    mkdir lyra-local
  2. Pull the latest Lyra container:

    docker pull lyraproj/lyra:latest
  3. Run the container in interactive mode and mount the directory at /src/lyra/local to your local-lyra directory:

    docker run -it \
    --mount type=bind,src=$HOME/lyra-local,dst=/src/lyra/local \
    lyraproj/lyra:latest /bin/ash

Install Lyra with Homebrew

Use the following command to install Lyra with Homebrew:

brew install lyraproj/lyra/lyra

Build Lyra with Go

Lyra requires Go 1.11 or higher, and go modules enabled.

To install and Build Lyra, follow these instructions:

  1. Clone the Lyra repository:

    git clone https://github.com/lyraproj/lyra
  2. Build Lyra:

    cd lyra; make
  3. (Optional) If you intend to work with typescript, run make smoke-test-ts. This checks for an appropriate version of Node.js

Note: You must run the make command each time you merge changes from the upstream Lyra repository.