Queenbee :crown:

Queenbee is a workflow language for describing workflows! The workflow Schema is inspired by Argo Workflow and borrows a number of terms and expressions from Apache Airflow and Ansible.

Queenbee populates and validates the workflows but does not run them! For running the workflows see ladybug-tools/queenbee-luigi which converts Queenbee workflows to executable Luigi pipelines.

You can find more workflow samples in honeybee-radiance-workflow repository.

Installation

> pip install queenbee

or if you want to use the CLI

> pip install queenbee[cli]

Documentation

You can access the full docs for this package and its CLI here.

You can also access the Schema Documentation and OpenAPI documentation for:

| Object | Redoc | OpenAPI JSON | | —— | ——————— | ——————- | | Plugin | redoc | json | | Recipe | redoc | json | | Job | redoc | json |

Local Development

  1. Clone this repo locally

    git clone git@github.com:ladybug-tools/queenbee
    

    or

    git clone https://github.com/ladybug-tools/queenbee
    
  2. Install dependencies using poetry:

    cd queenbee
    poetry shell
    poetry install --extras cli
    
  3. Run Tests:

    python -m pytest tests/
    
  4. Generate Documentation:

    sphinx-apidoc -f -e -d 4 -o ./docs/modules ./queenbee
    sphinx-build -b html ./docs ./docs/_build
    
  5. Preview Documentation:

    python -m http.server --directory ./docs/_build/
    

    Now you can see the documentation preview at http://localhost:8000