[ https://issues.apache.org/jira/browse/CASSANDRA-16882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17421279#comment-17421279 ]
Andres de la Peña commented on CASSANDRA-16882: ----------------------------------------------- {quote}I was referring to the _root_ {{start_j8_build}} [here|https://app.circleci.com/pipelines/github/adelapena/cassandra/892/workflows/894331d0-23cb-4def-9a1e-596142485c63] i.e. But it's a nit. {quote} I see. Unfortunately we can't directly connect the root {{start_j8_build}} to the leaf tests in an efficient way, we need the intermediate {{j8_build}} job to build the artifacts that will be reused by the the leaf test jobs. But it probably makes sense to rename the {{start_jx_build}} tasks to [{{start_jx_tests}}|https://app.circleci.com/pipelines/github/adelapena/cassandra/911/workflows/83c749c8-e61b-4f32-a49f-48ab268da4fc] or, probably better, [{{start_pre-commit_tests}}|https://app.circleci.com/pipelines/github/adelapena/cassandra/912/workflows/c867a240-19e5-4588-82d4-7bf9b81764f4]. [Here|https://app.circleci.com/pipelines/github/adelapena/cassandra?branch=16882-option-7-trunk-v04] is the set of workflows generated by every commit with the last changes. > Save CircleCI resources with optional test jobs > ----------------------------------------------- > > Key: CASSANDRA-16882 > URL: https://issues.apache.org/jira/browse/CASSANDRA-16882 > Project: Cassandra > Issue Type: Task > Components: CI > Reporter: Andres de la Peña > Assignee: Andres de la Peña > Priority: Normal > > This ticket implements the addition of approval steps in the CircleCI > workflows as it was proposed in [this > email|https://lists.apache.org/thread.html/r57bab800d037c087af01b3779fd266d83b538cdd29c120f74a5dbe63%40%3Cdev.cassandra.apache.org%3E] > sent to the dev list: > The current CircleCI configuration automatically runs the unit tests, JVM > dtests and cqhshlib tests. This is done by default for every commit or, with > some configuration, for every push. > Along the lifecycle of a ticket it is quite frequent to have multiple commits > and pushes, all running these test jobs. I'd say that frequently it is not > necessary to run the tests for some of those intermediate commits and pushes. > For example, one can show proofs of concept, or have multiple rounds of > review before actually running the tests. Running the tests for every change > can produce an unnecessary expense of CircleCI resources. > I think we could make running those tests optional, as well as clearly > specifying in the documentation what are the tests runs that are mandatory > before actually committing. We could do this in different ways: > # Make the entire CircleCI workflow optional, so the build job requires > manual approval. Once the build is approved the mandatory test jobs would > be run without any further approval, exactly as it's currently done. > # Make all the test jobs optional, so every test job requires manual > approval, and the documentation specifies which tests are mandatory in the > final steps of a ticket. > # Make all the mandatory test jobs depend on a single optional job, so we > have a single button to optionally run all the mandatory tests. > I think any of these changes, or a combination of them, would significantly > reduce the usage of resources without making things less tested. The only > downside I can think of is that we would need some additional clicks on the > CircleCI GUI. -- 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