Skip to content

CI Configuration Pipeline Definition

Henning Wiedemann edited this page Sep 4, 2023 · 1 revision

Let's have a closer look on the pipeline.yml file step-by-step:

First we define some defaults for the test routine to keep the entries in the model definition files short.

...
pipeline:
  default_test:
    tolerances:
      default: 0.01
      mass: 0.01
      rad: 0.03
      distance: 0.003
    tests:
      - process_double_check
      - load_in_pybullet
      - compare_link_masses
      - compare_link_transformations
      - topological_self_consistency
      - compare_amount_joints
      - hyrodynChecks:
         - load_in_hyrodyn
...

The root property gives the relative path from the pipeline.yml file to the pipelines root directory. See Directory Structure

...
  root: ".."
...

The remote_base defines the subgroup repository path. In this subgroup the new model repositories will be written. The merge request properties are mandatory as they are the default for the derived models. The mr_mention property allows you to mention someone at the beginning of the MR Text, it's optional and you can mention people in the description, too.

...
  remote_base: "git@gitlab.com:models/robot-subgroup"
  mr_target_branch: master
  mr_description: "New model export for the Baymax-Robot"
  mr_title: "CI: Model update"
  mr_mention: "@hwiedemann" # optional
...

The meshes base defines where the meshes for the formerly given output_meh_format entries are to find. The keys, which describe the mesh type should not be changed. The pathes given here must apply to the git group, too.

If the target mesh repository starts with lfs- it will be used to save the meshes via the Git Large File Storage. You should prefer this, as it decreases checkout time for the repos immensely.

...
  meshes:
    stl: "meshes/lfs-stl"
    obj: "meshes/lfs-obj"
    mars_obj: "meshes/lfs-mars_obj"
    bobj: "meshes/lfs-bobj"
    dae: "meshes/dae"
    iv: "meshes/iv"
...

Last but not least we define the model definition files we want to process. If you have combined model definitions, make sure that all those derived models you are depending on are previous to the combined model definition in this list.

...
  model_definitions:
    - complete_model.yml
    - derivation1.yml
    - derivation2.yml