Selective Project Configuration Deployment
Codebeamer supports selective deployment, allowing users to choose specific projects or configurations rather than performing a full deployment. In a selective deployment scenario, users can selectively choose which projects to deploy.
Possible use cases of selective deployment include the following scenarios:
Performing incremental updates or focusing on specific configurations.
Excluding completed or canceled projects from the deployments process.
Prerequisites
For general prerequisites, refer to the Prerequisites section on the main Project Configuration Deployment page.
For specific prerequisites, refer to the following points:
The selective deployment is disabled by default. To enable it, ensure that the "deployment" section in application configuration contains "enableSelectiveDeployment" : true, as in the following example:
"deployment": {
"enabled": true,
"enableSelectiveDeployment": true
}
The selective deployment export is only applicable on the target system after performing a full deployment.
The selective deployment succeeds only if all the dependencies excluded by the deployment already exist on the target system.
How to Perform Selective Deployment
1. Open the Admin page of the project that you want to export.
2. Click Export for Deployment.
A background job starts to discover the dependencies of the project. WebSocket and email notifications inform the user who started the process about the statuses of the background job.
3. After the job is completed, navigate to the Exporting Project and its dependencies window.
At this step, you can select specific projects and trackers for export by selecting them:
Options for the selective project deployment.
4. Click Export and download the exported ZIP.
5. On the target instance, navigate to the Projects tab and click Projects > Apply Project Deployment.
6. Click Apply.
The deployment starts in the background. A message appears when the deployment finishes. Only the selected project is deployed, other related projects are ignored.
Availability of Projects in a Selective Deployment
When selecting a project for deployment, the following additional items are available for selection:
The template project from which the selected project inherits.
Any projects linked to the selected project via outgoing references, like fields or computations.
Template projects having inheritance relationship with referenced projects.
In the following diagram, "enableSelectiveDeployment" in application configuration is set to true:
How selective deployment and Derived Projects work.
The availability of projects for deployment in the Exporting Project and its dependencies window is summarized in the following table:
Project selected for deployment
List of available projects
Corporate Project 1
Corporate Project 1
Corporate Project 2
Corporate Project 2
Corporate Project 3
Corporate Project 3 (by default).
Derived Project 2 (because Corporate Project 3 has outgoing references to Derived Project 2).
Derived Project 3 (because the references created in Corporate Project 3 are pushed down to Derived project 3 due to inheritance property hence Derived Project 2 has incoming references from Derived Project 3).
Corporate Project 2 (Derived Project 2 has dependencies from Corporate Project 2 due to inheritance relationship).
Derived Project 1 (Derived Project 2 which is a part of deployment payload has incoming references from Derived Project 1).
Corporate Project 1 (Derived Project 1 which is a part of deployment payload has dependencies from Corporate Project 1 due to inheritance relationship).
Derived Project 1
Derived Project 1 (by default).
Corporate Project 1 (Derived Project 1 has dependencies from Corporate Project 1 due to inheritance relationship).
Derived Project 2 (because Derived Project 1 has outgoing references to Derived Project 2).
Corporate Project 2 (because Derived Project 2 which is included has dependencies from Corporate Project 1 due to inheritance relationship).
Derived Project 3 (because Derived Project 2 which is included has inherited incoming references from Derived Project 3).
Corporate Project 3 (because Derived Project 2 which is included has incoming references from Corporate project 3).
Derived Project 2
Derived Project 2 (by default).
Corporate Project 2 (Derived Project 2 has dependencies from Corporate Project 2 due to inheritance relationship).
Derived Project 1 (Derived Project 1 has outgoing references to selected project Derived Project 2 hence included as a part of deployment).
Corporate Project 1 (because Derived Project 1 which is included has dependencies from Corporate Project 1 due to inheritance relationship).
Derived Project 3 (because Derived Project 3 has inherited outgoing references to Derived Project 2).
Corporate Project 3 (Corporate Project 3 has outgoing references to selected project Derived Project 2).
Derived Project 3
Derived Project 3 (by default).
Derived Project 1 (because Corporate Project 3 has outgoing references to selected project Derived Project 1).
Derived Project 2 (because Derived Project 2 has incoming references from Corporate Project 3).
Corporate Project 1 (because Derived Project 1 which is included has dependencies from Corporate Project 1 due to inheritance relationship).
Corporate Project 2 (because Derived Project 2 which is included has dependencies from Corporate Project 2 due to inheritance relationship).
Corporate Project 3 (Derived Project 3 has dependencies from Corporate Project 3 due to inheritance relationship).
Was this helpful?