the process is the product
If you want to interact with a pipeline, all you need is a broswer. See “How do I interact with a pipeline” for details. For everything else, follow these instructions:
You will need to have installed:
Now that git is installed, clone the repostiory: git clone <repo>
where <repo>
is from the big green “Code” button at the repository site.
Now do cd esp
. This directory - do pwd
to see what it is - is your repository root directory. Remember this because it will be used often later.
With the repostory cloned and Python 3.12 installed, create a virtual environment: python3 -m venv ${HOME}/.venv/esp
. Anytime you create a new terminal window, you will have to activate this virtual environment: source ${HOME}/.venv/esp/bin/activate
. The activation is for the bash shell. Use the correct activate
for your shell.
Activate your virtual environment now. Once the virtual environment is activated, the correct Python command is python
.
With you virtual environment activated and in your repository root, do python -m pip install -r requirements.txt
. When pip completes, your environment will contain all of the software that esp requires. For completeness, also do python -m pip install -e .
.
With the python environment complete, need to create a docker environment as well. Look at the files in the envs directory at the repository root. All of these are setting up virtual docker envirnoments. Pick and choose as desired. If sharing the platform with other users running pipelines, the port number range (DAWGIE_FE_PORT thru and including DAWGIE_SFE_PORT) must always be 6 in length and not overlap with any other user. From here out, this will be referred to as <environment profile>
.
If the docker images are not already available, then they have to be built from the repository root:
source envs/<environment profile>
docker compose -f .docker/compose.yaml build base
docker compose -f .docker/compose.yaml build server tools workers
Once complete, you should have four images:
You only need to keep 1-3 inclusive.