Anybody using AppDeployToolkit to deploy package with SCCM 2012 R2?

Topics: Archive - General
Dec 31, 2014 at 1:27 AM
Hi,

I would like to know if someone might provide informations about using AppDeployToolkit to deploy package with SCCM2012 R2 and during OSD (SCCM 2012 R2, ZTI)?

I would like reading about the knowledge of peoples using it.

Thanks,
Jan 5, 2015 at 4:58 PM
We use it with SCCM 2012 R2 OSD ZTI scenarios now and it works great. In fact I was using PSADT before we implemented ZTI OSD and didn't have to change the majority of my packages. They just worked.

You just need to be aware of packages that require user environment customizations/settings in OSD scenarios though.

You have to do other things to supplement apps that require these. There has been new work in PSADT with Active Setup and ways to modify the default user. But I don't like modifying the default profile and have not invested the time to try the new Active Setup functions (yet). But I already have apply once Group Polices Preferences configured to customize our core apps. Eventually, I would like to utilize powershell DSC to replace most of our GPPs in the future.

With SCCM 2012 R2 we have less core apps now and with most of the non-core apps user customizations do not require any special mojo because we are using user based collections and user based installations. It is pretty amazing how quickly user based apps come down in our ZTI OSD scenarios.
Jan 5, 2015 at 10:26 PM
Hi,
You just need to be aware of packages that require user environment customizations/settings in OSD scenarios though.
What do you mean exactly?
Are you using full ZTI with application mapping?

How are you handling Pending reboot with PSADT?

We are in a way to migrate from Vista to Windows 8.1/Office 2013. I am actually defining packaging standard with PowerShell.

I am happy to exchange with more experience user.
Thanks,
Jan 10, 2015 at 2:13 AM
What do you mean exactly?
I was talking about packages that will only install correctly if they are running under the user context and will not the system. These usually target the current user profile directories and registry hives. Some applications won't install or are missing items but usually install fine when executed as a user.
Are you using full ZTI with application mapping?
No currently we are not using ZTA. We have user based collections tied to AD Groups for User applications paired with UDA and it works great.
How are you handling Pending reboot with PSADT?
We are suppressing pending reboots by changing how the Error Codes react in the Deployment Type for our Core Apps. We have 3 patching cycles with reboots toward the end of our task sequence. :)
We are in a way to migrate from Vista to Windows 8.1/Office 2013
You know Windows 10 and Office 16 should be coming out in a few months ;)
I am actually defining packaging standard with PowerShell.
We had a packaging standard / template that was written in VBscript. It contained predefined functions that I had perfected over the years to make it easy for someone with little experience to just plug in an .MSI and the rest would happen automatically. I was quite proud of myself. I had even some converted to powershell until I found PSADT and there was no longer a need for it. The feeling was bittersweet but I couldn't match its functionality on my own. Now we have a location that holds a stable copy of PSADT with our minor customizations (custom logos, icons and log path) and examples of the commonly used functions that may be needed for deployment. Honestly, we try to keep it is simple as possible if we can. PSADT has the framework to handle the rest.
Jan 10, 2015 at 3:23 AM
Edited Jan 10, 2015 at 3:24 AM
I was talking about packages that will only install correctly if they are running under the user context and will not the system. These usually target the current user profile directories and registry hives. Some applications won't install or are missing items but usually install fine when executed as a user.
This is really interesting. I was aware some MSI would not react well when install with System account. But it was 5 years ago and I was thinking that problem would be solved?! But installing as user is hard... when users are not local admin. What is your solution?
No currently we are not using ZTA. We have user based collections tied to AD Groups for User applications paired with UDA and it works great.
So you have an AD group for each user? Big job to maintain it?!
We are suppressing pending reboots by changing how the Error Codes react in the Deployment Type for our Core Apps. We have 3 patching cycles with reboots toward the end of our task sequence. :)
This is during OSD but on day to day. I was thinking showing a message to the user with PSADT asking for a reboot and then using fast retry to see if the problem is solve before returning a true error code. Might it be a good idea? The problem I might see would be in OSD because fast retry in OSD... not sure or being sure all reboot happen when need during OS setup...
We had a packaging standard / template that was written in VBscript. It contained predefined functions that I had perfected over the years to make it easy for someone with little experience to just plug in an .MSI and the rest would happen automatically. I was quite proud of myself. I had even some converted to powershell until I found PSADT and there was no longer a need for it. The feeling was bittersweet but I couldn't match its functionality on my own. Now we have a location that holds a stable copy of PSADT with our minor customizations (custom logos, icons and log path) and examples of the commonly used functions that may be needed for deployment. Honestly, we try to keep it is simple as possible if we can. PSADT has the framework to handle the rest.
You are right to be proud. I believe packager, packaging and Scripting is really underestimate. Those people need to be creative all day long. Each software is a challenge. Not many peoples may do that job. I did it during 6 years, hundreads of software. I was really proud too.
What is your average time to create a package for simple to really hard software? I was believing from 2, for a simple, to 6 days for a hard one would be a great estimation.
Jan 13, 2015 at 3:24 AM
But installing as user is hard... when users are not local admin. What is your solution?
We are looking into using Beyond Trust Power Broker to resolve issues like this and other privilege elevation issues. Some applications will still install fine in the system context but are missing user settings. I am going to tackle this problem in the future with active setup rather than Group Policy preferences or say a log on script.
So you have an AD group for each user?
Sorry. I should be been clearer. We have an AD group for each application. This also allows applications to easily follow to users primary devices. We use all three methods of UDA. User, Usage and administrator defined methods.
This is during OSD but on day to day. I was thinking showing a message to the user with PSADT asking for a reboot and then using fast retry to see if the problem is solve before returning a true error code. Might it be a good idea? The problem I might see would be in OSD because fast retry in OSD... not sure or being sure all reboot happen when need during OS setup...
The PSADT will detect session 0 or task sequences and run non-interactive automatically. If you use Show-InstallationRestartPrompt it is automatically bypassed in this mode. This might be your solution?
What is your average time to create a package for simple to really hard software?
1 to 32 hours. Hard would classify having no option but to repackage.
Jan 14, 2015 at 1:25 AM
In fact deploying with system account should only impact USer settings like HKCU. Why not just use activesetup?

For hard package, why directly using repackage and not automation software like Winbatch or AutoIT?
Jan 20, 2015 at 1:47 PM
g4m3c4ck wrote:
What do you mean exactly?
I was talking about packages that will only install correctly if they are running under the user context and will not the system. These usually target the current user profile directories and registry hives. Some applications won't install or are missing items but usually install fine when executed as a user.
Are you using full ZTI with application mapping?
No currently we are not using ZTA. We have user based collections tied to AD Groups for User applications paired with UDA and it works great.
How are you tying in UDA with AD groups for application installations? Are you doing required user deployments based on UDA input ? We have been trying to get applications to install after our build based on user collections but are having mixed results with this approach. I am curious what you are doing that is working so well? I can see if you are adding users to a AD group during build it might work but trying to get a full picture.
Thanks,
Feb 10, 2015 at 7:27 PM
How are packages configured in SCCM 2012 ?
Visible: Showed, hidden ?
Action after: no Action or package control restart ?

How does the package respond on defer, exit code 5000 ?
Feb 25, 2015 at 6:34 PM
How are you configuring your package? Are they minimized, maximized, hidden?
Mar 3, 2015 at 6:26 PM
I do this with OSD and the applications are configured like so:

main properties page:
selected allow this application to be installed without being deployed (its built solely for OSD)

deployment types section:
content tab:
deployment options, download and run locally

Programs tab:
installation program; powershell.exe -file .\Deploy-Application.ps1 Install -DeployMode "Silent"

User experience Tab:
Install for system
whether or not a user is logged on
minimized

return codes tab:
5000 fast retry (for postponement) I do this so it mimics the one deployed to users systems

hope it helps
Mar 4, 2015 at 1:47 AM
Are the destination OS 64 bits or 32 bits. By launching powershell as you do it will be run 32 bits.
This would launch it 64 bits or 32 bits depending the destination OS.
%WINDIR%\Sysnative\WindowsPowerShell\v1.0\powershell.exe

You are not using the interactive switch nor "allow user to interact"?!
Mar 9, 2015 at 7:33 PM
In response to : You are not using the interactive switch nor "allow user to interact"?!
correct, this is an OSD only based application so no interaction is required
Mar 11, 2015 at 11:28 AM
From the sccm client point of view, what is changing when you check the interact switch? When the System is running then it is running under session 0 so??