shipit-engine 0.5.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/concerns/shipit/api/cacheable.rb +13 -0
  3. data/app/controllers/concerns/shipit/api/paginable.rb +37 -0
  4. data/app/controllers/concerns/shipit/api/rendering.rb +25 -0
  5. data/app/controllers/concerns/{api/paginable.rb → shipit/pagination.rb} +5 -13
  6. data/app/controllers/shipit/api/base_controller.rb +68 -0
  7. data/app/controllers/shipit/api/deploys_controller.rb +17 -0
  8. data/app/controllers/shipit/api/hooks_controller.rb +53 -0
  9. data/app/controllers/shipit/api/locks_controller.rb +32 -0
  10. data/app/controllers/shipit/api/outputs_controller.rb +17 -0
  11. data/app/controllers/shipit/api/stacks_controller.rb +21 -0
  12. data/app/controllers/shipit/api/tasks_controller.rb +20 -0
  13. data/app/controllers/shipit/commit_checks_controller.rb +26 -0
  14. data/app/controllers/shipit/deploys_controller.rb +47 -0
  15. data/app/controllers/shipit/github_authentication_controller.rb +27 -0
  16. data/app/controllers/shipit/rollbacks_controller.rb +26 -0
  17. data/app/controllers/shipit/shipit_controller.rb +62 -0
  18. data/app/controllers/shipit/stacks_controller.rb +81 -0
  19. data/app/controllers/shipit/status_controller.rb +7 -0
  20. data/app/controllers/shipit/tasks_controller.rb +48 -0
  21. data/app/controllers/shipit/webhooks_controller.rb +101 -0
  22. data/app/helpers/shipit/chunks_helper.rb +8 -0
  23. data/app/helpers/shipit/deploys_helper.rb +28 -0
  24. data/app/helpers/shipit/github_url_helper.rb +48 -0
  25. data/app/helpers/shipit/shipit_helper.rb +64 -0
  26. data/app/helpers/shipit/stacks_helper.rb +78 -0
  27. data/app/helpers/shipit/tasks_helper.rb +11 -0
  28. data/app/jobs/shipit/background_job.rb +24 -0
  29. data/app/jobs/shipit/background_job/unique.rb +28 -0
  30. data/app/jobs/shipit/cache_deploy_spec_job.rb +12 -0
  31. data/app/jobs/shipit/chunk_rollup_job.rb +21 -0
  32. data/app/jobs/shipit/clear_git_cache_job.rb +9 -0
  33. data/app/jobs/shipit/deliver_hook_job.rb +9 -0
  34. data/app/jobs/shipit/destroy_stack_job.rb +9 -0
  35. data/app/jobs/shipit/emit_event_job.rb +10 -0
  36. data/app/jobs/shipit/fetch_commit_stats_job.rb +9 -0
  37. data/app/jobs/shipit/fetch_deployed_revision_job.rb +23 -0
  38. data/app/jobs/shipit/git_mirror_update_job.rb +12 -0
  39. data/app/jobs/shipit/github_sync_job.rb +55 -0
  40. data/app/jobs/shipit/perform_commit_checks_job.rb +7 -0
  41. data/app/jobs/shipit/perform_task_job.rb +57 -0
  42. data/app/jobs/shipit/refresh_github_user_job.rb +9 -0
  43. data/app/jobs/shipit/refresh_statuses_job.rb +14 -0
  44. data/app/jobs/shipit/setup_github_hook_job.rb +11 -0
  45. data/app/models/shipit/anonymous_user.rb +43 -0
  46. data/app/models/shipit/api_client.rb +44 -0
  47. data/app/models/shipit/commit.rb +209 -0
  48. data/app/models/shipit/commit_checks.rb +90 -0
  49. data/app/models/shipit/delivery.rb +47 -0
  50. data/app/models/shipit/deploy.rb +153 -0
  51. data/app/models/shipit/deploy_spec.rb +150 -0
  52. data/app/models/shipit/deploy_spec/bundler_discovery.rb +61 -0
  53. data/app/models/shipit/deploy_spec/capistrano_discovery.rb +29 -0
  54. data/app/models/shipit/deploy_spec/file_system.rb +64 -0
  55. data/app/models/shipit/deploy_spec/pypi_discovery.rb +34 -0
  56. data/app/models/shipit/deploy_spec/rubygems_discovery.rb +34 -0
  57. data/app/models/shipit/github_hook.rb +148 -0
  58. data/app/models/shipit/hook.rb +86 -0
  59. data/app/models/shipit/membership.rb +8 -0
  60. data/app/models/shipit/missing_status.rb +21 -0
  61. data/app/models/shipit/output_chunk.rb +11 -0
  62. data/app/models/shipit/rollback.rb +31 -0
  63. data/app/models/shipit/stack.rb +308 -0
  64. data/app/models/shipit/status.rb +44 -0
  65. data/app/models/shipit/status_group.rb +35 -0
  66. data/app/models/shipit/task.rb +201 -0
  67. data/app/models/shipit/task_definition.rb +38 -0
  68. data/app/models/shipit/team.rb +69 -0
  69. data/app/models/shipit/unknown_status.rb +43 -0
  70. data/app/models/shipit/user.rb +83 -0
  71. data/app/models/shipit/variable_definition.rb +21 -0
  72. data/app/serializers/concerns/shipit/conditional_attributes.rb +22 -0
  73. data/app/serializers/shipit/anonymous_user_serializer.rb +4 -0
  74. data/app/serializers/shipit/commit_serializer.rb +8 -0
  75. data/app/serializers/shipit/deploy_serializer.rb +15 -0
  76. data/app/serializers/shipit/hook_serializer.rb +12 -0
  77. data/app/serializers/shipit/rollback_serializer.rb +7 -0
  78. data/app/serializers/shipit/short_commit_serializer.rb +9 -0
  79. data/app/serializers/shipit/stack_serializer.rb +33 -0
  80. data/app/serializers/shipit/tail_task_serializer.rb +39 -0
  81. data/app/serializers/shipit/task_serializer.rb +30 -0
  82. data/app/serializers/shipit/user_serializer.rb +5 -0
  83. data/app/views/{commits → shipit/commits}/_commit.html.erb +1 -1
  84. data/app/views/{commits → shipit/commits}/_commit_author.html.erb +0 -0
  85. data/app/views/{deploys → shipit/deploys}/_checklist.html.erb +0 -0
  86. data/app/views/{deploys → shipit/deploys}/_checks.html.erb +0 -0
  87. data/app/views/{deploys → shipit/deploys}/_concurrent_deploy_warning.html.erb +0 -0
  88. data/app/views/{deploys → shipit/deploys}/_deploy.html.erb +1 -1
  89. data/app/views/{deploys → shipit/deploys}/_monitoring.html.erb +0 -0
  90. data/app/views/{deploys → shipit/deploys}/_summary.html.erb +0 -0
  91. data/app/views/{deploys → shipit/deploys}/new.html.erb +3 -3
  92. data/app/views/{deploys → shipit/deploys}/rollback.html.erb +2 -2
  93. data/app/views/{deploys → shipit/deploys}/show.html.erb +1 -1
  94. data/app/views/{github_authentication → shipit/github_authentication}/failed.html.erb +0 -0
  95. data/app/views/{stacks → shipit/stacks}/_header.html.erb +0 -0
  96. data/app/views/{stacks → shipit/stacks}/index.html.erb +0 -0
  97. data/app/views/{stacks → shipit/stacks}/new.html.erb +0 -0
  98. data/app/views/{stacks → shipit/stacks}/settings.html.erb +1 -1
  99. data/app/views/{stacks → shipit/stacks}/show.html.erb +2 -2
  100. data/app/views/{statuses → shipit/statuses}/_group.html.erb +1 -1
  101. data/app/views/{statuses → shipit/statuses}/_status.html.erb +0 -0
  102. data/app/views/{tasks → shipit/tasks}/_task.html.erb +1 -1
  103. data/app/views/{tasks → shipit/tasks}/_task_output.html.erb +1 -1
  104. data/app/views/{tasks → shipit/tasks}/index.html.erb +1 -1
  105. data/app/views/{tasks → shipit/tasks}/new.html.erb +1 -1
  106. data/app/views/{tasks → shipit/tasks}/show.html.erb +1 -1
  107. data/db/migrate/20160104151742_increase_tasks_type_size_back.rb +5 -0
  108. data/db/migrate/20160104151833_convert_sti_columns.rb +10 -0
  109. data/lib/shipit.rb +11 -10
  110. data/lib/shipit/command.rb +171 -0
  111. data/lib/shipit/commands.rb +25 -0
  112. data/lib/shipit/deploy_commands.rb +21 -0
  113. data/lib/shipit/engine.rb +3 -0
  114. data/lib/shipit/rollback_commands.rb +7 -0
  115. data/lib/shipit/stack_commands.rb +60 -0
  116. data/lib/shipit/task_commands.rb +68 -0
  117. data/lib/shipit/version.rb +1 -1
  118. data/lib/tasks/cron.rake +3 -3
  119. data/test/controllers/api/base_controller_test.rb +18 -14
  120. data/test/controllers/api/deploys_controller_test.rb +56 -52
  121. data/test/controllers/api/hooks_controller_test.rb +62 -58
  122. data/test/controllers/api/locks_controller_test.rb +38 -34
  123. data/test/controllers/api/outputs_controller_test.rb +15 -11
  124. data/test/controllers/api/stacks_controller_test.rb +56 -52
  125. data/test/controllers/api/tasks_controller_test.rb +30 -26
  126. data/test/controllers/commit_checks_controller_test.rb +29 -27
  127. data/test/controllers/deploys_controller_test.rb +68 -66
  128. data/test/controllers/github_authentication_controller_test.rb +9 -7
  129. data/test/controllers/rollbacks_controller_test.rb +43 -41
  130. data/test/controllers/stacks_controller_test.rb +131 -128
  131. data/test/controllers/status_controller_test.rb +8 -6
  132. data/test/controllers/tasks_controller_test.rb +70 -68
  133. data/test/controllers/webhooks_controller_test.rb +127 -125
  134. data/test/dummy/db/development.sqlite3 +0 -0
  135. data/test/dummy/db/schema.rb +2 -2
  136. data/test/dummy/db/seeds.rb +133 -131
  137. data/test/dummy/db/test.sqlite3 +0 -0
  138. data/test/fixtures/{api_clients.yml → shipit/api_clients.yml} +0 -0
  139. data/test/fixtures/{commits.yml → shipit/commits.yml} +0 -0
  140. data/test/fixtures/{deliveries.yml → shipit/deliveries.yml} +0 -0
  141. data/test/fixtures/{github_hooks.yml → shipit/github_hooks.yml} +4 -4
  142. data/test/fixtures/{hooks.yml → shipit/hooks.yml} +0 -0
  143. data/test/fixtures/{memberships.yml → shipit/memberships.yml} +0 -0
  144. data/test/fixtures/{output_chunks.yml → shipit/output_chunks.yml} +0 -0
  145. data/test/fixtures/{stacks.yml → shipit/stacks.yml} +0 -0
  146. data/test/fixtures/{statuses.yml → shipit/statuses.yml} +0 -0
  147. data/test/fixtures/{tasks.yml → shipit/tasks.yml} +8 -8
  148. data/test/fixtures/{teams.yml → shipit/teams.yml} +0 -0
  149. data/test/fixtures/{users.yml → shipit/users.yml} +0 -0
  150. data/test/helpers/api_helper.rb +1 -1
  151. data/test/helpers/fixture_aliases_helper.rb +4 -4
  152. data/test/jobs/cache_deploy_spec_job_test.rb +15 -13
  153. data/test/jobs/chunk_rollup_job_test.rb +30 -28
  154. data/test/jobs/deliver_hook_job_test.rb +11 -9
  155. data/test/jobs/destroy_stack_job_test.rb +11 -9
  156. data/test/jobs/emit_event_job_test.rb +10 -8
  157. data/test/jobs/fetch_commit_stats_job_test.rb +10 -8
  158. data/test/jobs/fetch_deployed_revision_job_test.rb +24 -22
  159. data/test/jobs/github_sync_job_test.rb +51 -49
  160. data/test/jobs/perform_task_job_test.rb +78 -76
  161. data/test/jobs/refresh_github_user_job_test.rb +10 -8
  162. data/test/jobs/refresh_status_job_test.rb +14 -12
  163. data/test/jobs/unique_job_test.rb +18 -15
  164. data/test/models/api_client_test.rb +20 -18
  165. data/test/models/commit_checks_test.rb +63 -61
  166. data/test/models/commits_test.rb +317 -314
  167. data/test/models/delivery_test.rb +29 -27
  168. data/test/models/deploys_test.rb +289 -287
  169. data/test/models/github_hook_test.rb +45 -43
  170. data/test/models/hook_test.rb +44 -42
  171. data/test/models/membership_test.rb +9 -7
  172. data/test/models/missing_status_test.rb +16 -14
  173. data/test/models/output_chunk_test.rb +14 -12
  174. data/test/models/rollbacks_test.rb +14 -12
  175. data/test/models/stacks_test.rb +272 -270
  176. data/test/models/status_group_test.rb +18 -16
  177. data/test/models/status_test.rb +42 -40
  178. data/test/models/task_definitions_test.rb +27 -25
  179. data/test/models/team_test.rb +39 -37
  180. data/test/models/users_test.rb +61 -59
  181. data/test/unit/command_test.rb +43 -41
  182. data/test/unit/commands_test.rb +8 -6
  183. data/test/unit/csv_serializer_test.rb +28 -26
  184. data/test/unit/deploy_commands_test.rb +179 -176
  185. data/test/unit/deploy_spec_test.rb +237 -235
  186. data/test/unit/github_url_helper_test.rb +19 -17
  187. data/test/unit/shipit_test.rb +44 -42
  188. metadata +139 -137
  189. data/app/controllers/api/base_controller.rb +0 -66
  190. data/app/controllers/api/deploys_controller.rb +0 -15
  191. data/app/controllers/api/hooks_controller.rb +0 -51
  192. data/app/controllers/api/locks_controller.rb +0 -30
  193. data/app/controllers/api/outputs_controller.rb +0 -15
  194. data/app/controllers/api/stacks_controller.rb +0 -19
  195. data/app/controllers/api/tasks_controller.rb +0 -18
  196. data/app/controllers/commit_checks_controller.rb +0 -24
  197. data/app/controllers/concerns/api/cacheable.rb +0 -11
  198. data/app/controllers/concerns/api/rendering.rb +0 -23
  199. data/app/controllers/concerns/pagination.rb +0 -25
  200. data/app/controllers/deploys_controller.rb +0 -45
  201. data/app/controllers/github_authentication_controller.rb +0 -25
  202. data/app/controllers/rollbacks_controller.rb +0 -24
  203. data/app/controllers/shipit_controller.rb +0 -54
  204. data/app/controllers/stacks_controller.rb +0 -79
  205. data/app/controllers/status_controller.rb +0 -5
  206. data/app/controllers/tasks_controller.rb +0 -46
  207. data/app/controllers/webhooks_controller.rb +0 -99
  208. data/app/helpers/chunks_helper.rb +0 -6
  209. data/app/helpers/deploys_helper.rb +0 -26
  210. data/app/helpers/github_url_helper.rb +0 -46
  211. data/app/helpers/shipit_helper.rb +0 -62
  212. data/app/helpers/stacks_helper.rb +0 -76
  213. data/app/helpers/tasks_helper.rb +0 -9
  214. data/app/jobs/background_job.rb +0 -22
  215. data/app/jobs/background_job/unique.rb +0 -26
  216. data/app/jobs/cache_deploy_spec_job.rb +0 -10
  217. data/app/jobs/chunk_rollup_job.rb +0 -19
  218. data/app/jobs/clear_git_cache_job.rb +0 -7
  219. data/app/jobs/deliver_hook_job.rb +0 -7
  220. data/app/jobs/destroy_stack_job.rb +0 -7
  221. data/app/jobs/emit_event_job.rb +0 -8
  222. data/app/jobs/fetch_commit_stats_job.rb +0 -7
  223. data/app/jobs/fetch_deployed_revision_job.rb +0 -21
  224. data/app/jobs/git_mirror_update_job.rb +0 -10
  225. data/app/jobs/github_sync_job.rb +0 -53
  226. data/app/jobs/perform_commit_checks_job.rb +0 -5
  227. data/app/jobs/perform_task_job.rb +0 -55
  228. data/app/jobs/refresh_github_user_job.rb +0 -7
  229. data/app/jobs/refresh_statuses_job.rb +0 -12
  230. data/app/jobs/setup_github_hook_job.rb +0 -9
  231. data/app/models/anonymous_user.rb +0 -41
  232. data/app/models/api_client.rb +0 -42
  233. data/app/models/commit.rb +0 -207
  234. data/app/models/commit_checks.rb +0 -88
  235. data/app/models/delivery.rb +0 -45
  236. data/app/models/deploy.rb +0 -151
  237. data/app/models/deploy_spec.rb +0 -148
  238. data/app/models/deploy_spec/bundler_discovery.rb +0 -59
  239. data/app/models/deploy_spec/capistrano_discovery.rb +0 -27
  240. data/app/models/deploy_spec/file_system.rb +0 -62
  241. data/app/models/deploy_spec/pypi_discovery.rb +0 -32
  242. data/app/models/deploy_spec/rubygems_discovery.rb +0 -32
  243. data/app/models/github_hook.rb +0 -144
  244. data/app/models/hook.rb +0 -84
  245. data/app/models/membership.rb +0 -6
  246. data/app/models/missing_status.rb +0 -18
  247. data/app/models/output_chunk.rb +0 -9
  248. data/app/models/rollback.rb +0 -29
  249. data/app/models/stack.rb +0 -306
  250. data/app/models/status.rb +0 -42
  251. data/app/models/status_group.rb +0 -33
  252. data/app/models/task.rb +0 -197
  253. data/app/models/task_definition.rb +0 -36
  254. data/app/models/team.rb +0 -67
  255. data/app/models/unknown_status.rb +0 -41
  256. data/app/models/user.rb +0 -81
  257. data/app/models/variable_definition.rb +0 -19
  258. data/app/serializers/anonymous_user_serializer.rb +0 -2
  259. data/app/serializers/commit_serializer.rb +0 -6
  260. data/app/serializers/concerns/conditional_attributes.rb +0 -20
  261. data/app/serializers/deploy_serializer.rb +0 -13
  262. data/app/serializers/hook_serializer.rb +0 -10
  263. data/app/serializers/rollback_serializer.rb +0 -5
  264. data/app/serializers/short_commit_serializer.rb +0 -7
  265. data/app/serializers/stack_serializer.rb +0 -31
  266. data/app/serializers/tail_task_serializer.rb +0 -37
  267. data/app/serializers/task_serializer.rb +0 -28
  268. data/app/serializers/user_serializer.rb +0 -3
  269. data/lib/command.rb +0 -169
  270. data/lib/commands.rb +0 -23
  271. data/lib/deploy_commands.rb +0 -19
  272. data/lib/rollback_commands.rb +0 -5
  273. data/lib/stack_commands.rb +0 -58
  274. data/lib/task_commands.rb +0 -66
@@ -1,26 +1,28 @@
1
1
  require 'test_helper'
2
2
 
3
- class GithubUrlHelperTest < ActiveSupport::TestCase
4
- include GithubUrlHelper
3
+ module Shipit
4
+ class GithubUrlHelperTest < ActiveSupport::TestCase
5
+ include Shipit::GithubUrlHelper
5
6
 
6
- test "#github_user_url returns a user url" do
7
- assert_equal "https://github.com/tobi", github_user_url("tobi")
8
- end
7
+ test "#github_user_url returns a user url" do
8
+ assert_equal "https://github.com/tobi", github_user_url("tobi")
9
+ end
9
10
 
10
- test "#github_repo_url returns a repo url" do
11
- assert_equal "https://github.com/rails/rails", github_repo_url("rails", "rails")
12
- end
11
+ test "#github_repo_url returns a repo url" do
12
+ assert_equal "https://github.com/rails/rails", github_repo_url("rails", "rails")
13
+ end
13
14
 
14
- test "#github_commit_url returns a commit url" do
15
- expected = 'https://github.com/shopify/shipit-engine/commit/6d9278037b872fd9a6690523e411ecb3aa181355'
16
- assert_equal expected, github_commit_url(commits(:first))
17
- end
15
+ test "#github_commit_url returns a commit url" do
16
+ expected = 'https://github.com/shopify/shipit-engine/commit/6d9278037b872fd9a6690523e411ecb3aa181355'
17
+ assert_equal expected, github_commit_url(shipit_commits(:first))
18
+ end
18
19
 
