Module: Travis::Yaml

Extended by:
Yaml
Included in:
Yaml
Defined in:
lib/travis/yaml.rb,
lib/travis/yaml/nodes.rb,
lib/travis/yaml/matrix.rb,
lib/travis/yaml/parser.rb,
lib/travis/yaml/version.rb,
lib/travis/yaml/nodes/os.rb,
lib/travis/yaml/nodes/env.rb,
lib/travis/yaml/nodes/git.rb,
lib/travis/yaml/nodes/jdk.rb,
lib/travis/yaml/nodes/node.rb,
lib/travis/yaml/nodes/root.rb,
lib/travis/yaml/nodes/ruby.rb,
lib/travis/yaml/nodes/cache.rb,
lib/travis/yaml/nodes/stage.rb,
lib/travis/yaml/parser/ruby.rb,
lib/travis/yaml/nodes/deploy.rb,
lib/travis/yaml/nodes/matrix.rb,
lib/travis/yaml/nodes/scalar.rb,
lib/travis/yaml/parser/dummy.rb,
lib/travis/yaml/parser/psych.rb,
lib/travis/yaml/nodes/mapping.rb,
lib/travis/yaml/nodes/version.rb,
lib/travis/yaml/secure_string.rb,
lib/travis/yaml/nodes/branches.rb,
lib/travis/yaml/nodes/compiler.rb,
lib/travis/yaml/nodes/language.rb,
lib/travis/yaml/nodes/os_entry.rb,
lib/travis/yaml/nodes/sequence.rb,
lib/travis/yaml/nodes/fixed_value.rb,
lib/travis/yaml/nodes/virtual_env.rb,
lib/travis/yaml/nodes/bundler_args.rb,
lib/travis/yaml/nodes/deploy_entry.rb,
lib/travis/yaml/nodes/open_mapping.rb,
lib/travis/yaml/nodes/version_list.rb,
lib/travis/yaml/nodes/notifications.rb,
lib/travis/yaml/nodes/compiler_entry.rb,
lib/travis/yaml/nodes/deploy_conditions.rb,
lib/travis/yaml/nodes/language_specific.rb

Defined Under Namespace

Modules: Nodes, Parser Classes: Matrix, SecureString

Constant Summary collapse

VERSION =
'0.1.0'

Instance Method Summary collapse

Instance Method Details

#matrix(value) ⇒ Object



35
36
37
# File 'lib/travis/yaml.rb', line 35

def matrix(value)
  Matrix.new parse(value)
end

#matrix!(value, file_name = '.travis.yml') ⇒ Object



39
40
41
# File 'lib/travis/yaml.rb', line 39

def matrix!(value, file_name = '.travis.yml')
  Matrix.new parse!(value, file_name)
end

#new {|root| ... } ⇒ Object

Yields:



28
29
30
31
32
33
# File 'lib/travis/yaml.rb', line 28

def new
  root = Nodes::Root.new
  yield root if block_given?
  root.deep_verify
  root
end

#parse(value) ⇒ Object Also known as: load



13
14
15
# File 'lib/travis/yaml.rb', line 13

def parse(value)
  Parser.parse(value)
end

#parse!(value, file_name = '.travis.yml') ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/travis/yaml.rb', line 19

def parse!(value, file_name = '.travis.yml')
  result = parse(value)
  result.nested_warnings.each do |key, message|
    warn key.empty? ? "#{file_name}: #{message}" :
      "#{file_name}: #{key.join(?.)} section - #{message}"
  end
  result
end