Unified Language User Guides
iCR User Guide 4.2
iCR User Guide 4.2
  • Table of contents
    • Introduction
    • Overview
    • Authorizing Access to Your Source Code
      • Authenticating GitHub Access with a Cloud-Based VCS Repository Service
        • Authenticating GitHub Access with a Private VCS Repository
      • Authenticating GitLab Access with a Cloud-Based VCS Repository
        • Authenticating GitLab Access with a Private VCS Repository
      • Authenticating Bitbucket Access with a Cloud-Based VCS Repository
    • Using the Navigator
      • Connecting to the Navigator
      • Setting your User Password
      • The Navigator top banner
      • The Analysis Engine status
      • Selecting Your Source Code
        • Using a cloud-based VCS
        • Selecting your branch
        • Using a private VCS
        • Using a local project
        • Limiting the files to be analyzed
      • Integrating with your bug tracking system
        • Integrating with Jira - Define Your Project
        • Integrating with Jira - Authorizing Access for iCR
        • Integrating with Jira - Connecting with iCR
    • Using the Analysis Engine
      • Initiating an analysis
      • Monitoring the analysis
      • Interrupting the analysis
    • Reviewing your results
    • When you are complete
    • Integrating iCR Into Your CI/CD Workflows
      • Jenkins Workflow
        • Installing the plugin
        • Configuring the plugin
          • Creating a Personal Access Token
          • Copying Your Repository's URL
        • Viewing the Results
      • GitHub Actions Workflow
        • Workflow Overview
        • Preparing and Registering the Docker Image
        • Adding a Workflow to a Repository
        • Preparing the GitHub Workflow
          • Environment Variables
          • User Supplied Secrets
          • Setting the User Defined Secrets Values
        • Executing the Workflow
      • GitLab Workflow
        • Workflow Overview
        • Preparing the Docker Image
        • Configuring the GitLab Script variables
          • Environment Variables
          • User Supplied Variables
          • Creating a Personal Access Token
          • Setting the User Defined Variable Values
        • Executing the Workflow
      • Multiple Workflows
    • Appendix – Language Specific Fixer Lists
    • Appendix – Example Summary Report
    • Appendix - Sample Bug Listing
    • Appendix - Getting a BitBucket App Password for JENKINS
Powered by GitBook
On this page
  1. Table of contents
  2. Integrating iCR Into Your CI/CD Workflows
  3. Jenkins Workflow

Configuring the plugin

PreviousInstalling the pluginNextCreating a Personal Access Token

Last updated 10 months ago

Once the iCR build step has been added to the workflow, it needs to be configured with the information necessary to both authenticate the plugin’s access to the User’s repositories, and then to select the appropriate repository and branch for analysis. There are 10 items that need to be specified to fully configure the Jenkins plugin. These are shown in the iCR plugin window shown below:

They are:

  1. iCR Server Address (URL) The iCR server is configured with a known IP address. Per the section , the URL for the server is the IP address followed by the port 3001. E.g. https://<iCR_IP_Address>:3001.

  2. iCR User Name The Navigator requires the workflow to login into iCR using a specific iCR user name. This field is a string that specifies the User Name.

  3. CI/CD Access Token In concert with the iCR User Name, that User needs to be authenticated before it can access iCR functionality. So that passwords are not exchanged between the plugin and iCR, an encrypted token is used. The CI/CD Access Token is created by the User within the iCR Navigator. You can see how that is done in the User Guide section titled .

  4. Repository Host Name The name of the Version Control System (VCS) where the targeted repository is being managed. Currently, GitHub, GitLab and BitBucket are supported. In the case where local VCS servers such as GitHub Enterprise or GitLab Enterprise are deployed, those hosts are also displayed. In the example above we have used the cloud-based GitHub.

  5. Personal Access Token / App Password The plugin is invoking iCR on behalf of a valid user and their repositories. In a fashion similar to how OAuth works, GitHub, GitLab or BitBucket allow an authorized app to access a User’s repositories using a secure Personal Access Token created by the specific service. How to get that token will be described in . If the token/password is changed on the iCR server, it can be updated on the plugin by clicking on the Change Password button.

  6. Repository Clone Link There are usually multiple possible repositories eligible for analysis via the plugin. The workflow creator needs to specify which of the User’s repositories is to be analyzed. How to find and copy that URL will be described in .

  7. Branch Name With a repository selected, the specific branch within that repository must be named. Simply enter the text string for the branch name here.

  8. Intended Language to run iCR with Since multiple languages may be present in an repository, this field defines which source code language is to be analyzed.

  9. Language Version (if applicable) With some languages that are analyzed by iCR, such as Python, the specific version of the language or related libraries needs to be specified in order for iCR to work correctly for the target source. The version is selected from the available options in the pull-down menu.

  10. Notification email Address When the analysis triggered by this plugin completes, the User, upon whose behalf this analysis was performed, can receive an email notification letting them know it is complete. That User’s email can be entered here. An address MUST be provided to allow a way for iCR to notify the User in the event of either success of some kind of failure.

Note: Clicking on the icon for each entry will pop up a brief help text to guide you with the contents of that field.

Connecting to the Navigator
The Navigator top banner
Creating a Personal Access Token
Copying Your Repository's URL