From 578aae378d9974333ac6b33608c7197673ea91c1 Mon Sep 17 00:00:00 2001
From: David Li
Date: Mon, 26 Jan 2026 17:08:16 +0900
Subject: [PATCH] ci: enable testing of driver packages requiring licenses
---
adbc_drivers_dev/generate.py | 3 +++
adbc_drivers_dev/templates/test.yaml | 23 ++++++++++++++++++++++-
2 files changed, 25 insertions(+), 1 deletion(-)
diff --git a/adbc_drivers_dev/generate.py b/adbc_drivers_dev/generate.py
index 08e2b34..d6a4e25 100644
--- a/adbc_drivers_dev/generate.py
+++ b/adbc_drivers_dev/generate.py
@@ -242,6 +242,9 @@ def process_secrets_and_permissions(self) -> "GenerateConfig":
"GCLOUD_WORKLOAD_IDENTITY_PROVIDER"
)
+ if self.private:
+ all_secrets["COLUMNAR_CLOUD_API_TOKEN"] = "COLUMNAR_CLOUD_API_TOKEN"
+
self._processed_secrets["all"] = all_secrets
# Set permissions
diff --git a/adbc_drivers_dev/templates/test.yaml b/adbc_drivers_dev/templates/test.yaml
index f16b27a..8024c1f 100644
--- a/adbc_drivers_dev/templates/test.yaml
+++ b/adbc_drivers_dev/templates/test.yaml
@@ -617,12 +617,15 @@ jobs:
needs:
- package
strategy:
- fail-fast: true
+ fail-fast: false
matrix:
include:
- { platform: linux, arch: amd64, runner: ubuntu-latest }
- { platform: macos, arch: arm64, runner: macos-latest }
- { platform: windows, arch: amd64, runner: windows-latest }
+<% if environment %>
+ environment: <{environment}>
+<% endif %>
steps:
# for now, install dbc from main
- uses: actions/setup-go@7a3fe6cf4cb3a834922a1244abfce67bcef6a0c5 # v6.2.0
@@ -668,8 +671,26 @@ jobs:
persist-credentials: false
<% endif %>
- name: load package
+ env:
+ COLUMNAR_CLOUD_API_TOKEN: ${{ secrets.COLUMNAR_CLOUD_API_TOKEN }}
+<% if secrets["build:test"] %>
+<% for name, val in secrets["build:test"].items() %>
+ <{name}>: ${{ secrets.<{val}> }}
+<% endfor %>
+<% endif %>
working-directory: <{ lang_subdir }>
run: |
+ if [[ -f ci/scripts/pre-build.sh ]]; then
+ echo "Loading pre-build"
+ ./ci/scripts/pre-build.sh test ${{ matrix.platform }} ${{ matrix.arch }}
+ fi
+
+ if [[ -f .env.ci ]]; then
+ source .env.ci
+ fi
+
+ export COLUMNAR_DRIVER_LICENSE_KEY=$(curl --silent --fail -XGET -H 'Content-Type: application/json' -H "Authorization: Bearer $COLUMNAR_CLOUD_API_TOKEN" https://heimdall.columnar.tech/trial_license)
+
pixi exec -s adbc-driver-manager -s pyarrow -s pytest python -m pytest -vs ci/test_package.py
release: