lobot 2.0.0pre → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (297) hide show
  1. data/.gitignore +7 -10
  2. data/.gitmodules +1 -1
  3. data/.pairs +15 -0
  4. data/.rvmrc +1 -1
  5. data/.travis.yml +5 -0
  6. data/Gemfile +2 -2
  7. data/LICENSE.txt +1 -1
  8. data/README.md +67 -29
  9. data/Rakefile +11 -6
  10. data/Vagrantfile +8 -5
  11. data/bin/lobot +2 -4
  12. data/chef/cookbooks/pivotal_ci/attributes/jenkins.rb +1 -0
  13. data/chef/cookbooks/pivotal_ci/files/default/tests/minitest/default_test.rb +40 -2
  14. data/chef/cookbooks/pivotal_ci/recipes/id_rsa.rb +5 -0
  15. data/chef/cookbooks/pivotal_ci/recipes/jenkins_config.rb +5 -2
  16. data/chef/cookbooks/pivotal_ci/recipes/limited_travis_ci_environment.rb +4 -0
  17. data/chef/cookbooks/pivotal_ci/templates/default/jenkins-job-config.xml.erb +8 -6
  18. data/chef/cookbooks/pivotal_ci/test/kitchen/cookbooks/pivotal_ci_test/attributes/default.rb +0 -1
  19. data/chef/cookbooks/pivotal_ci/test/kitchen/cookbooks/pivotal_ci_test/recipes/bootstrap.rb +41 -0
  20. data/chef/cookbooks/pivotal_ci/test/kitchen/cookbooks/pivotal_ci_test/recipes/default.rb +1 -41
  21. data/chef/travis-cookbooks/ci_environment/apt/recipes/default.rb +8 -7
  22. data/chef/travis-cookbooks/ci_environment/bazaar/recipes/default.rb +1 -1
  23. data/chef/travis-cookbooks/ci_environment/cassandra/attributes/default.rb +6 -3
  24. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/datastax.rb +1 -1
  25. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/package.rb +1 -1
  26. data/chef/travis-cookbooks/ci_environment/cassandra/recipes/tarball.rb +6 -2
  27. data/chef/travis-cookbooks/ci_environment/cassandra/templates/default/cassandra.init.erb +58 -131
  28. data/chef/travis-cookbooks/ci_environment/chromium/recipes/default.rb +1 -1
  29. data/chef/travis-cookbooks/ci_environment/clang/attributes/tarball.rb +2 -7
  30. data/chef/travis-cookbooks/ci_environment/clang/recipes/default.rb +1 -1
  31. data/chef/travis-cookbooks/ci_environment/clang/recipes/tarball.rb +2 -4
  32. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/default.rb +1 -1
  33. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ppa.rb +1 -1
  34. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu-12.04.rb +1 -1
  35. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu1110_ppa.rb +1 -1
  36. data/chef/travis-cookbooks/ci_environment/couchdb/recipes/ubuntu1204_ppa.rb +1 -1
  37. data/chef/travis-cookbooks/ci_environment/doxygen/recipes/default.rb +24 -0
  38. data/chef/travis-cookbooks/ci_environment/elasticsearch/attributes/default.rb +4 -1
  39. data/chef/travis-cookbooks/ci_environment/elasticsearch/recipes/default.rb +8 -5
  40. data/chef/travis-cookbooks/ci_environment/emacs/recipes/nox.rb +1 -1
  41. data/chef/travis-cookbooks/ci_environment/firefox/recipes/default.rb +1 -1
  42. data/chef/travis-cookbooks/ci_environment/git/recipes/default.rb +1 -1
  43. data/chef/travis-cookbooks/ci_environment/git/recipes/ppa.rb +1 -1
  44. data/chef/travis-cookbooks/ci_environment/golang/attributes/default.rb +3 -3
  45. data/chef/travis-cookbooks/ci_environment/gradle/attributes/tarball.rb +1 -1
  46. data/chef/travis-cookbooks/ci_environment/haskell/recipes/default.rb +1 -1
  47. data/chef/travis-cookbooks/ci_environment/haskell/recipes/ghc_package.rb +1 -1
  48. data/chef/travis-cookbooks/ci_environment/haskell/recipes/ghc_source.rb +1 -1
  49. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_package.rb +1 -1
  50. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_ppa.rb +1 -1
  51. data/chef/travis-cookbooks/ci_environment/haskell/recipes/platform_source.rb +1 -1
  52. data/chef/travis-cookbooks/ci_environment/haskell/recipes/source.rb +1 -1
  53. data/chef/travis-cookbooks/ci_environment/hbase/recipes/cdh4.rb +1 -1
  54. data/chef/travis-cookbooks/ci_environment/java/attributes/default.rb +4 -2
  55. data/chef/travis-cookbooks/ci_environment/java/recipes/default.rb +1 -1
  56. data/chef/travis-cookbooks/ci_environment/java/recipes/oraclejdk7.rb +6 -1
  57. data/chef/travis-cookbooks/ci_environment/kerl/attributes/source.rb +1 -1
  58. data/chef/travis-cookbooks/ci_environment/kerl/files/default/erlang.cookie +1 -0
  59. data/chef/travis-cookbooks/ci_environment/kerl/recipes/source.rb +8 -0
  60. data/chef/travis-cookbooks/ci_environment/kestrel/recipes/tarball.rb +1 -1
  61. data/chef/travis-cookbooks/ci_environment/leiningen/attributes/default.rb +1 -1
  62. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/default.rb +1 -1
  63. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/lein1x.rb +1 -1
  64. data/chef/travis-cookbooks/ci_environment/leiningen/recipes/lein2x.rb +1 -1
  65. data/chef/travis-cookbooks/ci_environment/libffi/recipes/default.rb +1 -1
  66. data/chef/travis-cookbooks/ci_environment/libgdbm/recipes/default.rb +1 -1
  67. data/chef/travis-cookbooks/ci_environment/libncurses/recipes/default.rb +1 -1
  68. data/chef/travis-cookbooks/ci_environment/libossp-uuid/recipes/default.rb +1 -1
  69. data/chef/travis-cookbooks/ci_environment/libreadline/recipes/default.rb +1 -1
  70. data/chef/travis-cookbooks/ci_environment/libssl/recipes/098.rb +1 -1
  71. data/chef/travis-cookbooks/ci_environment/libssl/recipes/default.rb +1 -1
  72. data/chef/travis-cookbooks/ci_environment/libxml/recipes/default.rb +1 -1
  73. data/chef/travis-cookbooks/ci_environment/lighttpd/recipes/default.rb +1 -1
  74. data/chef/travis-cookbooks/ci_environment/maven3/recipes/default.rb +5 -2
  75. data/chef/travis-cookbooks/ci_environment/maven3/recipes/package.rb +1 -1
  76. data/chef/travis-cookbooks/ci_environment/maven3/recipes/ppa.rb +1 -1
  77. data/chef/travis-cookbooks/ci_environment/maven3/recipes/tarball.rb +1 -1
  78. data/chef/travis-cookbooks/ci_environment/memcached/attributes/default.rb +1 -1
  79. data/chef/travis-cookbooks/ci_environment/memcached/attributes/ppa.rb +1 -1
  80. data/chef/travis-cookbooks/ci_environment/memcached/recipes/default.rb +1 -1
  81. data/chef/travis-cookbooks/ci_environment/memcached/recipes/ppa.rb +1 -1
  82. data/chef/travis-cookbooks/ci_environment/mercurial/recipes/default.rb +1 -1
  83. data/chef/travis-cookbooks/ci_environment/mercurial/recipes/ppa.rb +36 -0
  84. data/chef/travis-cookbooks/ci_environment/mongodb/attributes/mongodb.rb +1 -1
  85. data/chef/travis-cookbooks/ci_environment/mongodb/files/default/mongodb.sysvinit.sh +1 -1
  86. data/chef/travis-cookbooks/ci_environment/mongodb/recipes/apt.rb +5 -5
  87. data/chef/travis-cookbooks/ci_environment/mongodb/recipes/server.rb +5 -2
  88. data/chef/travis-cookbooks/ci_environment/mysql/attributes/default.rb +1 -3
  89. data/chef/travis-cookbooks/ci_environment/mysql/recipes/server_on_ramfs.rb +6 -1
  90. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/my.cnf.erb +0 -2
  91. data/chef/travis-cookbooks/ci_environment/mysql/templates/default/ramfs/my.cnf.erb +0 -2
  92. data/chef/travis-cookbooks/ci_environment/neo4j-server/attributes/tarball.rb +13 -2
  93. data/chef/travis-cookbooks/ci_environment/neo4j-server/recipes/tarball.rb +26 -2
  94. data/chef/travis-cookbooks/ci_environment/networking_basic/recipes/default.rb +4 -1
  95. data/chef/travis-cookbooks/ci_environment/nodejs/attributes/multi.rb +3 -3
  96. data/chef/travis-cookbooks/ci_environment/nodejs/recipes/multi.rb +1 -1
  97. data/chef/travis-cookbooks/ci_environment/openssh/recipes/default.rb +1 -1
  98. data/chef/travis-cookbooks/ci_environment/perlbrew/attributes/multi.rb +1 -1
  99. data/chef/travis-cookbooks/ci_environment/phantomjs/attributes/default.rb +2 -2
  100. data/chef/travis-cookbooks/ci_environment/phantomjs/metadata.rb +3 -0
  101. data/chef/travis-cookbooks/ci_environment/phantomjs/recipes/default.rb +3 -1
  102. data/chef/travis-cookbooks/ci_environment/phantomjs/recipes/tarball.rb +3 -2
  103. data/chef/travis-cookbooks/ci_environment/php/attributes/default.rb +40 -2
  104. data/chef/travis-cookbooks/ci_environment/php/providers/pecl.rb +73 -0
  105. data/chef/travis-cookbooks/ci_environment/php/recipes/extensions.rb +25 -0
  106. data/chef/travis-cookbooks/ci_environment/php/recipes/multi.rb +5 -4
  107. data/chef/travis-cookbooks/ci_environment/php/resources/pecl.rb +10 -0
  108. data/chef/travis-cookbooks/ci_environment/phpbuild/attributes/default.rb +2 -2
  109. data/chef/travis-cookbooks/ci_environment/phpbuild/files/default/after-install.d/phpunit.sh +58 -0
  110. data/chef/travis-cookbooks/ci_environment/phpbuild/files/default/definitions/5.2.17 +3 -1
  111. data/chef/travis-cookbooks/ci_environment/phpbuild/files/default/definitions/5.3.3 +2 -1
  112. data/chef/travis-cookbooks/ci_environment/phpbuild/providers/build.rb +1 -1
  113. data/chef/travis-cookbooks/ci_environment/phpbuild/recipes/default.rb +8 -10
  114. data/chef/travis-cookbooks/ci_environment/phpbuild/templates/default/default_configure_options.erb +4 -0
  115. data/chef/travis-cookbooks/ci_environment/phpenv/attributes/default.rb +6 -0
  116. data/chef/travis-cookbooks/ci_environment/phpenv/recipes/default.rb +11 -7
  117. data/chef/travis-cookbooks/ci_environment/postgresql/recipes/server_on_ramfs.rb +2 -2
  118. data/chef/travis-cookbooks/ci_environment/python/attributes/default.rb +2 -2
  119. data/chef/travis-cookbooks/ci_environment/python/recipes/multi.rb +10 -3
  120. data/chef/travis-cookbooks/ci_environment/rabbitmq/attributes/default.rb +3 -0
  121. data/chef/travis-cookbooks/ci_environment/rabbitmq/recipes/default.rb +6 -2
  122. data/chef/travis-cookbooks/ci_environment/ragel/recipes/custom.rb +1 -1
  123. data/chef/travis-cookbooks/ci_environment/ragel/recipes/default.rb +1 -1
  124. data/chef/travis-cookbooks/ci_environment/redis/attributes/default.rb +3 -0
  125. data/chef/travis-cookbooks/ci_environment/redis/recipes/default.rb +6 -3
  126. data/chef/travis-cookbooks/ci_environment/redis/recipes/ppa.rb +1 -1
  127. data/chef/travis-cookbooks/ci_environment/riak/attributes/default.rb +1 -0
  128. data/chef/travis-cookbooks/ci_environment/riak/attributes/package.rb +3 -3
  129. data/chef/travis-cookbooks/{messaging_broker/openssl/recipes/default.rb → ci_environment/riak/attributes/service.rb} +4 -3
  130. data/chef/travis-cookbooks/ci_environment/riak/recipes/config.rb +2 -2
  131. data/chef/travis-cookbooks/ci_environment/riak/recipes/default.rb +12 -5
  132. data/chef/travis-cookbooks/ci_environment/rvm/attributes/default.rb +1 -1
  133. data/chef/travis-cookbooks/ci_environment/rvm/attributes/multi.rb +2 -0
  134. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/global.gems +1 -1
  135. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/jruby/global.gems +1 -1
  136. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/ruby/2.0.0/global.gems +2 -0
  137. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/ruby/head/global.gems +2 -0
  138. data/chef/travis-cookbooks/ci_environment/rvm/recipes/default.rb +23 -1
  139. data/chef/travis-cookbooks/ci_environment/rvm/recipes/multi.rb +2 -2
  140. data/chef/travis-cookbooks/ci_environment/rvm/templates/default/bundler_config.yml.erb +2 -0
  141. data/chef/travis-cookbooks/ci_environment/sbt/CHANGELOG.md +20 -0
  142. data/chef/travis-cookbooks/ci_environment/sbt/LICENSE +201 -0
  143. data/chef/travis-cookbooks/ci_environment/sbt/README.md +78 -2
  144. data/chef/travis-cookbooks/ci_environment/sbt/attributes/default.rb +36 -10
  145. data/chef/travis-cookbooks/ci_environment/sbt/metadata.json +27 -17
  146. data/chef/travis-cookbooks/ci_environment/sbt/metadata.rb +13 -6
  147. data/chef/travis-cookbooks/ci_environment/sbt/recipes/default.rb +101 -51
  148. data/chef/travis-cookbooks/ci_environment/sbt/templates/default/jvmopts.erb +7 -0
  149. data/chef/travis-cookbooks/ci_environment/sbt/templates/default/sbtopts.erb +54 -0
  150. data/chef/travis-cookbooks/ci_environment/sphinx/attributes/default.rb +2 -2
  151. data/chef/travis-cookbooks/ci_environment/sphinx/metadata.rb +4 -4
  152. data/chef/travis-cookbooks/ci_environment/sphinx/recipes/all.rb +1 -1
  153. data/chef/travis-cookbooks/ci_environment/sphinx/recipes/default.rb +1 -1
  154. data/chef/travis-cookbooks/{messaging_broker/build-essential/recipes/default.rb → ci_environment/sqlite/recipes/ppa.rb} +13 -24
  155. data/chef/travis-cookbooks/ci_environment/subversion/recipes/default.rb +1 -1
  156. data/chef/travis-cookbooks/ci_environment/sweeper/recipes/default.rb +1 -1
  157. data/chef/travis-cookbooks/ci_environment/travis_build_environment/attributes/default.rb +2 -0
  158. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/ci_user.rb +2 -2
  159. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/default.rb +1 -3
  160. data/chef/travis-cookbooks/ci_environment/travis_build_environment/recipes/root.rb +5 -1
  161. data/chef/travis-cookbooks/ci_environment/travis_build_environment/templates/default/ci_user/{dot_bashrc.sh → dot_bashrc.sh.erb} +0 -4
  162. data/chef/travis-cookbooks/ci_environment/unarchivers/recipes/default.rb +1 -1
  163. data/chef/travis-cookbooks/ci_environment/xserver/metadata.rb +3 -0
  164. data/chef/travis-cookbooks/ci_environment/xserver/recipes/default.rb +1 -1
  165. data/chef/travis-cookbooks/ci_environment/zeromq/recipes/default.rb +6 -23
  166. data/chef/travis-cookbooks/ci_environment/zeromq/recipes/{20x.rb → ppa.rb} +14 -14
  167. data/chef/travis-cookbooks/ci_environment/zookeeper/recipes/cdh4.rb +1 -1
  168. data/chef/travis-cookbooks/worker_host/java/metadata.rb +1 -1
  169. data/chef/travis-cookbooks/worker_host/java/recipes/openjdk.rb +6 -0
  170. data/chef/travis-cookbooks/worker_host/jruby/attributes/default.rb +1 -1
  171. data/chef/travis-cookbooks/worker_host/jruby/metadata.rb +1 -1
  172. data/chef/travis-cookbooks/worker_host/jruby/recipes/default.rb +1 -0
  173. data/chef/travis-cookbooks/worker_host/monit/recipes/default.rb +21 -17
  174. data/chef/travis-cookbooks/worker_host/networking_basic/metadata.rb +1 -1
  175. data/chef/travis-cookbooks/worker_host/networking_basic/recipes/default.rb +0 -6
  176. data/chef/travis-cookbooks/worker_host/ntp/.gitignore +1 -0
  177. data/chef/travis-cookbooks/worker_host/ntp/.travis.yml +6 -0
  178. data/chef/travis-cookbooks/worker_host/ntp/CHANGELOG.md +35 -0
  179. data/chef/travis-cookbooks/worker_host/ntp/CONTRIBUTING +29 -0
  180. data/chef/travis-cookbooks/worker_host/ntp/LICENSE +201 -0
  181. data/chef/travis-cookbooks/worker_host/ntp/README.md +163 -0
  182. data/chef/travis-cookbooks/worker_host/ntp/Rakefile +19 -0
  183. data/chef/travis-cookbooks/worker_host/ntp/TESTING.md +213 -0
  184. data/chef/travis-cookbooks/worker_host/ntp/attributes/default.rb +54 -0
  185. data/chef/travis-cookbooks/{messaging_broker/rabbitmq/resources/vhost.rb → worker_host/ntp/attributes/ntpdate.rb} +6 -7
  186. data/chef/travis-cookbooks/worker_host/ntp/chefignore +19 -0
  187. data/chef/travis-cookbooks/worker_host/ntp/files/default/ntp.leapseconds +222 -0
  188. data/chef/travis-cookbooks/worker_host/ntp/metadata.json +117 -0
  189. data/chef/travis-cookbooks/worker_host/ntp/metadata.rb +45 -0
  190. data/chef/travis-cookbooks/worker_host/ntp/recipes/default.rb +50 -0
  191. data/chef/travis-cookbooks/worker_host/ntp/recipes/disable.rb +22 -0
  192. data/chef/travis-cookbooks/worker_host/ntp/recipes/ntpdate.rb +36 -0
  193. data/chef/travis-cookbooks/{messaging_broker/openssl/libraries/secure_password.rb → worker_host/ntp/recipes/undo.rb} +17 -18
  194. data/chef/travis-cookbooks/worker_host/ntp/templates/default/ntp.conf.erb +55 -0
  195. data/chef/travis-cookbooks/worker_host/ntp/templates/default/ntpdate.erb +14 -0
  196. data/chef/travis-cookbooks/worker_host/rvm/recipes/multi.rb +1 -1
  197. data/chef/travis-cookbooks/worker_host/travis_worker/attributes/default.rb +10 -3
  198. data/chef/travis-cookbooks/worker_host/travis_worker/files/default/signal_wrapper.rb +22 -0
  199. data/chef/travis-cookbooks/worker_host/travis_worker/metadata.rb +2 -2
  200. data/chef/travis-cookbooks/worker_host/travis_worker/recipes/bluebox.rb +97 -0
  201. data/chef/travis-cookbooks/worker_host/travis_worker/recipes/default.rb +25 -15
  202. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/sv-travis-worker-run.erb +1 -1
  203. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/worker-bluebox.yml.erb +21 -0
  204. data/chef/travis-cookbooks/worker_host/travis_worker/templates/default/worker.yml.erb +0 -4
  205. data/chef/travis-cookbooks/worker_host/travis_worker_collectd/metadata.rb +1 -0
  206. data/chef/travis-cookbooks/worker_host/travis_worker_collectd/recipes/bluebox.rb +15 -0
  207. data/chef/travis-cookbooks/worker_host/travis_worker_collectd/recipes/default.rb +1 -0
  208. data/chef/travis-cookbooks/worker_host/users/recipes/default.rb +5 -0
  209. data/cookbooks/.gitkeep +3 -0
  210. data/lib/lobot.rb +8 -4
  211. data/lib/lobot/amazon.rb +33 -19
  212. data/lib/lobot/cli.rb +70 -46
  213. data/lib/lobot/config.rb +151 -19
  214. data/lib/lobot/configuration_wizard.rb +117 -0
  215. data/lib/lobot/keychain.rb +36 -0
  216. data/lib/lobot/password.rb +13 -0
  217. data/lib/lobot/sobo.rb +57 -13
  218. data/lib/lobot/templates/default_rails_build_script.sh +13 -0
  219. data/lib/lobot/version.rb +2 -2
  220. data/lobot.gemspec +4 -5
  221. data/script/bootstrap_server.sh +1 -1
  222. data/script/ci_build.sh +13 -0
  223. data/spec/assets/test_cert.crt +18 -0
  224. data/spec/fixtures/ssh_keys/vagrant_test_key +27 -0
  225. data/spec/fixtures/ssh_keys/vagrant_test_key.pub +1 -0
  226. data/spec/lib/lobot/amazon_spec.rb +80 -39
  227. data/spec/lib/lobot/cli_spec.rb +223 -154
  228. data/spec/lib/lobot/config_spec.rb +207 -5
  229. data/spec/lib/lobot/configuration_wizard_spec.rb +347 -0
  230. data/spec/lib/lobot/keychain_spec.rb +33 -0
  231. data/spec/lib/lobot/password_spec.rb +15 -0
  232. data/spec/spec_helper.rb +19 -1
  233. data/templates/Gemfile-remote +4 -0
  234. metadata +83 -100
  235. data/chef/travis-cookbooks/ci_environment/rvm/files/default/gemsets/ruby/1.8.6/global.gems +0 -2
  236. data/chef/travis-cookbooks/ci_environment/travis_build_environment/files/default/root/dot_bashrc.sh +0 -86
  237. data/chef/travis-cookbooks/ci_environment/zeromq/attributes/default.rb +0 -7
  238. data/chef/travis-cookbooks/messaging_broker/build-essential/README.md +0 -24
  239. data/chef/travis-cookbooks/messaging_broker/build-essential/metadata.rb +0 -10
  240. data/chef/travis-cookbooks/messaging_broker/emacs/metadata.rb +0 -11
  241. data/chef/travis-cookbooks/messaging_broker/emacs/recipes/default.rb +0 -21
  242. data/chef/travis-cookbooks/messaging_broker/erlang/attributes/default.rb +0 -1
  243. data/chef/travis-cookbooks/messaging_broker/erlang/metadata.rb +0 -11
  244. data/chef/travis-cookbooks/messaging_broker/erlang/recipes/default.rb +0 -27
  245. data/chef/travis-cookbooks/messaging_broker/git/README.rdoc +0 -37
  246. data/chef/travis-cookbooks/messaging_broker/git/metadata.rb +0 -16
  247. data/chef/travis-cookbooks/messaging_broker/git/recipes/default.rb +0 -24
  248. data/chef/travis-cookbooks/messaging_broker/git/recipes/server.rb +0 -34
  249. data/chef/travis-cookbooks/messaging_broker/git/templates/default/sv-git-daemon-log-run.erb +0 -2
  250. data/chef/travis-cookbooks/messaging_broker/git/templates/default/sv-git-daemon-run.erb +0 -3
  251. data/chef/travis-cookbooks/messaging_broker/haproxy/README.md +0 -79
  252. data/chef/travis-cookbooks/messaging_broker/haproxy/attributes/default.rb +0 -22
  253. data/chef/travis-cookbooks/messaging_broker/haproxy/metadata.rb +0 -13
  254. data/chef/travis-cookbooks/messaging_broker/haproxy/recipes/app_lb.rb +0 -50
  255. data/chef/travis-cookbooks/messaging_broker/haproxy/recipes/default.rb +0 -42
  256. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy-app_lb.cfg.erb +0 -34
  257. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy-default.erb +0 -4
  258. data/chef/travis-cookbooks/messaging_broker/haproxy/templates/default/haproxy.cfg.erb +0 -27
  259. data/chef/travis-cookbooks/messaging_broker/iptables/definitions/iptables_rule.rb +0 -35
  260. data/chef/travis-cookbooks/messaging_broker/iptables/files/default/rebuild-iptables +0 -284
  261. data/chef/travis-cookbooks/messaging_broker/iptables/metadata.rb +0 -10
  262. data/chef/travis-cookbooks/messaging_broker/iptables/recipes/default.rb +0 -50
  263. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/all_established.erb +0 -2
  264. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/all_icmp.erb +0 -2
  265. data/chef/travis-cookbooks/messaging_broker/iptables/templates/default/iptables_load.erb +0 -3
  266. data/chef/travis-cookbooks/messaging_broker/openssl/README.md +0 -37
  267. data/chef/travis-cookbooks/messaging_broker/openssl/metadata.rb +0 -8
  268. data/chef/travis-cookbooks/messaging_broker/rabbitmq/README.md +0 -86
  269. data/chef/travis-cookbooks/messaging_broker/rabbitmq/attributes/default.rb +0 -10
  270. data/chef/travis-cookbooks/messaging_broker/rabbitmq/metadata.rb +0 -63
  271. data/chef/travis-cookbooks/messaging_broker/rabbitmq/providers/user.rb +0 -66
  272. data/chef/travis-cookbooks/messaging_broker/rabbitmq/providers/vhost.rb +0 -34
  273. data/chef/travis-cookbooks/messaging_broker/rabbitmq/recipes/cluster.rb +0 -35
  274. data/chef/travis-cookbooks/messaging_broker/rabbitmq/recipes/default.rb +0 -51
  275. data/chef/travis-cookbooks/messaging_broker/rabbitmq/resources/user.rb +0 -25
  276. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/doterlang.cookie.erb +0 -1
  277. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/rabbitmq-env.conf.erb +0 -10
  278. data/chef/travis-cookbooks/messaging_broker/rabbitmq/templates/default/rabbitmq_cluster.config.erb +0 -5
  279. data/ci_build.sh +0 -20
  280. data/docs/ci_yml.md +0 -39
  281. data/features/ci.feature +0 -29
  282. data/features/config/secrets.yml.example +0 -4
  283. data/features/step_definitions/ci_steps.rb +0 -137
  284. data/features/support/env.rb +0 -12
  285. data/lib/generators/lobot/USAGE +0 -15
  286. data/lib/generators/lobot/config_generator.rb +0 -141
  287. data/lib/generators/lobot/install_generator.rb +0 -25
  288. data/lib/generators/lobot/templates/Capfile +0 -6
  289. data/lib/generators/lobot/templates/ci.yml +0 -22
  290. data/lib/generators/lobot/templates/ci_build.sh +0 -22
  291. data/lib/generators/lobot/templates/deploy-ci.rb +0 -7
  292. data/lib/generators/lobot/templates/soloistrc +0 -23
  293. data/lib/lobot/jenkins.rb +0 -17
  294. data/lib/lobot/railtie.rb +0 -20
  295. data/lib/lobot/recipes/ci.rb +0 -78
  296. data/lib/lobot/tasks/ci.rake +0 -93
  297. data/spec/lib/lobot/jenkins_spec.rb +0 -14
@@ -1,2 +1,40 @@
1
- default[:php][:multi][:versions] = ["5.2.17", "5.3.3", "5.3.17", "5.4.7"]
2
- default[:php][:multi][:aliases] = {"5.2" => "5.2.17", "5.3" => "5.3.17", "5.4" => "5.4.7"}
1
+ default[:php][:multi][:versions] = ["5.2.17", "5.3.3", "5.3.22", "5.4.12", "5.5.0alpha4"]
2
+ default[:php][:multi][:aliases] = {"5.2" => "5.2.17", "5.3" => "5.3.22", "5.4" => "5.4.12", "5.5" => "5.5.0alpha4"}
3
+
4
+ default[:php][:multi][:extensions] = {
5
+ 'apc' => {
6
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") }
7
+ },
8
+ 'memcache' => {
9
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") }
10
+ },
11
+ 'memcached' => {
12
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") },
13
+ 'before_packages' => %w(libevent-dev libcloog-ppl0),
14
+ 'before_script' => <<-EOF
15
+ wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
16
+ tar xzf libmemcached-1.0.16.tar.gz
17
+ cd libmemcached-1.0.16
18
+ ./configure && make && make install
19
+ EOF
20
+ },
21
+ 'mongo' => {
22
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") }
23
+ },
24
+ 'amqp' => {
25
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") },
26
+ 'before_script' => <<-EOF
27
+ git clone git://github.com/alanxz/rabbitmq-c.git
28
+ cd rabbitmq-c
29
+ git submodule init
30
+ git submodule update
31
+ autoreconf -i && ./configure && make && make install
32
+ EOF
33
+ },
34
+ 'pear.zero.mq/zmq-beta' => {
35
+ 'versions' => default[:php][:multi][:versions].reject { |version| version.start_with?("5.5") },
36
+ 'before_recipes' => %w(zeromq::ppa),
37
+ 'before_packages' => %w(libzmq3-dev),
38
+ 'channel' => 'pear.zero.mq'
39
+ }
40
+ }
@@ -0,0 +1,73 @@
1
+ action :install do
2
+ new_resource = @new_resource
3
+ extension = new_resource.extension
4
+ versions = new_resource.versions
5
+
6
+ new_resource.before_recipes.each do |recipe|
7
+ @run_context.include_recipe recipe
8
+ end
9
+
10
+ new_resource.before_packages.each do |pkg|
11
+ package pkg do
12
+ action :install
13
+ end
14
+ end
15
+
16
+ bash "before installing PECL extension #{extension} script" do
17
+ user "root"
18
+ cwd "/tmp"
19
+ code new_resource.before_script
20
+ only_if do
21
+ new_resource.before_script && !new_resource.before_script.empty?
22
+ end
23
+ end
24
+
25
+ versions.each do |php_version|
26
+ bash "install PECL extension #{extension} for PHP #{php_version}" do
27
+ user new_resource.owner
28
+ group new_resource.group
29
+ environment Hash["HOME" => node.travis_build_environment.home]
30
+ code <<-EOF
31
+ source /etc/profile.d/phpenv.sh
32
+ phpenv global #{php_version}
33
+
34
+ if [ ! -z "#{new_resource.channel}" ]; then
35
+ pear channel-discover #{new_resource.channel}
36
+ fi
37
+
38
+ pecl info #{extension}
39
+ return=$?
40
+ if [ $return = 0 ]; then
41
+ echo "Extension #{extension} was already installed for PHP #{php_version}."
42
+ elif [ $return = 1 ]; then
43
+ result=$(pecl install #{extension} | tail -1)
44
+ if [[ "$result" =~ ^ERROR: ]]; then
45
+ echo "There was an error installing extension #{extension} for PHP #{php_version}:"
46
+ echo "$result"
47
+ exit 1
48
+ fi
49
+ echo "Extension #{extension} successfully installed for PHP #{php_version}."
50
+ else
51
+ echo "There was an error installing extension #{extension} for PHP #{php_version}."
52
+ exit 1
53
+ fi
54
+ EOF
55
+ end
56
+ end
57
+ end
58
+
59
+ action :uninstall do
60
+ new_resource = @new_resource
61
+ extension = new_resource.extension
62
+ versions = new_resource.versions
63
+
64
+ versions.each do |php_version|
65
+ bash "uninstall PECL extension #{extension} for PHP #{php_version}" do
66
+ user new_resource.owner
67
+ group new_resource.group
68
+ code <<-EOF
69
+ pecl uninstall #{extension}
70
+ EOF
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,25 @@
1
+ include_recipe "phpenv"
2
+ include_recipe "phpbuild"
3
+
4
+ node.php.multi.extensions.each do |php_extension, options|
5
+ php_pecl php_extension do
6
+ channel options['channel']
7
+ versions options['versions'] || node.php.multi.versions
8
+ before_recipes options['before_recipes']
9
+ before_packages options['before_packages']
10
+ before_script options['before_script']
11
+ owner node.travis_build_environment.user
12
+ group node.travis_build_environment.group
13
+
14
+ action :install
15
+ end
16
+ end
17
+
18
+ node.php.multi.versions.each do |php_version|
19
+ bash "disable preinstalled PECL extensions for PHP #{php_version}" do
20
+ user node.travis_build_environment.user
21
+ group node.travis_build_environment.group
22
+ environment Hash["HOME" => node.travis_build_environment.home]
23
+ code "sed -i '/^extension=/d' $HOME/.phpenv/versions/#{php_version}/etc/php.ini"
24
+ end
25
+ end
@@ -5,11 +5,11 @@ phpbuild_path = "#{node.travis_build_environment.home}/.php-build"
5
5
  phpenv_path = "#{node.travis_build_environment.home}/.phpenv"
6
6
 
7
7
  node.php.multi.versions.each do |php_version|
8
-
9
8
  phpbuild_build "#{phpenv_path}/versions" do
10
- version php_version
11
- owner node.travis_build_environment.user
12
- group node.travis_build_environment.group
9
+ version php_version
10
+ with_pear !php_version.start_with?('5.5')
11
+ owner node.travis_build_environment.user
12
+ group node.travis_build_environment.group
13
13
 
14
14
  action :create
15
15
  end
@@ -22,4 +22,5 @@ node.php.multi.aliases.each do |short_version, target_version|
22
22
  end
23
23
  end
24
24
 
25
+ include_recipe "php::extensions"
25
26
  include_recipe "composer"
@@ -0,0 +1,10 @@
1
+ actions :install, :uninstall
2
+
3
+ attribute :extension, :kind_of => String, :name_attribute => true
4
+ attribute :channel, :kind_of => String
5
+ attribute :versions, :kind_of => Array
6
+ attribute :before_recipes, :kind_of => Array, :default => []
7
+ attribute :before_packages, :kind_of => Array, :default => []
8
+ attribute :before_script, :kind_of => String
9
+ attribute :owner, :regex => Chef::Config[:user_valid_regex]
10
+ attribute :group, :regex => Chef::Config[:group_valid_regex]
@@ -1,12 +1,12 @@
1
1
  default[:phpbuild] = {
2
2
  :git => {
3
3
  :repository => "git://github.com/CHH/php-build.git",
4
- :revision => "30c5486d1a33bec9b104c93504888e78c27753b2"
4
+ :revision => "970ce028f44f5c1f82fa7bec78d783e1d173bd72"
5
5
  },
6
6
  :phpunit_plugin => {
7
7
  :git => {
8
8
  :repository => "git://github.com/CHH/php-build-plugin-phpunit.git",
9
- :revision => "a6a5ce4a5126b90a02dd473b63f660515de7d183"
9
+ :revision => "2ee717c0e783809458f3073258c63f42500d1298"
10
10
  }
11
11
  },
12
12
  :custom => {
@@ -0,0 +1,58 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ if [ -n "$PHP_BUILD_DEBUG" ]; then
6
+ set -x
7
+ fi
8
+
9
+ pyrus="$PREFIX/bin/pyrus"
10
+ pear="$PREFIX/bin/pear"
11
+
12
+ use_pear() {
13
+ "$pear" upgrade pear
14
+
15
+ "$pear" channel-discover components.ez.no
16
+ "$pear" channel-discover pear.symfony-project.com
17
+ "$pear" channel-discover pear.phpunit.de
18
+
19
+ if "$PREFIX/bin/php" -v | grep "PHP 5.2"; then
20
+ "$pear" install "phpunit/File_Iterator-1.3.2"
21
+ "$pear" install "phpunit/Text_Template-1.1.2"
22
+ "$pear" install "phpunit/PHP_Timer-1.0.3"
23
+ "$pear" install "phpunit/PHPUnit-3.6.12"
24
+ else
25
+ "$pear" install "phpunit/PHPUnit"
26
+ fi
27
+ }
28
+
29
+ use_pyrus() {
30
+ # ezComponents' PEAR Channel somehow not works with Pyrus
31
+ # so manually download and install the package files.
32
+ _ezcomponents_hack() {
33
+ local base_url="http://components.ez.no/get/$package"
34
+ local ezcBase="$base_url/Base-1.8.tgz"
35
+ local ezcConsoleTools="$base_url/ConsoleTools-1.6.1.tgz"
36
+
37
+ "$pyrus" install "$ezcBase" "$ezcConsoleTools"
38
+ }
39
+
40
+ # Set up the required channels
41
+ "$pyrus" channel-discover "components.ez.no"
42
+ "$pyrus" channel-discover "pear.symfony-project.com"
43
+ "$pyrus" channel-discover "pear.phpunit.de"
44
+
45
+ _ezcomponents_hack
46
+
47
+ "$pyrus" install "phpunit/PHPUnit"
48
+ }
49
+
50
+ if [ -f "$pyrus" ]; then
51
+ use_pyrus
52
+ else
53
+ if [ -f "$pear" ]; then
54
+ use_pear
55
+ else
56
+ echo "Neither pear nor pyrus found in $PREFIX/bin. Aborting" >&3
57
+ fi
58
+ fi
@@ -5,6 +5,8 @@ configure_option "--with-mime-magic"
5
5
  configure_option "--with-libdir=lib"
6
6
 
7
7
  configure_option -D "--with-openssl"
8
+ configure_option -D "--enable-fpm"
9
+ configure_option -D "--with-gmp"
8
10
 
9
11
  configure_option -R "--with-mysql"
10
12
  configure_option -R "--with-mysqli"
@@ -13,4 +15,4 @@ configure_option -R "--with-pdo-mysql"
13
15
  with_pear
14
16
 
15
17
  install_package "http://museum.php.net/php5/php-5.2.17.tar.bz2"
16
- install_xdebug "2.1.3"
18
+ install_xdebug "2.1.4"
@@ -1,5 +1,6 @@
1
1
  configure_option -D "--with-openssl"
2
+ configure_option -D "--enable-fpm"
2
3
 
3
4
  install_package "http://museum.php.net/php5/php-5.3.3.tar.bz2"
4
5
  install_pyrus
5
- install_xdebug "2.1.3"
6
+ install_xdebug "2.1.4"
@@ -16,7 +16,7 @@ action :create do
16
16
  cwd "#{phpbuild_path}/bin"
17
17
  ini_suffix = version < '5.3' ? 'dist' : 'development'
18
18
  code <<-EOF
19
- ./php-build -i #{ini_suffix} #{pear_option} #{version} #{target_path}
19
+ PHP_VERSION=#{version} ./php-build -i #{ini_suffix} #{pear_option} #{version} #{target_path}
20
20
  EOF
21
21
  end
22
22
 
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # Cookbook Name:: phpbuild
3
3
  # Recipe:: default
4
- # Copyright 2011-2012, Travis CI development team
4
+ # Copyright 2011-2013, Travis CI Development Team <contact@travis-ci.org>
5
5
  #
6
6
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  # of this software and associated documentation files (the "Software"), to deal
@@ -44,8 +44,8 @@ when "ubuntu", "debian"
44
44
  end
45
45
 
46
46
  if node[:platform_version].to_f >= 12.04
47
- link "/usr/lib/libmysqlclient.so" do
48
- to "/usr/lib/#{node.phpbuild.arch}-linux-gnu/libmysqlclient.so"
47
+ link "/usr/lib/libmysqlclient_r.so" do
48
+ to "/usr/lib/#{node.phpbuild.arch}-linux-gnu/libmysqlclient_r.so"
49
49
  end
50
50
  end
51
51
 
@@ -98,14 +98,12 @@ directory "#{phpbuild_path}/tmp" do
98
98
  action :create
99
99
  end
100
100
 
101
- bash "install php-build plugins" do
102
- user node.travis_build_environment.user
101
+ cookbook_file "#{phpbuild_path}/share/php-build/after-install.d/phpunit" do
102
+ owner node.travis_build_environment.user
103
103
  group node.travis_build_environment.group
104
- code <<-EOF
105
- cp /tmp/php-build-plugin-phpunit/share/php-build/after-install.d/phpunit #{phpbuild_path}/share/php-build/after-install.d
106
- rm -rf /tmp/php-build-plugin-phpunit
107
- EOF
108
- not_if "test -f #{phpbuild_path}/share/php-build/after-install.d/phpunit"
104
+ mode "0755"
105
+
106
+ source "after-install.d/phpunit.sh"
109
107
  end
110
108
 
111
109
  template "#{phpbuild_path}/share/php-build/default_configure_options" do
@@ -36,3 +36,7 @@
36
36
  --with-bz2
37
37
  --enable-bcmath
38
38
  --enable-calendar
39
+ --with-libdir=lib
40
+ --enable-fpm
41
+ --enable-maintainer-zts
42
+ --with-gmp
@@ -0,0 +1,6 @@
1
+ default[:phpenv] = {
2
+ :git => {
3
+ :repository => "git://github.com/CHH/phpenv.git",
4
+ :revision => "a3091e84de6dd2c61ea1bdb96cf3053c62740a3f"
5
+ }
6
+ }
@@ -1,21 +1,25 @@
1
1
  include_recipe "git"
2
+ phpenv_path = "#{node.travis_build_environment.home}/.phpenv"
2
3
 
3
- remote_file "/tmp/phpenv-install.sh" do
4
- source "https://raw.github.com/CHH/phpenv/master/bin/phpenv-install.sh"
5
- mode "0755"
4
+ git "/tmp/phpenv" do
5
+ user node.travis_build_environment.user
6
+ group node.travis_build_environment.group
7
+ repository node[:phpenv][:git][:repository]
8
+ revision node[:phpenv][:git][:revision]
9
+ action :checkout
6
10
  end
7
11
 
8
12
  bash "install phpenv" do
9
13
  user node.travis_build_environment.user
10
14
  group node.travis_build_environment.group
11
- environment Hash["HOME" => node.travis_build_environment.home]
12
15
  code <<-EOF
13
- . /tmp/phpenv-install.sh
16
+ PHPENV_ROOT="#{phpenv_path}" . /tmp/phpenv/bin/phpenv-install.sh
17
+ cp /tmp/phpenv/extensions/rbenv-config-add /tmp/phpenv/extensions/rbenv-config-rm "#{phpenv_path}/libexec"
14
18
  EOF
15
- not_if "test -f #{node.travis_build_environment.home}/.phpenv/bin/phpenv"
19
+ not_if "test -f #{phpenv_path}/bin/phpenv"
16
20
  end
17
21
 
18
- directory "#{node.travis_build_environment.home}/.phpenv/versions" do
22
+ directory "#{phpenv_path}/versions" do
19
23
  owner node.travis_build_environment.user
20
24
  group node.travis_build_environment.group
21
25
  mode "0755"
@@ -2,7 +2,7 @@
2
2
  # Cookbook Name:: postgresql
3
3
  # Recipe:: server_on_ramfs
4
4
  #
5
- # Copyright 2011, Travis CI Development Team
5
+ # Copyright 2011-2013, Travis CI Development Team <contact@travis-ci.org>
6
6
  #
7
7
  # Licensed under the Apache License, Version 2.0 (the "License");
8
8
  # you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
19
19
 
20
20
  include_recipe "ramfs"
21
21
 
22
- node[:postgresql][:data_dir] = "#{node[:ramfs][:dir]}/postgresql"
22
+ node.set[:postgresql][:data_dir] = "#{node[:ramfs][:dir]}/postgresql"
23
23
 
24
24
  include_recipe "postgresql::server"
25
25
 
@@ -18,5 +18,5 @@
18
18
  # limitations under the License.
19
19
  #
20
20
 
21
- default['python']['multi']['pythons'] = %w(python2.5 python2.6 python2.7 python3.1 python3.2 pypy)
22
- default['python']['pip']['packages'] = %w(nose pytest mock)
21
+ default['python']['multi']['pythons'] = %w(python2.5 python2.6 python2.7 python3.2 python3.3 pypy)
22
+ default['python']['pip']['packages'] = %w(nose pytest mock numpy)
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # Cookbook Name:: python::dead_snakes_ppa
3
3
  # Recipe:: default
4
- # Copyright 2011, Michael S. Klishin & Travis CI development team
4
+ # Copyright 2011, Michael S. Klishin & Travis CI Development Team
5
5
  #
6
6
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  # of this software and associated documentation files (the "Software"), to deal
@@ -92,6 +92,13 @@ node.python.multi.pythons.each do |py|
92
92
  end
93
93
  end
94
94
 
95
+ packages = if ["python3.3", "3.3", "python3.2", "3.2", "pypy"].include?(py.to_s.downcase)
96
+ # some versions fail to install NumPy. MK.
97
+ node.python.pip.packages.reject { |p| p =~ /numpy/ }
98
+ else
99
+ node.python.pip.packages
100
+ end
101
+
95
102
  script "preinstall pip packages for virtualenv set 1 (#{py})" do
96
103
  interpreter "bash"
97
104
  user node.travis_build_environment.user
@@ -99,7 +106,7 @@ node.python.multi.pythons.each do |py|
99
106
 
100
107
  cwd node.travis_build_environment.home
101
108
  code <<-EOH
102
- #{installation_root}/#{py}/bin/pip install --quiet #{node.python.pip.packages.join(' ')} --use-mirrors
109
+ #{installation_root}/#{py}/bin/pip install --quiet #{packages.join(' ')} --use-mirrors
103
110
  EOH
104
111
 
105
112
  environment({ "VIRTUAL_ENV_DISABLE_PROMPT" => "true" })
@@ -114,7 +121,7 @@ node.python.multi.pythons.each do |py|
114
121
 
115
122
  cwd node.travis_build_environment.home
116
123
  code <<-EOH
117
- #{installation_root}/#{py}_with_system_site_packages/bin/pip install --quiet #{node.python.pip.packages.join(' ')} --use-mirrors
124
+ #{installation_root}/#{py}_with_system_site_packages/bin/pip install --quiet #{packages.join(' ')} --use-mirrors
118
125
  EOH
119
126
 
120
127
  environment({ "VIRTUAL_ENV_DISABLE_PROMPT" => "true" })
@@ -6,3 +6,6 @@ default[:rabbitmq][:logdir] = nil
6
6
  default[:rabbitmq][:mnesiadir] = nil
7
7
 
8
8
  default[:rabbitmq][:high_memory_watermark] = 0.04
9
+
10
+ default[:rabbitmq][:service][:enabled] = false
11
+