[RFC,v2,0/3] Add a recheck framework to pw-ci

Message ID 20231107203158.1261199-1-aconole@redhat.com (mailing list archive)
Headers
Series Add a recheck framework to pw-ci |

Message

Aaron Conole Nov. 7, 2023, 8:31 p.m. UTC
  This allows users to send repsonse emails to patches and force
rebuilds of the workflow in github actions.

This has been tested with the following:

for recheck in $(./recheck_tool --pw-project=dpdk \
                                --pw-instance=patches.dpdk.org \
                                --filter=github-robot --state=1 | \
                                jq -rc '.rechecks[]'); do
    ./github_restart --pw-project=dpdk --pw-instance=patches.dpdk.org \
                     --series-id=$(echo "$recheck" | \
                                  jq -rc '.series_id') \
                     --repository=ovsrobot/dpdk \
                     --sha=$(echo "$recheck" | jq -rc '.sha') \
                     --github-token=XXXXXXXX
done

And succesffully rebuilt 6457922075 from series 29774 which does have
a recheck-request (we used the iol-unit-amd64-testing filter to do
the test).

To be added is a way to filter on specific workflows so we don't
restart all workflows associated with the run for those projects which
have more than one workflow.

This can be combined with a second call of the recheck tool to advance
the state.  When the series id is provided, the tool will update the
gap_sync column for the specific row and future calls to
github_monitor script will then scan the new run.

Aaron Conole (3):
  pw_mon: improve command line options
  recheck: Add a recheck parser for patchwork comments
  github: add a tool for restarting checks

 github_restart   | 141 +++++++++++++++++++++++++++++++++++++++++++++++
 pw_mon           | 123 ++++++++++++++++++++++++++++++++++++-----
 recheck_tool     | 100 +++++++++++++++++++++++++++++++++
 series_db_lib.sh |  80 ++++++++++++++++++++++++++-
 4 files changed, 428 insertions(+), 16 deletions(-)
 create mode 100755 github_restart
 create mode 100755 recheck_tool