Deploying FlexApp Packages To/From AWS S3 using ProfileUnity 6.8

As you may very well know, one of the new features of ProfileUnity 6.8, is the ability to save and host FlexApp application packages on object-based cloud storage including AWS S3, Google Cloud, and Microsoft Azure.  Perhaps this points to a measure of shortsightedness on my part, but this is the feature I was most looking forward to seeing in action.

In regards to the actual implementation of creating and running S3-based FlexApp packages, I don’t want to say that I was surprised, but I was extremely pleased to see that there was really nothing to it.  Though I was prepared for a caveat or two, creating, storing, and executing FlexApp packages to and from S3 DID NOT add any complexity to the packaging or assignment process.

Creating a FlexApp Package for AWS S3

  1. As you normally would when creating any FlexApp package, revert your packaging VM to its “clean state” and then launch the FlexApp Packaging Console.
  2. On the Create a Package screen, specify a Package Name, Installer Location, Size, and Disk Type as you have done before.  But to “cloud enable” a FlexApp package, you will need to set the Package Type, Cloud Credentials, and Cloud Storage Location options.
    • Package Type – Cloud
    • Cloud Credentials – use the Console Credentials created when configuring ProfileUnity to store User and Configuration data on S3. As an FYI, I checked with Liquidware support to see if there was a specific IAM policy to support FlexApp on S3 and was told to use the Console credentials as they provide the ability to create, modify, and delete FlexApp packages
    • Cloud Storage Location – the path of the S3 bucket in which the FlexApp package will be created and stored


  3. With the appropriate options set, click Create to begin building your FlexApp package.
  4. Repeat the same FlexApp packaging processes as before: install the application and when that is complete, click Finish and Save on the Create a Package Results screen.
  5. With the save process complete, your S3 based packages, along with several pre-built FlexApp packages provided by Liquidware, will be displayed on the Package Inventory screen as shown below.


  6. Open the ProfileUnity Management Console to edit the FlexApp DIA settings of your ProfileUnity configuration.  Drag the desired FlexApp packages from the Library to the FlexApp Packages to Install heading and click Save.  Notice the flexibility in that you can include “local” (stored on internal-only SMB shares), your own S3 based, or Liquidware pre-build FlexApp packages on a single DIA rule.


  7. Finally, deploy the configuration and then test the applications on your desktop.



The real beauty of using cloud-based object storage for FlexApp packages is that though I have shown its capabilities with AWS WorkSpaces and S3, its certainly not limited to AWS WorkSpaces or AWS S3 deployments.  Use it with Windows Virtual Desktops running on Azure, use it with Citrix and VMware Horizon desktops running on-prem or in the cloud, deploy a machine in GCP and access your FlexApp packages from an AWS S3 bucket, use it on your physical workstations, GO NUTS!!…though this isn’t an official recommendation.

Messing around on my own, I installed the ProfileUnity client on an old, physical server barely able to run Server 2008R2 and was able to access some of the FlexApp packages stored on S3 that I packaged using Server 2016.  Granted, I feel confident saying this would never be a production use case but I’m using it as an example to display the flexibility that ProfileUnity/FlexApp provides you in regards to delivering applications to diverse use cases.

Leave a Reply

Your email address will not be published. Required fields are marked *