config

package
v0.11.71 Latest Latest
Warning

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

Go to latest
Published: Nov 6, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetConnectionsSchema added in v0.11.55

func GetConnectionsSchema() (string, error)

Types

type AdjustConnection added in v0.11.30

type AdjustConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (AdjustConnection) GetName added in v0.11.30

func (c AdjustConnection) GetName() string

type AirtableConnection added in v0.11.49

type AirtableConnection struct {
	Name        string `yaml:"name" json:"name" mapstructure:"name"`
	BaseID      string `yaml:"base_id" json:"base_id" mapstructure:"base_id"`
	AccessToken string `yaml:"access_token" json:"access_token" mapstructure:"access_token"`
}

func (AirtableConnection) GetName added in v0.11.49

func (c AirtableConnection) GetName() string

type AppsflyerConnection added in v0.11.35

type AppsflyerConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (AppsflyerConnection) GetName added in v0.11.35

func (c AppsflyerConnection) GetName() string

type AthenaConnection added in v0.11.21

type AthenaConnection struct {
	Name             string `yaml:"name" json:"name" mapstructure:"name"`
	AccessKey        string `yaml:"access_key" json:"access_key" mapstructure:"access_key"`
	SecretKey        string `yaml:"secret_key" json:"secret_key" mapstructure:"secret_key"`
	QueryResultsPath string `yaml:"query_results_path" json:"query_results_path" mapstructure:"query_results_path"`
	Region           string `yaml:"region" json:"region" mapstructure:"region"`
	Database         string `yaml:"database" json:"database,omitempty" mapstructure:"database"`
}

func (AthenaConnection) GetName added in v0.11.22

func (c AthenaConnection) GetName() string

type AwsConnection added in v0.11.20

type AwsConnection struct {
	Name      string `yaml:"name" json:"name" mapstructure:"name"`
	AccessKey string `yaml:"access_key" json:"access_key" mapstructure:"access_key"`
	SecretKey string `yaml:"secret_key" json:"secret_key" mapstructure:"secret_key"`
}

func (AwsConnection) GetName added in v0.11.22

func (c AwsConnection) GetName() string

type ChessConnection added in v0.11.49

type ChessConnection struct {
	Name    string   `yaml:"name" json:"name" mapstructure:"name"`
	Players []string `yaml:"players" json:"players" mapstructure:"players"`
}

func (ChessConnection) GetName added in v0.11.49

func (c ChessConnection) GetName() string

type Config

type Config struct {
	DefaultEnvironmentName  string                 `yaml:"default_environment" json:"default_environment_name" mapstructure:"default_environment_name"`
	SelectedEnvironmentName string                 `yaml:"-" json:"selected_environment_name" mapstructure:"selected_environment_name"`
	SelectedEnvironment     *Environment           `yaml:"-" json:"selected_environment" mapstructure:"selected_environment"`
	Environments            map[string]Environment `yaml:"environments" json:"environments" mapstructure:"environments"`
	// contains filtered or unexported fields
}

func LoadFromFile

func LoadFromFile(fs afero.Fs, path string) (*Config, error)

func LoadOrCreate

func LoadOrCreate(fs afero.Fs, path string) (*Config, error)

func (*Config) AddConnection added in v0.11.22

func (c *Config) AddConnection(environmentName, name, connType string, creds map[string]interface{}) error

func (*Config) DeleteConnection added in v0.11.22

func (c *Config) DeleteConnection(environmentName, connectionName string) error

func (*Config) GetEnvironmentNames added in v0.11.4

func (c *Config) GetEnvironmentNames() []string

func (*Config) GetSecretByKey

func (c *Config) GetSecretByKey(key string) (string, error)

func (*Config) Persist

func (c *Config) Persist() error

func (*Config) PersistToFs

func (c *Config) PersistToFs(fs afero.Fs) error

func (*Config) SelectEnvironment

func (c *Config) SelectEnvironment(name string) error

type Connections

