Author: Aaron Czechowski, Senior Program Manager, Enterprise Client and Mobility
Soon after the initial release of the first Windows Technical Preview last year we posted instructions on how to deploy a Windows 10 in-place upgrade via task sequence, and received a lot of excellent feedback! Recently we shipped service packs for Configuration Manager to provide full product support for Windows 10, so with that we are also revising the sample content for in-place upgrade via task sequence. If this is new to you, go read the original post first as that will explain the scenario in further detail (then come back here and read on). But if you’ve done this a hundred times already, keep reading on what’s changed, grab the new attachment below and enjoy.
Note: Throughout this post I’m just going to refer to “ConfigMgr 2012 R2 SP1” but note that this actually applies to both System Center 2012 R2 Configuration SP1 and System Center 2012 Configuration Manager SP2.
- ConfigMgr 2012 R2 SP1 is the minimum version we support for Windows 10 in-place upgrade using this sample content.
- SetupComplete.ps1 now handles errors during client remediation. With the original PowerShell script if anything went wrong at that point the script would continue even though the client was potentially unhealthy. This caused the task sequence service to get into a weird state and never report back that it was stopped, so the overall process appeared to stop responding at 100%. Now the worst case is the task sequence won’t resume but Windows setup won’t wait indefinitely.
- Another associated issue that came up was that many customers had clients that were patched with an .MSP in a temporary directory. When running ccmsetup to remediate the client, as this path was not found, ccmsetup would fail. Ccmsetup in ConfigMgr 2012 R2 SP1 is able to handle a missing patch file and will continue.
- The Set-SchTask function (found in several of the scripts) now checks for the existence of the task before changing it. One of the client maintenance tasks does not exist in Windows 7 and some folks were having issues with the script failing on that action.
- The PreSetup step in the task sequence is now enabled for “Continue on Error” in case the client provisioning mode WMI method hiccups and causes the script to return an exit code of 1.
- The Upgrade Windows step now has a timeout configured by default of 180 minutes. If Setup has not completed in 3 hours then something has gone off the rails.
- The restart step immediately following the setup command line will now trigger after 30 seconds. If you want to adjust that keep in mind that the restart is intended to occur immediately once setup is done in the down-level OS. Any delay at this point may impact the success of the setup process.
- The task sequence conditions on the Post-Processing and Rollback groups are now based on Windows registry keys for setup success and rollback, instead of an arbitrary file marker.
We will continue to revise this content as needed in the future, although we are currently working hard on further enhancements to the integrated experience in Configuration Manager vNext. You can download a technical preview today to see what’s coming with Windows 10 in-place upgrade in the next major release.
Finally, a quick pitch for two sessions from Microsoft Ignite 2015 to learn more about Windows 10 in-place upgrade:
- What’s New with OSD in System Center Configuration Manager and the Microsoft Deployment Toolkit by Aaron Czechowski (the second half is all about this scenario)
- Upgrading to Windows 10: In Depth by Aziz El Ouaqid (a must view for anyone doing Windows 10 upgrades)
— Aaron Czechowski, Senior Program Manager
Configuration Manager Resources