When T&D (Test & Deploy) is set up on your Workspace, you’ll start making changes and you’ll want to push those changes to your Production environment. This is what we call a deployment. This article covers key concepts and useful information you’ll need to understand before deploying changes to your Prod Workspace in T&D.
What is a deployment?
A deployment is the action of making your Prod environment structurally identical to your Dev environment, by pushing changes made in Dev to Prod.
Deployment in T&D occurs in 2 steps:
- Both the Dev and Prod environments are compared, and a list of all structural changes, or the changes supported by T&D, are displayed.
- After you review the structural changes, you push those changes from Dev to Prod.
The deployment captures all changes made to either a specific Application, or all changes made within the within the Dev environment, depending on the type of deployment you choose.
The standard Enterprise plan on Pigment includes the Dev and Prod environments by default. For more information on adding a third environment, or increasing your data volume in T&D, contact your Pigment CSM.
What types of deployment can I do?
You can do a full or partial deployment, depending on your requirements:
- A full deployment pushes changes from all Applications in your Workspace from the Dev environment to Prod.
- A partial deployment pushes changes from a specific Application and its dependencies from the Dev environment to Prod.
For more information, see Full and Partial Deployment in Test & Deploy.
Who can perform a deployment?
Only Members with the Can Use Test & Deploy Workspace permission in all Workspaces (Dev, Test, Prod) can perform a deployment. This permission is assigned to the Builder Role or higher.
In addition, whoever performs deployments in T&D needs necessary permissions for the specific structural changes applied in both Workspaces. For example, if a Member deploys changes made to Application A in the Dev Workspace, the Member also needs the correct permissions and access to Application A in both the Dev and Prod workspaces. We discuss this in Permission Issues.
What can prevent a Member performing a deployment?
There are two main issues why you may not be able to perform a deploy on some updates applied to Applications in the Dev environment.
Permission issues
The Member doesn’t have the proper permissions to review and push the changes that have been applied to an Application:
- The Member doesn’t have a Builder or above role in the Prod environment.
- To make changes in both the Dev and Prod environments, a Member needs the appropriate permissions in each Application.
Before performing the deployment, the Member must ensure they have the necessary access to the Applications in both environments. If they don’t have the required permissions, they should ask someone with the appropriate permissions to carry out the deployment.
References to disconnected Items
One or more disconnected Dimensions are being referenced by other Blocks in a way that Pigment doesn’t allow in the context of T&D. The disallowed references for these Dimensions are:
- Formulas that are referencing Items from these Dimensions.
- Dimensions with Items kept in sync that have Properties of type Dimension referencing disconnected Items.
In this case, the Member needs to either remove those references, or needs to convert the Dimension so that its Items are connected.
Breaking changes
Pigment prevents pushing certain changes to Blocks when they are used by unmanaged Applications in the Prod environment, since deploying them could cause unexpected issues. These include:
- Deleting shared Blocks
- Removing Blocks from the Application Library
Before performing the deployment, the Member must make sure that there are no remaining usages left of these Blocks in the Prod environment. Refer to the “Block usage” settings tab of each Block in the Prod environment to review where and how they are used at any time.
Managing Boards and Views in a deployment
On the Diff screen during deployment, you can choose to include or exclude the following changes:
- Views. Include or exclude View changes linked to updated Blocks in your deployment.
- Boards. Depending on the type of deployment you perform, Boards can be included or excluded from deployment when pushing to the Prod Workspace.
For more information, see:
Undo deployment changes
Any change pushed to the Prod environment that doesn’t destroy data can be replicated in the Dev environment and pushed to the Prod environment again.
However, for any changes that are destructive of data, and that have been deployed by mistake to the Prod environment, we recommend that you reach out to the Support team to restore a previous version of your environment.