Re: Questions about the CI process and proposal

From: Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com>
To: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, Andy Fan <zhihui(dot)fan1213(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, tmunro(at)postgresql(dot)org
Subject: Re: Questions about the CI process and proposal
Date: 2020-03-07 09:12:05
Message-ID: CAB=Je-GU_xk-6k9jCvcNLfFYZs9JcXNVz5MBM5kd-w=AVFZUrA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andy>1). The test cases may succeed locally but
Andy> may be failed
Andy> in CI for some reasons

Peter> This is not a problem

I would disagree. A patch might easily make the database incompatible with
clients like JDBC.
Do current PostgreSQL tests catch that?
I don't think so.
However, that can be configured in PR CI.

Peter>You can do this now by sticking in your own travis or appveyor files
and
Peter>pushing to your own github account. I do this from time to time

Do you expect that everybody reinvents the wheel?

---

I've recently come across https://gitgitgadget.github.io/
It is a tool that converts GitHub PRs into mailing list messages (and back).

What it does it enables contributors to send patches to the mailing list by
creating PRs.

Of course, it does not replace the mailing list, however, it cross-posts
comments (e.g. it posts email responses as GitHub comments).
Sample PR: https://github.com/gitgitgadget/git/pull/525

It could significantly help contributors in the following ways:
1) One can create PR without really sending a patch (e.g. to estimate the
number of broken tests)
2) It would be much easier to test patches since the number of CI checks
can easily exceed the number of tests in make check-*.

It would help reviewers as well:
1) GitHub shows colored diffs which help to understand the patch
2) There's a "suggest change" feature which helps for cases like "fixing
typos".
3) PR shows if the patch applies at all, and it shows which tests fail
4) It opens a way to trigger extra checks. For example, PR CI could trigger
tests for **clients** like Java, C#, Ruby, etc, etc

WDYT on configuring gitgitgadget (or something like that) for PostgreSQL?

Vladimir

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2020-03-07 09:56:19 Re: [HACKERS] Moving relation extension locks out of heavyweight lock manager
Previous Message Pavel Stehule 2020-03-07 08:51:48 Re: Question: Select messages using binary format