shipit-engine 0.28.1 → 0.29.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b1e854d10e7f525e0a9af5a02bfb432ae6cd091079a8adae14894fc2e42415f2
4
- data.tar.gz: 250798a87f4662d2a13e01090a31f4fc3bf82df6b206468002ca5098c792d951
3
+ metadata.gz: 842f0db76bf2cd73d310aebd6b3abed371658c76731c383573e4a061de4e64bd
4
+ data.tar.gz: 2c640e960809d4a29d441f0bc20f2724d406f60d4f13573aad9f1b7d234b547e
5
5
  SHA512:
6
- metadata.gz: 8872ae9ba8ed5dcbf9de6dca1d46d40f87d9b870a5927e4b31ab62f794713b9ec030f4b8e13cf344ab2fc588d501e6d35532f13019f70815247a11fdfac0e8c8
7
- data.tar.gz: 146fc5d4fec1d577d5b49bbee57b3dc9d9f391522be6e6f8877dcf80b62438eafa908454439124843ba5034e96afaaae93632b3e61f8ef1211542d297d7a4666
6
+ metadata.gz: faaeb16d6eb385ab64d1035c6d1a08e4d6646482bf4e87bdfe1031edb2955e52a0daa73b1dc5757e6b9253d4c51c3538db7aca388eddc8c20f1b683ee5dcfa67
7
+ data.tar.gz: b31c919542c163a44dd30338acdfe19b61cdd5b3bac87a9b3ed87f57e3d0f0b82602869b681e59b5401d1206f8941b44a4599e4859745a6a1dda772fcd40d2d3
@@ -0,0 +1,12 @@
1
+ module Shipit
2
+ module ActiveModelSerializersPatch
3
+ private
4
+
5
+ def namespace_for_serializer
6
+ # TODO: This is a monkey patch for active_model_serializers 0.9.7.
7
+ # It's really outdated and newer versions aren't really a suitable replacement.
8
+ # We should look into simply getting rid of it.
9
+ @namespace_for_serializer ||= self.class.module_parent unless self.class.module_parent == Object
10
+ end
11
+ end
12
+ end
@@ -9,7 +9,7 @@ module Shipit
9
9
  def index
10
10
  @user_stacks = current_user.stacks_contributed_to
11
11
 
12
- @stacks = Stack.order('(undeployed_commits_count > 0) desc', tasks_count: :desc).to_a
12
+ @stacks = Stack.order(Arel.sql('(undeployed_commits_count > 0) desc'), tasks_count: :desc).to_a
13
13
  end
14
14
 
15
15
  def show
@@ -63,7 +63,9 @@ module Shipit
63
63
  def checkout_repository
64
64
  unless @commands.fetched?(@task.until_commit).tap(&:run).success?
65
65
  @task.acquire_git_cache_lock do
66
- capture! @commands.fetch
66
+ unless @commands.fetched?(@task.until_commit).tap(&:run).success?
67
+ capture! @commands.fetch
68
+ end
67
69
  end
68
70
  end
69
71
  capture_all! @commands.clone
@@ -31,7 +31,7 @@ module Shipit
31
31
 
32
32
  def remove_ruby_version_from_gemfile
33
33
  # Heroku apps often specify a ruby version.
34
- if /darwin/ =~ RUBY_PLATFORM
34
+ if /darwin/i.match?(RUBY_PLATFORM)
35
35
  # OSX is nitpicky about the -i.
36
36
  %q(/usr/bin/sed -i '' '/^ruby\s/d' Gemfile)
37
37
  else
@@ -6,7 +6,7 @@ module Shipit
6
6
 
7
7
  WAITING_STATUSES = %w(fetching pending).freeze
8
8
  QUEUED_STATUSES = %w(pending revalidating).freeze
9
- REJECTION_REASONS = %w(ci_failing merge_conflict requires_rebase).freeze
9
+ REJECTION_REASONS = %w(ci_missing ci_failing merge_conflict requires_rebase).freeze
10
10
  InvalidTransition = Class.new(StandardError)
11
11
  NotReady = Class.new(StandardError)
12
12
 
@@ -149,6 +149,7 @@ module Shipit
149
149
 
150
150
  def reject_unless_mergeable!
151
151
  return reject!('merge_conflict') if merge_conflict?
152
+ return reject!('ci_missing') if any_status_checks_missing?
152
153
  return reject!('ci_failing') if any_status_checks_failed?
153
154
  return reject!('requires_rebase') if stale?
154
155
  false
@@ -190,7 +191,11 @@ module Shipit
190
191
 
191
192
  def any_status_checks_failed?
192
193
  status = StatusChecker.new(head, head.statuses_and_check_runs, stack.cached_deploy_spec)
193
- status.failure? || status.error? || status.missing?
194
+ status.failure? || status.error?
195
+ end
196
+
197
+ def any_status_checks_missing?
198
+ StatusChecker.new(head, head.statuses_and_check_runs, stack.cached_deploy_spec).missing?
194
199
  end
195
200
 
196
201
  def waiting?
@@ -66,7 +66,7 @@ module Shipit
66
66
  after_commit :sync_github, on: :create
67
67
  after_commit :schedule_merges_if_necessary, on: :update
68
68
 
69
- validates :repo_name, uniqueness: {scope: %i(repo_owner environment),
69
+ validates :repo_name, uniqueness: {scope: %i(repo_owner environment), case_sensitive: false,
70
70
  message: 'cannot be used more than once with this environment'}
71
71
  validates :repo_owner, :repo_name, :environment, presence: true, ascii_only: true
72
72
  validates :repo_owner, format: {with: /\A[a-z0-9_\-\.]+\z/}, length: {maximum: REPO_OWNER_MAX_SIZE}
@@ -354,8 +354,8 @@ module Shipit
354
354
 
355
355
  def clear_git_cache!
356
356
  tmp_path = "#{git_path}-#{SecureRandom.hex}"
357
+ return unless File.exist?(git_path)
357
358
  acquire_git_cache_lock do
358
- return unless File.exist?(git_path)
359
359
  File.rename(git_path, tmp_path)
360
360
  end
361
361
  FileUtils.rm_rf(tmp_path)
@@ -149,18 +149,16 @@ module Shipit
149
149
  def read_stream(io)
150
150
  touch_last_output_at
151
151
  loop do
152
- begin
153
152
  yield_control
154
153
  yield io.read_nonblock(MAX_READ)
155
154
  touch_last_output_at
156
- rescue IO::WaitReadable
155
+ rescue IO::WaitReadable
157
156
  if output_timed_out?
158
157
  @timed_out = true
159
158
  raise TimedOut
160
159
  end
161
160
  IO.select([io], nil, nil, 1)
162
161
  retry
163
- end
164
162
  end
165
163
  rescue EOFError
166
164
  end
data/lib/shipit/engine.rb CHANGED
@@ -37,6 +37,10 @@ module Shipit
37
37
  provider(:github, *Shipit.github.oauth_config)
38
38
  end
39
39
  end
40
+
41
+ app.config.after_initialize do
42
+ ActionController::Base.include(Shipit::ActiveModelSerializersPatch)
43
+ end
40
44
  end
41
45
  end
42
46
  end
@@ -125,7 +125,8 @@ module Shipit
125
125
  end
126
126
 
127
127
  def new_client(options = {})
128
- client = Octokit::Client.new(options.reverse_merge(api_endpoint: api_endpoint))
128
+ options.reverse_merge(api_endpoint: api_endpoint) if api_endpoint
129
+ client = Octokit::Client.new(options)
129
130
  client.middleware = faraday_stack
130
131
  client
131
132
  end
@@ -46,7 +46,9 @@ module Shipit
46
46
 
47
47
  if !commit || !fetched?(commit).tap(&:run).success?
48
48
  @stack.acquire_git_cache_lock do
49
- fetch.run!
49
+ unless fetched?(commit).tap(&:run).success?
50
+ fetch.run!
51
+ end
50
52
  end
51
53
  end
52
54
 
@@ -1,3 +1,3 @@
1
1
  module Shipit
2
- VERSION = '0.28.1'.freeze
2
+ VERSION = '0.29.0'.freeze
3
3
  end
@@ -1,7 +1,6 @@
1
1
  namespace :shipit do
2
2
  desc "Deploy from a running instance. "
3
3
  task deploy: :environment do
4
- begin
5
4
  stack = ENV['stack']
6
5
  revision = ENV['revision']
7
6
 
@@ -18,10 +17,9 @@ namespace :shipit do
18
17
  end
19
18
 
20
19
  Shipit::Stack.run_deploy_in_foreground(stack: stack, revision: revision)
21
- rescue ArgumentError
20
+ rescue ArgumentError
22
21
  p "Use this command as follows:"
23
22
  p "bundle exec rake shipit:deploy stack='shopify/shipit/production' revision='$SHA'"
24
23
  raise
25
- end
26
24
  end
27
25
  end
@@ -13,7 +13,7 @@ module Shipit
13
13
 
14
14
  get :show, params: {stack_id: @stack.to_param, task_id: task.id}
15
15
  assert_response :ok
16
- assert_equal 'text/plain', response.content_type
16
+ assert_equal 'text/plain', response.media_type
17
17
  assert_equal task.chunk_output, response.body
18
18
  end
19
19
  end
@@ -19,7 +19,7 @@ module Shipit
19
19
  test "deploys can be observed as raw text" do
20
20
  get :show, params: {stack_id: @stack, id: @deploy.id, format: 'txt'}
21
21
  assert_response :success
22
- assert_equal("text/plain", @response.content_type)
22
+ assert_equal("text/plain", @response.media_type)
23
23
  end
24
24
 
25
25
  test ":new is success" do
@@ -59,7 +59,7 @@ module Shipit
59
59
  test "triggered tasks can be observed as raw text" do
60
60
  get :show, params: {stack_id: @stack, id: @task.id}, format: 'txt'
61
61
  assert_response :success
62
- assert_equal("text/plain", @response.content_type)
62
+ assert_equal("text/plain", @response.media_type)
63
63
  end
64
64
 
65
65
  test ":abort call abort! on the deploy" do
@@ -12,7 +12,7 @@ end
12
12
 
13
13
  module Shipit
14
14
  class Application < Rails::Application
15
- config.load_defaults 5.2
15
+ config.load_defaults 6.0
16
16
  end
17
17
  end
18
18
 
@@ -2,11 +2,11 @@
2
2
  # of editing this file, please use the migrations feature of Active Record to
3
3
  # incrementally modify your database, and then regenerate this schema definition.
4
4
  #
5
- # Note that this schema.rb definition is the authoritative source for your
6
- # database schema. If you need to create the application database on another
7
- # system, you should be using db:schema:load, not running all the migrations
8
- # from scratch. The latter is a flawed and unsustainable approach (the more migrations
9
- # you'll amass, the slower it'll run and the greater likelihood for issues).
5
+ # This file is the source Rails uses to define your schema when running `rails
6
+ # db:schema:load`. When creating a new database, `rails db:schema:load` tends to
7
+ # be faster and is potentially less error prone than running all of your
8
+ # migrations from scratch. Old migrations may fail to apply correctly if those
9
+ # migrations use external dependencies or application code.
10
10
  #
11
11
  # It's strongly recommended that you check this file into your version control system.
12
12
 
@@ -112,8 +112,8 @@ module Shipit
112
112
  message: Faker::Company.catch_phrase,
113
113
  authored_at: Time.now,
114
114
  committed_at: Time.now,
115
- additions: Faker::Number.number(3),
116
- deletions: Faker::Number.number(3),
115
+ additions: Faker::Number.number(digits: 3),
116
+ deletions: Faker::Number.number(digits: 3),
117
117
  )
118
118
 
119
119
  if (i % 4) != 0
@@ -144,19 +144,19 @@ module Shipit
144
144
  end
145
145
 
146
146
  stack.pull_requests.create!(
147
- number: Faker::Number.number(3),
147
+ number: Faker::Number.number(digits: 3),
148
148
  title: Faker::Company.catch_phrase,
149
149
  merge_status: 'pending',
150
150
  merge_requested_at: 5.minute.ago,
151
151
  merge_requested_by: users.sample,
152
- github_id: Faker::Number.number(8),
152
+ github_id: Faker::Number.number(digits: 8),
153
153
  api_url: 'https://api.github.com/repos/shopify/shipit-engine/pulls/62',
154
154
  state: 'open',
155
- branch: "feature-#{Faker::Number.number(3)}",
155
+ branch: "feature-#{Faker::Number.number(digits: 3)}",
156
156
  head_id: nil,
157
157
  mergeable: true,
158
- additions: Faker::Number.number(3),
159
- deletions: Faker::Number.number(3),
158
+ additions: Faker::Number.number(digits: 3),
159
+ deletions: Faker::Number.number(digits: 3),
160
160
  )
161
161
  end
162
162
 
@@ -173,8 +173,8 @@ module Shipit
173
173
  since_commit_id: commits.first.id,
174
174
  until_commit_id: commits.last.id,
175
175
  status: "success",
176
- additions: Faker::Number.number(3),
177
- deletions: Faker::Number.number(3),
176
+ additions: Faker::Number.number(digits: 3),
177
+ deletions: Faker::Number.number(digits: 3),
178
178
  started_at: Random.rand(15.minutes.to_i).seconds.ago,
179
179
  ended_at: Time.now.utc,
180
180
  user: users.sample,
@@ -143,7 +143,7 @@ module Shipit
143
143
 
144
144
  test "updating broadcasts an update event" do
145
145
  expect_event(@stack)
146
- @commit.update_attributes(message: "toto")
146
+ @commit.update(message: "toto")
147
147
  end
148
148
 
149
149
  test "updating state to success triggers new deploy when stack has continuous deployment" do
@@ -50,26 +50,22 @@ module Shipit
50
50
  end
51
51
 
52
52
  test ".emit calls #deliver on internal hooks" do
53
- begin
54
53
  original_receivers = Shipit.internal_hook_receivers
55
54
  FakeReceiver = Module.new
56
55
  FakeReceiver.expects(:deliver).with(:deploy, @stack, 'foo' => 42)
57
56
 
58
57
  Shipit.internal_hook_receivers << FakeReceiver
59
58
  Hook.emit(:deploy, @stack, 'foo' => 42)
60
- ensure
59
+ ensure
61
60
  Shipit.internal_hook_receivers = original_receivers
62
- end
63
61
  end
64
62
 
65
63
  test ".emit calls no internal hooks if there are no internal_hook_receivers" do
66
- begin
67
64
  original_receivers = Shipit.internal_hook_receivers
68
65
  Shipit.internal_hook_receivers = nil
69
66
  Hook.emit(:deploy, @stack, 'foo' => 42)
70
- ensure
67
+ ensure
71
68
  Shipit.internal_hook_receivers = original_receivers
72
- end
73
69
  end
74
70
  end
75
71
  end
@@ -183,23 +183,29 @@ module Shipit
183
183
  refute_predicate @pr, :rejected?
184
184
  end
185
185
 
186
- test "#reject_unless_mergeable! reject the PR if it has a missing CI status" do
186
+ test "#reject_unless_mergeable! reject the PR if it has a missing required CI status" do
187
+ @pr.stack.cached_deploy_spec.stubs(:required_statuses).returns(['ci/circle'])
187
188
  @pr.head.statuses.where(context: 'ci/circle').delete_all
188
189
 
189
- assert_predicate @pr, :all_status_checks_passed?
190
+ refute_predicate @pr, :all_status_checks_passed?
190
191
  refute_predicate @pr, :any_status_checks_failed?
191
- assert_equal false, @pr.reject_unless_mergeable!
192
- refute_predicate @pr, :rejected?
192
+ assert_predicate @pr, :any_status_checks_missing?
193
+ assert_equal true, @pr.reject_unless_mergeable!
194
+ assert_predicate @pr, :rejected?
195
+ assert_equal 'ci_missing', @pr.rejection_reason
193
196
  end
194
197
 
195
198
  test "#reject_unless_mergeable! reject the PR if it has a missing CI status (multi-status)" do
199
+ @pr.stack.cached_deploy_spec.stubs(:required_statuses).returns(['ci/circle'])
196
200
  @pr.head.statuses.where(context: 'ci/circle').delete_all
197
201
  @pr.head.statuses.create!(stack: @pr.stack, state: 'success', context: 'ci/travis')
198
202
 
199
- assert_predicate @pr, :all_status_checks_passed?
203
+ refute_predicate @pr, :all_status_checks_passed?
200
204
  refute_predicate @pr, :any_status_checks_failed?
201
- assert_equal false, @pr.reject_unless_mergeable!
202
- refute_predicate @pr, :rejected?
205
+ assert_predicate @pr, :any_status_checks_missing?
206
+ assert_equal true, @pr.reject_unless_mergeable!
207
+ assert_predicate @pr, :rejected?
208
+ assert_equal 'ci_missing', @pr.rejection_reason
203
209
  end
204
210
 
205
211
  test "#reject_unless_mergeable! rejects the PR if it is stale" do
data/test/test_helper.rb CHANGED
@@ -11,7 +11,7 @@ ActiveRecord::Migrator.migrations_paths = [
11
11
  File.expand_path('../../db/migrate', __FILE__),
12
12
  ]
13
13
  require 'rails/test_help'
14
- require 'mocha/mini_test'
14
+ require 'mocha/minitest'
15
15
  require 'spy/integration'
16
16
 
17
17
  # Load fixtures from the engine
@@ -25,8 +25,12 @@ module Shipit
25
25
  end
26
26
 
27
27
  test "#interpolate_environment_variables fallback to ENV" do
28
- command = Command.new('cap $LANG deploy', env: {'ENVIRONMENT' => 'production'}, chdir: '.')
29
- assert_equal [%(cap #{ENV['LANG']} deploy)], command.interpolated_arguments
28
+ previous = ENV['SHIPIT_TEST']
29
+ ENV['SHIPIT_TEST'] = 'quux'
30
+ command = Command.new('cap $SHIPIT_TEST deploy', env: {'ENVIRONMENT' => 'production'}, chdir: '.')
31
+ assert_equal [%(cap quux deploy)], command.interpolated_arguments
32
+ ensure
33
+ ENV['SHIPIT_TEST'] = previous
30
34
  end
31
35
 
32
36
  test "#timeout is 5 minutes by default" do
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.28.1
4
+ version: 0.29.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: 2019-08-30 00:00:00.000000000 Z
11
+ date: 2019-09-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_model_serializers
@@ -72,42 +72,42 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '4.2'
75
+ version: '5.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '4.2'
82
+ version: '5.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: explicit-parameters
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.3.0
89
+ version: 0.4.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.3.0
96
+ version: 0.4.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: faraday
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.12.2
103
+ version: '0.15'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.12.2
110
+ version: '0.15'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: faraday-http-cache
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 4.12.0
173
+ version: '4.14'
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 4.12.0
180
+ version: '4.14'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: omniauth-github
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -198,28 +198,28 @@ dependencies:
198
198
  requirements:
199
199
  - - "~>"
200
200
  - !ruby/object:Gem::Version
201
- version: 0.1.2
201
+ version: 0.2.0
202
202
  type: :runtime
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
- version: 0.1.2
208
+ version: 0.2.0
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: rails
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - "~>"
214
214
  - !ruby/object:Gem::Version
215
- version: 5.2.1
215
+ version: 6.0.0
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - "~>"
221
221
  - !ruby/object:Gem::Version
222
- version: 5.2.1
222
+ version: 6.0.0
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: rails-timeago
225
225
  requirement: !ruby/object:Gem::Requirement
@@ -268,42 +268,42 @@ dependencies:
268
268
  requirements:
269
269
  - - "~>"
270
270
  - !ruby/object:Gem::Version
271
- version: 1.5.2
271
+ version: 1.6.0
272
272
  type: :runtime
273
273
  prerelease: false
274
274
  version_requirements: !ruby/object:Gem::Requirement
275
275
  requirements:
276
276
  - - "~>"
277
277
  - !ruby/object:Gem::Version
278
- version: 1.5.2
278
+ version: 1.6.0
279
279
  - !ruby/object:Gem::Dependency
280
280
  name: redis-objects
281
281
  requirement: !ruby/object:Gem::Requirement
282
282
  requirements:
283
283
  - - "~>"
284
284
  - !ruby/object:Gem::Version
285
- version: 1.2.1
285
+ version: 1.4.3
286
286
  type: :runtime
287
287
  prerelease: false
288
288
  version_requirements: !ruby/object:Gem::Requirement
289
289
  requirements:
290
290
  - - "~>"
291
291
  - !ruby/object:Gem::Version
292
- version: 1.2.1
292
+ version: 1.4.3
293
293
  - !ruby/object:Gem::Dependency
294
294
  name: responders
295
295
  requirement: !ruby/object:Gem::Requirement
296
296
  requirements:
297
297
  - - "~>"
298
298
  - !ruby/object:Gem::Version
299
- version: 2.4.0
299
+ version: '3.0'
300
300
  type: :runtime
301
301
  prerelease: false
302
302
  version_requirements: !ruby/object:Gem::Requirement
303
303
  requirements:
304
304
  - - "~>"
305
305
  - !ruby/object:Gem::Version
306
- version: 2.4.0
306
+ version: '3.0'
307
307
  - !ruby/object:Gem::Dependency
308
308
  name: safe_yaml
309
309
  requirement: !ruby/object:Gem::Requirement
@@ -366,14 +366,14 @@ dependencies:
366
366
  requirements:
367
367
  - - "~>"
368
368
  - !ruby/object:Gem::Version
369
- version: 0.5.0
369
+ version: 0.6.0
370
370
  type: :runtime
371
371
  prerelease: false
372
372
  version_requirements: !ruby/object:Gem::Requirement
373
373
  requirements:
374
374
  - - "~>"
375
375
  - !ruby/object:Gem::Version
376
- version: 0.5.0
376
+ version: 0.6.0
377
377
  - !ruby/object:Gem::Dependency
378
378
  name: validate_url
379
379
  requirement: !ruby/object:Gem::Requirement
@@ -469,6 +469,7 @@ files:
469
469
  - app/assets/webfonts/CheckoutSymbols-Regular.svg
470
470
  - app/assets/webfonts/CheckoutSymbols-Regular.ttf
471
471
  - app/assets/webfonts/CheckoutSymbols-Regular.woff
472
+ - app/controllers/concerns/shipit/active_model_serializers_patch.rb
472
473
  - app/controllers/concerns/shipit/api/cacheable.rb
473
474
  - app/controllers/concerns/shipit/api/paginable.rb
474
475
  - app/controllers/concerns/shipit/api/rendering.rb
@@ -522,7 +523,7 @@ files:
522
523
  - app/jobs/shipit/fetch_commit_stats_job.rb
523
524
  - app/jobs/shipit/fetch_deployed_revision_job.rb
524
525
  - app/jobs/shipit/github_sync_job.rb
525
- - app/jobs/shipit/mark_deploy_healty_job.rb
526
+ - app/jobs/shipit/mark_deploy_healthy_job.rb
526
527
  - app/jobs/shipit/merge_pull_requests_job.rb
527
528
  - app/jobs/shipit/perform_commit_checks_job.rb
528
529
  - app/jobs/shipit/perform_task_job.rb