puppetlabs/puppet_for_the_win — pull request #23 by jeffmccune (2012-03-05 22:46:10+00:00)
Title: (#12474) Remember properties in a shared registry path

Without this patch Puppet FOSS and Puppet Enterprise write the user
supplied MSI properties to product specific paths. The intent of this
pattern is to remember the properties so we can recall them during
upgrade scenarios.

Writing the properties to a product specific path is a problem in the
situation where Puppet is being upgraded to Puppet Enterprise. In this
scenario, Puppet Enterprise should recall the PUPPET_MASTER_SERVER
property written out by the original installation of Puppet. It does
not, however, because the path it searches is product specific.

This patch fixes the problem by introducing a new preprocessor variable
named OurCommonProductNameWord. Both Puppet and Puppet Enterprise now
write to the registry path of:

HKLM\SOFTWARE\$(var.OurCompanyName)\$(var.OurCommonProductNameWord)

This fixes the problem by storing and recalling the following properties
from the same registry path:

INSTALLDIR
PUPPET_MASTER_SERVER
PUPPET_AGENT_CERTNAME
PUPPET_CA_SERVER