-
Notifications
You must be signed in to change notification settings - Fork 198
59 lines (48 loc) · 1.72 KB
/
min-deps-parse.yml
File metadata and controls
59 lines (48 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Installs dbt-databricks at lowest-direct dependency resolution and
# runs `dbt parse`, catching constraint ranges that admit versions
# the code doesn't support. Default test paths resolve to
# highest-compatible versions, so lower bounds drift untested.
#
# Runs post-merge rather than on PRs because fork PRs cannot issue
# the OIDC token required by the JFrog proxy and protected runner.
# Acceptable compromise: a bad merge sits on the target branch
# briefly before the gate fires, but well before any release tag.
name: Min-Deps Parse
on:
push:
branches:
- "main"
- "*.latest"
workflow_dispatch:
permissions:
id-token: write
contents: read
defaults:
run:
shell: bash
jobs:
parse-at-lowest-direct:
name: dbt parse at lowest-direct resolution
runs-on:
group: databricks-protected-runner-group
labels: linux-ubuntu-latest
timeout-minutes: 5
steps:
- name: Check out the repository
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Setup JFrog PyPI Proxy
uses: ./.github/actions/setup-jfrog-pypi
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.10"
- name: Install uv
uses: astral-sh/setup-uv@38f3f104447c67c051c4a08e39b64a148898af3a # v4
with:
cache-local-path: ~/.cache/uv
- name: Install dbt-databricks at lowest-direct dep resolution
run: |
uv venv --python 3.10
uv pip install --resolution lowest-direct .
- name: dbt parse against min-deps fixture
run: .venv/bin/dbt parse --project-dir tests/min_deps_smoke --profiles-dir tests/min_deps_smoke