19
- test "#github_diff_url returns a diff url" do
20
- from_sha = SecureRandom.hex
21
- to_sha = SecureRandom.hex
22
- expected = "https://github.com/rails/rails/compare/#{from_sha}...#{to_sha}"
20
+ test "#github_diff_url returns a diff url" do
21
+ from_sha = SecureRandom.hex
22
+ to_sha = SecureRandom.hex
23
+ expected = "https://github.com/rails/rails/compare/#{from_sha}...#{to_sha}"
23
24
 
24
- assert_equal expected, github_diff_url("rails", "rails", from_sha, to_sha)
25
+ assert_equal expected, github_diff_url("rails", "rails", from_sha, to_sha)
26
+ end
25
27
  end
26
28
  end
@@ -1,46 +1,48 @@
1
1
  require 'test_helper'
2
2
 
3
- class ShipitTest < ActiveSupport::TestCase
4
- setup do
5
- Shipit.instance_variables.each(&Shipit.method(:remove_instance_variable))
6
- end
7
-
8
- test ".github_domain defaults to github.com" do
9
- assert_equal 'github.com', Shipit.github_domain
10
- end
11
-
12
- test ".github_domain can be overriden" do
13
- Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
14
- assert_equal 'github.example.com', Shipit.github_domain
15
- end
16
-
17
- test ".github_enterprise? returns false if github_domain is not overriden" do
18
- refute Shipit.github_enterprise?
19
- end
20
-
21
- test ".github_enterprise? returns true if github_domain is overriden" do
22
- Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
23
- assert Shipit.github_enterprise?
24
- end
25
-
26
- test ".github_url returns the HTTPS url to the github installation" do
27
- Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
28
- assert_equal 'https://github.example.com', Shipit.github_url
29
- assert_equal 'https://github.example.com/foo/bar', Shipit.github_url('/foo/bar')
30
- assert_equal 'https://github.example.com/foo/bar', Shipit.github_url('foo/bar')
31
- end
32
-
33
- test ".github_api_endpoint returns nil if github_domain is not overriden" do
34
- assert_nil Shipit.github_api_endpoint
35
- end
36
-
37
- test ".github_api_endpoint returns Enterprise endpoint if github_domain is overriden" do
38
- Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
39
- assert_equal 'https://github.example.com/api/v3/', Shipit.github_api_endpoint
40
- end
41
-
42
- test ".github_oauth_options returns an empty hash if not enterprise" do
43
- refute Shipit.github_enterprise?
44
- assert_equal({}, Shipit.github_oauth_options)
3
+ module Shipit
4
+ class ShipitTest < ActiveSupport::TestCase
5
+ setup do
6
+ Shipit.instance_variables.each(&Shipit.method(:remove_instance_variable))
7
+ end
8
+
9
+ test ".github_domain defaults to github.com" do
10
+ assert_equal 'github.com', Shipit.github_domain
11
+ end
12
+
13
+ test ".github_domain can be overriden" do
14
+ Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
15
+ assert_equal 'github.example.com', Shipit.github_domain
16
+ end
17
+
18
+ test ".github_enterprise? returns false if github_domain is not overriden" do
19
+ refute Shipit.github_enterprise?
20
+ end
21
+
22
+ test ".github_enterprise? returns true if github_domain is overriden" do
23
+ Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
24
+ assert Shipit.github_enterprise?
25
+ end
26
+
27
+ test ".github_url returns the HTTPS url to the github installation" do
28
+ Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
29
+ assert_equal 'https://github.example.com', Shipit.github_url
30
+ assert_equal 'https://github.example.com/foo/bar', Shipit.github_url('/foo/bar')
31
+ assert_equal 'https://github.example.com/foo/bar', Shipit.github_url('foo/bar')
32
+ end
33
+
34
+ test ".github_api_endpoint returns nil if github_domain is not overriden" do
35
+ assert_nil Shipit.github_api_endpoint
36
+ end
37
+
38
+ test ".github_api_endpoint returns Enterprise endpoint if github_domain is overriden" do
39
+ Rails.application.secrets.stubs(:github_domain).returns('github.example.com')
40
+ assert_equal 'https://github.example.com/api/v3/', Shipit.github_api_endpoint
41
+ end
42
+
43
+ test ".github_oauth_options returns an empty hash if not enterprise" do
44
+ refute Shipit.github_enterprise?
45
+ assert_equal({}, Shipit.github_oauth_options)
46
+ end
45
47
  end
46
48
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shipit-engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean Boussier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-18 00:00:00.000000000 Z
11
+ date: 2016-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -406,115 +406,115 @@ files:
406
406
  - app/assets/webfonts/CheckoutSymbols-Regular.svg
407
407
  - app/assets/webfonts/CheckoutSymbols-Regular.ttf
408
408
  - app/assets/webfonts/CheckoutSymbols-Regular.woff
409
- - app/controllers/api/base_controller.rb
410
- - app/controllers/api/deploys_controller.rb
411
- - app/controllers/api/hooks_controller.rb
412
- - app/controllers/api/locks_controller.rb
413
- - app/controllers/api/outputs_controller.rb
414
- - app/controllers/api/stacks_controller.rb
415
- - app/controllers/api/tasks_controller.rb
416
- - app/controllers/commit_checks_controller.rb
417
- - app/controllers/concerns/api/cacheable.rb
418
- - app/controllers/concerns/api/paginable.rb
419
- - app/controllers/concerns/api/rendering.rb
420
- - app/controllers/concerns/pagination.rb
421
- - app/controllers/deploys_controller.rb
422
- - app/controllers/github_authentication_controller.rb
423
- - app/controllers/rollbacks_controller.rb
424
- - app/controllers/shipit_controller.rb
425
- - app/controllers/stacks_controller.rb
426
- - app/controllers/status_controller.rb
427
- - app/controllers/tasks_controller.rb
428
- - app/controllers/webhooks_controller.rb
429
- - app/helpers/chunks_helper.rb
430
- - app/helpers/deploys_helper.rb
431
- - app/helpers/github_url_helper.rb
432
- - app/helpers/shipit_helper.rb
433
- - app/helpers/stacks_helper.rb
434
- - app/helpers/tasks_helper.rb
435
- - app/jobs/background_job.rb
436
- - app/jobs/background_job/unique.rb
437
- - app/jobs/cache_deploy_spec_job.rb
438
- - app/jobs/chunk_rollup_job.rb
439
- - app/jobs/clear_git_cache_job.rb
440
- - app/jobs/deliver_hook_job.rb
441
- - app/jobs/destroy_stack_job.rb
442
- - app/jobs/emit_event_job.rb
443
- - app/jobs/fetch_commit_stats_job.rb
444
- - app/jobs/fetch_deployed_revision_job.rb
445
- - app/jobs/git_mirror_update_job.rb
446
- - app/jobs/github_sync_job.rb
447
- - app/jobs/perform_commit_checks_job.rb
448
- - app/jobs/perform_task_job.rb
449
- - app/jobs/refresh_github_user_job.rb
450
- - app/jobs/refresh_statuses_job.rb
451
- - app/jobs/setup_github_hook_job.rb
452
- - app/models/anonymous_user.rb
453
- - app/models/api_client.rb
454
- - app/models/commit.rb
455
- - app/models/commit_checks.rb
456
- - app/models/delivery.rb
457
- - app/models/deploy.rb
458
- - app/models/deploy_spec.rb
459
- - app/models/deploy_spec/bundler_discovery.rb
460
- - app/models/deploy_spec/capistrano_discovery.rb
461
- - app/models/deploy_spec/file_system.rb
462
- - app/models/deploy_spec/pypi_discovery.rb
463
- - app/models/deploy_spec/rubygems_discovery.rb
464
- - app/models/github_hook.rb
465
- - app/models/hook.rb
466
- - app/models/membership.rb
467
- - app/models/missing_status.rb
468
- - app/models/output_chunk.rb
469
- - app/models/rollback.rb
470
- - app/models/stack.rb
471
- - app/models/status.rb
472
- - app/models/status_group.rb
473
- - app/models/task.rb
474
- - app/models/task_definition.rb
475
- - app/models/team.rb
476
- - app/models/unknown_status.rb
477
- - app/models/user.rb
478
- - app/models/variable_definition.rb
479
- - app/serializers/anonymous_user_serializer.rb
480
- - app/serializers/commit_serializer.rb
481
- - app/serializers/concerns/conditional_attributes.rb
482
- - app/serializers/deploy_serializer.rb
483
- - app/serializers/hook_serializer.rb
484
- - app/serializers/rollback_serializer.rb
485
- - app/serializers/short_commit_serializer.rb
486
- - app/serializers/stack_serializer.rb
487
- - app/serializers/tail_task_serializer.rb
488
- - app/serializers/task_serializer.rb
489
- - app/serializers/user_serializer.rb
409
+ - app/controllers/concerns/shipit/api/cacheable.rb
410
+ - app/controllers/concerns/shipit/api/paginable.rb
411
+ - app/controllers/concerns/shipit/api/rendering.rb
412
+ - app/controllers/concerns/shipit/pagination.rb
413
+ - app/controllers/shipit/api/base_controller.rb
414
+ - app/controllers/shipit/api/deploys_controller.rb
415
+ - app/controllers/shipit/api/hooks_controller.rb
416
+ - app/controllers/shipit/api/locks_controller.rb
417
+ - app/controllers/shipit/api/outputs_controller.rb
418
+ - app/controllers/shipit/api/stacks_controller.rb
419
+ - app/controllers/shipit/api/tasks_controller.rb
420
+ - app/controllers/shipit/commit_checks_controller.rb
421
+ - app/controllers/shipit/deploys_controller.rb
422
+ - app/controllers/shipit/github_authentication_controller.rb
423
+ - app/controllers/shipit/rollbacks_controller.rb
424
+ - app/controllers/shipit/shipit_controller.rb
425
+ - app/controllers/shipit/stacks_controller.rb
426
+ - app/controllers/shipit/status_controller.rb
427
+ - app/controllers/shipit/tasks_controller.rb
428
+ - app/controllers/shipit/webhooks_controller.rb
429
+ - app/helpers/shipit/chunks_helper.rb
430
+ - app/helpers/shipit/deploys_helper.rb
431
+ - app/helpers/shipit/github_url_helper.rb
432
+ - app/helpers/shipit/shipit_helper.rb
433
+ - app/helpers/shipit/stacks_helper.rb
434
+ - app/helpers/shipit/tasks_helper.rb
435
+ - app/jobs/shipit/background_job.rb
436
+ - app/jobs/shipit/background_job/unique.rb
437
+ - app/jobs/shipit/cache_deploy_spec_job.rb
438
+ - app/jobs/shipit/chunk_rollup_job.rb
439
+ - app/jobs/shipit/clear_git_cache_job.rb
440
+ - app/jobs/shipit/deliver_hook_job.rb
441
+ - app/jobs/shipit/destroy_stack_job.rb
442
+ - app/jobs/shipit/emit_event_job.rb
443
+ - app/jobs/shipit/fetch_commit_stats_job.rb
444
+ - app/jobs/shipit/fetch_deployed_revision_job.rb
445
+ - app/jobs/shipit/git_mirror_update_job.rb
446
+ - app/jobs/shipit/github_sync_job.rb
447
+ - app/jobs/shipit/perform_commit_checks_job.rb
448
+ - app/jobs/shipit/perform_task_job.rb
449
+ - app/jobs/shipit/refresh_github_user_job.rb
450
+ - app/jobs/shipit/refresh_statuses_job.rb
451
+ - app/jobs/shipit/setup_github_hook_job.rb
452
+ - app/models/shipit/anonymous_user.rb
453
+ - app/models/shipit/api_client.rb
454
+ - app/models/shipit/commit.rb
455
+ - app/models/shipit/commit_checks.rb
456
+ - app/models/shipit/delivery.rb
457
+ - app/models/shipit/deploy.rb
458
+ - app/models/shipit/deploy_spec.rb
459
+ - app/models/shipit/deploy_spec/bundler_discovery.rb
460
+ - app/models/shipit/deploy_spec/capistrano_discovery.rb
461
+ - app/models/shipit/deploy_spec/file_system.rb
462
+ - app/models/shipit/deploy_spec/pypi_discovery.rb
463
+ - app/models/shipit/deploy_spec/rubygems_discovery.rb
464
+ - app/models/shipit/github_hook.rb
465
+ - app/models/shipit/hook.rb
466
+ - app/models/shipit/membership.rb
467
+ - app/models/shipit/missing_status.rb
468
+ - app/models/shipit/output_chunk.rb
469
+ - app/models/shipit/rollback.rb
470
+ - app/models/shipit/stack.rb
471
+ - app/models/shipit/status.rb
472
+ - app/models/shipit/status_group.rb
473
+ - app/models/shipit/task.rb
474
+ - app/models/shipit/task_definition.rb
475
+ - app/models/shipit/team.rb
476
+ - app/models/shipit/unknown_status.rb
477
+ - app/models/shipit/user.rb
478
+ - app/models/shipit/variable_definition.rb
479
+ - app/serializers/concerns/shipit/conditional_attributes.rb
480
+ - app/serializers/shipit/anonymous_user_serializer.rb
481
+ - app/serializers/shipit/commit_serializer.rb
482
+ - app/serializers/shipit/deploy_serializer.rb
483
+ - app/serializers/shipit/hook_serializer.rb
484
+ - app/serializers/shipit/rollback_serializer.rb
485
+ - app/serializers/shipit/short_commit_serializer.rb
486
+ - app/serializers/shipit/stack_serializer.rb
487
+ - app/serializers/shipit/tail_task_serializer.rb
488
+ - app/serializers/shipit/task_serializer.rb
489
+ - app/serializers/shipit/user_serializer.rb
490
490
  - app/validators/ascii_only_validator.rb
