X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=docs%2Fconfiguration.rst;h=221217d1ef287b6050a61fc367cec968e4327bc2;hb=refs%2Fchanges%2F21%2F11321%2F4;hp=7fc6cede617f2458e42b4042f1501386280696cb;hpb=dfd0ba35507b0bd3deeec5309c224970bd968a64;p=releng%2Fglobal-jjb.git diff --git a/docs/configuration.rst b/docs/configuration.rst index 7fc6cede..221217d1 100644 --- a/docs/configuration.rst +++ b/docs/configuration.rst @@ -1,5 +1,3 @@ -.. _global-jjb-configuration: - ############# Configuration ############# @@ -36,7 +34,7 @@ values used by global-jjb templates. **GitHub required parameters**: :git-url: Set this to the base URL of your GitHub repo. In - general this should be . If you are using + general this should be https://github.com. If you are using GitHub Enterprise, or some other GitHub-style system, then it should be whatever your installation base URL is. @@ -48,14 +46,13 @@ values used by global-jjb templates. into the scm config. :github_pr_org: The name of the GitHub organization. All members - of this organization will be able to trigger any job using the - `lf-infra-github-pr` macro. + of this organization will be able to trigger jobs. :github_pr_whitelist: List of GitHub members you wish to be able to - trigger any job that uses the `lf-infra-github-pr-trigger` macro. + trigger jobs. :github_pr_admin_list: List of GitHub members that will have admin - privileges on any job using the `lf-infra-github-pr-trigger` macro. + privileges on the jobs. Example Gerrit Infra: @@ -65,7 +62,7 @@ Example Gerrit Infra: name: global # lf-infra defaults - jenkins-ssh-credential: opendaylight-jenkins-ssh + jenkins-ssh-credential: jenkins-ssh gerrit-server-name: OpenDaylight lftools-version: '<1.0.0' mvn-site-id: opendaylight-site @@ -91,6 +88,8 @@ Example GitHub Infra: mvn-site-id: opendaylight-site mvn-staging-id: opendaylight-staging +.. _jenkins-files: + Jenkins Files ============= @@ -98,6 +97,8 @@ global-jjb makes use of the Jenkins Config File Provider plugin to provide some default configurations for certain tools. This section details the files to define in Jenkins' **Manage Files** configuration. +.. _npmrc: + npmrc ----- @@ -111,10 +112,12 @@ Documentation for npmrc is available via the `npm project Create a "Custom file" with contents: -.. code:: +.. code-block:: ini registry = https://nexus.opendaylight.org/content/repositories/npmjs/ +.. _pipconf: + pipconf ------- @@ -128,16 +131,118 @@ in $HOME/.config/pip/pip.conf. Documentation for pip.conf is available via the Create a "Custom file" with contents: -.. code:: +.. code-block:: ini [global] timeout = 60 index-url = https://nexus3.opendaylight.org/repository/PyPi/simple +.. _jjbini: + +jjbini +------ + +This file contains the Jenkins Job Builder `configuration +`_ +for :doc:`jjb/lf-ci-jobs`. + +:Required: This file MUST exist. +:type: Custom file + +Create a "Custom file" with contents: + +.. code-block:: ini + + [job_builder] + ignore_cache=True + keep_descriptions=False + include_path=.:scripts:~/git/ + recursive=True + + [jenkins] + user=jenkins-jobbuilder + password=1234567890abcdef1234567890abcdef + url=https://jenkins.example.org + query_plugins_info=False + + [production] + user=jenkins-jobbuilder + password=1234567890abcdef1234567890abcdef + url=https://jenkins.example.org + query_plugins_info=False + + [sandbox] + user=jenkins-jobbuilder + password=1234567890abcdef1234567890abcdef + url=https://jenkins.example.org/sandbox + query_plugins_info=False + +The last 2 sections are for the ``jenkins-cfg`` job use, they should match the +``silo`` names for the respective Jenkins systems, typically ``production`` and +``sandbox``. + +.. _jenkins-log-archives-settings: + +jenkins-log-archives-settings +----------------------------- + +See :ref:`lf-infra-ship-logs` for usage. If not archiving logs then keep this +file with default settings, global-jjb needs the file to exist to function. + +Requires a *credential* named 'logs' of type 'Username and Password' created in +the Jenkins Credentials system. + +#. Add Server Credentials +#. Set ``ServerId`` to ``logs`` +#. Set ``Credentials`` to the ``logs`` user created in the Credentials System + +:Required: This file MUST exist if using log archiving. +:type: Maven settings.xml + +.. code-block:: xml + + + + + +.. note:: + + This example is the default boilerplate generated by Jenkins with + the comments stripped out. We can also use the default generated by Jenkins + without modifying it. + +.. _packer-cloud-env: + +packer-cloud-env +---------------- + +Cloud environment configuration variables for Packer jobs. These can +contain credentials and configuration for whichever clouds packer jobs +are using. + +:Required: This file MUST exist to use packer jobs. +:type: Json file + +.. code-block:: json + + { + "cloud_auth_url": "https://auth.vexxhost.net/v3/", + "cloud_tenant": "TENANT_ID", + "cloud_user": "CLOUD_USERNAME", + "cloud_pass": "CLOUD_PASSWORD", + "cloud_network": "CLOUD_NETWORK", + "ssh_proxy_host": "" + } + +.. _jenkins-ci-jobs: Jenkins CI Jobs =============== +.. _jenkins-cfg-merge: + jenkins-cfg-merge ----------------- @@ -145,6 +250,8 @@ This job manages Jenkins Global configuration. Refer to the :ref:`CI Documentation ` for job configuration details. +.. _log-archiving: + Log Archiving =============