Page tree

BMC Release Process Management (RPM) enables you to integrate with other external systems, such as Microsoft Visual Studio Team Services and Jenkins. 

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

See this video (1:40) about how you can continuously deploy an application using RPM and Microsoft Visual Studio Team Services integration.

This integration is not available out-of-the-box in RPM, but available as a custom integration.

https://youtu.be/jw7Mmu1SI8g

See this video (1:41) about how you can continuously deploy an application using RPM and Jenkins integration.

This integration is not available out-of-the-box in RPM, but available as a custom integration.

 https://youtu.be/3St0Bwly7v0

To create an integration server

  1. Go to System > Integrations.
  2. On the right pane, click Create new Integration.
  3. In the Server Type list, select General.
  4. In the Server Name box, specify a unique name to identify the custom integration server.
  5. In the Ip box, specify the IP address of the custom integration server where the web services are enabled.
    This box is optional. BMC Release Process Management uses data from the Server URL box to integrate with an external system.
  6. In the  Server URL  box, specify a valid HTTP or HTTPS address of 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.
  7. In the  Port  box, specify the port number of the server where the web services are enabled.

    Note

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

  8. In the Username box, specify the user name for connecting to an external system.

  9. In the Password box, specify the password for connecting to an external system.
  10. In theDetails box, specify the following details specific for the external system in the YAML format.

  11. Click Add Server.

Automation scripts for other integrations

BMC provides default automation 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 the default local ruby scripts for other integrations and performing general functions.

Note

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

Local ruby 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 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 in 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 example of the resulting comment in JIRA:

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: Login 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: Login 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: Login 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.

 

 

3 Comments

  1.  

  2.  

    1.