Error when using "Attempt a dry run" on bundles

  • 7010180
  • 17-Feb-2012
  • 27-Apr-2012

Environment

Novell ZENworks 11 Configuration Management Support Pack 1 - ZCM 11 SP1
Novell ZENworks 11 Configuration Management Support Pack 2 - ZCM 11 SP2
X Novell ZENworks 11 Configuration Management Support Pack 1 - ZCM 11 SP1
X Novell ZENworks 11 Configuration Management Support Pack 2 - ZCM 11 SP2

Situation

ERROR (from zmd-messages.log):
 
[Debug] [02/07/2012 20:12:30.497] [] [1281] [ZenworksAgent] [9,550] [Bundle Manager] [Dry run for bundle xbundle already done successfully. Skipping.] [] []
[Debug] [02/07/2012 20:12:30.497] [] [1281] [ZenworksAgent] [9,550] [Bundle Manager] [com.novell.zenworks.agent.zenbundle.core.exceptions.LaunchException
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.installApp(AppActionItem.java:1307)
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.installApp(AppActionItem.java:1294)
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.runApp(AppActionItem.java:1186)
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.processAction(AppActionItem.java:812)
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.processHandledAction(AppActionItem.java:421)
 at com.novell.zenworks.agent.zenbundle.core.appitems.AppActionItem.processHandledAction(AppActionItem.java:402)
 at com.novell.zenworks.agent.zenbundle.manager.ScheduleListener$StartActionThread.run(ScheduleListener.java:236)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 at java.lang.Thread.run(Thread.java:680)

Resolution

Remove "Attempt a dry run" from bundle assignment.

Additional Information

Dry run is not used for MAC or Windows bundles.

It is only used for Linux bundles with Install RPM actions. For other types of bundles, "Attempt a dry run" does nothing.

Typical use case of dry run: assign a bundle with dry run. After the agent completes the dry run and sends a message back that dry run is completed, modify the assignment to remove dry run so that the bundle can be installed.

If the dry run flag is not removed, it will try to do a dry run again and fail saying that the dry run is already done.  "Launch Exception type: APP_DRYRUN_DONE".