Have you ever needed to deploy software but you have to ensure that all dependencies have been met to ensure a successful outcome? Did you know that FootPrints Asset Core has that functionality built in? In this article you will learn the process to create a package that will use dependencies.
Scenario: You must deploy a new software package to your HR staff that requires .NET Framework v4.5. The problem is that half of that department’s computers already have .NET Framework v4.5 while the other half does not have it installed due to other software requirements and previous image builds.
FPAC has numerous ways to solve for this scenario. I am going to present just one of these ways. It does not make it better or worse than other ways. It will just provide you the understanding of the capability of FPAC.
For this example I will create two packages. One for .NET 4.0 and another for .NET 4.5. I will then deploy the .NET 4.5 version with a dependency to have run .NET 4.0.
Once both packages have been created and tested separately, edit the Operational Rule for .NET Framework v4.5. and set the dependency for .NET Framework v4.0.
There is no limit to the number of dependencies that can be added. The “Sequence” establishes the order in which they will run.
During the assignment of the Operational Rule to either a single device or a device group a message box will appear.
Click “Yes” to use the automated process of assigning the dependencies.
The primary Operational Rule will validate if the dependency has already successfully run and if it has not then it will wait until the Operational Rule(s) listed in the dependency tab has successfully completed.
FPAC will then run the dependent Operational Rules in the sequence order listed in the dependency tab.
Once the Operational Rule has completed successfully the dependency check will validate as completed and the primary Operational Rule will then be executed.
Primary Operational Rule executing.
Dependencies can be any Operational Run. It does not have to contain a software package. If you need to ensure that one or more Operational Rules have “successfully” completed prior to another Operational Rule running then this solution will provide the solution.
Here is a little trick:
When assigning software to a device group and you do not know if some of the pre-requisites have been met then use the native functions found in the “Packager” Module. By using the “Files to be Absent” function the script will validate that the software has not been previously installed.
If that file is not on the target device then the installation will proceed and the Operational Rule will show as “Successful”. However, if the file is found then the Operational Rule will not proceed and the Operational Rule will show as failed. This will prevent the dependency process from completing as planned. The solution is to add a value to the “Return Code” field.