Places

This page allows to manage modeling places. Modeling places are typically created a shared by users. They can also be managed globally from the administrator section.

Places

Places management

Each place has a name that is not unique and an owner identified by their email address.

Places can be created:

  • manually either by users or administrators (New Place button)

  • by importing from a GIT repository (Import from GIT button)

  • by importing from Trisotech (predefined example places) (Import from Trisotech button)

It is possible to delete ( ), rename ( ), change the owner ( ) or manage who has access () to places.

Access rights

Read

A user can read models from this place.

Write

A user can write, create and delete models and folders from this place.

Attributes

There are two attributes of places that users are not allowed to manipulate but are accessible to administrators through this interface.

Production

A production place guarantee that models can’t be deleted. New models can be added and existing model updated. The versioning of models can always be used to go back to a previous version. To delete a model in a production place, the admin has to turn off the production flag, delete the model, then turn back the flag on.

Global access

Admins can make places available (read or write) to all users of the instance without having to assign access to them. This is the equivalent of sharing with the virtual All users group.

Import from Trisotech

Trisotech provides examples for various domains to illustrate capabilities of the tool. These examples can be imported into a place by clicking on the Import from Trisotech button. The examples are read-only and cannot be modified. These places are imported with read only global access for all users. The examples can be deleted by administrators if needed.

The examples repository are imported from GIT server and are periodically updated. That means access to internet is required to import examples.

GIT integration for places

Places can be integrated with remote GIT repositories. GIT integration can be:

  • clone locally

  • import from remote repository

  • export to remote repository

The import and export integrations are mutually exclusive and only one can be configured for a given place - either import or export.

Clone locally

Using a standard client, administrators can clone a place locally using the GIT HTTP protocol.

The GIT endpoint URL requires authorization using a username and password. The value bearer can be used as username and a bearer token can be used as the password. The token should be obtained from a Client App with the Repository Read/Write grants.

Once cloned, the full history is transferred locally. It is possible to make changes and push them back to the remote repository.

Rewriting the history of the repository (e.g. by rebasing or amending commits) causes a full place re-indexing of the Digital Enterprise Graph which can take a significant amount of time.

The remote repository only supports a single branch (main) and rejects any push that would create or update other branches.

Import from GIT repository

To import from GIT repository, create new place by clicking on Import from GIT. Following information needs to be provided:

  • name of the place

  • URL of the remote GIT repository

  • name of the remote branch to import from

  • identity to be used to authenticate with remote GIT repository (optional if it’s public repository)

Once submitted, new place with given name is created and initial import from repository is triggered.

This place is synched periodically (every 10 minutes) with remote repository to import changes. Status of the sync can also be found in the places table.

Place that is created from GIT repository is read only, no local changes can be made by any user.

GIT integration can be removed from the place by clicking on ( ) icon, this operation enables writing to the place by place members.

Export to GIT repository

To export to remote GIT repository click on ( ). Following information needs to be provided:

  • URL of the remote GIT repository

  • name of the remote branch to export to

  • identity to be used to authenticate with remote GIT repository

Once submitted, initial push of the repository content will be triggered. Every change done in the place will push new commits to remote branch.

Promote and import of BKP (business knowledge package) will be bundled into single commit with all files included to avoid too many commits (one per file).

GIT export can be removed from the place by clicking on ( ) icon. Once removed no more updates will be pushed to the remote repository.

Git export uses force push so make sure that branch configured does not have any protection rules that would disallow to force push to it.

Connection and authentication

GIT integration supports HTTPS protocol only.

Authentication with remote GIT repositories is based on identities and currently supported options are:

  • user name and password

  • personal access token

Both requires identity of type HTTP and scheme basic to be used. Then using personal access token consult GIT provider what user name should be used, e.g. GitLab uses Private-Token, GitHub does not require anything special so token as literal can be used.

Import can also be done from public repositories (no credentials required)

Options

Users can create places

This option can be disabled to allow only administrator to create places.

Local storage is deprecated and should not be used. It can lead to unrecoverable data loss.