[ 
https://issues.apache.org/jira/browse/CASSANDRA-16882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17419160#comment-17419160
 ] 

Andres de la Peña commented on CASSANDRA-16882:
-----------------------------------------------

[~e.dimitrova] thanks for the feedback.
{quote}Unfortunately the list of jobs became so long that going over the button 
for pre-commit jobs I can't follow anymore which jobs the arrows reach. Not 
sure we can do anything more about that unfortunately.
{quote}
Agree, I think that the approach with separate workflows is cleaner.
{quote}Also, I guess all the failures are due to the lower resources.
{quote}
Yes, I started it with low resources in an attempt to make the connections in 
the graph easier to follow, trying to highlight what tests are started by the 
pre-commit button.
{quote}It is not related really to what you do, that is the way it was setup 
from before but I was wondering - why do we have separate jobs for vnodes and 
no vnodes for the cqlsh tests, but one job for the Python DTests that triggers 
both versions?
{quote}
I have no clue about why it is that way. I have simplified it to start cqlsh 
tests with and without vnodes with a single button, as we do with dtests. I 
have also renamed the two pairs of workflows to {{javax_pre-commit_tests}} and 
{{javax_separate_tests}}, any suggestions are welcome. The approach can be 
found 
[here|https://app.circleci.com/pipelines/github/adelapena/cassandra?branch=16882-option-6-trunk-v05].

On a slight variation, 
[here|https://app.circleci.com/pipelines/github/adelapena/cassandra?branch=16882-option-7-trunk]
 I have tried to simplify the buttons for the pre-commit workflow so instead of 
a button to start the pre-commit tests we have a button to start the build, and 
the mandatory tests depend only on the build.

[~dcapwell] what do you think about the separate workflows approach?

> 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

Reply via email to