type Connections struct {
	AwsConnection       []AwsConnection                 `yaml:"aws,omitempty" json:"aws,omitempty" mapstructure:"aws"`
	AthenaConnection    []AthenaConnection              `yaml:"athena,omitempty" json:"athena,omitempty" mapstructure:"athena"`
	GoogleCloudPlatform []GoogleCloudPlatformConnection `yaml:"google_cloud_platform,omitempty" json:"google_cloud_platform,omitempty" mapstructure:"google_cloud_platform"`
	Snowflake           []SnowflakeConnection           `yaml:"snowflake,omitempty" json:"snowflake,omitempty" mapstructure:"snowflake"`
	Postgres            []PostgresConnection            `yaml:"postgres,omitempty" json:"postgres,omitempty" mapstructure:"postgres"`
	RedShift            []RedshiftConnection            `yaml:"redshift,omitempty" json:"redshift,omitempty" mapstructure:"redshift"`
	MsSQL               []MsSQLConnection               `yaml:"mssql,omitempty" json:"mssql,omitempty" mapstructure:"mssql"`
	Databricks          []DatabricksConnection          `yaml:"databricks,omitempty" json:"databricks,omitempty" mapstructure:"databricks"`
	Synapse             []SynapseConnection             `yaml:"synapse,omitempty" json:"synapse,omitempty" mapstructure:"synapse"`
	Mongo               []MongoConnection               `yaml:"mongo,omitempty" json:"mongo,omitempty" mapstructure:"mongo"`
	MySQL               []MySQLConnection               `yaml:"mysql,omitempty" json:"mysql,omitempty" mapstructure:"mysql"`
	Notion              []NotionConnection              `yaml:"notion,omitempty" json:"notion,omitempty" mapstructure:"notion"`
	HANA                []HANAConnection                `yaml:"hana,omitempty" json:"hana,omitempty" mapstructure:"hana"`
	Shopify             []ShopifyConnection             `yaml:"shopify,omitempty" json:"shopify,omitempty" mapstructure:"shopify"`
	Gorgias             []GorgiasConnection             `yaml:"gorgias,omitempty" json:"gorgias,omitempty" mapstructure:"gorgias"`
	Klaviyo             []KlaviyoConnection             `yaml:"klaviyo,omitempty" json:"klaviyo,omitempty" mapstructure:"klaviyo"`
	Adjust              []AdjustConnection              `yaml:"adjust,omitempty" json:"adjust,omitempty" mapstructure:"adjust"`
	Generic             []GenericConnection             `yaml:"generic,omitempty" json:"generic,omitempty" mapstructure:"generic"`
	FacebookAds         []FacebookAdsConnection         `yaml:"facebookads,omitempty" json:"facebookads,omitempty" mapstructure:"facebookads"`
	Stripe              []StripeConnection              `yaml:"stripe,omitempty" json:"stripe,omitempty" mapstructure:"stripe"`
	Appsflyer           []AppsflyerConnection           `yaml:"appsflyer,omitempty" json:"appsflyer,omitempty" mapstructure:"appsflyer"`
	Kafka               []KafkaConnection               `yaml:"kafka,omitempty" json:"kafka,omitempty" mapstructure:"kafka"`
	DuckDB              []DuckDBConnection              `yaml:"duckdb,omitempty" json:"duckdb,omitempty" mapstructure:"duckdb"`
	Hubspot             []HubspotConnection             `yaml:"hubspot,omitempty" json:"hubspot,omitempty" mapstructure:"hubspot"`
	GoogleSheets        []GoogleSheetsConnection        `yaml:"google_sheets,omitempty" json:"google_sheets,omitempty" mapstructure:"google_sheets"`
	Chess               []ChessConnection               `yaml:"chess,omitempty" json:"chess,omitempty" mapstructure:"chess"`
	Airtable            []AirtableConnection            `yaml:"airtable,omitempty" json:"airtable,omitempty" mapstructure:"airtable"`
	Zendesk             []ZendeskConnection             `yaml:"zendesk,omitempty" json:"zendesk,omitempty" mapstructure:"zendesk"`
	S3                  []S3Connection                  `yaml:"s3,omitempty" json:"s3,omitempty" mapstructure:"s3"`
	Slack               []SlackConnection               `yaml:"slack,omitempty" json:"slack,omitempty" mapstructure:"slack"`
	// contains filtered or unexported fields
}

func (*Connections) ConnectionsSummaryList added in v0.11.22

func (c *Connections) ConnectionsSummaryList() map[string]string

func (*Connections) Exists added in v0.11.22

func (c *Connections) Exists(name string) bool

type DatabricksConnection added in v0.11.20

type DatabricksConnection struct {
	Name    string `yaml:"name"  json:"name" mapstructure:"name"`
	Token   string `yaml:"token" json:"token" mapstructure:"token"`
	Path    string `yaml:"path"  json:"path" mapstructure:"path"`
	Host    string `yaml:"host"  json:"host" mapstructure:"host"`
	Port    int    `yaml:"port"  json:"port" mapstructure:"port" jsonschema:"default=443"`
	Catalog string `yaml:"catalog"  json:"catalog" mapstructure:"catalog"`
	Schema  string `yaml:"schema"  json:"schema" mapstructure:"schema"`
}

func (DatabricksConnection) GetName added in v0.11.22

func (c DatabricksConnection) GetName() string

type DuckDBConnection added in v0.11.41

type DuckDBConnection struct {
	Name string `yaml:"name" json:"name" mapstructure:"name"`
	Path string `yaml:"path" json:"path" mapstructure:"path"`
}

func (DuckDBConnection) GetName added in v0.11.41

func (d DuckDBConnection) GetName() string

type Environment

type Environment struct {
	Connections *Connections `yaml:"connections" json:"connections" mapstructure:"connections"`
}

func (*Environment) GetSecretByKey

func (e *Environment) GetSecretByKey(key string) (string, error)

type FacebookAdsConnection added in v0.11.30

type FacebookAdsConnection struct {
	Name        string `yaml:"name" json:"name" mapstructure:"name"`
	AccessToken string `yaml:"access_token" json:"access_token" mapstructure:"access_token"`
	AccountID   string `yaml:"account_id" json:"account_id" mapstructure:"account_id"`
}

func (FacebookAdsConnection) GetName added in v0.11.30

func (c FacebookAdsConnection) GetName() string

type GenericConnection

type GenericConnection struct {
	Name  string `yaml:"name" json:"name" mapstructure:"name"`
	Value string `yaml:"value" json:"value" mapstructure:"value"`
}

func (GenericConnection) GetName added in v0.11.22

func (c GenericConnection) GetName() string

func (GenericConnection) MarshalJSON

func (c GenericConnection) MarshalJSON() ([]byte, error)

type GoogleCloudPlatformConnection

type GoogleCloudPlatformConnection struct {
	Name               string `yaml:"name" json:"name" mapstructure:"name"`
	ServiceAccountJSON string `yaml:"service_account_json" json:"service_account_json,omitempty" mapstructure:"service_account_json"`
	ServiceAccountFile string `yaml:"service_account_file" json:"service_account_file,omitempty" mapstructure:"service_account_file"`
	ProjectID          string `yaml:"project_id" json:"project_id" mapstructure:"project_id"`
	Location           string `yaml:"location" json:"location,omitempty" mapstructure:"location"`
	// contains filtered or unexported fields
}

func (*GoogleCloudPlatformConnection) GetCredentials

func (c *GoogleCloudPlatformConnection) GetCredentials() *google.Credentials

func (GoogleCloudPlatformConnection) GetName added in v0.11.22

func (GoogleCloudPlatformConnection) MarshalJSON

func (c GoogleCloudPlatformConnection) MarshalJSON() ([]byte, error)

func (GoogleCloudPlatformConnection) MarshalYAML added in v0.11.22

func (c GoogleCloudPlatformConnection) MarshalYAML() (interface{}, error)

func (*GoogleCloudPlatformConnection) SetCredentials

func (c *GoogleCloudPlatformConnection) SetCredentials(cred *google.Credentials)

type GoogleSheetsConnection added in v0.11.47

type GoogleSheetsConnection struct {
	Name            string `yaml:"name" json:"name" mapstructure:"name"`
	CredentialsPath string `yaml:"credentials_path" json:"credentials_path" mapstructure:"credentials_path"`
}

func (GoogleSheetsConnection) GetName added in v0.11.47

func (c GoogleSheetsConnection) GetName() string

type GorgiasConnection added in v0.11.5

type GorgiasConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	Domain string `yaml:"domain" json:"domain" mapstructure:"domain"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
	Email  string `yaml:"email" json:"email" mapstructure:"email"`
}

func (GorgiasConnection) GetName added in v0.11.22

func (c GorgiasConnection) GetName() string

type HANAConnection added in v0.8.2

type HANAConnection struct {
	Name     string `yaml:"name" json:"name" mapstructure:"name"`
	Username string `yaml:"username" json:"username" mapstructure:"username"`
	Password string `yaml:"password" json:"password" mapstructure:"password"`
	Host     string `yaml:"host"     json:"host" mapstructure:"host"`
	Port     int    `yaml:"port"     json:"port" mapstructure:"port"`
	Database string `yaml:"database" json:"database" mapstructure:"database"`
}

func (HANAConnection) GetName added in v0.11.22

func (c HANAConnection) GetName() string

type HubspotConnection added in v0.11.43

type HubspotConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (HubspotConnection) GetName added in v0.11.43

func (c HubspotConnection) GetName() string

type KafkaConnection added in v0.11.40

type KafkaConnection struct {
	Name             string `yaml:"name" json:"name" mapstructure:"name"`
	BootstrapServers string `yaml:"bootstrap_servers" json:"bootstrap_servers" mapstructure:"bootstrap_servers"`
	GroupID          string `yaml:"group_id" json:"group_id" mapstructure:"group_id"`
	SecurityProtocol string `yaml:"security_protocol" json:"security_protocol,omitempty" mapstructure:"security_protocol"`
	SaslMechanisms   string `yaml:"sasl_mechanisms" json:"sasl_mechanisms,omitempty" mapstructure:"sasl_mechanisms"`
	SaslUsername     string `yaml:"sasl_username" json:"sasl_username,omitempty" mapstructure:"sasl_username"`
	SaslPassword     string `yaml:"sasl_password" json:"sasl_password,omitempty" mapstructure:"sasl_password"`
	BatchSize        string `yaml:"batch_size" json:"batch_size,omitempty" mapstructure:"batch_size"`
	BatchTimeout     string `yaml:"batch_timeout" json:"batch_timeout,omitempty" mapstructure:"batch_timeout"`
}

func (KafkaConnection) GetName added in v0.11.40

func (c KafkaConnection) GetName() string

type KlaviyoConnection added in v0.11.26

type KlaviyoConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (KlaviyoConnection) GetName added in v0.11.26

func (c KlaviyoConnection) GetName() string

type MongoConnection added in v0.7.2

type MongoConnection struct {
	Name     string `yaml:"name" json:"name" mapstructure:"name"`
	Username string `yaml:"username" json:"username" mapstructure:"username"`
	Password string `yaml:"password" json:"password" mapstructure:"password"`
	Host     string `yaml:"host"     json:"host" mapstructure:"host"`
	Port     int    `yaml:"port"     json:"port" mapstructure:"port" jsonschema:"default=27017"`
	Database string `yaml:"database" json:"database" mapstructure:"database"`
}

func (MongoConnection) GetName added in v0.11.22

func (c MongoConnection) GetName() string

type MsSQLConnection added in v0.5.6

type MsSQLConnection struct {
	Name     string `yaml:"name" json:"name" mapstructure:"name"`
	Username string `yaml:"username" json:"username" mapstructure:"username"`
	Password string `yaml:"password" json:"password" mapstructure:"password"`
	Host     string `yaml:"host"     json:"host" mapstructure:"host"`
	Port     int    `yaml:"port"     json:"port" mapstructure:"port" jsonschema:"default=1433"`
	Database string `yaml:"database" json:"database" mapstructure:"database"`
}

func (MsSQLConnection) GetName added in v0.11.22

func (c MsSQLConnection) GetName() string

type MySQLConnection added in v0.7.8

type MySQLConnection struct {
	Name     string `yaml:"name" json:"name" mapstructure:"name"`
	Username string `yaml:"username" json:"username" mapstructure:"username"`
	Password string `yaml:"password" json:"password" mapstructure:"password"`
	Host     string `yaml:"host"     json:"host" mapstructure:"host"`
	Port     int    `yaml:"port"     json:"port" mapstructure:"port" jsonschema:"default=3306"`
	Database string `yaml:"database" json:"database" mapstructure:"database"`
	Driver   string `yaml:"driver" json:"driver,omitempty" mapstructure:"driver"`
}

func (MySQLConnection) GetName added in v0.11.22

func (c MySQLConnection) GetName() string

type Named added in v0.11.22

type Named interface {
	GetName() string
}

type NotionConnection added in v0.7.9

type NotionConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (NotionConnection) GetName added in v0.11.22

func (c NotionConnection) GetName() string

type PostgresConnection added in v0.5.0

type PostgresConnection struct {
	Name         string `yaml:"name" json:"name" mapstructure:"name"`
	Username     string `yaml:"username" json:"username" mapstructure:"username"`
	Password     string `yaml:"password" json:"password" mapstructure:"password"`
	Host         string `yaml:"host" json:"host" mapstructure:"host"`
	Port         int    `yaml:"port" json:"port" mapstructure:"port" jsonschema:"default=5432"`
	Database     string `yaml:"database" json:"database" mapstructure:"database"`
	Schema       string `yaml:"schema" json:"schema" mapstructure:"schema"`
	PoolMaxConns int    `yaml:"pool_max_conns" json:"pool_max_conns" mapstructure:"pool_max_conns" default:"10"`
	SslMode      string `yaml:"ssl_mode" json:"ssl_mode" mapstructure:"ssl_mode" default:"disable"`
}

func (PostgresConnection) GetName added in v0.11.22

func (c PostgresConnection) GetName() string

type RedshiftConnection added in v0.11.55

type RedshiftConnection struct {
	Name         string `yaml:"name" json:"name" mapstructure:"name"`
	Username     string `yaml:"username" json:"username" mapstructure:"username"`
	Password     string `yaml:"password" json:"password" mapstructure:"password"`
	Host         string `yaml:"host" json:"host" mapstructure:"host"`
	Port         int    `yaml:"port" json:"port" mapstructure:"port" jsonschema:"default=5439"`
	Database     string `yaml:"database" json:"database" mapstructure:"database"`
	Schema       string `yaml:"schema" json:"schema" mapstructure:"schema"`
	PoolMaxConns int    `yaml:"pool_max_conns" json:"pool_max_conns" mapstructure:"pool_max_conns" default:"10"`
	SslMode      string `yaml:"ssl_mode" json:"ssl_mode" mapstructure:"ssl_mode" default:"disable"`
}

func (RedshiftConnection) GetName added in v0.11.55

func (c RedshiftConnection) GetName() string

type S3Connection added in v0.11.55

type S3Connection struct {
	Name            string `yaml:"name" json:"name" mapstructure:"name"`
	BucketName      string `yaml:"bucket_name" json:"bucket_name" mapstructure:"bucket_name"`
	PathToFile      string `yaml:"path_to_file" json:"path_to_file" mapstructure:"path_to_file"`
	AccessKeyID     string `yaml:"access_key_id" json:"access_key_id" mapstructure:"access_key_id"`
	SecretAccessKey string `yaml:"secret_access_key" json:"secret_access_key" mapstructure:"secret_access_key"`
}

func (S3Connection) GetName added in v0.11.55

func (c S3Connection) GetName() string

type ShopifyConnection added in v0.11.5

type ShopifyConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	URL    string `yaml:"url" json:"url" mapstructure:"url"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (ShopifyConnection) GetName added in v0.11.22

