Make sure that jjb-cleanup.sh allows unbound vars
[releng/global-jjb.git] / jjb / lf-macros.yaml
index 1267197..ab74f91 100644 (file)
     builders:
       - shell: !include-raw: ../shell/gpg-verify-git-signature.sh
 
+- builder:
+    name: lf-infra-pre-build
+    builders:
+      - shell: !include-raw-escape: ../shell/python-tools-install.sh
+
 - builder:
     name: lf-infra-ship-logs
     builders:
@@ -58,7 +63,9 @@
       - lf-infra-create-netrc:
           server-id: logs
       - shell: !include-raw:
-          - ../shell/lftools-install.sh
+          # Ensure python-tools are installed in case job template does not
+          # call the lf-infra-pre-build macro.
+          - ../shell/python-tools-install.sh
           - ../shell/logs-deploy.sh
       - shell: !include-raw:
           - ../shell/logs-clear-credentials.sh
               variable: SIGUL_PASSWORD
             - file-id: sigul-pki
               variable: SIGUL_PKI
-      - shell: !include-raw-escape: ../shell/sigul-configuration.sh
+      - shell: !include-raw: ../shell/sigul-configuration.sh
 
 - builder:
     name: lf-pip-install
     name: lf-provide-sigul-configuration-cleanup
     # Clear sigul configuration files after we're done using them
     builders:
-      - shell: !include-raw-escape: ../shell/sigul-configuration-cleanup.sh
+      - shell: !include-raw: ../shell/sigul-configuration-cleanup.sh
 
 - builder:
     name: lf-rtd-trigger-build
     builders:
       - inject:
           properties-content: DOC_DIR={doc-dir}
-      - shell: !include-raw-escape:
-          - ../shell/tox-install.sh
-          - ../shell/rtd-verify.sh
+      - shell: !include-raw-escape: ../shell/tox-install.sh
+      - shell: !include-raw-escape: ../shell/rtd-verify.sh
 
 - builder:
     name: lf-sigul-install
     # Requires that Jenkins be configured with SIGUL_BRIDGE_IP as a global
     # Environment variable
-    builder:
-      - shell: !include-raw-escape: ../shell/sigul-install.sh
+    builders:
+      - shell: !include-raw: ../shell/sigul-install.sh
 
 - builder:
     name: lf-infra-provide-docker-cleanup
 # PARAMETERS #
 ##############
 
+- parameter:
+    name: lf-clm-parameters
+    parameters:
+      - string:
+          name: NEXUS_IQ_STAGE
+          default: '{nexus-iq-stage}'
+          description: |
+              Stage the policy evaluation will be run against on the Nexus IQ Server.
+
+- parameter:
+    name: lf-cmake-parameters
+    # Parameters useful in CMake builds.
+    parameters:
+      - string:
+          name: BUILD_DIR
+          default: '{build-dir}'
+          description: 'Directory to build the project in.'
+      - string:
+          name: CMAKE_OPTS
+          default: '{cmake-opts}'
+          description: |
+              Options to pass to CMAKE.
+              Example: -DCMAKE_INSTALL_PREFIX=$WORKSPACE/target/output
+      - string:
+          name: INSTALL_PREFIX
+          default: '{install-prefix}'
+          description: 'Install prefix for C/C++ builds. Example: /usr/local'
+      - string:
+          name: MAKE_OPTS
+          default: '{make-opts}'
+          description: 'Options to pass to make. Example: -j8'
+
 - parameter:
     name: lf-infra-maven-parameters
     parameters:
           # yamllint disable-line rule:line-length
           default: '/w/tools/hudson.tasks.Maven_MavenInstallation/{mvn-version}/bin/mvn'
           description: 'Maven selector to be used by shell scripts'
-      - string:
-          name: STAGING_PROFILE_ID
-          default: '{staging-profile-id}'
-          description: |
-              Nexus staging profile ID.
-
 
 - parameter:
     name: lf-infra-openstack-parameters