List view
The idea is to setup a system for automatically building virtual machine images (to be used on Linux, Mac or Windows) for ROS and Shadow code. Before we talk technology, what machines are we actually talking about. = Machines = == Customer Test Machines == For prospective customers to test out our products. Virtual appliances, nicely packaged, easy to install machines - download one file, select import in VirtualBox (or other virtual machine system) and click Start. One for the hand, when started logs into system starting the hand Gazebo simulator and some GUI tools. Also opens big welcome screen. Customer can play with hand with almost no work. Same thing for RoNeX. Build using the latest LTS release of Ubuntu and our latest release packages. I did a proto-type test of such a machine: https://drive.google.com/file/d/0B6FYnhfSf8tAb3BzWXpCTmtEd1E/edit?usp=sharing == MatLab RoNeX == This may just be part of the above or a separate image. A RoNeX install with networking etc setup to work with Matlab. For windows users who want to connect their Windows MatLab to RoNeX. == Developer Machines == Machine for our developers (or others) to use to work on or with our code. Again one for ronex and/or the hand. Sets up a user with a workspace containing our latest developer branches, making sure it compiles and is ready to start hacking. Could be taken as far as a developer machine for each project. == Jenkins Slaves == Can also use the same setup to manage and build the virtual machines for the Jenkins test setup. Will make managing that much easier. Note that doing build runs for the customer machine images will become a test in its self, ie do our packages work. Same for developer machines. == Production == Tools written should also be used for setting up the production machines we send to customers. IE install for working real hand with desktop setup. To be used by the guys at Leroy. = Technology = The machines will be built using the Vagrant tool to run on VirtualBox as the virtual machine platform. Vagrant supports others (such as VMware) which we may use in future. http://vagrantup.com Current systems use messy bash scripts for setup but this project will move that to using a proper tool, probably Puppet but maybe Chef, need to do a little http:investigation and make a decision on that one. http://puppetlabs.com Existing Jenkins setup updated to run jobs for machine creation and testing. Developers will also likely use vagrant direct. Code developed as part of the sr-build-tools project. Machine images for users hosted under shadowrobot.com url. Need to investigate the hosting, download options as they will be large. = Shadow ROS Base Images = Vagrant uses 'base' images for building new machines, basically a useful starting point. For this project we will want to create ROS base images to build all the other machines from. Vagrant will be used for this. Would then like to publicly distribute these images for use by the community, ideally under a shadowrobot.com url. As well as our own use, this gives us some nice visibility in the ROS community (and vagrant) and hopefully help to collect together people doing similar work for some collaboration. Announce to ROS community and post link to: http://vagrantbox.es/. = Plan = * Investigate Puppet vs Chef * Investigate options for production machine building. * Create images: * ROS base image. * Customer images. * Developer images. * Jenkins images. * Setup hosting for images. * Upload and announce base image. * Upload and announce customer images. * Setup Jenkins. * Jobs for building images. * Move to using vagrant built slaves. * production macghine setup.
Overdue by 12 year(s)•Due by March 7, 2014•11/11 issues closed