When moving to a new version of Windows 10, you need to ensure that they are compliant with the upgrade. This is part of any successful Windows as a Service strategy.
In this blog post, I provide a Windows 10 Readiness SCCM Baseline that you can use to make sure that devices are compliant. The idea is that you can re-use Configuration Items for each new Windows 10 build.
Configuration Baselines for Windows as a Service
I have experience with both In-Place Upgrade scenarios as well as the deployment of Feature Updates. With In-Place Upgrade Task Sequences, you can make the required steps as part of the Task Sequence.
When using a Feature Update, however, you need to deploy the dependencies before the upgrade. It is possible to add custom actions as part of the Feature Update, but it makes things more complicated in most cases.
You can read more about this here:
Instead of upgrading applications or drivers as part of the Task Sequence, it is recommended to upgrade these before delivering the upgrade. This is true for both In-Place Upgrade Task Sequences as well as Feature Update deployments.
Most of the errors that I have seen when upgrading are related to different criteria not met.
To find compliance issues, you can and should do the following:
- Use Desktop Analytics to find non-compliant applications or drivers
- Contact vendors to see if they are ready for the next version of Windows 10
- UAT testing of applications
Some of the things you need to check:
- Hardware is compliant
- Drivers are compliant
- Applications are compliant
The Configuration Baseline in SCCM
What is a Configuration Baseline in SCCM?
A Configuration Baseline in SCCM consists of one or a combination of the following:
When creating Configuration Baselines in SCCM, you want to make them as modular as possible, so each Configuration Item that is included can easily be removed and new ones added as the requirements change.
For more information about SCCM Configuration Baselines, refer to Microsoft Docs: https://docs.microsoft.com/en-us/sccm/compliance/deploy-use/create-configuration-baselines
What should be included in the Configuration Baseline?
The following Configuration Items should be part of a Windows 10 Readiness Configuration Baseline:
- Driver version
- Application version
- Cleanup of Software Distribution folder
- Free space
- Latest Servicing Stack Update
For more information on how to configure this Configuration Item, refer to my previous blog post.
If there are compatibility issues with an old version of an application, we need to check this.
The collection structure in SCCM
What is a compliance collection?
The reasoning behind using compliance collections is that we can be sure that machines that are not compliant are targeted.
Fewer errors = Fewer headaches.
A compliance collection should include the following:
- Devices should already be running Windows 10
- Devices that are compliant with the Baseline
- Latest Servicing Stack installed
A compliance collection should exclude the following:
- Devices that are part of an Exclusion collection
You should also configure this collection with a limiting collection containing only Windows 10 machines as we are only targeting devices for the upgrade to new builds.
What are exclusion collections?
Some devices might need to be excluded for different reasons. I would suggest placing these machines in an AD group,
Use Configuration Baselines in SCCM together with compliance to control your path to new Windows 10 builds.
Follow the steps described above, and if you have any questions, feel free to reach out to me.