Using the #ZENworks ISDTool with the #MicrosoftDeploymentToolkit (#MDT)

 
0 Likes
In the recent Windows 10 Deployment Best Pracitices webinar I showed you how to use MDT to deploy Windows 10 with an MDT bundle, introduced in ZENworks 11.4. One of the things I talked about there was the need to use ISDTool. This tool allows you to send status message information back to the ZENworks server in your task sequence and to store the bundle status in the image safe data. This cool solution focuses on describing how to do that.

Reporting status with ISDTool


MDT allows you great flexibility in how you deploy your Windows operating system. Because it is so flexible it can be easily integrated into the ZENworks status system. In order to pass status information to ZENworks from MDT you can use the ISDTool. Here’s what you need to do:

  1. Download the 32-bit and/or 64-bit versions of ISDTool from the Imaging Tools page of the /zenworks-setup page on your Primary Server.

  • Copy the ISDTool.exe to the tools folder of your deployment share or some other location where the deployment share user has rights.

  • In your task sequence use one of the following commands in a Run Command Line action:

    • ISDTool mdt e “status string”This command allows you to send an error message to the ZENworks Server. The message will be logged against the device being imaged, or the server if the device being imaged does not yet exist in the zone. The status string is the message that will be reported in the log.

  • ISDTool mdt s “status string”
    This command allows you to send a success message to the ZENworks Server. The message will be logged against the device being imaged, or the server if the device being imaged does not yet exist in the zone. The status string is the message that will be reported in the log.

  • ISDTool mdt 4 returncode [rebootoff]This command should be the last command you execute if the task sequence has failed. It records the failure in image safe data so that the imaging process is aware that the MDT task have failed and does not proceed to the next step in the imaging bundle. By default this will cause the device to reboot, if you want to suppress this then use the rebootoff parameter.




When combined with a solution like this you can have the Try/Catch block actions use ISDTool to update the ZENworks message log to indicate that the sequence failed or was successful. If you want more logging, you can insert as many of these actions as desired in your sequence to catch areas where you think problems may occur. For failures it is recommended that you point the user to the MDT logs if you have enabled MDT logging.

Modifying the ZTIDiskPart Script


In addition to reporting status, I discussed the fact that the ZTIDiskPart.wsf script that comes with MDT needs to be updated so that the Image Safe Data structure is initialized the MDT creates the initial Windows boot partition. My intent was to provide the updated script, however due to MS copyrights I'm not able to do so. Instead you will need to modify the ztidiskpart.wsd script in the scripts folder of your deployment share to include the attached script fragment. Before doing you you should backup the original and then you should copy and paste this immediately following this line in the script:

Else
oLogging.CreateEntry "No Disk Alignment variables specified, alignment not updated.", LogTypeInfo
End if

A special thanks to Todd Laycock for helping out with this script.  Once this script is in place then you should be able to properly deploy MDT task sequences to both existing and new devices using a ZENworks bundle.

Labels:

How To-Best Practice
Comment List
Parents
  • We tried getting this to work for almost a fortnight and it turned out that the ISDTool.exe arguments in the linked script are wrong.

    The arguments are currently:
    ISDTool.exe mdt cleandisk " & iDiskIndex

    It should be:
    ISDTool.exe cleandisk " & iDiskIndex
Comment
  • We tried getting this to work for almost a fortnight and it turned out that the ISDTool.exe arguments in the linked script are wrong.

    The arguments are currently:
    ISDTool.exe mdt cleandisk " & iDiskIndex

    It should be:
    ISDTool.exe cleandisk " & iDiskIndex
Children
No Data
Related
Recommended