Module: Gitlab::Ci::Config::Yaml

Defined in:
lib/gitlab/ci/config/yaml.rb,
lib/gitlab/ci/config/yaml/tags.rb,
lib/gitlab/ci/config/yaml/loader.rb,
lib/gitlab/ci/config/yaml/result.rb,
lib/gitlab/ci/config/yaml/context.rb,
lib/gitlab/ci/config/yaml/documents.rb,
lib/gitlab/ci/config/yaml/tags/base.rb,
lib/gitlab/ci/config/yaml/tags/resolver.rb,
lib/gitlab/ci/config/yaml/tags/reference.rb

Defined Under Namespace

Modules: Tags Classes: Context, Documents, Loader, Result

Constant Summary collapse

LoadError =
Class.new(StandardError)

Class Method Summary collapse

Class Method Details

.load!(content, context, inputs = {}, external_context = nil) ⇒ Object



10
11
12
13
14
15
16
17
18
# File 'lib/gitlab/ci/config/yaml.rb', line 10

def load!(content, context, inputs = {}, external_context = nil)
  Loader.new(content, inputs: inputs, context: context,
    external_context: external_context).load.then do |result|
    raise result.error_class, result.error if !result.valid? && result.error_class.present?
    raise LoadError, result.error unless result.valid?

    result.content
  end
end