michaelsembwever commented on code in PR #2554:
URL: https://github.com/apache/cassandra/pull/2554#discussion_r1296380653


##########
.build/config/cassandra_ci.yaml:
##########
@@ -0,0 +1,355 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Contains definitions of all pipelines and jobs (test suites) in Apache 
Cassandra's CI.
+
+# CI consists of:
+#   1. job: a set of commands to run against a list of files containing tests
+#   2. pipeline: a list of jobs that can be run in arbitrary order
+#       pipelines contain a list of JDK's they have to be run across to 
certify correctness
+
+#-----------------------------------------------------------------------------
+# IMPLEMENTATION REQUIRED PARAMETERS:
+#-----------------------------------------------------------------------------
+# We do not provide a mechanism to transform the contents of $TEST_LIST_FILE 
into $TEST_SPLIT_FILE. Implementations
+# must provide that mechanism and set that environment variable or "job->run:" 
operations will fail, unable to find a test split.
+#
+# EXPECTED FLOW ON AN AGENT:
+# 1. Populate contents of $TEST_LIST_FILE for a given job using 
"job->test_list_cmd:" piped through "job->TEST_FILTER:"
+# 2. Split up $TEST_LIST_FILE using "job->num_split_cmd:"
+# 3. Populate $TEST_SPLIT_FILE with a given split (CI implementation specific)
+# 3. Execute "job->run:" to run the given $TEST_SPLIT_FILE
+
+#-----------------------------------------------------------------------------
+# SOURCES
+#-----------------------------------------------------------------------------
+# You can configure the different sources you're using for your CI stack here; 
we default to HEAD on a given branch
+# and you should print out what SHA you checked out and built against for 
reproducibility in a subsequent  investigation.
+repos:
+  cassandra:
+    url: https://github.com/apache/cassandra
+    branch: trunk
+    sha: HEAD
+  python_dtest:
+    url: &python_dtest_url https://github.com/apache/cassandra-dtest
+    branch: &python_dtest_branch trunk
+    sha: HEAD
+  cassandra-harry:
+    url: https://github.com/apache/cassandra-harry
+    branch: trunk
+    sha: HEAD
+
+
+#-----------------------------------------------------------------------------
+# PIPELINES
+#-----------------------------------------------------------------------------
+pipelines:
+  # All jobs in the pre-commit pipeline must run within constraints and pass
+  # before a commit is merged upstream. Committers are expected to validate
+  # and sign off on this if using non-reference CI environments.
+  #
+  # Failure to do so can lead to commits being reverted.
+  - name: pre-commit
+    jdk:
+      - 11
+    jobs:
+      - unit
+      - jvm-dtest
+      - python-dtest
+      - dtest
+      - dtest-large
+      - dtest-upgrade
+      - dtest-upgrade-large
+      - long-test
+      - cqlsh-test
+
+  # The post-commit pipeline is a larger set of tests that include all 
supported JDKs.
+  # We expect different JDKs and variations on test suites to fail very rarely.
+  #
+  # Failures in these tests will be made visible on JIRA tickets shortly after
+  # test run on reference CI and committers are expected to prioritize
+  # rectifying any failures introduced by their work.
+  - name: post-commit
+    jdk:
+      - 11
+      - 17
+    jobs:
+      - unit
+      - unit-cdc
+      - compression
+      - test-oa
+      - test-system-keyspace-directory
+      - test-tries
+      - jvm-dtest
+      - jvm-dtest-upgrade
+      - dtest
+      - dtest-novnode
+      - dtest-offheap
+      - dtest-large
+      - dtest-large-novnode
+      - dtest-upgrade
+      - dtest-upgrade-large
+      - long-test
+      - cqlsh-test
+
+  # These are longer-term, much more rarely changing pieces of infrastructure 
or
+  # testing. We expect these to fail even more rarely than post-commit.
+  - name: nightly
+    jdk:
+      - 11
+      - 17
+    jobs:
+      - stress-test
+      - fqltool-test
+      - test-burn

Review Comment:
   burn is important pre/post commit as breakages do happen. but should run for 
only a few second to ensure the code is working.
   
   proper burn on longer runs would be appropriate for a nightly (or 
post-post-commit) pipeline
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to