多くの回答と解決された解決策がありますが、何も私のためにはうまくいかないことがわかります。私は何をしようとしていますか? /var/lib/tomcat8/conf/catalina.propertiesファイルにあります。シェフを使用してファイルを編集する
ここで私はこれまでに単純なルビーのやり方やシェフのユーティリティを試してきました。
File.open("/var/lib/tomcat8/conf/catalina.properties", "a+") do |f|
f << "\n"
f << "javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"
end
ruby_block "insert_line" do
block do
file = Chef::Util::FileEdit.new("/var/lib/tomcat8/conf/catalina.properties")
file.insert_line_if_no_match("/javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl/", "javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl")
file.write_file
end
end
file '/var/lib/tomcat8/conf/catalina.properties' do
action :create
owner 'root'
group 'root'
content File.open("/var/lib/tomcat8/conf/catalina.properties", "a+") do |f|
f << "\n"
f << "javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"
end
end
file '/var/lib/tomcat8/conf/catalina.properties' do
action :create
owner 'root'
group 'root'
content File.open("/var/lib/tomcat8/conf/catalina.properties", "a+") do |f|
f << "\n"
f << "javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"
end
end
「テスト」を入れてみましたが、シェフがコードになっていないようです。