Create and configure pipelines

ALM Octane pipelines represent the flow of your CI server jobs and steps. Use pipelines to get a clear, multi-level, analytic view of your pipeline runs and their status. This helps monitor quality and progress, quickly identifying and fixing issues as they occur.

To learn more about pipelines in ALM Octane before creating them, see Pipelines: CI server and SCM system integration.

Note: If you are working with Jenkins: You can similarly create pipelines using the HPE Application Automation Tools plugin on the Jenkins CI server. For details, see the section on creating and configuring pipelines on the HPE Application Automation Tools wiki page.

Add a pipeline in ALM Octane

  1. Prerequisites

  2. In ALM Octane, go to the Pipelines module and open the Pipelines tab.

  3. Click + to add a pipeline.

  4. Select a CI server. The list displays the servers created on the CI Servers settings page of the current workspace.

  5. Select the root job from which you want ALM Octane to start the pipeline. The list displays the jobs defined on the CI server you selected. If the communication with the server fails, the list will not be available.

    Note: The result of a pipeline run is determined by the result of its root job. Therefore, for the pipeline run result to reflect the results of other jobs in the flow, make sure that on your CI server, the results of those jobs are aggregated up to the root job.

  6. Enter a name for the pipeline and, optionally, assign the pipeline to a release.

    The release assigned to the pipeline is automatically assigned all test runs collected from this pipeline. This lets you view the results in the context of a release and asses the release quality.

    Tip: If you assign the pipeline to the Default Release, the pipeline will always be associated with whichever release is currently set as the default release.

  7. Specify the pipeline's type. Select one or more types from the list: Build, Test, Integration, Deploy, Security.

    • Most types are optional. This definition helps you remember the lifecycle stages that this pipeline handles.
    • You must select Security if you want this pipeline's runs to show security vulnerabilities discovered by Fortify on Demand.
  8. Connect the pipeline to Fortify on Demand (optional).

    Specify whether This pipeline includes a Fortify on Demand job that uploads your code for a security assessment.

    If this option is selected, ALM Octane retrieves Fortify on Demand results and displays the new vulnerabilities found for each pipeline run.

    This option is available only if:

    Enter the Application and Release that you used when configuring the Jenkins Fortify on Demand Upload step. These details identify the application whose code Fortify on Demand is scanning.

  9. Set up notifications (optional). Instruct ALM Octane to send emails to relevant users when builds or automated test runs fail.

    • Notify committers upon run failure. Notify people whose commits were included in a pipeline run that failed.
    • Notify test owners if their tests fail. Notify people who are owners of failed automated tests.

    You can edit these options later in the pipeline's Details tab. DevOps admin permissions are required.

    For more details, see Track commits associated with a pipeline run.

ALM Octane retrieves the information from the CI server and creates the pipeline. Click the pencil next to pipeline's name or release to edit it.

After the pipeline runs, you can see a comprehensive overview of the run results. For details, see View pipeline run results and analyze your build quality.

Back to top

Customize your pipeline display

If you have a large number of pipelines defined, it may be helpful to view less information at once.

In the Pipelines module, open the Pipelines tab and use the toolbar above the list of pipelines.

What do you want to do? How to do it
Filter the list of pipelines to display only the ones you want to work with

Click the down arrow on the Select pipelines button and select the pipelines to display.

Select to display less information about each pipeline in the list Click to show more or less information about pipelines in the list itself.

Your selection is retained for future sessions as well.

Back to top

Explore a pipeline's graphical representation

When you create a pipeline, ALM Octane creates a graphical representation of the pipeline steps, starting from the root job of the pipeline.

If you are working with Bamboo or Jenkins you can see the flow of the steps, including which steps run in sequence and which steps run as parts of other steps.

Open the pipeline by clicking its ID and select the Topology tab.

Jenkins example

Note: The pipeline is initially built based on the structure ALM Octane discovers on the CI server. When the pipeline runs on the CI server, ALM Octane adds any additional steps it discovers during the run. You will see these steps the next time you open the pipeline.

Here are visual clues for understanding and working with the display as you explore the pipeline in the Topology tab.

Visual clue Description

The pipeline's ID and name.

Click to view the pipeline in a Flat view or Tree view.

Tree view. Displays the hierarchy and flow of the pipeline.

Flat view. Displays the pipeline steps side by side without describing the hierarchy or flow. This view is useful for gaining an overview of complex pipelines.

In this view, you can also filter pipeline steps. For details, see Filter pipeline steps .

A step in the pipeline.

Click the step's name to open the job on the CI server.

For a pipeline that displays hierarchy, click to expand and collapse the steps that run as part of their parent step. (inner jobs)

Steps on the same side of a dotted line run in parallel to each other. (parallel jobs)

Steps on the right side of a dotted line run after the steps on its left side end. (sequential jobs)

Steps that run as part of the pipeline.

In a pipeline that displays hierarchy, the steps after this arrow run only after the calling step and its children end. (sequential jobs)

Click to label the step type as a compile, package, deploy, or test.

Click to configure step information, which is added to the pipeline step as a tag. You can use tags later, for example, for filtering test run results.

You can specify:

  • Test-related information: Framework, test type, testing tool, and test level.

  • The environment on which the step runs (browser, operating system, database, and so on). You can also define conditional environment tags that are set according to build parameter values when the step runs.

  • A way to link to build reports created by your build.

For details, see Configure steps: Define test and test run information.

Click to instruct ALM Octane to redraw the topology based on the current pipeline steps defined on your CI server.

This is useful, for example, if you changed the pipeline flow on the CI server a few times and the pipeline structure in ALM Octane includes steps that no longer belong in the flow.

When redrawing, ALM Octane attempts to maintain the pipeline step configuration. However, for steps that moved significantly, the configuration may be lost.

Back to top

Label and configure pipeline steps

Enhance the pipeline's usefulness in ALM Octane by labeling and configuring. This makes it easier to understand the purpose of the steps and provides additional contextual information for test run results.

Open the pipeline by clicking its ID and select the Topology tab.

DevOps admin permissions are required.

Label steps according to job type

Click the label at the top right of a step, and select a job type for the step. The label helps you understand the pipeline flow. In the flat pipeline view, you can also filter the pipeline to show only steps with specific labels.

Job types include: Compile, Package, Deploy, and Test.

When the pipeline runs, the labels are added to the resulting builds. When analyzing failures in the Failed Builds tab, the labels help you understand the context of the builds.

Configure steps: Ignore or hide results of specific steps

Your pipeline may include steps or tests whose results you do not want to track in ALM Octane. You can instruct ALM Octane to ignore such steps or hide their results from the quality analysis.

In a pipeline's Topology tab, click the Configuration button on the bottom right of the step. Then select one of the following options:

In the pipeline's Topology tab, the pipeline step reflects the selected option. For example:

Configure steps: Define test and test run information

For pipeline steps that run tests, add environment and testing information about the step.

  • Test Fields and Testing Environments. This adds tags to your pipeline step. When this pipeline step runs tests, its tags are added to the tests, test runs, and builds. You can then filter builds and test run results in ALM Octane according to these tags, and enhance your product and release quality analysis.

    Example: This Jenkins step, QA-Functional-Chrome, is labeled as a Test and has the following tags configured:

    • Test fields: Framework = TestNG, Test type = End to End, Test level = Integration Testing, Testing tool: Selenium.

    • Testing Environment: WinServer2012 (OS), MSSQL (DB), QA (AUT Env), Chrome (Browser).

  • Custom Build Report. If your build creates reports, ALM Octane can add a link to your report in the relevant automated test runs. This report can be stored on your CI server or elsewhere, and may help analyze test run failures.

    Configure a URL or URL template for custom report links in your pipeline step. ALM Octane adds the links to the test runs that are created as part of this pipeline step and to the build that is the result of this step.

To configure a pipeline step:

  1. Click the Configuration button on the bottom right of the step.

  2. In the Test Fields tab, add information about the type of tests the step runs, and the tools and framework it uses to run them.

    Select from the predefined values:

    Field Possible values
    Framework Select from the list. Example: JUnit, TestNG, UFT.
    Test type

    One of: Acceptance, End to End, Regression, Sanity, Security, Performance.

    Testing tool

    Select from the list. Example: Manual Runner, Selenium, UFT, LeanFT, StormRunner Load, StormRunner Functional, LoadRunner.

    Test level Select from the list. Example: Integration Test, System Test, Unit Test.

    You can add values to the Framework and Testing tool lists. To do this, add tags to the pipeline step using the API, or the Jenkins plugin UI.

    ALM Octane automatically sets the following fields for test runs discovered on Jenkins pipelines:

    Field Set for test results from

    Testing tool

    UFT

    LoadRunner

    StormRunner Load

    Performance Center

    StormRunner Functional (requires version 5.3.3 or later of the HPE Application Automation Tools plugin)

    Framework UFT
    Test type Performance Center

    If you manually added tags to the pipeline step that runs these test, your tags override the automatic ones.

  3. In the Testing Environment tab, add information about the environment on which the step runs. For example, the operating system, browser, and database.

    Environments are grouped by category. ALM Octane provides a list of environments out-of-the-box. You can also define your own environments details, according to your project developing model.

    Do one of the following:

    Use an existing environment

    Click the Environment box and select existing environments.

    Tip: Type in the box to search for a specific value.

    Add a custom environment
    1. Click the Environment box, type the name for the new environment and select it in the list.

    2. Select a Category for your new environment and click OK.

    Example:  

    • Add a Lab Machine category with tags for each machine you use for nightly runs.

    • Add environments for specific browser versions or development branches.

    Administrators and leaders can modify the list of environments. For details, see Environments.

    Create conditions for setting environments during the build run, based on build parameter values

    In the table, add a row for each environment that you want to assign dynamically.

    In each row, specify:

    Parameter name + value ==> Environment

    Select the build parameter name from the list of build parameters available for this step.

    Note:
    If you use the Matrix plugin on Jenkins, the pipeline displays child steps, generated during the build run. Each one represents a set of build parameter values.

    Configure conditional environments on the parent step. These are applied to the generated child steps. You cannot modify a child's configuration.

  4. In the Custom Build Report tab, enter a URL or a URL template that ALM Octane can use to create a link to reports generated for your builds.

    If you include {JobName} and {BuildNum} placeholders in the template, ALM Octane replaces them in the URL with the relevant job name and build number when creating the link.

    For example: 

    http://myServer:myPort/jenkins/job/{JobName}/{BuildNum}/reports/logs/jenkins-test-reports.html

    ALM Octane adds the links to the test runs that are created as part of this pipeline step and to the build that is the result of this step.

Back to top

Filter pipeline steps

Filter a pipeline by label or job name, to display only pipeline steps with a certain label and/or steps with a specific string in their name.

If you set up a filter on a specific pipeline, that filter is used again the next time you view the pipeline.

Open the pipeline by clicking its ID and select the Topology tab.

In the pipeline flat view:

  • Filter by label. Select from the labels on the right to specify the type of pipeline steps you want to see.
  • Filter by job name. Type in the context search box to see only steps whose name contains the specified string.

If you filter by label and by job name, the pipeline displays only steps that match both filters.

Back to top

Delete a pipeline

DevOps admin permissions are required.

In the Pipelines > Pipelines page, click X in the toolbar on the left. The selected pipeline is deleted (after confirmation).

If you delete a pipeline: 

  • All of the pipeline's labels and configuration information are lost.

  • The pipeline runs and the automated test runs from this pipeline are deleted. The automated test entities remain.

Back to top

Next steps: