I'm unsure to understand what you want.
The idea behind is that the cookbook is idempotent, doing things only if they need to be done.
On each run each resource will ensure the resulting state is the desired state in the cookbook.
There's no "Force" option, as it is the way it works, if a file managed with a template do not match the rendered template it will be replaced.
So the only way would be undoing manually all the changes done in the first run. (or writing a cookbook undoing what is done on the run list.
Re running the chef-client will redo what was done at first time if needed (i.e. someone has changed by hand a configuration somewhere which is managed by chef)
Hope it helps, but still unsure on what you want at all...
Regards
Le 2014-10-15 16:21, Fouts, Chris a écrit :
Sorry, let me ask it differently.
I do the following
1. knife bootstrap a node
2. knife node run_list add <node> “run_list”
3. chef-client on node, which converges the cookbooks
Normally, re-running chef-client on the node again will not do anything since the cookbooks have already run the first time, meaning I’ll just get an “up-to-date” message
My question is, how can I re-run chef-client to make it “act” like I have not done step 3 above the first time?
Chris
From: Nguyen, Dang [mailto:
Sent: Tuesday, October 14, 2014 8:12 PM To:
Subject: [chef] RE: How to force convergence without bootstrapping?
Assuming you've bootstrapped the node already and assigned it a role, you simply run chef client.
-----Original Message----- From: Fouts, Chris
Received: Tuesday, 14 Oct 2014, 5:08PM To:
">
Subject: [chef] How to force convergence without bootstrapping?
Is there a way to “force” my cookbooks to rerun without bootstrapping my nodes?
Chris
|