2018-11-18 11:00:15 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2017-09-10 17:25:29 +05:30
|
|
|
module BlobViewer
|
|
|
|
class GitlabCiYml < Base
|
|
|
|
include ServerSide
|
|
|
|
include Auxiliary
|
|
|
|
|
|
|
|
self.partial_name = 'gitlab_ci_yml'
|
|
|
|
self.loading_partial_name = 'gitlab_ci_yml_loading'
|
|
|
|
self.file_types = %i(gitlab_ci)
|
|
|
|
self.binary = false
|
|
|
|
|
2019-02-15 15:39:39 +05:30
|
|
|
def validation_message(opts)
|
2017-09-10 17:25:29 +05:30
|
|
|
return @validation_message if defined?(@validation_message)
|
|
|
|
|
|
|
|
prepare!
|
|
|
|
|
2021-03-08 18:12:59 +05:30
|
|
|
@validation_message = Gitlab::Ci::Lint
|
|
|
|
.new(project: opts[:project], current_user: opts[:user], sha: opts[:sha])
|
|
|
|
.validate(blob.data).errors.first
|
2017-09-10 17:25:29 +05:30
|
|
|
end
|
|
|
|
|
2019-02-15 15:39:39 +05:30
|
|
|
def valid?(opts)
|
|
|
|
validation_message(opts).blank?
|
2017-09-10 17:25:29 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|