Andres de la Peña created CASSANDRA-17113:
---------------------------------------------
Summary: Add flags to CircleCI generation script to setup the
workflows
Key: CASSANDRA-17113
URL: https://issues.apache.org/jira/browse/CASSANDRA-17113
Project: Cassandra
Issue Type: Task
Components: CI
Reporter: Andres de la Peña
Assignee: Andres de la Peña
CASSANDRA-16882 modified the CircleCI config to contain two separate pairs of
j8/j11 workflows. The {{pre-commit_tests}} workflows are meant for patches that
are mostly read for commit, and they have a single approval step on the Circle
GUI to run the most relevant tests. The {{separate_tests}} workflows are meant
for intermediate commits and special cases such as fixing flaky tests, and
every test group requires manual approval on the Circle GUI. Both pairs of
workflows are always created, so every commit/push creates the four workflows.
None of these workflows runs anything unless manually approved on the GUI, not
even the build.
This ticket is a followup for those changes, and it aims to implement [this
suggestion|https://lists.apache.org/thread/8bghc7ng18s83vd4m16ccpj89dy6bm7x]
about having a script that enables the relevant workflows for each use case. I
have modified the existing {{.circleci/generate.sh}} script to be able to
generate different workflows.
The new {{-p}} flag generates only the pre-commit workflows, whereas the {{-s}}
flag generates only the workflows with separate approval steps for each test
job. Both flags can be used together to generate the two pairs of workflows
({{-ps}}, {{-sp}}, etc.). The default option is generating all the workflows,
so users can decide what workflow are they going to use in the CircleCI GUI,
after pushing their changes. We can easily change the workflows that are
generated by default to use the single pair of workflows that we think is
better.
Additionally, there is a {{-r}} flag that disables the first approval step of
the generated workflows. For the {{separate_tests}} workflows it means that the
build is automatically run, but the individual steps still need to be manually
approved in the GUI. For the {{pre-commit_tests}} workflows, the {{-r}} flag
will automatically run the build and the most relevant tests.
For example, users pushing a mostly ready patch and wanting to run the tests at
maximum speed would probably want to generate their config file with
{{.circleci/generate.sh -hpr}} ({{-h}} for HIGHRES config, see CASSANDRA-16871).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]