func (c ShopifyConnection) GetName() string

type SlackConnection added in v0.11.62

type SlackConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (SlackConnection) GetName added in v0.11.62

func (c SlackConnection) GetName() string

type SnowflakeConnection

type SnowflakeConnection struct {
	Name      string `yaml:"name" json:"name" mapstructure:"name"`
	Account   string `yaml:"account" json:"account" mapstructure:"account"`
	Username  string `yaml:"username" json:"username" mapstructure:"username"`
	Password  string `yaml:"password" json:"password" mapstructure:"password"`
	Region    string `yaml:"region" json:"region" mapstructure:"region"`
	Role      string `yaml:"role" json:"role" mapstructure:"role"`
	Database  string `yaml:"database" json:"database" mapstructure:"database"`
	Schema    string `yaml:"schema" json:"schema" mapstructure:"schema"`
	Warehouse string `yaml:"warehouse" json:"warehouse" mapstructure:"warehouse"`
}

func (SnowflakeConnection) GetName added in v0.11.22

func (c SnowflakeConnection) GetName() string

func (SnowflakeConnection) MarshalJSON

func (c SnowflakeConnection) MarshalJSON() ([]byte, error)

type StripeConnection added in v0.11.32

type StripeConnection struct {
	Name   string `yaml:"name" json:"name" mapstructure:"name"`
	APIKey string `yaml:"api_key" json:"api_key" mapstructure:"api_key"`
}

func (StripeConnection) GetName added in v0.11.32

func (c StripeConnection) GetName() string

type SynapseConnection added in v0.11.55

type SynapseConnection struct {
	Name     string `yaml:"name" json:"name" mapstructure:"name"`
	Username string `yaml:"username" json:"username" mapstructure:"username"`
	Password string `yaml:"password" json:"password" mapstructure:"password"`
	Host     string `yaml:"host"     json:"host" mapstructure:"host"`
	Port     int    `yaml:"port"     json:"port" mapstructure:"port" jsonschema:"default=1433"`
	Database string `yaml:"database" json:"database" mapstructure:"database"`
}

func (SynapseConnection) GetName added in v0.11.55

func (c SynapseConnection) GetName() string

type ZendeskConnection added in v0.11.61

type ZendeskConnection struct {
	Name       string `yaml:"name" json:"name" mapstructure:"name"`
	APIToken   string `yaml:"api_token" json:"api_token" mapstructure:"api_token"`
	Email      string `yaml:"email" json:"email" mapstructure:"email"`
	OAuthToken string `yaml:"oauth_token" json:"oauth_token" mapstructure:"oauth_token"`
	Subdomain  string `yaml:"subdomain" json:"subdomain" mapstructure:"subdomain"`
}

func (ZendeskConnection) GetName added in v0.11.61

func (c ZendeskConnection) GetName() string

Jump to

Keyboard shortcuts

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