(jjb): Add µONOS category and setup steps in Jenkins Pipelines

Change-Id: Ia7df14ee82037e0c6d4da41fdcd9d937d89b55c0
diff --git a/jjb/OnosSystemTest/onos-test-pipeline.yaml b/jjb/OnosSystemTest/onos-test-pipeline.yaml
index b078ca2..f56a085 100644
--- a/jjb/OnosSystemTest/onos-test-pipeline.yaml
+++ b/jjb/OnosSystemTest/onos-test-pipeline.yaml
@@ -45,6 +45,12 @@
       - 'master'
       - 'manually'
 
+- job-version-plate: &job-mo-version-plate
+    name: job-mo-version-plate
+    mo-version:
+      - 'master'
+      - 'manually'
+
 - job-type-plate: &job-type-plate
     name: job-type-plate
     type:
@@ -55,6 +61,11 @@
       - 'SR'
       - 'SRHA'
 
+- job-type-plate: &job-mo-type-plate
+    name: job-mo-type-plate
+    mo-type:
+      - 'MO'
+
 - job-template:
     name: 'master-trigger'
     description: |
@@ -208,6 +219,66 @@
              - 'master'
 
 - job-template:
+    name: '{mo-type}-pipeline-{mo-version}'
+    description: |
+                  <!-- Managed by Jenkins Job Builder -->
+                  This pipeline contains the test results and logs of {mo-type} on micro-ONOS {mo-version}. <br /><br />
+                  Visit <a href="https://jenkins.onosproject.org/view/QA/job/master-trigger/">master-trigger</a> to trigger a build in this pipeline.<br />
+                  Created by Jeremy Ronquillo - jeremyr@opennetworking.org<br />
+                  Copyright (c) 2019 Open Networking Foundation (ONF)
+
+    <<: *test-pipe-job-boiler-plate
+
+    parameters:
+
+      - string:
+         name: 'TimeOut'
+         default: '1410'
+         description: 'Minutes until the entire pipeline times out. Default: 23 hours 30 minutes. This value is usually passed from the upstream <a href="https://jenkins.onosproject.org/view/QA/job/master-trigger/">master-trigger</a> job.'
+
+      - string:
+         name: 'TestStation'
+         default: ''
+         description: 'Name of the test station to run this pipeline. Example: "TestStation-micro-onos-node".'
+
+      - string:
+         name: 'NodeLabel'
+         default: ''
+         description: 'Node label of the test station that runs this pipeline. Example: "micro-onos".'
+
+      - text:
+          name: 'TestsOverride'
+          default: ''
+          description: "Add a list of tests here to run, which overrides the test list from the .property file."
+
+      - string:
+          name: 'Category'
+          default: '{mo-type}'
+          description: 'Category of the pipeline. Not recommended to modify. Primarily used when triggered by the upstream <a href="https://jenkins.onosproject.org/view/QA/job/master-trigger/">master-trigger</a> job.'
+
+      - string:
+          name: 'Branch'
+          default: '{mo-version}'
+          description: 'Branch of the pipeline. Not recommended to modify. Primarily used when triggered by the upstream <a href="https://jenkins.onosproject.org/view/QA/job/master-trigger/">master-trigger</a> job.'
+
+      - lf-infra-parameters:
+         project: 'OnosSystemTest'
+         branch: 'master'
+         stream: 'master'
+         lftools-version: '<1.0.0'
+
+    concurrent: false
+
+    pipeline-scm:
+      script-path: '{jenkins-path}/MOJenkinsFile.groovy'
+      scm:
+        - git:
+           url: '{gitURL}'
+           branches:
+             - 'master'
+
+
+- job-template:
     name: 'manual-graph-generator-overall'
     description: |
                   <!-- Managed by Jenkins Job Builder -->
@@ -458,6 +529,19 @@
       - '{type}-pipeline-{version}'
 
 - project:
+    name: micro-onos-build-pipeline
+
+    <<: *job-mo-type-plate
+
+    project-name: '{mo-type}-pipeline'
+
+    <<: *test-pipe-init-procedure-plate
+    <<: *job-mo-version-plate
+
+    jobs:
+      - '{mo-type}-pipeline-{mo-version}'
+
+- project:
     name: graph-generator
 
     project-name: 'graph-generator'