Merge "Support sonarcloud in python projects"
authorAnil Belur <abelur@linuxfoundation.org>
Wed, 16 Oct 2019 13:49:44 +0000 (13:49 +0000)
committerGerrit Code Review <gerrit@linuxfoundation.org>
Wed, 16 Oct 2019 13:49:44 +0000 (13:49 +0000)
docs/jjb/lf-python-jobs.rst
jjb/lf-python-jobs.yaml
jjb/lf-rtdv2-jobs.yaml
releasenotes/notes/add-pypi-release-merge-trigger-611855d749779d45.yaml [new file with mode: 0644]
releasenotes/notes/fix-rtd-trigger-handle-ref-updated-c78eadbe4e72d38c.yaml [new file with mode: 0644]
shell/rtd-trigger-build.sh

index 0ef27d9..8f4f6bd 100644 (file)
@@ -449,7 +449,7 @@ PyPI section.
     - gerrit-pypi-merge
     - github-pypi-merge
 
-:Comment Trigger: pypi-remerge
+:Comment Trigger: remerge
 
 :Required Parameters:
 
@@ -563,6 +563,8 @@ An example of a pypi release file appears below.
     - gerrit-pypi-release-verify
     - github-pypi-release-verify
 
+:Comment Trigger: recheck
+
 :Required Parameters:
 
     :build-node: The node to run build on, which must be Centos.
@@ -644,6 +646,8 @@ The special parameters are as follows::
     - gerrit-pypi-release-merge
     - github-pypi-release-merge
 
+:Comment Trigger: remerge
+
 :Required Parameters:
 
     :build-node: The node to run build on, which must be Centos.
index df82d8f..b334c78 100644 (file)
     pre-build-script: "# pre-build script goes here"
     python-version: python3
     stream: master
+    submodule-disable: false
     submodule-recursive: true
     submodule-timeout: 10
-    submodule-disable: false
     tox-dir: "."
     tox-envs: ""
 
     <<: *lf_pypi_common
     <<: *lf_pypi_verify_builders
 
-    gerrit_verify_triggers:
-      - 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*$'
-
     scm:
       - lf-infra-gerrit-scm:
           jenkins-ssh-credential: "{jenkins-ssh-credential}"
     triggers:
       - gerrit:
           server-name: "{gerrit-server-name}"
-          trigger-on: "{obj:gerrit_verify_triggers}"
+          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: "{project}"
     cron: ""
     pypi-repo: pypi-test
 
-    gerrit_merge_triggers:
-      - change-merged-event
-      - comment-added-contains-event:
-          comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
-
     scm:
       - lf-infra-gerrit-scm:
           jenkins-ssh-credential: "{jenkins-ssh-credential}"
       - timed: "{obj:cron}"
       - gerrit:
           server-name: "{gerrit-server-name}"
-          trigger-on: "{obj:gerrit_merge_triggers}"
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
           projects:
             - project-compare-type: ANT
               project-pattern: "{project}"
     <<: *lf_pypi_release_common
     <<: *lf_pypi_release_verify_builders
 
-    gerrit_verify_triggers:
-      - 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*$'
-
     scm:
       - lf-infra-gerrit-scm:
           jenkins-ssh-credential: "{jenkins-ssh-credential}"
     triggers:
       - gerrit:
           server-name: "{gerrit-server-name}"
-          trigger-on: "{obj:gerrit_verify_triggers}"
+          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: "{project}"
     <<: *lf_pypi_release_common
     <<: *lf_pypi_release_merge_builders
 
-    gerrit_release_triggers:
-      - change-merged-event
-
     scm:
       - lf-infra-gerrit-scm:
           jenkins-ssh-credential: "{jenkins-ssh-credential}"
     triggers:
       - gerrit:
           server-name: "{gerrit-server-name}"
-          trigger-on: "{obj:gerrit_release_triggers}"
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
           projects:
             - project-compare-type: "ANT"
               project-pattern: "{project}"
index 326c363..8acfa5f 100644 (file)
@@ -94,7 +94,7 @@
           server-name: "{gerrit-server-name}"
           trigger-on: "{obj:gerrit_verify_triggers}"
           projects:
-            - project-compare-type: "REG_EXP"
+            - project-compare-type: "ANT"
               project-pattern: "**"
               branches:
                 - branch-compare-type: "ANT"
           server-name: "{gerrit-server-name}"
           trigger-on: "{obj:gerrit_merge_triggers}"
           projects:
-            - project-compare-type: "REG_EXP"
+            - project-compare-type: "ANT"
               project-pattern: "**"
               branches:
                 - branch-compare-type: "ANT"
diff --git a/releasenotes/notes/add-pypi-release-merge-trigger-611855d749779d45.yaml b/releasenotes/notes/add-pypi-release-merge-trigger-611855d749779d45.yaml
new file mode 100644 (file)
index 0000000..ac280fc
--- /dev/null
@@ -0,0 +1,7 @@
+---
+fixes:
+  - |
+    Add missing trigger "remerge" to the PyPI release merge template.
+    Move trigger definitions into PyPI templates, instead of defining
+    four separate trigger definition blocks and using each exactly once.
+    Document the required comment text for the triggers.
diff --git a/releasenotes/notes/fix-rtd-trigger-handle-ref-updated-c78eadbe4e72d38c.yaml b/releasenotes/notes/fix-rtd-trigger-handle-ref-updated-c78eadbe4e72d38c.yaml
new file mode 100644 (file)
index 0000000..f666ded
--- /dev/null
@@ -0,0 +1,7 @@
+---
+fixes:
+  - |
+    Fix rtd merge job to handle case of a new tag upload. When a new tag is
+    pushed this sets the gerrit event type to "ref-updated", and sets the
+    `branch=*` which is invalid. The change handles the case of tag update
+    and builds against the appropriate branch for that tag.
index 6af08d7..30a04ca 100644 (file)
@@ -27,6 +27,9 @@ set -e -o pipefail
 last_char=${RTD_BUILD_URL:length-1:1}
 [[ $last_char != "/" ]] && RTD_BUILD_URL="$RTD_BUILD_URL/"; :
 
+# Handle case for gerrit event type is ref-updated when new tag are pushed
+[[ $GERRIT_EVENT_TYPE =~ "ref-updated" ]] && GERRIT_BRANCH=${GERRIT_REFNAME##*/}
+
 json=$(curl -X POST -d "branches=${GERRIT_BRANCH}" -d "token=$RTD_TOKEN" "$RTD_BUILD_URL")
 build_triggered=$(echo "$json" | jq -r .build_triggered)