You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/dbt_project/dbt-platform-fusion-onboarding.md
+31-3Lines changed: 31 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -150,6 +150,7 @@ execution modes:
150
150
| --- | --- | --- |
151
151
| Local CLI |`local`| Uses `DbtCliResource` and the bundled `dbt_project/`. |
152
152
| dbt Platform |`dbt_platform`| Uses `DbtCloudWorkspace` to load dbt Platform artifacts and launch ad hoc dbt Platform runs. |
153
+
| dbt Platform observe-only |`dbt_platform` + `DBT_PLATFORM_OBSERVE_ONLY=true`| Loads dbt Platform asset specs and polls completed dbt Platform jobs, but does not register Dagster dbt jobs or launch ad hoc dbt Platform runs. |
153
154
154
155
Configure these Dagster environment variables after the dbt Platform project and
155
156
environment exist:
@@ -159,11 +160,34 @@ environment exist:
159
160
|`DBT_ORCHESTRATION_MODE`| Set to `dbt_platform` to switch Dagster from local dbt CLI execution to dbt Platform. |
|`DBT_PLATFORM_ENVIRONMENT_ID`| dbt Platform environment id Dagster should use for ad hoc runs. |
163
+
|`DBT_PLATFORM_ENVIRONMENT_ID`| dbt Platform environment id Dagster should load and observe. Use the production environment when dbt Platform owns scheduled production builds and freshness jobs. |
163
164
|`DBT_PLATFORM_TOKEN`| dbt Platform service token. |
|`DBT_PLATFORM_ADHOC_JOB_NAME`| Optional ad hoc job name Dagster creates/uses in dbt Platform. |
166
167
|`DBT_PLATFORM_POLL_INTERVAL_SECONDS`| Optional polling interval for external dbt Platform run observations. |
168
+
|`DBT_PLATFORM_OBSERVE_ONLY`| Optional strict production mode. Set to `true` when Dagster should observe dbt Platform jobs without exposing Dagster dbt asset jobs. |
169
+
170
+
## Dagster Observe-Only Mode
171
+
172
+
Use observe-only mode for production once dbt Platform owns the scheduled dbt
In this mode Dagster loads dbt model asset specs from the configured dbt
182
+
Platform environment and registers the dbt Cloud polling sensor. The sensor
183
+
polls completed dbt Platform runs for that project and environment, skips
184
+
Dagster-created ad hoc jobs, reads each run's `run_results.json`, and records
185
+
model-level Dagster asset materializations. Dagster does not register the
186
+
`dbt_*_models_job` jobs in this mode, so scheduled `dbt build` and
187
+
`dbt source freshness` runs remain owned by dbt Platform.
188
+
189
+
Keep observe-only disabled in local development or in a dedicated CI/ad hoc
190
+
environment if you still want Dagster to trigger dbt Platform runs.
167
191
168
192
Cutover path:
169
193
@@ -172,7 +196,9 @@ Cutover path:
172
196
3. Set `DBT_ORCHESTRATION_MODE=dbt_platform` and configure the `DBT_PLATFORM_*` variables in Dagster.
173
197
4. Validate Dagster code location load; Dagster should fetch the manifest from dbt Platform.
174
198
5. Materialize a small dbt asset selection from Dagster to confirm ad hoc dbt Platform runs work.
175
-
6. Remove local dbt project bundling and `dbt deps` fallback after the API path is stable.
199
+
6. For production, set `DBT_PLATFORM_ENVIRONMENT_ID` to the production environment and `DBT_PLATFORM_OBSERVE_ONLY=true`.
200
+
7. Confirm the `dbt_cloud_<account>_<project>_<environment>__run_status_sensor` sensor records asset materializations from the dbt Platform production build job.
201
+
8. Remove local dbt project bundling and `dbt deps` fallback after the API path is stable.
176
202
177
203
## Remaining Manual Checklist
178
204
@@ -186,5 +212,7 @@ Cutover path:
186
212
-[ ] Configure PR, production build, and source freshness jobs.
187
213
-[ ] Add dbt Platform PR check and `Dagster CI / Test Dagster` to GitHub branch protection.
0 commit comments