# SPDX-License-Identifier: Apache-2.0 ############################################################################## # Copyright (c) 2019 The Linux Foundation and others. # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- #################### # COMMON FUNCTIONS # #################### - lf_releases_common: &lf_releases_common name: lf-releases-common ###################### # Default parameters # ###################### gerrit_trigger_file_paths: - compare-type: ANT pattern: 'releases/*.yaml' ##################### # Job Configuration # ##################### project-type: freestyle node: '{build-node}' properties: - lf-infra-properties: build-days-to-keep: 7 parameters: - lf-infra-parameters: project: '{project}' branch: 'master' stream: '{stream}' wrappers: - lf-infra-wrappers: build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' publishers: - lf-infra-publish ################## # RELEASE VERIFY # ################## - lf_releases_verify: &lf_releases_verify name: lf-releases-verify ###################### # Default parameters # ###################### branch: master stream: master build-days-to-keep: 7 build-timeout: 15 disable-job: false git-url: '$GIT_URL/$PROJECT' project-pattern: '**' gerrit-skip-vote: false gerrit_verify_triggers: - patchset-created-event: exclude-drafts: true exclude-trivial-rebase: false exclude-no-code-change: false - draft-published-event - comment-added-contains-event: comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$' ##################### # Job Configuration # ##################### disabled: '{disable-job}' builders: - lf-infra-pre-build - config-file-provider: files: - file-id: sigul-config variable: SIGUL_CONFIG - file-id: sigul-password variable: SIGUL_PASSWORD - file-id: sigul-pki variable: SIGUL_PKI - shell: !include-raw-escape: ../shell/sigul-configuration.sh - shell: !include-raw-escape: ../shell/sigul-install.sh - lf-releases - job-template: name: '{project-name}-releases-verify' id: gerrit-releases-verify <<: *lf_releases_common # yamllint disable-line rule:key-duplicates <<: *lf_releases_verify scm: - lf-infra-gerrit-scm: git-url: '{git-url}' refspec: '$GERRIT_REFSPEC' branch: 'master' submodule-disable: true submodule-recursive: false submodule-timeout: 10 choosing-strategy: gerrit jenkins-ssh-credential: '{jenkins-ssh-credential}' triggers: - gerrit: server-name: '{gerrit-server-name}' trigger-on: '{obj:gerrit_verify_triggers}' projects: - project-compare-type: 'ANT' project-pattern: '{project-pattern}' branches: - branch-compare-type: 'ANT' branch-pattern: '**/master' file-paths: '{obj:gerrit_trigger_file_paths}' skip-vote: successful: '{gerrit-skip-vote}' failed: '{gerrit-skip-vote}' unstable: '{gerrit-skip-vote}' notbuilt: '{gerrit-skip-vote}' ################# # RELEASE MERGE # ################# - lf_releases_merge: &lf_releases_merge name: lf-releases-merge ###################### # Default parameters # ###################### branch: master stream: master build-days-to-keep: 7 build-timeout: 15 disable-job: false project-pattern: '**' gerrit_merge_triggers: - change-merged-event - comment-added-contains-event: comment-contains-value: remerge$ ##################### # Job Configuration # ##################### disabled: '{disable-job}' builders: - lf-infra-pre-build - config-file-provider: files: - file-id: sigul-config variable: SIGUL_CONFIG - file-id: sigul-password variable: SIGUL_PASSWORD - file-id: sigul-pki variable: SIGUL_PKI - shell: !include-raw-escape: ../shell/sigul-configuration.sh - shell: !include-raw-escape: ../shell/sigul-install.sh - lf-releases - job-template: name: '{project-name}-releases-merge' id: gerrit-releases-merge <<: *lf_releases_common # yamllint disable-line rule:key-duplicates <<: *lf_releases_merge scm: - lf-infra-gerrit-scm: jenkins-ssh-credential: '{jenkins-ssh-credential}' git-url: '{git-url}' refspec: '$GERRIT_REFSPEC' branch: '$GERRIT_BRANCH' submodule-disable: true submodule-recursive: false submodule-timeout: 10 choosing-strategy: default triggers: - gerrit: server-name: '{gerrit-server-name}' trigger-on: '{obj:gerrit_merge_triggers}' projects: - project-compare-type: 'ANT' project-pattern: '{project-pattern}' branches: - branch-compare-type: 'ANT' branch-pattern: '**/master' file-paths: '{obj:gerrit_trigger_file_paths}'