Add lf-pipelines-verify job for global pipelines 04/64504/4
authorEric Ball <eball@linuxfoundation.org>
Fri, 10 Jul 2020 22:49:10 +0000 (15:49 -0700)
committerEric Ball <eball@linuxfoundation.org>
Tue, 14 Jul 2020 19:10:07 +0000 (12:10 -0700)
This job will test the releng/pipelines repo. This also introduces a
framework for adding additonal pipeline jobs to global-jjb.

Issue: RELENG-2792
Change-Id: I5440b6d1a8dd4b56ebec2d810331cd52f8bbe4c4
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
docs/jjb/lf-ci-jobs.rst
jjb/lf-ci-jobs.yaml
releasenotes/notes/lf-pipelines-verify-86d7003f660e7974.yaml [new file with mode: 0644]

index 116de87..694bf2d 100644 (file)
@@ -566,6 +566,22 @@ other file changes. Verifies INFO.yaml files follow the schema defined in
 
     :gerrit_verify_triggers: Override Gerrit Triggers.
 
+.. _lf_pipelines_verify:
+
+LF Pipelines Verify
+-------------------
+
+Verify job for the LF RelEng pipeline library. This can be implemented on any
+Jenkins machine that has the appropriate Pipelines plugins installed. It will
+look for a Gerrit system named "lf-releng" (which should be mapped to
+https://gerrit.linuxfoundation.org/infra/), and pull in the Jenkinsfile in the
+root directory of the repo.
+
+:Template Names:
+    - lf-pipelines-verify
+
+:Comment Trigger: recheck|reverify
+
 .. _license-checker:
 
 License Checker
index 9c62d97..1ccb06b 100644 (file)
     <<: *lf_sonar_builders_prescan_script
     # yamllint disable-line rule:key-duplicates
     <<: *lf_sonar_github_common
+
+#############
+# Pipelines #
+#############
+
+- lf_pipelines_common: &lf_pipelines_common
+    name: lf-pipelines-common
+
+    ######################
+    # Default parameters #
+    ######################
+
+    branch: master
+    build-timeout: 90
+    disable-job: false
+    stream: master
+    submodule-recursive: true
+    submodule-timeout: 10
+    submodule-disable: false
+
+- lf_global_pipelines_common: &lf_global_pipelines_common
+    name: lf-global-pipelines-common
+
+    # All jobs are triggering from the same source
+    git-url: https://gerrit.linuxfoundation.org/infra/releng/pipelines
+    triggers:
+      - gerrit:
+          server-name: "lf-releng"
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: true
+                exclude-trivial-rebase: false
+                exclude-no-code-change: false
+            - draft-published-event
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
+          projects:
+            - project-compare-type: ANT
+              project-pattern: "releng/pipelines"
+              branches:
+                - branch-compare-type: ANT
+                  branch-pattern: "**/master"
+
+- job-template:
+    name: "lf-pipelines-verify"
+    id: lf-pipelines-verify
+    <<: *lf_pipelines_common
+    <<: *lf_global_pipelines_common
+
+    project-type: pipeline
+    pipeline-scm:
+      scm:
+        - lf-infra-gerrit-scm:
+            git-url: "{git-url}"
+            refspec: "$GERRIT_REFSPEC"
+            branch: "$GERRIT_BRANCH"
+            submodule-recursive: "{submodule-recursive}"
+            submodule-timeout: "{submodule-timeout}"
+            submodule-disable: "{submodule-disable}"
+            choosing-strategy: gerrit
+            jenkins-ssh-credential: "{jenkins-ssh-credential}"
+    sandbox: true
diff --git a/releasenotes/notes/lf-pipelines-verify-86d7003f660e7974.yaml b/releasenotes/notes/lf-pipelines-verify-86d7003f660e7974.yaml
new file mode 100644 (file)
index 0000000..6b2b273
--- /dev/null
@@ -0,0 +1,4 @@
+---
+features:
+  - |
+    Introduce lf-pipelines-verify job to test the LF's global pipeline library.