| --- |
| #################### |
| # COMMON FUNCTIONS # |
| #################### |
| |
| - c_job_common: &c_job_common |
| name: c-job-common |
| |
| ###################### |
| # Default parameters # |
| ###################### |
| |
| branch: master |
| submodule-recursive: true |
| submodule-disable: false |
| submodule-timeout: 10 |
| |
| ##################### |
| # Job Configuration # |
| ##################### |
| |
| project-type: freestyle |
| node: '{build-node}' |
| disabled: false |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| parameters: |
| - lf-infra-parameters: |
| project: '{project}' |
| branch: '{branch}' |
| stream: '{stream}' |
| |
| scm: |
| - lf-infra-gerrit-scm: |
| jenkins-ssh-credential: '{jenkins-ssh-credential}' |
| git-url: '$GIT_URL/$PROJECT' |
| refspec: '$GERRIT_REFSPEC' |
| branch: '$GERRIT_BRANCH' |
| submodule-recursive: '{submodule-recursive}' |
| submodule-disable: '{submodule-disable}' |
| submodule-timeout: '{submodule-timeout}' |
| choosing-strategy: default |
| |
| wrappers: |
| - lf-infra-wrappers: |
| build-timeout: '{build-timeout}' |
| jenkins-ssh-credential: '{jenkins-ssh-credential}' |
| |
| publishers: |
| - lf-infra-publish |
| |
| ################# |
| # JOB TEMPLATES # |
| ################# |
| |
| - job-template: |
| # |
| # job template for build C/C++ project |
| # |
| # Required Variables: |
| # script: build script to execute |
| # |
| name: '{project-name}-{stream}-verify-c' |
| id: gerrit-verify-c |
| <<: *c_job_common |
| |
| triggers: |
| - gerrit-trigger-patch-submitted: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| files: '**' |
| |
| builders: |
| - lf-infra-pre-build |
| - shell: '{script}' |
| |
| - job-template: |
| # Job template for building & pushing docker images |
| # |
| # 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-c-shell-daily' |
| id: gerrit-docker-c-shell-daily |
| <<: *c_job_common |
| node: 'ubuntu1604-docker-8c-8g' |
| |
| 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}' |