Overview of the Advanced Software Deployment Features

The Quick Install operation demonstrated in previous chapter is just the simplest way to deploy software, but in many cases you need to use more advanced deployment features. In this chapter, you can find a brief overview of the available features. A more detailed description of every feature can be found in the corresponding chapter of this manual.

Grouping PCs Using Collections

When deploying software, you need to define the target PCs where the software will be deployed. When deploying software using the Quick Install operation, it's possible to just select particular PCs on the Network view. In practice though you will face more complicated cases, for example, when it is needed to repeat different deployments in the same group of PCs multiple times, or when you need to upgrade software on all the PCs where the previous software version is installed. In such cases, it's very difficult or practically impossible to select target PCs manually, so Remote Installer introduced the concept of collections, which allows you to group and select target PCs easily.

EMCO Remote Installer displays collections in the Network view under the corresponding node, so you can create collections to suit your needs and then use them in remote operations to target the required PCs. Every collection can include static machines, machine queries and filters.

For instance, if you need to repeat deployment operations multiple times on the same PCs, and it's hard to select the same PCs over and over again, you can create a collection and add the required PCs to the collection as static Machines Pic 1.

Creating a collection with a static Machines

Pic 1. Creating a collection with a static Machines

Sometimes the set of PCs isn't fixed and can change over time. For example, if you manage a particular organizational unit (OU) in a domain and need to deploy software to all PCs in the OU, adding the required PCs to the collection statically makes little sense, because the set of PCs in the OU may change over time. In that case, you can add a machine query to a collection that returns the actual set of PCs based on the defined condition Pic 2.

Creating a collection with a Machine Query

Pic 2. Creating a collection with a Machine Query

Finally, you can filter the PCs defined by the static Machines list and the Machine Queries using the required criteria defined in a Filter. For example, you can select only the PCs that have a particular OS and/or software installed Pic 3.

Configuring a collection with a Filter

Pic 3. Configuring a collection with a Filter

Just to summarize the above, a collection defines a group of target PCs that can be configured using the following objects:

  • A set of static Machines that you can select in the UI.
  • A set of Machine Queries (available in the Professional edition only). A query is a logical condition that allows selecting the required PCs in a workgroup/domain based on the PC names and names of organizational units where such PCs are located.
  • A Filter (available in the Professional edition only) that is used to filter out the PCs reported by Machine Queries and static Machine definitions. In the Filter, you can use logical conditions that operate with the OS and software inventory information of remote PCs.

As you can see, you can combine configurations of static Machines, Machine Queries and Filters to create configurations of any complexity. If you define complex conditions to configure Machine Queries and Filters and then use the collection to target the required PCs in a deployment operation, Remote Installer executes Machine Queries and Filters first to get the up-to-date set of target PCs satisfying the defined conditions and then performs a remote operation on those PCs.

More detailed information on this topic is available in the Collections chapter. Read it to learn how to preview collection results, use collection snapshots and familiarize yourself with other advanced features.

Creating Reusable Software Bundles

When deploying software remotely, you need to configure its deployment options. For example, for an EXE installation, you need to specify silent deployment parameters or an answer file, as well as optional pre- and post-install actions. Different installations have different options, so if you need to repeat the same installations multiple times on different groups of PCs, it is convenient to configure all deployment options only once and then simply to reuse them.

EMCO Remote Installer allows you to create software bundles to save the deployment configuration, reuse it and exchange it with your colleagues using the export and import features.

A bundle includes install, uninstall and repair packages that provide configurations of corresponding actions for specific software. For example, if you need to manage Adobe Reader, you can create a bundle for it and provide the configuration of install, uninstall and repair operations in its install, uninstall and repair packages. Later, when you, for instance, need to install Adobe Reader, you can merely select the bundle, and its install configuration will be used in the remote install operation automatically. Thus, you can just execute the operation without configuring the installation options.

