You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by on...@apache.org on 2020/06/09 23:25:19 UTC

[geode] branch support/1.13 updated: GEODE-8230: run benchmarks in parallel with other CI jobs (#5217)

This is an automated email from the ASF dual-hosted git repository.

onichols pushed a commit to branch support/1.13
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/support/1.13 by this push:
     new 8ca792c  GEODE-8230: run benchmarks in parallel with other CI jobs (#5217)
8ca792c is described below

commit 8ca792cf69da1fead5ca55519a5fec2c59332c75
Author: Owen Nichols <34...@users.noreply.github.com>
AuthorDate: Tue Jun 9 16:18:00 2020 -0700

    GEODE-8230: run benchmarks in parallel with other CI jobs (#5217)
    
    * run benchmarks in parallel with other CI jobs
    * eliminate JDK11 flavors for deterministic already-required-in-PR-pipeline jobs UnitTest and ApiChecker
    * add Benchmarks tab
    
    (cherry picked from commit f65ea452443bcd2d0dac6ef1d2d958b0cb02936f)
---
 ci/pipelines/geode-build/jinja.template.yml | 52 ++++++++++++-----------------
 ci/pipelines/shared/jinja.variables.yml     |  2 ++
 2 files changed, 24 insertions(+), 30 deletions(-)

diff --git a/ci/pipelines/geode-build/jinja.template.yml b/ci/pipelines/geode-build/jinja.template.yml
index 0a10a59..bcd39c7 100644
--- a/ci/pipelines/geode-build/jinja.template.yml
+++ b/ci/pipelines/geode-build/jinja.template.yml
@@ -86,10 +86,13 @@ GRADLE_GLOBAL_ARGS: ((gradle-global-args))
 
 {% macro all_gating_jobs() %}
   {%- for test in (tests) if not test.name=="StressNew" -%}
-  {%- for java_test_version in (java_test_versions) %}
+  {%- for java_test_version in (java_test_versions) if ((not test.ONLY_JDK is defined) or test.ONLY_JDK==java_test_version.version) %}
 - {{test.name}}Test{{java_test_version.name}}
   {%- endfor -%}
   {%- endfor -%}
+  {%- for run_var in (benchmarks.flavors) %}
+- Benchmark{{ run_var.title }}
+  {%- endfor -%}
 {% endmacro %}
 
 groups:
@@ -101,29 +104,19 @@ groups:
   {%- if repository.upstream_fork != "apache" or repository.branch == "develop" or repository.branch.startswith("support/") %}
   - PublishArtifacts
   {%- endif %}
-  {%- for flavor in (benchmarks.flavors) %}
-  - Benchmark{{flavor.title}}
-  {%- endfor %}
 - name: complete
   jobs:
   - {{ build_test.name }}
-  {%- for test in (tests) if not test.name=="StressNew" -%}
-    {%- for java_test_version in (java_test_versions) %}
-  - {{test.name}}Test{{java_test_version.name}}
-    {%- endfor -%}
-  {%- endfor %}
-  - UpdatePassingTokens
+  {{- all_gating_jobs() | indent(2) }}
   {%- if repository.upstream_fork != "apache" or repository.branch == "develop" or repository.branch.startswith("support/") %}
   - PublishArtifacts
   {%- endif %}
-  {%- for flavor in (benchmarks.flavors) %}
-  - Benchmark{{flavor.title}}
-  {%- endfor %}
+  - UpdatePassingTokens
 - name: linux
   jobs:
   - {{ build_test.name }}
   {%- for test in (tests) if test.PLATFORM=="linux" and not test.name=="StressNew" -%}
-    {% for java_test_version in (java_test_versions) %}
+    {% for java_test_version in (java_test_versions) if ((not test.ONLY_JDK is defined) or test.ONLY_JDK==java_test_version.version) %}
   - {{test.name}}Test{{java_test_version.name}}
     {%- endfor -%}
   {%- endfor %}
@@ -134,7 +127,7 @@ groups:
   jobs:
   - {{ build_test.name }}
   {%- for test in (tests) if test.PLATFORM=="windows" -%}
-    {% for java_test_version in (java_test_versions) %}
+    {% for java_test_version in (java_test_versions) if ((not test.ONLY_JDK is defined) or test.ONLY_JDK==java_test_version.version) %}
   - {{test.name}}Test{{java_test_version.name}}
     {%- endfor -%}
   {%- endfor %}
@@ -142,10 +135,15 @@ groups:
 - name: {{java_test_version.name}}
   jobs:
   - {{ build_test.name }}
-  {%- for test in (tests) if not test.name=="StressNew" %}
+  {%- for test in (tests) if (not test.name=="StressNew") and ((not test.ONLY_JDK is defined) or test.ONLY_JDK==java_test_version.version) %}
   - {{test.name}}Test{{java_test_version.name}}
   {%- endfor -%}
 {%- endfor %}
+- name: Benchmarks
+  jobs:
+  {%- for run_var in (benchmarks.flavors) %}
+  - Benchmark{{ run_var.title }}
+  {%- endfor %}
 - name: Semver Management
   jobs:
   {%- for semverPiece in ['major', 'minor', 'patch'] %}
@@ -401,9 +399,7 @@ jobs:
 {%- if repository.upstream_fork != "apache" or repository.branch == "develop" or repository.branch.startswith("support/") %}
       - PublishArtifacts
 {% else %}
-      {% for flavor in (benchmarks.flavors) %}
-      - Benchmark{{flavor.title}}
-      {% endfor %}
+      {{- all_gating_jobs() | indent(6) }}
 {% endif %}
       trigger: true
     - get: geode-build-version
@@ -452,22 +448,20 @@ jobs:
 {% for run_var in (benchmarks.flavors) %}
 - name: Benchmark{{ run_var.title }}
   public: true
-  max_in_flight: 3
+  max_in_flight: 2
   plan:
   - get: geode-ci
-    passed:
-    {{ all_gating_jobs() | indent(4) }}
+    passed: &benchmark-inputs
+    - Build
   - get: alpine-tools-image
   - aggregate:
     - get: geode
-      passed:
-      {{ all_gating_jobs() | indent(6) }}
+      passed: *benchmark-inputs
       trigger: true
     - get: geode-benchmarks
     - get: geode-build-version
       trigger: true
-      passed:
-      {{ all_gating_jobs() | indent(6) }}
+      passed: *benchmark-inputs
     - put: concourse-metadata-resource
   - do:
     - task: run_benchmarks{{ run_var.title }}
@@ -529,9 +523,7 @@ jobs:
   - aggregate:
     - get: geode-ci
       passed: &publish-passed-inputs
-      {% for flavor in (benchmarks.flavors) %}
-      - Benchmark{{flavor.title}}
-      {% endfor %}
+      {{- all_gating_jobs() | indent(6) }}
     - get: alpine-tools-image
     - get: geode
       passed: *publish-passed-inputs
@@ -614,7 +606,7 @@ jobs:
 {%- for test in tests if not test.name=="StressNew" %}
   {%- set parameters = {} %}
   {%- do deep_merge(parameters, test) %}
-  {%- for java_test_version in (java_test_versions) %}
+  {%- for java_test_version in (java_test_versions) if ((not test.ONLY_JDK is defined) or test.ONLY_JDK==java_test_version.version) %}
     {%- if java_test_version.override is defined and java_test_version.override[test.name] is defined %}
       {%- do deep_merge(parameters, java_test_version.override[test.name]) %}
     {%- endif %}
diff --git a/ci/pipelines/shared/jinja.variables.yml b/ci/pipelines/shared/jinja.variables.yml
index 490b832..2680497 100644
--- a/ci/pipelines/shared/jinja.variables.yml
+++ b/ci/pipelines/shared/jinja.variables.yml
@@ -85,6 +85,7 @@ tests:
   EXECUTE_TEST_TIMEOUT: 30m
   GRADLE_TASK: test
   MAX_IN_FLIGHT: 1
+  ONLY_JDK: 8
   PARALLEL_DUNIT: 'false'
   PARALLEL_GRADLE: 'true'
   PLATFORM: linux
@@ -209,6 +210,7 @@ tests:
   EXECUTE_TEST_TIMEOUT: 1h
   GRADLE_TASK: geode-assembly:japicmp
   MAX_IN_FLIGHT: 1
+  ONLY_JDK: 8
   PARALLEL_DUNIT: 'false'
   PARALLEL_GRADLE: 'false'
   PLATFORM: linux