
When the user runs the WhereScape CICD Enablement Pack, this will start the process of connecting to GIT and building the WhereScape 3D and RED repositories.
This should be done at the following times:
When the process is launched, it will prompt the user for the following information:
On all pull requests the default structure and metadata will be rebuild using the WhereScape CLI. |
Upgrading your Enablement Pack
When you update your CICD Enablement Pack, running an initial build will ensure all necessary enablement pack scripts are up to date
The backup files will need to be in SQL, or BAK file format. For full information on creating and using a backup, please consult section ‘WhereScape 3D and RED Backup Files’. |
3D Repository Server: Add the 3D Repository PostgreSQL Server and port.
3D Repository Database Name: The repository database name will be calculated based on the information provided – this is read-only. This can have a max character length of 63 characters. If you would like to change the way this is configured, please consult section 'Changing the Repository Database Name'.
3D Repository Username and Password: Add the 3D Repository PostreSQL Username and Password with permissions to specified database.
The backup files will need to be in SQL, or BAK file format. For full information on creating and using a backup, please consult section ‘WhereScape 3D and RED Backup Files’. |

Once the form is created click on 'OK'. If there are any issues with connecting to the GIT repository, the user will receive an error message.
The local GIT directory will now be created.
Each GIT Repository will have its own profile file. If it is deleted or modified incorrectly, the workflows will stop working. |
The user will be prompted to select a branch from the remote GIT repository.

This action refreshes the local GIT repository with updates from the specified remote branch.
WhereScape 3D and/or RED is rebuilt using the files within the local GIT repository.
If the user requires to connect to a new or different GIT repository, these steps should be repeated using the new settings.
A GIT repository must exist before this process can start. |
A log file will be created and stored within the specified directory each time this process is executed. If there are any issues during this operation, the log file will be presented to the user for review. The log file can also be consulted to investigate steps taken as part of any interaction with the CICD Enablement Pack. |
If this process is repeated for an existing GIT repository that has already been set up on the Developer machine, any changes not committed to GIT will be lost. |
When completing the WhereScape CICD Enablement Pack form, the RED and 3D Repository Database names are read-only and are created based on the user information provided elsewhere on the form. However, this can be changed via the config file if required.
%USERPROFILE%\WhereScape\GIT 

By default, WhereScape 3D and RED store their metadata in separate PostgreSQL databases. To make sure both applications stay in sync, GIT is used as the master source for all metadata.
When developers pull the latest metadata files from the remote GIT repository, their local WhereScape repositories are rebuilt using those files. This keeps everything aligned to the same version (called a commit ID) and ensures consistency across both tools.
This process has been designed to ensure that both WhereScape repositories are always aligned.
To use WhereScape GIT Enablement Pack workflow scripts in WhereScape 3D, users will need to access their workflows via the Repository, Model or Model Version on the Repository Browser panel. When clicking into a Repository, Category, Model or model version, users can view the workflow tiles within the workflow manager.


Different workflow scripts are accessible from various items within the Repository panel. For detailed information on each script, including its location and usage, please refer to the section titled ‘Using WhereScape GIT Enablement Pack Workflows’.
To configure your workflows, please consult section ‘Configuring Workflows in WhereScape 3D’.
All existing WhereScape 3D workflow processes remain available.
Users will find the GIT integration tools within the Workflow pane. Depending on the type of model you are currently viewing, there may be different buttons available by default.
All existing WhereScape 3D workflow functions remain available. However, a maximum of 12 functions can be visibile at a time, so users with pre-existing Workflow set-ups may need to manually reconfigure the Workflow to pick and choose which functionality they want to keep or replace.
Users can update their Workflow sets by doing the following:



The Development Lead creates two feature branches, one for Developer A and one for Developer B.
Monday: Developer A completes their development within their feature branches, then merges the feature branch into Development.
Tuesday: Developer B completes development within their feature branches and then merges the feature branch into Development. This merge fails because both developers have made changes to the same model, resulting in a complex change that cannot be automatically merged. In other words, there is a lack of understanding about which changes should be kept, and which should be overwritten.
Therefore, during the merge and close function, if any conflicts are found, the user will receive a prompt to either discontinue progress on the script or view the conflicts.
If the users choose to review the conflicts they will be prompted with a list of the conflicted files and the conflicts highlighted within them.

It will then be up to the user to resolve the conflicts outside of the enablement pack before trying to the Merge & Close again.
By default, WhereScape RED’s metadata is held in a separate PostgreSQL database from WhereScape 3D.
GIT holds the master version of the WhereScape metadata. Therefore, to keep the Developer machine WhereScape repositories aligned, they are rebuilt from GIT after the metadata files are pulled directly from the remote GIT repository.
This ensures that both WhereScape applications are built to the same commit ID, ensuring the integrity of the data models & WhereScape application configuration across both applications.
Reminder: The RED Profile is created when the repository is first set up. This is created to ensure that the workflows run correctly. It can be found at the following location:
|
In WhereScape RED, all workflows are accessible from the Development panel by right clicking on ‘All Objects’ > ‘Workflows’.
Users will then see a list of all available workflow scripts to choose from.
For detailed information on each script, please refer to the section titled ‘Using WhereScape GIT Enablement Pack Workflows’.

WhereScape 3D Only- When using WhereScape RED, users are currently only able to ‘Commit ALL Objects to GIT’.
To commit a new model or changes to an existing model to GIT, users click the workflow button, which executes the ed3d_commit_to_git template.
By default, this script can be activated by the Repository, Source Category and Model Version level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:
A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
Users can create/change the workflow configuration for any category, model, or model version; however, this function requires the user to select the model version to operate correctly.
Only create a “Commit to GIT” button within a workflow for use at the Model Version level. |
Available in WhereScape 3D and RED
To commit all changes made to a WhereScape GIT Repository, users click the 'Commit All Objects to GIT' workflow button in WhereScape 3D or RED, which executes the ed3d_commit_all_objects_to_git template.
In WhereScape 3D by default, this script can be activated from the Repository or Category level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:

A log file will be created and stored within the specified directory each time workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
WhereScape 3D Only - When using WhereScape RED, users are currently only able to ‘Commit ALL Objects to GIT’.
To commit any configuration changes to GIT, users will click the workflow button, which executes the ed3d_commit_config_to_git template.
By default, this script can be activated by the Source Category level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:

A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
If configuring your own WhereScape 3D Workflow buttons, it is recommended that a “Commit Config to GIT” button be created within a workflow for use at the Category level. |
WhereScape 3D Only
To delete a model from your repository and commit the changes, users will click the workflow button 'Delete Model and Commit', which executes the ed3d_delete_model_commit_to_git template.
By default, this script can be activated by the Model Version level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:
A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
If configuring your own WhereScape 3D Workflow buttons, only create a “Delete Model and Commit” button within a workflow for use at the Model Version level. |
Available in WhereScape 3D and RED
To create a new branch for your WhereScape GIT Repository, users click the Create Branch workflow button in WhereScape 3D or RED, which executes the ed3d_create_feature_branch template.
In WhereScape 3D by default, this script can be activated from the Repository or Source Model level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:

A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
It is recommended that a “Create Feature Branch” button be created within a workflow for use at the Category level. |
Available in WhereScape 3D and RED
To close an existing branch for your WhereScape GIT Repository, users will click the 'Close Branch' workflow button, which executes the ed3d_close_branch template.
Users cannot close a branch they are currently on. |
This workflow is used for the following reasons:
This workflow will perform the following tasks:



A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
It is recommended that a “Close Branch” button be created within a workflow for use at the Category level. |
Available in WhereScape 3D and RED
To switch to a different branch within your WhereScape GIT Repository, users will click the ‘Switch Branch’ workflow button, which executes the ed3d_switch_branch template.
In WhereScape 3D by default, this script can be activated from the Repository or Source Model level of the Repositories panel.
Ensure that all changes are committed before switching branches, as all uncommitted changes will be discarded as part of this workflow. |
This workflow is used for the following reasons:
This workflow will perform the following tasks:
A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
If configuring your own WhereScape 3D Workflow Buttons, it is recommended that a “Switch Branch” button be created within a workflow for use at the Repository or Source Category level. |
Available in WhereScape 3D and RED
To fetch the latest changes for the remote GIT Repository, users will click the ‘Pull’ workflow button, which executes the ed3d_pull template.
In WhereScape 3D by default, this script can be activated from the Repository or Source Model level of the Repositories panel.
Ensure that all changes are committed before making a pull request, as all uncommitted changes will be discarded as part of this workflow. |
This workflow is used for the following reasons:
This workflow will perform the following tasks:
A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
If configuring your own workflow buttons, iIt is recommended that a “Pull from GIT” button be created within a workflow for use at the Repository or Source Category level. |
If WhereScape RED is open while the Pull action is in progress, the RED application may lose connection to the PostgreSQL Database Repository or may become out of sync with the metadata. You may need to refresh the Repository window within RED, to synchronize the application with the metadata. |
WhereScape 3D Only
To export a RED export model WhereScape RED, users will click the 'Export to RED' workflow button, which executes the ed3d_git_to_red templates.
By default, this script can be only be activated on a ‘RED export model version’ in the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:

A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
Users can create/change the workflow configuration for any category, model, or model version; however, this function requires the user to select the model version, specifically within the RED export category, to operate correctly. |
If configuring your own WhereScape 3D workflow buttons, only create a “Export to RED” button within a workflow for use at the RED Export Model Version level. |
WhereScape 3D Only
To import a Data Model from a selected commit ID from a branch, users will click the 'Import from GIT' workflow button. This workflow button executes the ed3d_import_model_from_git template.
This workflow is used for the following reasons:
This workflow will perform the following tasks:

The local GIT repository is synchronized to the selected commit.
A new model version is created, and the model is imported to your local repository.
The user must refresh the Repository Browser to see the imported data model.
A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
| If configuring your own WhereScape 3D Workflow buttons, it is recommended that an “Import from GITModel Version” button be created within a workflow for use at the model version level. |
Available in WhereScape 3D and RED
To update and commit the metadata in your repository, users will click the workflow button ‘Update Metadata’, which executes the edws_update_metadata template.
In WhereScape 3D by default, this script can be activated from the Repository level of the Repositories panel.
This workflow is used for the following reasons:
This workflow will perform the following tasks:
Any uncommitted changes the user makes to their branch will be lost when running this script. The user will be warned when running the script and be given the opportunity to cancel the workflow. |
| A log file will be created and stored within the specified directory each time this workflow is executed. If there are any issues during this operation, the log file will be presented to the user for review. |
If configuring your own WhereScape 3D Workflow buttons, it is recommended that an “Update Metadata” button be created within a workflow for use at the Repository level. |
When the MSI is required to be updated, two options can be considered:
Use this for partially complete development activities or code not ready to merge to the parent branch.
This option can be used if all development activities are complete. It is not recommended for partially completed development activities.
In either option, the files from the remote GIT repository are pulled to the local machine, which is then used to reconfigure the local environment and the PostgreSQL repository used by WhereScape RED and 3D.
The following list are known issues:
[init] defaultBranch = main[safe] directory = *