diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-05-17 15:51:33 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-05-17 15:51:33 +0900 |
commit | 1c636b8080bad4f9ea8fb6992277e421816271ce (patch) | |
tree | a1d562ea97ef2c1829a752906f9ee0ef27cb4682 /app/models/ci/pipeline.rb | |
parent | 82a49d0fea1ace87b5619fbc4ed728f43fdef7bd (diff) | |
parent | 60b14e52963238bb2401004350d963eda1fabef6 (diff) | |
download | gitlab-ce-1c636b8080bad4f9ea8fb6992277e421816271ce.tar.gz |
Merge branch 'master' into per-project-pipeline-iid
Diffstat (limited to 'app/models/ci/pipeline.rb')
-rw-r--r-- | app/models/ci/pipeline.rb | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/app/models/ci/pipeline.rb b/app/models/ci/pipeline.rb index accd0f11a9b..b1412f2bcb2 100644 --- a/app/models/ci/pipeline.rb +++ b/app/models/ci/pipeline.rb @@ -42,12 +42,16 @@ module Ci delegate :id, to: :project, prefix: true delegate :full_path, to: :project, prefix: true - validates :source, exclusion: { in: %w(unknown), unless: :importing? }, on: :create validates :sha, presence: { unless: :importing? } validates :ref, presence: { unless: :importing? } validates :status, presence: { unless: :importing? } validate :valid_commit_sha, unless: :importing? + # Replace validator below with + # `validates :source, presence: { unless: :importing? }, on: :create` + # when removing Gitlab.rails5? code. + validate :valid_source, unless: :importing?, on: :create + after_create :keep_around_commits, unless: :importing? enum source: { @@ -607,5 +611,11 @@ module Ci project.repository.keep_around(self.sha) project.repository.keep_around(self.before_sha) end + + def valid_source + if source.nil? || source == "unknown" + errors.add(:source, "invalid source") + end + end end end |