Commit Graph

32 Commits

Author SHA1 Message Date
Mick Semb Wever f7c11bdcd4
Standalone Jenkinsfile
– ensure test file paths, and their suite names are unique (the latter was broken for cqlshlib and python dtests)
 – removal of properties and system-out in test xml happens in CassandraXMLJUnitResultFormatter
 – new jenkins agent labels and introduce agents sizes
 - ci_summary.html generation script, ref work submitted in apache/cassandra-builds#99
 – fix for stress-test and fqltool-test running on small
 - ant generate-test-report is limited to only running on individual test types (ci_parser.py provides ci_summary.html for the overview now)
 - each cell has a single retry, and the retry will happen on a different agent
 - on ci-cassandra the summary stage happens on the builtin, bc copyArtifacts on 15k+ files takes many hours otherwise
 - test-burn only needs two splits
 - dependency-check is disabled from the lint target until CASSANDRA-19213
 - add $DEBUG env var to in-tree scripts, turns on bash debug
 - fix FBUtilities' handling of gcp cos_containerd (kernel version comes with a trailing '+' character)

 patch by Aleks Volochnev, Mick Semb Wever; reviewed by Aleksandr Volochnev, Josh McKenzie, Maxim Muzafarov, Stefan Miklosovic for CASSANDRA-18594

Co-authored-by: Aleksandr Volochnev <a.volochnev@gmail.com>
Co-authored-by: Mick Semb Wever <mck@apache.org>
Co-authored-by: Josh McKenzie <jmckenzie@apache.org>
Co-authored-by: Artem Chekunov <artem.v.chekunov@gmail.com>
2024-04-04 11:56:36 +02:00
Andrés de la Peña 8fd44ca8fc Upgrade Python driver to 3.29.0
patch by Andrés de la Peña; reviewed by Berenguer Blasi for CASSANDRA-19245
2024-01-19 17:14:57 +00:00
Brandon Williams f9ebec98a2 Fix cqlshlib cython test by definining DIST_DIR
Patch by brandonwilliams, reviewed by bereng for CASSANDRA-19183
2023-12-14 08:49:23 -06:00
Mick Semb Wever fe7997884d
Write ccm clusters under test's TMPDIR
This prevents docker overlay file leakage from containers by keeping write-heavy directories in bind mounts (or volumes). It also offers better performance by avoiding the container filesystem.

 patch by Mick Semb Wever; reviewed Brandon Williams for INFRA-25202
2023-12-04 13:26:57 +01:00
Andrés de la Peña b91c0fcb6e Change cqlsh's min required Python version from 3.6+ to 3.7+
patch by Andrés de la Peña; reviewed by Brandon Williams for CASSANDRA-18960
2023-11-14 11:43:00 +00:00
Mick Semb Wever f5df4b219e
Move build and test scripts in-tree, under .build/
See .build/README.md  .Build and test scripts cover all CI activities in an CI agnostic manner. Scripts are found in non-docker and dockerised variants.

The non-docker scripts are found first under .build/ .These interact directly with ant, providing additional checks and environment setup. It is intended that what can be pushed down into the base ant build layer should be. The
debian and redhat build scripts are hidden under .build/docker because they are generally not usuable outside of their corresponding linux dists, and we don't want to encourage anything to the contrary.  Bring the artifact/deb/rpm
build scripts (and associated docker images) from cassandra-builds repo to the .build directory.  These packaging script for debian and redhat are now separated from the artifacts scripts. An additional build script check-code.sh
has been added that is solely responsible for all linter and code checks (includes owasp dependency checker).  Only JDK11 and JDK17 are supported (as JDK8 is soon to be dropped).  Scripts do not clean (or realclean) so that
scripts can be better pipelined, but `ant jar` was required to be added to circleci and ci-cassandra.a.o cqlsh-tests.  Scripts can define a custom BUILD_DIR (build.dir) which can permit running parrallel builds off the same source
(though not all tests support this, or their support for it has atrophied).  All build and test artifacts, results, and logs are found under build/ (or the BUILD_DIR).  The build local venv and .ccm directories are now also
created under build (or BUILD_DIR).  The test venv, logs and results are wiped each run.  Use a separate mktemp directory each run, under /tmp (respect /tmp responsibility, and python fails when tmpdir is on a docker volume).
Don't set CASSANDRA_HOME when running python dtests (and fail-fast if `ant artifacts` was used to build instead of `ant jar`).

The docker scripts are found lower down under .build/docker/ .These scripts re-used the non-docker scripts inside containers. The docker images are versioned controlled in the same directory as dockerfiles, and tagged by their
md5sums.  When running the docker scripts these docker images will, if not in the local registry, will first be attempted to be pulled from dockerhub and only then fallback to be built locally.  This allows the dockerfiles to be
modified in existing patches and be run in existing CI as-is.  Docker scripts timeout after one hour.  virtualenv-clone is used, re-using the python versioned venvs in the image saves time over creating new ones each run.  The inner-spliting of docker containers has been removed.  It added a lot of complexity, for the most part duplicating the splitting concept, for little performance gain.

Ant target 'generate-unified-test-report' added, used for aggregating test reports and printing a summary.

 patch by Mick Semb Wever; reviewed by Brandon Williams, Josh McKenzie, Maxim Muzafarov, Stefan Miklosovic for CASSANDRA-18133
2023-07-12 12:59:37 +02:00
Mick Semb Wever 86604f5038
Prepare for JDK17 experimental support
Removes the use of CASSANDRA_USE_JDK11 and introduces the build.xml properties `java.default` and `java.supported`.

 patch by Mick Semb Wever; reviewed by Ekaterina Dimitrova for CASSANDRA-18179
2023-02-12 20:43:46 +01:00
Ekaterina Dimitrova a0ec0ae303 Remove scripted UDFs, remove related tests or rewrite some tests to create java UDFs instead, where it makes sense
patch by Ekaterina Dimitrova; reviewed by Michael Semb Wever for CASSANDRA-18252
2023-02-12 10:18:29 -05:00
Brandon Williams 51e3149169 Upgrade cython
Patch by brandonwilliams; reviewed by bereng for CASSANDRA-18121
2023-01-20 15:27:50 -06:00
Brandon Williams 4d192f728c get newest pip in cassandra-cqlsh-tests.sh
Patch by brandonwilliams; reviewed by bereng for CASSANDRA-18121
2023-01-20 15:27:44 -06:00
Ekaterina Dimitrova 444da423d5 CirleCI: Add large Dtests and J8/J11 Java distributed tests;
Fix CQLSHLIB tests config and Python DTests split; CQLSHLIB tests should run with NUM_TOKENS=16
patch by Ekaterina Dimitrova; reviewed by Andres de la Pena for CASSANDRA-18001
2022-11-15 16:12:14 -05:00
Bereng ca00caffab Merge branch 'cassandra-4.0' into cassandra-4.1 2022-11-15 09:34:24 +01:00
Bereng 1df8174d67 Cqlshlib tests are j11 greedy
Patch by Berenguer Blasi; reviewed by Ekaterina Dimitrova and Michael Semb Wever for CASSANDRA-18039
2022-11-15 09:31:45 +01:00
Mick Semb Wever 9fe9b04d85
Merge branch 'cassandra-4.0' into cassandra-4.1
* cassandra-4.0:
  Upgrade Cython, minimum required now is 0.27.2
2022-11-10 14:42:09 +01:00
Mick Semb Wever 38806e795b
Merge branch 'cassandra-3.11' into cassandra-4.0
* cassandra-3.11:
  Upgrade Cython, minimum required now is 0.27.2
2022-11-10 14:41:34 +01:00
Mick Semb Wever a44209cf43
Merge branch 'cassandra-3.0' into cassandra-3.11
* cassandra-3.0:
  Upgrade Cython, minimum required now is 0.27.2
2022-11-10 14:40:29 +01:00
Mick Semb Wever d9ef794ef6
Upgrade Cython, minimum required now is 0.27.2
patch by Mick Semb Wever; reviewed by Berenguer Blasi for CASSANDRA-18028
2022-11-10 14:34:55 +01:00
Stefan Miklosovic ab7ee50013 ninja for CASSANDRA-17293 - moving cqlshlib.xml back 2022-02-21 17:41:42 +01:00
Brad Schoening db35833182 update Python test framework from nose to pytest
patch by Brad Schoening; reviewed by Brandon Williams, Berenguer Blasi and Stefan Miklosovic for CASSANDRA-17293
2022-02-20 17:32:11 +01:00
Ekaterina Dimitrova a3258d66bc Transfer parameters to the newly introduced configuration framework (1)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:27:37 -05:00
Mick Semb Wever 7bab2da375
Dockerise cqlshlib tests
patch by Mick Semb Wever; reviewed by Berenguer Blasi, Brandon Williams for CASSANDRA-16809
2021-08-10 10:05:48 +02:00
Mick Semb Wever 09c157e0f8
Dockerise cqlshlib tests
patch by Mick Semb Wever; reviewed by Berenguer Blasi, Brandon Williams for CASSANDRA-16809
2021-08-10 09:57:21 +02:00
Bereng b67d04b6fe
cassandra-cqlsh-tests.sh should return different return codes on circle vs jenkins
patch by Mick Semb Wever; reviewed by Berenguer Blasi for CASSANDRA-16655
2021-05-05 18:05:29 +02:00
Mick Semb Wever 1a92e4a649
Merge branch 'cassandra-3.11' into trunk 2021-03-27 00:38:31 +01:00
Mick Semb Wever 9e513390b7
Merge branch 'cassandra-3.0' into cassandra-3.11 2021-03-27 00:36:11 +01:00
Mick Semb Wever 35114d5fcc
Merge branch 'cassandra-2.2' into cassandra-3.0 2021-03-27 00:32:09 +01:00
Berenguer Blasi 0700d795bc Circleci should run cqlshlib tests as well
patch by Berenguer Blasi; reviewed by David Capwell, Ekaterina Dimitrova for CASSANDRA-16121
2020-11-05 15:43:17 -08:00
Mick Semb Wever 54472f8801
Merge branch 'cassandra-3.11' into trunk 2020-04-29 21:10:51 +02:00
Mick Semb Wever ed62641748
Use different package names for the cqlsh-tests matrix values, so final aggregated test reports are distinguished
patch by Mick Semb Wever; reviewed by David Capwell for CASSANDRA-15729
2020-04-29 21:07:33 +02:00
Mick Semb Wever bb8ec1fc10
Fix cqlsh tests running on jdk1.8 (regression from CASSANDRA-10190)
patched by Mick Semb Wever; reviewed by Yuki Morishita for CASSANDRA-15662
2020-04-06 17:44:13 +02:00
Patrick Bannister bf9a1d487b Make cqlsh and cqlshlib Python 2 & 3 compatible
Patch by Patrick Bannister; reviewed by Dinesh Joshi, Andy Tolbert and David Capwell for CASSANDRA-10190
2020-02-14 10:33:57 -08:00
Dinesh A. Joshi a9d1af96b5 Add a script to make running the cqlsh tests in cassandra repo easier
Patch by Dinesh Joshi; Reviewed by Ariel Weisberg for CASSANDRA-14951
2019-01-15 18:03:47 -05:00