Skip to content

services.md

Padraic Edwards edited this page Jul 29, 2022 · 7 revisions

Services

Services form the backbone of your template, providing the integrations that you want to use in your toolchain.

Here is a current list of the services available to be used in your template.

Artifactory

With the Artifactory tool integration, pipelines in your toolchain can publish and retrieve versioned apps and their dependencies by using central repositories that are accessible from other environments.

Before you create this tool integration, you must have an Artifactory server set up and configured.

This tool integration will contain the following information:

  • A URL for your Artifactory server that can be opened from the browser.
  • The credentials for Maven or npm to connect to your Artifactory server. For an npm registry, you must provide an email address and an Artifactory authentication token. For a Maven repository, you must provide your Artifactory user ID and password.
  • The connection URLs that are used by the build tools for your npm registry or Maven repository.

To use the integration information in a pipeline, see Configuring an Artifactory npm build job in your pipeline or Configuring an Artifactory Maven build job in your pipeline.

id:

artifactory

properties:

name: name

type: string

description: Type a name for this specific tool integration; for example: my-artifactory.


name: dashboard_url

type: string

description: Type the URL that you want to navigate to when you click the Artifactory integration tile.


name: type

type: string

description: Choose the type of repository for your Artifactory integration.


name: user_id

type: string

description: Type the user ID or email for your Artifactory repository.


name: token

type: password

description: Type the password or authentication token for your Artifactory repository.


name: release_url

type: string

description: Type the URL for your Artifactory release repository.


name: mirror_url

type: string

description: Type the URL for your Artifactory virtual repository, which is a repository that can see your private repositories and a cache of the public repositories.


name: snapshot_url

type: string

description: Type the URL for your Artifactory snapshot repository.


Other tool

Create a custom integration with any tool that your team uses, and make the integration available to your team and to the other tools in the toolchain.

id:

customtool

properties:

name: type

type: string

description: Type the name of the tool that you are integrating; for example: Delivery Pipeline.


name: lifecyclePhase

type: string

description: Select the lifecycle phase of the IBM® IBM Cloud® Garage Method that is the most closely associated with this tool.


name: imageUrl

type: string

description: Type the URL of the icon to show on your tool integration's card.


name: documentationUrl

type: string

description: Type the URL for your tool's documentation.


name: name

type: string

description: Type a name for this specific tool integration; for example: My Build and Deploy Pipeline.


name: dashboard_url

type: string

description: Type the URL that you want to navigate to when you click the tool integration card.


name: description

type: string

description: Type a description for the tool instance.


name: additional-properties

type: string

description: (Advanced) Type any information that is needed to integrate with other tools in your toolchain.


DevOps Insights

IBM Cloud DevOps Insights aggregates data from multiple tools and provides insights to improve the agility, reliability, and security of your applications and your DevOps process. Use its built-in dashboards and data reporting services to learn where you most need to improve your developer productivity, code quality, and delivery cycle times.

id:

draservicebroker

properties:

name: is_developer_insights_enabled

type: boolean

description: Developer Insights provides insights about your code, issues, and developers.


name: type

type: string

description: This default option provides deployment insights. For deployment, developer, and team insights, select Advanced.


Application Security on Cloud

To leverage the IBM Application Security on Cloud service for your toolchain, you must add the service to the toolchain’s organization in IBM Cloud. Provide the broker instance with a name and a URL to your Application Security on Cloud service in IBM Cloud. The IBM Security Static Analyzer job in the DevOps pipeline provides additional integration with IBM Application Security on Cloud.

id:

appscan

properties:

name: name

type: string

description: Type a name for your instance of Application Security on Cloud.


name: description

type: string

description: Describe the purpose of your instance of Application Security on Cloud.


name: dashboard_url

type: string

description: Type the URL of the instance of Application Security on Cloud that you want to open when the card is clicked.


GitHub Enterprise

IBM Cloud Dedicated for GitHub Enterprise makes social coding possible for large-scale enterprise software development teams that use IBM Cloud Dedicated.

id:

github

properties:

name: repo_name

type: string

description: undefined


name: repo_url

type: string

description: Type the URL of the repository that you are forking, cloning, or linking to.


name: type

type: string

description: undefined


name: private_repo

type: Boolean

description: Select this check box to make this repository private.


name: has_issues

type: Boolean

description: Select this check box to enable GitHub Issues for lightweight issue tracking.


name: enable_traceability

type: Boolean

description: Select this check box to track the deployment of code changes by creating tags, labels and comments on commits, pull requests, and referenced issues.


GitHub

Store your source code in a new or existing repository on GitHub.com and engage in social coding through wikis, issue tracking, and pull requests.

id:

githubpublic

properties:

name: repo_name

type: string

description: undefined


name: repo_url

type: string

description: Type the URL of the repository that you are forking, cloning, or linking to.


name: type

type: string

description: undefined


name: has_issues

type: Boolean

description: Select this check box to enable GitHub Issues for lightweight issue tracking.


name: enable_traceability

type: Boolean

description: Select this check box to track the deployment of code changes by creating tags, labels and comments on commits, pull requests, and referenced issues.


Whitewater GitHub Enterprise

Whitewater GitHub Enterprise makes social coding possible for teams at IBM.

id:

github_integrated

properties:

name: repo_name

type: string

description: undefined


name: repo_url

type: string

description: Type the URL of the repository that you are forking, cloning, or linking to.


name: type

type: string

description: undefined


name: private_repo

type: Boolean

description: Select this check box to make this repository private.


name: has_issues

type: Boolean

description: Select this check box to enable GitHub Issues for lightweight issue tracking.


name: enable_traceability

type: Boolean

description: Select this check box to track the deployment of code changes by creating tags, labels and comments on commits, pull requests, and referenced issues.


Git Repos and Issue Tracking

Git repos and issue tracking hosted by IBM and built on GitLab Community Edition.

id:

hostedgit

properties:

name: repo_name

type: string

description: undefined


name: repo_url

type: string

description: Type the URL of the repository that you are forking, cloning, or linking to.


name: type

type: string

description: undefined


name: private_repo

type: Boolean

description: Select this check box to make this repository private.


name: has_issues

type: Boolean

description: Select this check box to enable Issues for lightweight issue tracking.


name: enable_traceability

type: Boolean

description: Select this check box to track the deployment of code changes by creating tags, labels and comments on commits, pull requests, and referenced issues.


Jenkins

With the Jenkins tool integration, you can send your Jenkins job notifications to other tools in your toolchain, such as Slack and PagerDuty. To trace code in deployments, you can add deployment messages to your Git commits and your related Git or JIRA issues. You can also view your deployments on the Toolchain Connections page. You can feed test results to DevOps Insights, add automated quality gates, and track your deployment risk.

Before you create an integration with Jenkins, you must have a Jenkins server.

For instructions, see Configuring Jenkins.

id:

jenkins

properties:

name: name

type: string

description: Type the name that you want to display on the Jenkins card in your toolchain.


name: dashboard_url

type: string

description: Type the URL of the Jenkins server that you want to open when the Jenkins card in your toolchain is clicked.


name: webhook_url

type: string

description: Paste this webhook into the URL field of the Notification Plugin on your Jenkins server.


JIRA

The JIRA tool integration updates your project's issues whenever Jenkins or Delivery Pipeline runs a deployment. When this tool integration is part of a toolchain that contains DevOps Insights, DevOps Insights can mine JIRA issues to provide perspectives on your project's quality. In order for the JIRA tool integration to track your issues, you must use JIRA Smart Commits in your commit messages.

For detailed instructions, see Configuring JIRA in the IBM Cloud Docs.

id:

jira

properties:

name: type

type: string

description: undefined


name: project_key

type: string

description: undefined


name: project_name

type: string

description: undefined


name: project_admin

type: string

description: undefined


name: api_url

type: string

description: Type the base API URL for your JIRA instance. To find that value, from the header of your JIRA instance, click the Administration icon, which looks like a gear, and then click System.


name: username

type: string

description: Your user name is required only if you are connecting to a private JIRA instance or if you are connecting to a public instance and want to receive traceability information. Otherwise, you do not need to enter your user name.


name: password

type: password

description: Your password is required only if you are connecting to a private JIRA instance or if you are connecting to a public instance and want to receive traceability information. Otherwise, you do not need to enter your password.


name: enable_traceability

type: Boolean

description: Select this check box to track the deployment of code changes by creating tags, labels and comments on commits, pull requests, and referenced issues.


Nexus

With the Nexus Repository OSS tool integration, pipelines in your toolchain can publish and retrieve versioned apps and their dependencies by using central repositories that are accessible from other environments.

Before you create this tool integration, you must have a Nexus server set up and configured.

This tool integration will contain the following information:

  • A URL for your Nexus server that can be opened from the browser.
  • The credentials for Maven or npm to connect to your Nexus server. For an npm registry, you must provide an email address and a Nexus authentication token. For a Maven repository, you must provide your Nexus user ID and password.
  • The connection URLs that are used by the build tools for your npm registry or Maven repository.

To use the integration information in a pipeline, see Configuring a Nexus npm build job in your pipeline or Configuring a Nexus Maven build job in your pipeline in the IBM Cloud Docs.

id:

nexus

properties:

name: name

type: string

description: Type a name for this specific tool integration; for example: my-nexus.


name: dashboard_url

type: string

description: Type the URL that you want to navigate to when the Nexus integration card is clicked.


name: type

type: string

description: Choose the type of repository for your Nexus integration.


name: user_id

type: string

description: Type the User ID or email for your Nexus repository.


name: token

type: password

description: Type the password or authentication token for your Nexus repository.


name: release_url

type: string

description: Type the URL for your Nexus release repository.


name: mirror_url

type: string

description: Type the URL for your Nexus virtual repository, which is a repository that can see your private repositories and a cache of the public repositories.


name: snapshot_url

type: string

description: Type the URL for your Nexus snapshot repository.


Node-RED

With the Node-RED brwoser-based flow editor. you can wire together hardware devices, APIs, and online services in new and interesting ways.

id:

nodered

properties:

name: noderedInstanceUri

type: string

description: Type the location of the Node-RED server that you want to add to the toolchain.


PagerDuty

PagerDuty sends alerts from your tools. If you don’t have a PagerDuty account, create one now.

Note: The PagerDuty integration feature is not created by, affiliated with, or supported by PagerDuty, Inc.

id:

pagerduty

properties:

name: api_key

type: string

description: Type your API access key. You can find or create this key on the Configuration/API Access section of the PagerDuty website. See the PagerDuty Support article on how to get API Key.


name: service_name

type: string

description: Type the name of the PagerDuty service to post alerts to. If you want alerts to be posted to a new service, type a new name. PagerDuty will create the service.


name: user_email

type: string

description: Type the email address of the user to contact when an alert is posted. If you want alerts to be sent to a new email address, type the address and PagerDuty will create a user.


name: user_phone

type: string

description: Type the phone number of the user to contact when an alert is posted. Include the national code followed by a space and a 10-digit number; for example: +1 1234567890. If you omit the national code, it is set to +1 by default.


Delivery Pipeline

The Delivery Pipeline is part of the IBM® IBM Cloud® Continuous Delivery service. It automates continuous deployment. See also the Pipeline YAML Format where the pipeline file is specified like so:

    service_id: pipeline
    ui-pipeline: true
    parameters:
      configuration:
        content:
          $text: pipeline.yml

id:

pipeline

properties:

name: name

type: string

description: undefined


name: ui_pipeline

type: Boolean

description: When this check box is selected, the applications that this pipeline deploys are shown in the View app menu on the toolchain page. This setting is best for UI apps that can be accessed from a browser.


Rational Team Concert

Teams use IBMRational Team Concert™ to integrate development tasks, including iteration planning, change management, defect tracking, source control, build automation, and reporting.

id:

rationalteamconcert

properties:

name: project_name

type: string

description: Type the name of the Rational Team Concert project to add to the toolchain.


name: process_template

type: string

description: Select the Rational Team Concert process template to use to create the project.


name: project_summary

type: string

description: Briefly describe the purpose of the Rational Team Concert project.


name: project_description

type: string

description: Type a full description of the Rational Team Concert project.


name: jazz_username

type: string

description: Type your user name for Rational Team Concert (Jazz).


name: type

type: string

description: undefined


IBM Runbook Automation

Use the IBM Runbook Automation service to build and execute runbooks that can help IT staff to solve common operational problems. IBM Runbooks Automation can automate procedures that do not require human interaction, thereby increasing the efficiency of IT operations processes. Operators can spend more time innovating and are freed from performing time-consuming manual tasks.

id:

runbookautomation

Sauce Labs

With Sauce Labs, you can run Selenium integration or acceptance tests automatically and generate test reports from your pipeline. If you don’t have a Sauce Labs account, create one now.

id:

saucelabs

properties:

name: username

type: string

description: Type the user name for your Sauce Labs account.


name: key

type: password

description: Type your Sauce Labs access key. You can find your access key near the lower-left corner of your Sauce Labs account page.


Slack

With Slack, you can collaborate with your team and receive notifications from your tools. If you don't have a Slack account, create one now.

Integration instructions: In order for a Slack channel to receive notifications from your tools, you need a Slack webhook URL. To get a webhook URL, see the Incoming Webhooks section of the Slack API website. If you have been using an API key, update your configuration to use a webhook instead.

Note: The Slack integration feature is not created by, affiliated with, or supported by Slack Technologies, Inc. The content that you post to public Slack channels is visible to all users on your team.

id:

slack

properties:

name: api_token

type: string

description: Type the Slack webhook URL, which is generated by Slack as an incoming webhook. You can create or find your webhook in the Incoming Webhooks section of the Slack API website. If you have been using an API key, update your configuration to use a webhook instead.


name: channel_name

type: string

description: If you use a webhook, you must specify an existing Slack channel to post notifications to.


name: team_url

type: string

description: If you use a webhook, you must specify your team name, which is the word or phrase before .slack.com in your team URL. For example, if your team URL is https://team.slack.com, the team name is team.


SonarQube

By using SonarQube, you can be sure that you are continuously delivering quality code.

id:

sonarqube

properties:

name: name

type: string

description: Type a name for your SonarQube integration.


name: dashboard_url

type: string

description: Type the URL of the SonarQube instance that you want to open when you click the SonarQube card in your toolchain.


name: user_login

type: string

description: If you are using an authentication token, leave this field empty.


name: user_password

type: password

description: undefined


Timeline Analytics

Get a timeline view of DevOps lifecycle events.

id:

timeline

UrbanCode Deploy

View deployment trends across applications, teams, and environments. Find bottlenecks in the delivery pipeline and which areas are more efficient. IBM UrbanCode Deploys is configured on the Settings tab in DevOps Insights. For more information, see Showing data from IBM UrbanCode Deploy servers in the IBM Cloud Docs.

id:

urbancodedeploy

Clone this wiki locally