cobbler::node exec is incompatible between Puppet 2->3
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cisco Openstack |
New
|
Undecided
|
Unassigned | ||
Grizzly |
Triaged
|
Low
|
Dan Bode |
Bug Description
The way that escaping exec commands in Puppet has apparently changed between versions 2.7.13 and 2.7.13.
In the cobbler::node class, the command to use is determine at run-time and stored in the run-time variable $action.
It has additional escapes, which does not work on Puppet 3.2
https:/
The simplest fix would be to just make the change and have different branches (one that targets puppet 3.2 manifests, and does not include the '\\', one that target the Debian version (2.7.11) and includes the extra escape character. In general, I am a little wary of having Puppet code that is not compatible with older versions of Puppet (it's unclear to me what branch I would even submit such a change to).
The real solution, is to switch away from that exec and move its logic to a native type, this will be backwards compatibile, but lots more work, and much more likely to cause regressions.
This is obviously more work, and may still be mute if another change has to be made that requires syntax not available with both versions of Puppet.