shipit-engine 0.32.0 → 0.33.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 (176) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/magic-solid.svg +1 -0
  3. data/app/assets/javascripts/shipit/repositories_search.js.coffee +60 -0
  4. data/app/assets/javascripts/shipit/{search.js.coffee → stack_search.js.coffee} +0 -0
  5. data/app/assets/stylesheets/_pages/_repositories.scss +148 -0
  6. data/app/assets/stylesheets/_pages/_stacks.scss +19 -0
  7. data/app/assets/stylesheets/shipit.scss +1 -0
  8. data/app/controllers/shipit/api/{pull_requests_controller.rb → merge_requests_controller.rb} +8 -8
  9. data/app/controllers/shipit/api/stacks_controller.rb +14 -1
  10. data/app/controllers/shipit/deploys_controller.rb +2 -2
  11. data/app/controllers/shipit/merge_requests_controller.rb +31 -0
  12. data/app/controllers/shipit/merge_status_controller.rb +15 -15
  13. data/app/controllers/shipit/repositories_controller.rb +74 -0
  14. data/app/controllers/shipit/tasks_controller.rb +4 -4
  15. data/app/helpers/shipit/chunks_helper.rb +2 -2
  16. data/app/helpers/shipit/github_url_helper.rb +8 -0
  17. data/app/helpers/shipit/stacks_helper.rb +4 -0
  18. data/app/jobs/shipit/create_on_github_job.rb +1 -0
  19. data/app/jobs/shipit/destroy_repository_job.rb +24 -0
  20. data/app/jobs/shipit/destroy_stack_job.rb +2 -2
  21. data/app/jobs/shipit/perform_task_job.rb +4 -98
  22. data/app/jobs/shipit/process_merge_requests_job.rb +32 -0
  23. data/app/jobs/shipit/refresh_merge_request_job.rb +11 -0
  24. data/app/models/shipit/anonymous_user.rb +4 -0
  25. data/app/models/shipit/check_run.rb +2 -2
  26. data/app/models/shipit/command_line_user.rb +4 -0
  27. data/app/models/shipit/commit.rb +11 -11
  28. data/app/models/shipit/commit_checks.rb +1 -0
  29. data/app/models/shipit/deploy.rb +1 -0
  30. data/app/models/shipit/deploy_spec.rb +16 -4
  31. data/app/models/shipit/deploy_spec/file_system.rb +11 -5
  32. data/app/models/shipit/hook.rb +2 -0
  33. data/app/models/shipit/merge_request.rb +302 -0
  34. data/app/models/shipit/provisioning_handler.rb +32 -0
  35. data/app/models/shipit/provisioning_handler/base.rb +30 -0
  36. data/app/models/shipit/provisioning_handler/unregistered_provisioning_handler.rb +35 -0
  37. data/app/models/shipit/pull_request.rb +25 -264
  38. data/app/models/shipit/pull_request_assignment.rb +10 -0
  39. data/app/models/shipit/repository.rb +54 -0
  40. data/app/models/shipit/review_stack.rb +116 -0
  41. data/app/models/shipit/review_stack_provisioning_queue.rb +39 -0
  42. data/app/models/shipit/stack.rb +22 -8
  43. data/app/models/shipit/task.rb +56 -7
  44. data/app/models/shipit/task_execution_strategy/base.rb +20 -0
  45. data/app/models/shipit/task_execution_strategy/default.rb +110 -0
  46. data/app/models/shipit/user.rb +6 -1
  47. data/app/models/shipit/webhooks.rb +10 -0
  48. data/app/models/shipit/webhooks/handlers/pull_request/assigned_handler.rb +74 -0
  49. data/app/models/shipit/webhooks/handlers/pull_request/closed_handler.rb +68 -0
  50. data/app/models/shipit/webhooks/handlers/pull_request/edited_handler.rb +74 -0
  51. data/app/models/shipit/webhooks/handlers/pull_request/label_capturing_handler.rb +127 -0
  52. data/app/models/shipit/webhooks/handlers/pull_request/labeled_handler.rb +106 -0
  53. data/app/models/shipit/webhooks/handlers/pull_request/opened_handler.rb +83 -0
  54. data/app/models/shipit/webhooks/handlers/pull_request/reopened_handler.rb +88 -0
  55. data/app/models/shipit/webhooks/handlers/pull_request/review_stack_adapter.rb +103 -0
  56. data/app/models/shipit/webhooks/handlers/pull_request/unlabeled_handler.rb +107 -0
  57. data/app/serializers/shipit/deploy_serializer.rb +6 -0
  58. data/app/serializers/shipit/merge_request_serializer.rb +21 -0
  59. data/app/serializers/shipit/pull_request_serializer.rb +5 -8
  60. data/app/serializers/shipit/review_stack_serializer.rb +7 -0
  61. data/app/serializers/shipit/stack_serializer.rb +7 -6
  62. data/app/serializers/shipit/tail_task_serializer.rb +10 -2
  63. data/app/serializers/shipit/task_serializer.rb +1 -1
  64. data/app/views/shipit/merge_requests/_merge_request.html.erb +29 -0
  65. data/app/views/shipit/{pull_requests → merge_requests}/index.html.erb +2 -2
  66. data/app/views/shipit/merge_requests/merge_requests/_pull_request.html.erb +29 -0
  67. data/app/views/shipit/merge_requests/merge_requests/index.html.erb +20 -0
  68. data/app/views/shipit/merge_status/_merge_queue_button.html.erb +3 -3
  69. data/app/views/shipit/merge_status/backlogged.html.erb +1 -1
  70. data/app/views/shipit/merge_status/failure.html.erb +1 -1
  71. data/app/views/shipit/merge_status/locked.html.erb +1 -1
  72. data/app/views/shipit/merge_status/success.html.erb +2 -2
  73. data/app/views/shipit/repositories/_header.html.erb +19 -0
  74. data/app/views/shipit/repositories/index.html.erb +31 -0
  75. data/app/views/shipit/repositories/new.html.erb +23 -0
  76. data/app/views/shipit/repositories/settings.html.erb +53 -0
  77. data/app/views/shipit/repositories/show.html.erb +30 -0
  78. data/app/views/shipit/stacks/_banners.html.erb +13 -0
  79. data/app/views/shipit/stacks/_header.html.erb +5 -2
  80. data/app/views/shipit/stacks/_stack.html.erb +8 -0
  81. data/app/views/shipit/stacks/index.html.erb +2 -1
  82. data/app/views/shipit/stacks/settings.html.erb +5 -5
  83. data/app/views/shipit/stacks/show.html.erb +1 -1
  84. data/app/views/shipit/tasks/_task_output.html.erb +1 -1
  85. data/config/routes.rb +15 -5
  86. data/db/migrate/20200706145406_add_review_stacks.rb +12 -0
  87. data/db/migrate/20200804144639_rename_pull_request_to_merge_request.rb +7 -0
  88. data/db/migrate/20200804161512_rename_commits_pull_request_id_to_merge_request_id.rb +5 -0
  89. data/db/migrate/20200813134712_recreate_shipit_pull_requests.rb +22 -0
  90. data/db/migrate/20200813194056_create_pull_request_assignments.rb +8 -0
  91. data/db/migrate/20201001125502_add_provision_pr_stacks_flag_to_repositories.rb +7 -0
  92. data/db/migrate/20201008145809_add_retry_attempt_to_tasks.rb +5 -0
  93. data/db/migrate/20201008152744_add_max_retries_to_tasks.rb +5 -0
  94. data/lib/shipit.rb +11 -1
  95. data/lib/shipit/github_app.rb +1 -1
  96. data/lib/shipit/review_stack_commands.rb +8 -0
  97. data/lib/shipit/stack_commands.rb +6 -1
  98. data/lib/shipit/task_commands.rb +1 -0
  99. data/lib/shipit/version.rb +1 -1
  100. data/lib/tasks/cron.rake +11 -2
  101. data/test/controllers/api/{pull_requests_controller_test.rb → merge_requests_controller_test.rb} +12 -12
  102. data/test/controllers/api/outputs_controller_test.rb +1 -0
  103. data/test/controllers/api/rollback_controller_test.rb +1 -1
  104. data/test/controllers/api/stacks_controller_test.rb +21 -1
  105. data/test/controllers/{pull_requests_controller_test.rb → merge_requests_controller_test.rb} +6 -6
  106. data/test/controllers/repositories_controller_test.rb +71 -0
  107. data/test/controllers/stacks_controller_test.rb +9 -1
  108. data/test/controllers/tasks_controller_test.rb +14 -2
  109. data/test/controllers/webhooks_controller_test.rb +1 -1
  110. data/test/dummy/config/application.rb +6 -1
  111. data/test/dummy/config/environments/development.rb +0 -3
  112. data/test/dummy/config/environments/test.rb +0 -5
  113. data/test/dummy/db/schema.rb +52 -14
  114. data/test/dummy/db/seeds.rb +1 -1
  115. data/test/fixtures/payloads/check_suite_master.json +2 -2
  116. data/test/fixtures/payloads/invalid_pull_request.json +117 -0
  117. data/test/fixtures/payloads/provision_disabled_pull_request.json +454 -0
  118. data/test/fixtures/payloads/pull_request_assigned.json +480 -0
  119. data/test/fixtures/payloads/pull_request_closed.json +454 -0
  120. data/test/fixtures/payloads/pull_request_labeled.json +461 -0
  121. data/test/fixtures/payloads/pull_request_opened.json +454 -0
  122. data/test/fixtures/payloads/pull_request_reopened.json +454 -0
  123. data/test/fixtures/payloads/pull_request_unlabeled.json +454 -0
  124. data/test/fixtures/payloads/pull_request_with_no_repo.json +454 -0
  125. data/test/fixtures/shipit/commits.yml +15 -2
  126. data/test/fixtures/shipit/merge_requests.yml +141 -0
  127. data/test/fixtures/shipit/pull_request_assignments.yml +3 -0
  128. data/test/fixtures/shipit/pull_requests.yml +10 -131
  129. data/test/fixtures/shipit/repositories.yml +1 -0
  130. data/test/fixtures/shipit/stacks.yml +145 -0
  131. data/test/fixtures/shipit/statuses.yml +9 -0
  132. data/test/fixtures/shipit/tasks.yml +3 -0
  133. data/test/fixtures/shipit/users.yml +7 -0
  134. data/test/helpers/payloads_helper.rb +4 -0
  135. data/test/jobs/chunk_rollup_job_test.rb +15 -1
  136. data/test/jobs/destroy_repository_job_test.rb +27 -0
  137. data/test/jobs/perform_task_job_test.rb +8 -8
  138. data/test/jobs/{merge_pull_requests_job_test.rb → process_merge_requests_job_test.rb} +18 -18
  139. data/test/lib/shipit/deploy_commands_test.rb +16 -0
  140. data/test/lib/shipit/task_commands_test.rb +17 -0
  141. data/test/models/commits_test.rb +22 -13
  142. data/test/models/deploy_spec_test.rb +57 -24
  143. data/test/models/deploys_test.rb +148 -14
  144. data/test/models/{pull_request_test.rb → merge_request_test.rb} +30 -30
  145. data/test/models/pull_request_assignment_test.rb +16 -0
  146. data/test/models/shipit/provisioning_handler/base_test.rb +33 -0
  147. data/test/models/shipit/provisioning_handler/unregistered_provisioning_handler_test.rb +49 -0
  148. data/test/models/shipit/provisioning_handler_test.rb +64 -0
  149. data/test/models/shipit/pull_request_test.rb +52 -0
  150. data/test/models/shipit/repository_test.rb +5 -1
  151. data/test/models/shipit/review_stack_provision_status_test.rb +77 -0
  152. data/test/models/shipit/review_stack_provisioning_queue_test.rb +63 -0
  153. data/test/models/shipit/review_stack_test.rb +59 -0
  154. data/test/models/{stacks_test.rb → shipit/stacks_test.rb} +10 -4
  155. data/test/models/shipit/webhooks/handlers/pull_request/assigned_handler_test.rb +45 -0
  156. data/test/models/shipit/webhooks/handlers/pull_request/closed_handler_test.rb +192 -0
  157. data/test/models/shipit/webhooks/handlers/pull_request/edited_handler_test.rb +47 -0
  158. data/test/models/shipit/webhooks/handlers/pull_request/label_capturing_handler_test.rb +209 -0
  159. data/test/models/shipit/webhooks/handlers/pull_request/labeled_handler_test.rb +332 -0
  160. data/test/models/shipit/webhooks/handlers/pull_request/opened_handler_test.rb +238 -0
  161. data/test/models/shipit/webhooks/handlers/pull_request/reopened_handler_test.rb +282 -0
  162. data/test/models/shipit/webhooks/handlers/pull_request/review_stack_adapter_test.rb +83 -0
  163. data/test/models/shipit/webhooks/handlers/pull_request/unlabeled_handler_test.rb +324 -0
  164. data/test/models/shipit/{wehbooks → webhooks}/handlers_test.rb +0 -0
  165. data/test/models/tasks_test.rb +44 -3
  166. data/test/serializers/shipit/pull_request_serializer_test.rb +29 -0
  167. data/test/unit/command_test.rb +3 -3
  168. data/test/unit/github_url_helper_test.rb +5 -0
  169. data/test/unit/shipit_task_execution_strategy_test.rb +47 -0
  170. metadata +260 -154
  171. data/app/controllers/shipit/pull_requests_controller.rb +0 -31
  172. data/app/jobs/shipit/merge_pull_requests_job.rb +0 -32
  173. data/app/jobs/shipit/refresh_pull_request_job.rb +0 -11
  174. data/app/views/shipit/pull_requests/_pull_request.html.erb +0 -29
  175. data/test/fixtures/shipit/output_chunks.yml +0 -47
  176. data/test/models/output_chunk_test.rb +0 -21
