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

ros_release

asked 2013-01-09 12:44:20 -0600

JohannesK gravatar image

updated 2013-01-11 05:58:01 -0600

Hi,

I try to build a stack using the stack ros_release. When I build packages with electric everything works fine. However, when I try to run it with fuerte or groovy an error occurs:

Global exception caught.
this program assumes that ros is in your variant. Check the console output for test failure details.
Traceback (most recent call last):
  File "/home/user/workspace_jenktool/jenkins_scripts/analyze.py", line 106, in analyze
    rosdistro_obj = rosdistro.Distro(get_rosdistro_file(ros_distro))
  File "/home/user/groovy_workspace/ros_release/rosdistro/src/rosdistro.py", line 444, in __init__
    raise DistroException("this program assumes that ros is in your variant")
DistroException: this program assumes that ros is in your variant

That programm assumes that ros is part of the variants in the distro file, but it isn't. I checked the versions of the stack ros_release in the ros-wiki and it is just available for electric, but not for fuerte/groovy. However, there are different branches in the repo (e.g. fuerte, fuerte_new, groovy, groovy_new) and I am a little bit confused about that.

What stack/tool do I have to use when I want to build a non-catkin-stack with fuerte or groovy. The jenkins_tool is just for catkin-based package, isn't it?

Anyone know?

Cheers, Johannes

EDIT: It is not my purpose to do a release or anything. My purpose is to build existing stacks only. Under this link (http://www.ros.org/wiki/release/Releasing/fuerte) you will find following part:

Pre-release: Run a Hudson on-demand build to make sure that your stack builds! While it is acceptable to release a stack that does not work on all distributions and architectures that are supported by Willow Garage, your stack will be much more useful to the community when it works on all supported platforms. For alternate ways of running the pre-release, see job_generation

When I use the package job_generation I am able to build a package with electric, but neither with fuerte nor groovy and it ends up with the error above. So I assume that the scripts for the pre-release are not the same for electric and fuerte/groovy, because the webinterface works apparently.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
0

answered 2013-01-10 18:40:24 -0600

tfoote gravatar image

The procedure for rosbuild based packages for fuerte and groovy are exactly the same as electric.

You need to add entries in fuerte.rosdistro make sure all the elements of the setup are completed before you do the release.

edit flag offensive delete link more

Comments

I edit my question above to get a better understanding of what am I doing!

JohannesK gravatar image JohannesK  ( 2013-01-11 05:49:01 -0600 )edit

What stack are you running? Is it in the distro file? What commands are you running exactly?

tfoote gravatar image tfoote  ( 2013-01-11 09:03:22 -0600 )edit

I use a modified version of the script "run_auto_stack_prerelease.py" with stacks located in the appropriate *.rosdistro file only. Okay, when you're using the same (original) scripts the mistake should be caused from somewhere else, may be in the modified version of the script. Thanks for help!

JohannesK gravatar image JohannesK  ( 2013-01-12 12:06:23 -0600 )edit

I found the problem. For fuerte/groovy you should use the python module "ros-job-generation" instead of the package "job_generation" in the stack ros_release. The "name" of the scripts are the same in both packages though.

JohannesK gravatar image JohannesK  ( 2013-01-23 14:08:50 -0600 )edit
1

answered 2013-01-09 13:53:29 -0600

joq gravatar image

updated 2013-01-10 12:56:06 -0600

The Ubuntu python-rosrelease package is used for making "dry" (non-catkin) releases to Fuerte and Groovy. I believe it also works for Electric. The command usage is:

$ rosrelease-legacy <stack> <version> <release-name>

EDIT: Before releasing a package you should run the pre-release tests.

There is now a new pre-release page which handles all currently supported ROS versions.

edit flag offensive delete link more

Comments

Exactly, I search for the scripts they are using to run the pre-release test.

JohannesK gravatar image JohannesK  ( 2013-01-10 13:08:47 -0600 )edit

Question Tools

Stats

Asked: 2013-01-09 12:44:20 -0600

Seen: 283 times

Last updated: Jan 11 '13