GithubHelp home page GithubHelp logo

ci-management's Introduction

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.

ci-management's People

Contributors

vvalderrv avatar tykeal avatar cdasari2169 avatar mightynerderic avatar keanjapesan avatar mnaser avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.