Skip to main content

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 ]
  1. 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
  1. 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 )
  1. You may now run this service with jcompose tutorial.yaml --jobs <service_name> or jcompse 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 ]

  ...

Metadata

Release files for just-compose 0.2.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for just-compose 0.2.6
File Size Uploaded
just-compose-0.2.6.tar.gz 6.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for just-compose 0.2.6
File Interpreter ABI Platform
just_compose-0.2.6-py3-none-any.whl Python 3 none any Details

Total release size: 14.0 kB

Release files / just-compose-0.2.6.tar.gz

Download URL just-compose-0.2.6.tar.gz
Size 6.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ccb07f5d18103a52d2213f8bbc6fb5e35a488492a5f927fdccdf9ffe525dac2f
BLAKE2b-256 checksum
How to use checksums
2c7144931f301e5960a0e5fd1d34a7f674c18fa3afc3e7a800579c6cdba1160e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.7

Release files / just_compose-0.2.6-py3-none-any.whl

Download URL just_compose-0.2.6-py3-none-any.whl
Size 7.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3eb5561192b462a77f9bb2a16e3758e44c282af4d71b0dee6e413c6456323b1a
BLAKE2b-256 checksum
How to use checksums
a67da31f9e4106a80c3eecb3658d676457ce13a2d65fbbdaadc49a4a60568fee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.7

Release history Release notifications | RSS feed

This release

0.2.6 This release

2 release files

0.2.5

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page