To create a bundle, you don't need to configure all its install, uninstall and repair packages. For example, if you only plan to install software, you can configure just the install package. Other packages can be configured later, if required. Configuring a package in a bundle is identical to configuring the corresponding operation. For instance, if you need to create an install package that configures the deployment of an EXE installation, you should specify a path to the EXE installation file, its silent deployment options and optional pre- and post-install actions Pic 4. In another case, if you need to create an uninstall package for an MSI, you should only specify its product GUID because this is the only parameter required to uninstall an MSI.

Configuring a software bundle

Pic 4. Configuring a software bundle

Bundles can describe complex software configurations. For example, you can configure a bundle to deploy different installation packages on x86 and x64 platforms. Also, if you need to deploy multiple software packages, you can create a bundle group that includes multiple bundles.

You can learn more about bundles in the Software Bundles chapter. It explains how to create and use bundles and provides information on exporting and importing bundles and bundle groups. The Deployment Packages chapter contains more information on configuring the deployment operations. You can read it to learn how to configure pre- and post-install actions, deploy different packages on different platforms, and use MSI transforms and other advanced features.

Using the Advanced Deployment Operation

When performing the Quick Install operation, you are limited to using only the basic deployment features and you can deploy only single software to a selected set of static PCs. If you need to use the advanced deployment features, you should perform the Deploy Software action, which is available on the Ribbon and in the context menu of different views.

After initiating the Deploy Software operation, you are prompted to specify the deployed software and the target PCs. The main difference from the Quick Install operation is that the Deploy Software configuration allows you to use software bundles as deployed software and collections as target PCs, so you have practically endless deployment options based on all the features provided by bundles and collections. It's important that the Deploy Software operation configuration consists of two simple steps only, so you can configure and execute the operation quickly and easily Pic 5.

Configuring of the Deploy Software operation

Pic 5. Configuring of the Deploy Software operation

In general, Deploy Software is meant to be used as the main software deployment operation. You can use Deploy Software to install, uninstall and repair software on remote PCs. Using this operation, you can deploy multiple software packages at once and deploy different installations on the Windows x86 and x64 platforms. You can re-use software bundles configured by your colleagues and deploy software on dynamic groups of PCs, for example, on PCs that run a particular Windows version and/or on PCs with specific software installed.

You can learn more about different deployment operations in the Deploying Software chapter. It explains the differences among the available operations and shows how to configure them.

Scheduling Remote Operations and Re-Executing Failed Tasks

If you need to repeat the same remote operation multiple times, you can create a task that can be executed either manually or automatically on schedule. For example, if you need to automate the software audit, you can create a recurrent software scanning task that will be automatically executed by Remote Installer on daily basis. If required, you can create tasks for any remote operations such as software scanning, software installation, uninstallation and repairing.

It is possible to create tasks in a commercial edition of the program only. The Free edition doesn't allow creating tasks.

Remote tasks are managed in the Tasks and Schedule view where you can see the list of existing tasks and create new and recurrent ones Pic 6. The task configuration is similar to the configuration of a remote operation, so, for example, to create a software scan task, you need to configure a set of target PCs, and to configure a deployment task, you need to configure the deployed software package and the target PCs. Once a task is created, you can execute it with no additional configuration steps and then check its execution results.

Remote tasks configured on the Tasks and Schedule view

Pic 6. Remote tasks configured on the Tasks and Schedule view

If you need to automate a task execution, you can create a scheduled task or a recurrent task. To create a scheduled task in addition to the standard task settings, you should specify the task execution date and time. To create a recurrent task, you need to configure its execution time and recurrence options, for example, to execute a task daily, or monthly, or on the selected days of the week, etc Pic 7. The scheduled and recurrent tasks are displayed in the schedule area, so you can see when the tasks will be executed.

Configuring the task recurrence options

Pic 7. Configuring the task recurrence options

Another important aspect of using tasks is that tasks can be executed again on the target PCs where the task execution previously failed. For example, if you execute a software deployment task and some of the target PCs are tuned off, the task will fail on such PCs. You can easily repeat the task execution on the failed PCs by selecting the corresponding option in the task's context menu, so, eventually, the software will be deployed on all target PCs after a few iterations.

You can learn more about tasks in the Taks and Schedule chapter, which contains information on creating different types of tasks, scheduling them for automatic execution, configuring recurrence options, etc.