This cookbook installs ROS.
- Ubuntu 14.04
Include ros
in your cookbooks metadata file, and make use of the ros provider:
The ros
resource installs a named version of ROS.
release
- Name of release to install. Default: Name of Resource Instanceconfig
- Supported values aredesktop-full
,desktop
,ros-base
, andros-core
. Default:ros-base
apt_uri
- URI to apt repository for ROS Debian/Ubuntu packages. Default:'http://packages.ros.org/ros/ubuntu'
apt_components
- Array of apt repo components. Default:['main']
apt_key
- URI to repository signing key. Default:'https://raw.githubusercontent.com/ros/rosdistro/master/ros.key'
sys_profile
- Boolean to create symlink of setup.sh into /etc/profile.d - Default:true
:install
- Default Action:remove
ros 'indigo' do
config 'ros-desktop'
action [:install, :upgrade]
end
The catkin
resource is responsible for creating a catkin workspace. This resource must currently be called prior to using catkin_package.
user
- Owner of catkin workspace. Default:node['current_user']
release
- Required option to define which version of ROS to bind the workspace.workspace
- Path of workspace you wish to create. Default: Name of Resource Instanceworkspace_src_dir - Path of src directory in the workspace. _Default:
"#{workspace}/src"`_ros_path
- This is the path to where ros is installed. Default:/opt/ros/#{release}
ros_cmd
- Path to env.sh script. This is used to ensure commands are envoked with the correct environment settings. The default is typically theinstall
directory in the workspace, however if the install directory is not present it will use the env.sh in the ros_path.
:create
- Default Action:remove
catkin_package 'roslint' do
source_uri 'https://github.com/ros/roslint'
end
The catkin_package
resouce allows you to idempotently build and install catkin packages from git sources.
source_uri
- URI to Git repository. Default: Name of Resource Instancerevision
- Git tag, branch, or revision to checkout. Default: "#{release}-devel"
:install
- Default Action
Installing a package from a flat repository:
catkin_package 'roslint' do
source_uri 'https://github.com/ros/roslint'
revision 'master'
end
Installing a package from a nested directory sturcture:
catkin_package 'rosserial_arduino' do
source_uri 'https://github.com/ros-drivers/rosserial.git'
end
The ros_service
resource utilizes supervisord to manage roscore and nodes as
system services, and creates the appropriate supervisord configuration.
service_name
- Name of node, driver, or service you wish to have autostart. Default: Name of Resource Instanceoptions
- String of arguments passed to node or driver. Default:NilClass
enable
- Default Actiondisable
start
stop
restart
reload
Managing roscore:
ros_service 'roscore'
Starting a driver:
ros_service 'xv_11_laser_driver' do
options 'neato_laser_publisher _port:=/dev/ttyUSB0'
end
Author:: Ryan Hass (ryan@invalidchecksum.net)
Copyright (c) 2015, Ryan Hass
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.