lobot 0.10.3 → 1.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (696) hide show
  1. data/.gitignore +1 -0
  2. data/.gitmodules +3 -0
  3. data/.rvmrc +1 -1
  4. data/Gemfile +1 -0
  5. data/README.md +26 -28
  6. data/Rakefile +3 -1
  7. data/chef/cookbooks/pivotal_ci/attributes/git.rb +4 -0
  8. data/chef/cookbooks/pivotal_ci/attributes/jenkins.rb +3 -0
  9. data/{lib/generators/lobot/templates/chef → chef}/cookbooks/pivotal_ci/attributes/nginx.rb +0 -0
  10. data/chef/cookbooks/pivotal_ci/attributes/ssl.rb +5 -0
  11. data/chef/cookbooks/pivotal_ci/files/default/jenkins-ci.org.key +112 -0
  12. data/{lib/generators/lobot/templates/chef → chef}/cookbooks/pivotal_ci/libraries/ci_config.rb +0 -0
  13. data/chef/cookbooks/pivotal_ci/recipes/default.rb +6 -0
  14. data/chef/cookbooks/pivotal_ci/recipes/fonts.rb +5 -0
  15. data/chef/cookbooks/pivotal_ci/recipes/git_config.rb +17 -0
  16. data/{lib/generators/lobot/templates/chef → chef}/cookbooks/pivotal_ci/recipes/id_rsa.rb +18 -8
  17. data/chef/cookbooks/pivotal_ci/recipes/jenkins.rb +26 -0
  18. data/chef/cookbooks/pivotal_ci/recipes/jenkins_config.rb +52 -0
  19. data/chef/cookbooks/pivotal_ci/recipes/limited_travis_ci_environment.rb +35 -0
  20. data/chef/cookbooks/pivotal_ci/recipes/nginx.rb +17 -0
  21. data/chef/cookbooks/pivotal_ci/recipes/ssl_certificate.rb +44 -0
  22. data/chef/cookbooks/pivotal_ci/recipes/teamcity.rb +42 -0
  23. data/{lib/generators/lobot/templates/chef → chef}/cookbooks/pivotal_ci/templates/default/jenkins-job-config.xml.erb +7 -3
  24. data/chef/cookbooks/pivotal_ci/templates/default/nginx-conf.erb +58 -0
  25. data/{lib/generators/lobot/templates/chef/cookbooks/pivotal_server → chef/cookbooks/pivotal_ci}/templates/default/nginx-htaccess.erb +0 -0
  26. data/{lib/generators/lobot/templates/chef → chef}/cookbooks/pivotal_ci/templates/default/teamcity-initd.erb +1 -1
  27. data/chef/travis-cookbooks/.gitignore +7 -0
  28. data/chef/travis-cookbooks/LICENSE +23 -0
  29. data/chef/travis-cookbooks/README.md +28 -0
  30. data/chef/travis-cookbooks/ci_environment/.gitignore +1 -0
  31. data/chef/travis-cookbooks/ci_environment/ant/README.md +51 -0
  32. data/chef/travis-cookbooks/ci_environment/ant/metadata.rb +14 -0
  33. data/chef/travis-cookbooks/ci_environment/ant/recipes/default.rb +41 -0
  34. data/chef/travis-cookbooks/ci_environment/apt/README.md +109 -0
  35. data/chef/travis-cookbooks/ci_environment/apt/attributes/default.rb +1 -0
  36. data/chef/travis-cookbooks/ci_environment/apt/files/default/apt-cacher +9 -0
  37. data/chef/travis-cookbooks/ci_environment/apt/files/default/apt-cacher.conf +144 -0
  38. data/chef/travis-cookbooks/ci_environment/apt/files/default/apt-proxy-v2.conf +50 -0
  39. data/chef/travis-cookbooks/ci_environment/apt/metadata.json +34 -0
  40. data/chef/travis-cookbooks/ci_environment/apt/metadata.rb +13 -0
  41. data/chef/travis-cookbooks/ci_environment/apt/providers/repository.rb +73 -0
  42. data/chef/travis-cookbooks/ci_environment/apt/recipes/cacher-client.rb +37 -0
  43. data/chef/travis-cookbooks/ci_environment/apt/recipes/cacher.rb +45 -0
  44. data/chef/travis-cookbooks/ci_environment/apt/recipes/default.rb +54 -0
  45. data/chef/travis-cookbooks/ci_environment/apt/resources/repository.rb +31 -0
  46. data/chef/travis-cookbooks/ci_environment/apt/templates/ubuntu-10.04/sources.list.erb +31 -0
  47. data/chef/travis-cookbooks/ci_environment/apt/templates/ubuntu-11.04/sources.list.erb +31 -0
  48. data/chef/travis-cookbooks/ci_environment/apt/templates/ubuntu-11.10/sources.list.erb +31 -0
  49. data/chef/travis-cookbooks/ci_environment/apt/templates/ubuntu-12.04/sources.list.erb +31 -0
  50. data/chef/travis-cookbooks/ci_environment/bazaar/recipes/default.rb +26 -0
  51. data/chef/travis-cookbooks/ci_environment/bison/attributes/default.rb +7 -0
  52. data/chef/travis-cookbooks/ci_environment/bison/recipes/default.rb +48 -0
  53. data/chef/travis-cookbooks/ci_environment/build-essential/README.md +24 -0
  54. data/chef/travis-cookbooks/ci_environment/build-essential/metadata.rb +10 -0
  55. data/chef/travis-cookbooks/ci_environment/build-essential/recipes/default.rb +47 -0
  56. data/chef/travis-cookbooks/ci_environment/cassandra/attributes/default.rb +25 -0
  57. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/datastax.rb +43 -0
  58. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/package.rb +43 -0
  59. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/tarball.rb +154 -0
  60. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra-cli.erb +60 -0
  61. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra-env.sh.erb +159 -0
  62. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra-limits.conf.erb +2 -0
  63. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra.init.erb +231 -0
  64. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra.yaml.erb +567 -0
  65. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/log4j-server.properties.yml +43 -0
  66. data/chef/travis-cookbooks/ci_environment/chromium/recipes/default.rb +26 -0
  67. data/chef/travis-cookbooks/ci_environment/clang/attributes/tarball.rb +11 -0
  68. data/chef/travis-cookbooks/ci_environment/clang/metadata.rb +11 -0
  69. data/chef/travis-cookbooks/ci_environment/clang/recipes/default.rb +26 -0
  70. data/chef/travis-cookbooks/ci_environment/clang/recipes/tarball.rb +75 -0
  71. data/chef/travis-cookbooks/ci_environment/cmake/README.md +21 -0
  72. data/chef/travis-cookbooks/ci_environment/cmake/metadata.rb +10 -0
  73. data/chef/travis-cookbooks/ci_environment/cmake/recipes/default.rb +23 -0
  74. data/chef/travis-cookbooks/ci_environment/composer/recipes/default.rb +21 -0
  75. data/chef/travis-cookbooks/ci_environment/composer/templates/default/composer.erb +3 -0
  76. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/default.rb +33 -0
  77. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ppa.rb +37 -0
  78. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu-12.04.rb +39 -0
  79. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu1110_ppa.rb +27 -0
  80. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu1204_ppa.rb +27 -0
  81. data/chef/travis-cookbooks/ci_environment/elasticsearch/attributes/default.rb +3 -0
  82. data/chef/travis-cookbooks/ci_environment/elasticsearch/recipes/default.rb +64 -0
  83. data/chef/travis-cookbooks/ci_environment/emacs/metadata.rb +11 -0
  84. data/chef/travis-cookbooks/ci_environment/emacs/recipes/default.rb +21 -0
  85. data/chef/travis-cookbooks/ci_environment/emacs/recipes/nox.rb +32 -0
  86. data/chef/travis-cookbooks/ci_environment/erlang/attributes/default.rb +1 -0
  87. data/chef/travis-cookbooks/ci_environment/erlang/metadata.rb +11 -0
  88. data/chef/travis-cookbooks/ci_environment/erlang/recipes/default.rb +27 -0
  89. data/chef/travis-cookbooks/ci_environment/firefox/recipes/default.rb +29 -0
  90. data/chef/travis-cookbooks/ci_environment/git/README.rdoc +37 -0
  91. data/chef/travis-cookbooks/ci_environment/git/files/default/git_1.7.5.4-1+github5_amd64.deb +0 -0
  92. data/chef/travis-cookbooks/ci_environment/git/files/default/git_1.7.5.4-1+github5_i386.deb +0 -0
  93. data/chef/travis-cookbooks/ci_environment/git/metadata.rb +15 -0
  94. data/chef/travis-cookbooks/ci_environment/git/recipes/custom.git +65 -0
  95. data/chef/travis-cookbooks/ci_environment/git/recipes/default.rb +23 -0
  96. data/chef/travis-cookbooks/ci_environment/git/recipes/ppa.rb +37 -0
  97. data/chef/travis-cookbooks/ci_environment/git/templates/default/sv-git-daemon-log-run.erb +2 -0
  98. data/chef/travis-cookbooks/ci_environment/git/templates/default/sv-git-daemon-run.erb +3 -0
  99. data/chef/travis-cookbooks/ci_environment/golang/README.md +35 -0
  100. data/chef/travis-cookbooks/ci_environment/golang/attributes/default.rb +11 -0
  101. data/chef/travis-cookbooks/ci_environment/golang/recipes/default.rb +20 -0
  102. data/chef/travis-cookbooks/ci_environment/golang/recipes/multi.rb +55 -0
  103. data/chef/travis-cookbooks/ci_environment/golang/recipes/ppa.rb +32 -0
  104. data/chef/travis-cookbooks/ci_environment/gradle/README.md +33 -0
  105. data/chef/travis-cookbooks/ci_environment/gradle/attributes/tarball.rb +9 -0
  106. data/chef/travis-cookbooks/ci_environment/gradle/files/default/etc/profile.d/gradle.sh +1 -0
  107. data/chef/travis-cookbooks/ci_environment/gradle/recipes/tarball.rb +65 -0
  108. data/chef/travis-cookbooks/ci_environment/gvm/files/ubuntu/gvm.sh +3 -0
  109. data/chef/travis-cookbooks/ci_environment/gvm/recipes/default.rb +44 -0
  110. data/chef/travis-cookbooks/ci_environment/haskell/attributes/ghc.rb +4 -0
  111. data/chef/travis-cookbooks/ci_environment/haskell/attributes/platform.rb +5 -0
  112. data/chef/travis-cookbooks/ci_environment/haskell/files/default/cabal.sh +3 -0
  113. data/chef/travis-cookbooks/ci_environment/haskell/recipes/default.rb +38 -0
  114. data/chef/travis-cookbooks/ci_environment/haskell/recipes/ghc_package.rb +28 -0
  115. data/chef/travis-cookbooks/ci_environment/haskell/recipes/ghc_source.rb +78 -0
  116. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_package.rb +52 -0
  117. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_ppa.rb +68 -0
  118. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_source.rb +67 -0
  119. data/chef/travis-cookbooks/ci_environment/haskell/recipes/source.rb +25 -0
  120. data/chef/travis-cookbooks/ci_environment/hbase/recipes/cdh4.rb +49 -0
  121. data/chef/travis-cookbooks/ci_environment/htop/recipes/default.rb +4 -0
  122. data/chef/travis-cookbooks/ci_environment/imagemagick/README.rdoc +33 -0
  123. data/chef/travis-cookbooks/ci_environment/imagemagick/metadata.rb +12 -0
  124. data/chef/travis-cookbooks/ci_environment/imagemagick/recipes/default.rb +37 -0
  125. data/chef/travis-cookbooks/ci_environment/iptables/files/default/iptables_rules +13 -0
  126. data/chef/travis-cookbooks/ci_environment/iptables/metadata.rb +10 -0
  127. data/chef/travis-cookbooks/ci_environment/iptables/recipes/default.rb +48 -0
  128. data/chef/travis-cookbooks/ci_environment/iptables/templates/default/iptables_load.erb +3 -0
  129. data/chef/travis-cookbooks/ci_environment/java/README.md +102 -0
  130. data/chef/travis-cookbooks/ci_environment/java/attributes/default.rb +41 -0
  131. data/chef/travis-cookbooks/ci_environment/java/files/ubuntu/java.seed +14 -0
  132. data/chef/travis-cookbooks/ci_environment/java/files/ubuntu/load_jdk_switcher.sh +7 -0
  133. data/chef/travis-cookbooks/ci_environment/java/files/ubuntu/oraclejdk7.jinfo +44 -0
  134. data/chef/travis-cookbooks/ci_environment/java/files/ubuntu/oraclejdk8.jinfo +44 -0
  135. data/chef/travis-cookbooks/ci_environment/java/files/ubuntu/startssl_root_ca_installer.sh +48 -0
  136. data/chef/travis-cookbooks/ci_environment/java/metadata.rb +16 -0
  137. data/chef/travis-cookbooks/ci_environment/java/recipes/default.rb +30 -0
  138. data/chef/travis-cookbooks/ci_environment/java/recipes/multi.rb +30 -0
  139. data/chef/travis-cookbooks/ci_environment/java/recipes/openjdk6.rb +27 -0
  140. data/chef/travis-cookbooks/ci_environment/java/recipes/openjdk7.rb +27 -0
  141. data/chef/travis-cookbooks/ci_environment/java/recipes/oraclejdk7.rb +78 -0
  142. data/chef/travis-cookbooks/ci_environment/java/recipes/oraclejdk8.rb +71 -0
  143. data/chef/travis-cookbooks/ci_environment/java/templates/ubuntu/etc/profile.d/java_home.sh.erb +3 -0
  144. data/chef/travis-cookbooks/ci_environment/kerl/README.md +3 -0
  145. data/chef/travis-cookbooks/ci_environment/kerl/attributes/default.rb +1 -0
  146. data/chef/travis-cookbooks/ci_environment/kerl/attributes/source.rb +2 -0
  147. data/chef/travis-cookbooks/ci_environment/kerl/metadata.rb +6 -0
  148. data/chef/travis-cookbooks/ci_environment/kerl/recipes/default.rb +19 -0
  149. data/chef/travis-cookbooks/ci_environment/kerl/recipes/source.rb +96 -0
  150. data/chef/travis-cookbooks/ci_environment/kestrel/attributes/tarball.rb +15 -0
  151. data/chef/travis-cookbooks/ci_environment/kestrel/files/default/config/development.scala +33 -0
  152. data/chef/travis-cookbooks/ci_environment/kestrel/recipes/tarball.rb +134 -0
  153. data/chef/travis-cookbooks/ci_environment/kestrel/templates/ubuntu/kestrel-limits.conf.erb +2 -0
  154. data/chef/travis-cookbooks/ci_environment/kestrel/templates/ubuntu/kestrel.init.erb +208 -0
  155. data/chef/travis-cookbooks/ci_environment/leiningen/README.rdoc +5 -0
  156. data/chef/travis-cookbooks/ci_environment/leiningen/attributes/default.rb +5 -0
  157. data/chef/travis-cookbooks/ci_environment/leiningen/files/default/profiles.clj +1 -0
  158. data/chef/travis-cookbooks/ci_environment/leiningen/metadata.json +32 -0
  159. data/chef/travis-cookbooks/ci_environment/leiningen/metadata.rb +8 -0
  160. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/default.rb +23 -0
  161. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/lein1x.rb +68 -0
  162. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/lein2x.rb +82 -0
  163. data/chef/travis-cookbooks/ci_environment/libffi/recipes/default.rb +34 -0
  164. data/chef/travis-cookbooks/ci_environment/libgdbm/recipes/default.rb +27 -0
  165. data/chef/travis-cookbooks/ci_environment/libncurses/recipes/default.rb +31 -0
  166. data/chef/travis-cookbooks/ci_environment/libossp-uuid/recipes/default.rb +27 -0
  167. data/chef/travis-cookbooks/ci_environment/libqt4/recipes/default.rb +5 -0
  168. data/chef/travis-cookbooks/ci_environment/libreadline/recipes/default.rb +34 -0
  169. data/chef/travis-cookbooks/ci_environment/libssl/recipes/098.rb +28 -0
  170. data/chef/travis-cookbooks/ci_environment/libssl/recipes/default.rb +24 -0
  171. data/chef/travis-cookbooks/ci_environment/libxml/recipes/default.rb +30 -0
  172. data/chef/travis-cookbooks/ci_environment/libyaml/recipes/default.rb +6 -0
  173. data/chef/travis-cookbooks/ci_environment/lighttpd/attributes/default.rb +3 -0
  174. data/chef/travis-cookbooks/ci_environment/lighttpd/recipes/default.rb +39 -0
  175. data/chef/travis-cookbooks/ci_environment/lighttpd/templates/default/lighttpd.conf.erb +166 -0
  176. data/chef/travis-cookbooks/ci_environment/maven3/attributes/default.rb +3 -0
  177. data/chef/travis-cookbooks/ci_environment/maven3/files/default/settings.xml +136 -0
  178. data/chef/travis-cookbooks/ci_environment/maven3/recipes/default.rb +53 -0
  179. data/chef/travis-cookbooks/ci_environment/maven3/recipes/package.rb +27 -0
  180. data/chef/travis-cookbooks/ci_environment/maven3/recipes/ppa.rb +44 -0
  181. data/chef/travis-cookbooks/ci_environment/maven3/recipes/tarball.rb +37 -0
  182. data/chef/travis-cookbooks/ci_environment/maven3/templates/ubuntu-11.04/install_maven3.sh.erb +32 -0
  183. data/chef/travis-cookbooks/ci_environment/memcached/README.rdoc +52 -0
  184. data/chef/travis-cookbooks/ci_environment/memcached/attributes/default.rb +5 -0
  185. data/chef/travis-cookbooks/ci_environment/memcached/attributes/ppa.rb +3 -0
  186. data/chef/travis-cookbooks/ci_environment/memcached/definitions/memcached_instance.rb +32 -0
  187. data/chef/travis-cookbooks/ci_environment/memcached/metadata.rb +33 -0
  188. data/chef/travis-cookbooks/ci_environment/memcached/recipes/default.rb +60 -0
  189. data/chef/travis-cookbooks/ci_environment/memcached/recipes/ppa.rb +34 -0
  190. data/chef/travis-cookbooks/ci_environment/memcached/templates/default/memcached.conf.erb +54 -0
  191. data/chef/travis-cookbooks/ci_environment/memcached/templates/default/memcached.default.erb +2 -0
  192. data/chef/travis-cookbooks/ci_environment/memcached/templates/default/sv-memcached-log-run.erb +2 -0
  193. data/chef/travis-cookbooks/ci_environment/memcached/templates/default/sv-memcached-run.erb +3 -0
  194. data/chef/travis-cookbooks/ci_environment/mercurial/recipes/default.rb +26 -0
  195. data/chef/travis-cookbooks/ci_environment/mingw32/README.md +21 -0
  196. data/chef/travis-cookbooks/ci_environment/mingw32/metadata.rb +10 -0
  197. data/chef/travis-cookbooks/ci_environment/mingw32/recipes/default.rb +23 -0
  198. data/chef/travis-cookbooks/ci_environment/mongodb/.gitignore +1 -0
  199. data/chef/travis-cookbooks/ci_environment/mongodb/README.md +0 -0
  200. data/chef/travis-cookbooks/ci_environment/mongodb/attributes/mongodb.rb +67 -0
  201. data/chef/travis-cookbooks/ci_environment/mongodb/files/default/mongodb.list +1 -0
  202. data/chef/travis-cookbooks/ci_environment/mongodb/files/default/mongodb.sysvinit.sh +261 -0
  203. data/chef/travis-cookbooks/ci_environment/mongodb/metadata.rb +235 -0
  204. data/chef/travis-cookbooks/ci_environment/mongodb/recipes/apt.rb +65 -0
  205. data/chef/travis-cookbooks/ci_environment/mongodb/recipes/default.rb +23 -0
  206. data/chef/travis-cookbooks/ci_environment/mongodb/recipes/server.rb +43 -0
  207. data/chef/travis-cookbooks/ci_environment/mongodb/templates/default/mongod.upstart.erb +16 -0
  208. data/chef/travis-cookbooks/ci_environment/mongodb/templates/default/mongodb.conf.erb +5 -0
  209. data/chef/travis-cookbooks/ci_environment/mongodb/templates/default/mongodb.init.10gen.erb +74 -0
  210. data/chef/travis-cookbooks/ci_environment/mongodb/templates/default/mongodb.init.erb +268 -0
  211. data/chef/travis-cookbooks/ci_environment/mongodb/templates/default/mongodb.list.erb +1 -0
  212. data/chef/travis-cookbooks/ci_environment/mysql/README.md +141 -0
  213. data/chef/travis-cookbooks/ci_environment/mysql/attributes/default.rb +3 -0
  214. data/chef/travis-cookbooks/ci_environment/mysql/attributes/server.rb +69 -0
  215. data/chef/travis-cookbooks/ci_environment/mysql/attributes/server_on_ramfs.rb +1 -0
  216. data/chef/travis-cookbooks/ci_environment/mysql/libraries/database.rb +19 -0
  217. data/chef/travis-cookbooks/ci_environment/mysql/libraries/helpers.rb +33 -0
  218. data/chef/travis-cookbooks/ci_environment/mysql/metadata.rb +76 -0
  219. data/chef/travis-cookbooks/ci_environment/mysql/providers/database.rb +81 -0
  220. data/chef/travis-cookbooks/ci_environment/mysql/recipes/client.rb +60 -0
  221. data/chef/travis-cookbooks/ci_environment/mysql/recipes/default.rb +20 -0
  222. data/chef/travis-cookbooks/ci_environment/mysql/recipes/server.rb +125 -0
  223. data/chef/travis-cookbooks/ci_environment/mysql/recipes/server_on_ramfs.rb +83 -0
  224. data/chef/travis-cookbooks/ci_environment/mysql/resources/database.rb +27 -0
  225. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/debian.cnf.erb +12 -0
  226. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/grants.sql.erb +33 -0
  227. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/init/mysql.conf.erb +49 -0
  228. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/my.cnf.erb +184 -0
  229. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/mysql-server.seed.erb +10 -0
  230. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/port_mysql.erb +3 -0
  231. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/ramfs/my.cnf.erb +177 -0
  232. data/chef/travis-cookbooks/ci_environment/neo4j-server/.gitignore +4 -0
  233. data/chef/travis-cookbooks/ci_environment/neo4j-server/README.md +47 -0
  234. data/chef/travis-cookbooks/ci_environment/neo4j-server/attributes/tarball.rb +32 -0
  235. data/chef/travis-cookbooks/ci_environment/neo4j-server/recipes/tarball.rb +140 -0
  236. data/chef/travis-cookbooks/ci_environment/neo4j-server/templates/default/neo4j-limits.conf.erb +2 -0
  237. data/chef/travis-cookbooks/ci_environment/neo4j-server/templates/default/neo4j-server.properties.erb +75 -0
  238. data/chef/travis-cookbooks/ci_environment/neo4j-server/templates/default/neo4j-wrapper.conf.erb +26 -0
  239. data/chef/travis-cookbooks/ci_environment/neo4j-server/templates/default/neo4j.init.erb +55 -0
  240. data/chef/travis-cookbooks/ci_environment/networking_basic/recipes/default.rb +36 -0
  241. data/chef/travis-cookbooks/ci_environment/nodejs/attributes/multi.rb +3 -0
  242. data/chef/travis-cookbooks/ci_environment/nodejs/files/default/nvm.sh +281 -0
  243. data/chef/travis-cookbooks/ci_environment/nodejs/files/default/profile_entry.sh +3 -0
  244. data/chef/travis-cookbooks/ci_environment/nodejs/recipes/multi.rb +79 -0
  245. data/chef/travis-cookbooks/ci_environment/nodejs/templates/default/nvm.sh.erb +3 -0
  246. data/chef/travis-cookbooks/ci_environment/openssh/files/default/ssh_init.sh +181 -0
  247. data/chef/travis-cookbooks/ci_environment/openssh/files/default/sshd_config +56 -0
  248. data/chef/travis-cookbooks/ci_environment/openssh/recipes/default.rb +42 -0
  249. data/chef/travis-cookbooks/ci_environment/openssl/README.md +37 -0
  250. data/chef/travis-cookbooks/ci_environment/openssl/libraries/secure_password.rb +37 -0
  251. data/chef/travis-cookbooks/ci_environment/openssl/metadata.rb +8 -0
  252. data/chef/travis-cookbooks/ci_environment/openssl/recipes/default.rb +19 -0
  253. data/chef/travis-cookbooks/ci_environment/perlbrew/attributes/default.rb +0 -0
  254. data/chef/travis-cookbooks/ci_environment/perlbrew/attributes/multi.rb +7 -0
  255. data/chef/travis-cookbooks/ci_environment/perlbrew/files/default/perlbrew.sh +7 -0
  256. data/chef/travis-cookbooks/ci_environment/perlbrew/metadata.rb +11 -0
  257. data/chef/travis-cookbooks/ci_environment/perlbrew/recipes/default.rb +26 -0
  258. data/chef/travis-cookbooks/ci_environment/perlbrew/recipes/multi.rb +41 -0
  259. data/chef/travis-cookbooks/ci_environment/phantomjs/attributes/default.rb +10 -0
  260. data/chef/travis-cookbooks/ci_environment/phantomjs/files/ubuntu/etc/profile.d/phantomjs.sh +1 -0
  261. data/chef/travis-cookbooks/ci_environment/phantomjs/recipes/default.rb +24 -0
  262. data/chef/travis-cookbooks/ci_environment/phantomjs/recipes/tarball.rb +68 -0
  263. data/chef/travis-cookbooks/ci_environment/php/README.md +5 -0
  264. data/chef/travis-cookbooks/ci_environment/php/attributes/default.rb +2 -0
  265. data/chef/travis-cookbooks/ci_environment/php/metadata.rb +10 -0
  266. data/chef/travis-cookbooks/ci_environment/php/recipes/multi.rb +25 -0
  267. data/chef/travis-cookbooks/ci_environment/phpbuild/attributes/default.rb +19 -0
  268. data/chef/travis-cookbooks/ci_environment/phpbuild/files/default/definitions/5.2.17 +16 -0
  269. data/chef/travis-cookbooks/ci_environment/phpbuild/files/default/definitions/5.3.3 +5 -0
  270. data/chef/travis-cookbooks/ci_environment/phpbuild/metadata.rb +5 -0
  271. data/chef/travis-cookbooks/ci_environment/phpbuild/providers/build.rb +56 -0
  272. data/chef/travis-cookbooks/ci_environment/phpbuild/recipes/default.rb +124 -0
  273. data/chef/travis-cookbooks/ci_environment/phpbuild/resources/build.rb +7 -0
  274. data/chef/travis-cookbooks/ci_environment/phpbuild/templates/default/default_configure_options.erb +38 -0
  275. data/chef/travis-cookbooks/ci_environment/phpbuild/templates/default/travis.ini.erb +9 -0
  276. data/chef/travis-cookbooks/ci_environment/phpenv/files/default/phpenv.sh +5 -0
  277. data/chef/travis-cookbooks/ci_environment/phpenv/metadata.rb +5 -0
  278. data/chef/travis-cookbooks/ci_environment/phpenv/recipes/default.rb +29 -0
  279. data/chef/travis-cookbooks/ci_environment/postgresql/README.rdoc +49 -0
  280. data/chef/travis-cookbooks/ci_environment/postgresql/attributes/default.rb +74 -0
  281. data/chef/travis-cookbooks/ci_environment/postgresql/metadata.rb +13 -0
  282. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/client.rb +28 -0
  283. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/default.rb +20 -0
  284. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/server.rb +83 -0
  285. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/server_debian.rb +73 -0
  286. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/server_on_ramfs.rb +32 -0
  287. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/server_redhat.rb +84 -0
  288. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/30-shared-memory.conf.erb +2 -0
  289. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/debian.pg_hba.conf.erb +83 -0
  290. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/debian.postgresql.conf.erb +234 -0
  291. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/ramfs.init.erb +50 -0
  292. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/redhat.pg_hba.conf.erb +74 -0
  293. data/chef/travis-cookbooks/ci_environment/postgresql/templates/default/redhat.postgresql.conf.erb +502 -0
  294. data/chef/travis-cookbooks/ci_environment/pypy/attributes/default.rb +21 -0
  295. data/chef/travis-cookbooks/ci_environment/pypy/files/default/etc/profile.d/pypy.sh +1 -0
  296. data/chef/travis-cookbooks/ci_environment/pypy/recipes/ppa.rb +39 -0
  297. data/chef/travis-cookbooks/ci_environment/pypy/recipes/tarball.rb +54 -0
  298. data/chef/travis-cookbooks/ci_environment/python/README.md +162 -0
  299. data/chef/travis-cookbooks/ci_environment/python/attributes/default.rb +22 -0
  300. data/chef/travis-cookbooks/ci_environment/python/files/default/virtualenv_settings.sh +1 -0
  301. data/chef/travis-cookbooks/ci_environment/python/metadata.json +52 -0
  302. data/chef/travis-cookbooks/ci_environment/python/metadata.rb +17 -0
  303. data/chef/travis-cookbooks/ci_environment/python/providers/pip.rb +146 -0
  304. data/chef/travis-cookbooks/ci_environment/python/providers/virtualenv.rb +79 -0
  305. data/chef/travis-cookbooks/ci_environment/python/recipes/default.rb +21 -0
  306. data/chef/travis-cookbooks/ci_environment/python/recipes/multi.rb +150 -0
  307. data/chef/travis-cookbooks/ci_environment/python/recipes/package.rb +36 -0
  308. data/chef/travis-cookbooks/ci_environment/python/recipes/pip.rb +38 -0
  309. data/chef/travis-cookbooks/ci_environment/python/recipes/virtualenv.rb +32 -0
  310. data/chef/travis-cookbooks/ci_environment/python/resources/pip.rb +26 -0
  311. data/chef/travis-cookbooks/ci_environment/python/resources/virtualenv.rb +28 -0
  312. data/chef/travis-cookbooks/ci_environment/rabbitmq/README.md +86 -0
  313. data/chef/travis-cookbooks/ci_environment/rabbitmq/attributes/default.rb +8 -0
  314. data/chef/travis-cookbooks/ci_environment/rabbitmq/metadata.rb +63 -0
  315. data/chef/travis-cookbooks/ci_environment/rabbitmq/providers/user.rb +66 -0
  316. data/chef/travis-cookbooks/ci_environment/rabbitmq/providers/vhost.rb +34 -0
  317. data/chef/travis-cookbooks/ci_environment/rabbitmq/recipes/default.rb +63 -0
  318. data/chef/travis-cookbooks/ci_environment/rabbitmq/recipes/with_management_plugin.rb +15 -0
  319. data/chef/travis-cookbooks/ci_environment/rabbitmq/resources/user.rb +25 -0
  320. data/chef/travis-cookbooks/ci_environment/rabbitmq/resources/vhost.rb +22 -0
  321. data/chef/travis-cookbooks/ci_environment/rabbitmq/templates/default/doterlang.cookie.erb +1 -0
  322. data/chef/travis-cookbooks/ci_environment/rabbitmq/templates/default/rabbitmq-env.conf.erb +10 -0
  323. data/chef/travis-cookbooks/ci_environment/rabbitmq/templates/default/rabbitmq.config.erb +5 -0
  324. data/chef/travis-cookbooks/ci_environment/rabbitmq/templates/default/rabbitmq_cluster.config.erb +5 -0
  325. data/chef/travis-cookbooks/ci_environment/ragel/recipes/custom.rb +56 -0
  326. data/chef/travis-cookbooks/ci_environment/ragel/recipes/default.rb +28 -0
  327. data/chef/travis-cookbooks/ci_environment/ramfs/attributes/default.rb +1 -0
  328. data/chef/travis-cookbooks/ci_environment/ramfs/recipes/default.rb +27 -0
  329. data/chef/travis-cookbooks/ci_environment/rebar/README.md +3 -0
  330. data/chef/travis-cookbooks/ci_environment/rebar/attributes/default.rb +2 -0
  331. data/chef/travis-cookbooks/ci_environment/rebar/metadata.rb +7 -0
  332. data/chef/travis-cookbooks/ci_environment/rebar/recipes/default.rb +26 -0
  333. data/chef/travis-cookbooks/ci_environment/redis/attributes/default.rb +7 -0
  334. data/chef/travis-cookbooks/ci_environment/redis/recipes/default.rb +65 -0
  335. data/chef/travis-cookbooks/ci_environment/redis/recipes/ppa.rb +42 -0
  336. data/chef/travis-cookbooks/ci_environment/riak/.gitignore +1 -0
  337. data/chef/travis-cookbooks/ci_environment/riak/README.md +161 -0
  338. data/chef/travis-cookbooks/ci_environment/riak/attributes/api.rb +21 -0
  339. data/chef/travis-cookbooks/ci_environment/riak/attributes/bitcask.rb +22 -0
  340. data/chef/travis-cookbooks/ci_environment/riak/attributes/control.rb +23 -0
  341. data/chef/travis-cookbooks/ci_environment/riak/attributes/core.rb +41 -0
  342. data/chef/travis-cookbooks/ci_environment/riak/attributes/default.rb +32 -0
  343. data/chef/travis-cookbooks/ci_environment/riak/attributes/dets.rb +20 -0
  344. data/chef/travis-cookbooks/ci_environment/riak/attributes/eleveldb.rb +6 -0
  345. data/chef/travis-cookbooks/ci_environment/riak/attributes/erlang.rb +30 -0
  346. data/chef/travis-cookbooks/ci_environment/riak/attributes/err.rb +21 -0
  347. data/chef/travis-cookbooks/ci_environment/riak/attributes/innostore.rb +28 -0
  348. data/chef/travis-cookbooks/ci_environment/riak/attributes/kernel.rb +22 -0
  349. data/chef/travis-cookbooks/ci_environment/riak/attributes/kv.rb +62 -0
  350. data/chef/travis-cookbooks/ci_environment/riak/attributes/lager.rb +31 -0
  351. data/chef/travis-cookbooks/ci_environment/riak/attributes/merge.rb +22 -0
  352. data/chef/travis-cookbooks/ci_environment/riak/attributes/netdev.rb +22 -0
  353. data/chef/travis-cookbooks/ci_environment/riak/attributes/package.rb +30 -0
  354. data/chef/travis-cookbooks/ci_environment/riak/attributes/sasl.rb +25 -0
  355. data/chef/travis-cookbooks/ci_environment/riak/attributes/search.rb +19 -0
  356. data/chef/travis-cookbooks/ci_environment/riak/attributes/sysmon.rb +25 -0
  357. data/chef/travis-cookbooks/ci_environment/riak/libraries/riak_template_helper.rb +180 -0
  358. data/chef/travis-cookbooks/ci_environment/riak/metadata.rb +32 -0
  359. data/chef/travis-cookbooks/ci_environment/riak/providers/cluster.rb +80 -0
  360. data/chef/travis-cookbooks/ci_environment/riak/recipes/autoconf.rb +47 -0
  361. data/chef/travis-cookbooks/ci_environment/riak/recipes/config.rb +70 -0
  362. data/chef/travis-cookbooks/ci_environment/riak/recipes/default.rb +155 -0
  363. data/chef/travis-cookbooks/ci_environment/riak/recipes/innostore.rb +74 -0
  364. data/chef/travis-cookbooks/ci_environment/riak/recipes/iptables.rb +25 -0
  365. data/chef/travis-cookbooks/ci_environment/riak/resources/cluster.rb +27 -0
  366. data/chef/travis-cookbooks/ci_environment/riak/templates/default/app.config.erb +2 -0
  367. data/chef/travis-cookbooks/ci_environment/riak/templates/default/iptables.erb +13 -0
  368. data/chef/travis-cookbooks/ci_environment/riak/templates/default/vm.args.erb +2 -0
  369. data/chef/travis-cookbooks/ci_environment/rvm/attributes/default.rb +1 -0
  370. data/chef/travis-cookbooks/ci_environment/rvm/attributes/multi.rb +4 -0
  371. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/default.gems +1 -0
  372. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/global.gems +2 -0
  373. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/jruby/global.gems +4 -0
  374. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/ruby/1.8.6/global.gems +2 -0
  375. data/chef/travis-cookbooks/ci_environment/rvm/files/default/rvm.sh +3 -0
  376. data/chef/travis-cookbooks/ci_environment/rvm/metadata.json +43 -0
  377. data/chef/travis-cookbooks/ci_environment/rvm/metadata.rb +25 -0
  378. data/chef/travis-cookbooks/ci_environment/rvm/recipes/default.rb +76 -0
  379. data/chef/travis-cookbooks/ci_environment/rvm/recipes/multi.rb +83 -0
  380. data/chef/travis-cookbooks/ci_environment/rvm/templates/default/dot_rvmrc.sh.erb +3 -0
  381. data/chef/travis-cookbooks/ci_environment/sbt/README.md +3 -0
  382. data/chef/travis-cookbooks/ci_environment/sbt/attributes/default.rb +10 -0
  383. data/chef/travis-cookbooks/ci_environment/sbt/metadata.json +32 -0
  384. data/chef/travis-cookbooks/ci_environment/sbt/metadata.rb +8 -0
  385. data/chef/travis-cookbooks/ci_environment/sbt/recipes/default.rb +69 -0
  386. data/chef/travis-cookbooks/ci_environment/scons/recipes/default.rb +3 -0
  387. data/chef/travis-cookbooks/ci_environment/sphinx/README.md +0 -0
  388. data/chef/travis-cookbooks/ci_environment/sphinx/attributes/default.rb +8 -0
  389. data/chef/travis-cookbooks/ci_environment/sphinx/metadata.rb +17 -0
  390. data/chef/travis-cookbooks/ci_environment/sphinx/recipes/all.rb +64 -0
  391. data/chef/travis-cookbooks/ci_environment/sphinx/recipes/default.rb +24 -0
  392. data/chef/travis-cookbooks/ci_environment/sqlite/metadata.rb +11 -0
  393. data/chef/travis-cookbooks/ci_environment/sqlite/recipes/default.rb +30 -0
  394. data/chef/travis-cookbooks/ci_environment/subversion/recipes/default.rb +24 -0
  395. data/chef/travis-cookbooks/ci_environment/sweeper/recipes/default.rb +45 -0
  396. data/chef/travis-cookbooks/ci_environment/sysctl/attributes/default.rb +5 -0
  397. data/chef/travis-cookbooks/ci_environment/sysctl/recipes/default.rb +6 -0
  398. data/chef/travis-cookbooks/ci_environment/sysctl/templates/default/sysctl.conf.erb +2 -0
  399. data/chef/travis-cookbooks/ci_environment/timezone/attributes/default.rb +1 -0
  400. data/chef/travis-cookbooks/ci_environment/timezone/metadata.json +35 -0
  401. data/chef/travis-cookbooks/ci_environment/timezone/metadata.rb +9 -0
  402. data/chef/travis-cookbooks/ci_environment/timezone/recipes/._default.rb +0 -0
  403. data/chef/travis-cookbooks/ci_environment/timezone/recipes/default.rb +38 -0
  404. data/chef/travis-cookbooks/ci_environment/timezone/templates/default/timezone.conf.erb +1 -0
  405. data/chef/travis-cookbooks/ci_environment/travis_build_environment/attributes/default.rb +18 -0
  406. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/ci_user/dot_gemrc.yml +1 -0
  407. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/ci_user/known_hosts +1 -0
  408. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/ci_user/travis_environment.sh +27 -0
  409. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/etc/default/locale.sh +1 -0
  410. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/etc/sudoers/env_keep +1 -0
  411. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/root/dot_bashrc.sh +86 -0
  412. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/root/recover_eth0.sh +8 -0
  413. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/ci_user.rb +104 -0
  414. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/default.rb +136 -0
  415. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/root.rb +44 -0
  416. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/ci_user/ci_environment_metadata.yml.erb +2 -0
  417. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/ci_user/dot_bashrc.sh +115 -0
  418. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/apt/assumeyes.erb +1 -0
  419. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/apt/timeouts.erb +3 -0
  420. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/environment.sh.erb +11 -0
  421. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/hostname.erb +12 -0
  422. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/hosts.erb +30 -0
  423. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/etc/security/limits.conf.erb +62 -0
  424. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/root/dot_bashrc.sh.erb +88 -0
  425. data/chef/travis-cookbooks/ci_environment/unarchivers/recipes/default.rb +29 -0
  426. data/chef/travis-cookbooks/ci_environment/util-linux/recipes/default.rb +5 -0
  427. data/chef/travis-cookbooks/ci_environment/vim/README.md +39 -0
  428. data/chef/travis-cookbooks/ci_environment/vim/attributes/default.rb +20 -0
  429. data/chef/travis-cookbooks/ci_environment/vim/metadata.rb +6 -0
  430. data/chef/travis-cookbooks/ci_environment/vim/recipes/default.rb +24 -0
  431. data/chef/travis-cookbooks/ci_environment/xserver/files/default/etc/init.d/xvfb.sh +24 -0
  432. data/chef/travis-cookbooks/ci_environment/xserver/recipes/default.rb +37 -0
  433. data/chef/travis-cookbooks/ci_environment/zeromq/attributes/default.rb +7 -0
  434. data/chef/travis-cookbooks/ci_environment/zeromq/recipes/20x.rb +33 -0
  435. data/chef/travis-cookbooks/ci_environment/zeromq/recipes/default.rb +44 -0
  436. data/chef/travis-cookbooks/ci_environment/zookeeper/recipes/cdh4.rb +51 -0
  437. data/chef/travis-cookbooks/messaging_broker/build-essential/README.md +24 -0
  438. data/chef/travis-cookbooks/messaging_broker/build-essential/metadata.rb +10 -0
  439. data/chef/travis-cookbooks/messaging_broker/build-essential/recipes/default.rb +45 -0
  440. data/chef/travis-cookbooks/messaging_broker/emacs/metadata.rb +11 -0
  441. data/chef/travis-cookbooks/messaging_broker/emacs/recipes/default.rb +21 -0
  442. data/chef/travis-cookbooks/messaging_broker/erlang/attributes/default.rb +1 -0
  443. data/chef/travis-cookbooks/messaging_broker/erlang/metadata.rb +11 -0
  444. data/chef/travis-cookbooks/messaging_broker/erlang/recipes/default.rb +27 -0
  445. data/chef/travis-cookbooks/messaging_broker/git/README.rdoc +37 -0
  446. data/chef/travis-cookbooks/messaging_broker/git/metadata.rb +16 -0
  447. data/chef/travis-cookbooks/messaging_broker/git/recipes/default.rb +24 -0
  448. data/chef/travis-cookbooks/messaging_broker/git/recipes/server.rb +34 -0
  449. data/chef/travis-cookbooks/messaging_broker/git/templates/default/sv-git-daemon-log-run.erb +2 -0
  450. data/chef/travis-cookbooks/messaging_broker/git/templates/default/sv-git-daemon-run.erb +3 -0
  451. data/chef/travis-cookbooks/messaging_broker/haproxy/README.md +79 -0
  452. data/chef/travis-cookbooks/messaging_broker/haproxy/attributes/default.rb +22 -0
  453. data/chef/travis-cookbooks/messaging_broker/haproxy/metadata.rb +13 -0
  454. data/chef/travis-cookbooks/messaging_broker/haproxy/recipes/app_lb.rb +50 -0
  455. data/chef/travis-cookbooks/messaging_broker/haproxy/recipes/default.rb +42 -0
  456. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy-app_lb.cfg.erb +34 -0
  457. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy-default.erb +4 -0
  458. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy.cfg.erb +27 -0
  459. data/chef/travis-cookbooks/messaging_broker/iptables/definitions/iptables_rule.rb +35 -0
  460. data/chef/travis-cookbooks/messaging_broker/iptables/files/default/rebuild-iptables +284 -0
  461. data/chef/travis-cookbooks/messaging_broker/iptables/metadata.rb +10 -0
  462. data/chef/travis-cookbooks/messaging_broker/iptables/recipes/default.rb +50 -0
  463. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/all_established.erb +2 -0
  464. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/all_icmp.erb +2 -0
  465. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/iptables_load.erb +3 -0
  466. data/chef/travis-cookbooks/messaging_broker/openssl/README.md +37 -0
  467. data/chef/travis-cookbooks/messaging_broker/openssl/libraries/secure_password.rb +37 -0
  468. data/chef/travis-cookbooks/messaging_broker/openssl/metadata.rb +8 -0
  469. data/chef/travis-cookbooks/messaging_broker/openssl/recipes/default.rb +19 -0
  470. data/chef/travis-cookbooks/messaging_broker/rabbitmq/README.md +86 -0
  471. data/chef/travis-cookbooks/messaging_broker/rabbitmq/attributes/default.rb +10 -0
  472. data/chef/travis-cookbooks/messaging_broker/rabbitmq/metadata.rb +63 -0
  473. data/chef/travis-cookbooks/messaging_broker/rabbitmq/providers/user.rb +66 -0
  474. data/chef/travis-cookbooks/messaging_broker/rabbitmq/providers/vhost.rb +34 -0
  475. data/chef/travis-cookbooks/messaging_broker/rabbitmq/recipes/cluster.rb +35 -0
  476. data/chef/travis-cookbooks/messaging_broker/rabbitmq/recipes/default.rb +51 -0
  477. data/chef/travis-cookbooks/messaging_broker/rabbitmq/resources/user.rb +25 -0
  478. data/chef/travis-cookbooks/messaging_broker/rabbitmq/resources/vhost.rb +22 -0
  479. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/doterlang.cookie.erb +1 -0
  480. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/rabbitmq-env.conf.erb +10 -0
  481. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/rabbitmq_cluster.config.erb +5 -0
  482. data/chef/travis-cookbooks/worker_host/.gitignore +1 -0
  483. data/chef/travis-cookbooks/worker_host/ant/README.md +51 -0
  484. data/chef/travis-cookbooks/worker_host/ant/metadata.rb +12 -0
  485. data/chef/travis-cookbooks/worker_host/ant/recipes/default.rb +36 -0
  486. data/chef/travis-cookbooks/worker_host/apt/README.md +109 -0
  487. data/chef/travis-cookbooks/worker_host/apt/files/default/apt-cacher +9 -0
  488. data/chef/travis-cookbooks/worker_host/apt/files/default/apt-cacher.conf +144 -0
  489. data/chef/travis-cookbooks/worker_host/apt/files/default/apt-proxy-v2.conf +50 -0
  490. data/chef/travis-cookbooks/worker_host/apt/metadata.json +34 -0
  491. data/chef/travis-cookbooks/worker_host/apt/metadata.rb +13 -0
  492. data/chef/travis-cookbooks/worker_host/apt/providers/repository.rb +72 -0
  493. data/chef/travis-cookbooks/worker_host/apt/recipes/cacher-client.rb +37 -0
  494. data/chef/travis-cookbooks/worker_host/apt/recipes/cacher.rb +45 -0
  495. data/chef/travis-cookbooks/worker_host/apt/recipes/default.rb +33 -0
  496. data/chef/travis-cookbooks/worker_host/apt/resources/repository.rb +30 -0
  497. data/chef/travis-cookbooks/worker_host/build-essential/README.md +24 -0
  498. data/chef/travis-cookbooks/worker_host/build-essential/metadata.rb +10 -0
  499. data/chef/travis-cookbooks/worker_host/build-essential/recipes/default.rb +45 -0
  500. data/chef/travis-cookbooks/worker_host/chef-client/CHANGELOG.md +29 -0
  501. data/chef/travis-cookbooks/worker_host/chef-client/CONTRIBUTING +29 -0
  502. data/chef/travis-cookbooks/worker_host/chef-client/LICENSE +201 -0
  503. data/chef/travis-cookbooks/worker_host/chef-client/README.md +265 -0
  504. data/chef/travis-cookbooks/worker_host/chef-client/attributes/default.rb +70 -0
  505. data/chef/travis-cookbooks/worker_host/chef-client/metadata.json +44 -0
  506. data/chef/travis-cookbooks/worker_host/chef-client/metadata.rb +15 -0
  507. data/chef/travis-cookbooks/worker_host/chef-client/recipes/config.rb +53 -0
  508. data/chef/travis-cookbooks/worker_host/chef-client/recipes/cron.rb +83 -0
  509. data/chef/travis-cookbooks/worker_host/chef-client/recipes/default.rb +20 -0
  510. data/chef/travis-cookbooks/worker_host/chef-client/recipes/delete_validation.rb +26 -0
  511. data/chef/travis-cookbooks/worker_host/chef-client/recipes/service.rb +242 -0
  512. data/chef/travis-cookbooks/worker_host/chef-client/templates/arch/conf.d/chef-client.conf.erb +5 -0
  513. data/chef/travis-cookbooks/worker_host/chef-client/templates/arch/rc.d/chef-client.erb +76 -0
  514. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/chef-client.pill.erb +14 -0
  515. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/client.rb.erb +36 -0
  516. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/debian/default/chef-client.erb +4 -0
  517. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/debian/init.d/chef-client.erb +185 -0
  518. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/debian/init/chef-client.conf.erb +17 -0
  519. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/redhat/init.d/chef-client.erb +110 -0
  520. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/redhat/sysconfig/chef-client.erb +15 -0
  521. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/solaris/chef-client.erb +78 -0
  522. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/solaris/manifest.xml.erb +103 -0
  523. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/sv-chef-client-log-run.erb +2 -0
  524. data/chef/travis-cookbooks/worker_host/chef-client/templates/default/sv-chef-client-run.erb +4 -0
  525. data/chef/travis-cookbooks/worker_host/chef-client/templates/windows/chef-client.xml.erb +38 -0
  526. data/chef/travis-cookbooks/worker_host/chef_handler/CHANGELOG.md +12 -0
  527. data/chef/travis-cookbooks/worker_host/chef_handler/CONTRIBUTING +29 -0
  528. data/chef/travis-cookbooks/worker_host/chef_handler/LICENSE +201 -0
  529. data/chef/travis-cookbooks/worker_host/chef_handler/README.md +103 -0
  530. data/chef/travis-cookbooks/worker_host/chef_handler/attributes/default.rb +21 -0
  531. data/chef/travis-cookbooks/worker_host/chef_handler/files/default/handlers/README +1 -0
  532. data/chef/travis-cookbooks/worker_host/chef_handler/files/default/handlers/campfire_handler.rb +61 -0
  533. data/chef/travis-cookbooks/worker_host/chef_handler/metadata.json +29 -0
  534. data/chef/travis-cookbooks/worker_host/chef_handler/metadata.rb +6 -0
  535. data/chef/travis-cookbooks/worker_host/chef_handler/providers/default.rb +83 -0
  536. data/chef/travis-cookbooks/worker_host/chef_handler/recipes/campfire.rb +15 -0
  537. data/chef/travis-cookbooks/worker_host/chef_handler/recipes/default.rb +31 -0
  538. data/chef/travis-cookbooks/worker_host/chef_handler/recipes/json_file.rb +28 -0
  539. data/chef/travis-cookbooks/worker_host/chef_handler/resources/default.rb +34 -0
  540. data/chef/travis-cookbooks/worker_host/collectd-librato/.gitignore +1 -0
  541. data/chef/travis-cookbooks/worker_host/collectd-librato/README.md +22 -0
  542. data/chef/travis-cookbooks/worker_host/collectd-librato/attributes/collectd_librato.rb +4 -0
  543. data/chef/travis-cookbooks/worker_host/collectd-librato/metadata.rb +11 -0
  544. data/chef/travis-cookbooks/worker_host/collectd-librato/recipes/default.rb +41 -0
  545. data/chef/travis-cookbooks/worker_host/collectd/README.rdoc +85 -0
  546. data/chef/travis-cookbooks/worker_host/collectd/attributes/default.rb +33 -0
  547. data/chef/travis-cookbooks/worker_host/collectd/definitions/collectd_plugin.rb +52 -0
  548. data/chef/travis-cookbooks/worker_host/collectd/libraries/default.rb +47 -0
  549. data/chef/travis-cookbooks/worker_host/collectd/metadata.rb +15 -0
  550. data/chef/travis-cookbooks/worker_host/collectd/recipes/client.rb +33 -0
  551. data/chef/travis-cookbooks/worker_host/collectd/recipes/collectd_web.rb +49 -0
  552. data/chef/travis-cookbooks/worker_host/collectd/recipes/default.rb +90 -0
  553. data/chef/travis-cookbooks/worker_host/collectd/recipes/server.rb +24 -0
  554. data/chef/travis-cookbooks/worker_host/collectd/templates/default/collectd.conf.erb +23 -0
  555. data/chef/travis-cookbooks/worker_host/collectd/templates/default/collectd_web.conf.erb +32 -0
  556. data/chef/travis-cookbooks/worker_host/collectd/templates/default/collection.conf.erb +2 -0
  557. data/chef/travis-cookbooks/worker_host/collectd/templates/default/plugin.conf.erb +15 -0
  558. data/chef/travis-cookbooks/worker_host/collectd/templates/default/python_plugin.conf.erb +20 -0
  559. data/chef/travis-cookbooks/worker_host/collectd/templates/default/thresholds.conf.erb +37 -0
  560. data/chef/travis-cookbooks/worker_host/disks/attributes/default.rb +1 -0
  561. data/chef/travis-cookbooks/worker_host/disks/recipes/default.rb +15 -0
  562. data/chef/travis-cookbooks/worker_host/emacs/emacs/metadata.rb +11 -0
  563. data/chef/travis-cookbooks/worker_host/emacs/emacs/recipes/default.rb +21 -0
  564. data/chef/travis-cookbooks/worker_host/emacs/metadata.rb +11 -0
  565. data/chef/travis-cookbooks/worker_host/emacs/recipes/default.rb +21 -0
  566. data/chef/travis-cookbooks/worker_host/git/README.rdoc +37 -0
  567. data/chef/travis-cookbooks/worker_host/git/metadata.rb +11 -0
  568. data/chef/travis-cookbooks/worker_host/git/recipes/default.rb +24 -0
  569. data/chef/travis-cookbooks/worker_host/git/templates/default/sv-git-daemon-log-run.erb +2 -0
  570. data/chef/travis-cookbooks/worker_host/git/templates/default/sv-git-daemon-run.erb +3 -0
  571. data/chef/travis-cookbooks/worker_host/iptables/files/default/iptables_rules +13 -0
  572. data/chef/travis-cookbooks/worker_host/iptables/metadata.rb +10 -0
  573. data/chef/travis-cookbooks/worker_host/iptables/recipes/default.rb +48 -0
  574. data/chef/travis-cookbooks/worker_host/iptables/templates/default/iptables_load.erb +3 -0
  575. data/chef/travis-cookbooks/worker_host/java/README.md +102 -0
  576. data/chef/travis-cookbooks/worker_host/java/attributes/default.rb +29 -0
  577. data/chef/travis-cookbooks/worker_host/java/files/default/java.seed +11 -0
  578. data/chef/travis-cookbooks/worker_host/java/metadata.rb +16 -0
  579. data/chef/travis-cookbooks/worker_host/java/recipes/default.rb +61 -0
  580. data/chef/travis-cookbooks/worker_host/java/recipes/openjdk.rb +48 -0
  581. data/chef/travis-cookbooks/worker_host/java/recipes/sun.rb +49 -0
  582. data/chef/travis-cookbooks/worker_host/jruby/attributes/default.rb +5 -0
  583. data/chef/travis-cookbooks/worker_host/jruby/metadata.rb +8 -0
  584. data/chef/travis-cookbooks/worker_host/jruby/recipes/default.rb +23 -0
  585. data/chef/travis-cookbooks/worker_host/monit/attributes/default.rb +3 -0
  586. data/chef/travis-cookbooks/worker_host/monit/files/default/default.monit +1 -0
  587. data/chef/travis-cookbooks/worker_host/monit/recipes/default.rb +52 -0
  588. data/chef/travis-cookbooks/worker_host/monit/templates/default/alerts.erb +12 -0
  589. data/chef/travis-cookbooks/worker_host/monit/templates/default/filesystems.erb +6 -0
  590. data/chef/travis-cookbooks/worker_host/monit/templates/default/monitrc.erb +6 -0
  591. data/chef/travis-cookbooks/worker_host/monit/templates/default/system.erb +4 -0
  592. data/chef/travis-cookbooks/worker_host/networking_basic/README.rdoc +8 -0
  593. data/chef/travis-cookbooks/worker_host/networking_basic/metadata.json +35 -0
  594. data/chef/travis-cookbooks/worker_host/networking_basic/metadata.rb +10 -0
  595. data/chef/travis-cookbooks/worker_host/networking_basic/recipes/default.rb +38 -0
  596. data/chef/travis-cookbooks/worker_host/runit/CHANGELOG.md +3 -0
  597. data/chef/travis-cookbooks/worker_host/runit/CONTRIBUTING +29 -0
  598. data/chef/travis-cookbooks/worker_host/runit/LICENSE +201 -0
  599. data/chef/travis-cookbooks/worker_host/runit/README.md +226 -0
  600. data/chef/travis-cookbooks/worker_host/runit/attributes/default.rb +31 -0
  601. data/chef/travis-cookbooks/worker_host/runit/definitions/runit_service.rb +164 -0
  602. data/chef/travis-cookbooks/worker_host/runit/files/default/runit.seed +1 -0
  603. data/chef/travis-cookbooks/worker_host/runit/files/default/runsvdir +0 -0
  604. data/chef/travis-cookbooks/worker_host/runit/files/ubuntu-6.10/runsvdir +6 -0
  605. data/chef/travis-cookbooks/worker_host/runit/files/ubuntu-7.04/runsvdir +7 -0
  606. data/chef/travis-cookbooks/worker_host/runit/files/ubuntu-7.10/runsvdir +7 -0
  607. data/chef/travis-cookbooks/worker_host/runit/files/ubuntu-8.04/runsvdir +7 -0
  608. data/chef/travis-cookbooks/worker_host/runit/metadata.json +102 -0
  609. data/chef/travis-cookbooks/worker_host/runit/metadata.rb +37 -0
  610. data/chef/travis-cookbooks/worker_host/runit/recipes/default.rb +72 -0
  611. data/chef/travis-cookbooks/worker_host/runit/templates/gentoo/runit-start.sh.erb +32 -0
  612. data/chef/travis-cookbooks/worker_host/rvm/attributes/default.rb +20 -0
  613. data/chef/travis-cookbooks/worker_host/rvm/attributes/install.rb +1 -0
  614. data/chef/travis-cookbooks/worker_host/rvm/attributes/ree.rb +1 -0
  615. data/chef/travis-cookbooks/worker_host/rvm/attributes/ruby_187.rb +2 -0
  616. data/chef/travis-cookbooks/worker_host/rvm/attributes/ruby_192.rb +2 -0
  617. data/chef/travis-cookbooks/worker_host/rvm/files/default/rvm.sh +1 -0
  618. data/chef/travis-cookbooks/worker_host/rvm/metadata.rb +27 -0
  619. data/chef/travis-cookbooks/worker_host/rvm/recipes/default.rb +27 -0
  620. data/chef/travis-cookbooks/worker_host/rvm/recipes/install.rb +36 -0
  621. data/chef/travis-cookbooks/worker_host/rvm/recipes/multi.rb +48 -0
  622. data/chef/travis-cookbooks/worker_host/rvm/recipes/ree.rb +6 -0
  623. data/chef/travis-cookbooks/worker_host/rvm/recipes/ruby_187.rb +7 -0
  624. data/chef/travis-cookbooks/worker_host/rvm/recipes/ruby_192.rb +7 -0
  625. data/chef/travis-cookbooks/worker_host/ssh/recipes/sshd.rb +12 -0
  626. data/chef/travis-cookbooks/worker_host/ssh/templates/default/sshd_config.erb +87 -0
  627. data/chef/travis-cookbooks/worker_host/sudo/attributes/sudoers.rb +2 -0
  628. data/chef/travis-cookbooks/worker_host/sudo/recipes/default.rb +14 -0
  629. data/chef/travis-cookbooks/worker_host/sudo/templates/default/sudoers.erb +19 -0
  630. data/chef/travis-cookbooks/worker_host/travis_worker/attributes/default.rb +13 -0
  631. data/chef/travis-cookbooks/worker_host/travis_worker/metadata.rb +6 -0
  632. data/chef/travis-cookbooks/worker_host/travis_worker/recipes/default.rb +130 -0
  633. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/sv-travis-worker-log-run.erb +2 -0
  634. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/sv-travis-worker-run.erb +4 -0
  635. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/travis-worker.monitrc.erb +3 -0
  636. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/worker.yml.erb +14 -0
  637. data/chef/travis-cookbooks/worker_host/travis_worker_collectd/metadata.rb +1 -0
  638. data/chef/travis-cookbooks/worker_host/travis_worker_collectd/recipes/default.rb +11 -0
  639. data/chef/travis-cookbooks/worker_host/users/attributes/default.rb +2 -0
  640. data/chef/travis-cookbooks/worker_host/users/metadata.rb +9 -0
  641. data/chef/travis-cookbooks/worker_host/users/recipes/default.rb +83 -0
  642. data/chef/travis-cookbooks/worker_host/users/templates/default/authorized_keys.pub +4 -0
  643. data/chef/travis-cookbooks/worker_host/vim/README.md +39 -0
  644. data/chef/travis-cookbooks/worker_host/vim/attributes/default.rb +20 -0
  645. data/chef/travis-cookbooks/worker_host/vim/metadata.rb +6 -0
  646. data/chef/travis-cookbooks/worker_host/vim/recipes/default.rb +24 -0
  647. data/chef/travis-cookbooks/worker_host/virtualbox/attributes/default.rb +0 -0
  648. data/chef/travis-cookbooks/worker_host/virtualbox/metadata.rb +11 -0
  649. data/chef/travis-cookbooks/worker_host/virtualbox/recipes/default.rb +13 -0
  650. data/ci_build.sh +20 -0
  651. data/docs/ci_yml.md +0 -3
  652. data/features/ci.feature +0 -16
  653. data/features/config/secrets.yml.example +0 -1
  654. data/features/step_definitions/ci_steps.rb +8 -17
  655. data/lib/generators/lobot/config_generator.rb +1 -2
  656. data/lib/generators/lobot/install_generator.rb +2 -18
  657. data/lib/generators/lobot/templates/ci.yml +1 -1
  658. data/lib/generators/lobot/templates/ci_build.sh +7 -7
  659. data/lib/generators/lobot/templates/soloistrc +12 -3
  660. data/lib/lobot.rb +1 -0
  661. data/lib/lobot/recipes/ci.rb +78 -0
  662. data/lib/lobot/tasks/ci.rake +13 -10
  663. data/lib/lobot/version.rb +2 -2
  664. data/lobot.gemspec +5 -5
  665. data/script/bootstrap_server.sh +32 -0
  666. data/spec/install_spec.rb +3 -60
  667. metadata +754 -74
  668. data/lib/generators/lobot/templates/bootstrap_server.sh +0 -58
  669. data/lib/generators/lobot/templates/capistrano-ci.rb +0 -74
  670. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/default.rb +0 -10
  671. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/fonts.rb +0 -5
  672. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/git_config.rb +0 -11
  673. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/jenkins.rb +0 -45
  674. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/teamcity.rb +0 -43
  675. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_ci/recipes/xvfb.rb +0 -7
  676. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/files/default/cacert.pem +0 -3721
  677. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/libraries/marker.rb +0 -42
  678. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/ca_cert.rb +0 -4
  679. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/curl_devel.rb +0 -3
  680. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/daemontools.rb +0 -15
  681. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/file.rb +0 -19
  682. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/imagemagick.rb +0 -45
  683. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/libxml_prereqs.rb +0 -12
  684. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/mongo_2_0.rb +0 -28
  685. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/mysql_5_1.rb +0 -108
  686. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/mysql_5_5.rb +0 -86
  687. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/nginx.rb +0 -65
  688. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/node_js.rb +0 -15
  689. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/postgres.rb +0 -80
  690. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/sqlite.rb +0 -20
  691. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/recipes/swap.rb +0 -17
  692. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/templates/default/my-conf.erb +0 -2
  693. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/templates/default/nginx-conf.erb +0 -42
  694. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/templates/default/nginx-mime-types.erb +0 -75
  695. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/templates/default/nginx-run-script.erb +0 -2
  696. data/lib/generators/lobot/templates/chef/cookbooks/pivotal_server/templates/default/postgres-run-script.erb +0 -2
data/.gitignore CHANGED
@@ -5,3 +5,4 @@ pkg/*
5
5
  features/config/secrets.yml
6
6
  .idea
7
7
  spec/tmp
8
+ spec/reports/
@@ -0,0 +1,3 @@
1
+ [submodule "chef/travis-cookbooks"]
2
+ path = chef/travis-cookbooks
3
+ url = https://github.com/pivotalexperimental/travis-cookbooks
data/.rvmrc CHANGED
@@ -1 +1 @@
1
- rvm --create use ruby-1.9.3-p125@lobot
1
+ rvm --create use ruby-1.9.3-p194@lobot
data/Gemfile CHANGED
@@ -1,5 +1,6 @@
1
1
  source "http://rubygems.org"
2
2
 
3
+ gem "builder", "~> 3.0.0" # Bundler goes into an infinite loop looking for this dep. Feel free to remove.
3
4
  gem "rvm-capistrano", :group => :development, :require => false
4
5
 
5
6
  # Specify your gem's dependencies in lobot.gemspec
data/README.md CHANGED
@@ -1,20 +1,21 @@
1
1
  Lobot: Your Chief Administrative Aide on Cloud City
2
2
  ============================
3
3
 
4
- ![Lobot](http://i.imgur.com/QAkd7.jpg)
5
- ###Easily create your CI server on EC2
4
+ ![Lobot](http://cheffiles.pivotallabs.com/lobot/logo.png)
6
5
 
7
- Lando Calrissian relies on Lobot to keep Cloud City afloat, and now you can rely on Lobot to get your continuous integration server running in the cloud. Lobot is a gem that will help you spin-up, bootstrap, and install Jenkins or TeamCity for CI for your Rails app on Amazon EC2.
6
+ ### Easily create your CI server on EC2
7
+
8
+ Lando Calrissian relies on Lobot to keep Cloud City afloat, and now you can rely on Lobot to get your continuous integration server running in the cloud. Lobot is a gem that will help you spin-up, bootstrap, and install Jenkins CI for your Rails app on Amazon EC2.
8
9
 
9
10
  # What do I get?
10
11
 
11
- * Rake tasks for creating, starting, stopping, or destroying your CI srever on EC2
12
+ * Rake tasks for creating, starting, stopping, or destroying your CI server on EC2
12
13
  * Capistrano tasks for bootstrapping the Centos EC2 instance
13
14
  * Chef recipes for configuring the instance to run Jenkins and build Rails projects
14
15
 
15
16
  After you add lobot to your Gemfile, all you'll need to do is run the following commands:
16
17
 
17
- rails g lobot:install [jenkins|teamcity]
18
+ rails g lobot:install
18
19
  rails g lobot:config
19
20
  rake ci:create_server
20
21
  cap ci bootstrap
@@ -24,21 +25,13 @@ Read on for an explanation of what each one of these steps does.
24
25
 
25
26
  ## Install
26
27
 
27
- Add lobot to your Gemfile, in the development group:
28
-
29
- gem "lobot", :group => :development
30
-
31
- ## Generate
32
- Lobot is a Rails 3 generator. Rails 2 can be made to work, but you will need to copy the template files into your project.
33
-
34
- ### For Jenkins:
28
+ Add lobot to your Gemfile, in the test group:
35
29
 
36
- rails g lobot:install jenkins
30
+ gem "lobot", :group => :test
37
31
 
38
- ### For TeamCity:
39
- Lobot only creates your EC2 instance and installs the build server. Configuration for TeamCity still needs to be done manually.
32
+ ### To Install
40
33
 
41
- rails g lobot:install teamcity
34
+ rails g lobot:install
42
35
 
43
36
  ## Setup
44
37
  You can use a generator to interactively generate the config/ci.yml that includes some reasonable defaults and explanations.
@@ -49,7 +42,6 @@ Alternatively, manually edit config/ci.yml
49
42
 
50
43
  ---
51
44
  app_name: # a short name for your application
52
- app_user: # the user created to run your CI process
53
45
  git_location: # The location of your remote git repository which Jenkins will poll and pull from on changes.
54
46
  basic_auth:
55
47
  - username: # The username you will use to access the Jenkins web interface
@@ -68,20 +60,16 @@ Alternatively, manually edit config/ci.yml
68
60
  github_private_ssh_key_path: ~/.ssh/id_rsa
69
61
 
70
62
  ## Adjust Defaults (Optional)
71
- In your ci.yml, there are defaults set for values that have the recommened value. For example, the instance size used for EC2 is set to "m1.large", which costs $230/month.
72
- If you don't need to increase your memory size for Jenkins or TeamCity, you could elect to use "c1.medium" instead which costs about half that.
73
- You can also save on EC2 costs by using a tool like projectmonitor or ylastic to schedule when your instances are online.
74
-
75
- For security, the lobot:install task added config/ci.yml to the .gitignore file since it includes sensitive AWS credentials and your CI users password.
76
- Keep in mind that the default build script ci_build.sh uses the headless gem and jasmine. You'll want to add those to your Gemfile or change your build command.
63
+ In your ci.yml, there are defaults set for values that have the recommened value. For example, the instance size used for EC2 is set to "c1.medium", which costs $118/month.
64
+ You can save on EC2 costs by using a tool like [projectmonitor](https://github.com/pivotal/projectmonitor) or ylastic to schedule when your instances are online.
77
65
 
78
66
  ## Commit and push your changes
79
67
 
80
- At this point you will need to create a commit of the files generated or modified and push those changes to your remote git repository so Jenkins can execute your build command.
68
+ At this point you will need to create a commit of the files generated or modified and push those changes to your remote git repository so Jenkins can execute the build script when it pulls down your repo for the first time.
81
69
 
82
70
  ## Modify the soloistrc if necessary
83
71
 
84
- Switch postgres to mysql, or add your own recipes for your own dependencies.
72
+ The soloistrc in root of your project is where you tell chef which recipes to run. Because we're using the cookbooks from Travis CI, you can look through [all the recipes Travis has available](https://github.com/travis-ci/travis-cookbooks/), and add any of them to your soloistrc.
85
73
 
86
74
  ## Starting your lobot instance
87
75
 
@@ -89,7 +77,7 @@ Switch postgres to mysql, or add your own recipes for your own dependencies.
89
77
 
90
78
  rake ci:create_server
91
79
 
92
- 2. Bootstrap the instance using the boostrap_server.sh script generated by Lobot. The script instals ruby prerequisites, creates the app_user account, and installs RVM for that user:
80
+ 2. Bootstrap the instance using the boostrap_server.sh script generated by Lobot. The script installs ruby prerequisites, creates the app_user account, and installs RVM for that user:
93
81
 
94
82
  cap ci bootstrap
95
83
 
@@ -124,6 +112,16 @@ Lobot can generate the config for you, just run:
124
112
 
125
113
  rake ci:info
126
114
 
115
+ ## Color
116
+
117
+ Lobot installs the ansicolor plugin, however you need to configure rspec to generate colorful output. One way is to include `--color` in your .rspec and update your spec_helper.rb to include
118
+
119
+ ``` ruby
120
+ RSpec.configure do |config|
121
+ config.tty = true
122
+ end
123
+ ```
124
+
127
125
  ## Dependencies
128
126
 
129
127
  * fog
@@ -141,7 +139,7 @@ Use the secrets.yml.example to create a secrets.yml file with your account infor
141
139
 
142
140
  # Contributing
143
141
 
144
- Lobot is in its infancy and we welcome pull requests. Pull requests should have test coverage for quick consideration.
142
+ We welcome pull requests. Pull requests should have test coverage for quick consideration. Please fork, make your changes on a branch, and open a pull request.
145
143
 
146
144
  # License
147
145
 
data/Rakefile CHANGED
@@ -1,9 +1,11 @@
1
+ require 'ci/reporter/rake/rspec'
2
+ require 'ci/reporter/rake/cucumber'
1
3
  require 'rspec/core/rake_task'
2
4
  require 'cucumber/rake/task'
3
5
  require 'bundler'
4
6
  Bundler::GemHelper.install_tasks
5
7
 
6
- task :default => [:spec, :features]
8
+ task :default => ['ci:setup:rspec', :spec, :features]
7
9
 
8
10
  desc "Run all specs in spec directory (excluding plugin specs)"
9
11
  RSpec::Core::RakeTask.new(:spec)
@@ -0,0 +1,4 @@
1
+ node["git"] = {
2
+ "email" => "jenkins-ci@example.com",
3
+ "name" => "Jenkins CI Server"
4
+ }
@@ -0,0 +1,3 @@
1
+ node["jenkins"] = {
2
+ "home" => "/var/lib/jenkins"
3
+ }
@@ -0,0 +1,5 @@
1
+ node.default["ssl_settings"]= {
2
+ "common_name" => "lobot",
3
+ "cert_path" => "/etc/certificates",
4
+ "ca_path" => "/etc/pki/demoCA"
5
+ }
@@ -0,0 +1,112 @@
1
+ -----BEGIN PGP PUBLIC KEY BLOCK-----
2
+ Version: GnuPG v1.4.9 (GNU/Linux)
3
+
4
+ mQGiBEmFQG0RBACXScOxb6BTV6rQE/tcJopAEWsdvmE0jNIRWjDDzB7HovX6Anrq
5
+ n7+Vq4spAReSFbBVaYiiOx2cGDymj2dyx2i9NAI/9/cQXJOU+RPdDzHVlO1Edksp
6
+ 5rKn0cGPWY5sLxRf8s/tO5oyKgwCVgTaB5a8gBHaoGms3nNC4YYf+lqlpwCgjbti
7
+ 3u1iMIx6Rs+dG0+xw1oi5FUD/2tLJMx7vCUQHhPRupeYFPoD8vWpcbGb5nHfHi4U
8
+ 8/x4qZspAIwvXtGw0UBHildGpqe9onp22Syadn/7JgMWhHoFw5Ke/rTMlxREL7pa
9
+ TiXuagD2G84tjJ66oJP1FigslJzrnG61y85V7THL61OFqDg6IOP4onbsdqHby4VD
10
+ zZj9A/9uQxIn5250AGLNpARStAcNPJNJbHOQuv0iF3vnG8uO7/oscB0TYb8/juxr
11
+ hs9GdSN0U0BxENR+8KWy5lttpqLMKlKRknQYy34UstQiyFgAQ9Epncu9uIbVDgWt
12
+ y7utnqXN033EyYkcWx5EhLAgHkC7wSzeSWABV3JSXN7CeeOif7QiS29oc3VrZSBL
13
+ YXdhZ3VjaGkgPGtrQGtvaHN1a2Uub3JnPohjBBMRAgAjAhsDBgsJCAcDAgQVAggD
14
+ BBYCAwECHgECF4AFAko/7vYCGQEACgkQm30y8tUFguabhgCgi54IQR4rpJZ/uUHe
15
+ ZB879zUWTQwAniQDBO+Zly7Fsvm0Mcvqvl02UzxCtC1Lb2hzdWtlIEthd2FndWNo
16
+ aSA8a29oc3VrZS5rYXdhZ3VjaGlAc3VuLmNvbT6IYAQTEQIAIAUCSj/qbQIbAwYL
17
+ CQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEJt9MvLVBYLm38gAoIGR2+TQeJaCeEa8
18
+ CQhZYzDoiJkQAJ0cpmD+0VA+leOAr5LEccNVd70Z/dHNy83JARAAAQEAAAAAAAAA
19
+ AAAAAAD/2P/gABBKRklGAAEBAQBgAGAAAP/hAGBFeGlmAABJSSoACAAAAAQAMQEC
20
+ ABkAAAA+AAAAEFEBAAEAAAABQ5AAEVEEAAEAAAASCwAAElEEAAEAAAASCwAAAAAA
21
+ AE1hY3JvbWVkaWEgRmlyZXdvcmtzIDQuMAAA/9sAQwAIBgYHBgUIBwcHCQkICgwU
22
+ DQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy
23
+ /9sAQwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy
24
+ MjIyMjIyMjIyMjIyMjIyMjIyMjIy/8AAEQgArgCWAwEiAAIRAQMRAf/EAB8AAAEF
25
+ AQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQEC
26
+ AwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkq
27
+ NDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqS
28
+ k5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk
29
+ 5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkK
30
+ C//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGx
31
+ wQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFla
32
+ Y2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2
33
+ t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQAC
34
+ EQMRAD8A9wEj/wB9vzpfMf8Avt+dRinCpGSeY398/nS72/vH86YKBQBJvb+8fzpd
35
+ 7f3j+dMFLQA/e394/nS7j6n86ZSimA7cfU07cfU1HnFOFADtx9aXJ9TTKUUxD8n1
36
+ pc+9Mp1AC5ozSUtAC0maKKADNFJ2ooAoCnCmilzWZQ6lFJSimAopaQUtAC54rOvN
37
+ dsLCTZPPGrdwXAry/wCKHxXfRppND0Mq16Bie5PIi9lHdv5V8/X+rXt/O8tzcyyy
38
+ MclnYkk0avYdl1PqPxT8VtH8NwqwzdXEuSkaHoB61wjftCXhlzHosBjHZpSCa8PW
39
+ O7uhuAkcDueaaYbhOqMMe1L5lcvWx9U+FPjJ4f8AEU0dpdhtLvXOFWdgY3PoH6fg
40
+ cV6MrZGa+EklIOJOPqK9i+G3xem0TytI8QSSXGnHCQXJO57f2Pqn6indrclq+x9G
41
+ 5pwNVoLiO4hSaGRZIpFDKynIYHuKmBqyB+aWmg0uaAFopKKAFoozRQBQFLSUorMo
42
+ UUtJSigB1ZHijWovD/hu+1KZlUQxErnu3YfnWsK8k+Pt60PhaxtAxAnuOQO4UE0P
43
+ YaWp8/Xd1LeTz3Mzl5pnLuxPJJNa+i+HDclZZ1yp5C1Q0axa+1BEx8i8mvS7S3WG
44
+ NQo6elcWLxDprljuelgsOp+/IgtdCiVFVYx07CnXHhyNgflA/Ct+1BwOKmkVq8xS
45
+ m9bnr2S0sec6n4UVo2KKNw6Vx9xby2U3lSAj617NcR5J4zmua1/Q4r+1JVQJU5Ui
46
+ uzD4qUXyz2OHFYWM1zR3Ol+CHj0xXX/CKajMTHKd1g7H7r94/oeo9wR3r3tWr4ht
47
+ pZtNv4bmElZ7eVZUIOPmU5/pX2dpOpR6tpFnqMQxHdQpMoz03DOK9ePY8OaszUDU
48
+ +oFNSg0yUOopKWgAoo6mikBRpwptLWZY4UoptLTELXin7QbD7PoiFv45Gx+Ar2uv
49
+ FP2g7dfsejXOfm8x48evGf6UmNbnm3hCBls57sJuYnYg9TXSyW2uIgNpJbs5GWDj
50
+ gewrP8EJu0XIHKyNV2+j1txM0MzIQV8oIQN3POSenHTg15VSV6z2+Z7dGNqKt26G
51
+ hpeo6rC3lajZxKOgdG6/hW5NcoIC4HOOhrmbJb1IokuZWkfbmUsQQGz2xW5OAbAE
52
+ Y3d/es5TtJo6oRbjcx7uXVryXbblIIv723JqN9PuUdLhJ2aQf6xW6OP6VBqS6jcQ
53
+ sLS4aOQHCqH2qVx64znP8verWn2d/DKrPOzxbFBWQ5O7HJyOxParv7t7oxcfeasz
54
+ z3xBaC01uZV4RxvAr6X+F0rv8NdCMj7iICAfQBjgV87+NYzHr6jHHlA/rX0H8LFa
55
+ P4baLu3DMTHDDtvOPwr1sM7xR4mK0m/U7lTUyniqyGp1NbtHOmSUuaaDS1JQuaKS
56
+ ikBTpaQUVmUOpabS0xC15f8AF7wxc+IEsJI3VI4Nyrkfxtjn6YH616hWL4ptDd6B
57
+ cBTh0+cH0xUVL8j5dzSk0prm2PD/AAnYvp+ltazDbNHM6yD3BrpEiWToOKzPLktr
58
+ mRiSwlO7J9atQ3bFsCvGnJSlzM+gpLlXKJcpDAegGT+ZqYgPYAgVnz3DpKW8pJW6
59
+ AM2MUranci38vy4gBz/9alGF3dG0ppKzZYs0ilB4BwauOixggVlW9w8sivsWJuhC
60
+ nOanmun83bimtNCZPS5g6/osOta3Zq8giRImMjeoyMAe5Oa940SxTStFsbCM/JbQ
61
+ JGv0AryTTLRLzXIwwDOWVAvfGecCvZx19q9fAttPyPBzCyatuyyhqZTxVdDU612M
62
+ 4ESg04GowacDUFjqKQc0UDKlLSUtZFC0UUCmAtMmiSeF4pBlHBVh7U6imI878Y+G
63
+ rbTbGC7tFf5WKyFmz1rimZoy2wZJGQBXter2C6lpc9qw++vy/XtXiMoe3upLeTiS
64
+ Nipry8XSUJJpaHq4Os5JpvUoC4uJr1rYIkJC7vMuGCgj2rZ/4Ry/aHzvtdltO4Ei
65
+ TPTH+NUrhFlUB1yQODVB8RjyRboR6hiAfqM4rCLTPR6aSt8rktzJc2l7HZgRXLOu
66
+ 4SQPkKPU1fUtu3SHJUc/WqlvGIULKo3kdhgCr+lwfb9ZtLItxLIAx9upp25pKKMq
67
+ klFN3PTfDenR2mjWbtEvnsm8sVG4buevXpit1aiUAcAYHapVr6GMVGKij5iUnKTk
68
+ ydKnU1ClSikwRIKcD60wU4GpLQ7PpRSUUhlaikpc1kWLRSUUxC5ozSZozTA5Txn8
69
+ QtF8DxRDUDLPeTDdFaQAFyucbiTwo+vXsK8huNZHiVJddtbY2/mysfJL7iAD0JwM
70
+ 1h/F+X7V8RtUKybzEUj5PTCjj8KseD2S304WbzxPJ9/CsDjcM4/DvXLjF+6TXc7M
71
+ F/EafY1YNThkVcttccMpqY3trtx8ufeoJbK3acrLECPcUsmj2EUYfyw27kcmvOjY
72
+ 9NuS6kc+pxp8seWc8Koq7pWox+HLiHWdQSR0gO90jALYxjAzjnmsxbnTbCXMssMK
73
+ r6nk/h1rH17xLY3lpJa25dw4wWxgfrW9KnOU04owqziotSZ7r4S8daT4xFwunpcR
74
+ S24DPHOoBweMjBOa6pDXzn8JNej0nxdFbSKqwX6/ZtzHG1s5U59yMfjX0SpwcGvc
75
+ Wp4MlZltDUoNV42qYGpYIlFOzUYNOBqSx4opBzRSArUtNqrqWqWOj2D32pXcVrap
76
+ 96WVsDPoO5PsOayNC5TXkWKJpZHVI0GWd2AVR7k9K8Z8R/HTazweHNPBHQXd4Ovu
77
+ sY/9mP4V5Trvi7XPETltW1S4uVzkRM2I1+iDCj8qtRYWPfvEXxh8L6GJIrWZ9Vu1
78
+ 48u1/wBWD7yHj8s15Jr/AMYfFGtyOlvdDS7c5xFZnace7n5j+n0rz1n3Hmmk4zzV
79
+ KKFcdNPI7s0jM7sxZmY5LE9ST61CsrI25SQR3BwacWzwRUZX0qiblgaheq25bucH
80
+ 18w086tqDrta9uCvp5hqng56UDmp5I9iueXcmDsxyzEn1JqROvNQKD7VKCqDJOas
81
+ kuRuMgjp711+n/FHxVpyIsWqNPHEAojukWQEe5PP61wvnEj0B4ApykZJJ7UDPfvD
82
+ Hxp0+/dLfXbYWMp4E8RLxH6jqv616laXtve26XFrPFPC/KyRsGU/iK+MBICcDitn
83
+ QPFWseHbvztMv5YM/eTOUb6qeDRcXKj7CV8ing1434V+NtpezR2niC3W0Y8fa4cm
84
+ PP8AtL1H1Ga9atrqG6gSe3mjmhcZSSNgysPYikTZouCiow4xRRYLmRr+tW/h7Qrv
85
+ Vbkbo7dCwQHBdugUfU4r5Y8TeKtV8Tak15qlwztk+XEDiOFf7qL2H6nvXr3x01n7
86
+ Po2n6SjfNcymaQf7K8D9T+leBzPuT3H8qiC0NHoNeYnvURc4phPNITmrJuLu5pSa
87
+ Z3pRyKYhM80oOaaetAoAkzwKTd6Cm5pBQA8EnqTijOSeOKaT2oHSgY7cTTg1Rilp
88
+ AS7/AGpc4UA96iHJApXbk0wJ0kOeDXTeGPGer+GbtZNOunWMnLwscxv9V/ya5T7q
89
+ D1NOEhQYHU9/Siw0z7A8KeJ7XxToceo2ymNs7JoicmNx1HuOcg0V5j8A9RQnWNKl
90
+ lVARHcruOOfut/7LRTViJaPQ5b42agbrx29uGytrAiAehPJ/nXmrNu2H14NdD481
91
+ A6j401S6zkPMQPoOP6VzQOcj0OaiGxctxpNA5obqfrQKokSlWkzQDzQAMOaSnN1F
92
+ JQAtFFFAAKKKO9AC0UlGaBj0HemjlvrTkOEY03vQIe7YJP4CkTBfn6mkbkA/Wkzg
93
+ YHU9aYGtpl7Pau8kEzxMwwShwcUVUtWIU4oqbXLTFv3M0jSkksWJP481SU/Pk1Ym
94
+ b7/1FViMY96diWKwy5+tITTm+7mo6BC0DrR2oHWgB7dBTac3SmUALS0lKOtACUua
95
+ KKACm0vSk70ASLxF9TSYzznrQf8AVqKTPH40wHHHQfjTM55pTwp9+KQdKALEL7Is
96
+ +poph4Cr6Cigdz//2YhgBBMRAgAgBQJKP/cgAhsDBgsJCAcDAgQVAggDBBYCAwEC
97
+ HgECF4AACgkQm30y8tUFgua3awCdFQlChLgn/n4tb4jLe1RgxOxHxosAn2Cn2oNh
98
+ sZ91wUb4d5JuH88TCupsuQINBEmFQG0QCADqAXWgiis4yi96os3QZmK5809ojjTT
99
+ nlICgbztrT55cMVTDBc9SneyRQlC0cS+M1z4Do6lj81sNJdJiBPqTYYA1+exTFvs
100
+ 5zCxPInDP3hvqXxHTP142XN1hdzt53R7smn8O0wyO+RCBUb44e9NkusvBd5UP3Je
101
+ 449hnpXJ4WO3cVMFm4ghxs7ERlpAi5NTEsVVdM8dqHbZJtk8gbzdAHH0ybiAXmWy
102
+ LFGZDuuKiFAkqm/Wled7id6N+cPx107dwBclwPxzfEYKEqJ1YDDHoDlyfx4012y1
103
+ 53e5sGyah/IPBYrrLMfG+Wmiwr5nCX0tmwOcyukuE94hbzJCX2wBdbWLAAMGCACz
104
+ l3cuM4lGt/wr5liM4gotXpZAopY+EnbLIBuOHFXXR7HnyAgST1jH/AUbafvPjyDh
105
+ EkFDyUP14XtHNIAqsN1UpuyYbM90bMPAWXJxrazMsSF+Tv5yIxHiy4cc1pjoqHA2
106
+ kwqIGHmTxYzOPOS19ZWQAtevoTE6pCARphY0dzpscCWaXGs/ZqNAhjL96WLYV1Oo
107
+ Ut+9mTnOcs6Vuxaxp2wN2S5DK1S9gdIxWEc8wMUPiQe8CYk0OySdORIblMs3bGqD
108
+ FoM5HcBAZP1YlXitPH2nIRv0DtOQGMQOCkqUWmQuQAUgKV+YO86lO4S7EhTET/GP
109
+ sQb6P7efm/Cs8wbq/wyIiEkEGBECAAkFAkmFQG0CGwwACgkQm30y8tUFgua2mACe
110
+ JNBW4snDC4OzjKU6QT386/GA9ssAn3vLzSwn8N1xv5MihWGr5kVzvaE2
111
+ =cjdq
112
+ -----END PGP PUBLIC KEY BLOCK-----
@@ -0,0 +1,6 @@
1
+ include_recipe "pivotal_ci::ssl_certificate"
2
+ include_recipe "pivotal_ci::nginx"
3
+ include_recipe "pivotal_ci::fonts"
4
+ include_recipe "pivotal_ci::id_rsa"
5
+ include_recipe "pivotal_ci::git_config"
6
+ include_recipe "pivotal_ci::jenkins_config"
@@ -0,0 +1,5 @@
1
+ %w(xfonts-base xfonts-75dpi xfonts-100dpi xfonts-scalable xfonts-cyrillic).each do |font|
2
+ package font do
3
+ action :install
4
+ end
5
+ end
@@ -0,0 +1,17 @@
1
+ include_recipe "pivotal_ci::jenkins"
2
+
3
+ execute "set git user.email" do
4
+ command "git config --global user.email '#{node["git"]["email"]}'"
5
+ not_if "git config -l | grep 'user.email=#{node["git"]["email"]}'", :environment => {"HOME"=>node["jenkins"]["home"]}
6
+ user "jenkins"
7
+ environment({"HOME"=>node["jenkins"]["home"]})
8
+ cwd node["jenkins"]["home"]
9
+ end
10
+
11
+ execute "set git user.name" do
12
+ command "git config --global user.name '#{node["git"]["name"]}'"
13
+ not_if "git config -l | grep 'user.name=#{node["git"]["name"]}'", :environment => {"HOME"=>node["jenkins"]["home"]}
14
+ user "jenkins"
15
+ environment({"HOME"=>node["jenkins"]["home"]})
16
+ cwd node["jenkins"]["home"]
17
+ end
@@ -1,14 +1,24 @@
1
+ include_recipe "pivotal_ci::jenkins"
2
+
1
3
  username = ENV['SUDO_USER'].strip
2
4
 
3
- file "/home/#{username}/.ssh/id_rsa" do
4
- content CI_CONFIG['id_rsa_for_github_access']
5
- mode 0600
6
- only_if { CI_CONFIG['id_rsa_for_github_access'] }
7
- owner username
5
+ directory "#{node["jenkins"]["home"]}/.ssh" do
6
+ mode 0700
7
+ owner "jenkins"
8
+ end
9
+
10
+ execute "copy id_rsa" do
11
+ files = "/home/#{username}/.ssh/id_rsa #{node["jenkins"]["home"]}/.ssh/id_rsa"
12
+ command "cp #{files}"
13
+ not_if "diff -q #{files}"
14
+ end
15
+
16
+ file "#{node["jenkins"]["home"]}/.ssh/id_rsa" do
17
+ owner "jenkins"
8
18
  end
9
19
 
10
20
  execute "add github to known hosts if necessary" do
11
21
  github_string = 'github.com,207.97.227.239 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='
12
- command "echo '#{github_string}' >> /home/#{username}/.ssh/known_hosts"
13
- not_if "grep '#{github_string}' /home/#{username}/.ssh/known_hosts"
14
- end
22
+ command "echo '#{github_string}' >> #{node["jenkins"]["home"]}/.ssh/known_hosts"
23
+ not_if "grep '#{github_string}' #{node["jenkins"]["home"]}/.ssh/known_hosts"
24
+ end
@@ -0,0 +1,26 @@
1
+ cookbook_file "#{Chef::Config[:file_cache_path]}/jenkins-ci.org.key" do
2
+ source "jenkins-ci.org.key"
3
+ end
4
+
5
+ execute "apt-key add #{Chef::Config[:file_cache_path]}/jenkins-ci.org.key" do
6
+ not_if "apt-key list | grep -q 'Kohsuke Kawaguchi'"
7
+ end
8
+
9
+ file "/etc/apt/sources.list.d/jenkins.list" do
10
+ content "deb http://pkg.jenkins-ci.org/debian binary/"
11
+ notifies :run, "execute[apt-get update]"
12
+ end
13
+
14
+ execute "apt-get update" do
15
+ action :nothing
16
+ end
17
+
18
+ package "jenkins"
19
+
20
+ execute "usermod jenkins -aG rvm" do
21
+ not_if "groups jenkins | grep rvm"
22
+ end
23
+
24
+ service "jenkins" do
25
+ action :start
26
+ end
@@ -0,0 +1,52 @@
1
+ include_recipe 'pivotal_ci::jenkins'
2
+
3
+ directory "#{node["jenkins"]["home"]}/plugins" do
4
+ owner "jenkins"
5
+ end
6
+
7
+ jenkins_plugin = Proc.new do |resource, plugin, url|
8
+ resource.command "curl -Lsf #{url} -o #{node["jenkins"]["home"]}/plugins/#{plugin}.hpi"
9
+ resource.not_if { File.exists?("#{node["jenkins"]["home"]}/plugins/#{plugin}.hpi") }
10
+ resource.user "jenkins"
11
+ resource.notifies :restart, "service[jenkins]"
12
+ end
13
+
14
+ execute "download lobot plugin" do
15
+ jenkins_plugin.call(self, "lobot", "http://cheffiles.pivotallabs.com/lobot/lobot.hpi")
16
+ end
17
+
18
+ ['git', 'ansicolor'].each do |plugin|
19
+ execute "download #{plugin} plugin" do
20
+ jenkins_plugin.call(self, plugin, "http://mirrors.jenkins-ci.org/plugins/#{plugin}/latest/#{plugin}.hpi")
21
+ end
22
+ end
23
+
24
+ directory "#{node["jenkins"]["home"]}/jobs/#{ENV['APP_NAME']}" do
25
+ owner "jenkins"
26
+ end
27
+
28
+ template "#{node["jenkins"]["home"]}/jobs/#{ENV['APP_NAME']}/config.xml" do
29
+ source "jenkins-job-config.xml.erb"
30
+ owner "jenkins"
31
+ notifies :restart, "service[jenkins]"
32
+ variables(
33
+ :git_location => CI_CONFIG['git_location'],
34
+ :build_command => CI_CONFIG['build_command']
35
+ )
36
+ end
37
+
38
+ (CI_CONFIG['additional_builds'] || []).each do |build|
39
+ directory "#{node["jenkins"]["home"]}/jobs/#{build['build_name']}" do
40
+ owner "jenkins"
41
+ end
42
+
43
+ template "#{node["jenkins"]["home"]}/jobs/#{build['build_name']}/config.xml" do
44
+ source "jenkins-job-config.xml.erb"
45
+ owner "jenkins"
46
+ notifies :restart, "service[jenkins]"
47
+ variables(
48
+ :git_location => build['git_location'],
49
+ :build_command => build['build_script']
50
+ )
51
+ end
52
+ end
@@ -0,0 +1,35 @@
1
+ # Travis Essentials
2
+ #
3
+ include_recipe "build-essential"
4
+ include_recipe "networking_basic"
5
+ include_recipe "sysctl"
6
+ include_recipe "unarchivers"
7
+
8
+ # additional libraries needed to run headless WebKit,
9
+ # build parsers, for ossp-uuid to work and so on
10
+ #
11
+ include_recipe "libqt4"
12
+ include_recipe "libgdbm"
13
+ include_recipe "libncurses"
14
+ include_recipe "libossp-uuid"
15
+ include_recipe "libffi"
16
+ include_recipe "ragel"
17
+ include_recipe "imagemagick"
18
+
19
+ # Node.js for asset pipeline support
20
+ #
21
+ include_recipe "nodejs::multi"
22
+
23
+ # Data stores
24
+ #
25
+ include_recipe "postgresql::client"
26
+ include_recipe "mysql::client"
27
+ include_recipe "mysql::server_on_ramfs"
28
+ include_recipe "postgresql::server_on_ramfs"
29
+
30
+ # Headless WebKit, browsers, Selenium toolchain, etc
31
+ #
32
+ include_recipe "xserver"
33
+ include_recipe "firefox"
34
+ include_recipe "chromium"
35
+ include_recipe "phantomjs::tarball"