Home > All, Citrix, Configuration Manager, Microsoft, Provisioning Services, XenApp, XenDesktop > Deploying #SCCM 2012 Packages and Programs with the #Citrix Connector – #DaaS, #XenDesktop

Deploying #SCCM 2012 Packages and Programs with the #Citrix Connector – #DaaS, #XenDesktop

This is a really good blog post by Christopher Fife, it touches on a couple of scenarios and explains the solution to how best you would accommodate the solution to them. Good work Christopher! 🙂

The Citrix Connector 7.5 for System Center 2012 Configuration Manager, also known simply as the Citrix Connector, integrates XenApp and XenDesktop 7 with Configuration Manager 2012 (CM). The Connector streamlines use of Configuration Manager deployment technology to automate Citrix server and desktop image management. The Connector leverages the new Application/Deployment Type (App/DT) feature of Configuration Manager 2012 to orchestrate deployment to the right images at the right time. Administrators can optionally use the App/DT model to deliver the actual application publications.

Many of our customers are still early in migrating to the App/DT model. They are still leveraging their extensive library of Packages and Programs developed with great care over many years. These Citrix customers want to know how to use all the goodness of the Connector with these Packages and Programs. So, if you are interested in using the Citrix Connector to deploy Packages and Programs to your Citrix servers and desktop, this post is for you.

In many cases deploying Packages and Programs with the Citrix Connector is a straight forward process familiar to any CM administrator. However there are two scenarios in which specific actions are required to avoid unintended consequences when deploying Packages and Programs with the Citrix Connector.

Scenario 1 – Deploying to Image Managed (MCS or PVS) Citrix hosts

The first scenario that requires special consideration is deploying Packages and Programs to VMs created with Citrix XenDesktop Machine Creation Services (MCS) or Citrix Provisioning Services (PVS). As an administrator, you want to deploy software on the master image of a Machine Catalog and rely on XenDesktop/XenApp to clone worker VMs. Deploying directly to VM clones wastes compute, storage, and network resources because each clone will discard the changes on reboot.

Thus, the Citrix Connector is optimized to only install applications on the master image of a Machine Catalog while entirely skipping application installation on the clones of the master image. The key enabler that allows us to selectively install applications is a CM client policy that puts a 3rd party agent like the Citrix Connector in charge of when to install application or updates.

Here’s the problem. CM client policy does not stop the installation of Packages and Programs or Task Sequences; it only applies to the App/DT model and Windows Updates. This means that the Citrix Connector cannot prevent the installation of Packages and Programs on MCS or PVS clones, leading to unnecessary resource utilization.


Create a device collection that contains just the update device and deploy Packages and Programs to this device collection instead of the device collection created by the Citrix Connector.

Scenario 2 – App Publishing from the CM Console

The second scenario comes into play when using the CM Console to publish the Package/Program as a XenApp-hosted application. The Citrix Connector uses CM application detection logic to ensure that the application is installed before publishing it to Citrix Receiver. This is to prevent an icon from appearing in Receiver before all the servers in a Delivery Group have the application installed.

Unfortunately Package/Program deployments do not have reliable, ongoing application detection logic. Consequently, this orchestration feature of the Citrix Connector cannot be supported when using the Citrix Application Publishing Wizard to publish apps from the Configuration Manager Console.

Solution 1

Use Citrix Studio to publish the application instead of the Citrix Application Publishing Wizard in the CM Console.

Solution 2

If you are using CM Application Catalog and want the Citrix hosted version of the installed program to appear there, you will need to create a new application with a Script deployment type and a Citrix deployment type. The Script DT supplies the application detection logic by looking for the application’s executable, while the Citrix DT creates the application publication in XenDesktop.


Solution Details


The remainder of this post is divided into two sections and will give specific examples of how to implement the solutions discussed above. The first focuses on image management and precisely targeting the program deployment at the update device for a Citrix device collection. The second section focuses on publishing the program installed by CM as a Citrix hosted app.

Solution for Image Management and Resource Utilization

As previously mentioned, the Citrix Connector cannot prevent the installation of Packages and Programs on pooled Citrix session hosts created with Machine Creation Service (MCS) or Provisioning Service (PVS). To prevent this potential inefficiency, a new device collection must be created that only contains the update device. There are 4 steps to accomplish this:

  1. create the new device collection,
  2. deploy the program to the new device collection,
  3. monitor for deployment success on the update device, and
  4. update the pooled Citrix session hosts with the updated image.

These steps are detailed below.

For background information about master image management with the Citrix Connector and the role of the update device, watch the Master Image Management video http://www.citrix.com/tv/#videos/11534 on CitrixTV.

Before you start, use the machine catalog properties to make sure there is a designated update device, the Update Method property value is “update device”, and the Update Device property value contain a machine name. This is a very important step. If an update device is not defined for a Citrix image managed device collection, the steps outlined below will result in a new device collection with zero members.

Machine Catalog Properties

Step 1: Use the Configuration Manager Console to create a device collection

  • In the Assets and Compliance section of the Configuration Manager Console, click the “Create device collection” action on toolbar ribbon.
  • On the General Page of the Create Device Collection Wizard,

  • Give the collection a name that is based on the parent collection (e.g. “XDsite1 \ MCS Win7 Desktops – MasterImage”)
  • Browse for the limiting collection, this is the parent collection created by the Citrix Connector that represents your XD machine catalog (e.g. XDsite1 \ MCS Win7 Desktops)

  • On the Membership Rules Page, click the Add Rule button and select Query Rule from the drop-down menu,

  • Name the Query Rule “IsMasterImage
  • Then click the Edit Query Statement button

  • On the general tab click the create “star” icon

  • Select the Citrix_VirtualDesktopInfo attribute class and the IsMasterImage attribute
  • The result properties can be <unsorted>

  • On the criteria tab, click the create “star” icon

  • On the Criterion Properties page, set the following values:
  • Criterion type = Simple Value
  • Where: Citrix_VirtualDesktopInfo – IsMasterImage
  • Operator: is equal to
  • Value: 1 (true)
  • Click OK to continue.

  • Click OK to continue

  • Click OK to continue.

  • Click Next to proceed to the Summary page

  • On the Summary Page, click Next to apply the settings to the new device collection.


  • Use the Update Membership action on the newly created device collection to apply the query and populate the device collection with the update device computer. When you finish you will have a device collection with a single member, the update device (see example below).


Step 2 – Deploy the Program

Next, deploy the Package/Program to the device collection created in the previous step. Program deployment is standard practice for experienced Configuration Manager administrators and is well documented on TechNet here. To make the process as automated as possible, we recommend that the deployment action is set to “install” and the purpose is set to “required” on the Deployment Settings Page of the Deploy Software Wizard.

Step 3 – Monitor Deployment for Completion

After deploying the software, monitor the deployment to ensure that it successfully installed on the update device in the targeted collection. The following TechNet article explains how to monitor software deployments http://technet.microsoft.com/en-us/library/gg682201.aspx.

A successful deployment is illustrated in the screenshot below. When the program deployment is 100% successful, proceed to step 4 and use Citrix tools to propagate the changes to the entire pool of Citrix session hosts.


Step 4 – Update Virtual Machine Instances with New Image

After the software successfully deploys on the update device, use the appropriate Citrix administrative console to propagate the changes to all the machine instances in the machine catalog.

Machine Creation Services

Use Citrix Studio to update the master image with the update device that received the Package/Program deployment. The following links provide the necessary details for this step.

Provisioning Services

Use the Provisioning Services console to promote the maintenance version of the vDisk which received the Package/Program deployment to the production version. The following links provide the necessary details for this step.

Solution for Application Publishing

The first section of this post covered…

Continue reading here!


  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: