diff options
author | Valery Sizov <vsv2711@gmail.com> | 2015-06-16 11:34:52 +0300 |
---|---|---|
committer | Valery Sizov <vsv2711@gmail.com> | 2015-06-16 11:34:52 +0300 |
commit | 20a1f80e599e680454f1ba6634f8227b593357a5 (patch) | |
tree | 4302fd7140f90aa23a0385ac4cd40972b46069d3 /lib | |
parent | 232a64426422d32780e893cdc6938d4def2181b7 (diff) | |
download | gitlab-ci-20a1f80e599e680454f1ba6634f8227b593357a5.tar.gz |
invalid yaml handling
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab_ci_yaml_processor.rb | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/gitlab_ci_yaml_processor.rb b/lib/gitlab_ci_yaml_processor.rb index 9a69ca6..967146d 100644 --- a/lib/gitlab_ci_yaml_processor.rb +++ b/lib/gitlab_ci_yaml_processor.rb @@ -1,7 +1,10 @@ class GitlabCiYamlProcessor - attr_reader :before_script, :skip_refs + attr_reader :before_script, :skip_refs, :errors def initialize(config) + @errors = "" + @valid = true + @config = YAML.load(config).deep_symbolize_keys @before_script = @config[:before_script] || [] @@ -10,6 +13,14 @@ class GitlabCiYamlProcessor @jobs = @config.select{|key, value| value[:type] != "deploy"} @deploy_jobs = @config.select{|key, value| value[:type] == "deploy"} + + rescue Exception => e + @errors = e.message + @valid = false + end + + def valid? + @valid end def deploy_builds_for_ref(ref, tag = false) |