summaryrefslogtreecommitdiffstats
path: root/docs/infra/jenkins/jjb-usage.rst
blob: d467dbe8aef8dfcdf73bfd027dd7abbe496dc29f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. SPDX-License-Identifier: CC-BY-4.0
.. (c) Open Platform for NFV Project, Inc. and its contributors

.. _jjb:

===========================================
Creating/Configuring/Verifying Jenkins Jobs
===========================================

Clone and setup the repo::

    git clone --recursive ssh://YOU@gerrit.opnfv.org:29418/releng
    cd releng
    git review -s

Make changes::

    git commit -sv
    git review
    remote: Resolving deltas: 100% (3/3)
    remote: Processing changes: new: 1, refs: 1, done
    remote:
    remote: New Changes:
    remote:   https://gerrit.opnfv.org/gerrit/<CHANGE_ID>
    remote:
    To ssh://YOU@gerrit.opnfv.org:29418/releng.git
     * [new branch]      HEAD -> refs/publish/master

Test with tox::

    tox -e jjb

.. note:: You can also test the jobs under a single jjb directory by
    specifying the directory. For example to test only the releng jobs, you
    could run:

     tox -e jjb -- jjb/global:jjb/global-jjb:jjb/releng

Submit the change to gerrit::

    git review -v

Follow the link given in the stdoutput to gerrit eg:
``https://gerrit.opnfv.org/gerrit/<CHANGE_ID>`` the verify job will
have completed and you will see Verified +1 jenkins-ci in the gerrit ui.

If the changes pass the verify job
https://build.opnfv.org/ci/job/releng-verify-jjb/ ,
the patch can be submitited by a committer.

Job Types

* Verify Job

  * Trigger: **recheck** or **reverify**

* Merge Job

  * Trigger: **remerge**

* Experimental Job

  * Trigger: **check-experimental**

The verify and merge jobs are retriggerable in Gerrit by simply leaving
a comment with one of the keywords listed above.
This is useful in case you need to re-run one of those jobs in case
if build issues or something changed with the environment.

The experimental jobs are not triggered automatically. You need to leave
a comment with the keyword list above to trigger it manually. It is useful
for trying out experimental features.

Note that, experimental jobs `skip vote`_ for verified status, which means
it will reset the verified status to 0. If you want to keep the verified
status, use **recheck-experimental** in commit message to trigger both
verify and experimental jobs.

You can look in the releng/INFO file for a list of current committers to
add as reviewers to your patch in order to get it reviewed and
submitted.

Or Add the group releng-contributors

Or just email a request for review to helpdesk@opnfv.org

The Current merge and verify jobs for jenkins job builder can be found
in `releng-jobs.yaml`_.

.. _releng-jobs.yaml:
    https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=jjb/releng-jobs.yaml;
.. _skip vote:
    https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger#GerritTrigger-SkipVote