Page tree

Unsupported content

 

This version of the documentation is no longer supported. However, the documentation is available for your convenience. You will not be able to leave comments.

BMC Release Process Management enables you to integrate with other external systems, such as BMC Middleware Automation, JIRA, Rally, and others

By using the SSH service to ensure the secure connection between the BMC Release Process Management and the external system servers, you can run automation scripts  and to perform various actions in these external systems.

To create an integration server

  1. From System > Integrations, click Create new Integration at the right side of your screen.
  2. Specify the following details, and then click Add Server:
    • Server Type: From the list, select General.
    • Server Name: Specify a unique name to identify the custom integration server.
    • Ip: Specify the IP address of the the custom integration server where the web services are enabled.
      This field is optional. BMC Release Process Management uses data from the Server URL field to integrate with an external system.
    • Server URL: Specify a valid HTTP or HTTPS address of the the custom integration server.
      BMC Release Process Management uses this address to connect to an external system.. Optionally, you can specify the HTTPS port as https://hostName:portNumber
    • Port: Specify the port number of the server where the web services are enabled.

      If you specified the server port in the Server URL field, leave the Port field empty.

    • Username: Specify the user name for connecting with an external system..

    • Password: Specify the password for connecting with an external system..
    • Details: Specify the various details specific for your external system. in the YAML format.

Automation scripts for other integrations

BMC provides default scripts in the General category that you can import and start using directly. You might need to rewrite certain scripts to suit your needs. For more information about importing scripts or creating new scripts, see the following topics:

The following table lists default scripts available for other integrations and for performing general functions:

Note

The automation scripts provided in the General category are available with experimental support.

Automation scripts

Script name

Description

apache_restart.rb

Restarts an Apache server

Inputs required to create a step:

  • host_name: IP address or DNS name of the remote host
  • user: User name to connect with the remote host
  • password: Password to connect with the remote host

ara_install.rb

Installs configuration on a server with the specified server profile, configuration XML, and token set XML. You can use this script to integrate with BMC Middleware Automation.

Note: The automation fails if the runDeliver command fails.

Inputs required to create a step:

  • server_profile: Name of the server profile
  • build_path: Path to the staging director
  • application_config: Complete path of the XML configuration of the application
  • ara_server: Placeholder field; not functional

ara_preview_install.rb

Reproduces the installed configuration on a server with the specified server profile, configuration XML, and token set XML. You can use this script to integrate with BMC Middleware Automation.

Note: The automation fails if the runDeliver command fails.

Inputs required to create a step:

  • server_profile: Name of the server profile
  • build_path: Path to the staging director
  • application_config: Complete path of the XML configuration of the application

ara_snapshot.rb

Performs a snapshot of the specified server's configuration on a server profile. You can use this script to integrate with BMC Middleware Automation.

Inputs required to create a step:

  • server_profile: Name of the server profile
  • build_path: Placeholder field; not functional

direct_execute.rb

Runs the specified command on the local command line and tests for success with the specified term

Inputs required to create a step:

  • command: Command that you want to execute
  • success: Term or phrase that indicates success

file_exists.rb

Checks whether the specified file is present in a directory on the remote host. If the file is not present, the automation fails. This automation script is for Linux platforms only.

Inputs required to create a step:

  • hosts: Host name (single) where you want to check for the file
  • user: User name required to connect to the host
  • password: Password required to connect to the host
  • directory: Directory path in which to look for the file
  • sudo: Specifies whether to use super user mode: Yes or No
  • file_to_find: Specifies the name of the file or a wildcard entry to find the file

jira_add_comment_to_issue.rb

Adds a comment to an existing JIRA issue on execution. You can use this script to integrate with JIRA.

Inputs required to create a step:

  • issue_key: Identifier of the JIRA issue (for example, TST-3022)
  • comment_body: Comment that will be added to the JIRA issue.

jira_add_request_issue.rb

Creates a new JIRA issue based on the request in which the step is running. The script populates the following fields in JIRA task with the matching values in the self-service request:

  • project is populated with the self-service request project key
  • description is populated with the self-service request description
  • summary  is populated with the self-service request name
  • type is set to 3, which stands for Task
  • duedate is populated with the current time

 The resulting comment in JIRA looks like the following example:

Comment from Request #<SS request number>
Step: <step_id> - <step_name> 
Description: 
<comment_body>
<step_description>

Input required to create a step:

  • comment_body: The custom text that is included into the comment for the new JIRA issue.

jira_qet_issue_status.rb

Returns the status of the issues (such as Opened, Closed, or Resolved) and writes them to the output file in the following format: issueID status:statusString. You can use this script to integrate with JIRA. 

Inputs required to create a step:

  • login_name: Logon ID required to connect to JIRA
  • login_password: Password required to connect to JIRA
  • jira_address: Fully qualified URL of the server where JIRA is running
  • issue_key: ID of the issue

jira_progress_workflow_for_issue.rb

Changes the status of an issue and updates its workflow stage by using the specified transition ID. You can use this script to integrate with JIRA. 

Inputs required to create a step:

  • login_name: Logon ID required to connect to JIRA
  • login_password: Password required to connect to JIRA
  • jira_address: Fully qualified URL of the server where JIRA is running
  • issue_key: ID of the issue
  • workflow_transition_id: Transition ID applicable for the issue workflow

jira_set_issue_property.rb

Updates the specified field in a JIRA issue. You can use this script to integrate with JIRA. 

Inputs required to create a step:

  • login_name: Logon ID required to connect to JIRA
  • login_password: Password required to connect to JIRA
  • jira_address: Fully qualified URL of the server where JIRA is running
  • issue_key: ID of the issue
  • issue_field_name: Field name to change in JIRA
  • issue_field_value: Value of the field

launch_request_or_template.rb

Creates a new request from a template or the specified information via a REST API call. Before using the script you might need to replace the sample token value with the value from your User Profile in BMC Release Process Management.

Inputs required to create a step:

  • request_template: Name of the request template that you want to clone and then start. Leave this field blank if you want to start a specific request.
  • request_id: ID of that request that you want to start. Leave this field blank if you want to create a request from the specified request template.
  • target_environment: Name of the environment on which you want to start the request
  • target_stage: Name of stage in which you want to create the plan (or lifecycle).
    Automation relies on the request_lifecycle property that must be set.

ssh_execute.rb

Executes the specified command on a remote server

tar_expand.rb

This script is for reference purposes. If you want to use it, you must rewrite it

web get_test.rb

Tests a remote web page for content

ssh_multi_server_execute.rb

Executes a command on all the servers specified in a step

Note: Remove the property dependency.

ssh_multi_server_upload.rb

Pushes a file to all servers specified in a step

Note: Remove the property dependency.