[chef] Using the value from an XML file in a template variable


Chronological Thread 
  • From: Greg Barker < >
  • To:
  • Subject: [chef] Using the value from an XML file in a template variable
  • Date: Sun, 28 Sep 2014 04:15:48 -0700

I've got an xml file that is generated during a chef run by a third party utility, and I want to retrieve a value from this xml file and use it in a template variable. How should I go about doing that?

I was thinking maybe something like this, but it didn't work. other_thing ends up being a blank value:

template "/some/file.xml" do
    source "source_file.xml.erb
    variables(
        :some_thing = node["some"]["thing"],
        :other_thing = lazy {
            require "rexml/document"
            REXML::XPath.first(REXML::Document.new(File.new("#{node[:some][:dir]}/config.xml")), '//id').text
        }
    )
end



Archive powered by MHonArc 2.6.16.

§