Let the platform do the work

Package Builder and Deployer

Overview

Sugar's Package Builder and Deployer is a robust and powerful tool for packaging customizations from one instance (e.g., development sandbox) and moving them to another (e.g., production). This can be done indirectly, by exporting and importing packages, or directly, by connecting to an instance via admin credentials. This guide will outline the tool, explain its use, and help you start using it.

It is important to fully understand this tool before pulling (i.e., downloading and installing) packages or making packages available for others to pull.

Prerequisites

There are some things to consider before using the Package Builder and Deployer:

  • Size limits apply when creating and pulling (i.e., downloading and installing) packages; if you encounter a size limitation, multiple smaller packages may be needed.
  • Both instances must be on Sugar 25.1 or higher for the pull functionality to work.
  • Packages created are valid for nearly all supported platforms, however, they will not be valid for any version lower than 14.0.

Setup

In the Setup tab, select the customizations and configurations you want in your package. If all categories are needed, consider creating multiple packages to avoid causing significant load times.
2025-03-21_11-13-48.png

The following categories are available to select from:

Once you have selected the configurations to package, click "Get Customizations".

Customizations

After selecting the configurations and customizations in the Setup tab, navigate to the Customizations tab. Click into each enabled tab (e.g., Dashboards), representing the categories you selected during setup, to select the items you want in your package.
2025-03-21_11-35-23.png

Each tab has columns that are unique to the corresponding category. Please take note of the following categories needing additional explanation:

Category Column Explanation
Layouts Client This column is pulled from configured API platforms within Sugar. The most common you will see are "base" (i.e., core Sugar) and "mobile" (i.e., the SugarCRM mobile app).
View This column shows where the layout is used (e.g., list view, edit view, record view).
Search Layouts Client This column is pulled from configured API platforms within Sugar. The most common you will see are "base" (i.e., core Sugar) and "mobile" (i.e., the SugarCRM mobile app).
Filters This column refers to code-level customizations, and "default" is typically seen.

Within each tab is a search bar and checkboxes. These checkboxes designate whether a field is included in the search; they do not change column visibility. At least one checkbox must be checked in order to search.

After selecting all the configurations and customizations you would like in your package, you have two options using the buttons across the top:

  • Download Package: Saves the package onto your device to upload it to another compatible instance using Sugar's Module Loader
  • Add to Local Packages: Adds the package to your Local Packages tab for others to pull from

Warning: If you navigate away from the Package Builder and Deployer, you will lose all unsaved changes (e.g., selections for a package).

Packages

The Packages section comprises three different tabs: Local Packages, Connection, and Remote Packages. The Local Packages tab shows all packages made available by clicking "Add to Local Packages" in the Customizations tab. It also includes other installed packages on your instance as well as packages uploaded but not yet installed via Module Loader.
2025-03-21_12-02-06.png

On the Connection tab, enter the URL and admin credentials of another Sugar instance to connect to that instance and pull packages from its local packages. If you attempt to connect with a non-admin user, there will not be any packages to pull from. Please note, each time you navigate to the Package Builder and Deployer you need to reenter credentials and reconnect as these are not saved after navigating away.
2025-03-21_12-05-13.png

The Remote Packages tab is available after successfully connecting to another instance via the Connection tab. You will know the connection is successful when the tab is available. On this screen, you will see the packages available to pull from the connected instance. Pulling a package downloads the package and installs it as well.
2025-03-21_12-29-04.png

On the Remote Packages tab, you may see an Upgrade button next to some packages. Please note that while this will typically pull the latest version of that package, the button only looks for a version difference. Therefore, it is also possible to downgrade a package. We highly recommend verifying which version should be installed and taking a backup beforehand to ensure everything goes as planned.

For example, an administrator has installed the Marketo connector, version 3.4.x.
2025-04-03_11-24-25.png

When they connect to an instance with a lower version of the Marketo connector installed (version 3.3.x), an upgrade button is shown. However, this would be a downgrade. Please be aware of what version you are moving to and ensure it is the correct one.
2025-04-03_11-24-40.png