David Capwell created CASSANDRA-15520:
-----------------------------------------

             Summary: split circle ci commands into reusable scripts which can 
be used outside of circle ci
                 Key: CASSANDRA-15520
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15520
             Project: Cassandra
          Issue Type: Improvement
          Components: Build
            Reporter: David Capwell
            Assignee: David Capwell


CircleCI is one of the main tools we use for build and test, but there is also 
ASF Jenkins and many people run builds in their own companies as well. It would 
be nice to refactor the existing CircleCI yaml to delegate to a set of scripts 
which could be reused by other build systems.

I feel that we could do the following directory layout

{code}
ci - top level directory containing all scripts
 - <test type : unit, distributed> - directory containing the different build 
steps
     - <test name : eg. unit, jvm-dtest, long, etc.> - a single build with the 
required steps to run it
         - split.sh - script which takes in a output file to write to and dumps 
out all test cases (not partitioned)
         - run_partition.sh - script which takes a partitioned list of tests 
and executes the build (does not move around artifacts)
{code}

This would allow CircleCI and Jenkins to run the same way, but also acts as 
documentation for how to run some of the tests (jvm-dtest and python dtest 
upgrade tests take more time to figure out how to run).

CircleCI would also be simpler as it would mostly be the circle ci specific 
logic (partition tests, move code/test results around, etc.) calling these 
scripts.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to