https://github.com/jquery/ci-management
https://github.com/jquery/ci-management
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jquery/ci-management
- Owner: jquery
- Created: 2020-08-18T16:50:50.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2022-09-22T21:59:40.000Z (over 3 years ago)
- Last Synced: 2024-09-28T20:22:22.733Z (over 1 year ago)
- Language: Shell
- Homepage:
- Size: 129 KB
- Stars: 5
- Watchers: 12
- Forks: 13
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 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
In the sandbox visit the job page, then click the button
"Build with parameters" in left menu.