X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=jjb%2Flf-macros.yaml;h=e3933930db0aefb8670b697615daf3e5a9d97804;hb=cc9776d38d1d5a25a9c27af4501dda47318e09aa;hp=ac577c8c9f6c497ad85d88e6df8b3fb2aa60c37a;hpb=b774f4d61b404c53b4051981acff659442cd5fcd;p=releng%2Fglobal-jjb.git diff --git a/jjb/lf-macros.yaml b/jjb/lf-macros.yaml index ac577c8c..e3933930 100644 --- a/jjb/lf-macros.yaml +++ b/jjb/lf-macros.yaml @@ -3,6 +3,14 @@ # BUILDERS # ############ +# To take advantage of this macro, have your build write +# out the file 'gerrit_comment.txt' with information to post +# back to gerrit and include this macro in the list of builders. +- builder: + name: comment-to-gerrit + builders: + - shell: !include-raw: ../shell/comment-to-gerrit.sh + - builder: name: lf-fetch-dependent-patches builders: @@ -56,6 +64,8 @@ - builder: name: lf-infra-ship-logs builders: + # Ensure no pre-existing .netrc files are overriding logs config + - lf-provide-maven-settings-cleanup - config-file-provider: files: - file-id: 'jenkins-log-archives-settings' @@ -66,6 +76,7 @@ # Ensure python-tools are installed in case job template does not # call the lf-infra-pre-build macro. - ../shell/python-tools-install.sh + - shell: !include-raw: - ../shell/logs-deploy.sh - shell: !include-raw: - ../shell/logs-clear-credentials.sh @@ -109,10 +120,20 @@ - builder: name: lf-infra-packer-validate builders: + - conditional-step: + condition-kind: boolean-expression + condition-expression: '{openstack}' + steps: + - config-file-provider: + files: + - file-id: clouds-yaml + target: '$HOME/.config/openstack/clouds.yaml' + - inject: + properties-content: OS_CLOUD={openstack-cloud} - config-file-provider: files: - file-id: '{packer-cloud-settings}' - variable: 'CLOUDENV' + variable: CLOUDENV - inject: properties-content: | PACKER_VERSION={packer-version} @@ -161,11 +182,27 @@ GROUP_ID={group-id} UPLOAD_FILES_PATH={upload-files-dir} - shell: !include-raw-escape: - - ../shell/lftools-install.sh - ../shell/common-variables.sh - ../shell/deploy-maven-file.sh - lf-provide-maven-settings-cleanup +- builder: + name: lf-maven-central + builders: + - conditional-step: + condition-kind: boolean-expression + condition-expression: '{mvn-central}' + steps: + - lf-provide-maven-settings: + global-settings-file: '{mvn-global-settings}' + settings-file: '{mvn-settings}' + - lf-infra-create-netrc: + server-id: 'ossrh' + - inject: + properties-content: 'OSSRH_PROFILE_ID={ossrh-profile-id}' + - shell: !include-raw-escape: ../shell/maven-central.sh + - lf-provide-maven-settings-cleanup + - builder: name: lf-maven-install builders: @@ -227,6 +264,13 @@ - shell: !include-raw-escape: ../shell/tox-install.sh - shell: !include-raw-escape: ../shell/rtd-verify.sh +- builder: + name: check-info-votes + builders: + - inject: + properties-content: JENKINS_SSH_CREDENTIAL={jenkins-ssh-credential} + - shell: !include-raw-escape: ../shell/check-info-votes.sh + - builder: name: lf-sigul-sign-dir # Requires that Jenkins be configured with SIGUL_BRIDGE_IP as a global @@ -247,9 +291,10 @@ - shell: !include-raw-escape: ../shell/sigul-configuration.sh - shell: !include-raw-escape: ../shell/sigul-install.sh - inject: - properties-content: SIGN_DIR={sign-dir} + properties-content: | + SIGN_DIR={sign-dir} + SIGN_MODE={sign-mode} - shell: !include-raw-escape: - - ../shell/common-variables.sh - ../shell/sigul-sign-dir.sh - shell: !include-raw-escape: ../shell/sigul-configuration-cleanup.sh @@ -395,15 +440,6 @@ If using GitHub, in a manual build override with a branch path or sha1 hash to a specific commit. For example: 'origin/master' - # Tools - - string: - name: LFTOOLS_VERSION - default: '{lftools-version}' - description: | - Version of lftools to install. Can be a specific version like - '0.6.0' or a PEP-440 definition. - https://www.python.org/dev/peps/pep-0440/ - For example '<1.0.0' or '>=1.0.0,<2.0.0'. - parameter: name: lf-infra-node-parameters @@ -498,22 +534,32 @@ fail-build: false - publisher: - name: lf-stack-delete + name: lf-infra-publish-windows + # lf-infra macro to finish up a build. + # + # Handles the following: + # - Shipping logs to Nexus logs site repository + # - Cleanup workspace publishers: - - postbuildscript: - builders: - - role: BOTH - build-on: - - ABORTED - - FAILURE - - SUCCESS - - UNSTABLE - build-steps: - - shell: | - #!/bin/bash -l - echo "Deleting $STACK_NAME" - lftools openstack stack delete "$STACK_NAME" - mark-unstable-if-failed: false + # TODO: RELENG-1228 Develop log shipping script for Windows systems + # - postbuildscript: + # builders: + # - role: BOTH + # build-on: + # - ABORTED + # - FAILURE + # - NOT_BUILT + # - SUCCESS + # - UNSTABLE + # build-steps: + # - lf-infra-ship-logs-windows + # mark-unstable-if-failed: true + - workspace-cleanup: + exclude: + # Do not clean up *.jenkins-trigger files for jobs that use a + # properties file as input for triggering another build. + - '**/*.jenkins-trigger' + fail-build: false ####### # SCM # @@ -532,6 +578,7 @@ wipe-workspace: true submodule: recursive: '{submodule-recursive}' + timeout: '{submodule-timeout}' choosing-strategy: '{choosing-strategy}' - scm: @@ -547,6 +594,7 @@ wipe-workspace: true submodule: recursive: '{submodule-recursive}' + timeout: '{submodule-timeout}' choosing-strategy: '{choosing-strategy}' ############