ros-industrial / industrial_ci

Easy continuous integration repository for ROS repositories
Apache License 2.0
248 stars 129 forks source link

Failing because of inter-package dependencies #841

Closed augustelalande closed 1 year ago

augustelalande commented 1 year ago

For example, in the case below both do_stuff.py and test_do_stuff.py have a dependency on do_stuff_msgs.msg.Stuff, leading to a test failure.

ModuleNotFoundError: No module named 'do_stuff_msgs'

Locally, I can resolve this by sourcing install/setup.bash before running colcon test, but I'm not sure how to do this with the industrial_ci. I have tried sourcing in BEFORE_RUN_TARGET_TESTand BEFORE_RUN_TARGET_TEST_EMBED, but that led to other errors.

src
├── do_stuff
│   ├── do_stuff
│   │    └── do_stuff.py
│   ├── package.xml
│   ├── setup.py
│   └── test
│        └── test_do_stuff.py
└──  do_stuff_msgs
    ├── CMakeLists.txt
    ├── msg
    │   └── Stuff.msg
    └── package.xml

I would appreciate any help.

mathias-luedtke commented 1 year ago

This sound like a missing test_depend in do_stuff's package.xml I doubt that there is anything wrong with industrial_ci itself.