The following article is provided as a reference to the following Use Case as described by one of our customers:
We are trying to deploy an upgrade using the Managed Software Delivery. However, we would like to make use of the Dependency Tasks in order to uninstall any existing older versions of the software. Unfortunately, testing on a machine that already has the correct version has shown that when a Dependency Task is defined, the software delivery continues even when the detection status reports 'Detected'. This causes behavior outside what we assumed the delivery sequence should follow.
We are of the understanding that the Managed Software Delivery should run in the following sequence:
1. Detect if software exists or is at the correct version – stop if detected or proceed if not
2. If defined, perform any items in the Dependency Tasks section
3. Download the package
4. Execute the installation
5. If defined, perform any items in the Service Pack and Update Tasks section
What seems to happen instead when either a "Dependency" Task or "Service Pack and Update" Task is defined (#2 or #5), is the delivery proceeds regardless of whether the Detection Rule has already been met. Logically, this does not seem to be proper behavior. We would expect the delivery to terminate as soon as the detection returns positive.
What we have seen from the agent logs is that the first instance shows a Dependency Task running even when the Detection Status is Detected. After I removed the Dependency Task, the delivery stops as intended when the detection is positive.
Steps:
1. When you create a Managed Software Delivery, add a task under the Dependency Tasks or Service Pack and Update Tasks and you will see that the delivery will continue even if the detection check is Compliant.
ITMS 8.6, 8.7
The following explanation is provided as a reference on how things behave depending on the changes introduced on recent releases.
Managed Delivery policy is created for new latest Software version and we have option "Automatically upgrade software that has been superseded by this software".
Other previous versions of this Software, will show message in Managed Delivery policy that there is a newer version of this Software.
Note:
(If Customers are using 8.5.x or 8.6.x ITMS, then they need to manually re-save all existing MD policies which are affected by new superseded SW. In our ITMS 8.7 release there is no need to manually re-save MD policies, since there is a global option available in main Managed Delivery settings policy)
Now if Managed Delivery policy arrives with latest version of software package and it has enabled "Automatically upgrade..." then we can see MD policy contains detection checks and uninstallation command lines for all superseded software packages by this new Software.
As result, it detected old version, uninstalled old and installed the latest