blob: 96435034f6776c46b614ebd9b8c4297aa62ed0c4 [file] [log] [blame]
---
- job-template: &verify_golang_bolierplate
# Job template for Golang verify jobs
#
# The purpose of this job template is to run:
# 1. make build
#
# golangver can be set to golang110, golang111 or golang112
# depending on what version is needed by the project
# default is golang110
#
# Required Variables:
# branch: git branch (eg. stable/lithium or master)
#
# Optional Variables:
# script: build script to execute
# pattern: ant file-path pattern relative to the workspace used to
# trigger the job
name: "{project-name}-{stream}-verify-golang"
path: "$WORKSPACE"
pattern: "**"
script: ""
golangver: "golang110"
project-type: freestyle
concurrent: true
node: "{build-node}"
properties:
- infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- infra-parameters:
project: "{project}"
branch: "{branch}"
refspec: "refs/heads/{branch}"
artifacts: "{archive-artifacts}"
scm:
- gerrit-trigger-scm:
refspec: "$GERRIT_REFSPEC"
choosing-strategy: "gerrit"
submodule-recursive: "{submodule-recursive}"
wrappers:
- "{golangver}"
- infra-wrappers:
build-timeout: "{build-timeout}"
triggers:
- gerrit-trigger-patch-submitted:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
files: "{pattern}"
builders:
- lf-infra-pre-build
- provide-maven-settings:
global-settings-file: "global-settings"
settings-file: "{mvn-settings}"
- shell: |
#!/bin/bash
cd $WORKSPACE/{path}
make build
- shell: "{script}"
publishers:
- lf-infra-publish
- job-template:
# Job template for Golang verify jobs with subproject support
<<: *verify_golang_bolierplate
name: "{project-name}-{stream}-{subproject}-verify-golang"
- job-template:
# Job template for Golang merge jobs
#
# The purpose of this job template is to run:
# 1. make deploy
#
# golangver can be set to golang110 or golang111
# depending on what version is needed by the project
# default is golang110
#
# Required Variables:
# branch: git branch (eg. stable/lithium or master)
name: "{project-name}-{stream}-merge-golang"
path: $WORKSPACE
golangver: "golang110"
project-type: freestyle
node: "{build-node}"
properties:
- infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- infra-parameters:
project: "{project}"
branch: "{branch}"
refspec: "refs/heads/{branch}"
artifacts: "{archive-artifacts}"
- maven-exec:
maven-version: "{maven-version}"
scm:
- gerrit-trigger-scm:
refspec: ""
choosing-strategy: "default"
submodule-recursive: "{submodule-recursive}"
wrappers:
- "{golangver}"
- infra-wrappers:
build-timeout: "{build-timeout}"
triggers:
- gerrit-trigger-patch-merged:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
files: "**"
builders:
- lf-infra-pre-build
- provide-maven-settings:
global-settings-file: "global-settings"
settings-file: "{mvn-settings}"
- shell: |
#!/bin/bash
cd $WORKSPACE/{path}
make deploy
publishers:
- lf-infra-publish
- job-template:
# Job template for building & pushing docker images
#
# golangver can be set to golang110 or golang111
# depending on what version is needed by the project
# default is golang110
#
# The purpose of this job template is to run:
# 1. login to the docker registry
# 2. run a specified shell builder
#
name: "{project-name}-{stream}-docker-golang-shell-daily"
golangver: "golang110"
project-type: freestyle
node: "ubuntu1804-docker-8c-8g"
disabled: false
properties:
- infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- infra-parameters:
project: "{project}"
branch: "{branch}"
refspec: "refs/heads/{branch}"
artifacts: "{archive-artifacts}"
scm:
- gerrit-trigger-scm:
refspec: ""
choosing-strategy: "default"
submodule-recursive: "{submodule-recursive}"
wrappers:
- "{golangver}"
- infra-wrappers:
build-timeout: "{build-timeout}"
triggers:
# 12 AM UTC
- timed: "@daily"
- gerrit-trigger-release-manually:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
builders:
- lf-infra-pre-build
- provide-maven-settings:
global-settings-file: "global-settings"
settings-file: "{mvn-settings}"
- docker-login
- shell: "{script}"
publishers:
- lf-infra-publish