-
Notifications
You must be signed in to change notification settings - Fork 12
Add ament_cmake into build system #561
Comments
Is using Gitlab CI for a Github project a good idea? What benefits does Gitlab CI give us over Travis CI or another agnostic tool like CircleCI? |
@gbiggs Gitlab CI was introduced by autowarefoundation/autoware#1563, I think it make sense to use just one framework, whatever the choice is, and the current support for Gitlab CI is definitely more flexible. |
@gbiggs Gitlab Ci was introduced as a replacement for Travis CI to overcome the problems that Travis CI had to run the unit tests. Also as a way to bring .Auto and .AI closer. Nevertheless each tool has its own benefits and defects, Gitlab CI cannot pick up PRs from branches in forks of Autoware, hence only the Travis CI checks appear in the PR. On the positive it is free for Open-Source projects and the time limit can be manually changed so that Autoware builds do not time out. |
@gbiggs like @sgermanserrano said, we wanted to bring the two projects closer and as a first step we decided to use GitLab, also we were having lots of issues with Travis, so we needed to switch to something else anyway. Like CircleCI, GitLab runners can be hosted on premises, however and although we'll initially only support Linux, GitLab supports macOS and Windows as well (e.g. @maximosipov reported a bug in Authoware.Auto when building on macOS, so we want to support that too) I personally like Azure Pipelines a lot, but in order to keep the infrastructure consolidated, we went with GitLab. |
Yeah, I'm a fan of Azure Pipelines, too. Thanks for the explanations! No one's been able to tell me for four weeks. 😆 |
@gbiggs sorry about that, we should have a document explaining this sort of decisions. Moreover, we'll also have to look into consolidating the CI scripts as well, right now we use https://github.com/ros-industrial/industrial_ci, and custom scripts in GitLab and Travis. |
Thanks for the mention for industrial_ci (I'm one of the maintainers). ROS2/Colcon support is discussed in ros-industrial/industrial_ci#333 without specific goal, probably because of the lack of concrete drive. If you could voice up there that could help someone to pick up the pieces :) |
I'm all in favour of pushing anything we can upstream. It's good for the community, and it means less for us to maintain all by ourselves. |
@130s thanks for dropping by. I followed that ticket a bit, and the consensus seemed that |
New Feature
In order to transition to ROS2 it is necessary to convert build system to ament_cmake and update packages according to Migration Guide.
There are several build processes in Autoware to update and test:
In addition, currently using ament_cmake requires using ament_ from ROS2 distribution which is not a recommended practice, see Discourse Topic, however it demonstrated to work.
Started work on https://github.com/maximosipov/autoware/tree/feature/ament_ci_and_docker
The text was updated successfully, but these errors were encountered: