Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Integrating your MettleCI Workbench with Azure DevOps will enable you to…

  • Use an Azure DevOps Git repository to store your DataStage project artefacts,

  • Link every DataStage Git commit to one or more Azure DevOps work items directly within the Workbench user interface, and

  • Use the MettleCI build and deployment toolkit to define Azure DevOps Continuous Integration and Deployment pipelines

  • Expose the results of Compliance testing, Unit testing, and End-to-End testing as results in one or more Azure Test Plans.

Table of Contents
indent0

Granting Azure DevOps Git repository access to Workbench

  1. Log onto the server hosting MettleCI Workbench and navigate to /opt/dm/mci/

  2. Open the public Git SSH key workbench_rsa.pub in your favourite text edit and copy its contents:

    Image RemovedImage Added

    This file is automatically generated and configured during MettleCI workbench installation.

  3. Next we’ll add the public key to Azure DevOps Services/TFS. Open your security settings by browsing to the web portal and selecting your avatar in the upper right of the user interface. Select Security in the menu that appears.

    Accessing User Profile in Azure DevOps Services

  4. Select SSH public keys, and then select + New Key.

    Accessing Security Configuration in Azure DevOps Services

  5. Copy the contents of the public key (for example, id_rsa.pub) that you generated into the Public Key Data field.

    Important: Avoid adding whitespace or new lines into the Key Data field, as they can cause Azure DevOps Services to use an invalid public key. When pasting in the key, a newline often is added at the end. Be sure to remove this newline if it occurs.

    Configuring Public Key in Azure DevOps Services

  6. Give the key a useful description (this description will be displayed on the SSH public keys page for your profile) so that you can remember it later. Select Save to store the public key. Once saved, you cannot change the key. You can delete the key or create a new entry for another key. There are no restrictions on how many keys you can add to your user profile.


Register Workbench as an OAuth 2.0 Azure Application

Prerequisite

In order for MettleCI Workbench and Azure DevOps to communicate, work bench needs to be accessible using an HTTPS based URL. This URL does not have to be accessible outside your corporate network.

Please refer to the MettleCI FAQ for configuring Workbench to use HTTPS

  1. Follow Microsoft’s instructions for registering a new app with Azure. Use the following settings:

  2. Note down the “Application (client) ID” and Directory (tenant) ID for later use:

  3. Navigate to the “Authentication” section of your application registration and add a Redirect URI for workbench using the https://<workbench url>:8443/api/auth/delegated/azure_access and click save

    If your organization has installed multiple MettleCI Workbench application, you can add them all to the same Azure App Registration by adding multiple Redirect URIs.

  4. Navigate to the “Certificates & Secrets” section of your application registration and add a “New Client Secret”, select an expiry (Never is convenient) and note down the generated secret for later use:

  5. Navigate to the “API permissions” section of your application registration, click “Add a permission” and select “Azure DevOps” → “user_impersonatation”:

  6. If you are starting Workbench for the first time, you will be taken through a setup wizard. You can configure your Azure work item lookup in the setup wizard.
    Alternatively, log into your MettleCI Workbench server an open /opt/dm/mci/config.yml in your favorite editor and follow the next two steps.

  7. Change the issueManagement property to azure, add an azure section as shown below and replace the <tags> with the values noted in the previous steps:

    Code Block
    languageyaml
    issueManagement: azure
    azure:
       tenant: <your Directory (tenant) ID>
       clientId: <your Application (client) ID>
       clientSecret: "<your client secret>"
  8. Restart the workbench service

    Code Block
    languagebash
    sudo service dm-mettleci-workbench restart
  9. Azure Work Items will now be available from the the Issues drop down during Check-in: