none
A question on how to deploy applications in MDT 2012 RRS feed

  • Question

  • I have been building a deployment solution to deploy different builds of Win 7.  The only difference between the builds is which applications are installed as part of the build, for example:

    All builds need the generic applications such as Office, Adobe Reader, Anti virus, etc.  Then I want to install the applications specific to the different builds, photoshop for a graphics dept build, Adobe premiere for video dept build etc.  I want to make this as easy as possible for the build operator so that no mistakes can be made in which applications are installed on each build.  I would like a selection for Graphics Build, Video Build, Generic Build (just the generic apps) etc.  Is there a way to do this with a selection made at the computer name part of the MDT sequence so that no user interaction is required after this point?

    Thank you very much in advance for any help.

    Jez

    Friday, December 13, 2013 10:52 AM

Answers

  • MandatoryApplications is *different* than Applications, be careful about mixing them.

    You *must* start at 001, and there must be no gaps between the last element, if there are then MDT will ignore any item after the gap.

    I can see that you have Applications004, however I do *NOT* see Applications001. YOu are not allowed to do this.

    Additionally, I do not see any entry for SkipApplications=YES, which suggests to me that you are planning on displaying the Applications Wizard, If so *ANY* applications selecteded on this page by the user will Overwrite the values you selected in your cs.ini file. IF they are in fact Manditory, then you should place in MandatoryApplicationsXXX.

    Also be careful about mixing sections, what order they are processed, and where they get placed in the cs.ini file.

    I recommend using application "Bundles" to keep things simple. Let the less experienced operator manage the dependencies within the bundle rather than editing the cs.ini file:

    [Settings]
    Priority=Default, TaskSequenceID
    
    [Default]
    ...
    MandatoryApplications001={5514d905-43a0-459d-b628-18ed2e39248a}
    
    [DEPLOY-BASE-001]
    ; Mandatory for Deploy-Base-001
    MandatoryApplications002={28a49556-2133-4848-8965-563bdfb48616}
    ; Optional for Deploy-Base-001
    Applications001={dcdca5b6-d85e-4798-995c-8667bbc98aa7}


    Keith Garner - keithga.wordpress.com

    Wednesday, January 8, 2014 12:34 AM
    Moderator

