Skip to content

Package Structure and Locations

Two things decide what you can change in a live Cloudhouse Alchemy Compatibility Package, and whether the change lasts: which part of the Compatibility Package you are changing, and which copy of it you are changing.

For the meaning of the terms used below, see Terms Used in This Section.

Package Structure

The Compatibility Package has two parts, and the distinction between them is firm. It is not a matter of preference or support policy: one part can be changed and the other cannot.

Part of the Compatibility Package What it holds Can you change it?
ProgData The application's own files. The layout mirrors the paths the application occupies on a normal installation, so an application installed to C:\Program Files\Example appears under ProgData\C\Program Files\Example in newer Compatibility Packages, or ProgData\Program Files\Example in older ones built before the drive letter was carried. Application configuration files live here. Yes. This is where a change that belongs inside the Compatibility Package is made.
The package root The top level of the Compatibility Package: the .xml and .clc configuration files, and the Cloudhouse programs that deploy and run the application. No. The configuration files here are covered by the package's licensing hash, so editing one invalidates the licensing tokens and the Compatibility Package stops working until Cloudhouse re-licenses it. Root changes come from us.

Note: Changing or replacing a file in an existing ProgData folder is straightforward. Adding a brand new file or folder under ProgData is different, because it may need a change to Redirections.xml before the application can see it. Redirections.xml is in the package root, so that part has to be done by Cloudhouse. Tell us before you add one and we will confirm whether it needs anything from us.

Package Locations

The Compatibility Package you deploy from and the copy that ends up on a machine are not the same thing, and the difference decides whether a change lasts.

Copy What it is What happens to a change made here
The base package The master, undeployed copy you keep and deploy from. It reaches every machine deployed from that point on, and survives redeployment.
A deployed copy What exists on one machine, created from the base package at the time it was deployed. It applies to that one machine only. It is lost when that machine is redeployed, updated or rolled back, and no other machine ever receives it.

Note: A change that belongs inside the Compatibility Package must be made in the base package, not only in the deployed copy on a machine. A change made only in a deployed copy is undone the next time that machine is redeployed, and no machine deployed afterwards receives it.

Related Pages