Deployment Process
Last updated
Was this helpful?
Last updated
Was this helpful?
This page explains how Avonni Dynamic Components are stored within Salesforce and how you can easily deploy them between your different Salesforce environments (e.g., from a Sandbox to Production, or between developer orgs).
One of the key advantages of Avonni Dynamic Components is their portability. Because they are built and stored natively on the Salesforce platform, moving your custom-built components between organizations is straightforward using standard Salesforce deployment tools.
When you create and save a component using the visual Avonni Component Builder (the drag-and-drop interface), its entire definition – the layout, component configurations, data source details, interactions, styling – is stored as a record within a specific Custom Metadata Type (CMDT) provided by the Avonni Dynamic Components managed package.
(Think of each Dynamic Component you build, like "Enhanced Related List" or "Account Dashboard", as a single record in this special Avonni CMDT).
Using Custom Metadata Types for storage is what makes your components easily deployable. You are essentially deploying data (the CMDT records) that the installed Avonni package understands and renders.
The general process for deploying your Dynamic Components follows standard Salesforce practices:
Build & Test: Create, configure, and thoroughly test your Dynamic Component in a source environment (typically a Sandbox). Remember to Save and Activate the component within the Avonni Component Builder.
Identify Components: Determine which specific Dynamic Component definitions (i.e., which CMDT records) need to be moved to the target environment.
Choose Deployment Tool: Select your preferred standard Salesforce deployment method: Change Sets, Salesforce DX (SFDX), Ant Migration Tool, or third-party solutions like Gearset or Copado.
Include CMDT Records: Add the specific Custom Metadata Type records representing your Dynamic Components to your deployment package (e.g., add them to your outbound Change Set or list them in your package.xml
for SFDX). The relevant CMDT name will likely be similar to avonnidc__Dynamic_Component__mdt
(check your org's Custom Metadata Types for the exact name installed by the package).
Deploy: Use your chosen tool to deploy the package or Change Set to the target Salesforce org.
Verify & Configure in Target Org:
Confirm the CMDT records were deployed successfully.
Open the Avonni Components app in the target org to see your deployed components. They may initially be in a 'Draft' state and require Activation within the builder in the target org before use.
Use the Lightning App Builder to add your activated Dynamic Components to the desired Lightning Pages.
Create an outbound Change Set in your source org.
Under "Component Type," select "Custom Metadata Type".
Click "Add" and select the specific records corresponding to the Dynamic Components you want to deploy.
Add any other necessary dependent components (like custom fields/objects referenced, Apex classes called by interactions, Flows, etc.).
Upload the Change Set and deploy it in the target org.
Ensure your package.xml
manifest file includes the Custom Metadata Type for Avonni Dynamic Components. It will look something like this (verify the exact name Avonni_Dynamic_Component__mdt
in your org):XML
(Note: CMDT records are often retrieved/deployed via the CustomObject metadata type definition in package.xml) Alternatively, or for more granularity, you might reference the specific records within the CustomMetadata type entry if you only want to deploy certain components.
Use SFDX commands (sf project retrieve start
/ sf project deploy start
) to retrieve the CMDT records from the source org and deploy them to the target org.
Tools like Gearset and Copado typically support the deployment of custom metadata types and their associated records. Follow the specific instructions for your chosen tool, ensuring you select the Avonni Dynamic Component CMDT records for deployment.
Activation in Target Org: Deployed components often arrive in a 'Draft' state in the target org. You will likely need to open them in the Avonni Component Builder in the target org and Activate them before adding them to Lightning Pages.
Dependencies: Ensure any underlying components your Dynamic Component relies on (custom objects, fields, Apex classes called by interactions, Flows, etc.) are also included in your deployment or already exist in the target org.
Permissions & Licenses: Verify that users and administrators in the target org have the necessary Avonni licenses and permission sets assigned to use the builder and view the deployed components.
Managed Package Updates: Ensure both the source and target orgs are on the same (or compatible) version of the Avonni Dynamic Components managed package before deploying component definitions.
Avonni Dynamic Components are designed for easy deployment across Salesforce environments. By storing component definitions as standard Custom Metadata Type records, you can leverage familiar tools like Change Sets and SFDX to manage your application lifecycle effectively