A process attached to the account node manages product subscription, instantiaton, unsubscription and updating. See [[account_manager]] for details. In overview, the general install process is:
- Create a subscription node of type [[library.product.SubscriptionType]] which links to the product. This automatically derives a manifest for the subscription based on the Offer Manifest Items in the product.
- Use the Apply Deal Method on the deal to update the allowances and deal list on the subscription.
- Grant "use manifest" permissions to the primary user group of the account.
- Grant "grant use" permission to the subscriber, so that they can grant permissions to other groups.
- Create an additional grant_use manifest which allows the subscriber to grant the "grant use" permission.
- Import the product template into a suitable location.
- If there are any Inherit Subscription Manifests nodes, add an inheritance link from their equivalents in the imported template back to the subscription.
- Register the install with the subscription, i.e. add it to Instance List on the subscription. The version number of the product is also held on the instance list, to aid in updates.
- Run the post-install script if there is one.