- Does the code cause backwards compatibility breakage?
(If so it needs documentation)
-Google posted an interesting blog on effective code review and how to spend both
-your own and your reviewers' time effectively.
+Google posted an interesting blog (`google-blog-code-health`_) on effective
+code review and how to spend both your own and your reviewers' time
+effectively.
-.. noqa
-https://testing.googleblog.com/2017/06/code-health-too-many-comments-on-your.html
Coala (Generic Linting)
===================
:ref:`Jenkins Job Builder Best Practices <global-jjb-best-practices>`
+
+.. noqa
+.. _google-blog-code-health: https://testing.googleblog.com/2017/06/code-health-too-many-comments-on-your.html
#. Install ``git-review`` via your local package management system
If your distro does not package git-review or you need a newer version.
- Install it via PyPi in a
- :ref:`virtualenv <https://virtualenv.pypa.io/en/stable/>`_ environment:
+
+ Install it via PyPi in a virtualenv_ environment:
.. code-block:: bash
way of making an update to an exisiting gerrit. In such case, is best to let gerrit handle
this via Change-Id in the commit text.
- More options for this command: `git-push https://git-scm.com/docs/git-push`_.
+ More options for this command: `git-push <https://git-scm.com/docs/git-push>`_.
Once pushed we should see some output in the terminal as described in
:ref:`Gerrit Push Output <gerrit-push-output>`.
#. Rebase the patch before you start working on it
- .. code-block::
+ .. code-block:: bash
git pull --rebase
#. Rebase the patch one last time
- .. code-block::
+ .. code-block:: bash
git pull --rebase
Both methods achieve the same result so is up to preference. Further
documentation available at `Gerrit Topics
<https://gerrit-review.googlesource.com/Documentation/intro-user.html#topics>`_.
+
+
+.. _virtualenv: https://virtualenv.pypa.io/en/stable/
gpg --export -a <KEYID-FINGERPRINT>
- b. Open the project's `Gerrit <https://git.opendaylight.org`_ and go to
+ b. Open the project's `Gerrit <https://git.opendaylight.org>`_ and go to
project settings and gpg-keys.
c. Click the `Add Key` button.
d. Copy the output from the above command, paste it into the box, and click
-.. _lfreleng-docs-jenkins:
+.. _jenkins-infra:
#######
Jenkins
-.. _lfreleng-docs-jenkins:
+.. _jenkins-guide:
#############
Jenkins Guide
where you will find all job templates for the project. Follow the below commands
to test, push or delete jobs in your Sandbox environment.
+.. _verify-jjb:
+
Verify JJB
^^^^^^^^^^
The output directory will contain files with the XML configurations.
+.. _push-job:
+
Push a Job
^^^^^^^^^^
This is useful in the case where you might want to test quick tweaks to a job before
modifying the YAML.
-Edit the job in your terminal and follow the described steps in `To Test a Job`_
-and `To Push a Job`_ to push any changes and have them ready to push to Gerrit.
+Edit the job in your terminal and follow the described steps in
+:ref:`Verify JJB <verify-jjb>` and `Push Job <push-job>`
+to push any changes and have them ready to push to Gerrit.
.. important::
#. Git commit the current files and push to Gerrit
#. Confirm verify jobs work
#. Merge the patch and confirm merge job works
-#. Install lf-ansible to GIT_ROOT/lf-ansible::
+#. Install lf-ansible to GIT_ROOT/lf-ansible
- git submodule add https://github.com/lfit/releng-lf-ansible.git lf-ansible
+ .. code-block:: bash
-#. Install common-packer to GIT_ROOT/packer/common-packer::
+ git submodule add https://github.com/lfit/releng-lf-ansible.git lf-ansible
- git submodule add https://github.com/lfit/releng-common-packer.git packer/common-packer
+#. Install common-packer to GIT_ROOT/packer/common-packer
+
+ .. code-block:: bash
+
+ git submodule add https://github.com/lfit/releng-common-packer.git packer/common-packer
#. Git commit and merge patch in Gerrit
#. Create Initial CI Packer job in jjb/ci-management/ci-packer.yaml
[testenv:docs]
deps = -rrequirements.txt
commands =
- sphinx-build -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+ sphinx-build -b html -n -W -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
echo "Generated docs available in {toxinidir}/docs/_build/html"
whitelist_externals = echo