Manage project repository

ALM project repositories, located under the ProjRep directory, consist of the physical files that are stored in the file system, and database tables that index the files. You can clean up project repositories, browse and edit project repositories using FT clients, and realign project repositories.

Overview

The files in this directory are stored in an optimized folder structure that allows maximum storage space. In addition, any two files with identical content are stored only once in the ProjRep directory. For example, if you attach the same file to several ALM records, the file is stored only once in the project repository. This results in a significant reduction in disk space, and reduced time in copy operations.

When you add a file to an entity, ALM checks whether an identical file exists in the project repository. If an identical file is located, no physical file is added to the repository.

When you delete a file from an entity, the file is not immediately deleted from the project directory, as it may still be used by other entities.

If you restore a project from a backup that was performed while the project was active, you must realign the file system and database tables.

Back to top

Define project repository cleanup

At regular intervals, the project repository is scanned for obsolete files that are no longer referenced by any entity. If the files remain unreferenced for a specified period, they are removed from the project repository.

To regulate project repository cleanup:

The cleanup intervals are set by default at seven days. You can regulate the project repository cleanup process using the following site configuration parameters.

For details about the parameters, see Set configuration parameters.

REPOSITORY_GC_PROJECT_CLEANUP_INTERVAL

Defines the time interval between cleanup processes of each project repository.

REPOSITORY_GC_DELAY_CANDIDATE_TIME Defines the time that elapses after obsolete files are detected in a scan, and before the obsolete files are removed.
REPOSITORY_GC_JOB_PRIORITY Defines the speed at which the cleanup process is performed.
SUSPEND_REPOSITORY_GC Enables you to stop the project repository cleanup process.

To promote or postpone a project repository cleanup:

Click Promote Repository Cleanup in a project's details tab to instruct ALM to clean up the project's repository as soon as possible.

Click Postpone Repository Cleanup to instruct ALM to postpone the cleanup, or to stop a cleanup that is in progress.

For details, see Details tab.

Back to top

Browse and edit project repository

You can browse and edit files in the project repository using an FTP client. Most standard FTP clients that support UTF-8 character encoding are compatible.

Before edit files via FTP clients

Understand the following before making changes to repository files via an FTP client.

Supported FTP clients

Most standard FTP clients that support UTF-8 character encoding are compatible.

The following clients are verified:

  • Filezilla

  • Total Commander Built-in FTP client

  • FlashFXP.

Do not make changes directly in the ProjRep directory We recommend you do not make changes to the folders, files, or file content directly in the ProjRep directory, which will cause irreversible damage to the project repository.
Delete files

Deleting a file will result in missing content in ALM entities.

Rename files and folders

Renaming folders and files may result in missing content in ALM entities.

Enable secure FTP connections

You can connect to the FTP server using a secure connection.

To enable a secure FTP connection:

  1. On the ALM server machine, go to <ALM installation path>\java\bin and use the following command to generate a keystore and a key file.

    Note that client and changeit are used as examples.

    To generate a keystore file

    keytool -genkey -keyalg RSA -alias client -keystore client.keystore -storepass changeit -storetype jks

    To generate a key file

    keytool -certreq -alias client -keyalg RSA -file client.csr -keystore client.keystore

  2. Create an XML file, specify the following attributes, and save the XML file as sslkeystore.xml.

    • keystore file. The directory and file name of the keystore file

    • password. The password you defined for the keystore.

    • protocols. TSL/SSL protocols.

    • cipherSuites. Suites of cryptographic algorithms used by TLS connections.

    For example:

    Copy code
    <ssl>                          
       <keystore file="<keystore file path>" 
       password="<keystore password>"/>
       protocols="TLS1.3,TLS1.2" 
       cipherSuites="TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    </ssl>
  3. Place the sslkeystore.xml file in the following directory: C:\ProgramData\Micro Focus\ALM\webapps\qcbin.

  4. Reconfigure the FTP_PORT site parameter.

  5. Restart the FTP server by restarting the ALM service.
  6. In the FTP client, select the FTPS or SSL option. If you are using FileZilla, go to File > Site Manager and click New Site. For Protocol, select FTP-File Transfer Protocol, and for Encryption, select Require implicit FTP over TLs, and click connect.

To browse and edit the project repository:

  1. Define the FTP_PORT parameter to start the FTP service on the specified port.

    For details, see Set configuration parameters.

  2. Connect to the FTP server.

    In an FTP client, use the following connection values:

    Field

    Value

    Host

    The name or IP of the ALM server to which you want to connect.

    Port

    The FTP port. This should be the same value that you used for the FTP_PORT site parameter.

    User

    The username or API key of an ALM site administrator.

    In SSO mode, you can only enter API key.

    Password

    If you use username in the User field, enter the password of the ALM site administrator.

    If you use API key in the User field, enter the API key secret of the ALM site administrator.

  3. Browse and edit repository files.

    After you connect to the FTP service, a list of the site domains is displayed. Select a domain, and then select a project. The FTP client displays the project repository directories.

Back to top

Realign a repository

When you create a backup of a project while the project is active, the time gap between the database and file system backups can cause discrepancies between the database file index and the physical files. If you restore the project from the backup, you must realign the file system and database tables.

Permission:

To realign a repository, you should be site admin.

Before you realign a repository

Understand the following before you realign a repository.

Enable project realignment

To enable project realignment, set the SHOW_REALIGNMENT parameter to Y.

For details, see Set configuration parameters.

Realignment process

The realignment process performs the following actions:

  • If a file is indexed in the database but is not located in the file system, the index of the file is removed from the database.

  • If a file is stored in the file system but is not indexed in the database, the file is deleted from the file system.

  • Verify the integrity of the relationship between the logical and physical database tables.

Projects activation/deactivation

Projects are deactivated while the realignment is in progress, and activated again after the realignment is complete.

To realign the repository of a single project:

  1. Open Site Administration > Projects tab.

  2. From the projects list, select the project, and click Maintain Project > Recovery Tool > Realign Repository.

  3. To run the realignment process without any user interaction, select Run in Silent Mode.

  4. To start the process, click Realign Project.

    If the project is still active, you are prompted to deactivate it first.

    If an error occurs while running the process, a message box opens. Click the Abort or Retry accordingly.

    To abort the verification process, click Abort and click Yes in the confirmation dialog box.

    To pause the verification process, click Pause. To continue, click Resume.

  5. Wait until the repair process completes.

    To export the repair log to a text file, click Export Log.

    To clear the repair log, click Clear Log.

To realign the repository of all or multiple projects in a domain:

  1. Open Site Administration > Projects tab.

  2. From the projects list, select the target domain, and click Maintain Domain > Recovery Tool > Realign Repository.

  3. Configure the repair settings.

    Realign Mode

    Select the following options:

    • Run in silent mode. Runs the process without any user interaction.

    • Continue to next project if failed. Proceeds to the next project if the process fails. This is the default option.

    After the Realign

    Select one of the following options:

    • Leave all projects deactivated. Leaves all projects deactivated after the process completes.

    • Activate all projects. Activates all projects after the process completes.

  4. Select the target projects or click the checkbox in the Project Name column to select all projects.

  5. Click Realign Repository.

    If any of the selected projects are still active, you are prompted to deactivate them first.

    If an error occurs while running the process, a message box opens. Click the Abort or Retry accordingly.

    To abort the repair process, click Abort and click Yes in the confirmation dialog box.

    To pause the repair process, click Pause. To continue, click Resume.

  6. Wait until the repair process completes.

    To export the repair log to a text file, click Export Log.

    To clear the repair log, click Clear Log.

Back to top

See also: