Bug #2369
openParamaterized classes persist through import after parameters have been removed
Description
I recently tried a module from the puppet forge (for bacula)
The module included some paramaterized classes. When I importe the environment, the classes were imported correctly.
Upon reviewing the module, I decided I din't care for it, and decided to write my own.
The new module didn't use any paramaterized classes. However, even when re-importing the environment puppet would error out. It complained about things that were defined as paramaterized values.
The only way I was able to work around it was to move my module out of the puppet directory, import the env (where foreman cleaned up everything) then move my new module back and re-import the environment.
Steps to reproduce:
#1) Install a module with paramaterized classes
#2) Import environments
#3) Set a few of the paramaters (I set them globally. I assume it'd work at the hostgroup, domain, or host level as well)
#4) Remove the module with paramaterized classes
#5) Replace with a module using the same class names, but without them being paramaterized.
#6) Import environments
#7) Initiate a puppet run
I did not look at the hosts YAML output. I suspect that the resulting yaml file is still putting the paramaterized bits in play.