Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inject check job into CI workflow as ultimate flag #55

Merged
merged 1 commit into from
Apr 22, 2022

Conversation

webknjaz
Copy link
Contributor

This patch adds a job that is able to accurately signal whether
all the expectations of the required jobs to succeed are met.

This job can then be used as a source of truth for judging whether
"CI passes" and can be used in the branch protection. It also plays
a role of a convenient "gate" — this is the only job that would have
to be listed in the branch protection as opposed to listing every
single job name generated by the test matrix (and they all have
different names — it's not possible to just select one test job
name).

Ref: https://github.com/re-actors/alls-green#why

This patch adds a job that is able to accurately signal whether
all the expectations of the required jobs to succeed are met.

This job can then be used as a source of truth for judging whether
"CI passes" and can be used in the branch protection. It also plays
a role of a convenient "gate" — this is the only job that would have
to be listed in the branch protection as opposed to listing every
single job name generated by the test matrix (and they all have
different names — it's not possible to just select one `test` job
name).

Ref: https://github.com/re-actors/alls-green#why
@webknjaz
Copy link
Contributor Author

@jaraco I've been using this approach in several places and it's great for projects that use branch protection. I know that pyca/cryptography does this, aio-libs/aiohttp (and some other aio-libs repos), and a few under Ansible and CherryPy.
I thought you mind be interested in having this in the skeleton.

@jaraco
Copy link
Owner

jaraco commented Apr 22, 2022

This is great and would be a good way also to enable branch protection in order to enable features like automerge. I've long bemoaned not being able to use branch protection or automerge without adding a bunch of toil to the project. I'm pleased that adding this check only adds one line to the status checks. The only thing I'd like additionally is to have a command or API call that I can invoke on a project to enable the branch protection. I just went to the settings and I don't see any way to configure these status checks even in the web UI, maybe because nothing has happened on this repo for a while. Let's give it a spin and see how it goes.

@jaraco jaraco merged commit 1a6b828 into jaraco:main Apr 22, 2022
@webknjaz
Copy link
Contributor Author

I just went to the settings and I don't see any way to configure these status checks even in the web UI, maybe because nothing has happened on this repo for a while.

@jaraco checks can be selected in the repo settings UI only after they've been reported and recorded by GH at least once. Then, auto-complete will work. It is indeed one weird bit of UX they have. I wonder if anybody shared this feedback w/ GH...

webknjaz added a commit to webknjaz/attrs that referenced this pull request Sep 23, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

I was curious about the spread of use. And I've just discovered that
it is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA and pytest projects,
a few AWS Labs projects (to my surprise). Admitedly, I maintain some
of these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/pypi--warehouse that referenced this pull request Sep 24, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

I was curious about the spread of use. And I've just discovered that
it is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA, PyCA and pytest
projects, a few AWS Labs projects. Admittedly, I maintain a few of
these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/pytest that referenced this pull request Sep 24, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

I was curious about the spread of use. And I've just discovered that
it is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA, PyCA and pytest
projects, a few AWS Labs projects. Admittedly, I maintain a few of
these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/pip-tools that referenced this pull request Oct 1, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

It is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA, PyPA, PyCA and pytest
projects, a few AWS Labs projects. Admittedly, I maintain a few of
these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Oct 14, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Oct 14, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/MyST-Parser that referenced this pull request Oct 19, 2022
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for MyST too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Jan 6, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Jan 6, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/MyST-Parser that referenced this pull request Mar 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for MyST too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Apr 27, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request May 28, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Jun 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Jun 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
webknjaz added a commit to webknjaz/cpython that referenced this pull request Jun 26, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

This action is now in use in aiohttp (and other aio-libs projects),
CherryPy, conda, coveragepy, Open edX, Towncrier some of the Ansible
repositories, pip-tools, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some of hynek's projects (like
`attrs`, `structlog`), some PyCQA, PyCA, PyPA and pytest projects, a
few AWS Labs projects. Admittedly, I maintain a few of these but it
seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

I figured, this might be useful for CPython too, which is why I'm
submitting this patch.

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.

Co-authored-by: Hugo van Kemenade <[email protected]>
webknjaz added a commit to webknjaz/pytest that referenced this pull request Dec 7, 2023
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

I was curious about the spread of use. And I've just discovered that
it is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA, PyCA and pytest
projects, a few AWS Labs projects. Admittedly, I maintain a few of
these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
Glyphack pushed a commit to Glyphack/pytest that referenced this pull request Jun 20, 2024
This adds a GHA job that reliably determines if all the required
dependencies have succeeded or not.

It also allows to reduce the list of required branch protection CI
statuses to just one — `check`. This reduces the maintenance burden
by a lot and have been battle-tested across a small bunch of projects
in its action form and in-house implementations of other people.

I was curious about the spread of use. And I've just discovered that
it is now in use in aiohttp (and other aio-libs projects), CherryPy,
some of the Ansible repositories, all of the jaraco's projects (like
`setuptools`, `importlib_metadata`), some PyCQA, PyCA and pytest
projects, a few AWS Labs projects. Admittedly, I maintain a few of
these but it seems to address some of the pain folks have:
jaraco/skeleton#55 (comment).

The story behind this is explained in more detail at
https://github.com/marketplace/actions/alls-green#why.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants