You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ru...@apache.org on 2026/08/28 23:20:13 UTC
(superset) 01/01: feat(ci): add nightly-only opt-out for heavy testcontainers dialects
This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a commit to branch feat/testcontainers-nightly-only-gating
in repository https://gitbox.apache.org/repos/asf/superset.git
commit 72c6f950534bee44935de2c5a980957a009bfeca
Author: Superset Dev <de...@superset.apache.org>
AuthorDate: Fri Aug 28 16:19:18 2026 -0700
feat(ci): add nightly-only opt-out for heavy testcontainers dialects
A future dialect whose image is too heavy for per-PR CI (a multi-service
cluster, a many-GB image, a slow licensed installer) can set
nightly_only: true on its matrix entry to run only on the cron or a
manual workflow_dispatch, never on pull_request. No existing dialect
uses it yet -- this just lays the groundwork for candidates like SAP
HANA, Teradata, or Apache Druid.
---
.github/workflows/testcontainers.yml | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/.github/workflows/testcontainers.yml b/.github/workflows/testcontainers.yml
index 9cb6a92426f..770b58e5339 100644
--- a/.github/workflows/testcontainers.yml
+++ b/.github/workflows/testcontainers.yml
@@ -9,6 +9,13 @@ name: Testcontainers
# just from Superset's changes) and on pull_request, scoped via `paths` to
# only PRs that actually touch this test suite or the workflow itself, so
# unrelated PRs across the repo are never affected.
+#
+# A matrix entry can set `nightly_only: true` to run only on the cron (or a
+# manual workflow_dispatch), never on pull_request -- for a dialect whose
+# image is too heavy (a multi-service cluster, a many-GB image, a slow
+# licensed installer) to justify adding its wall-clock/resource cost to
+# every PR that merely touches this suite. Omit the field entirely for a
+# normal dialect; it isn't nightly-only by default.
permissions:
contents: read
@@ -35,6 +42,15 @@ concurrency:
jobs:
testcontainers:
runs-on: ubuntu-26.04
+ # Matrix expansion happens before this is evaluated, so `matrix` here is
+ # this specific dialect's own entry, not the whole list -- a dialect
+ # without `nightly_only` set evaluates the left side true (unset is
+ # null, and `null != true` is true) and always runs; one WITH it set
+ # only runs on the cron or a manual dispatch, never on pull_request.
+ if: >-
+ matrix.nightly_only != true ||
+ github.event_name == 'schedule' ||
+ github.event_name == 'workflow_dispatch'
strategy:
fail-fast: false
matrix: