Video Screencast Help
Search Video Help Close Back
to help
New in the Rewards Catalog: Vouchers for "Symantec Technical Specialist" and "Symantec Certified Specialist" exams.

SVS Integration with Notification Server - Part 4: Sequential Tasks

Updated: 29 Jul 2010
Joel Smith's picture
0 0 Votes
Login to vote

Sequential Tasks extend functionality available in SVS by allowing multiple executions to be linked. This sequence of executions can also be made dependent on successful execution of previous items. Powered by the Software Delivery Task Synchronization Agent, this requires integration into Software Delivery Solution as covered in Part 3 of this series. Use Sequencing to rollout multiple core virtual applications with a single task, or group a series of maintenance actions.

Introduction

Please reference Part 3 of this series for information on how to integrate (import) SVS Packages and Programs into Software Delivery Solution. The Sequential Tasks will reference one Program and the associated Package for each line item, thus import all Programs to be used for the given packages. Once these steps have been completed, they can be utilized in a sequential Task. Sequential Tasks will enable sequenced rollout of actions, whether importing, activating, resetting, etc your Virtual Software.

Sequential Tasks

This section touches on the basics of Sequential Tasks for reference in the subsequent segments. Sequential tasks are controlled by the Task Synchronization Agent, passing the specific execution items directly to the Altiris Agent (component AeXSWDAgent.dll) at execution time. This ensures that the dependencies and execution order are enforced.

Required Components

For Sequential tasks to successfully deploy on target systems, the following components are required.

  • Software Delivery Solution installed and licensed on the Notification Server
  • Altiris Agent with Task Synchronization Agent installed on all target systems
  • SVS Agent install on all target systems
    Note: This can be the stand-alone SVS agent or the agent rolled out through Software Virtualization Solution installed on the Notification Server
  • A working VSA file located at a reachable location from the Notification Server
  • Packages with applicable Programs created for all SVS VSPs within Software Delivery Solution (not the SVS Solution component).

Using Sequential Tasks

In the Sequential Task user interface line items are added as Program /Package combinations. The sequence of lines can be from a single package (VSP) or from multiple ones. Each package item references one of the Programs available. See this screenshot for how the UI appears:

The Sequential Task, like any other Notification Server based policy or task references one or more collections containing the systems to target with the task. For more information on Sequential Tasks please see this Juice article: Getting the Most out of Software Delivery Sequential Tasks

SVS Sequencing

Like any Sequential Task, the order and dependencies are vital for proper Task execution. Any task that depends on the successful execution of a previous one should have that dependency configured in the Task. Often these types of Tasks are chosen for rolling out complex application installs that include components, patches, and other separate installs that plug into that application's environment. With SVS you can already have much of this contained within the VSP directly, but in cases where the specific components may differ, Sequential Tasks can simplify the rollout.

Another useful ability is to blend with other, non-virtual application items. In the case of a job that rolls out the core application to a computer for a new user, it could include a combination of VSP imports, activations, and scripts or other true application installs (for example and ActiveX control suite needed to access the company's report Web console). Scripts can also be used to succeed or fail a subsequent task if the computer doesn't meet the prerequisites.

Possible use-cases include:

  • Core Virtual Application Rollout: Microsoft Word, Excel, Outlook, ActiveX controls (not SVS) for web applications, Time zone application, Anti Virus, etc...
  • Executing a chain of actions against one or more Virtual Application: Microsoft Office, Reset (force) > Script checks status > if bad Deactivate > Delete > Import > Activate
  • Deactivate Active VSPs > Have a deactivate (force) command for every layer, with no dependency so all can run even if a layer does not exist on the target system

Execution Order

Depending on the purpose of the sequential task, the execution may or may not matter. There are some items to be aware of when you are setting up the order. Note that these may or may not affect the rollout depending on when and how it is scheduled.

  1. Download Order -- When the Sequential Task arrives at the Altiris Agent, it also receives all the information for each subtask and the associated packages. The download occurs from the largest package to the smallest. If the execution is time-sensitive, set the order of execution from smallest to largest.
    • Example: If Office and associated plug ins, add-ons require immediate import and activation,
  2. Required Reboots -- If reboots are required, repressing reboots until the end is the best option unless otherwise required. Reboots can usually be stopped via the command-line arguments for the given executable.
Best Practice: Stage your sequential task. This is accomplished by setting up and enabling your sequential task in advance of the execution schedule. This will allow the target systems to download all applicable files and packages prior to the execution. Latent downloads can cause delays in the Sequential Task execution. This can also cause other standard tasks to execute in the middle of a sequential one, since the Task Synchronization Agent passes the execution request at the time of execution.

Dependencies

When setting up the sequence of executions (actions), any previous line-time can be selected as a dependency for a give item. This can be done by a chain (selecting the previous item in the list), or on a core application installed at the beginning for all subsequent items. Subsequent tasks cannot be selected (for obvious reasons. You can't depend on an execution that hasn't happened yet!). You can also select multiple dependencies via the check boxes provided.

The user interface gives a link to any added Package and Program line item, defaulted to: -- No Dependency --. Click on the sentence to bring up the Program Dependency Selector. This selector targets only the line-item the link belongs to and will not affect other dependencies in the Sequential Task. The following screenshot shows the user interface when interacting with the dependencies:

Without dependencies, failed executions will not halt the Sequential Task execution. Note that this does not mean a hung or pending execution will allow a subsequent item to install. It's only when execution is complete that the task will move on to the next one.

Best Practice: Mark your dependencies only where needed. Remediation for a failed execution will be easier if only one item failed out of all the execution items, instead of trying to pick up the execution where it left off. Also note that multiple dependencies will complicate the task, so only check those items that are truly a prerequisite for the execution in question.

SVS Sequence Sample

The following example provides the theory behind integrating SVS and Sequential Task into the core application rollout process.

Core Application Rollout Task

As part of the new machine process, a company employs Deployment Solution to image new systems. When the imaging process is complete, the Altiris Agent loads on startup and downloads and installs all applicable sub agents. Patch Management applies necessary patches as part of the process. Included in the install are the Software Delivery Solution Agent and the SVS Agent.

A series of Software Delivery Packages containing SVS import and activate commands have been created. Additional Software Delivery Packages have also been created for additional items outside of the Virtual Software sphere. A collection containing machines with both the Software Delivery Solution Agent (AeXSWDAppReqAgent.dll) and the SVS Agent has been created. The following line items have been added:

  1. Import and Activate Adobe Reader 8 (SVS)
  2. Import and Activate Microsoft Word 2007 (SVS)
  3. Import and Activate Microsoft Excel 2007 (SVS)
  4. Import and Activate Microsoft Outlook 2007 (SVS)
  5. Custom Internal Web Application ActiveX Control applied
  6. Apply PCT Package containing User's settings, desktop links, for Microsoft Applications
  7. Install Symantec Anti Virus client and Firewall with install script with correct Corporate data
    • Post Execution as part of the Program > Reboot

The dependencies for the above example are as follows:

  1. No Dependency
  2. No Dependency
  3. No Dependency
  4. No Dependency
  5. Dependent on #2
  6. Dependent on #2, #3, #4
  7. No Dependency

When complete, the machine is ready to be deployed as a replacement machine for the given user.

Best Practice: Test every rollout! Before creating a series of Packages and Programs to immediately insert into a Sequential Task, test each one independently to ensure it functions as you expect. Once each execution has been independently tested, add them to the sequential task and test the combination. Using this method, unfortunate issues can be completely avoided when rolled out into Production. Use the Software Portal for easy test-application (see Part 5 of this series for additional information) to specific machines.

Conclusion

Sequential Tasks can create automated, large Virtual Software rollouts. Use the information provided here to create encompassing, core Tasks to rollout multiple required Virtual Software activations, or combine maintenance steps for easy management. Though the configuration takes a little more effort, once complete simple Collection assignments or the user-initiated Software Portal access, users will quickly have what the need.

SVS Integration with Notification Server - Part 3: Software Delivery Extends Functionality

SVS Integration with Notification Server - Part 5: The Software Portal