Development environment for the Leolani platform.
This repository contains every component of the platform as git submodules and is the root from which the shared build commands are run across them.
It ships no application. Each component publishes its own
ghcr.io/leolani/cltl-* image and its own sdist into cltl-requirements/; what
a deployment looks like is decided by the deployment. The example ELIZA app that
used to live in app/ was removed once integration/ covered what it was
actually being used for.
Clone this repository including all submodules:
git clone --recurse-submodules -j8 <this repository>
From the repository root. Run it twice — the first pass builds the dependencies, the second links them:
make build
make build
integration/ composes the modules and runs them, with assertions (the tests) or
without (the demos):
make -C integration test # tier 1: in-process, ~4 min, no Docker
make -C integration test-compose # tier 2: the real images, ~20 min
make -C integration demos # what there is to run
make -C integration demo-text-pipeline
make -C integration demo-text-pipeline prints the URLs it discovered, chat page
included, and blocks until Ctrl-C. See
integration/README.md and
docs/integration-testing-design.md.
Follow the instructions in cltl-combot.