PulseUno for Git User Help
Micro Focus PulseUno for Git version 20.1
Last updated: December 9, 2020
Introduction
About PulseUno
PulseUno is a web-based UI that enables development teams to:
- Continually build and inspect the health and quality of code using plugins such as dependency checkers and static analysis. Teams can use this information to help decide when changes are ready to be merged, deployed, and released.
- Use PulseUno vaults to secure collections of packages such as binaries, artifacts, and meta data. Vaults provide a central library for your packages and integrate with build and development pipelines.
- Visualize team activity.
- Explore the codebase.
- Use pull requests to review, evaluate, and merge a set of defined changes. Pull requests are a collaborative process that allows teams to review proposed code changes, add review comments, approve changes, and merge changes into a mainline.
- Collaborate on development projects using requests, backlogs, and iterations, to plan, track, and execute work.
What's new in 20.1
Product rename
In version 20.1, Pulse has been renamed to PulseUno. The readme is available in the Dimensions CM 14.5.2 Help Center.
PulseUno for Git
PulseUno for Git is a secure end-to-end solution for working with a Git server that enables you to use standard Git functionality through the PulseUno web interface. With PulseUno for Git, you can create and clone Git repositories, collaborate with individuals and teams, commit, review, and merge changes, and perform other common Git tasks. For details, see Configure PulseUno for Git.
PulseUno vault
PulseUno vault provides secure storage for software component binaries/artifacts and metadata with approval processes, audit trail, vulnerability and license detection, and more. Vault integrates with Maven and NPM package managers to retrieve or store software components during build and deployment processes allowing you to store third party dependencies or your own packages, manage access to them, and review/approve them for use. For details, see Use vaults to store software components.
PulseUno for Git and Dimensions CM comparison
PulseUno for Git
Runs standalone without Dimensions CM and allows only Git repositories to be created. Includes the following modules:
- PulseUno application
- Git server
- Vault server
PulseUno for Dimensions CM
Is integrated with Dimensions CM and allows only CM products to be registered. Includes the following modules:
- PulseUno application
- Vault server
New plugins
The following plugins have been added:
- Dimensions CM command-line (dmcli)
- Git Fetch
- Micro Focus UFT One
- Micro Focus LoadRunner
- CycloneDX
- NPM and Maven dependency finders
Chains
- Chains are now at the product level, in previous versions they were at the stream level. When you upgrade, existing chains are moved to the product level.
- If a step fails you can disable it. The next time the chain runs, the step is skipped. This option is useful when you are developing and testing chains.
- The console output has additional views such as: word wrap, elapsed time, and plug in name.
- The control options for each step are located in a separate section.
- You can set fail and unstable criteria for each step. For example, the severity level is equal to, or more severe than, than a specific level.
- Variables can be private and/or read-only, for example, a password can be private. Variables that are not read-only can be overridden when you run a chain manually.
- A single chain can run multiple chains. For example, a chain can run nightly builds on AIX, Windows, Solaris, and Linux. Each build is a separate child chain.
- A chain can pass variables to other chains. For example, a parent chain can pass a common build number or release version to its child chains.
Other enhancements
- PulseUno uses Jira issues if Dimensions CM is configured to use Jira as an external request provider.
- Suites have been renamed to spaces.
- Links to My Work, Spaces, and Administration are on the top navigation.
- The activity feeds for spaces, products and streams have moved to separate subpages, which have links on the sidebar.
Navigate
Top Navigation
The top navigation contains:
- Links to My Work, Spaces, and Administration.
- A search field.
- A link to the online help.
Sidebar
The sidebar contains links that are relevant to your current location in PulseUno.
Breadcrumbs
Breadcrumbs display your current location in PulseUno.
My Work
My Work displays useful information for the user who is currently logged into PulseUno, such as their review inbox, reviews they own, and packages waiting for approval.
Spaces
Spaces are collections of related software products.
See also
Search
You can search in:
- Activity feeds
- History tabs when you are browsing the contents of streams or branches.
- Backlog and iteration lists
- Request catalogs
Examples:
- A review label: Q234
- A request label: QLARIUS_CR_44
- A backlog title: "Performance backlog"
Search for requests and reviews
You can search for requests and reviews wherever you are located in PulseUno.
- (Optional) To restrict the scope of the search, select a space, product, or a stream.
- Click Search on the top navigation.
- From the list select Reviews or Requests.
- Enter a search filter (you can enter part of a name, label, or title). You can search for:
- Labels
- Requests
- Owners
- Individual words in titles
- Phrases (in double quotes, for example: "Fix API error")
- Click Search or press Return. The results are displayed below. Click a result to view more details.
- To refine your search, do one of the following:
- Select a filter from one of the results lists. The filter appears in the Refined by box:
- Control-click to select multiple filters from the lists. In the Refined by box click Apply. The box is updated:


The Search Results window is updated. You can further refine your search by removing filters from the Refined by box.
Click Clear to remove all filters.
Keyword search
You can also use keywords in a search.
- Use keywords in this format:
<keyword>:<value> - Separate multiple values in each keyword with commas, for example:
Review:Q1,Q3 - Separate multiple keywords with spaces, for example:
Review:Q1,Q3 Event:Deliveries,Reviews - You can use these operators: AND, OR, NOT, - (minus), for example:
Review:Q12 OR Review:Q16 - Search is not case-sensitive.
Activity feed keywords
| Keyword | Searches for | Examples |
|---|---|---|
| Event | Events and activities for spaces, products, Git repositories, streams, and branches:
|
Event:Deliveries,Reviews |
| Review | Review labels | Review:Q1,Q3 |
| Changeset | Changeset labels | Changeset:123,124,125 |
| Date | A specific date. Use the format yyyy-mm-dd |
|
| Date Range | In a date range. Use the format yyyy-mm-dd,yyyy-mm-dd |
|
Code history keywords
| Keyword | Searches for | Examples |
|---|---|---|
| Date | A specific date. Use the format yyyy-mm-dd |
|
| Comment | Comments added by users (you can enter part of a comment), a phrase must be double-quoted. | Comment:"Remove inclusion of libC.a" |
| User | User IDs (you can enter part of a name) | User:andys,david |
Request keywords
| Keyword | Searches for | Examples |
|---|---|---|
| Label | Request labels. You can enter part of a label. |
Label:Q234,IT536,ECR_47 |
| Title | Request titles. You can enter part of a title, a phrase must be double-quoted. |
Title:install,refactor |
| State | Request states, a state name with multiple words must be double-quoted. | State:Raised,"Under Work" |
| Phase | Request phases | Phase:Create |
| Type | Request types | TYpe:CR,TASK |
| Stream | Requests associated with specific streams or branches. | Stream:Qlarius_Java |
| Product | Requests associated with specific products and Git repositories. | Product:Qlarius |
| External | External link labels in requests | External:SBM |
Review keywords
| Keyword | Searches for | Examples |
|---|---|---|
| Label | Review labels. You can enter part of a label. |
Label:Q234,IT536,ECR_47 |
| Title | Review titles. You can enter part of a title, a phrase must be double-quoted. |
Title:install,refactor |
| Owner | Reviews associated with specific users (you can enter part of a name) |
Owner:andys,david |
| Request | Reviews associated with specific requests | Request:Q1,Q2 |
| Reviewer | Reviews associated with specific reviewers (you can enter part of a name) |
Reviewer:andys,david |
| Comment | Comments added by users (you can enter part of a comment). A phrase must be double-quoted. | Comment:"Remove inclusion of libC.a" |
| State | Review states, a state name with multiple words must be double-quoted. | State:Assigned,"Peer Review" |
| Message | Commit delivery messages (you can enter part of a message). A phrase must be double-quoted. | Message:"Delivered SQL server fix" |
Keyboard shortcuts
On Review and Changeset pages you can use these keyboard shortcuts:

ADM Help Center
The ADM Help Center provides comprehensive user assistance for Dimensions CM, StarTeam, and Accurev.
Quick tour
Watch a quick tour to learn more about PulseUno.
Organize work
As an administrator, you can organize work into spaces, register products (CM) and create Git repositories (PulseUno for Git).
- A space is a collection of related CM products or Git repositories, for example, Insurance.
A space can contain one or more products or Git repositories, for example, Life Insurance and Health Insurance.
In PulseUno for Dimensions CM, you can register products so that they respond to events produced from those products.
In PulseUno for Git, you create and maintain Git repositories. - A product is a major unit of software development. It is a collection of streams or branches. For example, the product Life Insurance can contain these streams:
- LIFE
- DISCOUNTS
- PROMOTION
- A stream is the same as a Dimensions CM stream or project and represents a single line of development.
- A branch is the same as a Git branch and represents a single line of development.
In PulseUno, the terms stream and branch may be used interchangeably.
Activity feed
The activity feed displays the following recent events:
- Deliveries of changesets to the streams or branches that create reviews
- Reviewers added to a review
- Changes to reviews' states
- Review comments
- The results of chains and experts than ran on changesets
To view activity:
- Select a space, product, Git repository, stream, or branch.
- On the sidebar select Activity.
For reviews and changesets, activity is displayed on the Conversation tab.
To filter information in an activity feed:
- From the Activities list, select an event type, for example, Comments.
- In the Search box, enter one or more keywords in the format <keyword>:<value>.
- Activity is scoped to the current location.
- To clear all filters, delete the entries in the Filter box and click Apply.
- The Filter box is not case-sensitive.
Create spaces and register products
As an administrator, you can create new spaces.
In Dimensions CM, you can register products to a space. For details, see Register a product to a space.
In PulseUno for Git, you can create Git repositories in a space. For details, see Create a Git repository.
Create a new space
- In PulseUno, navigate to Spaces.
- Click New Space (+).
- Enter a title for the new space.
- Optionally enter a description for the space. Use the tools to format, and preview, the description.
- Click Save.
Register a product to a space
- In PulseUno, navigate to Spaces and select the space where you want to register the product.
- Click Register (+) and select Register Single Product.
- Enter a title for the product. A PulseUno product is the same as a Dimensions CM product but the titles can be different.
- Optionally enter a description for the PulseUno product. Use the tools to format, and preview, the description.
- From the Repository Name list, select one of the following:
- Select an existing Dimensions CM repository.
- Create new repository.
- If you are creating a new repository, follow these steps:
- Enter a title for the Dimensions CM repository.
- Enter the network address of the Dimensions CM server, for example:
dmcm-server.example.com - Enter the CM base database name and connection string, for example:
CM_TYPICAL@DIM14 - For SCM Credentials, select or clear the option Always use the following credentials. For information about using this option, see Configure access to repositories.
- Enter a Dimensions CM account username and password.
- From the Product in Repository list, select a CM product.
- Click Register.
Register multiple products to a space
- In PulseUno, navigate to Spaces and select the space where you want to register the products.
- Click Register (+) and select Register Multiple Products.
- From the Repository Name list, select one of the following:
- Select an existing Dimensions CM repository.
- Create new repository.
- If you are creating a new repository, follow these steps:
- Enter a title for the Dimensions CM repository.
- Enter the network address of the Dimensions CM server, for example:
dmcm-server.example.com - Enter the CM base database name and connection string, for example:
CM_TYPICAL@DIM14 - For SCM Credentials, select or deselect the option Always use the following credentials. For information about using this option, see Configure access to repositories.
- Enter a Dimensions CM account username and password.
- From the Products in Repository list shift-click to select multiple CM products.
- Click Register. The new PulseUno products have the same titles as the CM products. You can edit the titles later.
Register a Dimensions CM stream to a product
Dimensions CM streams are registered automatically in a PulseUno product when anyone makes a delivery to that stream. However, administrators can manually register a stream, for example, to add a chain before the next delivery to that stream.
- Select the product where you want register a stream.
- Click Register Stream.
- In the Stream Name box start typing the name of a stream. PulseUno automatically displays a list of all the streams that match the string (not case sensitive).
TIP Use wildcards to help you find a stream:
- Type '*' at the end of a string to match specific names, for example: DEV:STREAM_A*
- Type '*' to display all the streams in a Dimensions CM product.
- Select a stream.
- Click Save. The stream is registered with the product and you can now:
- Configure the stream to automatically create reviews and run chains.
- Add experts to chains.
Delete spaces, products, and streams
As an administrator, you can delete spaces and products as well as unregister streams.
For details on deleting Git repositories, see Delete a Git repository.
- In PulseUno, navigate to Spaces.
- Do one of the following:
- Select one or more spaces.
- Select a space and then select one or more products.
- Select a space, a product, and then select one or more streams.
- Click Delete and confirm.
- Reviews in PulseUno are not deleted when their parent location is deleted. You can search for reviews and re-register the product and/or stream to browse to them.
- Deleting a space unregisters its products and streams from PulseUno but does not affect Dimensions CM.
- Unregistering a product unregisters its streams from PulseUno but does not affect Dimensions CM.
- Unregistering a stream does not affect Dimensions CM. The stream is automatically re-registered in PulseUno when deliveries are made to it in CM (unless the parent product is also unregistered).
- Delete a product or unregister a stream if you deleted the corresponding object in Dimensions CM and do not want it to appear in PulseUno.
Modify a space or product
As an administration, you can modify the titles and descriptions of spaces and products.
For details on modifying Git repositories, see Edit a Git repository.
To edit a space or product:
- Open a space or product.
- Click Edit.
- Modify the title and/or description.
- Click Save.
Set favorite streams
You can add, or remove, a stream from your list of favorite, active streams. Favorite streams are marked with a star and are always displayed at the top of the streams list.
- Open a stream.
- To the right of the stream name toggle the star to add or remove it from your favorites.
Move a product or Git repository to another space
As an administrator, you can move a product or Git repository to another space.
To move a product or Git repository:
- In PulseUno, navigate to Spaces.
- Select a space, and then select a product or Git repository.
- Click Move.
- Select a space from the list.
- Click Move.
Filter the list of streams or branches
On a product or Git repository page, you can filter the list of streams and branches.
To apply a filter to streams or branches:
- In PulseUno, navigate to Spaces, select a space, and then select a product or Git repository.
- In the search box, enter a filter and press Enter. For details about using search, see Search.
PulseUno automatically displays a list of streams and branches that match the string (not case-sensitive).
Product, stream, and branch settings
As an administrator, you can set defaults for all the streams in a product or branches in a Git repository. For example, you might want different products to show different check lists when users vote to approve reviews or request changes. You can override these settings for each stream or branch.
Configure how new reviews are created
As an administrator, you can define how new reviews are created for a product/Git repository or an individual stream/branch.
To configure review settings for a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings and then the Reviews tab.
- From the Creation of Reviews in Stream list, select an option for creating reviews:
- Use the product's default setting.
- Automatically create reviews.
- Allow manual creation of reviews.
- Do not allow reviews.
- From the Rules To Use list, select a rule.
Rules control how reviews move from one state to another, for example, whether all reviewers must approve a review, or just one reviewer. For details, see Review rules. - From the Check List To Use list, select a review check list to be used with new reviews. You also have the option of using the product's default check list or not using a review check list at all.
For details about check lists, see Manage review check lists. - Click Save.
To configure review settings for a product or a Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- In the sidebar, select Settings > Reviewing changes.
- On the Reviewing Changes page, in the Reviews section, define the following review settings:
Setting Description Creating Specify options for creating reviews, such as creating reviews automatically, including pull request merges.
Check Lists Select Enable check list to set the default check list for reviews. Then select the check list you want to use.
Rules Select Use custom review rules to apply a rule to reviews. Then select one of the rules.
Rules control how reviews move from one state to another, for example, whether all reviewers must approve a review, or just one reviewer.
- Click Save.
Pull request settings
Configure chain runs
As an administrator, you can configure how chains run on streams or branches.
To define chain run settings:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings and then the Chain Execution tab.
- From the Run chains list, select one of the options:
- Use the product's default chain execution setting.
- Run chains on this stream.
- Disable chains on this stream.
- Click Save.
Set new stream defaults
When you create a new stream you can copy the settings from the source stream.
To use the source stream setting for new streams:
- In PulseUno, navigate to Spaces, select a space, and then select a product.
- In the sidebar, select Settings > Branches.
- Select Copy settings from parent branch.
- Click Save.
For details on how to set defaults for new Git branches, see Define new branch defaults.
Set delivery filter defaults
As an administrator, you can set the default delivery filter for a product or Git repository, which automatically assigns it to any streams or branches that do not have a filter. A product or repository can only have one default delivery filter. You can apply a different delivery filter to an individual stream or branch.
Delivery filters determine which changesets create reviews and run chains. For example, you could exclude deliveries of built artefacts made on behalf of your automated CI system in those products where CI was configured. For details on creating delivery filters, see Create delivery filters.
To set a default delivery filter for a product or a Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- In the sidebar, select Settings > Delivery Filters.
- On the Delivery Filters page, select the filter you want to make default for this product or repository.
- Click Set As Default and then Make Delivery Filter Default.
To set a delivery filter for a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Open a stream or branch.
- In the sidebar, select Settings.
- In the Filters tab, select a filter from the list.
- Click Save.
Configure PulseUno for Git
About PulseUno for Git
PulseUno for Git is a secure end-to-end solution for working with a Git server that enables you to use standard Git functionality through the PulseUno web interface.
With PulseUno for Git, you can create and clone Git repositories, collaborate with individuals and teams, commit, review, and merge changes, and perform other common Git tasks.
This section provides instructions on how to administer PulseUno for Git:
- Install PulseUno for Git on Windows and Linux. See Install PulseUno for Git.
- Create Git repositories. See Create, modify, and delete Git repositories.
- Create templates from Git repositories. See Create a Git repository template.
- Fine-tune branch settings. See Manage branches.
- Set branch protections. See Define branch policies.
- Set methods for merging pull requests. See Use merge strategies for pull requests.
- Control individual and team access to Git repositories. See Manage members and teams.
- Connect request providers such as Atlassian Jira and Micro Focus ALM Octane. See Integrate with external request providers.
- Change passwords and set up SSH authentication. See Manage authentication.
For information on the basics of Git workflow, see the Git documentation.
Install PulseUno for Git
This section provides the prerequisites, considerations, and instructions for installing PulseUno for Git on Windows and Linux.
You can install PulseUno for Git in several ways:
| Windows | Run the installation wizard on Windows |
| Linux | Run the installation wizard on Linux |
Before you install
Before installing PulseUno for Git, review the following requirements and considerations:
| System requirements | Verify that your system meets the hardware and software requirements. For details, see System requirements. |
| Permissions | Verify that you have proper permissions to perform the installation:
|
| Limitations | Dimensions CM: Make sure that you don’t have Dimensions CM installed on the same system where you plan to install PulseUno for Git. Otherwise, the installation will fail. Deployment Automation: To install PulseUno for Git on a system that hosts a Deployment Automaton server, contact Support. |
Database:
|
Before installing PulseUno, you need to set up a database. Windows only: An embedded PostgreSQL 12 database is bundled with the installer. If you decide to use it, you don’t need to prepare a database before the installation. For details about an Oracle database, see the Oracle documentation. For details about an MS SQL server, see the Microsoft documentation. For details about PostgreSQL, see the PostgreSQL documentation. |
System requirements
This topic describes the necessary hardware and software requirements for PulseUno for Git.
| Hardware | Use the following hardware guidelines for a single system with all components: CPU: 4-core or more |
| Prerequisite software | The following software is required to run PulseUno for Git:
The installation package includes all the prerequisite software. If you already have these applications on your PulseUno machine, the installer automatically detects and, if needed, upgrades them. During installation, all missing prerequisite software is installed. |
| Operating systems | Windows:
|
Linux:
|
|
| Browsers |
|
Databases |
Windows:
|
Linux:
|
Installation components
PulseUno for Git includes the following modules:
- The PulseUno server. The main server with the PulseUno web application. This is where PulseUno stores its configuration information. The database is accessed through this server.
- The Vault server. The server for the library of software components (packages). For details about vaults, see Use vaults to store software components.
- The Git server. The server for Git repositories. For details about Git repositories, see Create, modify, and delete Git repositories.
You can install all the modules on the same system, or use different machines and install each module separately. For example, you might consider having Vault on a separate machine to ensure enough disk space for your packages.
Windows only: In addition to the main modules, the installation includes an embedded PostgreSQL 12 database which you can use instead of an external database.Run the installation wizard on Windows
Before installing PulseUno for Git, ensure that you have fulfilled all the prerequisites. For details, see Before you install.
The PulseUno installation wizard for Windows guides you through the installation process step-by-step.
To install PulseUno for Git on Windows:
- Download the installation zip file and extract the installer.
- As a local system user, launch the installer.
- Read and accept the license agreement.
- Enter the installation path or accept the default location:
C:\Program Files\Micro Focus\PulseUno - Select the modules to install:
- PulseUno server
- Vault server
- Git server
- Enter an encryption passphrase to connect the modules.
NOTE If you are installing each module separately, you must use the same passphrase for all the modules. You can later connect other Git and Vault instances to PulseUno using this passphrase. The passphrase is case-sensitive.
- (Optional) If you are installing only the PulseUno server, enter the hostname and port for the Git and Vault servers. This way, you can connect to these instances later. If installing only the Git server or the Vault server, specify the hostname and port for the PulseUno server.
NOTE You can add the Git and Vault connection details after you install the PulseUno server. To do this, edit the startup.properties file in the pulse_data\conf directory and then restart Common Tomcat.
Use this example to edit thegitserver.urlandvaultserver.urlproperties:
gitserver.url=http\://localhost\:8080/git-server
vaultserver.url=http\://localhost\:8080/vault-server - Enter the root directory for the data directories or accept the default location:
C:\ProgramData\Micro Focus\PulseUno - Select the database from the following options:
- Create new database. Select this option to install an embedded PostgreSQL 12 database.
- Use existing PostgreSQL installation.
- Use existing Oracle installation.
- Use existing MSSQL installation.
- Provide the database details:
Embedded PostgreSQL:
Setting Description PostgreSQL DB admin user The PostgreSQL admin’s username.
DB admin password The PostgreSQL admin’s password. Port The port for the PostgreSQL instance.
Default: 5432
Existing PostgreSQL, Oracle, or MS SQL:
Setting Description Host The hostname for the database server.
Default: localhostPort (PostgreSQL only) The port number for the PostgreSQL server.
Default: 5432Database The database name. User The username to connect to the database. Password The password to connect to the database. - Enter the port for Common Tomcat.
Default: 8080 - Enter the hostname and port for the mail server you want to use for sending notifications.
Default host: localhost
Default port: 25 - Click Install.
- When the installation is finished, click Done.
By default, all modules are selected.
Next steps
Install from a command line on Windows
Before installing PulseUno for Git, ensure that you have fulfilled all the prerequisites. For details, see Before you install.
To install PulseUno for Git from a command line, run the installation in console mode.
The default installation path is C:\Program Files\Micro Focus\PulseUno
This command runs the PulseUno installer:
setup-windows.exe -i console
To install PulseUno for Git from a command line on Windows:
- Download the installation zip file and extract the installer.
- From a command line, as a local system user, change to the directory with the installation file.
- Run the installer in console mode:
setup-windows.exe -i console
A new shell for the console installation opens. - In console mode, read and accept the license agreement.
- Enter the installation path or press Enter to accept the default location:
C:\Program Files\Micro Focus\PulseUno - Select the modules for installation:
- PulseUno server
- Vault server
- Git server
- Enter an encryption passphrase to connect the modules.
NOTE If you are installing each module separately, you must use the same passphrase for all the modules. You can later connect other Git and Vault instances to PulseUno using this passphrase. The passphrase is case-sensitive.
- (Optional) If you are installing only the PulseUno server, enter the hostname and port for the Git and Vault servers. This way, you can connect to these instances later. If installing only the Git server or the Vault server, specify the hostname and port for the PulseUno server.
NOTE You can add the Git and Vault connection details after you install the PulseUno server. To do this, edit the startup.properties file in the pulse_data\conf directory and then restart Common Tomcat.
Use this example to edit thegitserver.urlandvaultserver.urlproperties:
gitserver.url=http\://localhost\:8080/git-server
vaultserver.url=http\://localhost\:8080/vault-server - Enter the root directory for the data directories or press Enter to accept the default location:
C:\ProgramData\Micro Focus\PulseUno - Select your database:
- To create an embedded PostgreSQL database, enter 1.
- To use an existing PostgreSQL database, enter 2.
- To use an existing Oracle database, enter 3.
- To use an existing SQL server, enter 4.
- Enter the database details:
Embedded PostgreSQL:
Setting Description PostgreSQL DB admin user The PostgreSQL admin’s username.
DB admin password The PostgreSQL admin’s password. Port The port for the PostgreSQL instance.
Default: 5432
Existing PostgreSQL, Oracle, or MS SQL:
Setting Description Host The hostname for the database server.
Default: localhostPort (PostgreSQL only) The port number for the PostgreSQL server.
Default: 5432Database The database name. User The username to connect to the database. Password The password to connect to the database. - Enter the port for Common Tomcat.
Default port: 8080 - Enter the hostname and port for the mail server you want to use for sending notifications.
Default hostname: localhost
Default port: 25 - Press Enter to install.
- When the installation is finished, press Enter to exit the installer.
To install all modules (default), press Enter.
To install specific modules, enter their corresponding numbers separated by a comma and press Enter.
For example, to install PulseUno and Git, enter: 1,3
Next steps
Run the installation wizard on Linux
Before installing PulseUno for Git, ensure that you have fulfilled all the prerequisites. For details, see Before you install.
The PulseUno installation wizard for Linux guides you through the installation process step-by-step.
To install PulseUno for Git on Linux:
- Download the installation tar file.
- As a root user, navigate to the location of the tar file and extract the installer.
To extract the installer using a command line, run this command:
tar xvf <PulseUno-installer>.tar
- Launch the installation wizard. To launch from a command line, run this command:
./setup-linux.bin
- Read and accept the license agreement.
- Enter the installation path or accept the default location:
/opt/microfocus/PulseUno - Select the modules to install:
- PulseUno server
- Vault server
- Git server
- Enter an encryption passphrase to connect the modules.
NOTE If you are installing each module separately, you must use the same passphrase for all the modules. You can later connect other Git and Vault instances to PulseUno using this passphrase. The passphrase is case-sensitive.
- (Optional) If you are installing only the PulseUno server, enter the hostname and port for the Git and Vault servers. This way, you can connect to these instances later. If installing only the Git server or the Vault server, specify the hostname and port for the PulseUno server.
NOTE You can add the Git and Vault connection details after you install the PulseUno server. To do this, edit the startup.properties file in the pulse_data/conf directory and then restart Common Tomcat.
Use this example to edit thegitserver.urlandvaultserver.urlproperties:
gitserver.url=http\://localhost\:8080/git-server
vaultserver.url=http\://localhost\:8080/vault-server - Enter the root directory for the data directories or accept the default location:
/opt/microfocus/PulseUno/data - Select the database from the following options:
- Oracle
- PostgreSQL
- Provide the database details:
Setting Description Host The hostname for the database server.
Default: localhostPort (PostgreSQL only) The port for the PostgreSQL server.
Default: 5432Database The database name. User The username to connect to the database. Password The password to connect to the database.
- Specify the Common Tomcat network settings:
Setting Description Owning user name The username for the existing user whom you authorize to run Tomcat and have write access to the Tomcat directories.
Note: For security, do not use the root user to own and run Tomcat.Port number The port for Common Tomcat.
Default: 8080 - Enter the hostname and port for the mail server you want to use for sending notifications.
Default hostname: localhost
Default port: 25 - Click Install.
- When the installation is finished, click Done.
By default, all modules are selected.
Next steps
Install from a command line on Linux
Before installing PulseUno for Git, ensure that you have fulfilled all the prerequisites. For details, see Before you install.
To install PulseUno for Git from a command line, run the installation in console mode.
The default installation path is /opt/microfocus/PulseUno
This command runs the PulseUno installer:
setup-linux.bin -i console
To install PulseUno for Git from a command line on Linux:
- Download the installation tar file from the link provided by Micro Focus.
- As a root user, change to the location of the tar file and extract the installer using this command:
- Run the installer in console mode:
setup-linux.bin -i console
- Read and accept the license agreement.
Press any key other than Enter to move through the license agreement. Then press Enter to accept the terms. - Enter the installation path or press Enter to accept the default location:
/opt/microfocus/PulseUno - Select the modules for installation:
- PulseUno server
- Vault server
- Git server
- Enter an encryption passphrase to connect the modules.
NOTE If you are installing each module separately, you must use the same passphrase for all the modules. You can later connect other Git and Vault instances to PulseUno using this passphrase. The passphrase is case-sensitive. - (Optional) If you are installing only the PulseUno server, enter the hostname and port for the Git and Vault servers. This way, you can connect to these instances later. If installing only the Git server or the Vault server, specify the hostname and port for the PulseUno server.
NOTE You can add the Git and Vault connection details after you install the PulseUno server. To do this, edit the startup.properties file in the pulse_data/conf directory and then restart Common Tomcat.
Use this example to edit thegitserver.urlandvaultserver.urlproperties:
gitserver.url=http\://localhost\:8080/git-server
vaultserver.url=http\://localhost\:8080/vault-server - Enter the root directory for the data directories or press Enter to accept the default location:
/opt/microfocus/PulseUno/data - Select the database you have set up for PulseUno:
- For Oracle, enter 1.
- For PostgreSQL, enter 2.
- Enter the database details:
Setting Description Host The hostname for the database server.
Default: localhostPort (PostgreSQL only) The port for the PostgreSQL server.
Default: 5432Database The database name. User The username to connect to the database. Password The password to connect to the database.
- Enter the Common Tomcat network settings:
Setting Description Tomcat user name The username for the existing user whom you authorize to run Tomcat and have write access to the Tomcat directories.
Note: For security, do not use the root user to own and run Tomcat.Tomcat port The port for Common Tomcat.
Default: 8080 - Enter the hostname and port for the mail server you want to use for sending notifications.
Default hostname: localhost
Default port: 25 - Press Enter to install.
- When the installation is finished, press Enter to exit the installer.
tar xvf <PulseUno-installer>.tar
To install all modules (default), press Enter.
To install specific modules, enter their corresponding numbers separated by a comma and press Enter. For example, to install PulseUno and Git, enter: 1,3
Next steps
Install PulseUno for Git in silent mode
Before installing PulseUno for Git, ensure that you have fulfilled all the prerequisites. For details, see Before you install.
Silent mode enables you to run an installation in the background without the need to follow wizard steps and select options. Silent mode uses a response file containing all the configuration properties for your installation.
Before you can run an installation in silent mode, you need to create a response.properties file in a text editor.
Set the installation properties using the following syntax: PROPERTY_NAME=value
The following table provides a list of available response properties:
| Property | Description |
|---|---|
USER_INSTALL_DIR |
A path to the PulseUno installation directory. Default paths:
|
FEATURE_PULSEUNO |
The PulseUno server. |
FEATURE_VAULTSERVER |
The Vault server. |
FEATURE_GITSERVER |
The Git server. |
PULSE_HOSTNAME |
If you are not installing the PulseUno server, specify its hostname. |
PULSE_PORT |
If you are not installing the PulseUno server, specify its port. |
GITSERVER_URL |
(Optional) If you are installing PulseUno without the Git server, enter the URL path for the Git server, for example:
|
VAULTSERVER_URL |
(Optional) If you are installing PulseUno without the Vault server, enter the URL path for the Vault server, for example:
|
PULSE_PASSPHRASE |
The passphrase that enables you to connect the modules if they are installed separately. Don’t enclose the passphrase in quotation marks, for example:
|
PULSE_DATA_DIR |
The root directory for the data directories. Default paths:
|
DB_EMBEDDED_POSTGRES |
Windows only: An embedded PostgreSQL database. |
PG_E_ADMINUSER |
Embedded PostgreSQL only: The admin’s username. |
PG_E_ADMINPASS |
Embedded PostgreSQL only: The admin’s password. |
PG_E_PORT |
Embedded PostgreSQL only: The port number to connect to PostgreSQL. |
DB_POSTGRES |
An existing PostgreSQL database. |
DB_ORACLE |
An existing Oracle database. |
DB_MSSQL |
Windows only: An existing MS SQL server. |
DB_HOST |
The hostname to connect to the existing database. |
DB_PORT |
Existing PostgreSQL only: The port number to connect to PostgreSQL. |
DB_NAME |
The name of your existing database. |
DB_USER |
The username to connect to the existing database. |
DB_USER_PWD |
The password to connect to the existing database. |
TC_PORT |
The port number for Common Tomcat. |
TC_USER |
Linux only: The username for the Tomcat owner. Note: For security, do not use the root user to own and run Tomcat. |
MAIL_SERVER_HOST |
(Optional) The hostname of the mail server for sending notifications. |
MAIL_SERVER_PORT |
(Optional) The port of the mail server for sending notifications. |
For examples of how to set the properties in a response.properties file, see Response file examples.
To install PulseUno in silent mode:
- Download and unpack the installation file.
- Prepare a response.properties file using the properties described earlier.
- From a command line, change to the directory containing the installer.
- Run the command for the silent mode installation:
- On Windows, as a local system user:
<installer-location>\setup-windows.exe -f <response-file-location>\response.properties -i silent
- On Linux, as a root user:
<installer-location>/setup-linux.bin -f <response-file-location>/response.properties -i silent
where:
<installer-location> is a full path to the PulseUno installation file.
<response-file-location> is a full path to the response.properties file.
- On Windows, as a local system user:
Next steps
Response file examples
This topic provides several examples of how to create a response.properties file for installing PulseUno in silent mode.
Example 1 (Windows). Installing the PulseUno server with an embedded PostgreSQL database. The Git and Vault servers are not installed.
USER_INSTALL_DIR=C:\\Program Files\\Micro Focus\\PulseUno FEATURE_PULSEUNO=1 FEATURE_VAULTSERVER=0 FEATURE_GITSERVER=0 PULSE_PASSPHRASE=my-secret GITSERVER_URL=http://remotehost:8080/git-server VAULTSERVER_URL=http://remotehost:8080/vault-server PULSE_DATA_DIR=C:\\ProgramData\\Micro Focus\\PulseUno DB_EMBEDDED_POSTGRES=1 DB_POSTGRES=0 DB_ORACLE=0 DB_MSSQL=0 PG_E_ADMINUSER=postgres-username PG_E_ADMINPASS=postgres-password PG_E_PORT=5432 TC_PORT=8080 MAIL_SERVER_HOST=localhost MAIL_SERVER_PORT=25
Example 2 (Windows). Installing only the Vault server.
USER_INSTALL_DIR=C:\\Program Files\\Micro Focus\\PulseUno FEATURE_PULSEUNO=0 FEATURE_VAULTSERVER=1 FEATURE_GITSERVER=0 PULSE_PASSPHRASE=my-secret PULSE_HOSTNAME=remotehost
PULSE_PORT=8080 PULSE_DATA_DIR=C:\\ProgramData\\Micro Focus\\PulseUno DB_EMBEDDED_POSTGRES=0 DB_POSTGRES=0 DB_ORACLE=0 DB_MSSQL=0 TC_PORT=8080
Example 3 (Linux). A full installation using an existing Oracle database.
USER_INSTALL_DIR=/opt/microfocus/PulseUno FEATURE_PULSEUNO=1 FEATURE_VAULTSERVER=1 FEATURE_GITSERVER=1 PULSE_PASSPHRASE=my-secret PULSE_DATA_DIR=/opt/microfocus/PulseUno/data DB_ORACLE=1 DB_POSTGRES=0 DB_NAME=oracle-database DB_HOST=localhost DB_USER=oracle-username DB_USER_PWD=oracle-password TC_PORT=8080 TC_USER=tomcat-username MAIL_SERVER_HOST=localhost MAIL_SERVER_PORT=25
Example 4 (Linux). Installing only the Git server.
USER_INSTALL_DIR=/opt/microfocus/PulseUno FEATURE_PULSEUNO=0 FEATURE_VAULTSERVER=0 FEATURE_GITSERVER=1 PULSE_PASSPHRASE=my-secret PULSE_HOSTNAME=remotehost
PULSE_PORT=8080 PULSE_DATA_DIR=/opt/microfocus/PulseUno/data DB_ORACLE=0 DB_POSTGRES=0 TC_PORT=8080 TC_USER=tomcat-username
Post-installation steps
After the installation, verify the following:
| Installation logs | Check the installation logs to review the installation process. Default locations:
|
| Running services | Check that the following services are running:
|
Next steps
Log in to PulseUno for Git
To open the PulseUno web interface, launch the application from your desktop or navigate to the following URL in a browser:
http://<PulseUno-hostname>:<PulseUno-port>/pulse
Out of the box, PulseUno is configured to use internal authentication. To access the PulseUno web interface for the first time, you need the root user credentials:
| Default username | root |
| Default password | An automatically generated super user authentication token. To get the super user authentication token, open the pulse.<date>.log file in the pulse_data\_logs directory. Default locations:
|
After you have logged in, we recommend that you create an administrator account and set its password. The password for the root user is randomly generated every time Common Tomcat is started. To avoid looking up the password in the logs, create a new user, for example, gitsys. For details, see Add users.
See also
Create, modify, and delete Git repositories
Uninstall PulseUno for Git
When you uninstall PulseUno for Git, only the product’s features are removed.
The uninstaller doesn't remove:
- Files and folders created after the installation
- Micro Focus Common Tools
- Database objects
To uninstall PulseUno on Windows:
- As a local system user, stop Common Tomcat.
- Depending on your Windows version, navigate to the Apps & features or Programs and Features control panel.
- Select PulseUno in the list of apps/programs.
- Click Uninstall.
To uninstall PulseUno on Linux:
- Log in as a root user.
- From a command line, run this command:
sh <PulseUno-installation-path>/Change\ PulseUno\ Installation
After uninistalling PulseUno, you can manually delete PulseUno objects from your database. For assistance, contact Support.
See also
Run the installation wizard on Windows
Run the installation wizard on Linux
Create, modify, and delete Git repositories
This topic explains how to create, edit, and delete Git repositories in PulseUno for Git.
As an administrator or space owner, you can organize Git repositories into groups of related repositories by putting them in a space.
Create a Git repository
As an administrator or space owner, you can create and initialize local Git repositories in PulseUno for Git.
To create a Git repository:
- In PulseUno for Git, navigate to Spaces and select the space where you want to add a repository.
- Click Create Git Repository.
- On the New Git Repository page, provide the following details:
Field Description Repository name Enter a name for your repository.
The name becomes a part of the path to your repository.Repository URL (Already provided) The full path to your repository. Description (Optional) Enter additional information about the repository. Initialize repository Select how you want to initialize the repository:
- As an empty repository. Create an empty repository with no branches.
- With a Readme file. Create a repository with a default branch.
- With content from a built-in template. Create a repository with the same content and structure as the selected template. For details about templates, see Create a Git repository template.
Default branch If you’re initializing a repository with a Readme file or with content from a template, specify the default branch, for example, main or development. Visibility level Set the visibility level to define who has access to the repository:
- Private (default). Only authenticated users who have member permissions to the repository can acess it.
- Internal. Authenticated users without member permissions have guest access and can clone or pull the repository. Unauthenticated users have no access.
- Public. Authenticated users without member permissions as well as unauthenticated users have guest access and can clone or pull the repository.
Builds Keep this option selected to run builds using chains. Requests provided by (Optional) If you set up a connection to a request provider such as Atlassian Jira or Micro Focus ALM Octane, you can select it to integrate with the repository. For details about integrations, see Integrate with external request providers.
Reviews Keep this option selected to automatically create reviews when delivering changes. Pull Requests Keep this option selected to automatically create pull requests. Check Lists Select this option to use a check list for reviews and pull requests. Then select the check list you want to use. - Click Save.
Edit a Git repository
As an administrator, you can modify the name and description of a repository.
To edit a Git repository:
- In PulseUno for Git, navigate to Spaces and select the space containing the repository.
- Open the repository.
- In the sidebar, select Settings. Your repository's general settings open.
- Change the repository's name and description. Use the tools to format and preview the description.
- To modify access to the repository, change the visibility level:
Visibility level Description Private Only authenticated users who have member permissions to the repository can acess it.
Internal Authenticated users without member permissions have guest access and can clone or pull the repository.
Unauthenticated users have no access.Public Authenticated users without member permissions as well as unauthenticated users have guest access and can clone or pull the repository. - Click Save.
Delete a Git repository
As an administrator, you can delete Git repositories.
PulseUno enables you to remove a repository instantly or schedule to delete it in 7 days. During those 7 days, you can cancel the deletion anytime.
To delete a Git repository:
- In PulseUno for Git, navigate to Spaces and select the space containing the repository you want to delete.
- Open the repository.
- In the sidebar, select Settings > Advanced.
- On the Advanced page, click Delete This Product and then confirm your action.
The repository is now scheduled to be deleted in 7 days. - To delete the repository instantly, click Complete Deletion Now.
- In the warning dialog box, enter the name of the relevant space and repository.
- Click Complete Deletion Now.
The repository is permanently removed.
To stop the repository deletion:
- In PulseUno for Git, navigate to Spaces and select the space containing the repository.
- Open the repository scheduled to be deleted.
- In the sidebar, select Settings > Advanced.
- On the Advanced page, click Stop Deletion and then confirm your action.
Create a Git repository template
This topic explains how to generate a Git repository template that you can later use as a blueprint for new repositories. A template is an exact copy of a repository's structure and content.
To create a Git repository template:
- Compress the repository's directory with all of its contents into a zip file. By default, you can find the repository's files in your Git server's git_data directory, for example:
C:\ProgramData\Micro Focus\PulseUno\git_data\repositories\<autogenerated-repository-name> - Copy the zip file to the gitserver-templates directory on your PulseUno server, for example:
C:\ProgramData\Micro Focus\PulseUno\pulse_data\conf\gitserver-templates - To make the template available in the web interface, restart Common Tomcat.
For details about creating Git repositories, see Create a Git repository.
Manage branches
This topic explains how to change the default branch of your Git repository and define settings for new branches.
PulseUno for Git adds and removes branches automatically. The option of manually creating branches, similar to registering products in Dimensions CM, is not needed in Git.
Change the default branch
When creating a Git repository, you define a default branch, which is your main development branch where all pull requests land by default. As an administrator, you can change a repository's default branch.
To change a default branch:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Settings > Branches.
- On the Branches page, select a default branch from the list of branches.
- Click Save.
Define new branch defaults
When creating new branches, you can copy the settings from either the parent branch or the repository.
To set the defaults for new branches:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Settings > Branches.
- On the Branches page, select one of the options:
- Copy settings from parent branch. Create new branches using the settings of a parent branch.
- Inherit settings from product. Create new branches using the repository settings.
- Click Save.
Define branch policies
Branch policies protect branches in your repository from unwanted actions, such as force pushing commits or deleting branches. With branch policies, you set the conditions for creating branches and submitting commits.
Branch policies enable you to control the following:
- Force pushing to a branch
- Creating a branch with the same name
- Deleting a branch
- Requesting a ticket (request identifier) for a commit or branch
Create a branch policy
You can define a branch policy for a specific branch or a set of branches in your Git repository.
To create a branch policy:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Settings > Branch Policies.
- Click the Add button (+).
- On the New Branch Policy page, specify the following details:
Field Description Branch name pattern Enter a branch name or a name pattern. Use the wildcard * to match a set of branches in a repository. Commits Select this option to require valid request identifiers in commit messages and branch names.
Select Apply to Owners as well to enforce this option on all users, including owners.History Define the following options:
- Enforce a linear history by preventing merge commits from being pushed.
Select Apply to Owners as well to enforce this option on all users, including owners. - Permit force pushes for all users with push access.
Select Apply to Owners as well to enforce this option on all users, including owners.
Branches Define the following options:
- Prevent all users from creating matching branches.
- Prevent all users from deleting matching branches.
- Enforce a linear history by preventing merge commits from being pushed.
- Click Create.
You can create as many branch policies as you need. In the Branch Policies list, rearrange policies in the order you want them to be applied to branches. The top policy takes precedence over those under it.
Use merge strategies for pull requests
Out of the box, PulseUno for Git provides several methods for merging commits. As an administrator, you can apply these merge strategies to all pull requests in a repository.
The following table describes available merge strategies:
| Merge strategy | Description |
|---|---|
| Merge commit | Keeps all commits from the source branch and makes them part of the destination branch. Use this strategy to keep a detailed, exact history of changes. This is the default strategy for new projects. Git command: git merge --no-ff |
| Squash | Combines your commits into a single commit when you merge the source branch into the destination branch. Use this strategy to keep a clear and simple history of changes. Git command: git merge --squash |
| Fast forward if possible | Enables a fast-forward merge without creating merge commits when it's possible. When a fast-forward merge is not possible (when the merged-in history is not a descendant of the current history), a merge commit is created. For more details about fast-forward merging, see the Git documentation. Git command: git merge --ff |
Set the default merge strategy for automatic merges
As an administrator, you can set the default merge strategy for all automatic merges in a repository.
To set the default merge strategy:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Settings > Reviewing Changes.
- On the Reviewing Changes page, in the Pull Requests section, select the merge strategy you want to use.
- Click Save.
PulseUno applies the default merge strategy to all pull requests that are merged automatically.
Enable merge strategies
As an administrator, you can enable merge strategies to let users choose a merge strategy when they merge pull requests.
To enable merge strategies for pull requests:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Settings > Reviewing Changes.
- On the Reviewing Changes page, in the Pull Requests section, select the merge strategies you want to enable.
- Click Save.
You can now choose one of the enabled merge strategies when you merge a pull request.
See also
Manage members and teams
This section explains how to manage access to Git repositories in PulseUno by assigning user roles, creating teams, and adding teams and members to repositories.
About roles and permissions
PulseUno for Git provides several roles that you can use to control individual and team access to Git repositories. Permissions for each role are predefined and cannot be customized.
To assign or change roles, you need to be an administrator.
The following table describes PulseUno roles and permissions.
| Role | Permissions |
|---|---|
| Guest | Guests can vew, clone, and pull repositories. |
| Developer | Developers can:
|
| Owner | Owners have administrator-like permissions and can:
|
Create and edit teams
Teams enable you to grant repository access to groups of users rather than each user individually. All team members share the same permissions.
You create teams and assign them a default role at the space level. You add teams to Git repositories at the repository level.
You can change or remove a team's access as needed. To manage teams, you need to be an administrator or space owner.
To create a team and assign users to it:
- In PulseUno for Git, navigate to Spaces and select a space.
- In the sidebar, select Teams.
- On the Teams page, click the Add Team icon (+).
- Enter a name and an optional description for the new team.
- Select the default role for the team.
A team's default role applies to all repositories in a space. For example, if a team is assigned the Owner role as default, the team's members become space owners. - Click Create. The new team's page opens.
- Click the Add (+) icon to add users to the team.
- In the Add User to Team dialog box, search for the user you want to add. Enter a keyword in the search field and press Enter.
- Select a user from the list of search results and then select a role to assign. For details about available user roles, see About roles and permissions.
- Click Add.
To edit a team:
- In PulseUno for Git, navigate to Spaces and select a space.
- In the sidebar, select Teams.
- On the Teams page, click the team's name. The team's page opens.
- (Optional) To change the team's name, default role, or description, click Edit. Make changes and click Save.
- (Optional) To remove a member from the team, select a user from the list of team members. Then click the Delete icon and confirm your action.
Add a member to a repository
You can share access to a private repository with individual users.
To add a member to a repository:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Members.
- On the Members page, under the Individuals tab, click the Add Individual icon (+).
- In the Add Individuals dialog box, search for a user. Enter a keyword in the search field and press Enter.
- Select a user from the list of search results and then select a role to assign. For details about available user roles, see About roles and permissions.
- Click Add.
Add a team to a repository
You can share access to a private repository with the team you created earlier.
To add a team to a repository:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Members.
- On the Members page, select the Teams tab.
- Click the Add Team icon (+).
- In the Add Teams dialog box, search for a team. Enter a keyword in the search field and press Enter.
- Select a team from the list of search results and then select a role to assign. For details about available user roles, see About roles and permissions.
- Click Add.
Change individual and team access to a repository
You can control the level of access to your repository for members and teams.
To change individual or team permissions:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Members.
- To change a member's permissions, select the Individuals tab.
To change a team's permissions, select the Teams tab. - Select one or more members or teams and click Change Role.
- Select a new role.
For details about user roles, see About roles and permissions.
Remove members and teams from a repository
You can revoke a member's or team's access to a private repository.
To remove a member or team from a repository:
- In PulseUno for Git, navigate to Spaces, select a space, and then select a Git repository.
- In the sidebar, select Members.
- To remove an individual member, select the Individuals tab.
To remove a team, select the Teams tab.
- Select one or more members or teams and click the Delete icon. Then confirm your action.
See also
Integrate with external request providers
PulseUno for Git supports integrations with external request systems such as Atlassian Jira and Micro Focus ALM Octane. This feature enables you to pull tickets from Jira and ALM Octane and use them with commits to create reviews and pull requests.
Before you can integrate an external request provider with a particular Git repository, you need to connect the provider to PulseUno for Git.
Connect to Atlassian Jira
To integrate your repository with Atlassian Jira, first connect your Jira instance to PulseUno.
To set up a connection to Jira:
- In PulseUno for Git, navigate to Administration > Connections.
- Click the Add button (+) and select Jira from the list.
- On the New Jira Connection page, add the following details:
Field Description Title Enter the name for the Jira connection.
Web URL Enter the base path to the Jira instance, for example, https://jira.example.com.
Jira API URL
For Jira Server, provide the base path to the Jira instance API, for example, https://jira-api.example.com, or enter the web URL again.
For Jira Cloud, leave this field empty or enter the web URL again.
Username/Email
For Jira Server, enter a username for connecting to your Jira instance.
For Jira Cloud, enter an email for connecting to your Jira instance.
Password/API token
For Jira Server, provide your Jira instance password.
For Jira Cloud, provide an API token created from your Atlassian account. For details about creating API tokens for Atlassian cloud products, see the Atlassian documentation.
- Click Save.
Connect to Micro Focus ALM Octane
To integrate your repository with Micro Focus ALM Octane, first connect your ALM Octane space to PulseUno.
To set up a connection to ALM Octane:
- In PulseUno for Git, navigate to Administration > Connections.
- Click the Add button (+) and select Octane from the list.
- On the New Octane Connection page, add the following details:
Field Description Title Enter the name for the ALM Octane connection.
Web URL Enter the base path to the ALM Octane space, for example, https://octane.example.com.
API Token
Enter the Client ID key generated in ALM Octane. For details about creating API access keys in ALM Octane, see the ALM Octane documentation.
Secret
Enter the Client Secret key generated in ALM Octane. For details about creating API access keys in ALM Octane, see the ALM Octane documentation.
Shared space
Enter the ID of the ALM Octane space to which you want to connect, for example, 1001.
- Click Save.
After you set up a connection, PulseUno tests it and displays the status:
- Connected. The connection is successful.
- Problems connecting. The system couldn't connect to a request provider. In this case, make sure the connection details are correct.
Integrate a request provider with your repository
After connecting a request provider, you can integrate it with your repository.
To integrate with an external request provider:
- In PulseUno for Git, open Spaces and select the repository for which you want to request integration.
- In the sidebar, navigate to Settings > Request Integration.
- On the Request Integration page, add the following details:
For Atlassian Jira:Field Description Connection Select the connection to the Jira instance you have set up earlier.
Project keys Enter the Jira project keys to link specific projects in Jira, for example, AA or AB. To link all projects, leave the field empty.
Issue key pattern
Enter the Jira issue key pattern to associate with specific issues.
The default pattern is "((?<!([A-Za-z]{1,10})-?)[A-Za-z]+-\\d+)".
For Micro Focus ALM Octane:Field Description Connection Select the connection to ALM Octane you have set up earlier.
Workspace Enter the ALM Octane workspace to integrate with.
Commit patterns
Specify message patterns to associate commits with ALM Octane defects, user stories, and quality stories. The default message patterns are:
- Defects: defect\s*#(\d+)
Represents the string defect<any number of spaces>#<defect id>. - Quality stories: quality story\s*#(\d+)
Represents the string quality story<any number of spaces>#<quality story id>. - User stories: user story\s*#(\d+)
Represents the string user story<any number of spaces>#<user story id>.
- Defects: defect\s*#(\d+)
- Click Save.
Manage authentication
By default, PulseUno for Git uses standard password authentication and provides an option to set user passwords. If PulseUno for Git is configured for external authentication, such as LDAP, you must set passwords in the external system.
You can also configure secure SSH authentication that enables you to access the Git server from a Git command line.
Change a user's password to PulseUno for Git
As an administrator, you can set and change passwords of PulseUno users, including your own password. This option is available only if PulseUno for Git uses standard password authentication.
To change a PulseUno password:
- In PulseUno for Git, navigate to Administration > Users.
- Select a user from the list. Use search to help you find users.
- Click Change Password.
- In the change password dialog box, enter a new password and confirm it.
- Click Change Password.
Configure SSH key-based access
As an administrator, you can set up secure passwordless access to your Git server.
To configure SSH, you need a pair of SSH keys:
- A public key, which you add to PulseUno to verify the SSH connection.
- A private key, which you store in a secure place on your local system.
If you don't have SSH keys, generate a new pair. For details, see the SSH documentation.
To set up SSH authentication:
- In PulseUno for Git, navigate to My Work > Preferences > SSH Keys.
- On the SSH Keys page, click the New SSH Key icon (+).
- Add the public key from the SSH key pair by providing the following details:
Field Description Title Enter a name for the public key. Key Enter the value of the public key, for example:
ssh-ed25519 <key-body> <key-comment>
or
ssh-rsa <key-body> <key-comment>
- Click Save.
After configuring SSH authentication, you can connect to a remote Git repository using the SSH protocol. Test the connection from the Git command line to ensure you set it up correctly.
Configure agents
Agents are small applications that PulseUno can use to run chains:
- Each agent is associated with a specific instance of PulseUno.
- Each instance of PulseUno includes an embedded agent, so you do not need to install an agent on the same machine.
- To distribute the processing load of chains, install multiple agents on different machines on a network.
- Agents only include the code required to run chains and automatically download the required plugins from the PulseUno primary. You do not need to manually install plugins on agents.
- Agents can be configured to run specific chains by adding capabilities and variables.
For information about installing and configuring agents, see the PulseUno Agents Guide.
Approve agents
When an agent is associated with an instance of PulseUno it is automatically displayed in the Agents administration page. To license an agent, an administrator can approve it. You can see if an agent is licensed, or if there are licensing issues, on the Agents page.
- When an agent is added to PulseUno, by default it is unapproved and cannot be used to run chains. If an agent can be trusted, you can approve it.
- Unapproving or deleting an agent releases the license that it holds.
- Taking an approved agent offline or online does not effect licensing.
- PulseUno includes three free agent licenses.
- On the top navigation, click Administration.
- Select Agents.
- Select one or more agents.
- From the Mark As list, select Approved.
- To unapprove agents and release licences, select Unapproved from the Mark As list.
Manage agents
View agent information
The Agent page lists all the agents registered for your instance of PulseUno. Each agent displays the following information:
- Agent name (same as the host machine, which you cannot change in PulseUno), for example: suse4130-buildagent
- Title (an optional description of the agent), for example: Windows compilers
- Status: Embedded, Offline, Unapproved
- Universal unique identifier (UUID)
- Operating system of the host machine
- Connection status, for example: Started 2 weeks ago
- Heartbeat (when the agent last communicated with PulseUno)
- Agent version
- Capabilities tags
- Memory usage of the host machine
- Workspace remaining on the host machine. A workspace is an area on disk that an agent can populate with code to run a chain.
- On the top navigation click Administration.
- Select Agents.
- To restrict the list of agents that are displayed, select an option from the filter list. For example, you can display all agents or only agents that are online.
- To enable or disable memory and workspace monitoring, click Agent Monitoring.
- To modify an agent's title, select the agent from the list, click Edit, on the General tab enter a new title, and click Save.
View agent chains
You can view the chains that are running on an agent and the history of previous chain runs including the last run, last failure, last success, and the total number of runs.
- On the top navigation click Administration.
- Select Agents and select an agent.
- The Running tab displays the chain that is currently running.
- The Chains tab displays the history of previous chain runs. Each chain is on a separate row.
Take agents offline or online
You can take an agent offline, for example, the host machine is being updated and you want to temporarily prevent it from running chains.
- On the top navigation click Administration.
- Select Agents.
- Select one or more agents.
- From the Mark As list select Offline.
- To take agents back online, from the Mark As list select Online.
Upgrade and restart agents
If an agent is not responding you can restart it. If you have updated the version of a PulseUno primary, make sure to update the PulseUno subordinates that are connected to it. When you upgrade a subordinate, it downloads the agent code from the primary and installs it.
- Upgrade and restart abort any chains that are running on the agent.
- You cannot upgrade or restart the embedded agent.
- On the top navigation click Administration.
- Select Agents and select an agent.
- Click Upgrade or Restart.
Delete agents
Administrators can delete an agent that is registered with PulseUno. Deleting an agent release any licenses held by that agent.
- You cannot stop or delete the embedded agent.
- If you restart a deleted agent, it appears again in PulseUno.
- Deleting an agent does not remove the agent from the host machine where it is installed.
- Stop the agent on the host machine.
- In PulseUno, on the top navigation click Administration.
- Select Agents.
- Select the agent and click Delete.
- Confirm that you want to delete the agent.
Add variables to agents
You can add variable defintions to agents. A variable provides information about agents that can be used by chain runs. For example:
- The location of a specific compiler on an agent’s host machine.
- The configuration settings used by an expert.
Variables enable you to add steps to chains without needing to know the installation details of applications and tools on your agents.
- On the top navigation click Administration.
- Select Agents and select an agent.
- Click Edit and select the Variables tab.
- Enter a name and value pair, for example:
MAVEN_HOME=/home/autobuild/maven3 - Click Save.
Add capabilities to agents
You can add capabilities to agents. Capabilities describe a host machine's environment, for example:
- A specific operating system
- High memory
- A specific network location
You can add multiple capabilities to agents, use them to match agents to chains, and restrict the agents that can execute chains. For example, assume you have multiple agents running Windows. If a chain requires Windows Server 2016 and 64GB of memory you can:
- Add the capabilities WindowsServer2016 and 64gbMemory to the appropriate agent.
- Add WindowsServer2016 and 64gbMemory as required capabilities on the chain.
When the chain runs it matches its required capabilities with the capabilities of the agents; the chain only runs on the agent that is running Windows Server 2016 and has 64GB of memory.
- On the top navigation click Administration.
- Select Agents and select an agent.
- Click Edit and select the Capabilities tab.
- To add capabilities enter one or more tags. Tags cannot contain spaces.
- Click Save.
Browse code
You can browse the streams and branches in a product or repository and view the contents of folders and files. You can browse the current (tip) version of a stream/branch or previous versions. Each file or folder that you open displays information about:
- The user who delivered the changes.
- The changeset ID and delivery message.
- The health of the changes.
- The review associated with the changes.
Files also display:
- Findings from experts when a chain has run on the stream or branch.
- Peer review comments.
- Colored code syntax.
Folders also display:
- A summary of problems with any associated reviews.
- The number of contributors who made changes.
- (Optional) A readme file that describes the folder's contents.
Browse streams and branches
- Open a stream or branch.
- On the sidebar click Code. The Content tab displays the most recent changes to the stream or branch.
- Navigate to a folder or file to view its contents.
Browse previous versions of streams and branches
- Open a stream or branch.
- On the sidebar click Code.
- Do one of the following:
- To browse the entire contents of a previous changeset, select the History tab, select the checkbox for a changeset, and click View at Version. On the Content tab browse the files and folders in the changeset.
- To view a previous version of a file or folder, on the Content tab navigate to the file or folder. Click the History tab, select a version of the file or folder and click View at Version.
- To revert to the tip of the stream or branch, at the top right click View at Tip.
- Enter filters to search the stream or branch, for example, user names and dates.
- PulseUno displays the version of the stream or branch you selected until you revert to the tip.
- Comments and findings are tied to the file version where they were added and shown when that version is displayed.
- For Dimensions CM, you can only browse changesets created with version 14.1 or later.
Add descriptions of folder contents
(Optional) In each folder you can create a file that describes its contents. You can write the content in the following formats:
| File Name | Data Type | Search Order |
|---|---|---|
| readme.md | Markdown | 1 |
| package.html | HTML | 2 |
| readme.txt | Plain text | 3 |
| read.me | Plain text | 4 |
| package-info.java | Code | 5 |
PulseUno searches each folder for one of these file types in the order specified in the table above. The first file that is found is rendered and the content displayed at the bottom of the folder page.
Add comments to files
You can add comments to files and collaborate with team members. This is similar to adding comments to files in reviews.
Review code changes
About reviews
Overview
You can use peer review to:
- Comment on, and review, the changes in your development projects.
- Collaborate with team members.
- Get insight into the health of changes in your changesets, streams, and branches, such as the results of chain runs.
- Promote team work and development best practices.
- Vote to approve reviews or ask for changes, which may cause reviews to be marked as approved or sent for rework.
If you are a user with administrator rights you can also:
- Change a review's owner.
- Send a review for rework back to its owner.
- Change a review's state.
- Abandon a review.
The review list displays all the reviews that have been created for the selected user, spaces, product, or stream. A review page displays information about a specific change. You can control how a review's state is changed with the configurable review rules.
Reviews are also displayed on the activity feed for spaces, products, Git repositories, streams, branches, and My Work.
Create reviews
If you are an administrator you can configure changesets to automatically create reviews.
Review states
PulseUno's review states and state changes are:
Reviewers vote to approve, send for rework, and abstain from a review. Depending on the configurable rules their votes may cause a state change, or contribute to a state change in the future. By default, the first reviewer to vote on a review changes its state but different rules may be configured in your environment.
The review states are:
- Draft: the review is being modified by the user who is the owner.
- In Review: the review has been published. Reviewers can add comments and vote on the review.
- Approved: the review's changes have been accepted.
- Rework: the review has been sent back to its owner with suggestions for improvement.
- Completed: if there are no issues the Approved review is normally marked as Completed by the owner.
- Abandoned: a review can be changed to Abandoned at any time by an administrator. The review is closed and removed from circulation.
- If a review's state is changed by mistake to Approved, an administrator can move the review to Rework.
- If a problem is found while reviewing, a reviewer can request changes (which may change its state to Rework).
- If a request's state changes from its peer review state to a previous state, the associated reviews automatically move back to Rework.
- When a request is closed, an associated review at the Approved state automatically moves to Complete.
- Administrators can change a review's state at any time.
Review roles
A user can hold one of the following roles on a review:
- Owner: normally the user that delivered the changeset that created the review. The owner can be changed by an administrator to any valid user.
- Lead reviewer: can be assigned automatically from the changeset and modified manually. In Dimensions CM, the valid lead reviewers are derived from the real role assignments on the design parts in Dimensions CM that own the items being reviewed. In PulseUno for Git, any active user is a valid lead reviewer. A lead reviewer can add optional reviewers.
- Optional reviewer: normally assigned manually. In Dimensions CM, the valid optional reviewers are derived from the candidate role assignments on the design parts in Dimensions CM that own the items being reviewed. In PulseUno for Git, any active user is a valid optional reviewer. Optional reviewers cannot assign other reviewers.
Delivery filters control which changesets automatically create reviews. In Dimensions CM, role assignments on the items in the changeset determine which users are automatically assigned as lead reviewers or are available to be assigned as optional reviewers. In PulseUno for Git, all active users are available to be assigned as lead or optional reviewers.
Review rules
A change in a review's state is triggered by one of the following:
- A user with the appropriate role (Owner or Administrator) changes the review state manually.
- A decision made by a review rule that has run automatically.
The review rules are codified as a script that runs when one of the following significant events occur:
- A new changeset is associated with a review, which may automatically assign reviewers to the review.
- A user manually changes the state of a review.
- A reviewer votes to approve, request changes, or abstain with no opinion on a review that is at the In Review state.
- The owner of a review is changed.
- The reviewers assigned to a review are changed manually.
- Dimensions CM: A request associated with a review is actioned to the In Review state in Dimensions CM. This may automatically assign reviewers.
A rule script uses the votes of the lead and optional reviewers, and additional information, to decide whether to change a review's state. You can create or modify scripts and set the default rule script for each stream. For details, see Configure how new reviews are created.
Review rule scripts
The following table describes the review rule scripts in PulseUno.
| Script | Description |
|---|---|
| defaultRule.js | This script approves or rejects reviews based on the vote of the first reviewer. This is the default review rule script for reviews. The script automatically changes the review state from:
|
| allMustApprove.js | This script handles reviews based on the approval of all reviewers. If any of the reviewers don't approve, the review state changes to Rework. |
| defaultPRRule.js | This script approves or rejects pull requests based on the vote of the first reviewer. This is the default review rule script for pull requests. The script automatically changes the review state from:
|
| leadsOnly.js | This script approves or rejects reviews based on the vote of the first lead reviewer. |
| majorityDecides.js | This script handles reviews based on the approval of a majority, excluding reviewers with no opinion. If half or more reviewers don't approve, or if all reviewers abstain with no opinion, the review state changes to Rework. |
The review list
A review list displays reviews for products, Git repositories, streams, and branches.
To open a review list:
- Select a space, product, stream, or branch.
- On the sidebar select Reviews.
Each row in a review list is a separate review and includes the following information:
- An icon that indicates the review's current state, for example, In Review or Approved
- The review's label (number and title)
- The date the review was created
- The stream associated with the review
- The user who created the review
- The users who are reviewing the review
You can select a filter to modify the type of reviews that are displayed.
- Open a review list.
- From the Reviews list select a filter.
You can also sort the reviews by category, and in ascending or descending order.
- Open a review list.
- Click Sort by.
- Select a category.
- Optionally select, or unselect, Sort descending.
Review pages
Each review page displays the following information:
- An icon that indicates the review's current state, for example, In Review or Approved.
- The review's ID and title.
- The associated stream or project.
- A summary of the review's health, for example, The chains indicated this change is good.
- Reviewer votes.
- The review owner and the lead and optional reviewers.
- Recent activity on the review.
- Related requests.
- The results of chains that ran on the changesets.
- The changesets associated with the review.
- The files and folders associated with the changesets.
- The contents of the files in the review.
Activity
The recent activity on the review is displayed in the Activity section, for example:
- The delivery that created the review
- Chains that ran on the review
You can filter the information that is displayed:
- Discussions & Deliveries: only displays user generated events (such as Review sent for rework) and comments added by reviewers.
- Grouped: also displays the results of chains and experts that ran on the changesets associated with the review.
- All: displays both of the above.
Requests
Related requests are displayed in the Requests section and a summary of the first one is expanded. Click the title of any review to view its details.
The results of any chains that have run on the changesets associated with the review are displayed in the Chain Runs section. Expand a chain run to view the measurements and findings of each expert.

Changesets
The changesets associated with the review are displayed in the Changesets section. Multiple changesets are associated with a review if users have made several deliveries to a stream using the same request.
If a review is associated with multiple changesets you can filter the files that are displayed.
- In the Changesets section select two changesets to compare with each other.
- Click View. The contents section and the sidebar are updated and only files that have changed between the selected changesets are now displayed.
Contents
The Contents section, and the sidebar, display all the files and folders in a review. You can view the contents of any file and add comments.
Publish a review
When a review is created its initial state is Draft. If you are the review owner, or a user with administration privileges, you can publish the review so that it is available to your team. The owner is normally the user that delivered the changeset that created the review.
- On the review list page select the review you want to publish.
- Click Publish.
- Click Publish Review. The review is now at the In Review state.
Add and remove reviewers
Each review can have reviewers with these roles:
- A review owner; normally the user who delivered the changeset that created the review.
- One or more lead and/or optional reviewers.
- A review owner, or an administrator, can add and remove lead and optional reviewers.
- A lead reviewer can add and remove optional reviewers.
- An administrator can add anyone as a review owner or a reviewer.
- A review owner or lead reviewer can only add reviewers that have a role on one of the review items' design parts.
To add reviewers to a review:
- Open a review.
- In the Reviewers section click Add and then Lead Reviewer or Optional Reviewer.
- Select more or more reviewers.
- Control click to select multiple users.
- Use Search to find users.
- Click Add Reviewers.
To remove reviewers from a review:
- Open a review.
- In the Reviewers section select more or more reviewers.
- Click Remove and confirm.
Browse the contents of files in a review
The Contents section, and the sidebar, display all the files and folders in a review. Changes to files and folders, and to lines and characters in files, are displayed with these colors:
| File added | |
| Line and/or characters added | |
| File deleted | |
| Line and/or characters deleted | |
| Line and/or characters deleted | |
| File renamed |
The sidebar displays the total number of files in the review.

The Contents section displays the number of files and folders that have been added, modified, renamed, and deleted.

Click a file to view its contents. Use the Show menu to control how the file contents are displayed.
- Binary files are not displayed but you can download them.
- If a file is marked as binary but you know it is a text file, from the Show menu select As Text. In CM, check the format and upload rules.
- If only part of a file's contents are displayed, from the Show menu select Entire File.
- Only the contents of the first 30 files are displayed. To display more files scroll to the bottom of the review page and click Load more.
- To display the previous revision of a file, from the Show menu select Previous.
- To combine the previous and current revisions of a file, from the Show menu select Unified.
- To display the previous and current revisions of a file in separate columns, from the Show menu select Display Side by Side. The current version is displayed on the right tab and the previous version on the left tab.
- Lines that have been added, or have new characters, start with a '+' (plus) character.
- Lines that have been deleted, or where characters have been deleted, start with a '-' (minus) character.
- To control how white space is displayed, from the Show menu select a white space option.
- To open the version of the stream (in the repository browser) where a file revision was made, click its ID number on the tab.
Add comments to files in reviews
You can add comments to files in a review and collaborate with team members. Each reviewer receives an email with a snippet of the code and the review comments. This is different to adding a comment to an entire review.
- On a review page find a file.
- In the line number column, click and drag to select the lines where you want to add a comment.
- In the Comment box enter your comments. Optionally, format the comment using the toolbar or markdown syntax.
- To display how your comment will look, click Preview. To continue editing click Edit.
- To add the comment click Comment. Your comments are now visible to your team and their responses will be displayed in the same comment box.

You can also email comments to users who are not included in a review, for example, you want the opinions of other developers.
a. On the toolbar click Mention
or enter the @ character in the comment box.
b. Start typing the name of a registered user, PulseUno automatically displays the names of users that match.
c. Select a user.
d. Repeat to add additional users.

- Comments are tied to the file version where they were added and shown when that version is displayed.
- Comments are not added to the actual file versions.
- You can add comments to reviews at specific states.
- You can edit your own comments until there is a reply.
Vote on a review
You can vote to approve a review or request changes. Depending on how the rules script for this stream is configured, your vote may trigger the rule script to move the review to its next state.
- At the top of a review click Approve or Request Changes.
- Enter the reasons why you are voting to approve the review or requesting changes.
- Optionally format your comment (see the markdown reference).
- To display how your comment will look click Preview. To continue editing click Edit.
- If a check list is presented, select items that have influenced your voting decision.
- Click Approve or Request Changes.
You can also abstain from voting. This useful if there is a rule that mandates that all reviewers must vote, but you have no opinion.
- Open a review.
- Click Action
and select Abstain with No Opinion. - Enter a reason for abstaining and click Abstain.
Mark a review as approved
As an administrator, you can bypass reviewer voting and mark a review as Approved.
- Open a review.
- Click Action
and select Mark as Approved. - Click Approve Review.
Change a review’s owner
As an administrator, you can change a review's owner.
- Open a review.
- Click Change Owner.
- Select a user.
- Click Change Owner.
Send a review for rework
If you are a review owner, or a user with an administrator role, you can send a review back to its owner for rework with suggestions for improvement, and bypass reviewer voting.
- Open a review.
- Click Action
and select Send for Rework. - Click Send for Rework.
Abandon a review
If you are a review owner, or a user with an administrator role, you can abandon a review. Abandoning a review indicates that it is no longer active and stops further review activity. This action cannot be reversed.
- Open a review.
- Click Action
and select Abandon Review. - Click Abandon Review.
Close a review
If you are a review owner, or a user with an administrator role, you can close a review. Closing a review prevents further changes being made to it. Only close a review if you are sure that no further work is required.
- Open a review.
- Click Close Review and confirm.
Add comment to an entire review
You can add comments to an entire review when it is at specific states. Comments appear in a review's activity feed. This is different to adding comments to a specific file in a review.
- Open a review.
- Click Action
and select Comment on Review. - Optionally format your comment. To display how your comment will look click Preview. To continue editing click Edit.
- When you have finished click Add Comments.
Edit a review's title
You can edit a review's title.
- Open a review.
- Click Action
and select Edit Title. - Enter a new title and click Save.
Set review page and pull request defaults
You can set the display defaults for the files in your reviews and pull requests:
- Display comments made by reviewers
- Display the findings made by chain runs inline inside files. If you switch this off, mouse over the margin to display findings.
- Display the entire contents of each file
- Display the previous version of each file
- Unify the previous and current differences of each file
You can also select a white space options, for example, Ignore White Space.
- Open a review or a pull request.
- Click Action
and select Display Defaults. - Select options.
- Click OK.
Manage review check lists
When a user votes to approve reviews, request changes, and packages they are typically required to select items from a check list. Administrators can create different types of check lists to satisfy different levels of severity. For example:
- Secure: a complex check list with high levels of tightly controlled compliance, for example, for licensing.
- Minimum: a small list with low levels of compliance, for example, for in-house testing.
For each stream or branch the same check list is used for approvals and changes, however, you can associate a different review check list with each stream.
To create a review check list:
- On the top navigation click Administration.
- Select Check Lists.
- Click New Check List.
- Enter a name for the check list.
- Enter items that you want your reviewers to select when voting to approve reviews or request changes. Review check lists may contain up to ten items. For example:
- Coding standards
- Export compliance regulations
- Software complexity rules
- Click Save.
To delete review check lists:
- Select Administration > Review Check Lists.
- Select one or more check lists.
- Select Delete and confirm.
You can also select the default check list for a space, product, and Git repository.
Watch a review
You can optionally watch a review when it is at specific states. When changes are made to the review you will be notified by email. You can select the notifications that you receive.
- To watch a review click Watch.
- To stop watching a review click Unwatch.
Administrators can configure changesets to automatically create reviews and run chains of experts. The first delivery of a changeset to Dimensions CM creates a new PulseUno review whose title is the same as the delivery change comment. If the review is related to a specific request, subsequent deliveries that use the same request are grouped under the same review.
To create reviews and run chains you need to:
- Create delivery filters
- Configure which changesets automatically create reviews and run chains
Create delivery filters
Delivery filters enable you to control how reviews are created, and chains are triggered, for each stream or branch. Every path in a changeset is matched against the patterns in a stream's delivery filter. If one or more paths pass through the filters, the changeset delivery creates reviews and runs chains. The default delivery filter for a product or Git repository is used by any streams or branches in that product or repository that do not have an assigned delivery filter.
To create a delivery filter for a product or Git repository:
- Select the product or Git repository where you want to create a delivery filter.
- In the sidebar, select Delivery Filters.
- Click the New Delivery Filter icon (+).
- In the Title box, enter a name for the new delivery filter.
- In the Note box, optionally enter information about the filter.
- Use the Exclude Paths/Include Paths fields to control which paths create reviews and run chains.
For Excluded paths, do one of the following:- To prevent specific paths from creating reviews and running chains, enter
Ant-style patterns (one pattern per line), for example:
**/.DS_Store
**/tmp/** - To create reviews and run chains for the included changesets, leave empty.
- To only create reviews and run chains for specific paths, enter Ant-style patterns (one pattern per line),
for example:
**/*.java
**/*.jsp - To create reviews and run chains for all changesets, leave empty.
- To prevent specific paths from creating reviews and running chains, enter
Ant-style patterns (one pattern per line), for example:
- If you have a system that delivers changes using specific usernames, for example a build process, you can ignore
those changesets. In the Exclude authors field, enter the usernames (login IDs)
on separate lines.
For example,regbuildexcludes all deliveries by the user with the login ID regbuild. - To ignore changesets with specific text in their delivery comments, in the Excluded
messages field, enter message patterns, where
*is a wildcard character and each pattern is on a separate line.
For example,*NO_REVIEW*excludes deliveries where the message contains the keyword NO_REVIEW. - Click Save.
For details on how to apply a delivery filter to a product or a Git repository, see Set delivery filter defaults.
Automatically create reviews and run chains
Administrators can configure which changesets delivered to streams and branches automatically create reviews and run chains of experts.
- Select the stream or branch that you want to configure.
- On the sidebar select Settings.
- Select the Filters tab.
- To control which changesets delivered to this stream create reviews and run chains, from the Filter Changesets using Delivery Filter select a delivery filter.
- Select the Reviews tab.
- To specify a review check list to be used with new reviews created in this stream, from the Check list to use list select one of the following:
- The product's default check list.
- Any other list that has been defined.
- No review check list.
- To specify the review rules for this stream, from the Rules to use list select the product's default rule or any other rule that has been defined.
- Select the Chain Execution tab.
- To configure how this stream runs chains, from the Run chains list select one of the following:
- The product's default setting
- Run chains on this stream
- Disable chains on this stream
- Click Save.
Inspect health and quality
PulseUno enables you to inspect health of your code, including:
- Create and run chains of experts to check the health and quality of source code and builds.
- Review code changes to determine if they are ready to be merged or released.
- Use pull requests to evaluate and merge a set of defined changes.
Chains
PulseUno includes experts that you can run in a sequence of steps called a chain. Experts enable you to:
- Perform builds
- Capture built artefacts
- Create and build Docker containers
- Deploy assets
- Fetch code from a repository
- Examine source code and artefacts for security vulnerabilities, report findings, and provide an opinion
- Perform static analysis
- Perform other activities such as fetch sources and send email notifications
Experts
The following experts are included with PulseUno:
Build
- Ant: runs an Ant build.
- CM Build: if your team uses Dimensions Build and you have existing build configurations, you can run the configurations in PulseUno.
- Dimensions CM command-line: enter dmcli commands.
- Gradle: runs a Gradle build.
- Jenkins: a continuous integration server that you can use with PulseUno to execute, and report on, builds of changesets as they are delivered.
- Makefile: runs a build using a makefile.
- Maven: builds and distributes artefacts.
- MSBuild: runs an MSBuild.
- Script: runs a batch script (Windows) or shell script (Linux).
- Visual Studio Build: runs a Microsoft Visual Studio Build.
Capture
- Capture to DA CodeStation: captures built artefacts to Deployment Automation CodeStation. These artefacts represent deployable items such as files, images, databases, configuration materials, or any other assets associated with a software project.
- Capture to Dimensions CM: captures built artefacts to a Dimensions CM stream.
- Capture to Directory: captures built artefacts to a directory.
- Capture to SCP/SFTP: captures built artefacts to a workspace using secure copy (SCP) or to remote network server using Secure File Transfer Protocol (SFTP).
Container
- Build a Docker Image: builds a Docker image in which you can run applications.
- Run a Docker Container: creates a Docker container in which you can run Docker images.
- Run Script in Docker Container: use a command to execute a script in a Docker container that is running, without logging into that container.
Dependency
- CycloneDx Dependency Detector: a lightweight software bill of materials (SBOM) specification designed for use in application security contexts and supply chain component analysis.
- Maven Dependency Detection: analyzes the dependencies of a project and determines which are: used and declared; used and undeclared; unused and declared.
- Npm Dependency Detection: checks which modules you have used in your code and lists them as dependencies in your package.json.
Deployment
- DA Deployment: imports and deploys a component using Deployment Automation.
- DA Generic Process: runs a generic process in Deployment Automation.
Fetch
- Fetch from Dimensions CM: fetches sources from a Dimensions CM repository.
- Fetch from Git: fetches sources from a Git repository.
- Fetch from StarTeam: fetches sources from a StarTeam repository.
Security
- Dependency Vulnerabilities: finds third party dependencies in your code that may have known security vulnerabilities.
- Fortify SCA (Static Code Analyzer): analyzes your source code and identifies the root causes of security vulnerabilities.
- WhiteSource: identifies all the open source components and dependencies in your build, reports any known security vulnerabilities, and lists their licenses.
Analysis
- Checkstyle: enforces coding standards.
- Copyright header checker: checks files for the presence of copyright statements or other snippets.
- Kiuwan: measures, analyzes, and verifies the quality of your code.
- PMD: analyzes source code and finds common programming bugs.
- SonarQube: inspects the quality of your code.
Test
- CTest Parser: parses CTest results files.
- JUnit Parser: parses JUnit results files.
- MSTest Parser: parses MSTest results files.
- NUnitParser: parses NUnit results files.
- TestNG Parser: parses TestNG results files.
Other experts
- Changeset Summary: counts the number of files added, deleted, and modified in each changeset.
- Code Summarizer: reports about lines in files, code languages, etc..
- Email Notification: sends email notifications to users.
- Halt on Failure: stops a chain if the previous expert in the chain failed.
- Microsoft Teams Notification: adds a Microsoft Teams notification using WebHook.
- Run another chain: run another chain that you have created..
For details about each expert and how to configure it see Configure Experts.
Expert attributes
Experts have these optional attributes:
- Execution state: Success, Failure, Unstable, or Aborted.
- Measurement: A set of single-valued judgments about source code. For example, 24,847 might be a measurement of lines of code, and High might be a measurement of the security risk level.
- Finding: When issues are identified, experts annotate the source code and provide a "severity" level to indicate how serious an issue is. Annotations are displayed in tabular form in the Experts section of a review page and some experts also annotate the files in the Contents section. Some findings may include a link to a web page that provides more details. See Inspect Expert Results.
Create and configure chains
Overview
A chain is comprised of a sequence of steps, and each step can run one expert. For example, this chain has three steps:

- Step 1: Maven builds the stream.
- Step 2: Capture WAR file captures the targets to the stream.
- Step 3: DA Deployment deploys the application to an environment
Chains are owned by streams or branches. You can configure multiple, independent chains to run on the same stream, for example:
- The first chain runs on every delivery and performs brief static analysis.
- A second chain runs at midnight every day, performs more thorough analysis, and deploys software.
Create chains
- Select the product or Git repository where you want to create a chain.
- In the sidebar, select Chains.
- Click New (+) .
- Enter a title and any other information about this chain.
- Click Save.
Select changesets to run chains on
You can configure the streams and changesets that a chain runs on and specify a chain run schedule. By default, a chain runs on all changesets.
To select a changeset:
- Select a product or Git repository.
- In the sidebar, select Chains, and then open a chain.
- Click Edit and select the Triggers tab.
- From the Run chain list, select how often the chain will run, for example, when every changeset is delivered, or when a pull request is published.
- For Matching streams, enter a pattern to specify the streams where the chain will run. Use asterisks ( * ) and commas ( , ) to specify multiple streams, for example, mainline,feature-*
- In the Path filtering field, enter Ant patterns (one per line) to only run changesets on paths that match the pattern. To trigger the chain, at least one path in the changeset must match the pattern. Leave empty to run the chain on all changesets.
- Click Save.
Add steps to chains
- Select a product or Git repository.
- In the sidebar, select Chains, and select a chain.
- Click Edit and select the Steps tab.
- From the Add Step list, select an expert or action from one of the categories.
- Add a name for this step.
- Configure the step. Each expert or action has different parameters, some of which are mandatory. For details see Configure Experts.
- Click Save.
- Add more steps as required.
- To change the running order of steps in the chain, drag and drop them to different positions.
- To remove a step from a chain, select it, and click Remove.
Add capabilities to chains
You can add capabilities to chains. Capabilities describe an agent's environment, for example:
- A specific operating system
- High memory
You can add multiple capabilities to a chain. When the chain runs it matches its required capabilities with the capabilities of the agents. For example, if a chain requires Windows Server 2016 and 64GB of memory, add WindowsServer2016 and 64gbMemory as required capabilities on the chain. The chain only runs on the agents that match these capabilities.
- Open the chain where you want to add capabilities.
- Click Edit and select the Options tab.
- In the Required Capabilities field, enter a comma-separated list of capabilities. Leave empty to run this chain on any agent.
- Click Save.
Add variables to chains
You can use variables in chains to tailor how chains behave on each agent or to provide a way of reusing the same value in multiple steps. For instance, a variable is defined on an agent to describe where a compiler is installed. This allows a chain to reference that location via the variable instead of a fixed value in the step's configuration. When the chain is run on the agent, the references to the variable are replaced with the values that have been defined for the agent. Similarly, two or more steps may need the same value, in which case you can define a variable on the chain with that value, and reference it on each step. An agent works out what a value should be for a variable in this order:
- The variable definition on the chain.
- The agent definition.
If there is no definition for the variable on the agent, it is assumed to be empty.
Example:
- An administrator creates a chain that will use Maven and can run on two agents.
- Maven is installed on different locations on each agent.
- The administrator adds a variable to each agent,
MAVEN_HOME, which defines the location of the Maven installation on that agent. - The administrator adds the variable
${MAVEN_HOME}in the chain step. - When the chain runs on an agent, the value of the variable is substituted with the value for the Maven location on that agent.
- Select the chain where you want to add variables.
- Click Edit and select the Variables tab.
- Click Add Variable.
- Enter a variable name and value pair, for example:
MAVEN=M2_HOME - Click Save.
Specify content to be analyzed
When a chain runs, you can specify the stream/branch content that will be fetched to the work area and analyzed. By default, the entire contents are fetched, which may be a slow operation depending on the size of the stream/branch.
To specify stream content:
- Select a stream.
- In the sidebar, select Chains.
- Open a chain and click Edit.
- In the Steps tab, click Fetch sources.
- Select from the following actions:
- To clean the workspace where the chain will run, select Clean workspace before fetching sources.
- To fetch no items, clear the Fetch stream content selection.
- To analyze the entire stream or branch, select Fetch stream content and leave the content field empty.
- To analyze part of the stream or branch, select Fetch stream content and in the content field enter Ant patterns (one per line) that match specific paths.
- Click Save.
View all chains in a stream or branch
You can view all the chains that have been added to a stream or branch.
To view chains:
- Select a stream or branch.
- In the sidebar, select Chains.
- From the list of chains, select a chain to view its results, configuration, and steps.
Share chains
You can export chains that you created and share them with your team.
- Open the chain that you want to export.
- From the Actions menu select Export Chain.
- Navigate to a folder and save as a
.chainfile.
You can import chains from members of your team:
- Select a stream or branch where you want to import a chain.
- On the sidebar select Chains,
- From the Actions menu select Import Chain.
- Navigate to the folder containing the
.chainfile, select the file, and click Open. - Click Import.
Additional chain configurations
You can set these additional configurations:
- Select a policy for retaining the logs created by a chain.
- Stop a chain after the failure of any step. For example, you have a chain with multiple steps and the last step is a build. If any of the previous steps fails, the chain stops, and the build is not executed. You can use this option instead of adding the Halt on Failure expert.
- Only queue one copy of a chain at any time.
- Open a stream, in the sidebar select Chains, and open a chain.
- Click Edit and select the Options tab.
- Select Stop chain on first step failure.
- Select Allow only one run of this chain to be in the queue.
- From the Retention Policy list, select a policy for keeping the logs in this chain. Retention policies are configured by your administrator.
Inspect expert measurements and findings
You can inspect expert results and findings in:
- The review where the chain ran
- The associated changeset
Results include:
- Finding for each expert, including Errors, Warnings, Failures, and Information.
- Measurements for each expert. Measurements are a set of single-valued judgments about source code, For example, 24,847 might be a measurement of lines of code, and High might be a measurement of the security risk level.
The state of each chain run is indicated by these icons and colors:
The chain run was successful
The chain run completed but failed
The chain run completed but is unstable
The chain run is in progress
The chain run has not started
The chain run was abandoned
The chain run was stopped or terminated
To inspect expert results and findings:
- Select a space, product, or stream.
- On the sidebar click Reviews or Changeset History. Scroll down to a review or changeset and select it.
The Chain Runs section displays results for all the experts that ran on this review. Expand each expert to view its measurements and findings. Some experts may include a link to a web page that provides more details.

The Contents section of a review displays a list of all the files in the review and the number of expert findings for each file.
- To view an expert's findings for a specific file, in the Contents section select the file.
- From the Show menu select Show Entire File.
- Scroll down the file until you see results that you want to inspect. Each line number with a result has a color that represents one of these categories:
- Blue: information
- Dark Orange: error
- Orange: warning
A line may have multiple results.
- Mouse over a line number to display information.

View chain run details
You can examine each chain run in detail and view expert findings.
- Select a stream.
- On the sidebar select Chains.
- Select a chain. A list of the chain's recent runs is displayed. Each run shows:
- The run's state icon
- The run ID
- The changeset where the chain ran
- The duration of the run
- The instance of PulseUno that ran the chain
- Click a chain run ID to view more details. Click a tab to view its details:
- Console: displays the output log for each expert in the chain. Expand an expert to view its logs. Logs are expanded by default if they include failures. Warnings and messages are color coded. To filter the information that is displayed, select a log threshold level. To download a log, from the Actions menu select Download Logs. Log files use LF line separators.
- Findings: displays the findings for each expert in the chain, including Errors, Warnings, Failures, and Information. Expand each expert to view more details.
- Measurements: displays the measurements for each expert in the chain. Measurements are a set of single-valued judgments about source code, For example, 24,847 might be a measurement of lines of code, and High might be a measurement of the security risk level. If any items were captured, a report is attached to this tab.
- Activity: displays the activity for each expert in the chain including: when the expert ran, the changeset where it ran, and the associated review. Some experts include a link to a web page where you can view additional details.
- Changesets: lists all the changesets consumed by this run.
- Requests: lists all the requests associated with this run.
- Contents: lists all the files that have changed since the previous run.
- To run this chain again on the same changeset, click Re-run.
- To override the default log retention policy for this chain and keep the log, click Keep Forever.
Edit and delete chains
Administrators can edit and delete chains:
- Select the stream containing the chain that you want to edit or delete.
- On the sidebar select Chains.
- To delete one of more chains, select them from the list, click Delete, and confirm.
- To edit a chain, select it, and click Edit.
- Edit the chain's configuration, add and remove steps, and change their running order, and add variables.
- Save the changes.
- Activity events involving the deleted chain.
- Findings or measurements that the deleted chain added to reviews.
- Any panels that contain measurements from the deleted chain.
Diagnose chains
If you are having issues with a chain you can diagnose it by running it manually.
To diagnose the latest changeset, select the stream that contains the chain that you want to diagnose and do one of the following:
- On the sidebar select Chains, select the chain, and click Run on Latest Changeset.
- On the sidebar select Changeset History, select the latest changeset, and from the Actions menu select Run Chains.
To diagnose a specific changeset:
- Select the stream that contains the chain that you want to diagnose.
- On the sidebar select Chains.
- Select the chain.
- On the Runs tab select a specific run.
- Click Re-run.
Use pull requests to manage changes
A pull request is a special type of review that you use to evaluate and merge a set of defined changes, typically in a topic stream. Pull requests are a collaborative process that allows a team to:
- Review the proposed code changes.
- Add review comments and contribute to a discussion.
- Protect your mainline stream from unwanted changes, bad merges, and broken builds.
- Approve changes and merge them into a mainline.
Key facts about pull requests:
- Are related to two streams: the source stream, where the pull request changes are made and reviewed, typically a topic stream; and the target stream, where the pull request changes will be merged to, typically a mainline stream.
- Can be related to a request, which is used to merge the changes in the pull request.
- Enable you to merge changes into a target stream without using a work area.
- Can run chains to help you decide if the changes in a stream are healthy.
PulseUno administrators can configure a new pull request to be automatically created when a topic stream is created. The new pull request is automatically linked to the topic stream.
About pull requests and topic streams
Topic streams are temporary Dimensions CM streams that you use for a set of defined changes, for example, to fix a defect or develop a small feature. Topic streams enable you to isolate changes from a mainline stream. Topic streams have some limitations compared to normal streams but the main advantage is they are very quick to create.
A topic stream and its related pull request work together to help you review and merge changes:
- A topic stream is created from a parent stream, which creates a pull request. You can create topic streams in the Dimensions CM clients.
- Changes are delivered to the topic stream and related to the pull request.
- The pull request is reviewed, approved, and merged into the topic stream’s parent stream.
Key facts:
- Reviewers use the pull request to review the changes in the topic stream.
- The pull request contains the changes in the related topic stream.
- The request related to the pull request is used to merge the changes in the topic stream into its parent stream.
Review pull requests
You can assign reviewers to a pull request before you publish it. Reviewers can add comments to the changes, identify issues, make suggestions, and answer questions. When a comment is made, the pull request author and all the reviewers receive an email with a snippet of the code and the review comments.
Merge changes in pull requests
If the parent product or stream has been configured to automatically merge pull requests, when a review moves to the Approved state, the pull request is automatically merged into its parent stream.
If automatic merge is not enabled, when changes have been reviewed and approved, and if there are no conflicts between the topic stream and its parent, you can manually merge the pull request. If there are conflicts, you must resolve them in a work area before you can merge the pull request.
If the merge is successful the pull request is automatically closed. If the merge fails a warning is displayed at the top of the pull request.
Use pull requests
The following topics describe how to use pull requests to review and merge changes.
Configure how pull requests are created
As an administrator, you can define how pull requests are created for a specific topic stream/branch or product/Git repository.
The default naming scheme for pull requests is PR<nn> :<title>
To configure how pull requests are created for a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings.
- Select the Pull Requests tab.
- From the Creation from Child Streams list, select one of the following options:
Option Description Do not allow Pull requests are disabled for topic streams/branches.
Allow manual Pull requests can be created manually between pairs of streams/branches.
Automatic for Topic Streams Pull requests can be created manually between pairs of streams/branches. Child topic streams/branches automatically create pull requests.
Use the product's default setting for creating pull requests This option applies the default setting selected for the product or repository.
- Click Save.
To configure how pull requests are created for a product or Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- In the sidebar, select Settings > Reviewing changes.
- On the Reviewing Changes page, in the Pull Requests section, select options for creating pull requests:
- Enable pull request creation.
- Allow for pull requests to be created automatically.
- Click Save.
Create pull requests manually
If pull requests are not configured to be created automatically for a topic stream or branch, you can create one manually. You cannot create a pull request in a non-topic stream or parent branch.
To manually create a pull request:
- Select the topic stream or branch where you want to create a pull request.
- Click New Pull Request.
- In the New Pull Request dialog box, select the following:
- The product where you want to create a pull request. Default: the product to which the stream belongs, or the repository to which the branch belongs.
- A source stream. Default: the topic stream or branch.
- The target stream the pull request will be merged into when development is complete. Default: the parent of the topic stream or branch.
- Enter a title and description.
- Add lead and optional reviewers who can vote to approve or request changes. Choose developers who you think are most suitable to review these changes.
- Select a request that describes the changes to be made. This request will be used to merge the changes into the parent stream. If the topic stream or branch is already related to a request, it is automatically selected. To relate a different request, click Relate and select a request from the Relate Requests dialog box. To unrelate a request, click Unrelate.
- Click Create. The new pull request is now at the Draft state.
Open and modify pull requests
You can open and view a pull request. If you are the pull request author, you can also:
- Edit the title and description.
- Change the author.
- Add and remove reviewers.
- Change the related request.
- Change the display defaults.
To modify a pull request:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- From the Reviews list, select a filter, for example, Active.
- Select the pull request that you want to view or modify. On the Conversation tab, you can change the following:
- Description
- Author (the owner of the pull request)
- Reviewers
- Related request
- To edit the title or display defaults, select an option from the Actions menu.
Publish pull requests
If you are the author of a pull request, you can publish it for review after you finish delivering your changes.
When you publish a pull request:
- It moves to the In Review state.
- The reviewers are notified.
To publish a pull request:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Select a pull request from the list.
- On the pull request page, click Publish.
- Click Publish Review. Depending on your review rules, you may want to action the related request to its In Review state.
Run chains on pull requests
You can run chains on pull requests to help you decide if the changes in the related stream or branch are healthy. For details about chains, see Inspect health and quality.
To configure a pull request to run chains:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Select the pull request where you want to run chains.
- From the Actions menu, select Run Chains.
- Select one or more chains that have been defined for the related stream or branch.
- Click Run Chains. The selected chains are queued. After the chain has run, click the Chain Runs tab to view the results.
Review and approve pull requests
If you are the reviewer of a pull request, you can:
- View the associated code changes.
- Add review comments and collaborate with team members.
- View the results of chains that have run on the pull request.
- Vote to approve changes to the pull request.
To review and approve a pull request:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Select a pull request from the list.
- To view the code changes, click the Changes tab. The Contents section lists all the files in the review. To review a specific file, select it from the list, or scroll down. The list of files is also displayed in the sidebar.
- To add comments to a file:
- Click and drag to select the lines where you want to add a comment.
- In the Comment box, enter your comments. Optionally, format the comment using the toolbar or markdown syntax.
- Click Comment. Your comments are now visible to your team and their responses will be displayed in the same comment box. Each reviewer receives an email with a snippet of the code and the review comments.
- To vote to approve a pull request, click Approve. Enter the reasons for your approval and click Approve.
Request changes to pull requests
If you are the reviewer of a pull request, you can ask for changes to be made to the code. Depending on your review rules, the pull request can be sent back to its author for rework. The author can make additional changes and republish the pull request.
To request changes to a pull request:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Select a pull request from the list.
- To vote for changes to be made, click Request Changes.
- Enter comments and click Request Changes.
Merge pull requests automatically
As an administrator, you can enable approved pull requests to merge automatically into the target stream or branch. Automatic merging only works if there are no conflicts when the pull request moves to the Approved state.
If a pull request fails to merge automatically, you can try and merge it manually. For details, see Merge Pull Requests Manually.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, click Settings and then select the Pull Requests tab.
- From the Merge rule list, select a rule that enables automatic merges. For details about merge rules, see Create Merge Rules.
- Click Save.
Merge pull requests manually
If the parent stream or branch has not been configured to automatically merge approved pull requests, you can do a manual merge if there are no conflicts between the contents of the topic stream/branch and its target stream/parent branch.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Open the pull request that you want to merge into the target stream or branch.
- Click Merge Pull Request.
- Add a merge comment and click Merge. If the merge is successful, the pull request is automatically closed. If the merge fails, a warning is displayed at the top of the pull request.
Abandon pull requests
As an administrator, you can abandon reviews if they are no longer required. This stops further review activity and cannot be reversed.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Open the pull request that you want to abandon.
- From the Actions menu, select Abandon Review.
- Click Abandon Review.
Update pull requests
The latest changesets in a topic stream or branch are automatically attached to pull requests. However, to check that the pull request is current, you can scan for the latest changes.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Open the pull request that you want to update.
- From the Actions menu, select Scan for New Changesets.
- Click Scan.
Change ownership of pull requests
As an administrator, you can change the ownership of pull requests.
To change the ownership (author) of a pull request:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Select a pull request from the list.
- On the Conversation tab, in the Author section, click Change Owner.
- Select the user who will be the new author.
- Click Change Author.
Mark pull requests as approved
As an administrator, you can bypass the review of pull requests and mark them as approved. If the parent stream or branch has been configured to automatically merge, the pull request is merged into its parent stream or branch.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Open a pull request.
- From the Actions menu, select Mark as Approved.
- Click Approve Review.
Send pull requests for rework
As an administrator, you can bypass the review of pull requests and send them to the author for rework.
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- (Optional) To restrict the scope of the search, select a stream or branch.
- In the sidebar, click Reviews.
- Open a pull request.
- From the Actions menu, select Send for Rework.
- Click Send for Rework.
Configure pull requests
The following topics explain how to configure pull requests settings such as merge rules and check lists.
Create merge rules
As an administrator, you can manage the rules that control who can merge pull requests.
To create a merge rule:
- In PulseUno, navigate to Administration > Merge Rules.
- On the Merge Rules pages, click the New Merge Rule icon (+).
- On the New Merge Rule page, provide the following details:
Field Description Title Enter a name for the new merge rule.
Automatically merge To enable pull requests to be merged automatically, select Automatically merge when a pull request is approved. The automatic merge is performed by the repository’s system user in the background.
Conversations Define how pull request conversations affect the merge:
- Ignore conversations (default).
- Do not verify conversations.
- All pull requests must be Resolved and Accepted.
- All pull requests must be Resolved.
Check lists Select All check list items must be checked to enable merging only after all items on the check list are selected.
Who can merge To display the Merge button in pull requests, select the author and/or reviewers. These users must have the correct privileges to perform a merge.
Merge gatekeepers To add other users who can see the Merge button, click the New icon (+) and add merge gatekeepers. These users also require the correct privileges.
- Click Save.
Apply merge rules
As an administrator, you can apply rules for merging pull requests to a stream/branch or a product/Git repository.
Before you can use a merge rule, you need to create it. For details, see Create merge rules.
To apply a merge rule to a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings.
- Select the Pull Requests tab.
- From the Merge Rule list, select a rule. To use the product's or repository’s setting, select Use the product’s default rule.
- Click Save.
To apply a merge rule to a product or a Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- In the sidebar, select Settings > Reviewing Changes.
- On the Reviewing Changes page, in the Pull Requests section, select Use custom merge rule. Then select a rule from the list.
- Click Save.
See also
Set pull request rules
As an administrator, you can set the default review rules used by pull requests.
Rules control how reviews move from one state to another, for example, whether all reviewers must approve a review, or just one reviewer. For more details, see Review rules.
To set a pull request rule for a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings.
- Select the Pull Requests tab.
- From the Rules To Use list, select a rule.
- Click Save.
To set a pull request rule for a product or a Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or Git repository.
- In the sidebar, select Settings > Reviewing changes.
- On the Reviewing Changes page, in the Pull Requests section, select Use custom pull request rules.
- From the list of rules, select a rule.
- Click Save.
Set default check lists
As an administrator, you can set the default review check lists used by pull requests. You can also specify no check list. For details about check lists, see Manage review check lists.
To set a default check list for pull requests in a stream or branch:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- Select a stream or branch.
- In the sidebar, select Settings.
- Select the Pull Requests tab.
- From the Check List To Use list, select a check list.
To apply no check list, select Do not use review check lists for reviews in this stream. - Click Save.
To set a default check list for pull requests in a product or a Git repository:
- In PulseUno, navigate to Spaces, select a space, and then select a product or a Git repository.
- In the sidebar, select Settings > Reviewing changes.
- On the Reviewing Changes page, in the Pull Requests section, select Enable check list.
- From the list, select the check list you want to use.
- Click Save.
Set display defaults
You can set the display defaults for your pull requests. For details, see Set review page and pull request defaults.
Map pull request states to Dimensions CM request states
Administrators can map the following PulseUno pull request states to Dimensions CM request states:
- In Review: a comma separated list of CM request states that can add reviewers to pull requests.
- Rework: when a pull request is sent for rework, action the associated request to the specified CM state.
- Approved: when a pull request is approved and ready to be merged, action the associated request to the specified CM state.
- Completed: when a pull request is merged successfully, action the associated request to the specified CM state.
- Mappings are optional.
- To disable a mapping leave the field blank.
- Leave all fields blank unless your CM request lifecycle includes an In Review state.
- On the top navigation click Administration.
- Select Repositories and then a CM repository
- Select Defaults and then the Pull Requests tab.
- In the state name in CM fields, enter CM states.
Set the Dimensions CM reviewer role
Administrators can set the default Dimensions CM role for pull requests. Users that hold this role can be selected as reviewers for pull requests. Default role: REVIEWER
- On the top navigation click Administration.
- Select Repositories and a CM repository
- Select Defaults and then the Pull Requests tab.
- In the Reviewer role name in CM section, enter a Dimensions CM role.
Use vaults to store software components
About PulseUno vaults
What are vaults?
A PulseUno vault is a secure repository for collections of software components such as binaries, artifacts, and meta data. A collection of software components is also called a package.
Vaults provide a central library for your packages and integrate with build and development pipelines. Vaults are used by package managers such, as Maven, to retrieve components during build and deployment processes.
Vaults have audit trails, reviews, and approvals that enable you to manage your own, and third-party, packages.

Vault types
PulseUno has the following types of vaults:
- Local: a vault stored on a local file system or repository.
- Remote: a vault stored on a remote file system or repository. Use this type of vault to cache the contents of a remote repository such as Maven Central on your local network so that its contents can be retrieved quickly.
- Virtual: a collection of local and remote vaults. Virtual vaults enable you to organize your vaults into virtual collections. A typical example is a single virtual vault that combine two vaults:
- A local vault containing your application binaries.
- A remote vault containing third party tools, such as Maven.
Key features of PulseUno vaults
- Version control of packages in Dimensions CM or a local file system.
- Control access to packages based on an approval process, for example, deny access to packages that have known security issues.
- Integrates with package managers such as Maven and npm.
- Audit trail and reporting of packages.
- Custom scripts for automating approvals and rejection, for example, automatically approve packages that have an Apache 2.0 license and no security issues.
See also
Create, configure, and delete vaults
Give roles on vaults to users and teams
Review and approve vault packages
Vaults home page
On the vaults home page you can view:
- The details of each vault inluding its URL and packages.
- The details of each package such as its contents, licenses, and any vulnerabilities that were detected
- Activity such as who delivered, used, reviewed, and approved packages.
To open the vaults home page:
- On the top navigation click Spaces and select a space.
- On the sidebar click Vaults. The Vaults tab displays all the current vaults. You can filter the list by vault type, package type, and creation date. The Activity tab displays the recent activity for all vaults.
- Select a vault to view its packages, details, and activities.
- Select the Packages tab. The vault's URL is displayed at the top right. Click Copy to paste the URL into your IDE or build scripts.
- Select a package version. Information about the package version is displayed, such as its contents, licenses, and any vulnerabilities that were detected.
- To display the users who have access to the vault and the roles they hold, for example, developer and approver, on the sidebar click Members.
- To view a vault's general settings, on the sidebar click Settings.
Create, configure, and delete vaults
This topic describes how to:
- Create and configure local, remote, and virtual vaults.
- Edit vault settings.
- Delete vaults.
- You cannot change a vault's package and storages type after you create it.
- Micro Focus recommends using a single stream, or branch, per vault.
Create local vaults
You can create a local vault on a local file system or repository.
To create new local vaults:
- Open the vaults home page.
- Click Add (+) and select Local.
- On the Connection Details tab enter a name for the local vault and a description.
- From the Package type list select a vault package type.
- Select the access permission:
- Authenticated: any logged in user has full access to the vault.
- Anonymous: no login authentication required, read-only access to the vault.
- Select Enable automatic checking of packages for vulnerabilities if required.
- Select the Storage tab.
- Select a storage type:
- Filesystem: the vault will be stored on your local machine.
- Dimensions CM: the vault will be stored in a local CM repository. Select a connection to an existing repository or create a new connection. Administration rights are required to create a new connection.
- Click Save.
Create remote vaults
You can create a remote caching vault on a remote file system or repository.
To create new remote vaults:
- Open the vaults home page.
- Click Add (+) and select Remote.
- On the Connection Details tab enter a name for the remote vault and a description.
- From the Package type list select a vault package type.
- Select the access permission:
- Authenticated: any logged in user has full access to the vault.
- Anonymous: no login authentication required, read-only access to the vault.
- Select Enable automatic checking of packages for vulnerabilities if required.
- For Remote URL enter the URL of the remote repository that is going to be cached, for example:
https://repo1.maven.org/maven2/
- Enter a user name and password for the remote vault.
- Select the Storage tab.
- Filesystem: the vault will be stored on your local machine.
- Dimensions CM: the vault will be stored in a local CM repository. Select a connection to an existing repository or create a new connection. Administration rights are required to create a new connection.
- Click Save.
Create virtual vaults
You can create a virtual vault, a collection of local and remote vaults. The order of the vaults in a virtual vault is important: they are consumed in descending order, starting from the first vault. After you have created a virtual vault, change the order of the vaults as required.
To create new virtual vaults:
- Open the vaults home page.
- Click Add (+) and select Virtual.
- On the Connection Details tab enter a name for the virtual vault and a description.
- From the Package type list select a vault package type.
- Select the access permission:
- Authenticated: any logged in user has full access to the vault.
- Anonymous: no login authentication required, read-only access to the vault.
- Select Enable automatic checking of packages for vulnerabilities if required.
- Click Save.
To add vaults to virtual vaults:
- On the vault home page select a virtual vault.
- On the Vaults tab click Add (+). The Add vaults dialog box opens.
- Enter a search string and click Enter.
- In the results list select vaults and click Add.
- On the Vaults tab, optionally change the order of the vaults.
Specify the vault to be populated in a virtual vault
Virtual vaults contain multiple vaults. When you populate a virtual vault, the published vault is the one that is populated with packages.
- Only one vault in a virtual vault can be published.
- You can change the published vault at any time.
To specify the vault to be populated in a virtual vault:
- Open a virtual vault.
- Select a vault.
- Click Publish.
Edit vault settings
You can edit settings and configurations for existing vaults.
To edit the settings for vaults:
- Open the vaults home page and select a local or remote vault. You can also select vaults in virtual vaults.
- On the sidebar click Settings.
- Edit the settings and click Save.
Delete vaults
You can delete vaults. Deleted vaults are kept for 7 days before being permantly deleted. You can cancel a deletion anytime during that period.
To delete a vault:
- Open the vaults home page.
- Select the vault you want to delete.
- On the sidebar select Settings > Advanced.
- Click Delete this vault.
- Confirm the deletion.
To cancel the deletion of a vault:
- Open the vaults home page.
- Select the vault whose deletion you want to cancel.
- On the sidebar select Settings > Advanced.
- Click Stop deletion.
- Confirm the cancellation.
Give roles on vaults to users and teams
This topic describes how to add members (individual users and teams) to vaults and give them roles. Roles have these capabilities:
- Owner: can administer vaults, for example, change vault settings, delete vaults, publish packages into vaults, and download packages from vaults.
- Approver: can approve and reject packages.
- Developer: can only download packages from vaults.
- Deployer: can download and deploy packages into vaults and send packages for approval.
- CIBuild: can download and deploy packages.
For information about creating teams see Create and edit teams.
Add users to vaults and give them roles
You can add individual users to vaults and give them a role.
- Open the vaults home page and select a local or remote vault. You can also select vaults in virtual vaults.
- On the sidebar click Members.
- Select the Individuals tab.
- To add users click Add Individual (+). The Add Individuals dialog box opens.
- Select a role from Role to assign.
- Search for users and click Enter.
- Select users and click Add.
Add teams to vaults and give them roles
You can add teams to vaults and give them a role.
- Open the vaults home page and select a local or remote vault. You can also select vaults in virtual vaults.
- On the sidebar click Members.
- Select the Teams tab.
- To add users click Add Team (+). The Add Team dialog box opens.
- Select a role from Role to assign.
- Search for teams and click Enter.
- Select teams and click Add
Delete members from vaults
You can delete users and teams from vaults.
- Open the vaults home page and select a local or remote vault. You can also select vaults in virtual vaults.
- On the sidebar click Members.
- Select the Individuals or Teams tab.
- Select users and teams.
- Click Delete and confirm.
Change the roles for members
You can change the role for members.
- Open the vaults home page and select a local or remote vault. You can also select vaults in virtual vaults.
- On the sidebar click Members.
- Select the Individuals or Teams tab.
- Select users and teams.
- Click Change Role and select a role.
Use vault approval checklists
This topic describes how to:
- Use checklists when approving vaults.
- Set the default checklist across all vaults.
Use checklists when approving vaults
When approvers review packages, you can mandate an approval checklist for each vault. For example, you can require an approver to verify that a package has an Apache 2.0 license and no security issues. For information about checklists and how to create them, see Manage review check lists.
To use checklists when approving vaults:
- Open the vaults home page select a local or remote vault. You can also select vaults inside virtual vaults.
- On the sidebar click Settings > Approving changes.
- Select Enable check list.
- Select a package approval checklist for this vault.
- Click Save.
Set the default approval checklist across all vaults
You can mandate the use of package approval checklists and set the default checklist, across all vaults.
To set the default approval checklist:
- Open the Space containing the vaults.
- Select Settings > Vault defaults.
- Select Enable check list.
- Select the default package approval checklist for all vaults.
- Click Save.
Populate vaults with packages
There are many reasons to store binaries in a vault, but there are two common use cases:
- Internal: binaries built from your software. When you publish these package types they typically do not need to be approved and can be consumed by developers.
- External: components downloaded from third part vendors, such as Maven. When this package type has been added to a vault, it can be reviewed, approved, and then consumed by developers. An external package cannot be used in build and deployment processes until it has been approved, see Review and approve vault packages.
When building software, you need to specify the URLs for the vaults you are publishing packages into or pulling packages from. The configuration of these URLs depends on the package types, build systems, and IDEs that you are using. See your package manager's user help for details.
Vault URL format
Use the following URL format to specify the location of vaults in PulseUno:
http://<hostname>:<port number>/vault-server/<vault type>/<space name>/<vault name>
where:
| Parameter | Description | Example values |
|---|---|---|
| <hostname>:<port number> | Specifies the machine name and port number where the PulseUno vault is located. |
dev:8080 |
| vault-server | You must specify this parameter. | n/a |
| <vault type> | Specifies the vault type. | maven npm |
| <space name> | Specifies the name of the PulseUno space where the vault is located. |
app |
| <vault name> | Specifies the name of the vault that will be populated with the contents of the package. |
dev-cache |
Example URL:
http://dev:8080/vault-server/maven/app/dev-cache
- Open the Vaults home page.
- Select the vault. The URL is displayed at the top right of the Vaults tab for a virtual vault and the Packages tab for local and remote vaults.
- Click Copy to copy the URL to your clipboard, you can then paste it into your IDE or build scripts.
Publish packages
This topic describes how to publish packages so that they can be reviewed by approvers. For information about adding approvers see Give roles on vaults to users and teams.
- Open the vault containing the package that you want to publish.
- Select the package and then a package version.
- On the Conversation tab, on the right-hand side, click Approver.
- Select approvers for this package and click Save.
- To publish the package so that it can be reviewed and approved, click Publish, and then Publish Package.
Review and approve vault packages
This topic describes how to:
- Review package contents, for example, inspect vulnerabilities.
- Approve and reject packages. Approved packages can be consumed by build and deployment processes.
Review package contents
You can inspect the contents of a package, review its details, and send comments to team members.
To review package contents:
- On the top navigation click My Work.
- On the sidebar click Package approvals. A list of all the packages for which you are an approver are displayed. Filter the list as required, for example, by package version or the users who deployed the packages.
- Select a package.
- On the Conversation tab, send comments and questions to other members of your team about this package. Replies from your team are displayed on this tab.
- To view information about the package, select a tab:
- Details: displays the package's details such as the vault URL and package type.
- Content: displays the contents of all the files and folders in the package.
- Activity: displays the recent activity for the package.
- Licenses: displays licenses for the package, for example, Apache 2.0.
- Vulnerabilities: displays vulnerabilities detected by PulseUno including: name, Common Weakness Enumeration (CWE, software weakness types), severity, and a description.
Approve vault packages
You can approve packages so that they can be consumed by development teams in their build and deployment processes.
You can reject packages if they violate your organizations standards such as licensing, performance, and security. When a package is rejected, it cannot be used. The developer who added the package must fix the issue, for example, use a different version.
To approve or reject packages:
- Open the package that you want to approve or reject.
- Click Approve or Reject.
- Enter the reasons for approving or rejecting the package.
- Select items from the checklist.
- Click Approve or Reject.
Specify vault approval rules
PulseUno includes the following example vault automated approval rules:
- defaultRule.js: approves all packages that have no critical or high security issues and have an Apache-2.0 license.
- rejectGPL: rejects all packages that contain a GPL license.
- rejectHighSeverity: rejects all packages that contain high severity vulnerabilities.
You can specify the approval rule for all vaults or each vault.
To specify vault approval rules:
- Navigate to Spaces and select a product.
- Do one of the following:
- All vaults: on the sidebar select Settings > Vault Defaults.
- Individual vaults: on the sidebar select Vaults. In the content pane select a vault. On the sidebar select Settings > Approving Changes.
- In the Approval Rules section select Enable automated approval and rejection using rule scripts.
- Select a rule from the list.
- Click Save.
Specify how long vault packages are kept
Retention policies define how long vault packages are kept. You can create multiple retention policies and specify a different one for each vault. For details about creating policies, see Create chain and vault retention policies.
To specify how long vault packages are kept:
- Navigate to Spaces.
- On the sidebar select Vaults and select a vault in the content pane.
- On the sidebar select Settings > Retention Policy.
- In the Retention policy section select Enable automatic deletion of packages using retention policy.
- Select a policy from the list.
- Click Save.
Subscribe to vault notifications
You can subscribe to vault email notifications. For details, see Subscribe to email notifications.
Configure experts
PulseUno includes bundled and built-in experts:
- A built-in expert can only be upgraded or replaced when you update PulseUno. It is core to the product and is not expected to change without changes to PulseUno.
- A bundled expert is a standard expert that is shipped with PulseUno. You can overwrite it as long as the newer version is backwards compatible with your version of PulseUno.
- Additional and upgraded experts will be made available for download from the Community web site.
- You can write your own expert implementations if you have site-specific requirements or in-house utilities that you want to integrate with PulseUno.
Except where specified all experts are either bundled or built-in.
Each expert section below contains some, or all, of the following information:
- Overview: what the expert does and why you would use it.
- Prerequisites: external tools that the expert depends on.
- Configure: global server configuration files that must be set up, the fields
that you enter when configuring an expert, and whether the expert needs to be in a chain that uses a workspace.
A workspace is a directory that is allocated to a chain when it runs. The workspace is populated with the stream content (its files), so that the experts in the chain can analyze the stream content and report findings back to PulseUno. Workspaces are limited and a chain may be delayed until one is allocated. Workspace directories are located in the PulseUno data directory.
The notation ${dataDir} refers to the PulseUno data
directory on the PulseUno server, for example, C:\ProgramData\Micro Focus\Dimensions CM\Pulse or
/opt/microfocus/dimensions/14.5.1/pulse_data.
Manage experts
The Plugins page displays all the experts that are currently installed in your environment. The plugins are separated into these categories:
- Build
- Capture Artifacts
- Container
- Dependency
- Deployment
- Other
- SCM
- Security and Compliance
- Static Analysis
- Test
As asn administrator, you can:
- Check what plugins are installed.
- Enable and disable plugins.
- View the results of recent expert runs.
- On the top navigation, click Administration.
- Select Plugins.
- For each plugin, do the following:
- Enable or disable the plugin.
- View the last runs.
For details about installing additional plugins, see the Dimensions CM Administration Guide.
Capture to DA CodeStation
Overview
Captures built artefacts to Deployment Automation CodeStation. These represent deployable items such as files, images, databases, configuration materials, or anything else associated with a software project. For details about configuring and using Deployment Automation, visit the Deployment Automation Help Center.
Prerequisites
- The Deployment Automation server must be installed in a network location where the expert can connect to.
- A working component configured in your Deployment Automation server for the expert to invoke.
This expert supports DA version 6.1.5.
Configure
Configure expert settings
| Field Name | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Capture to DA CodeStation |
Yes |
| Username | The name of the user that will log into DA. | Yes | |
| Password | The user's password. | Yes | |
| DA server URL | The URL of the DA server. | Yes | |
| Component name | Enter name of a DA component. The components that are available are listed in the field. | ${EXPERT_RUN_ID} | |
| Version name | Enter the version of the DA component. The versions that are available are listed in the field. | ${EXPERT_RUN_ID} | |
| Artefact directory | The path to the directory where built artefacts will be captured. | ||
| Include patterns | To only capture specific files, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Exclude patterns | To exclude specific files from being captured, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Flatten files | Capture all the files into one flat directory. |
Capture to Dimensions CM
Overview
Captures built artefacts to a Dimensions CM stream.
Configure
| Field/Option | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Yes | |
| Use the chain's stream to capture targets | Capture targets to the stream that owns this chain. | ||
| Target stream | Enter the name of the product and stream where the targets will be captured. Only displayed if you do not select the previous option. | QLARIUS:JAVA_BRANCHA_STR | Yes |
| Request | Enter the name of the CM request that will be related to the targets. | ||
| Source Directory | Enter the path to the source directory where the built artefacts are located. | ||
| Target Directory | Enter the path to the target directory in the stream where you want the built artefacts to be captured. | ||
| Include patterns | To only capture specific files, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Exclude patterns | To exclude specific files from being captured, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Commit message | Enter a message that describes this commit to the CM stream. | Committed using the expert Capture To Dimensions CM | |
| Flatten files | Capture all the files into one flat directory. |
Capture to Directory
Overview
Captures built artefacts to a directory.
Configure
| Field/Option | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Yes | |
| Source relative directory | Enter the path to the source directory where the built artefacts are located. This is the path that is relative to the root of the stream that owns this chain. | Yes | |
| Destination directory | Enter the absolute path to the target directory where you want the built artefacts to be captured. You can use tokens, for example:
|
‘D:\destinationDir\${SUITE_NAME}\${PRODUCT_NAME} \${STREAM_NAME}\${CHANGESETT_ID}\’ |
Yes |
| Include patterns | To only capture specific files, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Exclude patterns | To exclude specific files from being captured, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Flatten files | Capture all the files into one flat directory. |
Capture to SCP/SFTP
Overview
Captures built artefacts to a workspace using secure copy (SCP) or to remote network server using Secure File Transfer Protocol (SFTP).
Configure
| Field/Option | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Yes | |
| SCP/SFTP | Select a method for capturing artefacts. | ||
| Host | Enter the name of the machine where the artefacts will be captured. | localhost dev7_unit_test |
Yes |
| Port | Enter the port number on the machine. | Yes | |
| Username | Enter the name of a user who has permission to access the machine. | Yes | |
| Password | Enter the user's password. | ||
| Source directory | Enter the path to the source directory where the built artefacts are located. | ||
| Target directory | Enter the relative path to the target directory where you want the built artefacts to be captured. |
||
| Include patterns | To only capture specific files, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Exclude patterns | To exclude specific files from being captured, enter one or more Ant patterns (one per line). To capture all files leave this field blank. | ||
| Flatten files | Capture all the files into one flat directory. |
Changeset Summary
The Changeset Summary expert is a built-in expert that counts the number of files added, deleted, and modified in each changeset. To track of the number of changes, which indicates the level of code churn, you can configure this expert to run on every changeset.
This expert has no prerequisites or configuration and does not require a workspace because it uses the changeset information.
Checkstyle
Overview
The Checkstyle expert is a bundled expert that uses the Checkstyle development tool to check that Java code adheres to a defined coding standard.
Use Checkstyle to help you comply with Java coding standards by automating code checking. Checkstyle is highly configurable and can support most coding standards. For more information, see the Checkstyle documentation.
This expert has no prerequisites (the Checkstyle 5.7 libraries are embedded in the expert so there are no external tools to install).
Configure
Create server configuration file
To customize the Checkstyle rules to be checked by this expert, create an XML configuration file in
${dataDir}/conf/experts/com.serena.starlight/checkstyle/ on the PulseUno server.
The default filename is config.xml.
The Checkstyle expert searches for a configuration file in the following sequence:
- If the field Configuration File Name specifies a filename, looks for that file in
${dataDir}/conf/experts/com.serena.starlight/checkstyle/. - If the field Configuration File Name is empty, looks for
config.xmlin the same directory on the PulseUno server. - If the field Configuration File Name is empty, and
config.xmldoes not exist, uses a built-in configuration based on Sun Coding Conventions.
Configure expert settings
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description |
|---|---|
| Step Name | Enter a name for this step in the chain. |
| Configuration location | Select one of the following options:
|
| Configuration File Name | Specify the path and filename of a configuration file that you created on the PulseUno server. |
Checkstyle operates on source code files so add the Checkstyle expert to a chain that populates a workspace.
CM Build
Overview
If your team uses Dimensions Build and you have existing build configurations, the bundled CM Build expert enables you to run the configurations in PulseUno. Dimensions Build is a build management, execution, and monitoring tool that is part of Dimensions CM. For details, see the Dimensions CM Build Help.
Prerequisites
A build configuration, created in Dimensions Build, for each stream that you are going to build.
Configure
When you add this expert to a chain configure it as follows:
- Enter a name for this step in the chain.
- Select a CM user account to be used to run the build:
- Service account: use the account and credentials of the user current logged into PulseUno. This is the account that was used to populate the work area associated with the stream.
- Custom account: use a different CM user account. Specify the user name and password.
- Set Configure using command line to one of the following:
- Yes: enter a BLD command and specify a poll rate. For details of the BLD command see the Dimensions CM Command-Line Reference.
- No: configure CM Build using the fields described below.
| Field Name | Description | Required | Example |
|---|---|---|---|
| Build based on request(s) | Restrict the build to sources that are related to CM requests that you specify. Enter a comma separated list of requests. Leave blank if you do not want to restrict the build. | QLARIUS_CR_21,QLARIUS_CR_56 | |
| Area type | Select a Dimensions CM area type:
|
||
| Area name | Specify the area to be used for this build. Default: all areas associated with the build configuration or stage. | ||
| Stage | Specify the stage where the targets will be built. Only displayed if you select a Deployment area. |
DEV | |
| Build configuration name | Specify the build configuration, and version, that you want to build. If you do not specify a version, by default the latest is used. | Yes | ANT_JAVA_BUILD;6 |
| Build area user | Enter a Dimensions CM credential set that has access to the build area. Only displayed if you select a Work area. |
MY_CREDENTIAL_SET | |
| Populate the work area with all files | Select this option to populate the work area with all the files that are related to the build. Only displayed if you select a Work area. |
||
Check in built items
|
Select one of the following options:
|
||
| Target stream name | Specify the stream where the collected and built items will be delivered. Default: the same stream as the sources. Only displayed if you are checking in built items. |
QLARIUS:JAVA_BRANCHA_STR | |
| Relate built items to requests | Specify a comma separated list of requests to which new items created from the final build targets will be related. Only displayed if you are checking in built items related to custom requests. |
QLARIUS_CR_24,QLARIUS_CR_18 | |
| Build options | Select one of these options:
Only displayed if you select a Deployment area. |
||
| Target selection |
For details see the BLD command in the Dimensions CM Command-Line Reference. |
||
| Poll rate | Specify how often (in seconds) that the expert checks if the build has completed. | Yes | 50 |
CM Build manages its own workspaces so you can add it to a chain that does not populate a workspace.
DA Deployment
Overview
The DA Deployment expert is a bundled expert that allows you to integrate PulseUno with Deployment Automation (DA) and to publish and deploy artefacts from a Dimensions CM stream.
You can use the DA Deployment expert to automate the path to production for your application. For example, the expert can support continuous delivery by:
- Publishing files from a stream to a Deployment Automation server as a new component version.
- Adding a Deployment Automation status to a new published version.
- Deploying the new published version.
Prerequisites
The Deployment Automation server must be installed on your network, but not necessarily on the PulseUno server, where this expert can connect to it. The DA Deployment expert has been tested with Deployment Automation server version 6.1.1.
You will need a working application process configured in your Deployment Automation server for the DA Deployment expert to invoke.
Configure
Create server configuration file
The following DA Deployment expert properties file is usually required:
${dataDir}/conf/experts/com.serena.starlight/sdadeploy/sda-pulse-expert.properties
The property below identifies the location of the Deployment Automation server, if the default value shown is correct you do not need to edit it:
| Property Name | Description | Required | Example |
|---|---|---|---|
| sdaServerUrl | URL to the Deployment Automation server web application | Yes | http://localhost:8080/da |
Configure expert settings
When you add this expert to a chain in PulseUno modify the following configuration fields:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | DA Deployment | Yes |
| Username | Enter the username of a Deployment Automation server administrator. | admin | Yes |
| Password | Enter the password of the Deployment Automation server administrator. | admin | Yes |
| Component Name | Specify the name of the Deployment Automation component that will be published. | my_component_1.5 | Yes |
| Version | A new version of a Deployment Automation component is created each time this expert runs. Use this option to specify the format of the version name and make it easier to identify its source. You can include the following variables by using the syntax '${<variable_name>}' in the value:
|
VERSION_NAME-${CHANGESET_ID} | Yes |
| Artefact directory | Specify the relative path in the stream where assets are located. | target\ | Yes |
| Include | To only publish specific files, enter one or more Ant patterns (one per line). To publish all files leave this field blank. | *.war *.jar |
No |
| Exclude | To exclude specific paths from being published, enter one or more Ant patterns (one per line). To publish all files leave this field blank. | *.java *.html *.xml |
No |
| Add Status | Select this option to display the field Status Name. | No | |
| Status Name | (Visible if Add Status is selected) Specifies the Deployment Automation status to move the new component version to. | STATUS_SUCCESS | Yes (if Add Status is selected) |
| Deploy | Select this option to display fields that specify how the new component version will be deployed. | No | |
| Application Name | Specify a Deployment Automation application (contains a component to be deployed). | my_application | Yes (if Deploy is selected) |
| Application Process Name | Specify the Deployment Automation application process to be executed. | my_deploy_app_process | Yes (if Deploy is selected) |
| Environment Name | Specify the Deployment Automation environment to deploy to. | my-environment | Yes (if Deploy is selected) |
| Deploy Properties | Specify deploy properties that will be used to run the Deployment Automation application process. Enter one pattern per line in this format: <property_name>=<prop_value> |
set_up_db=true use_logging_level=trace |
No |
Deployment Automation normally operates on binary files so add the DA Deployment expert to a chain that populates a workspace with built artefacts.
DA Generic Process
Overview
The DA Generic Process expert is a bundled expert that allows you to integrate PulseUno with Deployment Automation (DA) and run a DA global process on a specific resource. For example, you can use this expert to run a regular, repeated process when updated artefacts are delivered.
Prerequisites
The Deployment Automation server must be installed on your network, but not necessarily on the PulseUno server, where this expert can connect to it. The DA Generic Process expert has been tested with Deployment Automation server version 6.1.1.
You will need a working global process configured in your Deployment Automation server for the DA Generic Process expert to invoke.
Configure
Create server configuration file
The following DA Generic Process expert properties file is usually required:
${dataDir}/conf/experts/com.serena.starlight/sdaprocessexecutor/sda-pulse-expert.properties
The property below identifies the location of the Deployment Automation server, if the default value shown is correct you do not need to edit it:
| Property Name | Description | Required | Example |
|---|---|---|---|
| sdaServerUrl | URL to the Deployment Automation server web application | Yes | http://localhost:8080/da |
Configure expert settings
When you add this expert to a chain in PulseUno modify the following fields:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | DA Generic Process | Yes |
| Username | Enter the username of a Deployment Automation server administrator. | admin | Yes |
| Password | Enter the password of the Deployment Automation server administrator. | admin | Yes |
| Generic Process Name | Specify the name of the Deployment Automation global process to be run on the Deployment Automation server. | setup_net_process | Yes |
| Resource Name | Specify the name of the Deployment Automation resource on which the global process will be run. | machine_without_net_resource | Yes |
| Process Properties | Specify properties that will be used to run the Deployment Automation global process. Enter one pattern per line in this format: <property_name>=<property_value> |
set_up_db=true use_logging_level=trace |
No |
Deployment Automation normally operates on binary files so add the DA Generic Process expert to a chain that populates a workspace with built artefacts.
Dependency Vulnerabilities
Overview
The Dependency Vulnerabilities expert is a bundled expert that integrates the Open Web Application Security Project (OWASP) dependency-check tool that can scan Java, .NET, and Python applications and their dependent libraries.
This expert identifies vulnerable dependencies in the analyzed stream and displays the findings in the Experts section of a PulseUno Review page. One finding per vulnerability is displayed and there can be multiple vulnerabilities for each dependency. Each finding contains the ID of the vulnerability and the name of the dependency where it was found. A report file can be viewed from the Review page.
Prerequisites
There is no external software to install (the dependency-check 1.3.6 library is embedded in the Dependency Vulnerabilities expert). However, the expert relies on data from the National Vulnerabilities Database (NVD) web site to find vulnerabilities and requires access to the internet to download and update data.
On the first run the expert creates:
- The folder
${dataDir}/conf/experts/com.serena.starlight/dependencyvulnerabilities/data/ - The file
cve.2.9.h2.dbthat is updated from the Common Vulnerabilities and Exposures (CVE) data . Each run automatically updates the CVE data if autoupdate in the properties file is set to true.
Configure
Create server configuration file
The properties file is optionally located in ${dataDir}/conf/experts/com.serena.starlight/dependencyvulnerabilities/dependencycheck-pulse-expert.properties.
It contains configuration properties for both the Dependency Vulnerabilities expert and its embedded dependency-check library.
You only need to create this file if you need to override one of the default values.
| Property Name | Description | Example Value | Default Value | Required |
|---|---|---|---|---|
| pulseWarningCvssThreshold | Vulnerabilities with a CVSS score less than the specified value are treated as a WARNING. | 3.0 | 4.0 | No |
| pulseErrorCvssThreshold | Vulnerabilities with a CVSS score less than the specified value are treated as an ERROR. The value must be bigger than that specified for pulseWarningCvssThreshold. | 9.0 | 7.0 | Yes |
| pulseAutoUpdate | Automatically updates the CVE data. The possible values are:
|
ALWAYS |
Configure expert settings
When you add this expert to a chain in PulseUno modify the following fields:
| Field Name | Description | Example Value | Default Value | Required |
|---|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | Dependency Vulnerabilities | Dependency Vulnerabilities | Yes |
| Application name | Enter the application name to be displayed in the report file. | My-App | Yes | |
| Include patterns | To only include specific paths, enter one or more Ant patterns (one per line). To include all paths leave blank. | *.war **/*.jar |
**/* | No |
| Exclude patterns | To exclude specific paths, enter one or more Ant patterns (one per line). To include all paths leave blank. | target/*.class | No | |
| Suppression file | Enter the relative path in the stream to the suppression file. | conf/suppression.xml | No | |
| CVE Suppression List | Enter a comma-separated list of CVE IDs to suppress. | CVE-2008-0732,CVE-2011-5034 | No | |
| Enable Archive analyzer | Scans these files types: ZIP, EAR, WAR, JAR, SAR, APK, NUPKG, TAR, GZ, TGZ | Yes | No | |
| Enable Jar analyzer | Scans these files types: JAR, WAR | Yes | No | |
| Enable Assembly analyzer | Scans these files types: EXE, DLL | Yes | No | |
| Enable Nuspec analyzer | Scans the NUSPEC file type. | Yes | No | |
| Enable Python package analyzer | Scans these files types: py, zip, PKG-INFO, METADATA | Yes | No | |
| Enable Python distribution analyzer | Scans these files types: whl, egg, zip | Yes | No | |
| Enable CMaker analyzer | Scans these files types: CMakeLists.txt, *.cmake | No | ||
| Enable NodeJS analyzer | Scans this file type: package.json | No | ||
| Enable OpenSSL analyzer | Scans this file type: opensslv.h | No | ||
| Enable Ruby analyzer | Scans these files types: rakefile, *.gemspec | No | ||
| Enable Composer Lock analyzer | Scans this file type: composer.lock | No | ||
| Enable Autoconf analyzer | Scans these files types: configure, configure.in, configure.ac | No | ||
| Enable Central analyzer | Checks for Maven GAV (Group/Artefact/Version) information in the scanned area. | Yes | No | |
| Enable Nexus analyzer | Checks for Maven GAV (Group/Artefact/Version) information in the scanned area. | Yes | No | |
| Unstable threshold | If there are vulnerabilities with a CVSS score higher than the value you specify, the expert result is UNSTABLE. If no value is set the result is SUCCESS. | 7.0 | No | |
| Failure threshold | If there are vulnerabilities with a CVSS score higher than the value you specify, the expert result is FAILURE. If no value is set the result is SUCCESS. | 9.0 | No | |
Automatically update CVE DB |
Select an update option for the CVE database:
|
For more information about analyzers, see the File Type Analyzers page.
The Dependency Vulnerabilities expert may report false-positive dependencies. For example, you consume a vulnerable library but you do not use the vulnerable functionality, or the vulnerability only applies in circumstances that does not apply to you. You can suppress any CVE by passing the suppression XML file with CVE suppressions (Suppression file property) or the CVE ID list (CVE suppression list property). For more information about suppression, see the Suppressing False Positives page.
The dependency-check analyzers operates on binary files so add the Dependency Vulnerabilities expert to a chain that populates a workspace with built artefacts.
Run a Docker container
Overview
Creates a Docker container, which is a runtime instance of a Docker image.
Configure
| Field/Option | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Yes | |
| Docker image name | Enter the name of the Docker image that will be created. | ||
| Pull image from registry | Pull image from registry. | ||
| URL | Enter the URL that matches the directory in the Docker engine from which you want to access a remote Docker Registry. |
https://registry.company.com/ | |
| Username | Enter the name of the user who can access the Docker Registry. | ||
| Password | Enter the user's password. | ||
| Enter the email of the Docker Registry user. | |||
| Start container | Start container. | ||
| Attach container | Attach container. | ||
| Container name | Enter the name of the Docker container that will be created. |
|
|
| Port mappings | Bind the port number from the Docker host engine into the container. | host_port:container_port, 80:8080 | |
| Environment variables to pass to container. | PULSE_USER=user | ||
| Command to run in container (exec) | The command to run in the Docker container. | bash | |
| Container working directory | Working directory inside the container. | /app | |
| Volumes to mount into container | Volumes to mount into container. | /app/src:/app | |
| Mount volumes from another container. | |||
| Verify TLS certificates | Verify TLS certificates. | ||
| Local file path on Agent to certificates. | |||
| Configuration directory on Agent. | |||
| Remote Docker API version. |
Build a Docker image
Overview
Creates a Docker image, which is an ordered collection of root filesystem changes and the corresponding execution parameters that you can use in a container runtime. An image typically contains a union of layered filesystems stacked on top of each other. You can optionally push the image to a Docker repository.
Configure
| Field/Option | Description | Required |
|---|---|---|
| Step Name | The name of this expert step. | Yes |
| Root context directory for script | The root context directory normally contains the dockerfile for the image. | |
| Docker image name | The name of the Docker image that will be created. | Yes |
| Specify Dockerfile contents | The path to a Dockerfile. Docker can build images automatically by reading the instructions from a Dockerfile. A Dockerfile is a text document that contains commands to be called at the command line. |
|
| Use cache when building the image | You can cache the image layers inside the registry to avoid fetching the same content from the server to the registry on every pull operation. Set this parameter if your registry is remote from your Dimensions CM server. | |
| Push image to registry | Push image to registry. | |
| URL | The URL that matches the directory in the Docker engine from which you want to access a remote Docker Registry. |
|
| Username | The name of the user who can access the Docker Registry. | |
| Password | The user's password. | |
| The email of the Docker Registry user. | ||
| Verify TLS certificates | Verify TLS certificates. | |
| Local file path on Agent to certificates. | ||
| Configuration directory on Agent. | ||
| Remote Docker API version. |
Run script in Docker container
Overview
Enables you to use a command to execute a script in a Docker container that is running, without logging into that container.
Configure
| Field/Option | Description | Required |
|---|---|---|
| Step Name | The name of this expert step. | Yes |
| Docker image name | Enter the name of the Docker image where the script will run. | |
| Mount workspace path | Mounts a workspace in the container. | |
| Type of script | Select one of the following:
|
|
| Script language | Select a script language:
|
Yes |
| File path | Enter the path to the file that contains the command. Use single quotes to escape spaces in the path name. | |
| Command line | Enter the command that you want to execute. |
Halt on failure
This expert does not have any parameters.
Fortify SCA
Overview
The Fortify SCA expert is a bundled expert that analyzes the source code of an application for security issues. Static Code Analyzer (SCA) identifies the root causes of software security vulnerabilities and delivers accurate, risk-ranked results with line-of-code remediation guidance.
Prerequisites
The Fortify SCA expert requires Fortify SCA (and any tools that it will use, such as Microsoft Visual Studio) to be installed and configured correctly for the named user account that Tomcat will run as.
Configure
Create server configuration file
The Fortify SCA expert's server configuration file is mandatory and is located in: ${dataDir}/conf/experts/com.serena.starlight/hpfortify/hpfortify-pulse-expert.properties
| Property Name | Description | Required | Example |
|---|---|---|---|
| sourceAnalyzerPath | Specifies one of the following:
|
Yes | C:\\Program Files\\HP_Fortify\\HP_Fortify_SCA_and_Apps_4.30\\bin\\sourceanalyzer.exe |
| reportGeneratorExecutablePath | Specifes the full path to the Fortify SCA report generator. | Yes | C:\\ProgramFiles\\HP_Fortify\\HP_Fortify_SCA_and_Apps_4.30\\bin\\ReportGenerator.bat |
| visualStudioExecutablePath | Specifies the full path to Microsoft Visual Studio. | No | C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE\\devenv.exe |
Example server configuration file:
sourceAnalyzerPath=C:\\Program Files\\HP_Fortify\\HP_Fortify_SCA_and_Apps_4.30\\bin\\sourceanalyzer.exe reportGeneratorExecutablePath=C:\\ProgramFiles\\HP_Fortify\\HP_Fortify_SCA_and_Apps_4.30\\bin\\ReportGenerator.bat visualStudioExecutablePath=C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE\\devenv.exe
Configure expert settings
When you add this expert to a chain configure it as follows:
- Enter a name for this step in the chain.
- Select a custom translation option:
- Yes: use a custom translation string. Enter a string in Custom translation options but only include phase options and exclude '-b'.
- No: select translation options (see the table below).
- For Analysis phase optionally enter additional rulepack files or folders, one per line. You can specify an absolute path or one that is relative to the root of the stream. Use the sourceanalyzer Ant task rules attribute.
- To create a PDF of the report select Generate PDF report and enter the path of a report template. You can specify an absolute path or one that is relative to the root of the stream. If you do not specify a report template the default is used. Use the ReportGenerator utility's template option.
| Translator type | Option | Description |
|---|---|---|
| Java sources | Sources include pattern | Enter patterns for Java sources, for example: src/**/ *.java Default pattern: **/*.java |
Classpath |
Enter a Java class path. The format is the same as javac (colon or semi-colon separated list of paths). Use the sourceanalyzer Ant task classpath attribute. | |
| Resolution source path | Enter a path to a Java resolution sources folder. Sources are used for resolution not analysis. Use the sourceanalyzer Ant task sourcepath attribute. | |
Java version |
Specify the JDK version the Java code is written for. Use the sourceanalyzer Ant task source attribute. | |
| .NET sources | Solution file path | Enter the relative path to a solution file. |
| Other sources | Include pattern |
Enter an 'include' pattern for other sources, for example: **/ *.sql |
Jenkins
Overview
The Jenkins expert is a bundled expert that can invoke a Jenkins job on a remote Jenkins server. For example, use it to run a continuous integration build against each changeset as it is delivered and report the build time.
Prerequisites
The Jenkins server must be installed on your network, but not necessarily on the PulseUno server, for this expert to connect to. See the Jenkins documentation for more information about installing.
You must define a job on your Jenkins server that the expert will invoke.
Optionally add build parameters to the job so that information about the Dimensions CM stream and changeset are available in your build. Alternatively, allow the Jenkins expert to make any configuration change to the Jenkins job automatically (no manual changes to your Jenkins job are needed).
If you add the build parameters manually, select the option This build is parameterized in your Jenkins job configuration page and add each build parameter as a String Parameter. The values Default Value and Description in Jenkins are not important.
| Jenkins Build Parameter Name | Description | Required |
|---|---|---|
| cmkey | An opaque value that uniquely identifies the build run to the Jenkins expert. Although shown here as Required, the Jenkins expert can automatically add this parameter to your Jenkins job and no manual job configuration is needed. |
Yes |
| repo | An opaque value that is different for each SCM repository. | No |
| stream | The name of the stream or project to which there was a delivery. | No |
| version | The stream or project version that the delivery created. | No |
| changeset | The repository (forest) version of the changeset for the delivery. | No |
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Required |
|---|---|---|
| Step Name | Enter a name for this step in the chain. | Yes |
| Jenkins Job Location | Specifies the URL for the Jenkins job (the location of the continuous integration server, including the job name). | Yes |
| Username | Specifies a Jenkins username. May be required if you are using Jenkins authentication. | No |
| Password | Specifies a Jenkins password or API token of the Jenkins user. May be required if you are using Jenkins authentication. | No |
| Automatically add build parameters to Jenkins Job | Automatically reconfigure the Jenkins job to add the mandatory build parameter cmkey. You can also add parameters manually (see above) if you prefer that the Jenkins expert does not touch your job. | No |
| Record Jenkins Job build result | Specifies whether the Jenkins expert should monitor the job and record its state it completes. | No |
| Check Jenkins Job status every (seconds) | If Record Jenkins Job build result is selected, specifies how often the Jenkins expert checks if the job has completed. | No |
- Select your name at the top-right of the Jenkins page.
- From the Actions menu select Configure.
- Click Show API Token.
If your Jenkins job requires a build authentication token before it can be triggered (see this
Jenkins wiki page for details)
add the token to the end of the Jenkins URL, for example: http://hostname:port/jenkins/job/MyProject/?token=buildtoken
The Jenkins expert:
- Uses the parameters after the question mark in the build request URLs that are sent to the Jenkins server.
- Supports freestyle and pipeline jobs.
Jenkins manages its own workspaces so you can add the Jenkins expert to a chain that does not populate a workspace.
Configure the output log
By default, the last 100 lines from the Jenkins log are displayed in the output log of a chain run and stored in the database.
To change the number of lines that are displayed and stored:
- Open the Jenkins property file:
${dataDir}/conf/experts/com.serena.starlight/jenkins/jenkins-pulse-expert.properties - Modify the value of this property:
jenkins.console.lines.count
Kiuwan
Overview
The Kiuwan expert is a bundled expert that integrates with Kiuwan Software Analytics in the Cloud, an online code quality and security service. If you are signed up to the Kiuwan service use this expert to:
- Track the quality and security of your changesets.
- Make that information visible in PulseUno reviews and reports.
Prerequisites
You must have an active account (username and password) for the Kiuwan service, have logged into the service, and configured an application name for your stream.
You must install the Kiuwan Local Analyzer on the PulseUno server.
Configure
Create server configuration file
The Kiuwan expert's server configuration file is mandatory and is located in: ${dataDir}/conf/experts/com.serena.starlight/kiuwan/kiuwan-pulse-expert.properties
| Property Name | Description | Required | Example |
|---|---|---|---|
| kiuwan.agent.command | Specifies the full path to the Kiuwan Local Analyzer's agent launcher (agent.cmd or agent.sh not kiuwan.cmd or kiuwan.sh). | Yes | C:\\KiuwanLocalAnalyzer\\agent.cmd |
| kiuwan.poll.interval | Specifies how often to check whether an analysis has completed (seconds). | Yes | 180 |
| kiuwanUsername | Specifies the username (email) used to log into the Kiuwan service. | No | cibuild@example.com |
| kiuwanPassword | Specifies the password to log into the Kiuwan service. | No | I@m!S3cR3t |
| kiuwanAnalysisApplication | Specifies the application name that has been configured in the Kiuwan account. | No | Qlarius |
- You can specify the properties kiuwanUsername and kiuwanPassword when you add the Kiuwan expert to a chain. However, if you always use the same account it is more convenient to specify them in the server configuration file.
- Normally the property kiuwanAnalysisApplication will vary based on the stream. However, if you always use the same application name you can specify it globally in the server configuration file.
Configure expert settings
When you add this expert to a chain in PulseUno modify the following fields:
| Field Name | Description | Required | Example |
|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | Yes | Kiuwan |
| Username | Specifies a username for the Kiuwan account. | No | cibuild@example.com |
| Password | Specifies the password for the Kiuwan account. | No | I@m!S3cR3t |
| Application | Specifies the application name to register analysis results against in your Kiuwan account. | No | Qlarius |
The properties Username, Password and Application are only optional if they have been configured in the server configuration file.
The Kiuwan Local Analyzer operates on source code files so add the Kiuwan expert to a chain that populates a workspace.
Maven
Overview
The Maven expert is a bundled expert that executes Maven goals.
Prerequisites
Maven must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Required |
|---|---|---|
| Step name | Enter a name for this step in the chain. | Yes |
| Execution goals | Enter the goals to be executed, for example: Clean install | Yes |
| Relative directory | The path, relative to the stream’s root, where the build will run. | No |
| Advanced Maven options | Specifies additional maven options (MAVEN_OPTS), for example: -Xdiag -XshowSettings:all |
No |
| Environment properties | Specifies pairs of 'key value' environment properties to use with this chain. Enter each pair in the format
|
No |
Ant
Overview
The Ant expert is a bundled expert that runs Apache Ant builds. Apache Ant is an open-source build automation tool.
Prerequisites
Ant must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step name | The name for this step in the chain. | Yes | |
| Path to Ant | The location of the Ant executable. To use the location defined in your path, leave this field blank. |
||
| Targets | A list of Ant targets, separated by spaces. To use the default target, leave blank. | ||
| The path to the Ant build script relative to the checkout directory. | |||
| The working directory if different from the location of the Ant build script. | |||
| Optional list of Ant command-line parameters, separated by spaces. | -dbug -DmyValue=1 | ||
| Location of the Java JDK. To use the system JAVA_HOME leave blank. | |||
| Java options, separated by spaces. | -Xms200m -Xmx700m |
Gradle
Overview
The Gradle expert is a bundled expert that runs Gradle builds. Gradle is an open-source build automation tool.
Prerequisites
Gradle must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step name | The name for this step in the chain. | Yes | |
| Select the Gradle runner type to use for this build. | Yes | ||
| Gradle task names, separated by spaces. To use the default task, leave blank. | clean build | ||
| The build path relative to the stream's root. | |||
| The location of the Gradle installation. | |||
| Gradle version to use. | 4.5.1 | ||
| Gradle distribution to use. | https://services.gradle.org/distributions/gradle-4.6-bin.zip | ||
| Command-line build arguements. | |||
| Log debug messages | Logs debug messages (equivalent to -d) | ||
| Print stacktrace | Prints the stacktrace (equivalent to -s) | ||
Specify environment variables that will override other settings for this chain. Enter each variable on a seperate line in this format: KEY=VALUE |
|||
| Location of the Java JDK. To use the system JAVA_HOME leave blank. | |||
| Java options, separated by spaces. | -Xms200m -Xmx700m |
Makefile
Overview
The Makefile expert is a bundled expert that runs GNU Make builds. Make is an open-source build automation tool.
Prerequisites
Makefile must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step name | The name for this step in the chain. | Yes | |
| The location of the Make executable. To use the location defined in your path, leave this field blank. | |||
| Makefile name. If left blank, the default one will be run. | Makefile-1 | ||
| The location of the working directory if it is different to the checkout directory. Relative to the stream's root. | |||
| Goals | The Makefile goals to be executed. To use the default goal, leave this field blank. | ||
| Options | Additional flags | -d | |
| Variables | Additional variables, separated by spaces. | myValue=1 myOtherValue=2 |
MSBuild
Overview
The MSBuild expert is a bundled expert that runs the Microsoft Build Engine, a platform for building applications.
Prerequisites
MSBuild must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step name | The name for this step in the chain. | Yes | |
| Project File | Builds the targets in the project file that you specify. If you do not specify a project file, MSBuild searches the current working directory for a file name extension that ends in "proj" and uses that file. You can also specify a Visual Studio solution file for this argument. | ||
| Options | Addtional options. |
/t:Build /p:Configuration=Debug | |
Specify environment variables that will override other settings for this chain. Enter each variable on a seperate line in this format: KEY=VALUE |
Visual Studio Build
Overview
The Visual Studio Build expert is a bundled expert that uses Microsoft Visual Studio to build applications and to create assemblies and executable programs.
Prerequisites
Visual Studio Build must be installed on an agent and added as a capability.
Configure
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Example | Required |
|---|---|---|---|
| Step name | The name for this step in the chain. | Yes | |
| Project File | The path to the Visual Studio project file (.proj or .sln) relative to the stream's root. | Yes | |
| Task | Goal of the Visual Studio execution. | Build | Yes |
| Options | Additional or custom options for Visual Studio. | /p:Configuration=Release | Yes |
Specify environment variables that will override other settings for this chain. Enter each variable on a seperate line in this format: KEY=VALUE |
Fetch from Dimensions CM
Overview
A bundled expert that checks out source items from a Dimensions CM repository.
Configure
| Field/Option | Description | Example Value | Required |
|---|---|---|---|
| Step Name | The name of this expert step. | Yes | |
| Dimensions CM repository URL. | scm:dimensions//dimensions-server/cm_typical@dim14 | ||
| User name | The name of a registered CM user. | ||
| Password | The user's password. | ||
| Stream | The stream to fetch sources from. | QLARIUS:QLARIUS_TEST | |
| Paths | You can fetch specific folders instead of the entire stream. Specify each folder path on a new line. Leave blank to fetch the entire stream. | src/subdirectory-1 src/subdirectory-2 |
|
| Clean workspace before fetching sources | Clean the local work area before fetching sources. | ||
The version (changeset ID) of the stream to fetch. Default: the latest (tip) version. |
|||
The sub directory to fetch sources to. Default: the entire content of the local work area is replaced with the sources you are fetching. |
Notification
Overview
Sends notifications by email if a chain succeeds or fails.
Configure
| Field/Option | Description | Required |
|---|---|---|
| Step Name | The name of this expert step. | Yes |
| Failed | Enter the emails (one per line) of users you want to be notified if the chain fails. | |
| Succeeds | Enter the emails (one per line) of users you want to be notified when the chain succeeds. |
PMD
Overview
The PMD expert is a bundled expert that scans Java source code (and other languages) and looks for potential problems such as bugs, dead code, suboptimal code, overcomplicated expressions, and duplicate code. You can use it to find common programming flaws during your code review process. PMD is configurable and can find many different issues, for more information, see the PMD web site.
This expert has no prerequisites (the PMD 5.3.7 libraries are embedded in the expert so there are no external tools to install).
Configure
When you add this expert to a chain in PulseUno modify the following configuration fields:
| Field Name | Description | Required | Example | PMD command line option | Notes |
|---|---|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | Yes | PMD | ||
| Source folder | Enter the relative stream folder to run the analysis against. | Yes | src/main/java | -dir | Should be a relative path. |
| Rulesets location | Select a ruleset location:
|
Yes | |||
| Rulesets | Enter a comma separated list of rulesets names to use. | Yes | rulesets/internal/all-java.xml | -rulesets | For a full list of possible rulesets, see the PMD documentation. You can also use a custom ruleset. |
| Project classpath | Specify the classpath for libraries used by the source code. | No | commons-collections.jar;derby.jar | -auxclasspath | |
| Source encoding | Specify the source code encoding. | No | UTF-8 | -encoding | |
| Source language | Specify the source code language. | No | Java | -language | |
| Language version | Specify the language version. | No | 1.7 | -version | |
| Show suppressed | Show suppressed findings. | No | false | -showsuppressed | |
| Suppress marker | Specify the suppress marker. | No | NOPMDNEWMARKER | -suppressmarker |
The PMD command line option column shows how each PMD expert configuration field maps to the PMD command-line tool. For details, see the PMD documentation.
PMD operates on source code files so add the PMD expert to a chain that populates a workspace.
Script
Overview
The Script expert is a bundled expert that enables you to specify one of the following:
- An operating system command.
- The path to a script, for example, a Windows batch file or Linux shell script.
Configure
When you add this expert to a chain, configure it as follows:
- Enter a name for this step in the chain.
- From the Script Type list select one of the following:
- Use inline command and enter an operating system command in the Command line box.
- Use file path and enter the path in the File path box.
- From the Script Language list select Windows Batch or Shell Script.
You can use the following environment variables:
- PULSE_STREAMTITLE: the name of the project or stream.
- PULSE_STREAMVERSIONID: the project or stream version.
- PULSE_SCMCONNECTIONURI: a unique identifier for the Dimensions CM database.
- PULSE_LOGINNAME: the user who made the delivery.
- PULSE_MESSAGE: the commit message for the delivery.
- PULSE_DIRECTORY: the location of the workspace containing the source code.
- CURRENT_DIR: same as PULSE_DIRECTORY (also set as the working directory of the script).
All the variables in the environment.properties file are available to the script as environment variables.
If the script exits with an exit code of 0, it is a SUCCESS. If the script exits with a non-zero exit code, it is a FAILURE.
SonarQube
Overview
The SonarQube expert is a bundled expert that runs static analysis against source code in a repository and reports findings and metrics. You can use it to analyze your source code on every changeset, or on a regular schedule, and optionally record the defects and metrics in your SonarQube server.
Prerequisites
The SonarQube expert requires SonarQube Runner, a command line application, to be installed and configured on the PulseUno server. A SonarQube server must be installed on your network (not necessarily on the PulseUno server) for this expert to connect to. For details, see the SonarQube help.
SonarQube expert uses the Web Service Java Client to make REST requests to a SonarQube server and has been tested with SonarQube server versions 5.6.x (Long Term Support) and 6.x.
The server configuration file ${dataDir}/conf/experts/com.serena.starlight/sonarqube/sonarqube-pulse-expert.properties
must be present and set up correctly before you can use SonarQube expert.
Configure
Create server configuration file
The SonarQube expert properties file is mandatory and is located in: ${dataDir}/conf/experts/com.serena.starlight/sonarqube/sonarqube-pulse-expert.properties
| Property Name | Description | Required | Example |
|---|---|---|---|
| sonar.host.url | Specifies the SonarQube Server URL. | Yes | http://localhost:9000 |
| pulse.sonar.agent.path | Specifies the full path to the SonarQube Runner application. | Yes | C:\\sonarrunner\\bin\\sonar-runner.bat |
| sonar.jdbc.url | Specifies the JDBC connection URL for the SonarQube database. | No | jdbc:h2:tcp://localhost:9092/sonar |
| sonar.jdbc.username | Specifies the database user for the JDBC connection. | No | sonar |
| sonar.jdbc.password | Specifies the database password for the JDBC connection. | No | sonar |
| pulse.results.delay | When SonarQube analyzes code that produces a large number of findings (2000) a short delay is needed before the results can be fetched. This delay is normally only required on the first run. On subsequent runs only the delta needs to be updated. Default: 30 seconds | No | 30 |
If you do not specify an optional property SonarQube Runner uses the default value specified in ${SONAR_RUNNER_HOME}/conf/sonar-runner.properties.
You can configure additional supported parameters in ${SONAR_RUNNER_HOME}/conf/sonar-runner.properties.
Configure expert settings
When you add this expert to a chain in PulseUno modify the following properties:
| Field Name | Description | Required | Example |
|---|---|---|---|
| Step Name | Enter a name for this step in the chain. | Yes | SonarQube |
| Username | Specifies the username for the web server connection. | No | admin |
| Password | Specifies the password for the web server connection. | No | admin |
| Analysis mode | Select an analysis mode:
|
Yes | publish |
| Project name | Specifies the name of the SonarQube project that will be displayed in the web browser. Typically this is the value defined for <name> in Maven. | Yes | my_project |
| Project key | Specifies the unique SonarQube project key. Typically this is the value defined for<groupId>:<artefactId> in Maven. | Yes | example-key com.example:project1 |
| Project version | Specifies the SonarQube project version. Typically this is the value defined for<version> in Maven. | Yes | 1.0 |
| Source folder | Specifies the relative stream folder in the workspace to run the analysis against. | Yes | src/main/java |
| Full path to the SonarQube Scanner application | Full path to the SonarQube Scanner application. | No | C:\\sonar-scanner\\bin\\sonar-scanner.bat |
The properties Username and Password are optional and are only required in specific security situations. For details, see the SonarQube help.
The SonarQube Runner operates on source code files so add the SonarQube expert to a chain that populates a workspace.
WhiteSource
Overview
The WhiteSource expert is a bundled expert that identifies all the open source components and dependencies in your build, reports any known security vulnerabilities, and lists their licenses.
Prerequisites
- An active organization (and API token) for the WhiteSource SaaS service.
- Access to the WhiteSource administrative site.
- A product and project to report results to.
- The project token.
Configure
Create server configuration file
The WhiteSource expert's server configuration file is located in: ${dataDir}\conf\experts\com.serena.starlight\whitesource\whitesource-pulse-expert.properties
| Property Name | Description | Required | Example |
|---|---|---|---|
| whitesourceServerUrl | Specifies the URL to the WhiteSource server. Only change this URL if you are using the on-premise version of WhiteSource. | No | whitesourceServerUrl=https://saas.whitesourcesoftware.com |
Example server configuration file:
whitesourceServerUrl=https://saas.whitesourcesoftware.com
Configure expert settings
When you add this expert to a chain in Pulse, specify the following fields:
| Field Name | Description | Example Value | Default Value | Required |
|---|---|---|---|---|
| Step Name | The name of this expert step. | WhiteSource |
WhiteSource | Yes |
| Api key | The API key of a product registered in WhiteSource (also known as organization token). Copy the value from WhiteSource. | Yes | ||
| Product token | The product token generated when registered in WhiteSource. Copy the value from WhiteSource. | No | ||
| Project token | The project token generated when the product was registered in WhiteSource. Copy the value from WhiteSource. | Yes | ||
| Include pattern | Use Ant patterns to include specific resources. Separate each pattern with a space. | **/*.jar | ||
| Exclude pattern | Use Ant patterns to exclude specific resources. Separate each pattern with a space. | **/*sources.jar **/*javadoc.jar | ||
| Poll delay | Specify how often, in seconds, the expert polls the WhiteSource database. | 120 | 30 | |
| Update Inventory | Select this option to update the WhiteSource project dashboard with new information that was found. If not selected, the information is only reported in PulseUno. |
Changesets
About changesets
PulseUno uses changesets to visualize information about changes. A changeset is a logical grouping of changes that is automatically created every time you deliver changes in a stream/branch to a repository. A changeset enables you to identify, work with, and track, sets of changes. Every changeset that you deliver creates a new version of a stream/branch.
There are multiple ways that you can view the information in changesets:
- Changeset Graph: visualizes your changesets and streams/branches of development.
- Changeset History: displays the history of changes in chronological order.
You can view changeset information for spaces, products, streams, and branches. My Work displays changeset information specific to the user who is currently logged in.
You can filter the changeset graph, or any information view, to:
- Limit the data that is displayed.
- Focus on a specific feature or set of streams, branches, and projects.
- Focus on a specific period of time.
- Select a space, product, stream, or branch.
- Open the changeset graph or one of the information views.
- At top right click the date filter.
- (CM only) In the Stream Name box enter a wildcard to match stream and project names, for example: QLARIUS:JAV*
- You can enter multiple wildcard strings; separate each wildcard with a comma.
- To hide specific streams or branches, add a minus '-' character at the start of the string, for example: -*JAV*
- To only display streams or branches that you have marked as favorites, select Show favourites only.
- From the Start Date and End Date lists do one of the following:
- Select a predefined date range.
- Select Since or Until and use the date picker to manually select a date range.
- Start Date displays all data that matches the wildcard from the date that you specify.
- End Date displays all data that matches the wildcard up to and including the date that you specify.
- Select other options as required, for example, show parent streams.
- Click Apply. The graph or view refreshes and displays data that matches the filters that you specified.
View changesets
Overview
A changeset graph visualizes streams and branches and their change history across multiple releases. The graph provides development teams and release managers with a visual understanding of what changes are being worked on, where, and why. Experts provide an opinion on the health of changes and an indication of release readiness. A changeset graph enables you to:
- Visualize all your streams, branches, and projects in one place including branches and merges. Each circle or group represents a changeset or a group of changesets.
- Review the health and readiness of your changesets and determine if they are ready to be merged or released.
- Watch in real time as streams and branches are branched, merged, and moved through the lifecycle.
Changeset health
Changeset health is displayed visually using a combination of the expert opinions of the changes and the review state:
The changeset is currently healthy and the review was successful
The changeset is not healthy or the review failed
The changeset is unstable
Experts are running on the changeset
Experts are scheduled to run on the changeset
No experts were run on the changeset and no review is available
The changeset was stopped
When the review and experts are completed, a changeset icon has a solid border, for example:

When the review or any experts are in progress, a changeset icon has a border that is not solid, for example:

Display a changeset graph
- Select a space, product, stream, or branch.
- On the sidebar select Changeset Graph.
- (Optional) Filter the information that is displayed.
- Use the following methods to display the information on a changeset graph:
- Mouse over a stream's label to display its changeset history.

- Click a stream's label to display an overview.
- Mouse over, or select, a changeset to highlight all the merge lines that connect it to other changesets.
- Control-click changesets to highlight multiple merges.
- Mouse over a changeset to display a summary.

- Mouse over a changeset group to display the stream version range, and the result of the chains that ran on the most recent changeset.

View changeset details
Click a changeset to view its details. A pane at the bottom displays information including:
- The changeset number and description.
- The stream or project version that owns the changeset.
- The user whose delivery created the changeset.
- The date and time the changeset was created.
- The review created by the delivery. Mouse over to display its current state.
- The result of the chain that ran on the changeset.
- Control-click to select and view the details of multiple changesets.
- Click a review to open the review page associated with a changeset.
- (Administrators only) If a changeset did not create a review automatically, click Create Review to create one manually.
Group changesets
You can view changesets individually or grouped by days or weeks. Groups take up less space on the graph and look like this:
The number of changesets contained in a group is displayed at the top right.
- Open a changeset graph.
- From the Changesets Graph list select one of the following:
- Individual Changesets
- Grouped by Days
- Grouped by Weeks
Sort streams and branches on changeset graphs
On the changeset graph you can sort streams and branches by:
- Stream or branches name
- Create date
- Last activity
You can also sort streams and branches in ascending or descending order.
- Open a changeset graph.
- From the Streams sorted by list, select a sort option and a sort order.
View changeset history
The changeset history view displays changes to spaces, products, streams, and branches in chronological descending order. For each changeset the following information is displayed:
- The changeset number and description. Click to open the changeset page.
- The stream or project version that owns the changeset.
- The user whose delivery created the changeset.
- The date and time the changeset was created.
- The review created by the delivery. Click a review to view its details.
- The health of the changeset.
- Select a space, product, stream, or branch.
- On the sidebar, select Changeset History.
- (Optional) Filter the information that is displayed.
- Select a changeset to view its details.
View changeset pages
A changeset page displays information about a specific changeset including:
- The changeset ID and title
- The associated stream or project
- Recent activity, such as experts that ran on the changeset
- Related requests
- The associated reviews
- The results of chains that ran on the changeset including findings and measurements
- A list of all the files in the changeset
- The contents of the files and comments.
- Comments and findings are tied to the file version where they were added and shown when that version is displayed.
- To display this changeset on the Changeset Graph click Show on graph.
- To browse the contents of the parent stream at the time the changeset was delivered, click Code.
- Select a space, product, or stream.
- On the sidebar, select Changeset History.
- Select a changeset to view its details.
Customize Changeset Pages
You can customize if the following elements are displayed by default on a changeset page:
- Comments made by reviewers
- Findings on files made by experts
- Entire files (not only the lines that have changed)
- Previous versions of files
- Combine the previous and current differences of files
You can also select a white space option for viewing file differences, for example, Ignore White Space.
- Open a changeset page.
- Click Action
and select Display Defaults. - From the Show by Default select options.
- From the White Spaces list select an option.
- Click OK.
Run reports
Dashboard reports
Dashboard reports display statistics and trends that are generated from the activity in your streams and branches. Reports are scoped to the space, product, or stream from where you run them. If you are an administrator you can create and manage reports.
- Spaces can only run reports created at the space level.
- Streams and branches can run all reports created at all levels.
Create reports
You can create a new report and add multiple panels. Each panel can have one of the following:
![]() |
Metric: a chart with a single value, for example, the number of deliveries made. |
![]() |
Line Chart: an illustration of data points at successive time intervals. Mouse over a time interval to display the data for each value. |
![]() |
Pie Chart: a circular statistical graphic that is divided into sectors to illustrate numerical proportion. Mouse over a sector to display its value. The value in the middle is the first metric's numeric value as a percentage of the total. |
![]() |
Bar Chart: a diagram in which the numerical values of variables are represented by the height or length of lines, or rectangles of equal width. |
![]() |
Table: a set of data arranged in rows and columns. |
- Select the level where you want to create the report (a space, product, or stream/branch).
- On the sidebar select Reports.
- From the Actions menu and select Create View.
- In the Title box enter a name for the new view.
- In the Note box optionally enter information about the report.
- Click Save.
- To add a panel to the report do the following:
- Click Add panel.
- Enter a name for the panel.
- Select a display type.
- Select Report on difference from previous value to show how a value has changed over time. For example, to show a trend such as the number of defects.
- Select a width for the display (as a percentage of the width of the main window).
- Select one of these metric types:
- Review Metrics
- Expert Metrics (only available for streams and branches)
- Click Add metric and select one from the list. You can add multiple metrics to these display types: pie charts, bar charts, and tables.
- Click Save.
- To add more panels repeat the previous step.
- Drag and drop panels to change their positions in the report.
Run reports
- Select the level at which you want to run the report (a space, product, or stream/branch).
- On the sidebar select Reports.
- From the Reports list select a pre-defined report.
- (Optional) Select a time period for the report (start and end dates).
- To refresh the report click Refresh.
Manage Reports
Administrators can delete and edit reports.
- Select the space, product, or stream/branch where the report is located.
- On the sidebar select Reports.
- From the Reports list select a report.
- To delete the report, from the Actions menu select Delete and confirm.
- To edit the report's title and description, from the Actions menu select Edit Title & Notes.
- To edit a report panel click Edit in its title bar. Modify the settings and click Save.
- To remove a panel click Delete in its title bar and confirm.
- Drag and drop panels to change their position in the report.
Changeset reports
The Changeset report displays information about changeset creation and health.
- Select the level where you want to display the report (a space, product, or stream).
- On the sidebar select Reports and then Changesets.
- Select a date range from the filter on the top right. The default is the last 3 months.
The Changesets Delivered section displays:
- A graph of changeset delivery frequency over the date range.
- The total number of users who contributed and their deliveries.
The Changesets by State section displays:
- Colored tiles that indicate changeset health and display the total number of changesets for each state.
- A graph of the health of changeset deliveries over time. You can display this graph:
- Stacked: displays the changeset states stacked one on top of each other. The pop up label displays the total number of changeset states per day.
- Stream: displays each changeset state separately and shows the trend. The pop up label displays the total number of changeset states per day.
- Expanded: similar to Stacked but the graph is expanded to 100%. The pop up label displays the changeset states as a percentage of the total number of deliveries for each day.
The Changesets Details section lists all the changesets delivered over the date range. Click a changeset or review label to view more details.
Request reports
The requests report displays information about request creation.
- Select the level where you want to display the report (a space, product, or stream).
- On the sidebar select Reports and then Requests.
- Select a date range from the filter on the top right. The default is the last 3 months.
The Requests Creation graph displays the creation of requests over time. There is a tab for each request type.
The Requests by state section lists the total number of requests per state. Click a state to display a list of all the associated requests. Click a request to view its details.
Review reports
The review report displays information about reviews created by changeset deliveries.
- Select the level where you want to display the report (a space, product, or stream).
- On the sidebar select Reports and then Reviews.
- Select a date range from the filter on the top right. The default is the last 3 months.
The Reviews tab displays:
- A graph that shows the frequency of review creation for the selected date range.
- A list of all reviews by state. Click a state to display a list of all the associated reviews. Click a review to view its details.
The Top Reviewers tab displays the users who reviewed the most reviews.
The Top Owners tab displays the users who own the most reviews.
The Top Rework tab displays the users who have had the most reviews sent for rework.
Contributor reports
You can display a list of all the developers that have made deliveries. The tiles display the number of changesets delivered and the health of their chains:
- Green tiles: the chains were successful and are healthy
- Yellow tiles: the chain are unstable and there are health issues
- Red tiles: the chains failed and there are health issues
- Grey tiles: no chains ran on the changesets
Mouse over a colored section of a contributor's bar to display its percentage of the total number of changesets that have been delivered. The contributor's total number of deliveries is displayed to the right of their bar. The total number of contributors and deliveries for all developers is displayed at the top of the page.
- Select the level where you want to display the report (a space, product, or stream/branch).
- On the sidebar select Reports and then Contributors.
- Select a date range from the filter on the top right. The default is the last 3 months.
Delivery activity reports
You can display the days and hours when deliveries were made. Larger circles indicate higher activity.
- Select the level where you want to display the report (a space, product, or stream/branch).
- On the sidebar select Reports and then Punch Card.
- Select a date range from the filter on the top right. The default is the last 3 months.
Configure user preferences
Subscribe to email notifications
You can select the review, pull request, and vault email notifications to which you are subscribed. Notifications are sent when an event takes place, for example:
- Your review or pull request is published or abandoned.
- You become the author of a review or pull request, or are added as a reviewer.
- Your package is published for approval.
- Your package is approved or rejected.
- On the top navigation click My Work.
- On the sidebar select Preferences > Email Subscriptions.
- Select the Review or Vault tab.
- Select, or unselect, notifications.
- Click Save.
Set changeset graph defaults
You can set defaults for how the changeset graph is displayed.
- On the top navigation click My Work.
- On the sidebar click Preferences.
- In the Changeset Graph Defaults section, from the Display Scale list select one of the following:
- Changeset: display individual changesets.
- Daily: groups changesets by days.
- Week: groups changesets by weeks.
- Select a Zoom Level.
- Click Save.
Set view defaults
You can set defaults for how Views are displayed. Views include Reports, the Changeset Graph, Changeset History, Contributors, and Punch Card.
- On the top navigation click My Work.
- On the sidebar click Preferences.
- In the Default Time Period for Views section select the default Start Date and End Date range for the data that is displayed.
- Click Save.
Administer
To administer PulseUno you must be logged in as a user with administrator privileges.
Configure the avatar server
Avatars help to build a community between your users by providing them with a graphical alter ego. Administrators can configure where PulseUno obtains user avatar images.
- On the top navigation click Administration.
- Select User Data and Avatars.
- Select one of the following sources for avatar images and user data:
- Disabled: all avatars display the default user picture.
- Repository: use a repository to find avatar images, full names, and email addresses for your users. Select a respository from the Repository Details list.
- Solutions Business Manager: use an SBM server to find avatar images and full names.
NOTE To use SBM avatars, PulseUno and SBM must be configured to use the same SSO server.
- LDAP Server: use the LDAP settings to find avatar images, full names, and email addresses. See the instructions in the next step.
- Gravatar: use an email address suffix.
- If you selected LDAP, specify the following information:
- Server URL
The URL of the LPAP server, for example:
ldap://domain-controller.example.com:389 - Username
The bind user to perform searches as, for example:
cn=binduser,ou=Organizational Unit 1,ou=Organizational Unit 2,dc=example,dc=com - Password
The password of the LDAP bind user. - Base DN for search
The base DN to search from, for example:
dc=example,dc=com - Avatar image attribute
The LDAP attribute containing avatar image data, for example:
thumbnailPhoto - Search filter
The LDAP search filter to match objects, for example:
(&(objectClass=person)(sAMAccountName={0})) - Follow LDAP referrals
To enable searches to follow LDAP referrals, toggle Follow LDAP referrals to Yes.
- Server URL
Configure Special Services
Administrators can configure the servers that provide specialized services to PulseUno, such as Solutions Business Manager.
- On the top navigation click Administration.
- Select Servers.
- In the Solutions Business Manager URL box enter the URL for the SBM user workspace, for example:
http://sbm-server.example.com/tmtrack/tmtrack.dll? - In the Email Address Domain Suffix box enter the suffix that is automatically appended to user names to form email addresses, for example:
@example.com. - Click Save.
Administer email notifications
Administrators can manage the review email notifications that users can subscribe to, and unsubscribe from. If a notification is disabled, users will not see the notification listed in their subscription preferences. If a notification is available, users can choose to subscribe to it.
- On the top navigation click Administration.
- Select Notifications.
- For each notification type select one of the following:
- Disabled: the notification is not available for users to subscribe to.
- Send notification: the notification is sent to users by default though they can unsubscribe from it.
- Do not send notification: the notification is not sent to users by default though they can subscribe to it.
- If you do not want users to receive code fragments in email notifications, unselect the option Include code fragments.
- Click Save.
Manage users
This section explains how to add new users, lock, disable, and delete existing users, and assign or remove an administrator role.
A user can be one of the following types:
- Standard. Can use peer reviews, changeset views, and request management.
- Administrator. Can change a user's role and administer the system. PulseUno can have multiple administrators.
Assign or remove an administrator role
In PulseUno for Git, if internal authentication is used (default), administrators can add and remove users as well as change passwords. For details, see Change a user's password to PulseUno. If PulseUno for Git is configured for external authentication, for example, with LDAP, these functions are restricted.
To assign or remove an administrator role:
- In PulseUno, navigate to Administration > Users.
A list of users is displayed including their user name, full name, email address, and user type. - To assign administrator permissions, select one or more standard users. In the Actions menu, select Add administrator privilege.
- To remove administrator permissions, select one or more administrators. In the Actions menu, select Remove administrator privilege.
Add users
As an administrator, you can add new users if your PulseUno for Git instance uses standard password authentication.
To add a user:
- In PulseUno for Git, navigate to Administration > Users.
- On the Users page, click the New User (+) icon.
- In the Add User dialog box, specify the following user details:
Field Description User Name Enter a username for logging in.
Full Name Enter a user’s first and last name.
Email Address Enter a user’s main email address.
Secondary Email (Optional) For increased security, enter an additional email address.
Role (Administrator) Select this option to assign a user an administrator role.
- Click Add.
To add another user, click Add & Another.
After you have added a new user, proceed to set the user's password. For details, see Change a user's password to PulseUno for Git.
Lock and disable users
As an administrator, you can lock, unlock, disable, and enable user accounts.
A locked user can no longer access PulseUno but can still be added as a reviewer and receives notifications. Use this option if you need to temporarily prevent a user from logging in to PulseUno.
A disabled user can no longer access PulseUno, be added as a reviewer, and receive notifications. Use this option if you need to permanently deactivate a user's account.
To lock a user:
- In PulseUno, navigate to Administration > Users.
- On the Users page, select a user from the list. Use search to help you find users.
- From the Actions menu, select Lock.
To unlock a user's account, select Unlock from the Actions menu.
To disable a user:
- In PulseUno, navigate to Administration > Users.
- On the Users page, select a user from the list. Use search to help you find users.
- From the Actions menu, select Disable.
To activate a disabled account, select Enable from the Actions menu.
Delete users
As an administrator, you can remove users from PulseUno for Git.
To delete a user:
- In PulseUno, navigate to Administration > Users.
- On the Users page, select a user from the list. Use search to help you find users.
- Click the Delete icon and then confirm your action.
Deleted users are removed from the list of users in the UI, and their previous activity is displayed under anonymized names, for example, Deleted user 123.
See also
Create chain and vault retention policies
By default, chain findings and vault packages are kept for 30 days. Administrators can create custom retention policies and apply them to chains and vaults.
- Chain findings
- Vault packages
- On the top navigation click Administration.
- Select Retention Policies.
- Click New Retention Policy.
- Enter a title and description for the new retention policy.
- Specify the number of items to be retained in the log, for example: 100
- Specify how many days items in the log will be retained, for example: 365 (one year)
- Specify the maximum size of the log in megabytes, for example: 1024 (a gigabyte). When the log reaches the defined size the oldest items are purged.
- Click Save.
Configure connections to Dimensions CM repositories
As an administrator, you can add and modify connections to Dimensions CM repositories (base databases).
- On the top navigation click Administration.
- Select Connections.
- Do one of the following:
- To add a new repository select New Connection (+) and select Dimensions CM.
- To edit the connections for an existing repository, select it from the list.
- In the Title field, enter or modify the name of the Dimensions CM repository.
- In the Server box field, enter or modify the network name of the Dimensions CM server, for example:
dm-server.example.com - In the Base database name field, enter or modify the database connection, for example:
CM_TYPICAL@DIM14These two values, separated by the @ symbol, are the same information that you enter in the DB name and DB connection boxes when you log into a Dimensions CM client. - Enter a Dimensions CM account username and password.
- Select or clear the Always use the credentials option. For details about using this option, see Configure access to repositories.
- Click Save.
Configure access to repositories
When PulseUno accesses a Dimensions CM repository, it presents a set of credentials. The credentials used for each repository depend on how you set the option Always use the following credentials in the repository connection:
- Selected: the CM account that you specify (see above) is used to connect to the Dimensions CM repository, which allows connections and caches to be pooled across users. Audit trail and user access control is the same as for the CM user. This option uses less disk space and fewer system resources.
- Unselected: the credentials of the user currently logged in PulseUno are used to connect to the Dimensions CM repository. Audit trail and user access control is the same as for the PulseUno user. The CM account that you specified is used for non-interactive connections to that repository when a logged in PulseUno user is not available. This option provides better audit trail and access control.
Set integrations with roles and request states
Administrators can set PulseUno integrations with Dimensions CM roles and request states.
- Actioning a request to In Review causes the review rules to run and will typically change the review's state to In Review.
- Apart from Reviewer role name in CM, the integrations are optional. Leave an integration blank to disable it. Leave all boxes blank unless your CM request lifecycle includes an In Review state.
- If you do not want to automatically copy role assignments to PulseUno, or push states from PulseUno, do not use this integration. Users can make changes manually in PulseUno and Dimensions CM without this integration.
- On the top navigation click Administration.
- Select Connections.
- Select a Dimensions CM repository.
- Select the Reviews or Pull Requests tab.
- For Reviewer role name in CM enter a Dimensions CM role. Users that hold this role can be selected as reviewers in PulseUno. If you do not specify a role, the default REVIEWER is used.
- For In Review state name in CM enter a comma separated list of CM request states that can add reviewers to associated PulseUno reviews. PulseUno listens for Action Request notifications from Dimensions CM. When a request enters one of these named states in CM, its Reviewer role assignment is copied to PulseUno, and its review rules are executed.
- For Rework state name in CM enter the CM state to which requests are actioned when any associated PulseUno review is sent for rework.
- For Approved state name in CM enter the CM state to which requests are actioned when any associated PulseUno review is sent for rework or marked as approved.
- (Pull requests only) For Completed state name in CM enter the CM state to which associated PulseUno requests are actioned when any pull request is merged.
- Click Save.
Clear PulseUno caches
If you have made a configuration change and it is not visible, try clearing the relevant cache.
To clear a cache:
- In PulseUno, navigate to Administration.
- In the sidebar, select Caches.
- Click Clear to empty a cache.
- To clear all caches click Clear All.
Other administrative tasks
For information about the following PulseUno administration tasks, see the Dimensions CM Administration Guide:
- Customizing rule scripts
- Setting the JDBC URL
- Location of common tools and PulseUno data folders
Markdown syntax reference
Markdown is a syntax used to format information in plain text. You can use Markdown in any external text editor and copy the contents to PulseUno, retaining a consistent look for all comments. The formatting is created with special sequences of punctuation characters in plain text.
Character formatting
*This is italicized*, and so is _this_ |
This is italicized, and so is this |
**This is bold**, and so is __this__ |
This is bold, and so is this |
***Italics and bold*** together, as is ___this___ |
Italics and bold together, as is this |
Inline code and code blocks
`Back-quote character` (also known as backtick |
Back-quote character (also known as backtick or grave) is used for inline code |
Use 4 space indent for code blocks. |
Use four space indent for code blocks. Some code line 1 Back to normal text again. |
Line breaks and paragraphs
Normally a single newline |
Normally a single new line is ignored.
|
End a line with two spaces |
End a line with two spaces to cause an explicit line break. |
Separate paragraphs. |
Separate paragraphs. With a blank line. |
Add a > to the beginning of a line to create |
Add a > to the beginning of a line to create a block quotation
Multiple quoted lines will wrap together. |
Simple lists
- Use a minus sign for a bullet |
|
1. Numbered lists can use |
|
Links
Basic link to http://example.com. |
Basic link to http://example.com.
|
Inline link to [An Example Web Site](http://example.com/). |
Inline link to An Example Web Site. Numbered reference link to An Example Web Site. Named reference link to An Example Web Site. |
Headers and rules
Header 1 |
Header 1 |
Header 2 |
Header 2 |
A horizontal rule is three or more hyphens, |
A horizontal rule is three or more hyphens, asterisks, or underscores
on the same line with no other characters.
|
Agile request management
About requests
Requests are used to track and approve the changes your team is making. A request is a single unit of work, equivalent to a story in Agile planning, that can report a defect, suggest an enhancement, or detail other work for a particular product. You use story points to estimate the size of a request. Each request type has a lifecycle assigned to it that determines which users may work on the request. For information about request lifecycles see the Dimensions CM Process Configuration Guide.
The request catalog displays all the requests in a CM product or stream. You can open any request and view its details.
View the request catalog and open requests
- Select a product or stream.
- On the sidebar click Request Catalog. Each row displays information about a request including its owner, lifecycle state, and any backlogs and iterations to which it belongs.
- To open a request select it.
- General tab: displays information about the request, including:
- A summary of the request
- The request's acceptance criteria
- Attachments
- Related requests
- Associated reviews
- Associated changesets
- Total and remaining story points
- A burndown chart (if the request is included in an iteration)
- An external link, for example, the URL of an external web site or the value of an SBM ticket related to the request. If the value is a hyperlink, it opens in a new tab or window. This field only displays a value if it has been mapped to request attributes. An external link may look similar to this:

- The request owners and their capabilities
- Any iteration, backlog, or epic to which the request belongs
- The related stream and design part
NOTE The fields that are displayed can be configured by your PulseUno administrator. - Attributes tab: each request type has different user defined attributes, which record important information about the request. For example, Estimated completed date, Raised by, and Severity. Some attributes may be required.
- Action History tab: displays information about when the request was actioned to different states in its lifecycle and the users that performed the action. To filter the action history, select a lifecycle state.
- General tab: displays information about the request, including:
Configure request types
Administrators can:
- Disable request types to limit which ones can be used in request planning. At least one type must be enabled. By default, all request types are enabled and their attributes are not mapped.
- Map PulseUno attributes to request attributes defined in the process control plan in the Dimensions CM administration console. Select CM attributes that best suit how your team uses request planning. For information about request attributes, see the Dimensions CM Process Configuration Guide.
- Select the product where you want to enable request types.
- On the sidebar select Product Settings and then Request Types.
- Select the request type that you want to configure.
- Select or deselect Enable request type.
- Enable: existing requests of this type are visible and you can create new requests.
- Disable: existing requests of this type are visible but you cannot create new requests.
- In the Attributes Mappings section, map this request type's attributes to request attributes defined in CM (see below).
- Click Save.
Add external links to requests
Administrators can configure request types to display external links, see the next section.
Map PulseUno attributes to CM request attributes
To enable Agile planning, PulseUno requires additional fields. You can store these fields in PulseUno or map them to CM request attributes:
- If you store attributes (unmapped) in the PulseUno database you do not need to add them to your process control plan in Dimensions CM. This allows you to evaluate and use PulseUno more easily, especially if the fields will always be edited in PulseUno.
- If you map attributes to CM they can be viewed and edited in other CM clients.
| PulseUno attribute | Description | Default mapping | Can be mapped to |
|---|---|---|---|
| Summary | A detailed description of the request. You can display the text in this field as:
|
Detailed description | Single-value character field or Detailed description |
| Acceptance Criteria | Specifies the criteria to be met before the request is considered to be complete. | Not mapped (stored only in PulseUno database) | Single-value character field or Detailed description |
| Remaining Story Points | The estimated effort left to complete the request (in arbitrary units, such as story points). Used to generate the burndown charts. | Not mapped (stored only in PulseUno database) | Single-value number field |
| Total Story Points | The total effort estimated to complete the request (in arbitrary units, such as story points). Used to generate the burndown charts. | Not mapped (stored only in PulseUno database) | Single-value number field |
| Blocked | Specifies if a request is blocked and cannot be progressed. Typically a Yes/No attribute. | Not mapped (stored only in PulseUno database) | Single-value character field with a valid set that has at least two values. You must specify which value means Yes and which value means No. |
| Define an External Link | Defines an external link, for example, a link to an SBM ticket or an external URL. The link you define is displayed in the External Link section of a request. |
||
| Attribute Containing the Visible Value | Select a request attribute to display the value of an external link. For example, select the attribute that displays the value of a specific SBM ticket that is related to this request. The attribute may be similar to SBM Issue. Ask your CM administrator for the correct attributes to use. |
Not mapped (stored only in PulseUno database) | Single-value character field |
| Attribute Containing the URL | Select a request attribute that contains the link to an external item. For example, select the attribute that displays the URL of a specific SBM ticket that is related to this request. The attribute may be similar to SBM Hyperlink. Ask your CM administrator for the correct attributes to use |
Not mapped (stored only in PulseUno database) | Single-value character field |
Notes:
|
About backlogs
Backlogs enable you to organize your team’s work and group requests into a prioritized hierarchy of epics and features. An epic is a large unit of work that is typically broken down into smaller units of features and requests.
- Epics, features, and requests can only belong to one backlog, but you can move them between backlogs.
- Epic and features are optional and you can plan a flat backlog that only contains requests.
- Backlogs are located at the product level in PulseUno.
- You can view a backlog as a hierarchy or a flat view.

About iterations
An iteration is one development cycle, commonly known as a sprint, which is typically a few weeks. An iteration includes the requests your team are confident they can complete during the sprint. As an iteration progresses, the remaining effort required to complete the requests should decrease. You can view an iteration as a list or a card wall. Iterations are located at the product level in PulseUno.
The Content tab displays the content of an iteration in a flat list and includes information such as:
- What requests are being worked on.
- For each request, its rank order in the iteration, title, effort, current state, and owners.
- The progress of the work; the effort, in story points, required to complete each request.

On a Card Wall tab each card displays information about a specific request such as:
- Which team member is working on it.
- The request’s story points.
- If the request is blocked.
- The number of days the request has been in its current state.
- A badge indicating its review state and the health of the changes.
Cards are grouped in rows by request type with a separate column for each lifecycle state. Each request type displays the number of requests that are blocked, hidden, and unassigned.

A card wall also displays metrics about the progress of the current iteration:
- In progress: story points remaining to be completed (as a number and percentage).
- Iteration end: the number of days left until the iteration ends.
- Done: requests completed (as a number and percentage).
- Burndown chart: shows how much work remains to be done in the iteration and helps to predict when the work will be completed.
- Burnup chart: shows how much work has been completed and the total amount of work.
The History tab displays changes made during an iteration, for example, requests that were added.
Create new requests
- Do one of the following:
- Open the backlog where you want to add the request. Optionally select the epic or feature that will contain the request. To add the new request at the top level of the backlog, do not select an epic or feature.
- Open the request catalog.
- Click New and select a request type, for example, ECR.
- On the General tab do the following:
- Give the request a title and summarize its purpose.
- For Acceptance Criteria specify the criteria to be met before the request is considered to be complete.
- For Story Points estimate the total number of points required to complete the work and the points remaining until will be finished. Story points are an estimation of a request’s relative complexity compared to other requests, and the effort required to complete it.
- Optionally relate the new request to a stream and design part.
- On the Attributes tab specify or select values. Each request type has different attributes and some may be mandatory. The attributes are similar to those in the other CM clients.
- You can hide read-only attributes.
- Only attributes that you have the privilege to edit are displayed.
- The fields that are displayed depend on the request type and how it has been customized by the CM administrator.
- Click Save.
Create a new request based on an existing request
You can also create a new request based on the properties of an existing request. In CM this is known as priming a request. The new request can be:
- In the same or a different product.
- A different request type.
- Related to the request from which it was primed.
- Open the request catalog.
- Open the request that you want to prime.
- Click Prime To and select a request type.
- Select a relationship type, for example, Duplicate.
- Click Prime.
- Complete the form the same as for a new request.
Add an action description to a request
You can add an action description to a request without actioning it.
- Open the request where you want to add a description.
- Click Action
and select Add Action Description. - Enter a description and click Add.
Plan and manage a backlog
You typically start backlog planning by:
- Creating a new backlog.
- Adding epics and features.
- Populating the backlog with work (requests).
Create a request backlog
If you are an administrator, you can create a new backlog and assign backlog owners. A backlog owner can manage its content, for example: add, remove, and rank items. The backlog owners can be changed by an administrator or another owner.
- Select the product where you want to create the new backlog.
- On the sidebar select Backlog.
- Click New.
- Give the backlog a name and summarize its purpose.
- (Optional) To assign one or more owners:
- Click Add. The Add Owner dialog box is displayed.
- In the Search box enter a string that matches registered PulseUno users.
- Select one or more users and click Add Owner.
- Click Save.
Open a backlog
- Select the product containing the backlog.
- On the sidebar select Backlogs.
- Select a backlog or search for one by title or ID#.
- Select these options at the bottom of a backlog page:
- Planned requests that are already included in an iteration
- Request labels
- Closed requests
- To display the requests as a flat, ranked list, click
.
Create an epic or feature
- Open the backlog where you want to create a new epic or feature.
- (Optional) Click New and select Epic or Feature.
- Give the epic or feature a title and summarize its purpose.
- Click Save.
- Add additional epics and features as required.
- To change the hierarchy, drag and drop epics and features in the backlog.
Add a request from the request catalog
You can add an existing CM request that originated from inside or outside your team.
- Open the backlog where you want to add a request.
- Click
to show the right panel and select Request Catalog. - Select a request and drag it to a specific place in the backlog hierarchy on the left panel.
- You can search for a request using various criteria, for example, title or ID.
- A backlog or iteration's label is displayed if the request is already included in one.
- The request catalog displays all the requests in the current CM product.
Move epics, features and requests between backlogs
You can move epics, features, and requests between backlogs. An object can only belong to one backlog; if you move one to the target backlog it is removed from the source backlog. When you move a feature its child requests are also moved.
- Open the backlog where you want to move an object to.
- Click
to show the right panel and select Backlogs. - Select a backlog or search for one by title or ID.
- Select an epic, feature, or request and drag it to a specific place in the backlog hierarchy on the left panel.
- A backlog hierarchy automatically expands when you drag an object over it.
- You can also move objects from the backlog on the left to the one on the right.
Prioritize and rank requests in a backlog
In each backlog, requests are ranked in descending order of priority in their parent epic or feature. You can rank and prioritize requests in the structured or flat view.
- Open the backlog where you want to prioritize and rank requests.
- Click
to display the flat view. - Select a request and drag it to a different position in the hierarchy.
Mark a request as blocked
If you cannot continue working on a request you can mark it as blocked.
- Open the backlog containing the request you want to block.
- Select the request.
- Select Mark Blocked. In the backlog the request is now labeled as Blocked.
Delete an epic, feature or request
You can delete an epic, feature, or request from a backlog. If you select an epic that has child features they are also removed. Any requests contained in an epic or feature are removed from the backlog and made available to the team.
- Open the backlog where you want to delete objects.
- Select one or more epics, features, or requests. Multiple objects that you select must be at the same level in the backlog hierarchy. For example, you can only select requests and features that are at the same level in an epic.
- Click Delete.
Plan and manage an iteration
Create an iteration from a backlog
You can create a new iteration from a backlog if you are an administrator or the backlog owner. The new iteration can only include requests that are not already assigned to another iteration. Requests that you can add have a green circle next to their label
. If you select an epic or feature, its child requests are included in the new iteration.
- Open a backlog.
- Select one or more epics, features, and requests. Multiple objects that you select must be at the same level in the backlog hierarchy. For example, in an epic you can only select requests and features that are at the same level.
- Click Create Iteration.
- In the Create Iteration dialog box do the following:
- Give the iteration a name and summarize its goals.
- Specify the duration of the iteration and a start date.
- Click Save.
Create an iteration from an existing iteration
You can create a new iteration containing requests from an existing iteration if you are its owner or an administrator. This is useful when you have finished a sprint and want to move uncompleted requests to a new iteration. The owner of the source iteration becomes the owner of the new iteration and the selected requests are moved to the new iteration.
- Select the product where you want to create the new iteration.
- On the sidebar select Iterations.
- Select the iteration that will be the source for the new iteration.
- Select one or more requests.
- From the Move To menu select New Iteration.
- In the Create Iteration dialog box do the following:
- Give the iteration a name and summarize its goals.
- Specify the duration of the iteration and a start date.
- Click Start.
Create a new empty iteration
If you are an administrator you can create a new, empty iteration.
- Select the product where you want to create the new iteration.
- On the sidebar select Iterations.
- Click New.
- Give the iteration a name and summarize its goals.
- Specify the duration of the iteration and a start date.
- (Optional) To add an owner:
- Click Add. The Add Owner dialog box is displayed.
- In the Search box enter a string that matches registered PulseUno users.
- Select one or more users and click Add Owner.
- Click Save.
Open an iteration
- Select the product containing the iteration you want to view.
- On the sidebar select Iterations.
- From the list select one of the following: Recent, Owned by me, Current, Future, Previous
- Select the iteration.
Add a request from a backlog
You can add a request from a backlog to an iteration if you are the owner of the iteration or an administrator. You can only add requests that are not already assigned to another iteration. Requests that you can add have a green circle next to their label
.
- Open the iteration where you want to add a request.
- Click the Content tab.
- Click
to show the right panel. - On the right panel select Backlogs.
- Select a backlog or search for one by title or ID.
- Select a request and drag it to any position in the iteration on the left.
Move a request from another iteration
You can move a request from another iteration if you are the owner of both iterations. The request is removed from the source iteration and added to the target iteration.
- Open the iteration where you want to add a request.
- Click the Content tab.
- Click
to show the right panel. - On the right panel select Iterations.
- Select an iteration or search for one by title or ID.
- Select a request and drag it to any position in the iteration on the left.
Prioritize and rank requests
In each iteration, requests are ranked in descending order of priority. To change a request's position, do one of the following:
- Select it and drag to a different position.
- Click the Rank field and enter, or select, a new position.
Move requests to another iteration
You can move requests to another iteration if you are the owner of both iterations.
- Open the iteration from where you want to remove requests.
- Click the Content tab.
- Click
to show the right panel. - On the right panel select Iterations.
- Select a target iteration or search for one by title or ID.
- In the source iteration on the left select the requests that you want to move.
- Select Move To and then Iteration on Right <iteration ID>.
Move requests to a new iteration
You can move requests from an existing iteration to a new iteration.
- Open the iteration from where you want to remove requests.
- Click the Content tab.
- Select the requests that you want to move.
- Select Move To and then New Iteration.
- Give the new iteration a name and specify its duration and start date.
- Click Start.
Edit an iteration
You can edit an iteration if you are the owner or an administrator.
- Open the iteration that you want to edit.
- Click Edit.
- Edit the iteration.
- Click Save.
Remove requests from an iteration
You can remove requests from an iteration if you are the owner or an administrator. After you remove a request it can be added to other iteration.
- Open the iteration from where you want to remove requests.
- Select one or more requests.
- Click Remove and confirm.
Delete iterations
You can delete one or more iterations if you are the owner or an administrator.
- Select the product containing the iterations.
- On the sidebar select Iteration.
- Select one of these tabs: Current, Future, Previous
- Select iterations.
- Click Delete and confirm.
View request details on a card wall
When the card wall is displayed you can view a request's details.
- Open an iteration and display the card wall.
- Select a card. The request's details are displayed on the right.
Create space on a card wall
You can create space on a card wall and only display the information that you require by:
- Collapsing request types
- Collapsing lifecycle states
- Using compact cards
- Hiding the merics and burndown/burnup charts
Compact card wall example

- Open an iteration and display the card wall.
- To collapse a request type, toggle the arrow on the left.
- To collapse a lifecycle state, hover over the column title and click

- At the bottom of the card wall, click Show charts and/or Show compact cards.
Group requests on a card wall
You can group requests on the card wall by users. This enables you to:
- See how many requests and story points are allocated to each user
- Identify users who may be struggling to complete their work
- Open an iteration and display the card wall.
- At the bottom of the card wall, click Group by user.
Display off-normal request states
Off-normal request lifecycle states are not displayed by default.
- Open an iteration and display the card wall.
- At the bottom of the card wall select Show off normal states. If an off-normal state column is collapsed, click
to expand it.
Action requests
You can action a request to a new lifecycle state if it is in your Inbox or you are a Dimensions CM administrator.
- Normal Dimensions CM roles and privileges apply.
- You can only action to the Approved state when all the related reviews are approved.
Action a request from a backlog or iteration
- Open the request that you want to action.
- Click Action To and select a lifecycle state from the list. The Action Request dialog box is displayed.
- On the General tab optionally modify the total and remaining story points.
- Click the Owners tab and optionally add users who will own the request after it is actioned:
- Click Add. A dialog box displays a list of all the users that can be added as owners.
- From the Role to assign list, select the role with which to assign the new owners, for example, Developer.
- From the Capability of users list, select a capability for the new owners. For more information see the Dimensions CM Process Configuration Guide.
- Select one or more users and click Add.
- When you action a request you may need to provide additional information on the Attributes tab, some of which might be required.
- Click Action.
Action a request from a card wall
- Open the iteration containing the request that you want to action.
- Click the Card Wall tab.
- Drag a request to another lifecycle column. The Action Request dialog box is displayed.
- When you action a request you may need to provide additional information on the Attributes tab, some of which might be required.
- On the Owners tab, optionally select the user who will become the request owner after it is actioned.
- Click Action. The request’s state is changed and it moves to the next lifecycle column on the card wall.
Delegate a request
Delegate a request when you want to assign it to other users. When you delegate a request you can change the role assignments for it, for example, Developer. You can also select a Dimensions CM capability, for example:
- Leader: sole responsibility for the request.
- Primary: primary responsibility for the request.
- Secondary: acts as a backup to the primary role.
- Open the request catalog and select the request.
- On the General tab, in the Owners section click Add.
- From the Role to assign list, select the role to be delegated to the users.
- From the Capability of users list, select a capability for the users.
- From the Users to assign section select one or more users.
- Click Delegate.
Edit requests
You can edit a request's details if it is in your Inbox or you are a Dimensions CM administrator. After you edit a request its new values are displayed in all CM clients.
- Open the backlog or iteration containing the request that you want to edit.
- Select the request and click Edit.
- On the General tab do the following:
- Edit the title, summary, and acceptance criteria
- Edit the story points
- Add and remove attachments
- Add and remove relationships to other requests
- Relate the request to a different stream or project
- Add and remove relationships to design parts
- Select the Attributes tab and edit the values. The attributes vary between request types but are the same as in the other CM clients. Each request type has different attributes. Attributes that are required for the next state are indicated.
- You can hide read-only attributes.
- Only attributes that you have the privilege to edit are displayed.
- Click Save.
Add owners to requests
You can add owners to a request if the request is in your Inbox or you are a Dimensions CM administrator.
- Open the request from the request catalog, a backlog, or an iteration.
- On the General tab, in the Owners, section click Add.
- From the Role to assign list select a role, for example, Developer.
- From the Capability of users list select a capability, for example, Secondary.
- In the Users to assign box search for, and select, one or more users.
- Click Add and then Save.
You can also remove owners from requests if their role was not inherited.
- Open the request from the request catalog, a backlog, or an iteration.
- On the General tab, in the Owners, select one or more owners.
- Click Remove and then Save.
Troubleshooting
Administration issues
See also the PulseUno troubleshooting chapter in the Dimensions CM Administration Guide.
Database not accessible
If PulseUno fails to start because it cannot connect to its database, a detailed exception message is displayed instead of the login page. A common reason is a missing or inaccessible database at application start up time. The logs in the PulseUno data directory on the server contain more information. For information about configuring the JDBC URL, see the PulseUno chapters in the Dimensions CM Administration Guide.
Reviews not created automatically
Reviews are not created automatically when deliveries are made to CM:
- If your Dimensions CM server is correctly configured to emit ALF events when a delivery is made, check that your repository connection has been setup properly and that PulseUno can connect to it.
- In the stream's settings check that:
- The delivery filter is not set to exclude the changeset.
- Create/Attach to a Review is selected.
- If a delivery references a Dimensions CM request, or has a review label in the format [Q100] in the delivery message, the changeset may be associated with an existing review at the Draft or Rework state and will not create a new review.
User avatar images not displayed
Try the following:
- Check that the avatar server is configured properly.
- Go to Administration | Caches and clear the avatar images cache.
- Clear your local browser cache.
Chains do not start
If chains do not start when deliveries are made to CM check:
- The stream is configured to automatically run chains.
- The chain is configured to run on a schedule rather than every delivery.
- The PulseUno server logs described in the Dimensions CM Administration Guide.
Chain results not displayed
If chains run successfully but results are not displayed, check that the parameters in Jenkins are configured correctly. Builds will run in Jenkins even if parameters are not configured correctly, but the results will not be sent to PulseUno. You can also view chain logs.
For more information about configuring Jenkins, see the Dimensions CM Build Help.
Other issues
See also the PulseUno troubleshooting chapter in the Dimensions CM Administration Guide.
Reviewers not as expected
If the reviewers assigned to a new review are not as expected:
- Check that the design parts that own the files being reviewed are correct.
- Check who holds the Reviewer role on those design parts.
- A PulseUno administrator can configure the Reviewer role for each repository.
- PulseUno assigns reviewers differently to the way that roles are assigned to CM requests:
- PulseUno takes a union of the users holding the role on the items' owning design parts.
- CM requests take the role assignments from a common ancestor design part in the design part hierarchy.
Item content not displayed in reviews
If item content is not displayed correctly in reviews, in the Dimensions CM administration console check that:
- The item's data format is set correctly.
- The data format has an appropriate MIME type. Items that have a data format with a MIME type beginning text/ are displayed as inline text, MIME types beginning with image/ are displayed as images.
Requests are actioned but PulseUno reviews do not change state
If CM requests are actioned but the corresponding PulseUno reviews do not change state, try the following:
- On the top navigation click Administration.
- Select Repositories.
- Select the review's repository and click Defaults.
- In the Reviewer role name in CM field see what CM role that has been specified. Users that hold this role can be selected as reviewers in PulseUno.
- If the CM request does not have a user that holds this CM role, no changes are made in PulseUno.
- If the CM request does have a user hold this CM role, the role assignment should have been copied to the review. However, the review rule script for the stream also determines if the review changes its state.
Check the ALF event configurations and PulseUno server logs, see the Dimensions CM Administration Guide for details.
PulseUno reviews change state but requests are not actioned
If PulseUno reviews change state but the corresponding CM requests are not actioned, try the following:
- On the top navigation click Administration.
- Select Repositories.
- Select the review's repository and click Defaults.
- In the Approved state name in CM and Rework state name in CM boxes check the state names are correct.
- Click Cancel.
- On the sidebar click Connection Details.
- In the Credentials section check that the specified user can log into Dimensions CM and that the user account has privileges in Dimensions CM to action requests to the necessary states.
- If a request in Dimensions CM requires mandatory attributes, enter them manually. PulseUno cannot automatically populate the attributes unless the credentials on the repository are for an account that has privileges in Dimensions CM to bypass this requirement.
- Delegate any role assignments on requests in Dimensions CM that are required before the request can be actioned to the next state. PulseUno does not change the role assignments on requests in Dimensions CM, even for the Reviewer role of the repository.
- Only reviews that change their state from In Review to Rework, or from In Review to Approved or Completed, cause their corresponding CM requests to be actioned. If a review is associated with multiple requests, all the requests are actioned. If a request is associated with multiple reviews, the request is actioned more than once.
- Check the PulseUno server logs at the DEBUG level, see the Dimensions CM Administration Guide for details.
Unexpected formatting in review comments
- PulseUno uses Markdown syntax for formatting user comments. If you are expecting a new line in your comment, try ending the previous line with two spaces or using an extra blank line.
-
For security reasons the following are removed:
- Links or images that do not point to an URL of the type http:// or https://
- Unsafe or unbalanced HTML tags
IIS 403 error
If you have configured IIS using AJP and are getting an IIS 403 error page instead of the Pulse login page when you open http://<server-name>/pulse/, do the following:
- Open IIS Manager.
- In the Connections pane, expand Default Web Site, and select the /jakarta folder.
- In the Management section of the Features view, double click Configuration Editor.
- In the From list select Default Web Site/jakarta Web.config.
- In the Section list select system.webServer/httpErrors from the tree.
- Change the value of the property existingResponse from Auto to PassThrough.
- In the Actions panel click Apply.
PMD expert
If the compilation unit (*.java file):
- Is not syntactically correct PMD does not report any findings therefore sources must be compiled successfully.
- Is very large, for example 10,000 lines, and there are multiple bugs PMD may take a long time to complete.
SonarQube expert
If you have problems with SonarQube Runner, see the website.
If you receive the state Stopped check that:
- The expert property file is in:
${dataDir}/conf/experts/com.serena.starlight/sonarqube/sonarqube-pulse-expert.properties - All required properties are specified in the property file.
- The SonarQube server and database are up and running.
- The connection details to the SonarQube server and SonarQube database are configured correct in the property file.
- The path to the SonarQube Runner command line tool is correct in the property file.
Check the PulseUno log file.
Deployment Automation experts
Check the following:
- The configuration is set up properly, for example, the correct Deployment Automation object names are specified.
- If the property file is not found or is not set up correctly, the wrong Deployment Automation server URL may be specified.
- The Deployment Automation server version is supported.
- The Deployment Automation agent or resource is online.
Dependency Vulnerabilities expert
Check the following:
- If autoupdate in the properties file is set to false, CVE data is not updated and the expert will not report any findings.
- The OWASP Dependency Check tool does not always work correctly with analyzer options and you may have to disable them. To exclude specific paths use the Exclude patterns field.
StarTeam
StarTeam supports older versions of AutoPass License Server. If you are having licensing problems, try updating to version 10.9.2 or later.




