Re: Heads Up: cirrus-ci is shutting down June 1st

From: Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>, Jelte Fennema-Nio <postgres(at)jeltef(dot)nl>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org, Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, Peter Eisentraut <peter(at)eisentraut(dot)org>
Subject: Re: Heads Up: cirrus-ci is shutting down June 1st
Date: 2026-06-02 17:36:08
Message-ID: CAN55FZ385dRrSiXsOfa-Mt7OX7nGv3Pcn-MbouKacRULxy8O6Q@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On Tue, 2 Jun 2026 at 19:53, Andres Freund <andres(at)anarazel(dot)de> wrote:
>
> On 2026-06-02 15:19:02 +0300, Nazir Bilal Yavuz wrote:
> > +concurrency:
> > + group: ${{ github.workflow }}-${{ github.ref }}
> > + # Never cancel in-progress runs on master to ensure all commits are tested.
> > + cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
>
> > concurrency:
> > group: ${{ github.workflow }}-${{ github.ref }}
> > - # Never cancel in-progress runs on master to ensure all commits are tested.
> > - # FIXME: Should also not cancel REL_XY_STABLE
> > - cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
> > + # Never cancel in-progress runs on master or release branches, to ensure
> > + # all commits are tested.
> > + cancel-in-progress: ${{ github.ref != 'refs/heads/master' && !startsWith(github.ref, 'refs/heads/REL_') }}
>
> Experimenting with this, it actually seems neither really does what I think we
> want.
>
> What I think we want is cirrus' behaviour, that is, not cancel workflows that
> are on master/stable branches and, if on such a branch, allow multiple runs to
> be in progress at the same time.
>
> The above achieves not cancelling workflows on those branches, but it does so
> by waiting for the prior workflow to finish. Which I think is kinda bad,
> because it makes it entirely possible to fall further and further behind.
>
> As-is, it'd afaik still cancel workflows, as soon as more than one workflow is
> queued (we'd have to set queue: max to allow that).
>
>
> Afaict what we should do is to instead set a unique group: when on a stable
> branch. Something like
>
> concurrency:
> # For anything other than stable branches, we want there to only be one
> # workflow active for that branch. But on stable branches & master, we
> # neither want to wait for prior runs, nor to cancel them, so that each
> # separately pushed commit is tested. We achieve that by setting a unique
> # concurrency group when on such a banch.
> group: |
> ${{github.workflow }}-${{
> case(github.ref == 'refs/heads/master' ||
> (startsWith(github.ref, 'refs/heads/REL_') && endsWith(github.ref, '_STABLE')),
> github.run_id,
> github.ref)
> }}
>
> seems to do the trick.
>
>
> Does that make sense as an approach and goal?

You are right, I confirm that this approach solves the problem and I
think this solution makes sense.

From another thread:

On Tue, 2 Jun 2026 at 18:57, Andres Freund <andres(at)anarazel(dot)de> wrote:
>
> On 2026-05-28 20:08:39 +0300, Nazir Bilal Yavuz wrote:
> > > - Others have already mentioned about the potential for this to conflict
> > > with downstream uses of GH Actions. I suggest renaming the file from
> > > ci.yml to something like postgresql-ci.yml, so that there is no file
> > > naming conflict or confusion.
> >
> > Done.
>
> I find postgresql-ci.yml a bit long, how about postgres-ci.yml or pg-ci.yml?

I am okay with both but my choice would be postgres-ci.yml.

--
Regards,
Nazir Bilal Yavuz
Microsoft

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2026-06-02 17:38:00 Re: Broken build on macOS (Universal / Intel): cpuid instruction not available
Previous Message Andres Freund 2026-06-02 16:53:02 Re: Heads Up: cirrus-ci is shutting down June 1st