Hi,
I want to set an attribute in another cookbook otherwise it will fail
during ‘kitchen converge’
Chef::Exceptions::ValidationFailed
----------------------------------
Required argument password is missing!
23:
24: # Set password according to attribute, if set
25: mysqld_password 'root' do
26>> password node['mysqld']['root_password']
I have tried these
node[‘mysqld’][‘root_password’] = ‘password’
and
node.default[‘mysqld’][‘root_password’] = ‘password’
before this line
include_recipe “mysqld”
But apparently it has no effect.
What is the proper way to set a variable of a included cookbook?
On Mon, Feb 16, 2015 at 08:04:07AM +1100, Anthony Kong wrote:
I want to set an attribute in another cookbook otherwise it will fail
during 'kitchen converge'
Chef::Exceptions::ValidationFailed
----------------------------------
Required argument password is missing!
23:
24: # Set password according to attribute, if set
25: mysqld_password 'root' do
26>> password node['mysqld']['root_password']
You should use node#default:
node.default['mysqld']['root_password'] = 'password'
include_recipe 'mysqld'
If that fails, make sure the mysql cookbook is not being included before
somewhere else.
--
Xabier de Zuazo
Try moving setting the attribute into an attribute file.
On 2/15/15 1:04 PM, Anthony Kong wrote:
Hi,
I want to set an attribute in another cookbook otherwise it will fail
during 'kitchen converge'
Chef::Exceptions::ValidationFailed
Required argument password is missing!
23:
24: # Set password according to attribute, if set
25: mysqld_password 'root' do
26>> password node['mysqld']['root_password']
I have tried these
node['mysqld']['root_password'] = 'password'
and
node.default['mysqld']['root_password'] = 'password'
before this line
include_recipe "mysqld"
But apparently it has no effect.
What is the proper way to set a variable of a included cookbook?