Creates data classes for dbt run results.
The Data Classes
Similarities and Differences between CLI and RPC solids
Both of the classes CliRunResults and RpcRunResults inherit the class RunResults, where most of the metadata is contained.
RunResults includes JSON logs, duration of the dbt process, and a list of results for each model that was run. Some dbt commands (for both CLI and RPC) do not actually run anything on the models; in these cases, the list of results is empty.
CliRunResults uniquely includes the shell return code and (for dbt run and dbt test only) summary statistics of run. Some dbt CLI commands do not actually run anything on the models; in these cases, the summary statistics are None.
RpcRunResults uniquely includes the state and timestamps of the dbt process on the RPC server.
- Merge branch 'master' into dbt--improve-cli-results
- Adds CliRunResult and testing.
- Adds comment for pre_exec.
- Refactors CLI solids and types.
- Removes use of attr from dbt RPC resources.
- Fixes and uses PolledRunResult for RPC solids.
- Renames PolledRunResult to RpcRunResult.
- Renamings of classes and files.
Test Plan: buildkite ofc
Reviewers: max, sashank, johann
Reviewed By: max
Differential Revision: https://dagster.phacility.com/D4610