Help us shape the future of Go! Take the 2026 Go Developer Survey

config

package
v0.7.6 Latest Latest
Warning

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

Go to latest
Published: Jul 23, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultUIBranding = UIBrandingConfig{
	FaviconURL: "https://dsc-misc.s3.amazonaws.com/img/acyl-favicon.png",
	LogoURL:    "https://s3.amazonaws.com/dsc-misc/img/acyl.png",
	LogoHeight: "30",
	LogoStyle:  "d-inline-block align-top mr-1",
	LogoLink:   "https://github.com/dollarshaveclub/acyl",
	LogoAlt:    "Acyl Chloride",
	Title:      "Acyl UI",
}

Functions

This section is empty.

Types

type AWSConfig

type AWSConfig struct {
	Region     string
	MaxRetries uint
}

type AWSCreds

type AWSCreds struct {
	AccessKeyID     string
	SecretAccessKey string
}

type BackendConfig

type BackendConfig struct {
	AminoAddr string
}

type ConsulConfig

type ConsulConfig struct {
	Addr       string
	LockPrefix string
}

type GithubConfig

type GithubConfig struct {
	HookSecret    string
	Token         string
	TypePath      string // relative path within repo to look for acyl.yml (QAType definition)
	AppID         uint
	PrivateKeyPEM []byte
	AppHookSecret string
	OAuth         GithubOAuthConfig
}

type GithubOAuthConfig added in v0.7.6

type GithubOAuthConfig struct {
	Enforce           bool
	AppInstallationID uint
	ClientID          string
	ClientSecret      string
	CookieAuthKey     [32]byte
	CookieEncKey      [32]byte
	UserTokenEncKey   [32]byte
}

type K8sClientConfig added in v0.7.0

type K8sClientConfig struct {
	JWTPath string
}

K8sClientConfig models the configuration required for a kubernetes client to communicate with the API server

type K8sConfig

type K8sConfig struct {
	// GroupBindings is a map of k8s group name to cluster role
	GroupBindings map[string]string
	// PrivilegedRepoWhitelist is a list of GitHub repositories whose environment service accounts will be given cluster-admin privileges
	PrivilegedRepoWhitelist []string
	// SecretInjections is a map of secret name to value that will be injected into each environment namespace
	SecretInjections map[string]K8sSecret
}

func (*K8sConfig) ProcessGroupBindings

func (kc *K8sConfig) ProcessGroupBindings(gbstr string) error

ProcessGroupBindings takes a comma-separated list of group bindings and populates the GroupBindings field

func (*K8sConfig) ProcessPrivilegedRepos

func (kc *K8sConfig) ProcessPrivilegedRepos(repostr string) error

ProcessPrivilegedRepos takes a comma-separated list of repositories and populates the PrivilegedRepoWhitelist field

func (*K8sConfig) ProcessSecretInjections

func (kc *K8sConfig) ProcessSecretInjections(sf SecretFetcher, injstr string) error

ProcessSecretInjections takes a comma-separated list of injections and uses sf to populate the SecretInjections field

type K8sSecret

type K8sSecret struct {
	Data map[string][]byte `json:"data"`
	Type string            `json:"type"`
}

K8sSecret models a kubernetes secret

type MigrateConfig

type MigrateConfig struct {
	CheckPending  bool
	MetaDataTable string
}

type PGConfig

type PGConfig struct {
	PostgresURI            string
	PostgresMigrationsPath string
	DatadogServiceName     string
	EnableTracing          bool
}

type S3Config

type S3Config struct {
	Region, Bucket, KeyPrefix string
}

type SecretFetcher

type SecretFetcher interface {
	Get(id string) ([]byte, error)
}

SecretFetcher describes an object that fetches secrets

type SecretsConfig

type SecretsConfig struct {
	Backend pvc.SecretsClientOption
	Mapping string
}

SecretsConfig contains configuration values for retrieving secrets

type ServerConfig

type ServerConfig struct {
	HTTPSPort                  uint
	HTTPSAddr                  string
	DisableTLS                 bool
	TLSCert                    tls.Certificate
	WordnetPath                string
	FuranAddrs                 []string
	APIKeys                    []string
	ReaperIntervalSecs         uint
	EventRateLimitPerSecond    uint
	GlobalEnvironmentLimit     uint
	HostnameTemplate           string
	DatadogServiceName         string
	DebugEndpoints             bool
	DebugEndpointsIPWhitelists []string
	NitroFeatureFlag           bool
	NotificationsDefaultsJSON  string
	OperationTimeoutOverride   time.Duration
	UIBaseURL                  string
	UIPath                     string
	UIBaseRoute                string
	UIBrandingJSON             string
}

type SlackConfig

type SlackConfig struct {
	Username                    string
	IconURL                     string
	Token                       string
	Channel                     string
	MapperRepo                  string
	MapperRepoRef               string
	MapperMapPath               string
	MapperUpdateIntervalSeconds uint
}

type UIBrandingConfig added in v0.7.5

type UIBrandingConfig struct {
	FaviconURL string `json:"favicon_url"`
	LogoURL    string `json:"logo_url"`
	LogoHeight string `json:"logo_height"`
	LogoWidth  string `json:"logo_width"`
	LogoStyle  string `json:"logo_style"`
	LogoLink   string `json:"logo_link"`
	LogoAlt    string `json:"logo_alt"`
	Title      string `json:"title"`
	TitleStyle string `json:"title_style"`
}

UIBrandingConfig defines optional non-default branding for UI pages

type VaultConfig

type VaultConfig struct {
	Addr        string
	Token       string
	TokenAuth   bool
	K8sAuth     bool
	K8sJWTPath  string
	K8sAuthPath string
	K8sRole     string
	AppID       string
	UserIDPath  string
}

Jump to

Keyboard shortcuts

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