Merge branch 'fix/sm/33281-activerecord-recordinvalid-when-build-has-nil-protected' into 'master'
Fix 422 error when retry job Closes #33281 See merge request !14082
This commit is contained in:
commit
0a8083c4f1
3 changed files with 11 additions and 2 deletions
|
@ -27,7 +27,6 @@ module Ci
|
||||||
|
|
||||||
validates :coverage, numericality: true, allow_blank: true
|
validates :coverage, numericality: true, allow_blank: true
|
||||||
validates :ref, presence: true
|
validates :ref, presence: true
|
||||||
validates :protected, inclusion: { in: [true, false], unless: :importing? }, on: :create
|
|
||||||
|
|
||||||
scope :unstarted, ->() { where(runner_id: nil) }
|
scope :unstarted, ->() { where(runner_id: nil) }
|
||||||
scope :ignore_failures, ->() { where(allow_failure: false) }
|
scope :ignore_failures, ->() { where(allow_failure: false) }
|
||||||
|
|
|
@ -36,7 +36,6 @@ module Ci
|
||||||
validates :sha, presence: { unless: :importing? }
|
validates :sha, presence: { unless: :importing? }
|
||||||
validates :ref, presence: { unless: :importing? }
|
validates :ref, presence: { unless: :importing? }
|
||||||
validates :status, presence: { unless: :importing? }
|
validates :status, presence: { unless: :importing? }
|
||||||
validates :protected, inclusion: { in: [true, false], unless: :importing? }, on: :create
|
|
||||||
validate :valid_commit_sha, unless: :importing?
|
validate :valid_commit_sha, unless: :importing?
|
||||||
|
|
||||||
after_create :keep_around_commits, unless: :importing?
|
after_create :keep_around_commits, unless: :importing?
|
||||||
|
|
|
@ -52,6 +52,17 @@ describe Ci::RetryBuildService do
|
||||||
expect(new_build.send(attribute)).to eq build.send(attribute)
|
expect(new_build.send(attribute)).to eq build.send(attribute)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'when job has nullified protected' do
|
||||||
|
before do
|
||||||
|
build.update_attribute(:protected, nil)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "clones protected build attribute" do
|
||||||
|
expect(new_build.protected).to be_nil
|
||||||
|
expect(new_build.protected).to eq build.protected
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'reject acessors' do
|
describe 'reject acessors' do
|
||||||
|
|
Loading…
Reference in a new issue