ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

ROS Buildfarm deployment fails due to missing changes file

asked 2019-01-23 10:07:08 -0600

rmensing gravatar image

updated 2019-01-23 10:09:55 -0600

I have followed the steps to deploy my own internal ROS buildfarm. Jobs were generated in Jenkins and my src jobs are blocked by the Mrel_import_package job. No other jobs trigger this job. Therefor, I triggered the Mrel_import_package manually (without arguments) in Jenkins. The Mrel_import_package fails during the import debian package step:

python -u /home/jenkins-agent/workspace/Mrel_import-package/reprepro-updater/scripts/include_folder.py --folder /var/repos/ubuntu/building/queue/ --package --delete-folder --commit --invalidate
Usage: include_folder.py [options]

include_folder.py: error: Folders ['/var/repos/ubuntu/building/queue/'] doesn't contain a changes file. [['bionic', 'all', 'xenial']]
Build step 'Execute shell' marked build as failure

The directory is empty, as the error reports. Anyone an idea what could be wrong? And which job should populate the queue directory with the changes files? What entry point in Jenkins should I use?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2019-03-01 09:18:13 -0600

nuclearsandwich gravatar image

It sounds like there's a problem with with either your deployment or your configuration. The *rel_import_package jobs are triggered by release jobs (source or binary) after a package is successfully built. The final step of a source or binary job is to copy the generated artifacts to the repository host and trigger a parameterized run of the rosdistro-specific rel_import_package job, which takes those artifacts and adds them to the repository.

If the source jobs are blocked waiting for an import_package job to complete, there may be an issue with your building_repository node that is preventing it from running jobs. The source and binary jobs run on buildagent hosts, of which there can be arbitrarily many, but the import_package jobs can only run on the building_repository host, of which there can be only one. Check the Build Executor Status window on the main Jenkins page, for a default deployment, you should see four nodes, "master", "agent-", "agent_on_master-", "building_repository-*" if any one of them is absent, your buildfarm deployment is incomplete and you'll need to investigate why.

It might help if you shared a screenshot of your Jenkins root page in the "deadlocked" state where source jobs are blocked and Mrel_import_package is not running.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2019-01-23 10:07:08 -0600

Seen: 414 times

Last updated: Mar 01 '19