---
+############
+# BUILDERS #
+############
+
+- builder:
+ name: oom-create-netrc
+ builders:
+ - inject:
+ properties-content: "SERVER_ID={server-id}"
+ - shell: !include-raw-escape: ../shell/oom-create-netrc.sh
+
###########
# ANCHORS #
###########
submodule-recursive: true
# default params for helm jobs
- pre_build_script: ''
+ build_script: ''
+ git-url: '$GIT_URL/$PROJECT'
post_build_script: ''
+ pre_build_script: ''
+ submodule-disable: false
+ submodule-timeout: 10
+ build-timeout: 240
#####################
# Job Configuration #
publishers:
- lf-infra-publish
-- helm_verify_boiler_plate: &helm_verify_boiler_plate
- name: helm_verify_boiler_plate
+#################
+# JOB TEMPLATES #
+#################
+- job-template:
+ name: '{project-name}-{stream}-verify-{helm_bin}'
+ # Job template for helm verify jobs
+ <<: *helm_job_boiler_plate
concurrent: true
scm:
- gerrit-trigger-scm:
refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'default'
+ choosing-strategy: 'gerrit'
submodule-recursive: '{submodule-recursive}'
triggers:
- - gerrit-trigger-patch-submitted:
+ - gerrit-trigger-helm-patch-submitted:
status-context: '{project}-Helm-Verify'
server: '{server-name}'
project: '{project}'
branch: '{branch}'
+ helm_bin: '{helm_bin}'
files: '{files}'
-- helm_merge_boiler_plate: &helm_merge_boiler_plate
- name: helm_merge_boiler_plate
+ builders:
+ - lf-infra-pre-build
+ - shell: |
+ echo "export HELM_BIN={helm_bin}" > helm.prop
+ - shell: '{obj:pre_build_script}'
+ - shell: '{obj:build_script}'
+
+- job-template:
+ name: '{project-name}-{stream}-merge-helm'
+ # Job template for Helm merge jobs
+
+ <<: *helm_job_boiler_plate
scm:
- gerrit-trigger-scm:
- refspec: '$GERRIT_REFSPEC'
+ refspec: ''
choosing-strategy: 'default'
submodule-recursive: '{submodule-recursive}'
triggers:
- - gerrit-trigger-patch-merged:
+ - gerrit-trigger-helm-patch-merged:
server: '{server-name}'
project: '{project}'
branch: '{branch}'
files: '{files}'
- - pollscm:
- cron: ''
-#################
-# JOB TEMPLATES #
-#################
+ builders:
+ - lf-infra-pre-build
+ - lf-provide-maven-settings:
+ global-settings-file: '{mvn-global-settings}'
+ settings-file: '{mvn-settings}'
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
+ - shell: '{obj:pre_build_script}'
+ - shell: '{obj:build_script}'
+ - oom-create-netrc:
+ server-id: oom-helm
+ - inject:
+ properties-content: |
+ BUILD_TYPE=snapshot
+ - shell: '{obj:post_build_script}'
+ - lf-provide-maven-settings-cleanup
+
- job-template:
- name: '{project-name}-{stream}-verify-helm'
+ name: '{project-name}-{stream}-verify-external-helm'
# Job template for helm verify jobs
<<: *helm_job_boiler_plate
- # yamllint disable-line rule:key-duplicates
- <<: *helm_verify_boiler_plate
+
+ parameters:
+ - lf-infra-parameters:
+ branch: '{branch}'
+ project: 'oom'
+ stream: '{stream}'
+ lftools-version: '{lftools-version}'
+
+ scm:
+ - lf-infra-gerrit-scm:
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+ git-url: '{git-url}'
+ refspec: '$GERRIT_BRANCH'
+ branch: '$GERRIT_BRANCH'
+ submodule-recursive: '{submodule-recursive}'
+ submodule-timeout: '{submodule-timeout}'
+ submodule-disable: '{submodule-disable}'
+ choosing-strategy: default
+
+ triggers:
+ - gerrit-trigger-helm-patch-submitted:
+ status-context: '{project}-Helm-Verify'
+ server: '{server-name}'
+ project: '{project}'
+ branch: '{branch}'
+ files: '{files}'
builders:
- - shell: '{pre_build_script}'
- - shell: '{build_script}'
- - shell: '{post_build_script}'
+ - lf-infra-pre-build
+ - inject:
+ properties-content: 'HELM_MODULE={helm-module}'
+ - shell: !include-raw-escape: shell/apply-submodule-patch-oom.sh
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
+ - shell: '{obj:pre_build_script}'
+ - shell: '{obj:build_script}'
- job-template:
- name: '{project-name}-{stream}-merge-helm'
+ name: '{project-name}-{stream}-merge-external-helm'
# Job template for Helm merge jobs
<<: *helm_job_boiler_plate
- # yamllint disable-line rule:key-duplicates
- <<: *helm_merge_boiler_plate
+
+ parameters:
+ - lf-infra-parameters:
+ branch: '{branch}'
+ project: 'oom'
+ stream: '{stream}'
+ lftools-version: '{lftools-version}'
+
+ scm:
+ - lf-infra-gerrit-scm:
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+ git-url: '{git-url}'
+ refspec: '$GERRIT_BRANCH'
+ branch: '$GERRIT_BRANCH'
+ submodule-recursive: '{submodule-recursive}'
+ submodule-timeout: '{submodule-timeout}'
+ submodule-disable: '{submodule-disable}'
+ choosing-strategy: default
+
+ triggers:
+ - gerrit-trigger-helm-patch-merged:
+ server: '{server-name}'
+ project: '{project}'
+ branch: '{branch}'
+ files: '{files}'
+
+ builders:
+ - lf-infra-pre-build
+ - inject:
+ properties-content: 'HELM_MODULE={helm-module}'
+ - lf-provide-maven-settings:
+ global-settings-file: 'global-settings'
+ settings-file: '{mvn-settings}'
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
+ - shell: '{obj:pre_build_script}'
+ - shell: '{obj:build_script}'
+ - oom-create-netrc:
+ server-id: oom-helm
+ - inject:
+ properties-content: |
+ BUILD_TYPE=snapshot
+ - shell: '{obj:post_build_script}'
+ - lf-provide-maven-settings-cleanup
+
+- job-template:
+ name: '{project-name}-{stream}-release-helm'
+ # Job template for Helm stage jobs
+
+ <<: *helm_job_boiler_plate
+
+ scm:
+ - gerrit-trigger-scm:
+ refspec: ''
+ choosing-strategy: 'default'
+ submodule-recursive: '{submodule-recursive}'
+
+ triggers:
+ - gerrit:
+ server-name: '{gerrit-server-name}'
+ trigger-on:
+ - comment-added-contains-event:
+ comment-contains-value: '^Patch Set\s+\d+:\s+release-helm\s*$'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{project}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: 'ANT'
+ pattern: '**'
builders:
- - shell: '{pre_build_script}'
- - shell: '{build_script}'
- - shell: '{post_build_script}'
+ - lf-infra-pre-build
+ - lf-provide-maven-settings:
+ global-settings-file: '{mvn-global-settings}'
+ settings-file: '{mvn-settings}'
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
+ - shell: '{obj:pre_build_script}'
+ - shell: '{obj:build_script}'
+ - oom-create-netrc:
+ server-id: oom-helm
+ - inject:
+ properties-content: |
+ BUILD_TYPE=release
+ - shell: '{obj:post_build_script}'
+ - lf-provide-maven-settings-cleanup
- job-template:
name: '{project-name}-{subproject}-{stream}-verify-helm'
# Job template for helm verify jobs
<<: *helm_job_boiler_plate
- # yamllint disable-line rule:key-duplicates
- <<: *helm_verify_boiler_plate
+ disabled: true
builders:
+ - lf-infra-pre-build
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
- shell: '{pre_build_script}'
- shell: '{build_script}'
- shell: '{post_build_script}'
# Job template for helm merge jobs
<<: *helm_job_boiler_plate
- # yamllint disable-line rule:key-duplicates
- <<: *helm_merge_boiler_plate
+ disabled: true
builders:
+ - lf-infra-pre-build
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
- shell: '{pre_build_script}'
- shell: '{build_script}'
+ - inject:
+ properties-content: |
+ BUILD_TYPE=snapshot
- shell: '{post_build_script}'
- job-template:
# branch: git branch (eg. stable/lithium or master)
<<: *helm_job_boiler_plate
+ disabled: true
scm:
- lf-infra-gerrit-scm:
jenkins-ssh-credential: '{jenkins-ssh-credential}'
refspec: '$GERRIT_REFSPEC'
branch: '$GERRIT_BRANCH'
submodule-recursive: true
+ submodule-timeout: '{submodule-timeout}'
+ submodule-disable: '{submodule-disable}'
choosing-strategy: default
builders:
+ - lf-infra-pre-build
+ - shell: |
+ echo "export HELM_BIN=helm3.6" > helm.prop
- shell: '{pre_build_script}'
- shell: '{build_script}'
- shell: '{post_build_script}'
triggers:
# 11 AM UTC
- - timed: 'H 11 * * *'
+ - timed: '@daily'
- gerrit-trigger-release-manually:
server: '{server-name}'
project: '{project}'
branch: '{branch}'
-