# The purpose of this job template is to run:
# vagrant validate
- name: '{project-name}-{stream}-verify-vagrantfile'
+ name: "{project-name}-{stream}-verify-vagrantfile"
project-type: freestyle
- description: 'Job intended for validating vagrantfiles'
- node: 'ubuntu1604-builder-2c-1g.cfg'
+ description: "Job intended for validating vagrantfiles"
+ node: ubuntu1804-builder-4c-4g
parameters:
- lf-infra-parameters:
- project: '{project}'
- stream: '{stream}'
- branch: '{branch}'
+ project: "{project}"
+ stream: "{stream}"
+ branch: "{branch}"
properties:
- infra-properties:
- build-days-to-keep: '{build-days-to-keep}'
+ build-days-to-keep: "{build-days-to-keep}"
scm:
- gerrit-trigger-scm:
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
- submodule-recursive: '{submodule-recursive}'
+ refspec: "$GERRIT_REFSPEC"
+ choosing-strategy: "gerrit"
+ submodule-recursive: "{submodule-recursive}"
wrappers:
- infra-wrappers:
- build-timeout: '{build-timeout}'
+ build-timeout: "{build-timeout}"
triggers:
- gerrit-trigger-patch-submitted:
- server: '{server-name}'
- project: '{project}'
- branch: '{branch}'
- files: '**/Vagrantfile'
+ server: "{server-name}"
+ project: "{project}"
+ branch: "{branch}"
+ files: "**/Vagrantfile"
builders:
- integration-install-vagrant
- - shell: !include-raw-escape: 'vagrantfile-verify.sh'
+ - shell: !include-raw-escape: "vagrantfile-verify.sh"
publishers:
- lf-infra-publish
+
+- job-template: &tox_verify_boilerplate
+ # Job template for running linters against specific file formats
+ #
+ # Required Variables:
+ # python-version: Python version to deploy in venv
+ # tox-env: Tox environments to run
+ # tox-dir: Directory containing the project's tox.ini
+ # pattern: List of file patterns to scan
+
+ name: "{project-name}-{stream}-{subproject}-lint"
+ id: integration-linters
+ project-type: freestyle
+ description: "Job intended for running linters with Tox and Coala"
+ build-node: centos8-builder-2c-1g
+ node: "{build-node}"
+
+ parameters:
+ - lf-infra-parameters:
+ project: "{project}"
+ stream: "{stream}"
+ branch: "{branch}"
+ - lf-infra-tox-parameters:
+ tox-dir: "{tox-dir}"
+ tox-envs: "{tox-envs}"
+
+ properties:
+ - infra-properties:
+ build-days-to-keep: "{build-days-to-keep}"
+
+ scm:
+ - gerrit-trigger-scm:
+ refspec: "$GERRIT_REFSPEC"
+ choosing-strategy: "gerrit"
+ submodule-recursive: "{submodule-recursive}"
+
+ wrappers:
+ - infra-wrappers:
+ build-timeout: "{build-timeout}"
+
+ triggers:
+ - gerrit-trigger-patch-submitted:
+ server: "{server-name}"
+ project: "{project}"
+ branch: "{branch}"
+ files: "{pattern}"
+
+ builders:
+ - lf-infra-tox-install:
+ python-version: "{python-version}"
+ - lf-infra-tox-run:
+ parallel: "false"
+
+ publishers:
+ - lf-infra-publish
+
+- job-template:
+ <<: *tox_verify_boilerplate
+ name: "{project-name}-{stream}-{subproject}-tox-verify"
+ id: integration-tox-verify
+ description: "Job intended for running tox"
+
+- job-template:
+ <<: *tox_verify_boilerplate
+ name: "{project-name}-{stream}-{subproject}-terraform-verify"
+ terraform-version: 0.13.2
+ terragrunt-version: 0.24.1
+ python-version: python3
+ id: integration-terraform-verify
+ description: "Job intended for validating terraform modules"
+
+ parameters:
+ - lf-infra-parameters:
+ project: "{project}"
+ stream: "{stream}"
+ branch: "{branch}"
+ - lf-infra-tox-parameters:
+ tox-dir: "{tox-dir}"
+ tox-envs: "{tox-envs}"
+ - integration-terraform-version:
+ terraform-version: "{terraform-version}"
+ - integration-terragrunt-version:
+ terragrunt-version: "{terragrunt-version}"
+
+ builders:
+ - integration-install-terraform
+ - integration-install-terragrunt
+ - lf-infra-tox-install:
+ python-version: "{python-version}"
+ - lf-infra-tox-run:
+ parallel: "false"