cppforlife / bosh-provisioner

Stand-alone BOSH provisioner
7 stars 9 forks source link

ignore_missing_gateway is not a JSON object, why use JSON.dump to read it? #3

Open Gary-Xie opened 9 years ago

Gary-Xie commented 9 years ago

There is a new field name ignore_missing_gateway in bosh/release/jobs/director/templates/director.yml.erb.erb. It is a key-value pair in the manifest file, please refer bosh-lite/templates/bosh_lite_manifest_template.yml in https://github.com/cloudfoundry/bosh-lite/. And in bosh-provisioner the key-value will be read into erb-context.json. It's still key-value pair. So I don't know which makes this mistake. Please help me to figure out. It results when I build a vm with bosh by packer. I met the error below.

[Log] 2015/10/15 03:51:39 ERROR - Error occurred: Provisioning deployment: Starting instance: Updating instance 0: Applying: Compiling templates bosh: Compiling templates: Rendering config/director.yml.erb ERB: Running ruby: Running command: 'ruby /tmp/erb-render.rb /tmp/erb-context.json /opt/bosh-provisioner/tmp/tar-CmdExtractor678637406/templates/director.yml.erb.erb /opt/bosh-provisioner/tmp/instance-templatescompiler-RenderedArchivesCompiler417614915/director/config/director.yml.erb', stdout: '', stderr: '/tmp/erb-render.rb:140:in rescue in render': Error filling in template '/opt/bosh-provisioner/tmp/tar-CmdExtractor678637406/templates/director.yml.erb.erb' for bosh/0 (line 134: #) (RuntimeError) from /tmp/erb-render.rb:126:inrender' from /tmp/erb-render.rb:151:in `

' ': exit status 1 There are 3 possibilities. 1.Bosh makes the mistake. It is not a JSON object. 2.Bosh-lite makes the mistake. It is a JSON object. 3.bosh-provisioner makes the mistake. It should be transfered to a JSON object.

The another field named trusted_certs has the same issue