dbt

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2022 License: MPL-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Column

type Column struct {
	Name        string `json:"name"`
	Description string `json:"description"`
	Meta        struct {
	} `json:"meta"`
	DataType interface{}   `json:"data_type"`
	Quote    interface{}   `json:"quote"`
	Tags     []interface{} `json:"tags"`
}

type DalNodeConfig

type DalNodeConfig struct {
	Expose bool `json:"expose"`
}

type DbtProfile

type DbtProfile struct {
	Target  string            `json:"target"`
	Outputs map[string]Output `json:"outputs"`
}

func Profile

func Profile(profile string) DbtProfile

type DbtProfiles

type DbtProfiles map[string]DbtProfile

type ModelConfig

type ModelConfig struct {
	Materialized string `json:"materialized"`
	Staging      struct {
		Materialized string `json:"materialized"`
	} `json:"staging"`
}

type Node

type Node struct {
	RawSql       string `json:"raw_sql"`
	Compiled     bool   `json:"compiled"`
	ResourceType string `json:"resource_type"`
	DependsOn    struct {
		Macros []interface{} `json:"macros"`
		Nodes  []string      `json:"nodes"`
	} `json:"depends_on"`
	Config           NodeConfig `json:"config"`
	Database         string     `json:"database"`
	Schema           string     `json:"schema"`
	Fqn              []string   `json:"fqn"`
	UniqueID         string     `json:"unique_id"`
	PackageName      string     `json:"package_name"`
	RootPath         string     `json:"root_path"`
	Path             string     `json:"path"`
	OriginalFilePath string     `json:"original_file_path"`
	Name             string     `json:"name"`
	Alias            string     `json:"alias"`
	Checksum         struct {
		Name     string `json:"name"`
		Checksum string `json:"checksum"`
	} `json:"checksum"`
	Tags        []interface{}     `json:"tags"`
	Refs        [][]string        `json:"refs"`
	Sources     []interface{}     `json:"sources"`
	Description string            `json:"description"`
	Columns     map[string]Column `json:"columns"`
	Meta        struct {
	} `json:"meta"`
	Docs struct {
		Show bool `json:"show"`
	} `json:"docs"`
	PatchPath        string      `json:"patch_path"`
	CompiledPath     string      `json:"compiled_path"`
	BuildPath        interface{} `json:"build_path"`
	Deferred         bool        `json:"deferred"`
	UnrenderedConfig struct {
		Materialized string `json:"materialized"`
	} `json:"unrendered_config"`
	CreatedAt         float64       `json:"created_at"`
	CompiledSql       string        `json:"compiled_sql"`
	ExtraCtesInjected bool          `json:"extra_ctes_injected"`
	ExtraCtes         []interface{} `json:"extra_ctes"`
	RelationName      string        `json:"relation_name"`
}

func Manifest

func Manifest() []Node

type NodeConfig

type NodeConfig struct {
	Enabled  bool          `json:"enabled"`
	Alias    interface{}   `json:"alias"`
	Schema   interface{}   `json:"schema"`
	Database interface{}   `json:"database"`
	Tags     []interface{} `json:"tags"`
	Meta     struct {
		Dal DalNodeConfig `json:"dal"`
	} `json:"meta"`
	Materialized string `json:"materialized"`
	PersistDocs  struct {
	} `json:"persist_docs"`
	Quoting struct {
	} `json:"quoting"`
	ColumnTypes struct {
	} `json:"column_types"`
	FullRefresh    interface{}   `json:"full_refresh"`
	OnSchemaChange string        `json:"on_schema_change"`
	PostHook       []interface{} `json:"post-hook"`
	PreHook        []interface{} `json:"pre-hook"`
}

type Output

type Output struct {
	Type                   string `json:"type"`
	Account                string `json:"account"`
	User                   string `json:"user"`
	Password               string `json:"password"`
	Role                   string `json:"role"`
	Database               string `json:"database"`
	Warehouse              string `json:"warehouse"`
	Schema                 string `json:"schema"`
	Threads                int    `json:"threads"`
	ClientSessionKeepAlive bool   `json:"client_session_keep_alive"`
	QueryTag               string `json:"query_tag"`
	ConnectRetries         int    `json:"connect_retries"`
	ConnectTimeout         int    `json:"connect_timeout"`
	RetryOnDatabaseErrors  bool   `json:"retry_on_database_errors"`
	RetryAll               bool   `json:"retry_all"`
}

TODO: half of this is snowflake specific but that's fine for now

type ProjectConfig

type ProjectConfig struct {
	Name              string                 `json:"name"`
	ConfigVersion     int                    `json:"config-version"`
	Version           string                 `json:"version"`
	Profile           string                 `json:"profile"`
	ModelPaths        []string               `json:"model-paths"`
	SeedPaths         []string               `json:"seed-paths"`
	TestPaths         []string               `json:"test-paths"`
	AnalysisPaths     []string               `json:"analysis-paths"`
	MacroPaths        []string               `json:"macro-paths"`
	TargetPath        string                 `json:"target-path"`
	CleanTargets      []string               `json:"clean-targets"`
	RequireDbtVersion []string               `json:"require-dbt-version"`
	Models            map[string]ModelConfig `json:"models"`
}

func Project

func Project() ProjectConfig

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL