This article is for beginners who want to learn how to update SCCM application content on distribution points. I will show you the right way to update application content in ConfigMgr.
One of the most used features of SCCM or ConfigMgr is the application deployment feature. Obviously to deploy an application, you first create the application in SCCM.
If you are new to adding new applications in SCCM, you must go through the create applications in Configuration Manager article.
When you create an application, you must distribute the application content to distribution points. Typically, you distribute content to distribution points so that it’s available to clients.
When you make changes to the application, updating the content ensures the latest changes are replicated to the distribution points.
Table of Contents
Difference between Distribute Content and Update Content in ConfigMgr
A common question asked is how is distributing application content in SCCM different from updating the content. When you distribute the application content, the entire content is sent to distribution points. Whereas when you update content, it updates with only the changed files on distribution points.
When you distribute content, Configuration Manager stores content files in a package, and then distributes the package to the distribution point.
Remember this, you distribute the content when you create a new application in SCCM or if you have manually removed the application content from distribution point. Whereas update content should be used when you have made changes to the application. This includes changes to install commands, detection methods or any other properties of the application.
What does Update Application Content in SCCM do?
When you update SCCM application content, the following process occurs in the background.
- The site copies the content files from the original package source location to the content library on the site that owns the package content source.
- It then increments the package version. The package version for applications is always 1.
- After you update the content for an application deployment type, Configuration Manager creates a new content ID for the deployment type, and the package references the new content ID.
- Each instance of the content library on site servers and on distribution points updates with only the changed files.
Steps to update SCCM Application Content
To update application content in SCCM (ConfigMgr), perform the follow steps.
- Launch the Configuration Manager console.
- Navigate to Software Library\Overview\Application Management\Applications.
- Select the Application and in the bottom pane, click Deployment Types.
- Now right-click the application deployment type and select Update Content.
When you update any application content, you get a warning box.
Are you sure that you want to refresh content for this deployment type? Refreshing content will create a new revision of this application and may cause clients to be updated.
Click Yes to begin the content update process.
Once the content update for an application is complete, you get confirmation box. Update content completed successfully. Click OK to close it.
Log Files to Monitor the Update Content Process in SCCM
After you update application content, the Configuration Manager log files are the best way to monitor the update process. Using the ConfigMgr log files, you can monitor the flow of the content update process.
After you update the content for an application deployment type, Configuration Manager creates a new content ID for the deployment type, and the package references the new content ID.
The log file that you must use to monitor the application content update process is distmgr.log. This log file is located on the site server. Open this log file with CMTrace or OneTrace advanced file viewer.
I have pasted the important lines from distmgr.log. Notice that the Package Action is 1. Successfully created/updated the package server in the data source confirms that application content has been updated successfully on distribution points.
Found package properties updated notification for package 'IND00009' Adding package 'IND00009' to package processing queue. Started package processing thread for package 'IND00009', thread ID = 0x10A8 (4264) Processing package IND00009 (SourceVersion:3;StoredVersion:3) Start updating the package IND00009… CDistributionSrcSQL::UpdateAvailableVersion PackageID=IND00009, Version=4, Status=2300 Taking package snapshot for package IND00009 SMS_DISTRIBUTION_MANAGER Taking snapshot for content, Content_01008027-13e8-4309-b017-9a3f02c38279.1 from source The size of content is 49269 KB Writing package definition for IND00009 The size of package IND00009 is 49269 KBytes The source for package IND00009 has changed, or the package source needs to be refreshed Adding these contents to the package IND00009 version 4. Adding content, Content_01008027-13e8-4309-b017-9a3f02c38279 The Package Action is 1, the Update Mask is 32 and UpdateMaskEx is 0. Successfully created/updated the package IND00009 SMS_DISTRIBUTION_MANAGER Package has the update source package flag set. ContentLibrary package flag update for remote DPs will be skipped as this will happen during content transfer to the server(s). DP Thread: Attempting to add or update package IND00009 on DP CreateSignatureShare, connecting to DP SMS_DISTRIBUTION_MANAGER Copying content signatures for package IND00009 SMS_DISTRIBUTION_MANAGER Successfully created/updated the package server in the data source SMS_DISTRIBUTION_MANAGER Performing cleanup prior to returning. Currently using 1 out of 3 allowed package processing threads. DP thread for package IND00009 with thread handle 0000000000001104 and thread ID 4900 ended. All DP threads have completed for package IND00009 processing thread. Package IND00009 does not have a preferred sender. Package IND00009 is new or has changed, replicating to all applicable sites. CDistributionSrcSQL::UpdateAvailableVersion PackageID=IND00009, Version=4, Status=2301 StoredPkgVersion (4) of package IND00009. StoredPkgVersion in database is 4. SourceVersion (4) of package IND00009. SourceVersion in database is 4. Exiting package processing thread for package IND00009