Server Administration

1. Administration Views

The Team for Capella client comes with two views useful to perform some administrative tasks: The Durable Locks Management view, and the User Management view. To access to these features, you must install the Team for Capella - Administration Views feature from the Team for Capella update site.

09. Server Administration html installfeature

After restarting your T4C client, go to Preferences > General > Capabilities to enable the Administration Views capability.

09. Server Administration html admincapabilities

1.1. Durable Locks Management View

Important: The durable locking is deactivated by default since Team For Capella 1.1.4 and 1.2.1.

1.1.1. Activate the durable locking

The durable locking mechanism allows to configure the explicit locks manually taken by a user as persistent locks. If a user takes explicit locks and then terminates his connection to the remote model (by closing his shared project or exiting the Team for Capella client), his explicit locks are not released and he will retrieve them on the next connection to the repository.

The durable locking can be activated by a client by adding the following option in the plugin_customization.ini file:

fr.obeo.dsl.viewpoint.collab/PREF_ENABLE_DURABLE_LOCKING=true

If the plugin_customization.ini file is not present, you need

  • to create it in capella/

  • to reference it from the capella/capella.ini: before -vmargs, add:

-pluginCustomization
plugin_customization.ini

Note that the activation or deactivation of durable locking will have no effect on existing connection projects. The client have to remove the local connection project and to connect to the remote project again.

The following sections describe the case where the durable locking is activated.

1.1.2. Use the View

Team for Capella provides the Durable Locks Management view to list existing locking sessions and delete them if needed.

  • To open this view in a Team for Capella client, click on Window / Show View / Other… and select Team for Capella / Durable Locks Management:

    09. Server Administration html m6f151ae8

    When doing the first operation with this view, you will be asked to logon with the following dialog:

    09. Server Administration html 56a0ae33
  • Click on the 09.ServerAdministrationhtml35899bf3 button to list existing locking sessions (object locked by these locking sessions, if any):

09. Server Administration html 20dfc6bc
  • Use the contextual menu on a Locking Session to remove it:

09. Server Administration html m7370fd2a

It is allowed to remove Locking Sessions only if the corresponding user is not connected.

1.1.3. Additional information on Locking Sessions

The Durable Locks Management view displays all locking sessions existing on the repository and the locks created by these locking sessions (if any).

A locking session is created whenever a team project is created on a client (Capella Connected Project). So if a user creates several team projects, he can have several locking sessions (as user1 in the screenshot above). Each locking session has a unique ID stored in the local .aird file.

Locks are owned by a locking session, so if the same user has two locking sessions (⇔ 2 team projects) and he locks an element in the first locking sessions, this element will appear with a red lock in the second locking session.

1.1.4. Remove Locking Sessions

As explained above, using the Durable Locks Management view, locking session can be removed (this action is available by all users but should be done by the administrator only). A locking session can be removed only if nobody is connected using it.

All locks hold by the locking session are removed with it.

If a user tries to connect to the repository using an existing connection project referencing a removed Locking Session ID, an error dialog is displayed (see below) and a new locking session is created. The ID of this new locking session will replace the old one in the local .aird file on the next save action.

09. Server Administration html 42622e58

1.2. User Management View

Team for Capella provides the User Management view to manage users on the Team for Capella Server.

The Durable Locks Management view is useful only if the Team for Capella Server is configured to work with the access control "Identification".

  • To open this view in a Team for Capella client, click on Window / Show View / Other… and select Team for Capella / User Management.

    09. Server Administration html mf9456cc

    The view is shown.

    09. Server Administration html m5b598e9d

    When doing the first operation with this view, you will be asked to logon with the following dialog:

    09. Server Administration html 56a0ae33
  • Click on the 09.ServerAdministrationhtml35899bf3 button to list already registered users:

    09. Server Administration html 1feeff48
  • Click on the "+" button to add a new user:

    09. Server Administration html 5a6e6ce4
  • Use the contextual menu on a user to remove it:

    09. Server Administration html 3900f420

2. Administration Tools

2.1. Repository maintenance application

The repository might have some inconsistent data and might need to be maintained.

The Repository maintenance application will look for the following inconsistencies:

  • Broken links between Representation Descriptor and their representation(a Diagram, a table or a tree).

This link might be broken if the representation has been deleted or if the internal index of the Representation Descriptor list is incorrect. That can cause some troubles for the different users connected to the project.

  • Stale references (Orphan references): Some references in the model might be linked to a missing element in the database. That might cause the importer failure. The diagnostic job will list them in the console log. If the repair is activated, stale references will be removed.

The application aims to delete orphan Representation Descriptors and stale references in the repository (both graphical and semantic models).

Once done the application will close the server.

This application requires that no user is connected to the repository.

2.2. Job configuration

There are two jobs available for maintenance in the Scheduler:

  • Start repository diagnostic will only run the diagnostic part. The diagnostic result is logged in the console output of the job. It is also kept as an artifact of the job result.

  • Start repository maintenance will run the diagnostic and then launch the maintenance tasks if some managed issues are detected: it will backup the server with capella_db command, perform the required changes on the database and close the server. The steps are logged in the console output of the job and the corresponding log file is kept as an artifact of the job result.

The application needs credentials to connect to the CDO server if the server has been started with authentication or user profile. Credentials can be provided using -repositoryCredentials parameter. Here is a list of arguments that can be passed to the application or using the job (in maintenance.bat or the job config):

Arguments Description

-repositoryCredentials

Login and password can be provided using a credentials file.

To use this property file

  • Add the following program argument: -repositoryCredentials <path_to_credentials_file>

  • Fill the specified file using the following format (only one line allowed):

aLogin:aPassword

-hostname

defines the team server hostname (default: localhost).

-port

defines the team server port (default: 2036).

-repoName

defines the team server repository name (default: repoCapella).

-connectionType

The connection kind can be set to tcp or ssl (keep it in low case) (default: tcp)

-diagnosticOnly

Allowed values are true or false. If true, only the diagnostic is done. The database will be unchanged. (default: false)

-launchBackup

Allowed values are true or false. If true, the capella_db backup is done before any change is done on the database. (default: true)

-archiveFolder

Indicates where the backup zip will be stored.

-httpLogin

Backup and Maintenance are triggered by an Http request. This argument allows to give a login to identify with on the Jetty server.

-httpPassword

Backup and Maintenance are triggered by an Http request. This argument allows to give a password to authenticate with on the Jetty server.

-httpPort

Backup and Maintenance are triggered by an Http request. This argument allows to give a port to communicate with on the Jetty server.

-httpsConnection

Backup and Maintenance are triggered by an Http request. This boolean argument specifies if the connection should be Https or Http.

2.3. REST Admin Server

An administration feature through WebServices is available for the Team for Capella Server: it brings users and repositories management capabilities through REST API and exposes an OpenAPI description:

09. Server Administration html experimentalopenapi

Refer to documentation available in the folder server/dynamic to discover how to install and enable it.