Add templates Cmake + SonarQube Jenkins plugin
[releng/global-jjb.git] / docs / jjb / lf-macros.rst
index d1efe47..f3eae1b 100644 (file)
@@ -5,6 +5,14 @@ Global Macros
 Builders
 ========
 
+comment-to-gerrit
+-----------------
+
+This macro will post a comment to the gerrit patchset if the build
+creates a file named gerrit_comment.txt
+To use this macro add it to the list of builders.
+
+
 lf-fetch-dependent-patches
 --------------------------
 
@@ -118,6 +126,11 @@ Run `packer build` to build system images.
     :platform: Build platform as found in the vars directory.
     :template: Packer template to build as found in the templates directory.
 
+:Optional parameters:
+
+    :update-cloud-image: Submit a change request to update new built cloud
+        image to Jenkins.
+
 lf-infra-packer-validate
 ------------------------
 
@@ -159,6 +172,13 @@ lf-infra-sysstat
 
 Retrieves system stats.
 
+lf-infra-update-packer-images
+-----------------------------
+
+Find and update the new built cloud image{s} in the ci-management source
+repository.
+
+
 lf-jacoco-nojava-workaround
 ---------------------------
 
@@ -232,13 +252,43 @@ Script to trigger a build on http://readthedocs.org
 lf-rtd-verify
 -------------
 
-ReadTheDocs verify script.
+ReadTheDocs verify script. Installs and runs tox.
+
+:Required parameters:
+
+    :doc-dir: Document directory.
+    :python-version: Python version.
+
+lf-rtdv3-build
+---------------
+
+Read the docs scripts that leverage the new Read the Docs v3 api
+`RTD v3 API <https://docs.readthedocs.io/en/stable/api/v3.html>`_
+Runs tox to verify that the docs are good and then runs the RTDv3 shell script.
+This script handles creating projects as needed, assiging subprojects to the main
+read the docs project and triggering builds to update the documentation.
+Jobs will run but skip verify bits until a .readthedocs.yaml is found in the root
+of their repository.
+
 
 check-info-votes
 ----------------
 
 Calls shell script to validate votes on a change to an INFO.yaml
 
+lf-release
+----------
+
+releases lftools.ini (required)
+needed to push to nexus.
+
+[nexus]
+username=
+password=
+
+Then runs ../shell/release-job.sh
+
+
 lf-sigul-sign-dir
 -----------------
 
@@ -256,6 +306,48 @@ lf-infra-provide-docker-cleanup
 
 Forcibly removes all of the docker images.
 
+lf-infra-sonar
+---------------
+
+Runs Jenkins SonarQube plug-in.
+
+Requires ``SonarQube Scanner for Jenkins``
+
+.. note:: Sonar properties can be set directly in the job definition by
+   setting the sonar-project-file to ``""`` and adding all properties under
+   ``sonar-properties``.
+
+:Optional Parameters:
+    :sonar-task: Sonar task to run. (default: "")
+    :sonar-project-file: The filename for the project's properties
+        (default: "sonar-project.properties")
+    :sonar-properties: Sonar configuration properties. (default: "")
+    :sonar-java-opts: JVM options. (default: "")
+    :sonar-additional-args: Additional command line arguments. (default: "")
+
+lf-infra-sonar-with-prescan
+---------------------------
+
+Runs Jenkins SonarQube plug-in after a pre-scan builder, which is defined by
+the macro's caller.
+
+Requires ``SonarQube Scanner for Jenkins``
+
+.. note:: Sonar properties can be set directly in the job definition by
+   setting the sonar-project-file to ``""`` and adding all properties under
+   ``sonar-properties``.
+
+:Required Parameters:
+    :lf-sonar-prescan: A builder that will run prior to the Sonar scan.
+
+:Optional Parameters:
+    :sonar-task: Sonar task to run. (default: "")
+    :sonar-project-file: The filename for the project's properties
+        (default: "sonar-project.properties")
+    :sonar-properties: Sonar configuration properties. (default: "")
+    :sonar-java-opts: JVM options. (default: "")
+    :sonar-additional-args: Additional command line arguments. (default: "")
+
 Parameters
 ==========
 
@@ -306,6 +398,12 @@ lf-infra-tox-parameters
 Provides parameters needed by python-tox. Should be used by any jobs that need
 to run `tox <https://tox.readthedocs.io>`.
 
+
+lf-build-with-parameters-maven-release
+--------------------------------------
+
+Provides parameters needed for maven release jobs 'build with parameters'.
+
 Properties
 ==========
 
@@ -348,6 +446,8 @@ Basic SCM configuration for Gerrit based projects.
 
     :submodule-timeout: Timeout (in minutes) for checkout operation.
         (default: 10)
+    :submodule-disable: Disable submodule checkout operation.
+        (default: false)
 
 lf-infra-github-scm
 -------------------
@@ -362,6 +462,8 @@ the GHPRB plugin and not manually.
 
     :submodule-timeout: Timeout (in minutes) for checkout operation.
         (default: 10)
+    :submodule-disable: Disable submodule checkout operation.
+        (default: false)
 
 Wrappers
 ========