add py311 tests to circle

Patch by brandonwilliams; reviewed by bereng for CASSANDRA-18094
This commit is contained in:
Brandon Williams 2022-12-08 11:47:03 -06:00
parent cd38edbb41
commit f66e7dcf33
7 changed files with 3644 additions and 36 deletions

View File

@ -647,10 +647,18 @@ j8_separate_jobs: &j8_separate_jobs
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
# Java 8 cqlsh offheap dtests offheap
- start_j8_cqlsh_tests_offheap:
type: approval
@ -662,6 +670,10 @@ j8_separate_jobs: &j8_separate_jobs
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
# Java 11 cqlsh dtests
- start_j11_cqlsh_tests:
type: approval
@ -677,10 +689,18 @@ j8_separate_jobs: &j8_separate_jobs
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
# Java 11 cqlsh dtests off-heap
- start_j11_cqlsh_tests_offheap:
type: approval
@ -692,6 +712,10 @@ j8_separate_jobs: &j8_separate_jobs
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
# Java 8 repeated utest
- start_j8_repeated_ant_test:
type: approval
@ -1038,9 +1062,15 @@ j8_pre-commit_jobs: &j8_pre-commit_jobs
- j8_cqlsh_dtests_py38:
requires:
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- j8_build
# Java 8 cqlsh dtests offheap
- start_j8_cqlsh_dtests_offheap:
type: approval
@ -1052,6 +1082,10 @@ j8_pre-commit_jobs: &j8_pre-commit_jobs
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
# Java 11 cqlsh dtests
- j11_cqlsh_dtests_py3:
requires:
@ -1062,9 +1096,15 @@ j8_pre-commit_jobs: &j8_pre-commit_jobs
- j11_cqlsh_dtests_py38:
requires:
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j8_build
# Java 11 cqlsh dtests off-heap
- start_j11_cqlsh-dtests-offheap:
type: approval
@ -1076,6 +1116,10 @@ j8_pre-commit_jobs: &j8_pre-commit_jobs
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
j11_separate_jobs: &j11_separate_jobs
jobs:
@ -1196,10 +1240,18 @@ j11_separate_jobs: &j11_separate_jobs
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -1210,6 +1262,10 @@ j11_separate_jobs: &j11_separate_jobs
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
# specialized unit tests (all run on request)
- start_j11_utests_long:
type: approval
@ -1392,9 +1448,15 @@ j11_pre-commit_jobs: &j11_pre-commit_jobs
- j11_cqlsh_dtests_py38:
requires:
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -1405,6 +1467,10 @@ j11_pre-commit_jobs: &j11_pre-commit_jobs
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
# specialized unit tests (all run on request)
- start_utests_long:
type: approval
@ -1919,6 +1985,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j8_cqlsh_dtests_py311_vnode:
<<: *j8_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j8_with_vnodes
run_dtests_extra_args: "--use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j8_with_vnodes
pytest_extra_args: '--use-vnodes --num-tokens=16 --skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j8_cqlsh_dtests_py38_offheap:
<<: *j8_par_executor
steps:
@ -1937,6 +2021,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j8_cqlsh_dtests_py311_offheap:
<<: *j8_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j8_dtests_offheap
run_dtests_extra_args: "--use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j8_dtests_offheap
pytest_extra_args: '--use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j8_cqlsh_dtests_py3:
<<: *j8_par_executor
steps:
@ -1970,6 +2072,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j8_cqlsh_dtests_py311:
<<: *j8_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j8_without_vnodes
run_dtests_extra_args: "--skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j8_without_vnodes
pytest_extra_args: '--skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j11_cqlsh_dtests_py3_vnode:
<<: *j11_par_executor
steps:
@ -2018,6 +2138,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j11_cqlsh_dtests_py311_vnode:
<<: *j11_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j11_with_vnodes
run_dtests_extra_args: "--use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j11_with_vnodes
pytest_extra_args: '--use-vnodes --num-tokens=16 --skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j11_cqlsh_dtests_py38_offheap:
<<: *j11_par_executor
steps:
@ -2036,6 +2174,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j11_cqlsh_dtests_py311_offheap:
<<: *j11_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j11_dtests_offheap
run_dtests_extra_args: "--use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j11_dtests_offheap
pytest_extra_args: '--use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j11_cqlsh_dtests_py3:
<<: *j11_par_executor
steps:
@ -2069,6 +2225,24 @@ jobs:
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.8'
python_version: '3.8'
j11_cqlsh_dtests_py311:
<<: *j11_par_executor
steps:
- attach_workspace:
at: /home/cassandra
- clone_dtest
- create_venv:
python_version: '3.11'
- create_dtest_containers:
file_tag: j11_without_vnodes
run_dtests_extra_args: "--skip-resource-intensive-tests --pytest-options '-k cql'"
python_version: '3.11'
- run_dtests:
file_tag: j11_without_vnodes
pytest_extra_args: '--skip-resource-intensive-tests'
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.11'
python_version: '3.11'
j8_dtests_large_vnode:
<<: *j8_par_executor
steps:
@ -2761,7 +2935,7 @@ commands:
python_version:
type: enum
default: "3.6"
enum: ["3.6", "3.7", "3.8"]
enum: ["3.6", "3.7", "3.8", "3.11"]
steps:
- run:
name: Configure virtualenv and python Dependencies
@ -2792,7 +2966,7 @@ commands:
python_version:
type: enum
default: "3.6"
enum: ["3.6", "3.7", "3.8"]
enum: ["3.6", "3.7", "3.8", "3.11"]
steps:
- run:
name: Determine Tests to Run (<<parameters.file_tag>>)
@ -2834,7 +3008,7 @@ commands:
python_version:
type: enum
default: "3.6"
enum: ["3.6", "3.7", "3.8"]
enum: ["3.6", "3.7", "3.8", "3.11"]
steps:
- run:
name: Run dtests (<<parameters.file_tag>>)

View File

@ -1,5 +1,5 @@
--- config-2_1.yml 2022-11-15 12:30:50.000000000 -0500
+++ config-2_1.yml.HIGHRES 2022-11-15 12:35:46.000000000 -0500
--- config-2_1.yml 2022-12-08 11:47:59.977505612 -0600
+++ config-2_1.yml.HIGHRES 2022-12-08 11:56:04.308987398 -0600
@@ -157,14 +157,14 @@
j8_par_executor: &j8_par_executor
executor:
@ -117,8 +117,8 @@
j8_separate_jobs: &j8_separate_jobs
jobs:
@@ -2070,7 +2076,7 @@
python_version: '3.8'
@@ -2244,7 +2250,7 @@
python_version: '3.11'
j8_dtests_large_vnode:
- <<: *j8_par_executor
@ -126,7 +126,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2084,7 +2090,7 @@
@@ -2258,7 +2264,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --only-resource-intensive-tests --force-resource-intensive-tests'
j8_dtests_large:
@ -135,7 +135,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2098,7 +2104,7 @@
@@ -2272,7 +2278,7 @@
pytest_extra_args: '--only-resource-intensive-tests --force-resource-intensive-tests'
j11_dtests_large_vnode:
@ -144,7 +144,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2112,7 +2118,7 @@
@@ -2286,7 +2292,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --only-resource-intensive-tests --force-resource-intensive-tests'
j11_dtests_large:

View File

@ -1,5 +1,5 @@
--- config-2_1.yml 2022-12-23 10:10:35.000000000 -0500
+++ config-2_1.yml.MIDRES 2022-12-23 10:11:05.000000000 -0500
--- config-2_1.yml 2023-01-19 06:40:13.405500420 -0600
+++ config-2_1.yml.MIDRES 2023-01-13 11:58:24.226316122 -0600
@@ -157,14 +157,14 @@
j8_par_executor: &j8_par_executor
executor:
@ -32,7 +32,7 @@
+j8_very_large_par_executor: &j8_very_large_par_executor
+ executor:
+ name: java8-executor
+ exec_resource_class: large
+ exec_resource_class: xlarge
+ parallelism: 100
+
j8_medium_par_executor: &j8_medium_par_executor
@ -134,7 +134,7 @@
j8_separate_jobs: &j8_separate_jobs
jobs:
@@ -1771,7 +1795,7 @@
@@ -1837,7 +1861,7 @@
target: testclasslist-system-keyspace-directory
j8_dtests_vnode:
@ -143,7 +143,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1785,7 +1809,7 @@
@@ -1851,7 +1875,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --skip-resource-intensive-tests'
j8_dtests_offheap:
@ -152,7 +152,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1799,7 +1823,7 @@
@@ -1865,7 +1889,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests'
j11_dtests_vnode:
@ -161,7 +161,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1814,7 +1838,7 @@
@@ -1880,7 +1904,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --skip-resource-intensive-tests'
j11_dtests_offheap:
@ -170,7 +170,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1829,7 +1853,7 @@
@@ -1895,7 +1919,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests'
j8_dtests:
@ -179,7 +179,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1843,7 +1867,7 @@
@@ -1909,7 +1933,7 @@
pytest_extra_args: '--skip-resource-intensive-tests'
j11_dtests:
@ -188,7 +188,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1858,7 +1882,7 @@
@@ -1924,7 +1948,7 @@
pytest_extra_args: '--skip-resource-intensive-tests'
j8_upgrade_dtests:
@ -197,7 +197,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1872,7 +1896,7 @@
@@ -1938,7 +1962,7 @@
pytest_extra_args: '--execute-upgrade-tests-only --upgrade-target-version-only --upgrade-version-selection all'
j8_cqlsh_dtests_py3_vnode:
@ -206,7 +206,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1887,7 +1911,7 @@
@@ -1953,7 +1977,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j8_cqlsh_dtests_py3_offheap:
@ -215,7 +215,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1902,7 +1926,7 @@
@@ -1968,7 +1992,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j8_cqlsh_dtests_py38_vnode:
@ -224,25 +224,43 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1920,7 +1944,7 @@
@@ -1986,7 +2010,7 @@
python_version: '3.8'
j8_cqlsh_dtests_py311_vnode:
- <<: *j8_par_executor
+ <<: *j8_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2004,7 +2028,7 @@
python_version: '3.11'
j8_cqlsh_dtests_py38_offheap:
- <<: *j8_par_executor
+ <<: *j8_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -1938,7 +1962,7 @@
@@ -2022,7 +2046,7 @@
python_version: '3.8'
j8_cqlsh_dtests_py311_offheap:
- <<: *j8_par_executor
+ <<: *j8_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2040,7 +2064,7 @@
python_version: '3.11'
j8_cqlsh_dtests_py3:
- <<: *j8_par_executor
+ <<: *j8_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -1953,7 +1977,7 @@
@@ -2055,7 +2079,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j8_cqlsh_dtests_py38:
@ -251,16 +269,25 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -1971,7 +1995,7 @@
@@ -2073,7 +2097,7 @@
python_version: '3.8'
j8_cqlsh_dtests_py311:
- <<: *j8_par_executor
+ <<: *j8_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2091,7 +2115,7 @@
python_version: '3.11'
j11_cqlsh_dtests_py3_vnode:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -1986,7 +2010,7 @@
@@ -2106,7 +2130,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j11_cqlsh_dtests_py3_offheap:
@ -269,7 +296,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2001,7 +2025,7 @@
@@ -2121,7 +2145,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j11_cqlsh_dtests_py38_vnode:
@ -278,25 +305,43 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2019,7 +2043,7 @@
@@ -2139,7 +2163,7 @@
python_version: '3.8'
j11_cqlsh_dtests_py311_vnode:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2157,7 +2181,7 @@
python_version: '3.11'
j11_cqlsh_dtests_py38_offheap:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2037,7 +2061,7 @@
@@ -2175,7 +2199,7 @@
python_version: '3.8'
j11_cqlsh_dtests_py311_offheap:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2193,7 +2217,7 @@
python_version: '3.11'
j11_cqlsh_dtests_py3:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2052,7 +2076,7 @@
@@ -2208,7 +2232,7 @@
extra_env_args: 'CQLSH_PYTHON=/usr/bin/python3.6'
j11_cqlsh_dtests_py38:
@ -305,16 +350,25 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2070,7 +2094,7 @@
@@ -2226,7 +2250,7 @@
python_version: '3.8'
j11_cqlsh_dtests_py311:
- <<: *j11_par_executor
+ <<: *j11_large_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2244,7 +2268,7 @@
python_version: '3.11'
j8_dtests_large_vnode:
- <<: *j8_par_executor
+ <<: *j8_medium_par_executor
steps:
- attach_workspace:
at: /home/cassandra
@@ -2084,7 +2108,7 @@
@@ -2258,7 +2282,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --only-resource-intensive-tests --force-resource-intensive-tests'
j8_dtests_large:
@ -323,7 +377,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2098,7 +2122,7 @@
@@ -2272,7 +2296,7 @@
pytest_extra_args: '--only-resource-intensive-tests --force-resource-intensive-tests'
j11_dtests_large_vnode:
@ -332,7 +386,7 @@
steps:
- attach_workspace:
at: /home/cassandra
@@ -2112,7 +2136,7 @@
@@ -2286,7 +2310,7 @@
pytest_extra_args: '--use-vnodes --num-tokens=16 --only-resource-intensive-tests --force-resource-intensive-tests'
j11_dtests_large:

View File

@ -295,6 +295,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_with_vnodes_raw /tmp/all_dtest_tests_j8_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_with_vnodes_raw > /tmp/all_dtest_tests_j8_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_with_vnodes > /tmp/split_dtest_tests_j8_with_vnodes.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes_final.txt\n"
- run:
name: Run dtests (j8_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_dtests_vnode_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -823,6 +933,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_without_vnodes_raw /tmp/all_dtest_tests_j11_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_without_vnodes_raw > /tmp/all_dtest_tests_j11_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_without_vnodes > /tmp/split_dtest_tests_j11_without_vnodes.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes_final.txt\n"
- run:
name: Run dtests (j11_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_jvm_dtests_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -1884,6 +2105,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_without_vnodes_raw /tmp/all_dtest_tests_j8_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_without_vnodes_raw > /tmp/all_dtest_tests_j8_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_without_vnodes > /tmp/split_dtest_tests_j8_without_vnodes.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes_final.txt\n"
- run:
name: Run dtests (j8_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py38_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -4962,6 +5293,117 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_dtests_offheap_raw /tmp/all_dtest_tests_j11_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j11_dtests_offheap_raw > /tmp/all_dtest_tests_j11_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_dtests_offheap > /tmp/split_dtest_tests_j11_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j11_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_system_keyspace_directory_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -6123,6 +6565,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_with_vnodes_raw /tmp/all_dtest_tests_j11_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_with_vnodes_raw > /tmp/all_dtest_tests_j11_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_with_vnodes > /tmp/split_dtest_tests_j11_with_vnodes.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes_final.txt\n"
- run:
name: Run dtests (j11_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_long_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -7564,6 +8117,116 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_dtests_offheap_raw /tmp/all_dtest_tests_j8_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j8_dtests_offheap_raw > /tmp/all_dtest_tests_j8_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_dtests_offheap > /tmp/split_dtest_tests_j8_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j8_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_dtests_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -9034,10 +9697,18 @@ workflows:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- start_j8_cqlsh_tests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9048,6 +9719,10 @@ workflows:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- start_j11_cqlsh_tests:
type: approval
- j11_cqlsh_dtests_py3:
@ -9062,10 +9737,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- start_j11_cqlsh_tests_offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9076,6 +9759,10 @@ workflows:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
java8_pre-commit_tests:
jobs:
- start_pre-commit_tests:
@ -9247,9 +9934,15 @@ workflows:
- j8_cqlsh_dtests_py38:
requires:
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j8_cqlsh_dtests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9260,6 +9953,10 @@ workflows:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j11_cqlsh_dtests_py3:
requires:
- j8_build
@ -9269,9 +9966,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9282,6 +9985,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
java11_separate_tests:
jobs:
- start_j11_build:
@ -9363,10 +10070,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9377,6 +10092,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_j11_utests_long:
type: approval
- j11_utests_long:
@ -9468,9 +10187,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9481,6 +10206,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_utests_long:
type: approval
- j11_utests_long:

View File

@ -295,6 +295,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_with_vnodes_raw /tmp/all_dtest_tests_j8_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_with_vnodes_raw > /tmp/all_dtest_tests_j8_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_with_vnodes > /tmp/split_dtest_tests_j8_with_vnodes.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes_final.txt\n"
- run:
name: Run dtests (j8_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_dtests_vnode_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -823,6 +933,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_without_vnodes_raw /tmp/all_dtest_tests_j11_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_without_vnodes_raw > /tmp/all_dtest_tests_j11_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_without_vnodes > /tmp/split_dtest_tests_j11_without_vnodes.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes_final.txt\n"
- run:
name: Run dtests (j11_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_jvm_dtests_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -1884,6 +2105,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_without_vnodes_raw /tmp/all_dtest_tests_j8_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_without_vnodes_raw > /tmp/all_dtest_tests_j8_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_without_vnodes > /tmp/split_dtest_tests_j8_without_vnodes.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes_final.txt\n"
- run:
name: Run dtests (j8_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py38_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -4962,6 +5293,117 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_dtests_offheap_raw /tmp/all_dtest_tests_j11_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j11_dtests_offheap_raw > /tmp/all_dtest_tests_j11_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_dtests_offheap > /tmp/split_dtest_tests_j11_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j11_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_system_keyspace_directory_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -6123,6 +6565,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_with_vnodes_raw /tmp/all_dtest_tests_j11_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_with_vnodes_raw > /tmp/all_dtest_tests_j11_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_with_vnodes > /tmp/split_dtest_tests_j11_with_vnodes.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes_final.txt\n"
- run:
name: Run dtests (j11_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_long_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -7564,6 +8117,116 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: xlarge
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 100
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_dtests_offheap_raw /tmp/all_dtest_tests_j8_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j8_dtests_offheap_raw > /tmp/all_dtest_tests_j8_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_dtests_offheap > /tmp/split_dtest_tests_j8_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j8_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_dtests_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -9034,10 +9697,18 @@ workflows:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- start_j8_cqlsh_tests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9048,6 +9719,10 @@ workflows:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- start_j11_cqlsh_tests:
type: approval
- j11_cqlsh_dtests_py3:
@ -9062,10 +9737,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- start_j11_cqlsh_tests_offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9076,6 +9759,10 @@ workflows:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
java8_pre-commit_tests:
jobs:
- start_pre-commit_tests:
@ -9247,9 +9934,15 @@ workflows:
- j8_cqlsh_dtests_py38:
requires:
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j8_cqlsh_dtests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9260,6 +9953,10 @@ workflows:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j11_cqlsh_dtests_py3:
requires:
- j8_build
@ -9269,9 +9966,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9282,6 +9985,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
java11_separate_tests:
jobs:
- start_j11_build:
@ -9363,10 +10070,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9377,6 +10092,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_j11_utests_long:
type: approval
- j11_utests_long:
@ -9468,9 +10187,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9481,6 +10206,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_utests_long:
type: approval
- j11_utests_long:

View File

@ -295,6 +295,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_with_vnodes_raw /tmp/all_dtest_tests_j8_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_with_vnodes_raw > /tmp/all_dtest_tests_j8_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_with_vnodes > /tmp/split_dtest_tests_j8_with_vnodes.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_with_vnodes_final.txt\n"
- run:
name: Run dtests (j8_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_dtests_vnode_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -823,6 +933,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_without_vnodes_raw /tmp/all_dtest_tests_j11_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_without_vnodes_raw > /tmp/all_dtest_tests_j11_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_without_vnodes > /tmp/split_dtest_tests_j11_without_vnodes.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_without_vnodes_final.txt\n"
- run:
name: Run dtests (j11_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_jvm_dtests_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -1884,6 +2105,116 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_cqlsh_dtests_py311:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_without_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_without_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_without_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_without_vnodes_raw /tmp/all_dtest_tests_j8_without_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j8_without_vnodes_raw > /tmp/all_dtest_tests_j8_without_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_without_vnodes > /tmp/split_dtest_tests_j8_without_vnodes.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_without_vnodes_final.txt\ncat /tmp/split_dtest_tests_j8_without_vnodes_final.txt\n"
- run:
name: Run dtests (j8_without_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt"
cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_without_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_without_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_without_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_without_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py38_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
@ -4962,6 +5293,117 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j11_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_dtests_offheap_raw /tmp/all_dtest_tests_j11_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j11_dtests_offheap_raw > /tmp/all_dtest_tests_j11_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_dtests_offheap > /tmp/split_dtest_tests_j11_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j11_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_system_keyspace_directory_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -6123,6 +6565,117 @@ jobs:
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j11_cqlsh_dtests_py311_vnode:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j11_with_vnodes)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j11_with_vnodes)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j11_with_vnodes_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j11_with_vnodes_raw /tmp/all_dtest_tests_j11_with_vnodes\nelse\n grep -e '' /tmp/all_dtest_tests_j11_with_vnodes_raw > /tmp/all_dtest_tests_j11_with_vnodes || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j11_with_vnodes > /tmp/split_dtest_tests_j11_with_vnodes.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j11_with_vnodes_final.txt\ncat /tmp/split_dtest_tests_j11_with_vnodes_final.txt\n"
- run:
name: Run dtests (j11_with_vnodes)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt"
cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j11_with_vnodes_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j11_with_vnodes.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j11_with_vnodes
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j11_with_vnodes_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- CASSANDRA_USE_JDK11: true
j8_utests_long_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -7564,6 +8117,116 @@ jobs:
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_cqlsh_dtests_py311_offheap:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
resource_class: medium
working_directory: ~/
shell: /bin/bash -eo pipefail -l
parallelism: 4
steps:
- attach_workspace:
at: /home/cassandra
- run:
name: Clone Cassandra dtest Repository (via git)
command: |
git clone --single-branch --branch $DTEST_BRANCH --depth 1 $DTEST_REPO ~/cassandra-dtest
- run:
name: Configure virtualenv and python Dependencies
command: |
# note, this should be super quick as all dependencies should be pre-installed in the docker image
# if additional dependencies were added to requirmeents.txt and the docker image hasn't been updated
# we'd have to install it here at runtime -- which will make things slow, so do yourself a favor and
# rebuild the docker image! (it automatically pulls the latest requirements.txt on build)
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
pip3 install --exists-action w --upgrade -r ~/cassandra-dtest/requirements.txt
pip3 uninstall -y cqlsh
pip3 freeze
- run:
name: Determine Tests to Run (j8_dtests_offheap)
no_output_timeout: 5m
command: "# reminder: this code (along with all the steps) is independently executed on every circle container\n# so the goal here is to get the circleci script to return the tests *this* container will run\n# which we do via the `circleci` cli tool.\n\ncd cassandra-dtest\nsource ~/env3.11/bin/activate\nexport PATH=$JAVA_HOME/bin:$PATH\n\nif [ -n '' ]; then\n export \nfi\n\necho \"***Collected DTests (j8_dtests_offheap)***\"\nset -eo pipefail && ./run_dtests.py --use-vnodes --use-off-heap-memtables --skip-resource-intensive-tests --pytest-options '-k cql' --dtest-print-tests-only --dtest-print-tests-output=/tmp/all_dtest_tests_j8_dtests_offheap_raw --cassandra-dir=../cassandra\nif [ -z '' ]; then\n mv /tmp/all_dtest_tests_j8_dtests_offheap_raw /tmp/all_dtest_tests_j8_dtests_offheap\nelse\n grep -e '' /tmp/all_dtest_tests_j8_dtests_offheap_raw > /tmp/all_dtest_tests_j8_dtests_offheap || { echo \"Filter did not match any tests! Exiting build.\"; exit 0; }\nfi\nset -eo pipefail && circleci tests split --split-by=timings --timings-type=classname /tmp/all_dtest_tests_j8_dtests_offheap > /tmp/split_dtest_tests_j8_dtests_offheap.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap.txt | tr '\\n' ' ' > /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\ncat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt\n"
- run:
name: Run dtests (j8_dtests_offheap)
no_output_timeout: 15m
command: |
echo "cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt"
cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt
source ~/env3.11/bin/activate
export PATH=$JAVA_HOME/bin:$PATH
if [ -n 'CQLSH_PYTHON=/usr/bin/python3.11' ]; then
export CQLSH_PYTHON=/usr/bin/python3.11
fi
java -version
cd ~/cassandra-dtest
mkdir -p /tmp/dtest
echo "env: $(env)"
echo "** done env"
mkdir -p /tmp/results/dtests
# we need the "set -o pipefail" here so that the exit code that circleci will actually use is from pytest and not the exit code from tee
export SPLIT_TESTS=`cat /tmp/split_dtest_tests_j8_dtests_offheap_final.txt`
if [ ! -z "$SPLIT_TESTS" ]; then
set -o pipefail && cd ~/cassandra-dtest && pytest --use-vnodes --num-tokens=16 --use-off-heap-memtables --skip-resource-intensive-tests --log-level="DEBUG" --junit-xml=/tmp/results/dtests/pytest_result_j8_dtests_offheap.xml -s --cassandra-dir=/home/cassandra/cassandra --keep-test-dir $SPLIT_TESTS 2>&1 | tee /tmp/dtest/stdout.txt
else
echo "Tune your parallelism, there are more containers than test classes. Nothing to do in this container"
(exit 1)
fi
- store_test_results:
path: /tmp/results
- store_artifacts:
path: /tmp/dtest
destination: dtest_j8_dtests_offheap
- store_artifacts:
path: ~/cassandra-dtest/logs
destination: dtest_j8_dtests_offheap_logs
environment:
- ANT_HOME: /usr/share/ant
- JAVA11_HOME: /usr/lib/jvm/java-11-openjdk-amd64
- JAVA8_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- LANG: en_US.UTF-8
- KEEP_TEST_DIR: true
- DEFAULT_DIR: /home/cassandra/cassandra-dtest
- PYTHONIOENCODING: utf-8
- PYTHONUNBUFFERED: true
- CASS_DRIVER_NO_EXTENSIONS: true
- CASS_DRIVER_NO_CYTHON: true
- CASSANDRA_SKIP_SYNC: true
- DTEST_REPO: https://github.com/apache/cassandra-dtest.git
- DTEST_BRANCH: trunk
- CCM_MAX_HEAP_SIZE: 1024M
- CCM_HEAP_NEWSIZE: 256M
- REPEATED_TESTS_STOP_ON_FAILURE: false
- REPEATED_UTESTS: null
- REPEATED_UTESTS_COUNT: 500
- REPEATED_UTESTS_FQLTOOL: null
- REPEATED_UTESTS_FQLTOOL_COUNT: 500
- REPEATED_UTESTS_LONG: null
- REPEATED_UTESTS_LONG_COUNT: 100
- REPEATED_UTESTS_STRESS: null
- REPEATED_UTESTS_STRESS_COUNT: 500
- REPEATED_SIMULATOR_DTESTS: null
- REPEATED_SIMULATOR_DTESTS_COUNT: 500
- REPEATED_JVM_DTESTS: null
- REPEATED_JVM_DTESTS_COUNT: 500
- REPEATED_JVM_UPGRADE_DTESTS: null
- REPEATED_JVM_UPGRADE_DTESTS_COUNT: 500
- REPEATED_DTESTS: null
- REPEATED_DTESTS_COUNT: 500
- REPEATED_LARGE_DTESTS: null
- REPEATED_LARGE_DTESTS_COUNT: 100
- REPEATED_UPGRADE_DTESTS: null
- REPEATED_UPGRADE_DTESTS_COUNT: 25
- REPEATED_ANT_TEST_TARGET: testsome
- REPEATED_ANT_TEST_CLASS: null
- REPEATED_ANT_TEST_METHODS: null
- REPEATED_ANT_TEST_VNODES: false
- REPEATED_ANT_TEST_COUNT: 500
- JAVA_HOME: /usr/lib/jvm/java-8-openjdk-amd64
- JDK_HOME: /usr/lib/jvm/java-8-openjdk-amd64
j8_dtests_repeat:
docker:
- image: apache/cassandra-testing-ubuntu2004-java11-w-dependencies:latest
@ -9034,10 +9697,18 @@ workflows:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- start_j8_cqlsh_tests
- j8_build
- start_j8_cqlsh_tests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9048,6 +9719,10 @@ workflows:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_tests_offheap
- j8_build
- start_j11_cqlsh_tests:
type: approval
- j11_cqlsh_dtests_py3:
@ -9062,10 +9737,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j8_build
- start_j11_cqlsh_tests_offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9076,6 +9759,10 @@ workflows:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh_tests_offheap
- j8_build
java8_pre-commit_tests:
jobs:
- start_pre-commit_tests:
@ -9247,9 +9934,15 @@ workflows:
- j8_cqlsh_dtests_py38:
requires:
- j8_build
- j8_cqlsh_dtests_py311:
requires:
- j8_build
- j8_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j8_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j8_cqlsh_dtests_offheap:
type: approval
- j8_cqlsh_dtests_py3_offheap:
@ -9260,6 +9953,10 @@ workflows:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j8_cqlsh_dtests_py311_offheap:
requires:
- start_j8_cqlsh_dtests_offheap
- j8_build
- j11_cqlsh_dtests_py3:
requires:
- j8_build
@ -9269,9 +9966,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j8_build
- j11_cqlsh_dtests_py311:
requires:
- j8_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j8_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j8_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9282,6 +9985,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j8_build
java11_separate_tests:
jobs:
- start_j11_build:
@ -9363,10 +10070,18 @@ workflows:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- start_j11_cqlsh_tests
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9377,6 +10092,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_j11_utests_long:
type: approval
- j11_utests_long:
@ -9468,9 +10187,15 @@ workflows:
- j11_cqlsh_dtests_py38:
requires:
- j11_build
- j11_cqlsh_dtests_py311:
requires:
- j11_build
- j11_cqlsh_dtests_py38_vnode:
requires:
- j11_build
- j11_cqlsh_dtests_py311_vnode:
requires:
- j11_build
- start_j11_cqlsh-dtests-offheap:
type: approval
- j11_cqlsh_dtests_py3_offheap:
@ -9481,6 +10206,10 @@ workflows:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- j11_cqlsh_dtests_py311_offheap:
requires:
- start_j11_cqlsh-dtests-offheap
- j11_build
- start_utests_long:
type: approval
- j11_utests_long:

File diff suppressed because it is too large Load Diff