rhass / ros

Chef Cookbook for installing and configuring the Robot Operating System - ROS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ros

Build Status Cookbook Version License

This cookbook installs ROS.

Supported Platforms

  • Ubuntu 14.04

Usage

Include ros in your cookbooks metadata file, and make use of the ros provider:

Resources

ros

The ros resource installs a named version of ROS.

Attributes

  • release - Name of release to install. Default: Name of Resource Instance
  • config - Supported values are desktop-full, desktop, ros-base, and ros-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

Actions

  • :install - Default Action
  • :remove

Usage

ros 'indigo' do
  config 'ros-desktop'
  action [:install, :upgrade]
end

catkin

The catkin resource is responsible for creating a catkin workspace. This resource must currently be called prior to using catkin_package.

Attributes

  • 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 Instance
  • workspace_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 the install directory in the workspace, however if the install directory is not present it will use the env.sh in the ros_path.

Actions

  • :create - Default Action
  • :remove
Usage
catkin_package 'roslint' do
  source_uri 'https://github.com/ros/roslint'
end

catkin_package

The catkin_package resouce allows you to idempotently build and install catkin packages from git sources.

Attributes

  • source_uri - URI to Git repository. Default: Name of Resource Instance
  • revision - Git tag, branch, or revision to checkout. Default: "#{release}-devel"

Actions

  • :install - Default Action
Usage

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

ros_service

The ros_service resource utilizes supervisord to manage roscore and nodes as system services, and creates the appropriate supervisord configuration.

Attributes

  • service_name - Name of node, driver, or service you wish to have autostart. Default: Name of Resource Instance
  • options - String of arguments passed to node or driver. Default: NilClass

Actions

  • enable - Default Action
  • disable
  • start
  • stop
  • restart
  • reload
Usage

Managing roscore:

ros_service 'roscore'

Starting a driver:

ros_service 'xv_11_laser_driver' do
  options 'neato_laser_publisher _port:=/dev/ttyUSB0'
end

License and Authors

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.

About

Chef Cookbook for installing and configuring the Robot Operating System - ROS

License:Other


Languages

Language:Ruby 100.0%