A system for management of multiple processes
Project description
Just Compose
A script to run the entire pipeline.
Installation
pip3 install just_compose
jcompose --help # Should print something
How to deploy crow
# This repo implements health checks
cd ~/crow2/src
git clone https://gitlab.ciirc.cvut.cz/hajekric/observations
# Rebuild
cd ~/crow2
colcon build --symlink-install
# This repo contains example configurations
cd ~/
git clone https://gitlab.ciirc.cvut.cz/hajekric/just-compose.git
cd examples
jcompose just-compose_ros.yaml # Should start the pipeline
How to write a service
If you don't have your own, create tutorial.yaml
with this content:
pre:
- cd ~/crow2
- source /opt/ros/eloquent/setup.bash
- source install/setup.bash
post:
- echo "Job finished"
services:
crow_vision_ros2:
working_dir: ~/crow2
command: ros2 launch crow_vision_ros2 all_cameras.launch.py
tags: [ vision, camera ]
- Figure out the following
- Service name ( for identification, must be unique )
- Command(s) to run the service
- Make sure to also find out the working dir of the service
- If you want healtcheck:
- Find out what is the name of your ROS node
- Insert the following into the config file, into the
services
part
<service_name>:
working_dir: <working_dir>
command: <command>
healthcheck: ros2 run observations check_alive -n <node_name> # Ignore this line if you dont have a health check
tags: [<tag1>, <tag2>] # Ignore this line if you dont have any tags ( alternative names )
- You may now run this service with
jcompose tutorial.yaml --jobs <service_name>
orjcompse tutorial.yaml --jobs <any of the tags>
Technical details
YAML
The main configuration file contains the following structure:
pre:
- echo This hook runs before each job and each healthcheck
post:
- echo This hook runs after each job
services:
crow_vision_ros2: # The name of the service. Is used for printing and identification
working_dir: ~/crow2 # Command is `cd`-ed to this directory before execution
command: ros2 launch crow_vision_ros2 all_cameras.launch.py # The service command
tags: [ vision ] # Tags used for identification
crow_object:
working_dir: ~/crow2
commands:
- echo Multiline commands are also available
- ros2 launch crow_vision_ros2 crow_object.launch.py
tags: [ vision ]
...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
just-compose-0.2.2.tar.gz
(6.6 kB
view hashes)
Built Distribution
Close
Hashes for just_compose-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e8be0f966939d6d647646504c089e2740699de88c9729d05e6a529b662b1f6f |
|
MD5 | 6c0fee9a034c0cc5704dd25aa95ab1b1 |
|
BLAKE2b-256 | 8e8472ce3fcf2afbc737837cab7bac5f29a23f9556dd4b4520934636fc58321b |