Added new Jenkinsfiles for OMEC, github triggers
Change-Id: Iddfdccaebd7f13d2031b3536cf172b8ef35f73f5
diff --git a/jjb/cord-macros.yaml b/jjb/cord-macros.yaml
index 68b057d..bcd6f51 100644
--- a/jjb/cord-macros.yaml
+++ b/jjb/cord-macros.yaml
@@ -120,6 +120,20 @@
- compare-type: REG_EXP
pattern: '{file-include-regexp}'
+# trigger on GitHub pull request with lables in 'white-list-labels'
+
+- trigger:
+ name: cord-infra-github-pr-label-trigger
+ triggers:
+ - github-pull-request:
+ github-hooks: 'true'
+ white-list-labels: '{obj:github_label_whitelist}'
+ black-list-labels: '{obj:github_label_blacklist}'
+ triggered-status: 'Triggered on CORD Jenkins'
+ success-status: 'Success on CORD Jenkins'
+ failure-status: 'Failure on CORD Jenkins'
+ error-status: 'Error on CORD Jenkins'
+
# wrapper to provide pypi config file
- wrapper:
@@ -141,3 +155,6 @@
target: '$HOME/.pypirc'
- file-id: pipconf
target: '$HOME/.config/pip/pip.conf'
+
+
+
diff --git a/jjb/license-check.yaml b/jjb/license-check.yaml
index 830a36c..79bc542 100644
--- a/jjb/license-check.yaml
+++ b/jjb/license-check.yaml
@@ -7,14 +7,14 @@
project-name: '{name}'
jobs:
- - 'license-check'
+ - 'blackduck-license-check'
- job-template:
- id: 'license-check'
+ id: 'blackduck-license-check'
name: 'omec-license'
description: |
- <!-- Managed by Jenkins Job Builder -->
+ Created by {id} job-template from ci-management/jjb/license-check.yaml<br />
Copyright (c) 2018 Open Networking Foundation (ONF)
properties:
diff --git a/jjb/omec-ci.yaml b/jjb/omec-ci.yaml
index 8f10e43..4e542e4 100644
--- a/jjb/omec-ci.yaml
+++ b/jjb/omec-ci.yaml
@@ -1,26 +1,77 @@
---
-# omec-ci job
+# omec-ci jobs
+# for ngic-rtc
- project:
- name: omec-ci
- project-name: '{name}'
+ name: ngic-rtc
+ project: '{name}'
jobs:
- - 'omec-ci'
+ - 'omec-ngic-rtc-test'
+
+- job-group:
+ name: 'omec-ngic-rtc-test'
+ jobs:
+ - 'omec-pipeline':
+ pipeline-file: 'Jenkinsfile-omec-install-ngic-rtc-vnf.groovy'
+ - 'omec-tc1':
+ dependency-jobs: 'omec_ngic-rtc_pipeline'
+ - 'omec-tc2':
+ dependency-jobs: 'omec_ngic-rtc_tc1'
+
+# for c3po
+- project:
+ name: c3po
+ project: '{name}'
+
+ jobs:
+ - 'omec-c3po-test'
+
+- job-group:
+ name: 'omec-c3po-test'
+ jobs:
+ - 'omec-pipeline':
+ pipeline-file: 'Jenkinsfile-omec-install-c3po-vnf.groovy'
+ - 'omec-tc1':
+ dependency-jobs: 'omec_c3po_pipeline'
+ - 'omec-tc2':
+ dependency-jobs: 'omec_c3po_tc1'
+
+# for openmme
+- project:
+ name: openmme
+ project: '{name}'
+
+ jobs:
+ - 'omec-openmme-test'
+
+- job-group:
+ name: 'omec-openmme-test'
+ jobs:
+ - 'omec-pipeline':
+ pipeline-file: 'Jenkinsfile-omec-install-openmme-vnf.groovy'
+ - 'omec-tc1':
+ dependency-jobs: 'omec_openmme_pipeline'
+ - 'omec-tc2':
+ dependency-jobs: 'omec_openmme_tc1'
+
+# build/install pipeline job
- job-template:
- id: 'omec-ci'
- name: omec-ci
+ id: 'omec-pipeline'
+ name: 'omec_{project}_pipeline'
project-type: pipeline
description: |
<!-- Managed by Jenkins Job Builder -->
- Created by {id} job-template from ci-management/jjb/omec-ci.yaml <br /><br />
+ Created by {id} job-template from ci-management/jjb/omec-ci.yaml<br />
properties:
- cord-infra-properties:
build-days-to-keep: '{build-days-to-keep}'
artifact-num-to-keep: '{artifact-num-to-keep}'
+ - github:
+ url: 'https://github.com/omec-project/{project}'
wrappers:
- lf-infra-wrappers:
@@ -36,17 +87,135 @@
- string:
name: branch
default: 'master'
- description: ''
+ description: 'Git branch to use'
- string:
name: notificationEmail
default: 'omecproject-support@opennetworking.org'
description: ''
+ triggers:
+ - cord-infra-github-pr-label-trigger:
+ github_label_whitelist:
+ - 'ok-to-test'
+ github_label_blacklist:
+ - 'needs-ok-to-test'
+
concurrent: true
pipeline-scm:
- script-path: 'Jenkinsfile-build-vms.groovy'
+ script-path: '{pipeline-file}'
+ scm:
+ - git:
+ url: 'https://github.com/omec-project/omec-project-ci'
+ branches:
+ - 'master'
+
+
+# tests
+
+- job-template:
+ id: 'omec-tc1'
+ name: 'omec_{project}_tc1'
+ project-type: pipeline
+
+ description: |
+ <!-- Managed by Jenkins Job Builder -->
+ Created by {id} job-template from ci-management/jjb/omec-ci.yaml<br />
+
+ properties:
+ - cord-infra-properties:
+ build-days-to-keep: '{build-days-to-keep}'
+ artifact-num-to-keep: '{artifact-num-to-keep}'
+ - github:
+ url: 'https://github.com/omec-project/{project}'
+
+ wrappers:
+ - lf-infra-wrappers:
+ build-timeout: '{build-timeout}'
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+
+ parameters:
+ - string:
+ name: TestNodeName
+ default: 'intel'
+ description: 'Name of the Jenkins node to run the job on'
+
+ - string:
+ name: branch
+ default: 'master'
+ description: 'Git branch to use'
+
+ - string:
+ name: notificationEmail
+ default: 'omecproject-support@opennetworking.org'
+ description: ''
+
+ triggers:
+ - cord-infra-github-pr-label-trigger:
+ github_label_whitelist:
+ - 'ok-to-test'
+ github_label_blacklist:
+ - 'needs-ok-to-test'
+
+ concurrent: true
+
+ pipeline-scm:
+ script-path: 'Jenkinsfile-omec-test-TC1.groovy'
+ scm:
+ - git:
+ url: 'https://github.com/omec-project/omec-project-ci'
+ branches:
+ - 'master'
+
+- job-template:
+ id: 'omec-tc2'
+ name: 'omec_{project}_tc2'
+ project-type: pipeline
+
+ description: |
+ <!-- Managed by Jenkins Job Builder -->
+ Created by {id} job-template from ci-management/jjb/omec-ci.yaml<br />
+
+ properties:
+ - cord-infra-properties:
+ build-days-to-keep: '{build-days-to-keep}'
+ artifact-num-to-keep: '{artifact-num-to-keep}'
+ - github:
+ url: 'https://github.com/omec-project/{project}'
+
+ wrappers:
+ - lf-infra-wrappers:
+ build-timeout: '{build-timeout}'
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+
+ parameters:
+ - string:
+ name: TestNodeName
+ default: 'intel'
+ description: 'Name of the Jenkins node to run the job on'
+
+ - string:
+ name: branch
+ default: 'master'
+ description: 'Git branch to use'
+
+ - string:
+ name: notificationEmail
+ default: 'omecproject-support@opennetworking.org'
+ description: ''
+
+ triggers:
+ - cord-infra-github-pr-label-trigger:
+ github_label_whitelist:
+ - 'ok-to-test'
+ github_label_blacklist:
+ - 'needs-ok-to-test'
+
+ concurrent: true
+
+ pipeline-scm:
+ script-path: 'Jenkinsfile-omec-test-TC2.groovy'
scm:
- git:
url: 'https://github.com/omec-project/omec-project-ci'