Skip to content

jquery/ci-management

Repository files navigation

Continuous Integration for JQuery at LF

This repository has templates that generate jobs in the Linux Foundation Jenkins instance using the Jenkins Job Builder. For more information about that tool please see:

https://docs.openstack.org/infra/system-config/jjb.html

Template design

Jenkins jobs are generated from standard Global JJB templates and from custom-to-project JJB templates.

Global JJB templates

Global JJB jobs originated with the Open Daylight project and reflect CI/CD design choices made there. Global JJB templates are used as much as possible in JQuery. As of this writing this includes CLM, RST/RTD documentation, javadoc, simple Maven/Java jar jobs and some Python jobs.

Documentation of Global JJB templates can be found here:

http://global-jjb.releng.linuxfoundation.org/en/latest/index.html

Get access to the Jenkins Sandbox

The Sandbox provides a testing/experimentation environment used before pushing job templates to the production instance.

To access the Sandbox use: https://jenkins.openjsf.org/sandbox

The access to the Sandbox uses the same LFID used in the production Jenkins instance, but in this case a new Helpdesk ticket needs creation to request the sandbox access.

LF Helpdesk / Service Desk

The service desk is a support platform for administrative and infrastructure issues requiring input or action from members of the Linux Foundation IT staff.

To access the LF Helpdesk use: https://support.linuxfoundation.org

For help opening a support ticket use: https://docs.releng.linuxfoundation.org/en/latest/helpdesk.html

Testing the templates

These instructions explain how to test the JQuery templates using the Jenkins sandbox. This catches errors before submitting the changes as Gerrit reviews.

Prerequisites:

Install the Jenkins job builder:

pip install --user jenkins-job-builder

Check out the global JJB templates submodule within this repo:

git submodule update --init

Test Locally

Check sanity by running the Jenkins job-builder script in this directory:

jenkins-jobs test -r jjb

Deploy the templates to the Jenkins sandbox

Login (after requesting membership in group jquery-jenkins-sandbox-access) at the Jenkins sandbox:

https://jenkins.openjsf.org/sandbox

Get the authentication token from the sandbox: a) click on your user name (top right) b) click Configure (left menu) c) click API Token (button)

Create a config file jenkins.ini using the following template and your credentials

(user name and API token from above):

[job_builder]
ignore_cache=True
keep_descriptions=False
recursive=True

[jenkins]
query_plugins_info=False
url=https://jenkins.openjsf.org/sandbox
user=YOUR-USER-NAME
password=YOUR-API-TOKEN

Build and deploy a specific job using the EXACT job name.

jenkins-jobs --conf jenkins.ini update -j jjb your-job-name-here

Examples:

jenkins-jobs --conf jenkins.ini update -j jjb <job_name>

In the sandbox visit the job page, then click the button "Build with parameters" in left menu.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Languages