All replies

  • I'm not sure exactly how you want to target/select your applications/settings.

    When you say computername, are you going to use a computername prefix for each type?

    The principles and examples I've shown on my post should hold true for your situation.

    Here's an example that will use custom defaults and deploy specific apps based on the task sequence selected.

    [Settings] Priority=TaskSequenceID, Default 
    Properties=CustomProperty   
    
    [Default] 
    OSInstall=Y   
    _SMSTSORGNAME=Scriptimus Ex Machina 
    JoinWorkgroup=Collective   
    Applications001={0b41ce2c-03a2-49c6-a129-2f6f9e5925ea} 
    Applications002={a6e63ac1-0498-406e-8a7c-17876f0a7d49 
    
    [WIN7PRO]   
    SkipTaskSequence=YES      
    Applications005={0c41ce2c-03a2-49c6-a129-2eb58e59eb58} 
    
    [WIN7ENT]   
    SkipTaskSequence=YES    
    Applications004={ade63ac1-0498-406e-8a7c-17876f0a7589} 
    

    Take a while to read my post and study how the rules work. I suggest you try a few tests in a non-production environment. After which, it will all fall into place.

    Hope this helps.

    /Andrew


    Blog: http://scriptimus.wordpress.com

    Friday, December 13, 2013 11:36 AM
  • Andrew,

    Thanks for your reply.  Apologies for not replying sooner but I have been very drunk and eaten to much over Christmas and New Year to have time to test this out.

    I have now had a try at this and I am hitting a wall with regards to MDT processing the different task sequences.

    I have added three MandatoryApplications00X={GUID} to the default task sequence and they appear greyed out as expected.  The issue I have is when I try to add extra Applications00X={GUID} to the separate task sequence ids...

    I have tried renaming the TaskSequenceID (from the ID to the physical name of the TS) within customsettings.ini but either way does not seem to process the additional applications.  Everything works fine in Default, nothing works within separate TS's.

    Here is my CustomSettings.ini file...

    [Settings]
    Priority=TaskSequenceID, Default
    Properties=MyCustomProperty
    
    [Default]
    _SMSTSOrgName=IMAGELAN Deployment Services
    SkipLocaleSelection=YES
    keyboardLocale=0809:00000809
    UserLocale=en-GB
    UILanguage=en-GB
    SkipTimeZone=YES
    TimeZoneName=GMT Standard Time
    XResolution=1
    
    SkipDomainMembership=YES
    SkipBDDWelcome=YES
    SkipDeploymentType=YES
    DeploymentType=NEWCOMPUTER
    SkipSummary=YES
    OSInstall=YES
    SkipUserData=YES
    SkipCapture=YES
    SkipAdminPassword=NO
    SkipProductKey=YES
    SkipComputerBackup=YES
    SkipBitLocker=YES
    EventService=http://192.168.10.2:9800
    GPOPackPath=MCSUBaselineGPOPack
    
    MandatoryApplications001={5514d905-43a0-459d-b628-18ed2e39248a}
    MandatoryApplications002={f99b2f1b-8bbb-4c37-a4c7-06c4b628ab2b}
    MandatoryApplications003={7c901aec-becc-4241-932c-9a4b4fc34afd}
    
    [GENERIC]
    SkipTaskSequence=YES
    Applications004={97f2af65-e710-48c6-988b-8920ca127710}
    
    [DEPLOY-BASE-001]
    SkipTaskSequence=YES
    Applications005={28a49556-2133-4848-8965-563bdfb48616}
    Applications006={dcdca5b6-d85e-4798-995c-8667bbc98aa7}

    Thank you very much for your time on this.

    Regards,

    Jez


    • Edited by Jez M-L Tuesday, January 7, 2014 10:52 AM typo's
    Tuesday, January 7, 2014 10:51 AM
  • Jez,

    In your task sequence, at three points during the task sequence, there is a so called "Gather" step. Normally and by default this gather step is configured to only process information locally. Please change it to, process this file: "CustomSettings.ini", this way the task sequence is forced to process the information in the customsettings.ini explicitly.

    Hope this helps! Cheers!


    If this post is helpful please click "Mark for answer", thanks! Kind regards

    Tuesday, January 7, 2014 1:55 PM
  • MandatoryApplications is *different* than Applications, be careful about mixing them.

    You *must* start at 001, and there must be no gaps between the last element, if there are then MDT will ignore any item after the gap.

    I can see that you have Applications004, however I do *NOT* see Applications001. YOu are not allowed to do this.

    Additionally, I do not see any entry for SkipApplications=YES, which suggests to me that you are planning on displaying the Applications Wizard, If so *ANY* applications selecteded on this page by the user will Overwrite the values you selected in your cs.ini file. IF they are in fact Manditory, then you should place in MandatoryApplicationsXXX.

    Also be careful about mixing sections, what order they are processed, and where they get placed in the cs.ini file.

    I recommend using application "Bundles" to keep things simple. Let the less experienced operator manage the dependencies within the bundle rather than editing the cs.ini file:

    [Settings]
    Priority=Default, TaskSequenceID
    
    [Default]
    ...
    MandatoryApplications001={5514d905-43a0-459d-b628-18ed2e39248a}
    
    [DEPLOY-BASE-001]
    ; Mandatory for Deploy-Base-001
    MandatoryApplications002={28a49556-2133-4848-8965-563bdfb48616}
    ; Optional for Deploy-Base-001
    Applications001={dcdca5b6-d85e-4798-995c-8667bbc98aa7}


    Keith Garner - keithga.wordpress.com

    Wednesday, January 8, 2014 12:34 AM
    Moderator
  • Hi Jez,

    Thanks the email, Happy new year to you also.

    What Keith is saying is right. Here's another example

    [Settings]
    Priority=Default, TaskSequenceID

    [Default]
    ...
    Applications001={5514d905-43a0-459d-b628-18ed2e39248a} Applications002={f99b2f1b-8bbb-4c37-a4c7-06c4b628ab2b} Applications003={7c901aec-becc-4241-932c-9a4b4fc34afd} [GENERIC] SkipTaskSequence=YES Applications004={97f2af65-e710-48c6-988b-8920ca127710} [DEPLOY-BASE-001] SkipTaskSequence=YES Applications004={28a49556-2133-4848-8965-563bdfb48616} Applications005={dcdca5b6-d85e-4798-995c-8667bbc98aa7}


    Hope this helps.

    /Andrew


    Blog: http://scriptimus.wordpress.com



    Thursday, January 9, 2014 9:40 AM
  • keith, Andrew,

    Thank you very much for this information, I now understand the process.  Once again a case of PICNIC (Problem In Chair Not In Computer)! I am currently updating my shares as a "last chance to see if that was the issue" effort so will update you once I have had a chance to put it right.

    Thanks again...

    Jez

    Thursday, January 9, 2014 11:08 AM
  • Andrew, Keith,

    Sorry for the delay, I am currently working on a few projects and another has taken priority over this at the moment.  I have tried the correct method as you have described above but I am still not having any joy with it.  I have even cut and pasted the script above and it still does not check the applications in the Generic or Deploy-Base-001.  Default works, tasksequenceID part does not. I have also taken all the applications and mandatoryapplications out of default and only have them in the individual task sequences but then nothing appears on the application selection wizard.  Is this just my system that is doing this?  I am tempted to make another MDT setup from scratch to see if this happens on that one.  I am going to build and go through the logs with a fine tooth comb to see if I can see anything.

    Any thoughts Gents?

    Wednesday, January 15, 2014 9:03 AM
  • Keith,

    I have found this post...

    http://adminnexus.blogspot.co.uk/2012/09/checking-applications-in-mdt-wizard.html

    where the guy explains that this function does not work as the customsettings.ini file is not re-processed after task sequence is selected.  He also gives a workaround for it so I am going to give it a try and get back with the results.

    Jez

    Wednesday, January 15, 2014 9:14 AM
  • The workaround does work, however it does have one slight downside in that ZTIGather takes a few seconds to run so if you have the OSDComputerName declaration in CustomSettings then the wizard will jump into the blank applications wizard straight way as it has not yet processed the separate settings file created in the post.  You can click back and then next again and the applications wizard is then populated with the applications you have declared for that TS. Is there a way to add a slight delay to the wizard panes progressing?  I added a sleep of 6 seconds to the function created in the post but then MDT threw a wobbly saying that there was a script that is making the build hang.
    Thursday, January 16, 2014 10:09 AM