Well duh.

On Thu, Oct 15, 2009 at 8:49 PM, Luke Kanies <[email protected]> wrote:
>
> And associated test, of course.
>
> On Oct 15, 2009, at 7:03 PM, Rein Henrichs wrote:
>
>>
>> Yes. Yes it should.
>>
>> On Thu, Oct 15, 2009 at 4:55 PM, Luke Kanies <[email protected]> wrote:
>>>
>>> On Oct 15, 2009, at 4:53 PM, Rein Henrichs wrote:
>>>
>>>>
>>>> Wrap Puppet::Settings.use in a block that disables noop mode during
>>>> the
>>>> execution of the block and then reenstates its original value
>>>> afterwards. This allows internal puppet catalog operations like ssl
>>>> directory creation to occur even when puppet is run in --noop mode.
>>>> This
>>>> should actually solve a broader class of related bugs.
>>>>
>>>> Signed-off-by: Rein Henrichs <[email protected]>
>>>> ---
>>>> lib/puppet/util/settings.rb           |    9 ++++++++-
>>>> spec/integration/bin/puppetmasterd.rb |   26 ++++++++++++++++++++++
>>>> ++
>>>> ++
>>>> 2 files changed, 34 insertions(+), 1 deletions(-)
>>>>
>>>> diff --git a/lib/puppet/util/settings.rb b/lib/puppet/util/
>>>> settings.rb
>>>> index 3e3bc7f..fb3709e 100644
>>>> --- a/lib/puppet/util/settings.rb
>>>> +++ b/lib/puppet/util/settings.rb
>>>> @@ -157,6 +157,13 @@ class Puppet::Util::Settings
>>>>         set_value(str, value, :cli)
>>>>     end
>>>>
>>>> +    def without_noop
>>>> +        old_noop = value(:noop,:cli)
>>>> +        set_value(:noop, false, :cli)
>>>> +        yield
>>>> +        set_value(:noop, old_noop, :cli)
>>>
>>> Shouldn't this second 'set_value' be in an 'ensure' block?
>>>
>>>> +    end
>>>> +
>>>>     def include?(name)
>>>>         name = name.intern if name.is_a? String
>>>>         @config.include?(name)
>>>> @@ -632,7 +639,7 @@ Generated on #{Time.now}.
>>>>                 return
>>>>             end
>>>>
>>>> -            begin
>>>> +            without_noop do
>>>>                 catalog.host_config = false
>>>>                 catalog.apply do |transaction|
>>>>                     if transaction.any_failed?
>>>> diff --git a/spec/integration/bin/puppetmasterd.rb b/spec/
>>>> integration/bin/puppetmasterd.rb
>>>> index b5a3f96..5b3a29f 100755
>>>> --- a/spec/integration/bin/puppetmasterd.rb
>>>> +++ b/spec/integration/bin/puppetmasterd.rb
>>>> @@ -107,4 +107,30 @@ describe "puppetmasterd" do
>>>>     end
>>>>
>>>>     it "should exit with return code 1 after parsing if --parseonly
>>>> is set and there are errors"
>>>> +
>>>> +    describe "when run for the first time" do
>>>> +        before do
>>>> +           �...@ssldir = File.join(@dir, 'ssl')
>>>> +            FileUtils.rm_r(@ssldir) if File.exists?(@ssldir)
>>>> +        end
>>>> +
>>>> +        describe "with noop" do
>>>> +            it "should create its ssl directory" do
>>>> +                File.directory?(@ssldir).should be_false
>>>> +                start(' --noop')
>>>> +
>>>> +                sleep 0.5
>>>> +                File.directory?(@ssldir).should be_true
>>>> +            end
>>>> +        end
>>>> +
>>>> +        describe "without noop" do
>>>> +            it "should create its ssl directory" do
>>>> +                File.directory?(@ssldir).should be_false
>>>> +                start
>>>> +                sleep 0.5
>>>> +                File.directory?(@ssldir).should be_true
>>>> +            end
>>>> +        end
>>>> +    end
>>>> end
>>>> --
>>>> 1.6.4.2
>>>>
>>>>
>>>>>
>>>
>>>
>>> --
>>> To be pleased with one's limits is a wretched state.
>>>     -- Johann Wolfgang von Goethe
>>> ---------------------------------------------------------------------
>>> Luke Kanies | http://reductivelabs.com | http://madstop.com
>>>
>>>
>>>>
>>>
>>
>>
>>
>> --
>> Rein Henrichs
>> http://reductivelabs.com
>>
>> >
>
>
> --
> A nation is a society united by delusions about its ancestry and by
> common hatred of its neighbors. -- William Ralph Inge
> ---------------------------------------------------------------------
> Luke Kanies | http://reductivelabs.com | http://madstop.com
>
>
> >
>



-- 
Rein Henrichs
http://reductivelabs.com

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to