Ask Your Question
0

ROS Buildfarm ignores all packages

asked 2019-01-07 05:02:41 -0600

rmensing gravatar image

I have deployed an internal ROS buildfarm. I only want to release a small set of packages. That's why I whitelisted these packages in the release-build.yaml file in the ros_buildfarm_config. However, none of the packages get released. The Mrel_reconfigure-jobs prints my whitelisted packages in the console under:

The following packages are being ignored because their dependencies are being ignored:

So all my whitelisted packages are ignored.

I also tried to whitelist all (transitive) dependencies. In that case the release reconfigure job will not ignore my packages, but Mbin_uB64__catkin job fails because it cannot find the sourcedeb of catkin.

Any advice is very welcome.

edit retag flag offensive close merge delete

Comments

@nuclearsandwich: any ideas?

gvdhoorn gravatar imagegvdhoorn ( 2019-01-15 07:10:58 -0600 )edit

1 Answer

Sort by » oldest newest most voted
0

answered 2019-03-01 08:01:43 -0600

nuclearsandwich gravatar image

Are you releasing packages from a forked rosdistro database or trying to apply a custom buildfarm configuration to the upstream rosdistro database?

I think this is a general challenge for "add-on" style rosdistros which are a case that we aim to support but rely primarily on community feedback to know what works. https://github.com/ros-infrastructure...

I'm making the assumption that you're using a custom rosdistro repository to release packages that aren't available on the official buildfarm. For that to work there's two friction points:

  1. Your buildfarm repository needs to import packages from ROS upstream. That's described here https://github.com/ros-infrastructure...

  2. Dependencies of your package need to be treated as "outside" your rosdistro so that your buildfarm does not expect to build them. @tfoote may have a lighter-touch solution here. The last work I remember in this space is https://github.com/ros-infrastructure... which unmakes the assumption that the "catkin" package always comes from the current rosdistro. When running bloom on your released packages, you'll need to use a rosdep database that resolves the "missing" dependencies using the upstream rosdistro. I have a stale branch of rosdep that might help with this process. https://github.com/nuclearsandwich/ro...

edit flag offensive delete link more

Comments

@nuclearsandwich I am currently running a full fork [1, 2] in order to find out what is going on. Regarding your first point, I have imported ros_bootstrap.yaml with the jenkins job import_upstream. Since I am currently running a full fork, I expect not to run into the problem described in your second point. Still, however, my Mbin_uB64__catkin__ubuntu_bionic_amd64__binary job fails because the sourcedeb of catkin cannot be found. Do you have any suggestions or ideas?

[1] https://github.com/RonaldEnsing/rosdi... [2] https://github.com/RonaldEnsing/ros_b...

rmensing gravatar imagermensing ( 2019-03-07 10:23:35 -0600 )edit

@rmensing have you actually triggered a sourcedeb build of catkin? If you're running a new full fork distro you'll need to build everything first as source packages, then binaries for your selected platforms. The job "Mrel_trigger-jobs" with the parameter "--missing-only --source-only" should start things going, and if it fails we'll have something else to debug.

nuclearsandwich gravatar imagenuclearsandwich ( 2019-03-08 12:48:12 -0600 )edit

@nuclearsandwich These are the steps I followed: I triggered Mdev_reconfigure-jobs and after this job completed I triggered Mdev_trigger-jobs. Then I did the same for release jobs, so I triggered Mrel_reconfigure-jobs and after it completed I triggered Mrel_trigger-jobs.

However, before I created this ROS Answers question, I already tried many different configurations. I thought this problem may be related to some cached files from previous configurations that should not be there. In order to try this, I wanted to start with a clean state and removed some cached files. Now I run into other issues. I also read here ( https://github.com/ros-infrastructure... ) that re-doing the reconfigure.bash on master is not recommended, which I did run. I am therefore planning to start all over, including deploying with the JEP-200 changes right away.

rmensing gravatar imagermensing ( 2019-03-11 05:56:59 -0600 )edit

@nuclearsandwich I've (re-)deployed the buildfarm including the JEP-200 changes on three new VM's. I use the same buildfarm_deployment_config and ros_buildfarm_config as before, and I am also running Ubuntu 16.04 on the VM's as I did before. However, the builds will never start:(pending—Jenkins doesn’t have label building_repository).

rmensing gravatar imagermensing ( 2019-03-13 04:54:59 -0600 )edit

@rmensing it sounds like your repository host has not come online. You'll need to access that host and examine its jenkins agent logs to determine why. If you have continued difficulty with it, I'd suggest asking another question.

nuclearsandwich gravatar imagenuclearsandwich ( 2019-03-15 07:42:48 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2019-01-07 05:02:41 -0600

Seen: 74 times

Last updated: Mar 01