[Bug 916005] New: puppet update corrupts /etc/sysconfig/puppet
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Bug ID: 916005 Summary: puppet update corrupts /etc/sysconfig/puppet Classification: openSUSE Product: openSUSE 13.1 Version: Final Hardware: x86-64 OS: openSUSE 13.1 Status: NEW Severity: Major Priority: P5 - None Component: Upgrade Problems Assignee: bnc-team-screening@forge.provo.novell.com Reporter: itsbo@fz-juelich.de QA Contact: jsrain@suse.com Found By: --- Blocker: --- The recent update to puppet (3457) executes this in post: %post # Compatibility with old setups if [ -f /etc/sysconfig/puppet ] && [ -z "`grep 'PUPPET_EXTRA_OPTS="' /etc/sysconfig/puppet | grep ' --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG}"'`" ]; then echo 'PUPPET_EXTRA_OPTS=" --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} ${PUPPET_EXTRA_OPTS}"' >> /etc/sysconfig/puppet fi On systems with an existing PUPPET_EXTRA_OPTS="" in /etc/sysconfig/puppet (also with other options in "" ) this adds a second PUPPET_EXTRA_OPTS line, like this: # You may specify other parameters to the puppet client here # PUPPET_EXTRA_OPTS="" PUPPET_EXTRA_OPTS=" --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} ${PUPPET_EXTRA_OPTS}" This disrupts operation on a system where PUPPET_EXTRA_OPTS is already set and used. It also leads to a service running like this: /usr/bin/ruby2.0 /usr/bin/puppet agent --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} ${PUPPET_EXTRA_OPTS} --no-daemonize Please note that "man 5 systemd.exec" states for Environment variables: "Variable expansion is not performed inside the strings, however, specifier expansion is possible. The $ character has no special meaning." Therefore the line is not usable in Systemd. Reproducible: Always Solution: remove the %post directive. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Bernhard Wiedemann <bwiedemann@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bwiedemann@suse.com, | |darin@darins.net, | |nkrinner@suse.com, | |tbechtold@suse.com Assignee|bnc-team-screening@forge.pr |tampakrap@opensuse.org |ovo.novell.com | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Theo Chatzimichos <tchatzimichos@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tchatzimichos@suse.com --- Comment #1 from Theo Chatzimichos <tchatzimichos@suse.com> --- Can I have the output of `zypper se -s puppet` please? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Theo Chatzimichos <tchatzimichos@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC|tchatzimichos@suse.com |kstreitova@suse.com Assignee|tampakrap@opensuse.org |tchatzimichos@suse.com -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 --- Comment #2 from Lars Heide <itsbo@fz-juelich.de> --- Reverting back to the way the puppet.service file was in the original package is also necessary to get the service running again: ExecStart=/usr/bin/puppet agent --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} $PUPPET_EXTRA_OPTS This way the variables are apparently expanded at a later date and filled in correctly. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 --- Comment #3 from Lars Heide <itsbo@fz-juelich.de> --- Of course: #> zypper se -s puppet Loading repository data... Reading installed packages... S | Name | Type | Version | Arch | Repository --+---------------+------------+-------------+--------+----------- i | puppet | package | 3.7.3-3.4.1 | x86_64 | Updates v | puppet | package | 3.2.4-3.1.1 | x86_64 | OSS v | puppet | package | 3.7.3-3.4.1 | i586 | Updates v | puppet | package | 3.2.4-3.1.1 | i586 | OSS | puppet | srcpackage | 3.7.3-3.4.1 | noarch | Updates | puppet-server | package | 3.7.3-3.4.1 | x86_64 | Updates | puppet-server | package | 3.2.4-3.1.1 | x86_64 | OSS | puppet-server | package | 3.7.3-3.4.1 | i586 | Updates | puppet-server | package | 3.2.4-3.1.1 | i586 | OSS i | puppet-vim | package | 3.7.3-3.4.1 | noarch | Updates -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Theo Chatzimichos <tchatzimichos@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |boris@steki.net --- Comment #4 from Theo Chatzimichos <tchatzimichos@suse.com> --- Boris, can you take a look at this one please? I suspect it affects rubygem-puppet in factory as well -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Lars Heide <itsbo@fz-juelich.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fmoeller@mathematik.uni-wue | |rzburg.de --- Comment #5 from Lars Heide <itsbo@fz-juelich.de> --- *** Bug 917111 has been marked as a duplicate of this bug. *** -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 --- Comment #6 from Lars Heide <itsbo@fz-juelich.de> --- Currently I do not see any way to use this package from an Autoyast perspective. The only option the package accepts is $PUPPET_EXTRA_OPTS trying to provide a server through this like: PUPPET_EXTRA_OPTS="--server puppetserver.example.com" results in Mär 13 14:57:36 hostname puppet[19539]: Error: Could not parse application options: invalid option: --server trying this: PUPPET_EXTRA_OPTS="--server=puppetserver.example.com" results in Mär 13 14:58:45 hostname puppet-agent[19548]: Could not request certificate: getaddrinfo: Name or service not known The only way I have now is to provide a complete puppet.conf through a postinstall script or similar. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 Robert Munteanu <robert.munteanu@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |robert.munteanu@gmail.com -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=916005 http://bugzilla.opensuse.org/show_bug.cgi?id=916005#c18 Andreas Stieger <astieger@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |astieger@suse.com Flags| |needinfo?(tchatzimichos@sus | |e.com) --- Comment #18 from Andreas Stieger <astieger@suse.com> --- Hello Theo, I see two submissions into maintenance: https://build.opensuse.org/request/show/416026 rubygem-puppet version update 3.8.5 -> 3.8.7, and a fix for this bug. https://build.opensuse.org/request/show/416031 same, plus removal of old gem archive But also rubygem-r10k version update to 1.4.1 to 1.5.1 Is the r10k update required for this maintenance update? -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com