1. Pulled down the changed clone I made using Git: git clone --single-branch --branch WaitForExit_timeout_change git clone https://github.com/puppetlabs/puppetlabs-puppet_agent.git

  1. Clone my branch into the modules directory. However, Puppet won’t recognize this as a module unless I remove the “puppetlabs” portion of the name:
                    Renamed the directory from "puppetlabs-puppet_agent” to just puppet_agent:

  1. In order to test, created a test.pp file one level below the puppet_agent directory. The contents of the test.pp file:

  1. Running a test, piping the output to a few separate files (out1.log & out2.log). Out1.log is the runtime, debug output of the Puppet agent run from the puppet apply command. Out2.log is the standard out, error/success event log. Here is the actual command to apply and pipe the output: puppet apply —debug test.pp > C:\out1.log 2> C:\out2.log

  1. First issue, it appears that it is attempting to upgrade the Puppet agent, however an error is occurring that is preventing it. Specifically in the out2.log stating “Could not retrieve information from environment production sources(s) puppet://pe_packages//windows-86_64/puppet-agent-x64.msi
    1. This means that by default the script will check the Master for the MSI file but was unable to locate it because we are running Puppet apply locally on this system. 

  1. Need to pull down the version MSI files and place them in the C: drive and In the test.pp we need to define the full path location of the MSI:

            Test.PP file:

  1. Run puppet apply —debug test.pp > C:\out1.log 2> C:\out2.log again and check the output:
        Out2.log: looks clean no more messages about not being able to retrieve .msi file from the Master.


        After checking Puppet version, we can see it applied successfully and upgraded from 6.4.2 -> 6.4.3:
  1. Need to upgrade to 6.4.4 now using our new parameter to see if there aren’t any errors:
            Updated test.pp file using the new parameter:

            The parameter seems to apply successfully given the puppet apply output:

            Upgraded successfully: