
Jenkins
Configuration Management- Overview
- Setup
- Data & mappings
- Operations & API
- Changelog
A Brinqa connector for integrating with Jenkins CI/CD servers. Synchronizes Jenkins jobs (with build status, health, and XML configuration) and users into the Brinqa platform.
Data retrieved from Jenkins
| Connector Object | Required | Maps to Data Model |
|---|---|---|
| Job | Yes | Code Repository |
| People | Yes | Person |
Model relationships
For detailed steps on how to view the data retrieved from Jenkins in the Brinqa Platform, see How to view your data.
Connection settings
When setting up a data integration, select Jenkins from the Connector dropdown and provide the following:
| Setting | Required | Default | Description |
|---|---|---|---|
| Jenkins URL | Yes | — | Jenkins API URL |
| User name | Yes | — | Jenkins user name |
| API token | Yes | — | Jenkins API token |
| Page size | No | 100 | Maximum number of records to get per API request |
| Maximum retries | No | 5 | The maximum number of retry attempts before giving up a request |
Authentication
The connector uses Basic Authentication with a Jenkins username and API token.
Endpoint
| Method | URL |
|---|---|
GET | {baseUrl}/api/json |
Request Headers
| Header | Value |
|---|---|
Content-Type | application/json |
Authorization | Basic base64({username}:{apiToken}) |
Sample Response
The connectivity test issues GET /api/json against the Jenkins root. A successful response looks like:
{
"_class": "hudson.model.Hudson",
"mode": "NORMAL",
"nodeDescription": "the master Jenkins node",
"nodeName": "",
"numExecutors": 2,
"jobs": [
{
"_class": "hudson.model.FreeStyleProject",
"name": "example-job",
"url": "https://jenkins.example.com/job/example-job/",
"color": "blue"
}
]
}
Response Fields
| Field | Description |
|---|---|
_class | Jenkins root object class |
mode | Node scheduling mode |
nodeDescription | Description of the master node |
numExecutors | Number of build executors |
jobs | Array of jobs discovered at the root (each with _class, name, url, color) |
Usage
All API requests include the Basic Authorization header:
Authorization: Basic base64(username:apiToken)
The API token can be generated from Jenkins at User → Configure → API Token.
How to obtain Jenkins credentials
Obtain the required credentials (url, userName, apiToken) from your Jenkins administrator or the Jenkins admin console, then enter them in the connection settings above.
Attribute mappings
Expand the sections below to view the mappings between the source and the Brinqa data model attributes:
Job
| Source Field Name | SDM Attribute |
|---|---|
Build.building | LAST_BUILD_BUILDING |
Build.displayName | LAST_BUILD_DISPLAY_NAME |
Build.duration | LAST_BUILD_DURATION |
Build.timestamp (Instant) | LAST_BUILD_TIMESTAMP |
config.xml root attribute | PLUGIN |
config.xml → definition | DEFINITION |
config.xml → jdk | JDK |
config.xml → keepDependencies | KEEP_DEPENDENCIES |
config.xml → scm → branches → name | SCM_BRANCHES |
config.xml → scm → userRemoteConfigs → url | SCM_URL |
config.xml → triggers | TRIGGERS |
| Constant "Application" | CATEGORIES |
Instant.now() | LAST_CAPTURED |
JobResource.className | CLASS_NAME |
JobResource.color | STATUS |
JobResource.color | COLOR |
JobResource.name | UID |
JobResource.url | URL |
JobStatusResource.buildable | BUILDABLE |
JobStatusResource.concurrentBuild | CONCURRENT_BUILD |
JobStatusResource.description | DESCRIPTION |
JobStatusResource.disabled | DISABLED |
JobStatusResource.displayName | DISPLAY_NAME |
JobStatusResource.fullDisplayName | FULL_DISPLAY_NAME |
JobStatusResource.fullName (fallback: JobResource.name) | NAME |
JobStatusResource.healthReport[0].description | HEALTH_DESCRIPTION |
JobStatusResource.healthReport[0].score | HEALTH_SCORE |
JobStatusResource.inQueue | IN_QUEUE |
JobStatusResource.lastBuild.number | LAST_BUILD_NUMBER |
JobStatusResource.lastBuild.result | LAST_BUILD_RESULT |
JobStatusResource.lastBuild.url | LAST_BUILD_URL |
JobStatusResource.lastCompletedBuild.number | LAST_COMPLETED_BUILD_NUMBER |
JobStatusResource.lastFailedBuild.number | LAST_FAILED_BUILD_NUMBER |
JobStatusResource.lastStableBuild.number | LAST_STABLE_BUILD_NUMBER |
JobStatusResource.lastSuccessfulBuild.number | LAST_SUCCESSFUL_BUILD_NUMBER |
JobStatusResource.lastUnstableBuild.number | LAST_UNSTABLE_BUILD_NUMBER |
JobStatusResource.lastUnsuccessfulBuild.number | LAST_UNSUCCESSFUL_BUILD_NUMBER |
JobStatusResource.nextBuildNumber | NEXT_BUILD_NUMBER |
People
| Source Field Name | SDM Attribute |
|---|---|
| Constant "active" | STATUS |
| Constant "Identity" | CATEGORIES |
Instant.now() | LAST_CAPTURED |
PeopleResource.lastChange (Instant) | LAST_CHANGE |
PeopleResource.project | PROJECT |
PeopleResource.user.absoluteUrl | URL |
PeopleResource.user.fullName | UID |
PeopleResource.user.fullName | NAME |
Operations & API
Expand each connector object to see its operation options, delta-sync behavior, and the API it uses. See connector operation options for how to apply operation options (keys and values are case-sensitive).
Job
Operation options
This object does not support any operation options.
Delta sync
The connector README does not document sync behavior for this object.
API
- Type: REST (JSON for listing/status, XML for configuration)
People
Operation options
This object does not support any operation options.
Delta sync
The connector README does not document sync behavior for this object.
API
- Type: REST · Endpoint:
GET /asynchPeople/api/json
Changelog
The Jenkins connector has undergone the following changes:
| Version | Description | Migration Steps |
|---|---|---|
| 3.0.0 | Overview The Jenkins connector integrates with Jenkins CI/CD servers to synchronize jobs—including their build status, health, and configuration—along with the users defined on the Jenkins instance. Category: Configuration Management Models | N/A |