Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group +kubebuilder:object:generate=true +groupName=config.rig.dev
Index ¶
- Constants
- Variables
- type Auth
- type CertManagerConfig
- type Client
- type ClientDocker
- type ClientMailjet
- type ClientMongo
- type ClientOperator
- type ClientPostgres
- type ClientSMTP
- type Cluster
- type ClusterGit
- type ClusterType
- type DevRegistry
- type Email
- type EmailType
- type Environment
- type GitAuthor
- type GitCredentials
- type GitTemplates
- type HTTPSCredential
- type IngressConfig
- type Logging
- type OIDCProvider
- type OperatorConfig
- type PlatformConfig
- type PrometheusServiceMonitor
- type Repository
- type SSHCredential
- type SSO
- type ServiceConfig
- type VerticalPodAutoscaler
Constants ¶
const ( // EmailTypeNoEmail disables mail sending. EmailTypeNoEmail = "" // EmailTypeMailjet uses the mailjet API for sending emails. EmailTypeMailjet = "mailjet" // EmailTypeSMTP uses regular SMTP for sending emails. EmailTypeSMTP = "smtp" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "config.rig.dev", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Auth ¶ added in v1.5.0
type Auth struct {
// Secret specifies a secret which will be used for jwt signatures.
Secret string `json:"secret,omitempty"`
// CertificateFile specifies a path to a PEM encoded certificate file which
// will be used for validating jwt signatures.
CertificateFile string `json:"certificateFile,omitempty"`
// CertificateKeyFile specifies a path to a PEM encoded certificate key
// which will be used for jwt signatures.
CertificateKeyFile string `json:"certificateKeyFile,omitempty"`
// DisablePasswords disables password authentication. This makes sense if
// you want to require SSO, as login method.
DisablePasswords bool `json:"disablePasswords,omitempty"`
// SSO specifies single sign on configuration.
SSO SSO `json:"sso,omitempty"`
}
Auth specifies authentication configuration.
func (*Auth) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Auth.
func (*Auth) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertManagerConfig ¶
type CertManagerConfig struct {
// ClusterIssuer to use for issueing ingress certificates
ClusterIssuer string `json:"clusterIssuer,omitempty"`
// CreateCertificateResources specifies wether to create Certificate
// resources. If this is not enabled we will use ingress annotations. This
// is handy in environments where the ingress-shim isn't enabled.
CreateCertificateResources bool `json:"createCertificateResources,omitempty"`
}
func (*CertManagerConfig) DeepCopy ¶
func (in *CertManagerConfig) DeepCopy() *CertManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertManagerConfig.
func (*CertManagerConfig) DeepCopyInto ¶
func (in *CertManagerConfig) DeepCopyInto(out *CertManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Client ¶ added in v1.5.0
type Client struct {
// Postgres holds configuration for the postgres client.
Postgres ClientPostgres `json:"postgres,omitempty"`
// Mongo holds configuration for the Mongo client.
Mongo ClientMongo `json:"mongo,omitempty"`
// Docker sets the host for the Docker client.
Docker ClientDocker `json:"docker,omitempty"`
// Mailjet sets the API key and secret for the Mailjet client.
Mailjet ClientMailjet `json:"mailjet,omitempty"`
// SMTP sets the host, port, username and password for the SMTP client.
SMTP ClientSMTP `json:"smtp,omitempty"`
// Operator sets the base url for the Operator client.
Operator ClientOperator `json:"operator,omitempty"`
}
Client holds various client configuration
func (*Client) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Client.
func (*Client) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientDocker ¶ added in v1.5.0
type ClientDocker struct {
// Host where the docker daemon can be reached.
Host string `json:"host,omitempty"`
}
ClientDocker specifies the configuration for the docker client.
func (*ClientDocker) DeepCopy ¶ added in v1.5.0
func (in *ClientDocker) DeepCopy() *ClientDocker
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientDocker.
func (*ClientDocker) DeepCopyInto ¶ added in v1.5.0
func (in *ClientDocker) DeepCopyInto(out *ClientDocker)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientMailjet ¶ added in v1.5.0
type ClientMailjet struct {
// APIKey is the mailjet API key
APIKey string `json:"apiKey,omitempty"`
// SecretKey is the mailjet secret key
SecretKey string `json:"secretKey,omitempty"`
}
ClientMailjet specifes the configuration for the mailjet client.
func (*ClientMailjet) DeepCopy ¶ added in v1.5.0
func (in *ClientMailjet) DeepCopy() *ClientMailjet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientMailjet.
func (*ClientMailjet) DeepCopyInto ¶ added in v1.5.0
func (in *ClientMailjet) DeepCopyInto(out *ClientMailjet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientMongo ¶ added in v1.5.0
type ClientMongo struct {
// User is the database user used when connecting to the mongodb server.
User string `json:"user,omitempty"`
// Password is used when connecting to the mongodb server.
Password string `json:"password,omitempty"`
// Host of the mongo server. This is both the host and port.
Host string `json:"host,omitempty"`
}
ClientMongo specifies the configuration for the mongo client.
func (*ClientMongo) DeepCopy ¶ added in v1.5.0
func (in *ClientMongo) DeepCopy() *ClientMongo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientMongo.
func (*ClientMongo) DeepCopyInto ¶ added in v1.5.0
func (in *ClientMongo) DeepCopyInto(out *ClientMongo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientOperator ¶ added in v1.5.0
type ClientOperator struct {
// BaseURL is the URL used to connect to the operator API
BaseURL string `json:"baseUrl,omitempty"`
}
ClientOperator specifies the configuration for the operator client.
func (*ClientOperator) DeepCopy ¶ added in v1.5.0
func (in *ClientOperator) DeepCopy() *ClientOperator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientOperator.
func (*ClientOperator) DeepCopyInto ¶ added in v1.5.0
func (in *ClientOperator) DeepCopyInto(out *ClientOperator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientPostgres ¶ added in v1.5.0
type ClientPostgres struct {
// User is the database user used when connecting to the postgres database.
User string `json:"user,omitempty"`
// Password is the password used when connecting to the postgres database.
Password string `json:"password,omitempty"`
// Host is the host where the postgres database can be reached.
Host string `json:"host,omitempty"`
// Port is the port of the postgres database server.
Port int `json:"port,omitempty"`
// Database in the postgres server to use
Database string `json:"database,omitempty"`
// Insecure is wether to use SSL when connecting to the postgres server
Insecure bool `json:"insecure,omitempty"`
}
ClientPostgres specifies the configuration for the postgres client.
func (*ClientPostgres) DeepCopy ¶ added in v1.5.0
func (in *ClientPostgres) DeepCopy() *ClientPostgres
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientPostgres.
func (*ClientPostgres) DeepCopyInto ¶ added in v1.5.0
func (in *ClientPostgres) DeepCopyInto(out *ClientPostgres)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientSMTP ¶ added in v1.5.0
type ClientSMTP struct {
// Host is the SMTP server host.
Host string `json:"host,omitempty"`
// Port is the SMTP server port to use.
Port int `json:"port,omitempty"`
// Username used when connecting to the SMTP server.
Username string `json:"username,omitempty"`
// Password used when connecting to the SMTP server.
Password string `json:"password,omitempty"`
}
ClientSMTP specifies the configuration for the SMTP client.
func (*ClientSMTP) DeepCopy ¶ added in v1.5.0
func (in *ClientSMTP) DeepCopy() *ClientSMTP
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientSMTP.
func (*ClientSMTP) DeepCopyInto ¶ added in v1.5.0
func (in *ClientSMTP) DeepCopyInto(out *ClientSMTP)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶ added in v1.5.0
type Cluster struct {
// URL to communicate to the cluster. If set, a Token and CertificateAuthority should
// be provided as well.
URL string `json:"url,omitempty"`
// Token for communicating with the cluster. Available through a service-account's secret.
Token string `json:"token,omitempty"`
// Certificate authority for communicating with the cluster. Available through a service-account's secret.
CertificateAuthority string `json:"certificateAuthority,omitempty"`
// Type of the cluster - either `docker` or `k8s`.
Type ClusterType `json:"type,omitempty"`
// DevRegistry configuration
DevRegistry DevRegistry `json:"devRegistry,omitempty"`
// Git sets up gitops write back for this cluster.
Git ClusterGit `json:"git,omitempty"`
}
Cluster specifies cluster configuration
func (*Cluster) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterGit ¶ added in v1.5.0
type ClusterGit struct {
// URL is the git repository URL.
URL string `json:"url,omitempty"`
// Branch to commit changes to.
Branch string `json:"branch,omitempty"`
// PathPrefix path to commit to in git repository.
PathPrefix string `json:"pathPrefix,omitempty"`
// Credentials to use when connecting to git.
Credentials GitCredentials `json:"credentials,omitempty"`
// Author used when creating commits.
Author GitAuthor `json:"author,omitempty"`
// Templates used for commit messages.
Templates GitTemplates `json:"templates,omitempty"`
}
ClusterGit specifies configuration for git integration. This can be used to tie rig into a gitops setup.
func (*ClusterGit) DeepCopy ¶ added in v1.5.0
func (in *ClusterGit) DeepCopy() *ClusterGit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGit.
func (*ClusterGit) DeepCopyInto ¶ added in v1.5.0
func (in *ClusterGit) DeepCopyInto(out *ClusterGit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterType ¶ added in v1.5.0
type ClusterType string
ClusterType is a cluster type.
const ( // ClusterTypeDocker is the docker cluster type. ClusterTypeDocker ClusterType = "docker" // ClusterTypeKubernetes is the kubernetes cluster type. ClusterTypeKubernetes ClusterType = "k8s" )
type DevRegistry ¶ added in v1.5.0
type DevRegistry struct {
// Host is the host used in image names when pushing to the registry from
// outside of the cluster.
Host string `json:"host,omitempty"`
// ClusterHost is the host where the registry can be reached from within
// the cluster. Any image which is named after `Host` will be rename to use
// `ClusterHost` instead. This ensures that the image can be pulled from
// within the cluster.
ClusterHost string `json:"clusterHost,omitempty"`
}
DevRegistry specifies configuration for the dev registry support.
func (*DevRegistry) DeepCopy ¶ added in v1.5.0
func (in *DevRegistry) DeepCopy() *DevRegistry
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevRegistry.
func (*DevRegistry) DeepCopyInto ¶ added in v1.5.0
func (in *DevRegistry) DeepCopyInto(out *DevRegistry)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Email ¶ added in v1.5.0
type Email struct {
// From is who is set as the sender of rig emails.
From string `json:"from,omitempty"`
// Type is what client rig should use to send emails.
Type EmailType `json:"type,omitempty"`
}
Email holds configuration for sending emails. Either using mailjet or using SMTP
func (*Email) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Email.
func (*Email) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmailType ¶ added in v1.5.0
type EmailType string
EmailType represents a type of mailing provider
type Environment ¶ added in v1.5.3
type Environment struct {
// Cluster name the environment is hosted in.
Cluster string `json:"cluster,omitempty"`
// NamespaceTemplate is used to generate the namespace name when configuring resources.
// Default is to set the namespace equal to the project name.
NamespaceTemplate string `json:"namespace_template,omitempty"`
// Default is true if this environment should be preferred for per-environment operations.
Default bool `json:"default,omitempty"`
}
Environment configuration of a single environment.
func (*Environment) DeepCopy ¶ added in v1.5.3
func (in *Environment) DeepCopy() *Environment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Environment.
func (*Environment) DeepCopyInto ¶ added in v1.5.3
func (in *Environment) DeepCopyInto(out *Environment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitAuthor ¶ added in v1.5.0
type GitAuthor struct {
// Name of author
Name string `json:"name,omitempty"`
// Email of author
Email string `json:"email,omitempty"`
}
GitAuthor specifies a git commit author
func (*GitAuthor) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitAuthor.
func (*GitAuthor) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitCredentials ¶ added in v1.5.0
type GitCredentials struct {
// HTTPS specifies basic auth credentials.
HTTPS HTTPSCredential `json:"https,omitempty"`
// SSH specifies SSH credentials.
SSH SSHCredential `json:"ssh,omitempty"`
}
GitCredentials specifies how to authenticate against git.
func (*GitCredentials) DeepCopy ¶ added in v1.5.0
func (in *GitCredentials) DeepCopy() *GitCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCredentials.
func (*GitCredentials) DeepCopyInto ¶ added in v1.5.0
func (in *GitCredentials) DeepCopyInto(out *GitCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitTemplates ¶ added in v1.5.0
type GitTemplates struct {
// Rollout specifies the template used for rollout commits.
Rollout string `json:"rollout,omitempty"`
// Delete specifies the template used for delete commits.
Delete string `json:"delete,omitempty"`
}
GitTemplates specifies the templates used for creating commits.
func (*GitTemplates) DeepCopy ¶ added in v1.5.0
func (in *GitTemplates) DeepCopy() *GitTemplates
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitTemplates.
func (*GitTemplates) DeepCopyInto ¶ added in v1.5.0
func (in *GitTemplates) DeepCopyInto(out *GitTemplates)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPSCredential ¶ added in v1.5.0
type HTTPSCredential struct {
// Username is the basic auth user name
Username string `json:"username,omitempty"`
// Password is the basic auth password
Password string `json:"password,omitempty"`
}
HTTPSCredential specifies basic auth credentials
func (*HTTPSCredential) DeepCopy ¶ added in v1.5.0
func (in *HTTPSCredential) DeepCopy() *HTTPSCredential
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPSCredential.
func (*HTTPSCredential) DeepCopyInto ¶ added in v1.5.0
func (in *HTTPSCredential) DeepCopyInto(out *HTTPSCredential)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressConfig ¶
type IngressConfig struct {
// Annotations for all ingress resources created.
Annotations map[string]string `json:"annotations,omitempty"`
// ClassName specifies the default ingress class to use for all ingress
// resources created.
ClassName string `json:"className,omitempty"`
// PathType defines how ingress paths should be interpreted.
// Allowed values: Exact, Prefix, ImplementationSpecific
PathType networkingv1.PathType `json:"pathType,omitempty"`
// DisableTLS for ingress resources generated. This is useful if a 3rd-party component
// is handling the HTTPS TLS termination and certificates.
DisableTLS *bool `json:"disableTLS,omitempty"`
}
func (*IngressConfig) DeepCopy ¶
func (in *IngressConfig) DeepCopy() *IngressConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressConfig.
func (*IngressConfig) DeepCopyInto ¶
func (in *IngressConfig) DeepCopyInto(out *IngressConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (IngressConfig) IsTLSDisabled ¶ added in v1.6.0
func (cfg IngressConfig) IsTLSDisabled() bool
type Logging ¶ added in v1.5.0
type Logging struct {
// DevModeEnabled enables verbose logs and changes the logging format to be
// more human readable.
DevMode bool `json:"devMode,omitempty"`
// Level sets the granularity of logging.
Level zapcore.Level `json:"level,omitempty"`
}
Logging specifies logging configuration.
func (*Logging) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (*Logging) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDCProvider ¶ added in v1.5.3
type OIDCProvider struct {
// Name is a human-readable name of the provider. If set this will be used
// instead of the provider id (the key in
// `PlatformConfig.Auth.SSO.OIDCProviders`)
Name string `json:"name,omitempty"`
// IssuerURL is the URL for the OIDC issuer endpoint.
IssuerURL string `json:"issuerURL,omitempty"`
// ClientID is the OAuth client ID.
ClientID string `json:"clientID,omitempty"`
// ClientSecret is the OAuth client secret.
ClientSecret string `json:"clientSecret,omitempty"`
// AllowedDomains is a list of email domains to allow. If left empty any
// successful authentication on the provider is allowed.
AllowedDomains []string `json:"allowedDomains,omitempty"`
// Scopes is a list of additional scopes other than `openid`, `email` and
// `profile`.
Scopes []string `json:"scopes"`
// GroupsClaim is the path to a claim in the JWT containing a string or
// list of strings of group names.
GroupsClaim string `json:"groupsClaim,omitempty"`
// DisableJITGroups disables creation of groups found through OIDC in rig.
DisableJITGroups *bool `json:"disableJITGroups,omitempty"`
// GroupMapping is a mapping from OIDC provided group names to group names
// used in rig. If an OIDC provided group name is not provided in this
// mapping we will use the OIDC provided groupname in rig.
GroupMapping map[string]string `json:"groupMapping,omitempty"`
}
OIDCProvider specifies an OIDC provider.
func (*OIDCProvider) DeepCopy ¶ added in v1.5.3
func (in *OIDCProvider) DeepCopy() *OIDCProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDCProvider.
func (*OIDCProvider) DeepCopyInto ¶ added in v1.5.3
func (in *OIDCProvider) DeepCopyInto(out *OIDCProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperatorConfig ¶
type OperatorConfig struct {
metav1.TypeMeta `json:",inline"`
// WebhooksEnabled sets wether or not webhooks should be enabled. When
// enabled a certificate should be mounted at the webhook server
// certificate path. Defaults to true if omitted.
WebhooksEnabled *bool `json:"webhooksEnabled,omitempty"`
// DevModeEnabled enables verbose logs and changes the logging format to be
// more human readable.
DevModeEnabled bool `json:"devModeEnabled,omitempty"`
// LeaderElectionEnabled enables leader election when running multiple
// instances of the operator.
LeaderElectionEnabled *bool `json:"leaderElectionEnabled,omitempty"`
// Certmanager holds configuration for how the operator should create
// certificates for ingress resources.
Certmanager *CertManagerConfig `json:"certManager,omitempty"`
// Service holds the configuration for service resources created by the
// operator.
Service ServiceConfig `json:"service,omitempty"`
// Ingress holds the configuration for ingress resources created by the
// operator.
Ingress IngressConfig `json:"ingress,omitempty"`
// PrometheusServiceMonitor defines if Rig should spawn a Prometheus ServiceMonitor per capsule
// for use with a Prometheus Operator stack.
PrometheusServiceMonitor *PrometheusServiceMonitor `json:"prometheusServiceMonitor,omitempty"`
// VerticalPodAutoscaler holds the configuration for the VerticalPodAutoscaler resources
// potentially generated by the operator.
VerticalPodAutoscaler VerticalPodAutoscaler `json:"verticalPodAutoscaler,omitempty"`
}
OperatorConfig is the Schema for the configs API +kubebuilder:object:root=true
func (*OperatorConfig) DeepCopy ¶
func (in *OperatorConfig) DeepCopy() *OperatorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorConfig.
func (*OperatorConfig) DeepCopyInto ¶
func (in *OperatorConfig) DeepCopyInto(out *OperatorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OperatorConfig) DeepCopyObject ¶
func (in *OperatorConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OperatorConfig) Default ¶
func (c *OperatorConfig) Default() *OperatorConfig
type PlatformConfig ¶ added in v1.5.0
type PlatformConfig struct {
metav1.TypeMeta `json:",inline"`
// Port sets the port the platform should listen on
Port int `json:"port,omitempty"`
// PublicUrl sets the public url for the platform. This is used for
// generating urls for the platform when using oauth2.
PublicURL string `json:"publicURL,omitempty"`
// TelemetryEnabled specifies wether or not we are allowed to collect usage
// data. Defaults to true.
TelemetryEnabled bool `json:"telemetryEnabled,omitempty"`
// Auth holds authentication configuration.
Auth Auth `json:"auth,omitempty"`
// Client holds configuration for clients used in the platform.
Client Client `json:"client,omitempty"`
// Repository specifies the type of db to use along with secret key
Repository Repository `json:"repository,omitempty"`
// Cluster holds cluster specific configuration
// Deprecated: Use `clusters` instead.
Cluster Cluster `json:"cluster,omitempty"`
// Email holds configuration for sending emails. Either using mailjet or using SMTP
Email Email `json:"email,omitempty"`
// Logging holds information about the granularity of logging
Logging Logging `json:"logging,omitempty"`
// Clusters the platform has access to.
Clusters map[string]Cluster `json:"clusters,omitempty"`
// Environments of the platform. Each environment is backed by a cluster (allowing multi-tenant setups).
Environments map[string]Environment `json:"environments,omitempty"`
}
OperatorConfig is the Schema for the configs API +kubebuilder:object:root=true
func NewDefaultPlatform ¶ added in v1.5.0
func NewDefaultPlatform() *PlatformConfig
func (*PlatformConfig) DeepCopy ¶ added in v1.5.0
func (in *PlatformConfig) DeepCopy() *PlatformConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformConfig.
func (*PlatformConfig) DeepCopyInto ¶ added in v1.5.0
func (in *PlatformConfig) DeepCopyInto(out *PlatformConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PlatformConfig) DeepCopyObject ¶ added in v1.5.0
func (in *PlatformConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PlatformConfig) Validate ¶ added in v1.6.0
func (cfg *PlatformConfig) Validate() error
type PrometheusServiceMonitor ¶ added in v1.5.0
type PrometheusServiceMonitor struct {
// Path is the path which Prometheus should query on ports. Defaults to /metrics if not set.
Path string `json:"path,omitempty"`
// PortName is the name of the port which Prometheus will query metrics on
PortName string `json:"portName"`
}
func (*PrometheusServiceMonitor) DeepCopy ¶ added in v1.5.0
func (in *PrometheusServiceMonitor) DeepCopy() *PrometheusServiceMonitor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusServiceMonitor.
func (*PrometheusServiceMonitor) DeepCopyInto ¶ added in v1.5.0
func (in *PrometheusServiceMonitor) DeepCopyInto(out *PrometheusServiceMonitor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Repository ¶ added in v1.5.0
type Repository struct {
// Store is what database will be used can be either postgres or mongodb.
Store string `json:"store,omitempty"`
// Secret is a secret key used for encrypting sensitive data before saving
// it in the database.
Secret string `json:"secret,omitempty"`
}
Repository specifies repository configuration
func (*Repository) DeepCopy ¶ added in v1.5.0
func (in *Repository) DeepCopy() *Repository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Repository.
func (*Repository) DeepCopyInto ¶ added in v1.5.0
func (in *Repository) DeepCopyInto(out *Repository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSHCredential ¶ added in v1.5.0
type SSHCredential struct {
// PrivateKey is a PEM encoded SSH private key.
PrivateKey string `json:"privateKey,omitempty"`
// PrivateKeyPassword is an optional password for the SSH private key.
PrivateKeyPassword string `json:"password,omitempty"`
}
SSHCredential specifies SSH credentials
func (*SSHCredential) DeepCopy ¶ added in v1.5.0
func (in *SSHCredential) DeepCopy() *SSHCredential
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHCredential.
func (*SSHCredential) DeepCopyInto ¶ added in v1.5.0
func (in *SSHCredential) DeepCopyInto(out *SSHCredential)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSO ¶ added in v1.5.3
type SSO struct {
// OIDCProviders specifies enabled OIDCProviders which can be used for
// login.
OIDCProviders map[string]OIDCProvider `json:"oidcProviders,omitempty"`
}
SSO specifies single sign on configuration.
func (*SSO) DeepCopy ¶ added in v1.5.3
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSO.
func (*SSO) DeepCopyInto ¶ added in v1.5.3
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceConfig ¶ added in v1.5.3
type ServiceConfig struct {
// Type of the service to generate. By default, services are of type ClusterIP.
// Valid values are ClusterIP, NodePort.
Type corev1.ServiceType `json:"type,omitempty"`
}
func (*ServiceConfig) DeepCopy ¶ added in v1.5.3
func (in *ServiceConfig) DeepCopy() *ServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceConfig.
func (*ServiceConfig) DeepCopyInto ¶ added in v1.5.3
func (in *ServiceConfig) DeepCopyInto(out *ServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VerticalPodAutoscaler ¶ added in v1.6.0
type VerticalPodAutoscaler struct {
// Enabled enables the creation of a VerticalPodAutoscaler per capsule
Enabled bool `json:"enabled,omitempty"`
}
func (*VerticalPodAutoscaler) DeepCopy ¶ added in v1.6.0
func (in *VerticalPodAutoscaler) DeepCopy() *VerticalPodAutoscaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VerticalPodAutoscaler.
func (*VerticalPodAutoscaler) DeepCopyInto ¶ added in v1.6.0
func (in *VerticalPodAutoscaler) DeepCopyInto(out *VerticalPodAutoscaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.