Add persistent OAuth credential sessions #385
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # | |
| # This workflow calls the main distribution pipeline from DuckDB to build, test and (optionally) release the extension | |
| # | |
| name: Main Extension Distribution Pipeline | |
| on: | |
| push: | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || '' }}-${{ github.base_ref || '' }}-${{ github.ref != 'refs/heads/main' && github.sha || '' }} | |
| cancel-in-progress: true | |
| # jobs: | |
| # duckdb-stable-build: | |
| # name: Build extension binaries | |
| # uses: duckdb/extension-ci-tools/.github/workflows/_extension_distribution.yml@v1.5.5 | |
| # with: | |
| # duckdb_version: v1.5.5 | |
| # ci_tools_version: v1.5.5 | |
| # extension_name: vgi | |
| jobs: | |
| header-hygiene: | |
| name: Header hygiene (fan-out guardrail) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Enforce heavy-include denylist on hub headers | |
| # Fails if a guarded hub header (see GUARDED_HEADERS in the script / | |
| # CLAUDE.md "Header hygiene") transitively pulls in the Arrow umbrella. | |
| # Pure source scan — no build needed. | |
| run: python3 scripts/header_reach.py --check | |
| duckdb-stable-build: | |
| name: Build extension binaries | |
| uses: Query-farm-haybarn/haybarn-extension-ci-tools/.github/workflows/_extension_distribution.yml@haybarn | |
| secrets: | |
| vcpkg_token: ${{ secrets.HAYBARN_VCPKG_TOKEN }} | |
| with: | |
| duckdb_version: haybarn-v1.5.5-rc1 | |
| ci_tools_version: haybarn | |
| override_ci_tools_repository: 'Query-farm-haybarn/haybarn-extension-ci-tools' | |
| extension_name: vgi | |
| use_prebuilt_images: true | |
| use_prebuilt_wasm_image: true | |
| # The embedded Iroh connector is compiled from the pinned Rust source as | |
| # part of the extension, so both native Linux and WASM builders need the | |
| # prebuilt image variants that contain Cargo. `extra_toolchains` controls | |
| # inline image builds, but does not alter an already-published image. | |
| image_variant: rust | |
| wasm_image_variant: rust | |
| prebuilt_image_tag: v1.5.5 | |
| extra_toolchains: parser_tools;rust | |
| # NOTE: this pipeline does NOT run the VGI integration suite. | |
| # | |
| # Every integration .test file carries `require-env VGI_TEST_WORKER`, so | |
| # with no worker on the runner all ~300 SKIP and this job means "built + | |
| # header-clean" — nothing more. That is a real gap, and it is covered by | |
| # .github/workflows/integration.yml instead, which owns its own steps and | |
| # can therefore install the fixture workers before testing. | |
| # | |
| # It was briefly attempted here, via `test_env_variables` plus a | |
| # `ci_fixtures` prerequisite on the inherited `make test_<type>` target. | |
| # It cannot work: the reusable distribution workflow exposes no hook that | |
| # runs a COMMAND before the test step, and on the Linux leg the tests run | |
| # inside `docker run ... make test_release`, a fresh container the install | |
| # never reached. The result was worse than skipping — VGI_TEST_WORKER was | |
| # set, so ~300 tests FAILED against a worker path that did not exist. |