Documentation
¶
Overview ¶
Package daemon configures and starts the otfd daemon and its subsystems.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInvalidSecretLength = errors.New("secret must be 16 bytes in size")
Functions ¶
func ApplyDefaults ¶
func ApplyDefaults(cfg *Config)
Types ¶
type Config ¶
type Config struct {
AgentConfig *agent.Config
CacheConfig *inmem.CacheConfig
GithubHostname string
GithubClientID string
GithubClientSecret string
GitlabHostname string
GitlabClientID string
GitlabClientSecret string
OIDC authenticator.OIDCConfig
Secret []byte // 16-byte secret for signing URLs and encrypting payloads
SiteToken string
Host string
Address string
Database string
MaxConfigSize int64
SSL bool
CertFile, KeyFile string
EnableRequestLogging bool
DevMode bool
DisableScheduler bool
RestrictOrganizationCreation bool
SiteAdmins []string
SkipTLSVerification bool
// skip checks for latest terraform version
DisableLatestChecker *bool
tokens.GoogleIAPConfig
}
Config configures the otfd daemon. Descriptions of each field can be found in the flag definitions in ./cmd/otfd
type Daemon ¶
type Daemon struct {
Config
logr.Logger
*sql.DB
organization.OrganizationService
team.TeamService
user.UserService
tokens.TokensService
variable.VariableService
vcsprovider.VCSProviderService
state.StateService
workspace.WorkspaceService
module.ModuleService
internal.HostnameService
configversion.ConfigurationVersionService
run.RunService
repohooks.RepohookService
logs.LogsService
notifications.NotificationService
connections.ConnectionService
github.GithubAppService
agent.AgentService
Handlers []internal.Handlers
// contains filtered or unexported fields
}
type Startable ¶
Startable is a blocking process that is started at least once, and upon error, may need re-starting.
type Subsystem ¶
type Subsystem struct {
// Name of subsystem
Name string
// System is the underlying system to be invoked and supervised.
System Startable
// Exclusive: permit only one instance of this subsystem on an OTF
// cluster
Exclusive bool
// DB for obtaining cluster-wide lock. Must be non-nil if Exclusive is
// true.
DB subsystemDB
// Cluster-unique lock ID. Must be non-nil if Exclusive is true.
LockID *int64
logr.Logger
}
Subsystem is an automonous system subordinate to the main daemon (otfd).
Click to show internal directories.
Click to hide internal directories.