config

package
v61.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2017 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LoadCertificate

func LoadCertificate(certPath, keyPath, password string) (tls.Certificate, error)

func LoadCertificatePool

func LoadCertificatePool(certFiles ...string) (*x509.CertPool, error)

Types

type IngestorConfig

type IngestorConfig struct {
	Port uint16 `yaml:"port"`

	GitHub struct {
		WebhookSecretTokens []string `yaml:"webhook_secret_tokens"`
	} `yaml:"github"`

	PubSub struct {
		ProjectName    string `yaml:"project_name"`
		Topic          string `yaml:"topic"`
		PrivateKeyPath string `yaml:"private_key_path"`
	} `yaml:"pubsub"`

	Metrics struct {
		SentryDSN     string `yaml:"sentry_dsn"`
		DatadogAPIKey string `yaml:"datadog_api_key"`
		Environment   string `yaml:"environment"`
	} `yaml:"metrics"`

	Identity struct {
		CACertificatePath    string `yaml:"ca_certificate_path"`
		CertificatePath      string `yaml:"certificate_path"`
		PrivateKeyPath       string `yaml:"private_key_path"`
		PrivateKeyPassphrase string `yaml:"private_key_passphrase"`
	} `yaml:"identity"`
}

func LoadIngestorConfig

func LoadIngestorConfig(bs []byte) (*IngestorConfig, error)

func (*IngestorConfig) IsSentryConfigured

func (c *IngestorConfig) IsSentryConfigured() bool

func (*IngestorConfig) Validate

func (c *IngestorConfig) Validate() []error

type IngestorOpts

type IngestorOpts struct {
	ConfigFile cmdflag.FileFlag `long:"config-file" description:"path to config file" value-name:"PATH"`
}

type WorkerConfig

type WorkerConfig struct {
	WorkDir                     string        `yaml:"work_dir"`
	RepositoryDiscoveryInterval time.Duration `yaml:"repository_discovery_interval"`
	CredentialCounterInterval   time.Duration `yaml:"credential_counter_interval"`

	Whitelist []string `yaml:"whitelist"`

	GitHub struct {
		AccessToken    string `yaml:"access_token"`
		PrivateKeyPath string `yaml:"private_key_path"`
		PublicKeyPath  string `yaml:"public_key_path"`
	} `yaml:"github"`

	PubSub struct {
		ProjectName   string `yaml:"project_name"`
		PublicKeyPath string `yaml:"public_key_path"`
		FetchHint     struct {
			Subscription string `yaml:"subscription"`
		} `yaml:"fetch_hint"`
	} `yaml:"pubsub"`

	Metrics struct {
		SentryDSN     string `yaml:"sentry_dsn"`
		DatadogAPIKey string `yaml:"datadog_api_key"`
		Environment   string `yaml:"environment"`
	} `yaml:"metrics"`

	Slack struct {
		DefaultURL     string            `yaml:"default_webhook_url"`
		DefaultChannel string            `yaml:"default_channel"`
		TeamURLs       map[string]string `yaml:"team_webhook_urls"`
	} `yaml:"slack"`

	MySQL struct {
		Username             string `yaml:"username"`
		Password             string `yaml:"password"`
		Hostname             string `yaml:"hostname"`
		Port                 uint16 `yaml:"port"`
		DBName               string `yaml:"db_name"`
		ServerName           string `yaml:"server_name"`
		CACertificatePath    string `yaml:"ca_certificate_path"`
		CertificatePath      string `yaml:"certificate_path"`
		PrivateKeyPath       string `yaml:"private_key_path"`
		PrivateKeyPassphrase string `yaml:"private_key_passphrase"`
	} `yaml:"mysql"`

	Identity struct {
		CACertificatePath    string `yaml:"ca_certificate_path"`
		CertificatePath      string `yaml:"certificate_path"`
		PrivateKeyPath       string `yaml:"private_key_path"`
		PrivateKeyPassphrase string `yaml:"private_key_passphrase"`
	} `yaml:"identity"`

	API struct {
		BindIP   string `yaml:"bind_ip"`
		BindPort uint16 `yaml:"bind_port"`
	} `yaml:"rpc_server"`

	Rolodex struct {
		ServerAddress string `yaml:"server_address"`
		ServerPort    uint16 `yaml:"server_port"`
	} `yaml:"rolodex"`
}

func LoadWorkerConfig

func LoadWorkerConfig(bs []byte) (*WorkerConfig, error)

func (*WorkerConfig) Validate

func (c *WorkerConfig) Validate() []error

type WorkerOpts

type WorkerOpts struct {
	ConfigFile cmdflag.FileFlag `long:"config-file" description:"path to config file" value-name:"PATH" required:"true"`
}

Jump to

Keyboard shortcuts

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