The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

Bug #14055

Windows packages should ignore exit code 3010

Added by Wouter verhelst about 2 years ago. Updated over 1 year ago.

Status:ClosedStart date:04/18/2012
Priority:NormalDue date:
Assignee:Josh Cooper% Done:

0%

Category:windows
Target version:2.7.19
Affected Puppet version:2.7.13 Branch:https://github.com/puppetlabs/puppet/pull/851
Keywords:windows msi reboot

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com

This issue is currently not available for export. If you are experiencing the issue described below, please file a new ticket in JIRA. Once a new ticket has been created, please add a link to it that points back to this Redmine ticket.


Description

Hi,

I’ve been trying out puppet to manage some Windows machines. Installing MSI packages works most of the time, but in some cases an MSI will exit with exit state “3010”.

A quick google search revealed that this exit state means “installation was successful, reboot pending”. Unfortunately, puppet does not seem to know this, and marks the installation as failed, resulting in it being retried on every puppet run.

It might be good if puppet ignored that exit state, so that the installation would at least be marked as done.


Related issues

Related to Puppet - Bug #11868: msi package provider can only manage packages it installed Closed 01/10/2012

History

#1 Updated by Josh Cooper about 2 years ago

  • Category set to windows
  • Status changed from Unreviewed to Accepted
  • Assignee set to Josh Cooper
  • Keywords set to windows msi reboot

Yes, definitely a bug, thanks!

#2 Updated by Nan Liu almost 2 years ago

I’m running into the same issue with DISM: https://github.com/puppetlabs/puppetlabs-dism/issues/4

The issue I’m struggling with, is depending whether the system have pending reboot, this can trigger other exit code depending on whether the installer cares or not. For example when I run vCenter installer, the exit code is 67 when pending reboot. In this case, would it be better if we check for the registry key and simply skip the install process and say reboot pending? I can see potential issues with multi-step install process that requires reboot, so not sure what’s the best solution here.

#3 Updated by Josh Cooper almost 2 years ago

  • Status changed from Accepted to In Topic Branch Pending Review
  • Branch set to https://github.com/puppetlabs/puppet/pull/851

This change is part of the overall MSI package provider refactor

#4 Updated by Josh Cooper almost 2 years ago

  • Status changed from In Topic Branch Pending Review to Merged - Pending Release
  • Target version changed from 2.7.x to 2.7.18

#5 Updated by Josh Cooper almost 2 years ago

  • Target version changed from 2.7.18 to 2.7.19

#6 Updated by Moses Mendoza over 1 year ago

  • Status changed from Merged - Pending Release to Closed

Released with 2.7.19rc1.

#7 Updated by Magnus Lundin over 1 year ago

Problem seems to be back in Puppet 3.0?

#8 Updated by Magnus Lundin over 1 year ago

  • Status changed from Closed to Re-opened
  • Target version changed from 2.7.19 to 3.0.x

Maybe the changes from the msi provider wasnt merged over to the windows provider?

#9 Updated by Josh Cooper over 1 year ago

Hi Magnus, can you include your manifest and run with --debug so I can see what commands are being executed? The windows provider checks exit statuses in one place, irrespective of the type of package (msi/exe) being installed…

#10 Updated by Josh Cooper over 1 year ago

  • Status changed from Re-opened to Closed

The issue Magnus reported is due to a change in the semantics around execute, filed as #17007

#11 Updated by Josh Cooper over 1 year ago

  • Target version changed from 3.0.x to 2.7.19

This was marked as fixed in 2.7.19, and reopened, but that turned out to be a different issue in puppet 3.0, so marking this as released in 2.7.19 again.

Also available in: Atom PDF