Updating, Editing and Maintaining Containers

Upgrading Applications in Containers

To apply new versions, updates, hotfixes or service packs to an application use the Container Editor, watch this video to find out how. The Editor supports reboots, enabling you to include an application update that requires a reboot during install.


  1. Open the Package Editor, c:\programdata\cloudhouse\packager\tools\Cloudhouse.Package.Editor.exe.
  2. Select 'Open an existing Container', browse to the Container you want to update.
  3. Click 'Update' to start the snapshot.
  4. When prompted, click 'Next' to install the application patch, or update to the latest version.
  5. Click 'Next' to update the Container.
  6. The 'Files' tab enables you can review the files and folders added to, or removed from, the Container. All changes will be displayed by default, the following filters can be turned on/off
    • 'New' reveals all files added to the Container.
    • 'Modified' reveals all files that changed by the update.
    • 'Deleted' reveals all files that were removed during the application update.
  7. The 'Registry' tab enables you can review the registry keys and values that have been added to, or removed from, the Container. All changes will be displayed by default, the following filters can be turned on/off
    • 'New' reveals all registry entries added to the Container during the update.
    • 'Modified' reveals all registry entries that changed during the update.
    • 'Deleted' reveals all registry entries that were removed during the application update.
  8. Click 'Save' to save the Container.
  9. Note, if you close the Editor without saving then changes will be discarded.

Programs and Executables

To modify the Programs started by a Container's run conditions 

  1. Open the Cloudhouse Container folder in Windows Explorer
  2. With an XML text Editor open Programs.xml
  3. Each <Program> represents an executable within the package.


Run Conditions

Run Conditions specify the commands that will be executed, either by short cuts, or by other user actions.

  • Initial, is the default action, and will run if no other Run condition have been specified.
  • Always, will run even when other run conditions are specified.
  • Custom Run Condition, these will only run when specified by the run Tool. For example Run1, RunAfter, RunBefore

If the Programs.xml file contains run conditions with the same name, then Cloudhouse.Container.Run.exe will execute both commands.

Multiple run conditions can be specified, for example 

Cloudhouse.Container.Run.exe /runconditions RunBefore,Run1,RunAfter


Shortcuts

To modify the Shortcuts installed by a Container

  1. Open the Cloudhouse Container folder in Windows Explorer.
  2. With an XML text Editor open Shortcuts.xml.
  3. Each <Shortcut> section represents a Shortcut that will be created during deployment.
  4. The required /RunConditions can be found in Programs.xml.


File Type Associations

To modify the File Type Associations installed by a Container

  1. Open the Cloudhouse Container folder in Windows Explorer.
  2. With an XML text Editor open FileAssociations.xml.


Re-directions

To modify the file and registry re-directions used by the Container

  1. Open the Cloudhouse Container folder in Windows Explorer
  2. With an XML text Editor open Redirections.xml
    1. Use ExactMatch to redirect from one file to another
    2. Use FolderMatch to redirect an entire folder from one location to another
    3. Use KeyMatch to redirect Registry Key/Values


Add/ Remove Programs Entries

Containers  register the applications they deploy with Window's Add /Remote  Programs, default values are provided, and these can be changed by  editing the CHMetadata.json file to reflect desired names, for example  the name of the company who created the Container could be specified as  the Vendor, or the name of the publisher of the software that is  included in the Container.

  1. Open the Cloudhouse Container folder in Windows Explorer
  2. With an text Editor open CHMetadata.json, set the desired Name, Vendor for the application.


Configuring CHMetadata.json

{
    "PackageId": "IE_Java_Demo_4864",
    "IsTelemetryEnabled": "true",
    "TelemetryApiUrl": "https://qatelemetry.cloudhouse.com/telemetry",
    "Icon": "icon for container exe",
    "Name": "Name of the Application that appears in the Add/Remove details page",
    "Publisher": "Name of the Publisher as it should appear in Add/Remove Programs",
    "Version": "Version of the entry that appears in Add/Remove Programs"
}

Adding a Pre or Post Deployment Task

Install

The Container is copied to the deployment directory first, and then each program under the <Programs> element will be executed, so that MSIs, driver files or other pre-requisites can be deployed from the Container. 

Uninstall

Each program under <Programs> element will be executed before the Container is uninstalled from the machine.

Programs will be executed ordered by the "Order" attribute. Without the "Order" attribute, programs are executed in the order of appearance.

  1. Open DeploymentScript.xml in your container directory or create it if it does not exist.
  2. Contents should look as below if it has not been edited.
  3. Un-comment contents of Install or Uninstall tag as required.
<Deployment>
    <Install>
    <!--
      <Programs>
        <Program Order="0">
           <ProcessWindowStyle>Normal</ProcessWindowStyle>
           <Path>Program2</Path>
           <Args>arg2</Args>
           <WaitCondition TimeoutInSeconds="0">None</WaitCondition>
        </Program>
      </Programs>-->
    </Install>
    <Uninstall>
      <!--
      <Programs>
        <Program Order="0">
          <ProcessWindowStyle>Normal</ProcessWindowStyle>
          <Path>Program2</Path>
          <Args>arg2</Args>
          <WaitCondition TimeoutInSeconds="0">None</WaitCondition>
        </Program>
      </Programs>-->
    </Uninstall>
</Deployment>




Was this article helpful?

Can't find what you're looking for?

Contact Support