491
491
  - app/validators/subset_validator.rb
492
- - app/views/commits/_commit.html.erb
493
- - app/views/commits/_commit_author.html.erb
494
- - app/views/deploys/_checklist.html.erb
495
- - app/views/deploys/_checks.html.erb
496
- - app/views/deploys/_concurrent_deploy_warning.html.erb
497
- - app/views/deploys/_deploy.html.erb
498
- - app/views/deploys/_monitoring.html.erb
499
- - app/views/deploys/_summary.html.erb
500
- - app/views/deploys/new.html.erb
501
- - app/views/deploys/rollback.html.erb
502
- - app/views/deploys/show.html.erb
503
- - app/views/github_authentication/failed.html.erb
504
492
  - app/views/layouts/shipit.html.erb
493
+ - app/views/shipit/commits/_commit.html.erb
494
+ - app/views/shipit/commits/_commit_author.html.erb
495
+ - app/views/shipit/deploys/_checklist.html.erb
496
+ - app/views/shipit/deploys/_checks.html.erb
497
+ - app/views/shipit/deploys/_concurrent_deploy_warning.html.erb
498
+ - app/views/shipit/deploys/_deploy.html.erb
499
+ - app/views/shipit/deploys/_monitoring.html.erb
500
+ - app/views/shipit/deploys/_summary.html.erb
501
+ - app/views/shipit/deploys/new.html.erb
502
+ - app/views/shipit/deploys/rollback.html.erb
503
+ - app/views/shipit/deploys/show.html.erb
504
+ - app/views/shipit/github_authentication/failed.html.erb
505
505
  - app/views/shipit/missing_settings.html.erb
506
- - app/views/stacks/_header.html.erb
507
- - app/views/stacks/index.html.erb
508
- - app/views/stacks/new.html.erb
509
- - app/views/stacks/settings.html.erb
510
- - app/views/stacks/show.html.erb
511
- - app/views/statuses/_group.html.erb
512
- - app/views/statuses/_status.html.erb
513
- - app/views/tasks/_task.html.erb
514
- - app/views/tasks/_task_output.html.erb
515
- - app/views/tasks/index.html.erb
516
- - app/views/tasks/new.html.erb
517
- - app/views/tasks/show.html.erb
506
+ - app/views/shipit/stacks/_header.html.erb
507
+ - app/views/shipit/stacks/index.html.erb
508
+ - app/views/shipit/stacks/new.html.erb
509
+ - app/views/shipit/stacks/settings.html.erb
510
+ - app/views/shipit/stacks/show.html.erb
511
+ - app/views/shipit/statuses/_group.html.erb
512
+ - app/views/shipit/statuses/_status.html.erb
513
+ - app/views/shipit/tasks/_task.html.erb
514
+ - app/views/shipit/tasks/_task_output.html.erb
515
+ - app/views/shipit/tasks/index.html.erb
516
+ - app/views/shipit/tasks/new.html.erb
517
+ - app/views/shipit/tasks/show.html.erb
518
518
  - config/locales/en.yml
519
519
  - config/routes.rb
520
520
  - db/migrate/20140226233935_create_baseline.rb
@@ -529,20 +529,24 @@ files:
529
529
  - db/migrate/20151112152112_reduce_tasks_type_size.rb
530
530
  - db/migrate/20151112152113_reduce_tasks_stats_size.rb
531
531
  - db/migrate/20151113151323_improve_indexes_on_tasks.rb
532
+ - db/migrate/20160104151742_increase_tasks_type_size_back.rb
533
+ - db/migrate/20160104151833_convert_sti_columns.rb
532
534
  - db/schema.rb
533
- - lib/command.rb
534
- - lib/commands.rb
535
- - lib/deploy_commands.rb
536
- - lib/rollback_commands.rb
537
535
  - lib/shipit-engine.rb
538
536
  - lib/shipit.rb
537
+ - lib/shipit/command.rb
538
+ - lib/shipit/commands.rb
539
539
  - lib/shipit/csv_serializer.rb
540
+ - lib/shipit/deploy_commands.rb
540
541
  - lib/shipit/engine.rb
541
542
  - lib/shipit/first_parent_commits_iterator.rb
542
543
  - lib/shipit/null_serializer.rb
543
544
  - lib/shipit/octokit_iterator.rb
544
545
  - lib/shipit/paginator.rb
546
+ - lib/shipit/rollback_commands.rb
545
547
  - lib/shipit/simple_message_verifier.rb
548
+ - lib/shipit/stack_commands.rb
549
+ - lib/shipit/task_commands.rb
546
550
  - lib/shipit/version.rb
547
551
  - lib/snippets/assert-egg-version-tag
548
552
  - lib/snippets/assert-gem-version-tag
@@ -551,8 +555,6 @@ files:
551
555
  - lib/snippets/fetch-gem-version
552
556
  - lib/snippets/fetch-heroku-version
553
557
  - lib/snippets/push-to-heroku
554
- - lib/stack_commands.rb
555
- - lib/task_commands.rb
556
558
  - lib/tasks/cron.rake
557
559
  - lib/tasks/dev.rake
558
560
  - lib/tasks/team.rake
@@ -613,21 +615,21 @@ files:
613
615
  - test/dummy/public/422.html
614
616
  - test/dummy/public/500.html
615
617
  - test/dummy/public/favicon.ico
616
- - test/fixtures/api_clients.yml
617
- - test/fixtures/commits.yml
618
- - test/fixtures/deliveries.yml
619
- - test/fixtures/github_hooks.yml
620
- - test/fixtures/hooks.yml
621
- - test/fixtures/memberships.yml
622
- - test/fixtures/output_chunks.yml
623
618
  - test/fixtures/payloads/push_master.json
624
619
  - test/fixtures/payloads/push_not_master.json
625
620
  - test/fixtures/payloads/status_master.json
626
- - test/fixtures/stacks.yml
627
- - test/fixtures/statuses.yml
628
- - test/fixtures/tasks.yml
629
- - test/fixtures/teams.yml
630
- - test/fixtures/users.yml
621
+ - test/fixtures/shipit/api_clients.yml
622
+ - test/fixtures/shipit/commits.yml
623
+ - test/fixtures/shipit/deliveries.yml
624
+ - test/fixtures/shipit/github_hooks.yml
625
+ - test/fixtures/shipit/hooks.yml
626
+ - test/fixtures/shipit/memberships.yml
627
+ - test/fixtures/shipit/output_chunks.yml
628
+ - test/fixtures/shipit/stacks.yml
629
+ - test/fixtures/shipit/statuses.yml
630
+ - test/fixtures/shipit/tasks.yml
631
+ - test/fixtures/shipit/teams.yml
632
+ - test/fixtures/shipit/users.yml
631
633
  - test/helpers/api_helper.rb
632
634
  - test/helpers/fixture_aliases_helper.rb
633
635
  - test/helpers/json_helper.rb
@@ -753,21 +755,21 @@ test_files:
753
755
  - test/dummy/public/favicon.ico
754
756
  - test/dummy/Rakefile
755
757
  - test/dummy/README.rdoc
756
- - test/fixtures/api_clients.yml
757
- - test/fixtures/commits.yml
758
- - test/fixtures/deliveries.yml
759
- - test/fixtures/github_hooks.yml
760
- - test/fixtures/hooks.yml
761
- - test/fixtures/memberships.yml
762
- - test/fixtures/output_chunks.yml
763
758
  - test/fixtures/payloads/push_master.json
764
759
  - test/fixtures/payloads/push_not_master.json
765
760
  - test/fixtures/payloads/status_master.json
766
- - test/fixtures/stacks.yml
767
- - test/fixtures/statuses.yml
768
- - test/fixtures/tasks.yml
769
- - test/fixtures/teams.yml
770
- - test/fixtures/users.yml
761
+ - test/fixtures/shipit/api_clients.yml
762
+ - test/fixtures/shipit/commits.yml
763
+ - test/fixtures/shipit/deliveries.yml
764
+ - test/fixtures/shipit/github_hooks.yml
765
+ - test/fixtures/shipit/hooks.yml
766
+ - test/fixtures/shipit/memberships.yml
767
+ - test/fixtures/shipit/output_chunks.yml
768
+ - test/fixtures/shipit/stacks.yml
769
+ - test/fixtures/shipit/statuses.yml
770
+ - test/fixtures/shipit/tasks.yml
771
+ - test/fixtures/shipit/teams.yml
772
+ - test/fixtures/shipit/users.yml
771
773
  - test/helpers/api_helper.rb
772
774
  - test/helpers/fixture_aliases_helper.rb
773
775
  - test/helpers/json_helper.rb