You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by "rusackas (via GitHub)" <gi...@apache.org> on 2026/09/04 01:10:10 UTC
[PR] ci: add ASF GitHub Actions allowlist check [superset]
rusackas opened a new pull request, #43844:
URL: https://github.com/apache/superset/pull/43844
### SUMMARY
Adds [`apache/infrastructure-actions/allowlist-check`](https://github.com/apache/infrastructure-actions/tree/main/allowlist-check) as a CI workflow. It scans every `uses:` ref under `.github/` and fails the PR if any action isn't on the ASF org-level allowlist. Without this, a non-allowlisted action fails at "Set up job" with no logs and no notification, and only after merge. It also emits a non-failing `::warning::` when a pinned SHA's allowlist entry is about to expire. Airflow, Iceberg, Hive, Avro, Thrift and a dozen other ASF projects already run it.
Design notes:
- SHA-pinned to `allowlist-check/v1.0.0` (matches Superset's pinning convention and passes zizmor's default `unpinned-uses` policy with no config exemption). The `allowlist-check/` directory is byte-identical between that tag and current `main`, so nothing is lost by pinning. The action always fetches the allowlist itself from `main` at runtime, so the pin only fixes the checker code, not the list.
- Triggers on `.github/**` changes (PR + push) and a weekly cron, so expiry warnings surface even when nothing under `.github/` changes.
Running the checker locally against `master` turned up two things, both fixed here so the first run is green:
1. **Removed a dead, non-allowlisted workflow file.** `.github/actions/change-detector/label-draft-pr.yml` is a *workflow* that landed under `.github/actions/` in #40159 (a dependabot bump, so it was almost certainly a stray file in that commit). GitHub only runs workflows from `.github/workflows/`, nothing references it, and it pins `actions-ecosystem/action-add-labels@v1`, which is not on the allowlist. It has never run and cannot run from where it sits.
2. **Bumped three expiring docker pins** in `.github/actions/setup-docker/action.yml`. Their allowlist entries expire 2026-09-24, at which point every docker build job would start failing at startup. Bumped to the latest allowlisted releases: `docker/login-action` v4.2.0 โ v4.6.0, `docker/setup-buildx-action` v4.1.0 โ v4.3.0, `docker/setup-qemu-action` v4.1.0 โ v4.2.0. All three are plain node actions with no nested `uses:` steps, so there's no transitive-allowlist gap (the trap we hit in #42506). The login and buildx SHAs are already in use in `mirror-service-images.yml`.
### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
N/A (CI only)
### TESTING INSTRUCTIONS
Local run of the upstream checker against this branch:
```
Checking 37 unique action ref(s) against the ASF allowlist:
All 37 unique action refs are on the ASF allowlist
```
Against `master` the same run reports 1 violation (the stray file above) and 3 expiry warnings (the docker pins). Also verified: `zizmor` (regular persona) reports no findings on the new workflow or the edited action, `action-validator` accepts the workflow, and `pre-commit` passes. The new workflow will run on this PR itself since it touches `.github/**`.
### ADDITIONAL INFORMATION
- [ ] Has associated issue:
- [ ] Required feature flags:
- [ ] Changes UI
- [ ] Includes DB Migration (follow approval process in [SIP-59](https://github.com/apache/superset/issues/13351))
- [ ] Migration is atomic, supports rollback & is backwards-compatible
- [ ] Confirm DB migration upgrade and downgrade tested
- [ ] Runtime estimates and downtime expectations provided
- [ ] Introduces new feature or API
- [ ] Removes existing feature or API
๐ค Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01NLZYbrAretVP1D2VaD9HEE
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "sadpandajoe (via GitHub)" <gi...@apache.org>.
sadpandajoe commented on code in PR #43844:
URL: https://github.com/apache/superset/pull/43844#discussion_r3930701974
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
+ push:
+ branches:
+ - "master"
+ - "[0-9].[0-9]*"
+ paths:
+ - ".github/**"
+ schedule:
+ # Weekly, so allowlist expirations are surfaced even when nothing under
+ # .github/ has changed.
+ - cron: "0 6 * * 1"
+
+permissions:
+ contents: read
+
+# cancel previous workflow jobs for PRs
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ asf-allowlist-check:
+ runs-on: ubuntu-26.04
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+ with:
+ persist-credentials: false
+
+ - name: Check action refs against the ASF allowlist
+ uses: apache/infrastructure-actions/allowlist-check@61dcea11f19e2bbe1263f14d72235e8da17d3ad0 # allowlist-check/v1.0.0
Review Comment:
This only scans `**/*.yml`, but GitHub also accepts workflow files ending in `.yaml`. A PR can add a non-allowlisted `uses:` reference in `.github/workflows/example.yaml`; this workflow will run because of the `.github/**` trigger, but the checker will skip that file and pass. Could this pass a glob covering both extensions (and add a negative `.yaml` fixture)?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "hainenber (via GitHub)" <gi...@apache.org>.
hainenber commented on PR #43844:
URL: https://github.com/apache/superset/pull/43844#issuecomment-5535036037
Thanks Evan. This is a good addition for compliance but is there a way to surface any allowlist alerts to wider audience? I reckon only folks coming to failed CI workflow runs would know about these alerts, CMIIW though.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "netlify[bot] (via GitHub)" <gi...@apache.org>.
netlify[bot] commented on PR #43844:
URL: https://github.com/apache/superset/pull/43844#issuecomment-5544652292
### <span aria-hidden="true">โ
</span> Deploy Preview for *superset-docs-preview* ready!
| Name | Link |
|:-:|------------------------|
|<span aria-hidden="true">๐จ</span> Latest commit | f8c299a8891fd2de52c4837fa90f991b0030d37a |
|<span aria-hidden="true">๐</span> Latest deploy log | https://app.netlify.com/projects/superset-docs-preview/deploys/6a9b0976ede6b5000832fff7 |
|<span aria-hidden="true">๐</span> Deploy Preview | [https://deploy-preview-43844--superset-docs-preview.netlify.app](https://deploy-preview-43844--superset-docs-preview.netlify.app) |
|<span aria-hidden="true">๐ฑ</span> Preview on mobile | <details><summary> Toggle QR Code... </summary><br /><br /><br /><br />_Use your smartphone camera to open QR code link._</details> |
|<span aria-hidden="true">๐ค</span> Make changes | [Run an agent on this branch](https://app.netlify.com/projects/superset-docs-preview/agent-runs#q1YqKMrPLShRslJS0lFKKkrMS84AspMz9ROL03QTc3Lyy3Myi0t0kzNSk7OBKlJSC3LyKz1TgGrMEi2TDCzNzVJTUs2STA0MDCyMjdLS0syVagE) |
---
<!-- [superset-docs-preview Preview](https://deploy-preview-43844--superset-docs-preview.netlify.app) -->
_To edit notification comments on pull requests, go to your [Netlify project configuration](https://app.netlify.com/projects/superset-docs-preview/configuration/notifications#deploy-notifications)._
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43844:
URL: https://github.com/apache/superset/pull/43844#issuecomment-5534270715
<!-- Bito Reply -->
The flagged issue is correct. The `pull_request` event in GitHub Actions does not trigger for `ready_for_review` by default, meaning a draft PR converted to ready might bypass this check if it doesn't trigger other events. To resolve this, you should add `ready_for_review` to the `types` list under the `pull_request` trigger in `.github/workflows/asf-allowlist-check.yml`.
```yaml
pull_request:
types:
- opened
- synchronize
- ready_for_review
paths:
- ".github/**"
```
I have checked the PR comments, and there are no other comments to address. Would you like me to implement this change for you?
**.github/workflows/asf-allowlist-check.yml**
```
pull_request:
types:
- opened
- synchronize
- ready_for_review
paths:
- ".github/**"
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43844:
URL: https://github.com/apache/superset/pull/43844#discussion_r3943077899
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
+ push:
+ branches:
+ - "master"
+ - "[0-9].[0-9]*"
+ paths:
+ - ".github/**"
+ schedule:
+ # Weekly, so allowlist expirations are surfaced even when nothing under
+ # .github/ has changed.
+ - cron: "0 6 * * 1"
+
+permissions:
+ contents: read
+
+# cancel previous workflow jobs for PRs
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ asf-allowlist-check:
+ runs-on: ubuntu-26.04
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+ with:
+ persist-credentials: false
+
+ - name: Check action refs against the ASF allowlist
+ uses: apache/infrastructure-actions/allowlist-check@61dcea11f19e2bbe1263f14d72235e8da17d3ad0 # allowlist-check/v1.0.0
Review Comment:
@hainenber we are already consistent as it happens, all 49 workflows are `.yml`. The only `.yaml` under `.github/` is `issue_label_bot.yaml`, which is not a workflow, so the wider glob is just there so a future one cannot slip past the check.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "hainenber (via GitHub)" <gi...@apache.org>.
hainenber commented on code in PR #43844:
URL: https://github.com/apache/superset/pull/43844#discussion_r3934263106
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
+ push:
+ branches:
+ - "master"
+ - "[0-9].[0-9]*"
+ paths:
+ - ".github/**"
+ schedule:
+ # Weekly, so allowlist expirations are surfaced even when nothing under
+ # .github/ has changed.
+ - cron: "0 6 * * 1"
+
+permissions:
+ contents: read
+
+# cancel previous workflow jobs for PRs
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ asf-allowlist-check:
+ runs-on: ubuntu-26.04
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+ with:
+ persist-credentials: false
+
+ - name: Check action refs against the ASF allowlist
+ uses: apache/infrastructure-actions/allowlist-check@61dcea11f19e2bbe1263f14d72235e8da17d3ad0 # allowlist-check/v1.0.0
Review Comment:
IMO, we can use this occasion to consolidate all GHA workflow files to end with `.yaml` or `.yml`, depends on the majority/consensus.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "codeant-ai-for-open-source[bot] (via GitHub)" <gi...@apache.org>.
codeant-ai-for-open-source[bot] commented on code in PR #43844:
URL: https://github.com/apache/superset/pull/43844#discussion_r3930055720
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
Review Comment:
**Suggestion:** The default pull request events exclude `ready_for_review`, so draft PRs can become reviewable without running this required allowlist check. [logic error]
**Assessment:** ๐ `Major` ยท ๐ `Occurrence: Sometimes`
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=e4859fe7550c460b912efce6fde6f3f6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=e4859fe7550c460b912efce6fde6f3f6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** .github/workflows/asf-allowlist-check.yml
**Line:** 10:12
**Comment:**
*Logic Error: The default pull request events exclude `ready_for_review`, so draft PRs can become reviewable without running this required allowlist check.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43844&comment_hash=257fe0e191b871aaca307ffeb27c4eff93a9745e391a3a5951303f08f9948d8c&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43844&comment_hash=257fe0e191b871aaca307ffeb27c4eff93a9745e391a3a5951303f08f9948d8c&reaction=dislike'>๐</a>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43844:
URL: https://github.com/apache/superset/pull/43844#discussion_r3936731143
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
Review Comment:
Good catch โ added `ready_for_review` to the trigger types so a draft-to-ready transition without new commits still runs the check.
##########
.github/workflows/asf-allowlist-check.yml:
##########
@@ -0,0 +1,42 @@
+# Verifies that every `uses:` ref under .github/ is on the ASF Infrastructure
+# GitHub Actions allowlist (apache/infrastructure-actions). An action that is
+# not allowlisted fails at "Set up job" with no logs and no notification, so
+# this check surfaces the problem at PR time instead. It also warns (without
+# failing) when a pinned SHA's allowlist entry is about to expire.
+name: ASF Allowlist Check
+
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - ".github/**"
+ push:
+ branches:
+ - "master"
+ - "[0-9].[0-9]*"
+ paths:
+ - ".github/**"
+ schedule:
+ # Weekly, so allowlist expirations are surfaced even when nothing under
+ # .github/ has changed.
+ - cron: "0 6 * * 1"
+
+permissions:
+ contents: read
+
+# cancel previous workflow jobs for PRs
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ asf-allowlist-check:
+ runs-on: ubuntu-26.04
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+ with:
+ persist-credentials: false
+
+ - name: Check action refs against the ASF allowlist
+ uses: apache/infrastructure-actions/allowlist-check@61dcea11f19e2bbe1263f14d72235e8da17d3ad0 # allowlist-check/v1.0.0
Review Comment:
@sadpandajoe Confirmed โ the underlying action defaults to `.github/**/*.yml`. Passed `scan-glob: ".github/**/*.y*ml"` so it covers both extensions without a brace pattern (Python's glob module doesn't support those). No fixture to add here since the scanning logic itself lives in apache/infrastructure-actions, not this repo.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas merged PR #43844:
URL: https://github.com/apache/superset/pull/43844
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] ci: add ASF GitHub Actions allowlist check [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43844:
URL: https://github.com/apache/superset/pull/43844#issuecomment-5534231282
AI Code Review is in progress (usually takes 3 to 15 minutes unless it's a very large PR).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org