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 GitAuthor
- type GitCredentials
- type GitTemplates
- type HTTPSCredential
- type IngressConfig
- type Logging
- type OAuth
- type OAuthClientCredentials
- type OperatorConfig
- type PlatformConfig
- type Repository
- type SSHCredential
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"` }
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"` // 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 isen'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 { // 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 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"` // ClassName specifies the default ingress class to use for all ingress // resources created. ClassName string `json:"className"` }
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.
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 OAuth ¶ added in v1.5.0
type OAuth struct { // Google specifies OAuth client configuration for google. Google OAuthClientCredentials `json:"google,omitempty"` // Github specifies OAuth client configuration for github. Github OAuthClientCredentials `json:"github,omitempty"` // Facebook specifies OAuth client configuration for facebook. Facebook OAuthClientCredentials `json:"facebook,omitempty"` }
OAuth specifies configuration for different OAuth providers.
func (*OAuth) DeepCopy ¶ added in v1.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OAuth.
func (*OAuth) DeepCopyInto ¶ added in v1.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OAuthClientCredentials ¶ added in v1.5.0
type OAuthClientCredentials struct { // ClientID is the OAuth client ID. ClientID string `json:"clientId,omitempty"` // ClientSecret is the OAuth client secret. ClientSecret string `json:"clientSecret,omitempty"` }
OAuthClientCredentials specifies a set of OAuth client credentials.
func (*OAuthClientCredentials) DeepCopy ¶ added in v1.5.0
func (in *OAuthClientCredentials) DeepCopy() *OAuthClientCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OAuthClientCredentials.
func (*OAuthClientCredentials) DeepCopyInto ¶ added in v1.5.0
func (in *OAuthClientCredentials) DeepCopyInto(out *OAuthClientCredentials)
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 set 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"` // Ingress holds the configuration for ingress resources created by the // operator. Ingress IngressConfig `json:"ingress,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()
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"` // OAuth holds configuration for oauth2 clients, namely google, github and facebook. OAuth OAuth `json:"oauth,omitempty"` // Cluster holds cluster specific configuration Cluster Cluster `json:"cluster,omitempty"` // Email holds configuration for sending emails. Either using mailjet or using SMTP Email Email `json:"email,omitempty"` // Loggin holds information about the granularity of logging Logging Logging `json:"logging,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.
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.