gitlab-org--gitlab-foss/lib/gitlab/ci/project_config/repository.rb

33 lines
659 B
Ruby

# frozen_string_literal: true
module Gitlab
module Ci
class ProjectConfig
class Repository < Source
def content
strong_memoize(:content) do
next unless file_in_repository?
YAML.dump('include' => [{ 'local' => ci_config_path }])
end
end
def source
:repository_source
end
private
def file_in_repository?
return unless project
return unless sha
project.repository.gitlab_ci_yml_for(sha, ci_config_path).present?
rescue GRPC::NotFound, GRPC::Internal
nil
end
end
end
end
end