@@ -121,7 +121,7 @@ cyclimse_merged:
121
121
  additions: 420
122
122
  deletions: 342
123
123
  updated_at: <%= 8.days.ago.to_s(:db) %>
124
- pull_request_id: 99
124
+ merge_request_id: 99
125
125
 
126
126
  anonymous:
127
127
  id: 10
@@ -387,4 +387,17 @@ check_deploy_spec_first:
387
387
  additions: 420
388
388
  deletions: 342
389
389
  updated_at: <%= 8.days.ago.to_s(:db) %>
390
-
390
+
391
+ deployable_review_stack_commit:
392
+ id: 801
393
+ sha: ec26c3e57ca3a959ca5aad62de7213c562f8c821
394
+ message: "lets go"
395
+ stack: review_stack
396
+ author: walrus
397
+ committer: walrus
398
+ authored_at: <%= 10.days.ago.to_s(:db) %>
399
+ committed_at: <%= 9.days.ago.to_s(:db) %>
400
+ additions: 42
401
+ deletions: 24
402
+ updated_at: <%= 8.days.ago.to_s(:db) %>
403
+ created_at: <%= 1.day.ago.to_s(:db) %>
@@ -0,0 +1,141 @@
1
+ shipit_fetching:
2
+ stack: shipit
3
+ number: 63
4
+ merge_status: fetching
5
+ merge_requested_at: <%= 1.minute.ago.to_s(:db) %>
6
+ merge_requested_by: walrus
7
+
8
+ shipit_pending:
9
+ stack: shipit
10
+ number: 62
11
+ title: Super duper nice feature
12
+ merge_status: pending
13
+ merge_requested_at: <%= 5.minute.ago.to_s(:db) %>
14
+ revalidated_at: <%= 5.minute.ago.to_s(:db) %>
15
+ merge_requested_by: walrus
16
+ github_id: 42424424242424
17
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/62
18
+ state: open
19
+ branch: feature-62
20
+ head_id: 8
21
+ mergeable: true
22
+ additions: 23
23
+ deletions: 43
24
+
25
+ shipit_pending_unmergeable:
26
+ stack: shipit
27
+ number: 61
28
+ title: Other cool feature
29
+ merge_status: pending
30
+ merge_requested_at: <%= 4.minute.ago.to_s(:db) %>
31
+ revalidated_at: <%= 4.minute.ago.to_s(:db) %>
32
+ merge_requested_by: walrus
33
+ github_id: 43434434343434
34
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/61
35
+ state: open
36
+ branch: feature-61
37
+ head_id: 8
38
+ mergeable: false
39
+ additions: 23
40
+ deletions: 43
41
+
42
+ shipit_pending_not_mergeable_yet:
43
+ stack: shipit
44
+ number: 64
45
+ merge_status: pending
46
+ merge_requested_by: walrus
47
+ merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
48
+ revalidated_at: <%= 3.minute.ago.to_s(:db) %>
49
+ github_id: 45454454545454
50
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/64
51
+ state: open
52
+ branch: feature-64
53
+ head_id: 8
54
+ mergeable: null
55
+ additions: 23
56
+ deletions: 43
57
+
58
+ shipit_pending_closed:
59
+ stack: shipit
60
+ number: 65
61
+ merge_status: pending
62
+ merge_requested_by: walrus
63
+ merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
64
+ revalidated_at: <%= 3.minute.ago.to_s(:db) %>
65
+ github_id: 43243243243243
66
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/65
67
+ state: closed
68
+ branch: feature-64
69
+ head_id: 8
70
+ mergeable: null
71
+ additions: 23
72
+ deletions: 43
73
+
74
+ shipit_pending_merged:
75
+ stack: shipit
76
+ number: 66
77
+ merge_status: pending
78
+ merge_requested_by: walrus
79
+ merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
80
+ merged_at: <%= 2.minute.ago.to_s(:db) %>
81
+ revalidated_at: <%= 3.minute.ago.to_s(:db) %>
82
+ github_id: 43243243243232
83
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/66
84
+ state: closed
85
+ branch: feature-64
86
+ head_id: 8
87
+ mergeable: null
88
+ additions: 23
89
+ deletions: 43
90
+
91
+ shipit_mergeable_pending_ci:
92
+ stack: shipit
93
+ number: 67
94
+ title: Super duper nice feature
95
+ merge_status: pending
96
+ merge_requested_at: <%= 5.minute.ago.to_s(:db) %>
97
+ revalidated_at: <%= 5.minute.ago.to_s(:db) %>
98
+ merge_requested_by: walrus
99
+ github_id: 424244242424241
100
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/67
101
+ state: open
102
+ branch: feature-67
103
+ head_id: 4
104
+ mergeable: true
105
+ additions: 23
106
+ deletions: 43
107
+
108
+ shipit_pending_expired:
109
+ stack: shipit
110
+ number: 68
111
+ title: Noice !
112
+ merge_status: pending
113
+ merge_requested_at: <%= 50.minute.ago.to_s(:db) %>
114
+ revalidated_at: <%= 25.minute.ago.to_s(:db) %>
115
+ merge_requested_by: walrus
116
+ github_id: 48484848484848
117
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/68
118
+ state: open
119
+ branch: feature-68
120
+ head_id: 8
121
+ mergeable: true
122
+ additions: 23
123
+ deletions: 43
124
+
125
+ cyclimse_pending_merged:
126
+ id: 99
127
+ stack: cyclimse
128
+ number: 66
129
+ merge_status: merged
130
+ merge_requested_by: walrus
131
+ merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
132
+ merged_at: <%= 2.minute.ago.to_s(:db) %>
133
+ revalidated_at: <%= 3.minute.ago.to_s(:db) %>
134
+ github_id: 43243243243232
135
+ api_url: https://api.github.com/repos/shopify/cyclimse/pulls/66
136
+ state: closed
137
+ branch: feature-64
138
+ head_id: 8
139
+ mergeable: null
140
+ additions: 23
141
+ deletions: 43
@@ -0,0 +1,3 @@
1
+ walrus_shopify_developers:
2
+ pull_request: shipit_pending
3
+ user: walrus
@@ -1,141 +1,20 @@
1
- shipit_fetching:
2
- stack: shipit
3
- number: 63
4
- merge_status: fetching
5
- merge_requested_at: <%= 1.minute.ago.to_s(:db) %>
6
- merge_requested_by: walrus
7
-
8
- shipit_pending:
1
+ shipit_review:
9
2
  stack: shipit
10
3
  number: 62
11
4
  title: Super duper nice feature
12
- merge_status: pending
13
- merge_requested_at: <%= 5.minute.ago.to_s(:db) %>
14
- revalidated_at: <%= 5.minute.ago.to_s(:db) %>
15
- merge_requested_by: walrus
16
5
  github_id: 42424424242424
17
6
  api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/62
18
7
  state: open
19
- branch: feature-62
20
- head_id: 8
21
- mergeable: true
22
- additions: 23
23
- deletions: 43
24
-
25
- shipit_pending_unmergeable:
26
- stack: shipit
27
- number: 61
28
- title: Other cool feature
29
- merge_status: pending
30
- merge_requested_at: <%= 4.minute.ago.to_s(:db) %>
31
- revalidated_at: <%= 4.minute.ago.to_s(:db) %>
32
- merge_requested_by: walrus
33
- github_id: 43434434343434
34
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/61
35
- state: open
36
- branch: feature-61
37
- head_id: 8
38
- mergeable: false
39
- additions: 23
40
- deletions: 43
41
-
42
- shipit_pending_not_mergeable_yet:
43
- stack: shipit
44
- number: 64
45
- merge_status: pending
46
- merge_requested_by: walrus
47
- merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
48
- revalidated_at: <%= 3.minute.ago.to_s(:db) %>
49
- github_id: 45454454545454
50
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/64
51
- state: open
52
- branch: feature-64
53
- head_id: 8
54
- mergeable: null
55
- additions: 23
56
- deletions: 43
57
-
58
- shipit_pending_closed:
59
- stack: shipit
60
- number: 65
61
- merge_status: pending
62
- merge_requested_by: walrus
63
- merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
64
- revalidated_at: <%= 3.minute.ago.to_s(:db) %>
65
- github_id: 43243243243243
66
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/65
67
- state: closed
68
- branch: feature-64
69
- head_id: 8
70
- mergeable: null
71
- additions: 23
72
- deletions: 43
73
-
74
- shipit_pending_merged:
75
- stack: shipit
76
- number: 66
77
- merge_status: pending
78
- merge_requested_by: walrus
79
- merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
80
- merged_at: <%= 2.minute.ago.to_s(:db) %>
81
- revalidated_at: <%= 3.minute.ago.to_s(:db) %>
82
- github_id: 43243243243232
83
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/66
84
- state: closed
85
- branch: feature-64
86
- head_id: 8
87
- mergeable: null
88
- additions: 23
89
- deletions: 43
90
-
91
- shipit_mergeable_pending_ci:
92
- stack: shipit
93
- number: 67
94
- title: Super duper nice feature
95
- merge_status: pending
96
- merge_requested_at: <%= 5.minute.ago.to_s(:db) %>
97
- revalidated_at: <%= 5.minute.ago.to_s(:db) %>
98
- merge_requested_by: walrus
99
- github_id: 424244242424241
100
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/67
101
- state: open
102
- branch: feature-67
103
- head_id: 4
104
- mergeable: true
105
8
  additions: 23
106
9
  deletions: 43
107
10
 
108
- shipit_pending_expired:
109
- stack: shipit
110
- number: 68
111
- title: Noice !
112
- merge_status: pending
113
- merge_requested_at: <%= 50.minute.ago.to_s(:db) %>
114
- revalidated_at: <%= 25.minute.ago.to_s(:db) %>
115
- merge_requested_by: walrus
116
- github_id: 48484848484848
117
- api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/68
11
+ review_stack_review:
12
+ stack: review_stack
13
+ number: 100
14
+ head_id: 801
15
+ title: Review Stack Pull Request
16
+ github_id: 100110001
17
+ api_url: https://api.github.com/repos/shopify/shipit-engine/pulls/100
118
18
  state: open
119
- branch: feature-68
120
- head_id: 8
121
- mergeable: true
122
- additions: 23
123
- deletions: 43
124
-
125
- cyclimse_pending_merged:
126
- id: 99
127
- stack: cyclimse
128
- number: 66
129
- merge_status: merged
130
- merge_requested_by: walrus
131
- merge_requested_at: <%= 3.minute.ago.to_s(:db) %>
132
- merged_at: <%= 2.minute.ago.to_s(:db) %>
133
- revalidated_at: <%= 3.minute.ago.to_s(:db) %>
134
- github_id: 43243243243232
135
- api_url: https://api.github.com/repos/shopify/cyclimse/pulls/66
136
- state: closed
137
- branch: feature-64
138
- head_id: 8
139
- mergeable: null
140
- additions: 23
141
- deletions: 43
19
+ additions: 1
20
+ deletions: 70
@@ -1,6 +1,7 @@
1
1
  shipit:
2
2
  owner: shopify
3
3
  name: shipit-engine
4
+ review_stacks_enabled: true
4
5
 
5
6
  cyclimse:
6
7
  owner: george
@@ -480,3 +480,148 @@ check_deploy_spec:
480
480
  cached_deploy_spec: "{}"
481
481
  last_deployed_at: <%= 8.days.ago.to_s(:db) %>
482
482
  updated_at: <%= 8.days.ago.to_s(:db) %>
483
+
484
+ review_stack:
485
+ type: Shipit::ReviewStack
486
+ repository: shipit
487
+ environment: "123"
488
+ branch: master
489
+ deploy_url: https://shipit.shopify.com
490
+ ignore_ci: false
491
+ merge_queue_enabled: true
492
+ tasks_count: 8
493
+ undeployed_commits_count: 2
494
+ cached_deploy_spec: |-
495
+ {
496
+ "machine": {
497
+ "environment": {
498
+ }
499
+ },
500
+ "review": {
501
+ "checklist": [
502
+ "foo",
503
+ "bar",
504
+ "baz"
505
+ ],
506
+ "monitoring": [
507
+ {
508
+ "image": "https://example.com/monitor.png",
509
+ "width": 200,
510
+ "height": 300
511
+ }
512
+ ]
513
+ },
514
+ "dependencies": {
515
+ "override": [
516
+
517
+ ]
518
+ },
519
+ "deploy": {
520
+ "override": null,
521
+ "interval": 60,
522
+ "max_commits": 3,
523
+ "variables": [
524
+ {
525
+ "name": "SAFETY_DISABLED",
526
+ "title": "Set to 1 to do dangerous things",
527
+ "default": 0
528
+ }
529
+ ]
530
+ },
531
+ "rollback": {
532
+ "override": [
533
+ "echo 'Rollback!'"
534
+ ]
535
+ },
536
+ "fetch": [
537
+ "echo '42'"
538
+ ],
539
+ "tasks": {
540
+ "restart": {
541
+ "action": "Restart application",
542
+ "description": "Restart app and job servers",
543
+ "variables": [
544
+ {
545
+ "name": "FOO",
546
+ "title": "Set to 0 to foo",
547
+ "default": 1
548
+ },
549
+ {
550
+ "name": "BAR",
551
+ "title": "Set to 1 to bar",
552
+ "default": 0
553
+ },
554
+ {
555
+ "name": "WALRUS",
556
+ "title": "Walrus without a default value"
557
+ }
558
+ ],
559
+ "steps": [
560
+ "cap $ENVIRONMENT deploy:restart"
561
+ ]
562
+ },
563
+ "flush_cache": {
564
+ "action": "Flush cache",
565
+ "description": "Flush the application cache",
566
+ "steps": [
567
+ "cap $ENVIRONMENT cache:flush"
568
+ ],
569
+ "allow_concurrency": true
570
+ }
571
+ },
572
+ "merge": {
573
+ "revalidate_after": 900
574
+ },
575
+ "ci": {
576
+ "hide": [
577
+ "ci/hidden"
578
+ ],
579
+ "allow_failures": [
580
+ "ci/ok_to_fail"
581
+ ]
582
+ }
583
+ }
584
+ last_deployed_at: <%= 8.days.ago.to_s(:db) %>
585
+ updated_at: <%= 8.days.ago.to_s(:db) %>
586
+
587
+ archived_25hours_ago:
588
+ type: Shipit::ReviewStack
589
+ repository: cyclimse
590
+ environment: archived_25hours_ago
591
+ branch: master
592
+ ignore_ci: true
593
+ merge_queue_enabled: true
594
+ tasks_count: 8
595
+ undeployed_commits_count: 2
596
+ cached_deploy_spec: "{}"
597
+ last_deployed_at: <%= 8.days.ago.to_s(:db) %>
598
+ updated_at: <%= 8.days.ago.to_s(:db) %>
599
+ archived_since: <%= 25.hours.ago.to_s(:db) %>
600
+
601
+ archived_6hours_ago:
602
+ type: Shipit::ReviewStack
603
+ repository: cyclimse
604
+ environment: archived_6hours_ago
605
+ branch: master
606
+ ignore_ci: true
607
+ merge_queue_enabled: true
608
+ tasks_count: 8
609
+ undeployed_commits_count: 2
610
+ cached_deploy_spec: "{}"
611
+ last_deployed_at: <%= 8.days.ago.to_s(:db) %>
612
+ updated_at: <%= 8.days.ago.to_s(:db) %>
613
+ archived_since: <%= 6.hours.ago.to_s(:db) %>
614
+
615
+ archived_30minutes_ago:
616
+ type: Shipit::ReviewStack
617
+ repository: cyclimse
618
+ environment: archived_30minutes_ago
619
+ branch: master
620
+ ignore_ci: true
621
+ merge_queue_enabled: true
622
+ tasks_count: 8
623
+ undeployed_commits_count: 2
624
+ cached_deploy_spec: "{}"
625
+ last_deployed_at: <%= 8.days.ago.to_s(:db) %>
626
+ updated_at: <%= 8.days.ago.to_s(:db) %>
627
+ archived_since: <%= 30.minutes.ago.to_s(:db) %>