11# **what?**
22# Runs code quality checks, unit tests, and verifies python build on
3- # all code commited to the repository. This workflow does not require
4- # any secrets — dependencies are served from a pre-populated cache
5- # (see warmDepsCache.yml), so it works for both internal and fork PRs .
3+ # all code commited to the repository. Dependencies are served from a
4+ # pre-populated cache (see warmDepsCache.yml) when available, with a
5+ # JFrog OIDC fallback when the cache is cold .
66
77# **why?**
88# Ensure code for dbt meets a certain quality standard.
2929 workflow_dispatch :
3030
3131permissions :
32+ id-token : write
3233 contents : read
3334
3435# will cancel previous workflows triggered by the same event and for the same ref for PRs or same SHA otherwise
6061 uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
6162
6263 - name : Setup Python Dependencies
64+ id : deps
6365 uses : ./.github/actions/setup-python-deps
6466
67+ - name : Setup JFrog PyPI Proxy (fallback)
68+ if : steps.deps.outputs.cache-hit != 'true'
69+ uses : ./.github/actions/setup-jfrog-pypi
70+
6571 - name : Set up Python
6672 uses : actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
6773 with :
8591 timeout-minutes : 15
8692
8793 permissions :
94+ id-token : write
8895 # Gives the action the necessary permissions for publishing new
8996 # comments in pull requests.
9097 pull-requests : write
@@ -106,8 +113,13 @@ jobs:
106113 uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
107114
108115 - name : Setup Python Dependencies
116+ id : deps
109117 uses : ./.github/actions/setup-python-deps
110118
119+ - name : Setup JFrog PyPI Proxy (fallback)
120+ if : steps.deps.outputs.cache-hit != 'true'
121+ uses : ./.github/actions/setup-jfrog-pypi
122+
111123 - name : Set up Python ${{ matrix.python-version }}
112124 uses : actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
113125 with :
@@ -150,8 +162,13 @@ jobs:
150162 uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
151163
152164 - name : Setup Python Dependencies
165+ id : deps
153166 uses : ./.github/actions/setup-python-deps
154167
168+ - name : Setup JFrog PyPI Proxy (fallback)
169+ if : steps.deps.outputs.cache-hit != 'true'
170+ uses : ./.github/actions/setup-jfrog-pypi
171+
155172 - name : Set up Python
156173 uses : actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
157174 with :
0 commit comments