SEI Job Reporter Plugin

Overview

What is the objective

The SEI Job Reporter Plugin, monitors all job runs. As soon as a job run completes it sends the info about job run and failed logs back to SEI SaaS. It does not do any periodic push. It gathers info about job stages and steps. If a job run fails and does not have stages the plugin captures the failed job run logs, else if it has stages and no steps, the plugin captures logs for the failed steps, else if it has steps, the plugin captures logs for failed steps. It does not capture the logs for any successful job or stage or step. This plugin supports the failure triage feature.

Dependency NameDirect Dependency/Indirect DependencyVersionURL

Favorite

Indirect

2.3.2

Variant

Indirect

1.3

REST Implementation for Blue Ocean

Direct

1.23.2

Common API for Blue Ocean

Indirect

1.23.2

REST API for Blue Ocean

Indirect

1.23.2

Design Language

Indirect

1.23.2

Blue Ocean Core JS

Indirect

1.23.2

Web for Blue Ocean

Indirect

1.23.2

JWT for Blue Ocean

Indirect

1.23.2

Pipeline implementation for Blue Ocean

Direct

1.23.2

Pipeline SCM API for Blue Ocean

Indirect

1.23.2

HTML Publisher

Indirect

1.23

Dashboard for Blue Ocean

Direct

1.23.2

Pub-Sub "light" Bus

Indirect

1.13

Configuration as Code

Requirements

  • Jenkins version should be 2.426.3 or higher.

  • Use the plugin version 1.0.33 or higher of the SEI Job Reporter Jenkins plugin.

Step-by-step instructions

To configure the SEI Job Reporter plugin in Jenkins using Configuration as Code (JCasC), follow the instructions below:

  • Locate the jenkins.yaml configuration file and insert the following configuration under the unclassified section of the jenkins.yaml file:

propelo-job-reporter:
    levelOpsApiKey: "<SEI_API_KEY>"
    levelOpsPluginPath: "<PLUGIN_PATH>"
    trustAllCertificates: "true" or "false"
    jenkinsInstanceName: "<INSTANCE_NAME>"
    jenkinsUserName: "<USERNAME>" # For Blue Ocean Plugin
    jenkinsUserToken: "<USER_TOKEN>" # For Blue Ocean Plugin
    applicationType: <APPLICATION_TYPE> # eg. SEI_LEGACY
    jenkinsBaseUrl: <BASE_URL_OF_INSTANCE> # eg. https://jenkins-instance.harness.io

Here's an example jenkins.yaml file

jenkins:
  nodeMonitors:
  - "architecture"
  - "clock"
  - diskSpace:
      freeSpaceThreshold: "1GiB"
      freeSpaceWarningThreshold: "2GiB"
  - "swapSpace"
  - tmpSpace:
      freeSpaceThreshold: "1GiB"
      freeSpaceWarningThreshold: "2GiB"
  - "responseTime"
  numExecutors: 2
globalCredentialsConfiguration:
appearance:
security:
unclassified:
  mailer:
  propelo-job-reporter:
    levelOpsApiKey: "<SEI_API_KEY>"
    levelOpsPluginPath: "<PLUGIN_PATH>"
    trustAllCertificates: "true" or "false"
    jenkinsInstanceName: "<INSTANCE_NAME>"
    jenkinsUserName: "<USERNAME>" # For Blue Ocean Plugin <OPTIONAL>
    jenkinsUserToken: "<USER_TOKEN>" # For Blue Ocean Plugin <OPTIONAL>
    applicationType: <APPLICATION_TYPE> # eg. SEI_LEGACY
    jenkinsBaseUrl: <BASE_URL_OF_INSTANCE> # eg. https://jenkins-instance.harness.io
tool:
  git:
    installations:
    - home: "git"
      name: "Default"
  mavenGlobalConfig:
    globalSettingsProvider: "standard"
    settingsProvider: "standard"
  • Specify the applicationType based on the environment:

    • US: SEI_LEGACY

    • EU: SEI_LEGACY_EU

Note that the SEI Job Reporter plugin installation is not supported directly by JCasC itself. For more details, refer to the official Jenkins Configuration as Code documentation.

By following these steps, you can properly configure the SEI Job Reporter plugin using Jenkins Configuration as Code. Make sure to replace placeholder values like <SEI_API_KEY>, <PLUGIN_PATH>, <INSTANCE_NAME>, etc with actual data relevant to your Jenkins environment.

Last updated