Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the sf v1 API group +kubebuilder:object:generate=true +groupName=sf.softwarefactory-project.io
Index ¶
- Variables
- func GetGerritConnectionsName(spec *ZuulSpec) []string
- func GetGitConnectionsName(spec *ZuulSpec) []string
- func GetGitHubConnectionsName(spec *ZuulSpec) []string
- func GetGitHubConnectionsSecretName(spec *ZuulSpec) []string
- func GetGitLabConnectionsName(spec *ZuulSpec) []string
- func GetGitLabConnectionsSecretName(spec *ZuulSpec) []string
- func GetPagureConnectionsName(spec *ZuulSpec) []string
- func GetPagureConnectionsSecretName(spec *ZuulSpec) []string
- type BaseSpec
- type BaseStatus
- type ConfigRepositoryLocationSpec
- type ElasticSearchConnection
- type FluentBitForwarderSpec
- type GerritConnection
- type GitConnection
- type GitHubConnection
- type GitLabConnection
- type GitServerSpec
- type LEServer
- type LetsEncryptSpec
- type LimitsSpec
- type LogLevel
- type LogServerSpec
- type MariaDBSpec
- type NodepoolBuilderSpec
- type NodepoolLauncherSpec
- type NodepoolSpec
- type PagureConnection
- type Secret
- type SecretRef
- type SoftwareFactory
- type SoftwareFactoryList
- type SoftwareFactorySpec
- type SoftwareFactoryStatus
- type StandaloneZuulExecutorSpec
- type StorageSpec
- type ZookeeperSpec
- type ZuulExecutorSpec
- type ZuulMergerSpec
- type ZuulOIDCAuthenticatorSpec
- type ZuulSchedulerSpec
- type ZuulSpec
- type ZuulWebSpec
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "sf.softwarefactory-project.io", Version: "v1"} // 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 ¶
func GetGitConnectionsName ¶
Types ¶
type BaseSpec ¶
type BaseSpec struct{}
func (*BaseSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseSpec.
func (*BaseSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BaseStatus ¶ added in v0.0.22
type BaseStatus struct { // The deployment status. Ready bool `json:"ready,omitempty"` // The Generation of the related Custom Resource that was last processed by the operator controller ObservedGeneration int64 `json:"observedGeneration,omitempty"` // The name of the operator handling this Custom Resource's reconciliation ReconciledBy string `json:"reconciledBy,omitempty"` // Information about ongoing or completed reconciliation processes between the Log server spec and the observed state of the cluster Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"` }
BaseStatus struct which defines the observed state for a Controller Do not use this directy, it must be derived from.
func (*BaseStatus) DeepCopy ¶ added in v0.0.22
func (in *BaseStatus) DeepCopy() *BaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseStatus.
func (*BaseStatus) DeepCopyInto ¶ added in v0.0.22
func (in *BaseStatus) DeepCopyInto(out *BaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigRepositoryLocationSpec ¶ added in v0.0.21
type ConfigRepositoryLocationSpec struct { // Base URL to use to perform git-related actions on the config repository. For example, if hosted on GitHub, the Base URL would be `https://github.com/<username>/` // +kubebuilder:validation:Pattern:=`^https?:\/\/.+$` BaseURL string `json:"base-url"` // The name of the `config` repository. This value is appended to `base-url` to clone the repository // +kubebuilder:validation:MinLength:=1 Name string `json:"name"` // Name of the Zuul connection through which Zuul can handle git events on the config repository // +kubebuilder:validation:MinLength:=1 ZuulConnectionName string `json:"zuul-connection-name"` // Public URL of the k8s cluster API. This is useful when running zuul executors outside // of the cluster. This is mainly used for config-update secret generation ClusterAPIURL string `json:"k8s-api-url,omitempty"` // Public HOST of the default logserver. This is useful when running zuul executors outside // of the cluster. This is mainly used for config-update secret generation LogserverHost string `json:"logserver-host,omitempty"` }
func (*ConfigRepositoryLocationSpec) DeepCopy ¶ added in v0.0.21
func (in *ConfigRepositoryLocationSpec) DeepCopy() *ConfigRepositoryLocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigRepositoryLocationSpec.
func (*ConfigRepositoryLocationSpec) DeepCopyInto ¶ added in v0.0.21
func (in *ConfigRepositoryLocationSpec) DeepCopyInto(out *ConfigRepositoryLocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ElasticSearchConnection ¶
type ElasticSearchConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // [uri](https://zuul-ci.org/docs/zuul/latest/drivers/elasticsearch.html#attr-%3CElasticsearch%20connection%3E.uri) URI string `json:"uri"` // [useSSL](https://zuul-ci.org/docs/zuul/latest/drivers/elasticsearch.html#attr-%3CElasticsearch%20connection%3E.use_ssl) UseSSL *bool `json:"useSSL,omitempty"` // [verifyCerts](https://zuul-ci.org/docs/zuul/latest/drivers/elasticsearch.html#attr-%3CElasticsearch%20connection%3E.verify_certs) VerifyCerts *bool `json:"verifyCerts,omitempty"` }
Describes a Zuul connection using the [ElasticSearch driver](https://zuul-ci.org/docs/zuul/latest/drivers/elasticsearch.html#connection-configuration). When an optional parameter is not specified then Zuul's defaults apply
func (*ElasticSearchConnection) DeepCopy ¶
func (in *ElasticSearchConnection) DeepCopy() *ElasticSearchConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchConnection.
func (*ElasticSearchConnection) DeepCopyInto ¶
func (in *ElasticSearchConnection) DeepCopyInto(out *ElasticSearchConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentBitForwarderSpec ¶
type FluentBitForwarderSpec struct { // The Host for the Fluent Bit HTTP Input to forward logs to. HTTPInputHost string `json:"httpInputHost"` // The (optional) port on which to forward logs to, defaults to 80. // +kubebuilder:default:=80 HTTPInputPort int32 `json:"httpInputPort,omitempty"` // +kubebuilder:default:=false // +optional // Run fluent bit sidecars in debug mode. This will output forwarded payloads and additional info in the sidecar's logs. Defaults to false. Debug *bool `json:"debug,omitempty"` }
func (*FluentBitForwarderSpec) DeepCopy ¶
func (in *FluentBitForwarderSpec) DeepCopy() *FluentBitForwarderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentBitForwarderSpec.
func (*FluentBitForwarderSpec) DeepCopyInto ¶
func (in *FluentBitForwarderSpec) DeepCopyInto(out *FluentBitForwarderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GerritConnection ¶
type GerritConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // The gerrit server hostname. Equivalent to the [server](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20connection%3E.server) parameter. Hostname string `json:"hostname"` // SSH port number to the Gerrit instance. Equivalent to the [port](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20ssh%20connection%3E.port) parameter. // +kubebuilder:validation:Minimum:=1024 // +kubebuilder:validation:Maximum:=65535 Port uint16 `json:"port,omitempty"` // URL to Gerrit's web interface. the [baseurl](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20connection%3E.baseurl) parameter. // +kubebuilder:validation:Pattern:=`^https?:\/\/.+$` Puburl string `json:"puburl,omitempty"` // Username that Zuul will use to authenticate on the Gerrit instance. Equivalent to the [user](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20connection%3E.user) parameter. Username string `json:"username,omitempty"` // The canonical hostname associated with the git repositories on the Gerrit server. Equivalent to the [canonical_hostname](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20connection%3E.canonical_hostname) parameter. Canonicalhostname string `json:"canonicalhostname,omitempty"` // The name of a Kubernetes secret holding the Gerrit user's API Password. The secret's data must have a key called "password". Equivalent to the [password](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20ssh%20connection%3E.password) parameter. Password string `json:"password,omitempty"` // The name of a Kubernetes secret holding the Gerrit user's SSH key. The secret's data must have a key called "priv". Sshkey string `json:"sshkey,omitempty"` // Set to true to force git operations over SSH even if the password attribute is set. Equivalent to the [git_over_ssh](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20ssh%20connection%3E.git_over_ssh) parameter. GitOverSSH bool `json:"git-over-ssh,omitempty"` // Disable SSL certificate verification with the Gerrit instance when set to false. Equivalent to the [verify_ssl](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#attr-%3Cgerrit%20ssh%20connection%3E.verify_ssl) parameter. VerifySSL *bool `json:"verifyssl,omitempty"` }
Describes a Zuul connection using the [gerrit driver](https://zuul-ci.org/docs/zuul/latest/drivers/gerrit.html#connection-configuration) When an optional parameter is not specified then Zuul's defaults apply
func (*GerritConnection) DeepCopy ¶
func (in *GerritConnection) DeepCopy() *GerritConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GerritConnection.
func (*GerritConnection) DeepCopyInto ¶
func (in *GerritConnection) DeepCopyInto(out *GerritConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitConnection ¶
type GitConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // [baseurl](https://zuul-ci.org/docs/zuul/latest/drivers/git.html#attr-%3Cgit%20connection%3E.baseurl) // +kubebuilder:validation:Pattern:=`^(https?|git):\/\/.+$` Baseurl string `json:"baseurl"` // [poolDelay](https://zuul-ci.org/docs/zuul/latest/drivers/git.html#attr-%3Cgit%20connection%3E.poll_delays) PollDelay int32 `json:"pollDelay,omitempty"` }
Describes a Zuul connection using the [git driver](https://zuul-ci.org/docs/zuul/latest/drivers/git.html#connection-configuration). When an optional parameter is not specified then Zuul's defaults apply
func (*GitConnection) DeepCopy ¶
func (in *GitConnection) DeepCopy() *GitConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitConnection.
func (*GitConnection) DeepCopyInto ¶
func (in *GitConnection) DeepCopyInto(out *GitConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitHubConnection ¶
type GitHubConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // GitHub [appID](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.app_id) // +optional AppID int `json:"appID,omitempty"` // Name of the secret which contains the following keys: // [app_key](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.app_key) must be defined if appId is defined // [api_token(optional)](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.api_token) // [webhook_token (optional)](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.webhook_token) // The keys must have the same name as above // +optional Secrets string `json:"secrets,omitempty"` // the [server](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.server) // +optional Server string `json:"server,omitempty"` // the [canonical_hostname](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.canonical_hostname) parameter // +optional Canonicalhostname string `json:"canonicalHostname,omitempty"` // the [verify_ssl](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#attr-%3Cgithub%20connection%3E.verify_ssl) parameter // +kubebuilder:default:=true // +optional VerifySSL bool `json:"verifySsl,omitempty"` }
Describes a Zuul connection using the [github driver](https://zuul-ci.org/docs/zuul/latest/drivers/github.html#).
func (*GitHubConnection) DeepCopy ¶
func (in *GitHubConnection) DeepCopy() *GitHubConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubConnection.
func (*GitHubConnection) DeepCopyInto ¶
func (in *GitHubConnection) DeepCopyInto(out *GitHubConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitLabConnection ¶
type GitLabConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // the [server](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.server) Server string `json:"server,omitempty"` // the [canonicalHostname](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.canonical_hostname) CanonicalHostname string `json:"canonicalHostname,omitempty"` // the (baseUrl)[https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.baseurl) BaseURL string `json:"baseUrl,omitempty"` // Name of the secret which containes the following keys: // the [api_token](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.api_token) // the [api_token_name](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.api_token_name) // the [webhook_token](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.webhook_token) // +kubebuilder:validation:MinLength:=1 Secrets string `json:"secrets"` // the [apiTokenName](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.api_token_name) APITokenName string `json:"apiTokenName,omitempty"` // the [cloneUrl](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.cloneurl) CloneURL string `json:"cloneUrl,omitempty"` // the [keepAlive](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.keepalive) // +kubebuilder:validation:Minimum:=0 KeepAlive uint8 `json:"keepAlive,omitempty"` // the [disableConnectionPool](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#attr-%3Cgitlab%20connection%3E.disable_connection_pool) DisableConnectionPool bool `json:"disableConnectionPool,omitempty"` }
Describes a Zuul connection using the [gitlab driver](https://zuul-ci.org/docs/zuul/latest/drivers/gitlab.html#gitlab).
func (*GitLabConnection) DeepCopy ¶
func (in *GitLabConnection) DeepCopy() *GitLabConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitLabConnection.
func (*GitLabConnection) DeepCopyInto ¶
func (in *GitLabConnection) DeepCopyInto(out *GitLabConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitServerSpec ¶
type GitServerSpec struct {
Storage StorageSpec `json:"storage,omitempty"`
}
func (*GitServerSpec) DeepCopy ¶
func (in *GitServerSpec) DeepCopy() *GitServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitServerSpec.
func (*GitServerSpec) DeepCopyInto ¶
func (in *GitServerSpec) DeepCopyInto(out *GitServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LEServer ¶
type LEServer string
+kubebuilder:validation:Enum=prod;staging +kubebuilder:default:=staging
type LetsEncryptSpec ¶
type LetsEncryptSpec struct { // Specify the Lets encrypt server. // Valid values are: // "staging", // "prod" Server LEServer `json:"server"` }
func (*LetsEncryptSpec) DeepCopy ¶
func (in *LetsEncryptSpec) DeepCopy() *LetsEncryptSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LetsEncryptSpec.
func (*LetsEncryptSpec) DeepCopyInto ¶
func (in *LetsEncryptSpec) DeepCopyInto(out *LetsEncryptSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LimitsSpec ¶ added in v0.0.29
type LimitsSpec struct { // +kubebuilder:default:="2Gi" Memory resource.Quantity `json:"memory"` // +kubebuilder:default:="2000m" CPU resource.Quantity `json:"cpu"` }
func (*LimitsSpec) DeepCopy ¶ added in v0.0.29
func (in *LimitsSpec) DeepCopy() *LimitsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LimitsSpec.
func (*LimitsSpec) DeepCopyInto ¶ added in v0.0.29
func (in *LimitsSpec) DeepCopyInto(out *LimitsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogLevel ¶
type LogLevel string
+kubebuilder:validation:Enum=INFO;WARN;DEBUG +kubebuilder:default:=INFO
type LogServerSpec ¶
type LogServerSpec struct { // Logs retention time in days. Logs older than this setting in days will be purged by a pruning cronjob. Defaults to 60 days // +kubebuilder:default:=60 // +kubebuilder:validation:Minimum:=1 RetentionDays int `json:"retentionDays,omitempty"` // The frequency, in seconds, at which the log pruning cronjob is running. Defaults to 3600s, i.e. logs are checked for pruning every hour // +kubebuilder:default:=3600 // +kubebuilder:validation:Minimum:=1 LoopDelay int `json:"loopDelay,omitempty"` // Storage-related settings Storage StorageSpec `json:"storage,omitempty"` }
LogServerSpec defines the desired state of LogServer
func (*LogServerSpec) DeepCopy ¶
func (in *LogServerSpec) DeepCopy() *LogServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogServerSpec.
func (*LogServerSpec) DeepCopyInto ¶
func (in *LogServerSpec) DeepCopyInto(out *LogServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MariaDBSpec ¶
type MariaDBSpec struct { // Storage parameters related to mariaDB's data DBStorage StorageSpec `json:"dbStorage"` // Storage parameters related to the database's logging LogStorage StorageSpec `json:"logStorage"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
func (*MariaDBSpec) DeepCopy ¶
func (in *MariaDBSpec) DeepCopy() *MariaDBSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MariaDBSpec.
func (*MariaDBSpec) DeepCopyInto ¶
func (in *MariaDBSpec) DeepCopyInto(out *MariaDBSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodepoolBuilderSpec ¶
type NodepoolBuilderSpec struct { // Storage related settings Storage StorageSpec `json:"storage,omitempty"` // Specify the Log Level of the nodepool launcher process. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". LogLevel LogLevel `json:"logLevel,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
func (*NodepoolBuilderSpec) DeepCopy ¶
func (in *NodepoolBuilderSpec) DeepCopy() *NodepoolBuilderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodepoolBuilderSpec.
func (*NodepoolBuilderSpec) DeepCopyInto ¶
func (in *NodepoolBuilderSpec) DeepCopyInto(out *NodepoolBuilderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodepoolLauncherSpec ¶
type NodepoolLauncherSpec struct { // Specify the Log Level of the nodepool launcher service. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". // Changing this value will restart the service. // +optional LogLevel LogLevel `json:"logLevel,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
func (*NodepoolLauncherSpec) DeepCopy ¶
func (in *NodepoolLauncherSpec) DeepCopy() *NodepoolLauncherSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodepoolLauncherSpec.
func (*NodepoolLauncherSpec) DeepCopyInto ¶
func (in *NodepoolLauncherSpec) DeepCopyInto(out *NodepoolLauncherSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodepoolSpec ¶
type NodepoolSpec struct { // Nodepool-launcher related settings Launcher NodepoolLauncherSpec `json:"launcher,omitempty"` // Nodepool-builder related settings Builder NodepoolBuilderSpec `json:"builder,omitempty"` // The address to forward statsd metrics to (optional), in the form "host:port" StatsdTarget string `json:"statsdTarget,omitempty"` }
func (*NodepoolSpec) DeepCopy ¶
func (in *NodepoolSpec) DeepCopy() *NodepoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodepoolSpec.
func (*NodepoolSpec) DeepCopyInto ¶
func (in *NodepoolSpec) DeepCopyInto(out *NodepoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PagureConnection ¶
type PagureConnection struct { // How the connection will be named in Zuul's configuration and appear in zuul-web Name string `json:"name"` // the [server](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.server) Server string `json:"server,omitempty"` // the [canonicalHostname](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.canonical_hostname) CanonicalHostname string `json:"canonicalHostname,omitempty"` // the (baseUrl)[https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-%3Cpagure%20connection%3E.baseurl) BaseURL string `json:"baseUrl,omitempty"` // Name of the secret which containes the following keys: // the [api_token](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.api_token) Secrets string `json:"secrets,omitempty"` // the [appName](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.app_name) AppName string `json:"appName,omitempty"` // the [cloneUrl](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.cloneurl) CloneURL string `json:"cloneUrl,omitempty"` // the [sourceWhitelist](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#attr-<pagure connection>.source_whitelist) SourceWhitelist string `json:"sourceWhitelist,omitempty"` }
Describes a Zuul connection using the [pagure driver](https://zuul-ci.org/docs/zuul/latest/drivers/pagure.html#connection-configuration).
func (*PagureConnection) DeepCopy ¶
func (in *PagureConnection) DeepCopy() *PagureConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PagureConnection.
func (*PagureConnection) DeepCopyInto ¶
func (in *PagureConnection) DeepCopyInto(out *PagureConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Secret ¶
type Secret struct { // Name of the referent. // More info on [kubernetes' documentation](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name string `json:"name"` // The key of the secret to select from. Must be a valid secret key. Key string `json:"key,omitempty"` }
func (*Secret) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret.
func (*Secret) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretRef ¶
type SecretRef struct { //Selects a key of a secret in the pod's namespace SecretKeyRef *Secret `json:"secretKeyRef"` }
func (*SecretRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretRef.
func (*SecretRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SoftwareFactory ¶
type SoftwareFactory struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SoftwareFactorySpec `json:"spec,omitempty"` Status SoftwareFactoryStatus `json:"status,omitempty"` }
SoftwareFactory is the Schema for the softwarefactories API
func (*SoftwareFactory) DeepCopy ¶
func (in *SoftwareFactory) DeepCopy() *SoftwareFactory
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoftwareFactory.
func (*SoftwareFactory) DeepCopyInto ¶
func (in *SoftwareFactory) DeepCopyInto(out *SoftwareFactory)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SoftwareFactory) DeepCopyObject ¶
func (in *SoftwareFactory) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SoftwareFactoryList ¶
type SoftwareFactoryList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SoftwareFactory `json:"items"` }
SoftwareFactoryList contains a list of SoftwareFactory
func (*SoftwareFactoryList) DeepCopy ¶
func (in *SoftwareFactoryList) DeepCopy() *SoftwareFactoryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoftwareFactoryList.
func (*SoftwareFactoryList) DeepCopyInto ¶
func (in *SoftwareFactoryList) DeepCopyInto(out *SoftwareFactoryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SoftwareFactoryList) DeepCopyObject ¶
func (in *SoftwareFactoryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SoftwareFactorySpec ¶
type SoftwareFactorySpec struct { // The fully qualified domain name to use with the deployment. Relevant services will be served // at https://`service`.`FQDN` FQDN string `json:"fqdn"` // Enable log forwarding to a [Fluent Bit HTTP input](https://docs.fluentbit.io/manual/pipeline/inputs/http) FluentBitLogForwarding *FluentBitForwarderSpec `json:"FluentBitLogForwarding,omitempty"` // Default storage class to use by Persistent Volume Claims // +kubebuilder:default:=topolvm-provisioner StorageClassName string `json:"storageClassName,omitempty"` // Config repository spec ConfigRepositoryLocation ConfigRepositoryLocationSpec `json:"config-location,omitempty"` // Zuul service spec Zuul ZuulSpec `json:"zuul,omitempty"` // Nodepool services spec Nodepool NodepoolSpec `json:"nodepool,omitempty"` // Zookeeper service spec Zookeeper ZookeeperSpec `json:"zookeeper,omitempty"` // Logserver service spec // +kubebuilder:validation:Optional // +kubebuilder:default={"loopDelay": 3600, retentionDays: 60} Logserver LogServerSpec `json:"logserver,omitempty"` // MariaDB service spec MariaDB MariaDBSpec `json:"mariadb,omitempty"` // Git server spec GitServer GitServerSpec `json:"gitserver,omitempty"` }
SoftwareFactorySpec defines the desired state of SoftwareFactory
func (*SoftwareFactorySpec) DeepCopy ¶
func (in *SoftwareFactorySpec) DeepCopy() *SoftwareFactorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoftwareFactorySpec.
func (*SoftwareFactorySpec) DeepCopyInto ¶
func (in *SoftwareFactorySpec) DeepCopyInto(out *SoftwareFactorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SoftwareFactoryStatus ¶
type SoftwareFactoryStatus BaseStatus
SoftwareFactoryStatus defines the observed state of SoftwareFactory
func (*SoftwareFactoryStatus) DeepCopy ¶
func (in *SoftwareFactoryStatus) DeepCopy() *SoftwareFactoryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoftwareFactoryStatus.
func (*SoftwareFactoryStatus) DeepCopyInto ¶
func (in *SoftwareFactoryStatus) DeepCopyInto(out *SoftwareFactoryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StandaloneZuulExecutorSpec ¶ added in v0.0.27
type StandaloneZuulExecutorSpec struct { // This is the public hostname or IP where control plane's Zookeeper can be reached ControlPlanePublicZKHostname string `json:"controlPlanePublicZKHostname"` // This is the public hostname or IP where control plane's GitServer can be reached ControlPlanePublicGSHostname string `json:"controlPlanePublicGSHostname"` // This is the public host or IP address reachable from zuul-web PublicHostName string `json:"publicHostname"` }
func (*StandaloneZuulExecutorSpec) DeepCopy ¶ added in v0.0.27
func (in *StandaloneZuulExecutorSpec) DeepCopy() *StandaloneZuulExecutorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StandaloneZuulExecutorSpec.
func (*StandaloneZuulExecutorSpec) DeepCopyInto ¶ added in v0.0.27
func (in *StandaloneZuulExecutorSpec) DeepCopyInto(out *StandaloneZuulExecutorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageSpec ¶
type StorageSpec struct { // Storage space to allocate to the resource, expressed as a [Quantity](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/) Size resource.Quantity `json:"size"` // Default storage class to use with Persistent Volume Claims issued by this resource. Consult your cluster's configuration to see what storage classes are available and recommended for your use case. ClassName string `json:"className,omitempty"` }
func (*StorageSpec) DeepCopy ¶
func (in *StorageSpec) DeepCopy() *StorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageSpec.
func (*StorageSpec) DeepCopyInto ¶
func (in *StorageSpec) DeepCopyInto(out *StorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZookeeperSpec ¶
type ZookeeperSpec struct { Storage StorageSpec `json:"storage"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
func (*ZookeeperSpec) DeepCopy ¶
func (in *ZookeeperSpec) DeepCopy() *ZookeeperSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperSpec.
func (*ZookeeperSpec) DeepCopyInto ¶
func (in *ZookeeperSpec) DeepCopyInto(out *ZookeeperSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulExecutorSpec ¶
type ZuulExecutorSpec struct { // Storage-related settings Storage StorageSpec `json:"storage,omitempty"` // Specify the Log Level of the zuul-executor service. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". // Changing this value will restart the service. // +optional LogLevel LogLevel `json:"logLevel,omitempty"` // +kubebuilder:default:=true // +optional // If set to false, the zuul-executor deployment won't be applied Enabled *bool `json:"enabled,omitempty"` // When set the Control plane is not deployed. // The standalone executor must be able to connect to the control plane Standalone *StandaloneZuulExecutorSpec `json:"standalone,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
Spec for the pool of executor microservices
func (*ZuulExecutorSpec) DeepCopy ¶
func (in *ZuulExecutorSpec) DeepCopy() *ZuulExecutorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulExecutorSpec.
func (*ZuulExecutorSpec) DeepCopyInto ¶
func (in *ZuulExecutorSpec) DeepCopyInto(out *ZuulExecutorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulMergerSpec ¶
type ZuulMergerSpec struct { // the [git_user_name](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-merger.git_user_name) parameter // +optional GitUserName string `json:"gitUserName,omitempty"` // the [git_user_email](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-merger.git_user_email) parameter // +optional GitUserEmail string `json:"gitUserEmail,omitempty"` // the [git_http_low_speed_limit](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-merger.git_http_low_speed_limit) parameter // +kubebuilder:validation:Minimum:=0 GitHTTPLowSpeedLimit int32 `json:"gitHttpLowSpeedLimit,omitempty"` // the [git_http_low_speed_time](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-merger.git_http_low_speed_time) parameter // +kubebuilder:validation:Minimum:=0 GitHTTPLowSpeedTime int32 `json:"gitHttpLowSpeedTime,omitempty"` // the [git_timeout](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-merger.git_timeout) parameter // +kubebuilder:validation:Minimum:=1 GitTimeout int32 `json:"gitTimeout,omitempty"` // Storage-related settings Storage StorageSpec `json:"storage,omitempty"` // Specify the Log Level of the nodepool launcher service. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". // Changing this value will restart the service. // +optional LogLevel LogLevel `json:"logLevel,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
Zuul Merger Configuration, see [Zuul's documentation](https://zuul-ci.org/docs/zuul/latest/configuration.html#merger)
func (*ZuulMergerSpec) DeepCopy ¶
func (in *ZuulMergerSpec) DeepCopy() *ZuulMergerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulMergerSpec.
func (*ZuulMergerSpec) DeepCopyInto ¶
func (in *ZuulMergerSpec) DeepCopyInto(out *ZuulMergerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulOIDCAuthenticatorSpec ¶
type ZuulOIDCAuthenticatorSpec struct { // The [name of the authenticator in Zuul's configuration](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E) Name string `json:"name"` // Authentication realm, equivalent to the [realm](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.realm) parameter Realm string `json:"realm"` // The client ID, as exposed in the `aud` claim of a JWT. Equivalent to the [client_id](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.client_id) parameter ClientID string `json:"clientID"` // The issuer ID, as exposed in the `iss` claim of a JWT. Equivalent to the [issuer_id](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.issuer_id) parameter IssuerID string `json:"issuerID"` // +kubebuilder:default:=sub // The JWT claim to use as a unique identifier in audit logs, equivalent to the [uid_claim](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.uid_claim) parameter UIDClaim string `json:"uidClaim,omitempty"` // Optionally override the `expires_at` claim in a JWT to enforce a custom expiration time on a token. Equivalent to the [max_validity_time](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.max_validity_time) parameter MaxValidityTime int32 `json:"maxValidityTime,omitempty"` // +kubebuilder:default:=0 // Optionally compensate for skew between Zuul's and the Identity Provider's clocks, equivalent to the [skew](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-auth%20%3Cauthenticator%20name%3E.skew) parameter Skew int32 `json:"skew,omitempty"` // Optionally provide a URL to fetch the Identity Provider's key set, equivalent to the [keys_url](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-keys_url) parameter KeysURL string `json:"keysURL,omitempty"` // +kubebuilder:default:="openid profile" // The scope used to fetch a user's details, equivalent to the [scope](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-scope) parameter Scope string `json:"scope,omitempty"` // Optionally provide the claim where the authority is set if not in `iss`, equivalent to the [authority](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-authority) parameter Authority string `json:"authority,omitempty"` // Optionally provide the claim where the audience is set if not in `aud`, equivalent to the [audience](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-audience) parameter Audience string `json:"audience,omitempty"` // +kubebuilder:default:=true // If set to false, zuul-web will skip loading the Identity Provider's `userinfo` endpoint and rely on what's available in the JWT. Equivalent to the [load_user_info](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-load_user_info) parameter LoadUserInfo bool `json:"loadUserInfo,omitempty"` }
The description of an OpenIDConnect authenticator, see [Zuul's authentication documentation](https://zuul-ci.org/docs/zuul/latest/configuration.html#authentication)
func (*ZuulOIDCAuthenticatorSpec) DeepCopy ¶
func (in *ZuulOIDCAuthenticatorSpec) DeepCopy() *ZuulOIDCAuthenticatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulOIDCAuthenticatorSpec.
func (*ZuulOIDCAuthenticatorSpec) DeepCopyInto ¶
func (in *ZuulOIDCAuthenticatorSpec) DeepCopyInto(out *ZuulOIDCAuthenticatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulSchedulerSpec ¶
type ZuulSchedulerSpec struct { // Storage-related settings Storage StorageSpec `json:"storage,omitempty"` // The address to forward statsd metrics to (optional), in the form "host:port" StatsdTarget string `json:"statsdTarget,omitempty"` // Specify the Log Level of the zuul-scheduler service. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". // Changing this value will restart the service. // +optional LogLevel LogLevel `json:"logLevel,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` // the [DefaultHoldExpiration](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-scheduler.default_hold_expiration) // +optional // +kubebuilder:validation:Minimum:=0 DefaultHoldExpiration *uint32 `json:"DefaultHoldExpiration,omitempty"` // the [MaxHoldExpiration](https://zuul-ci.org/docs/zuul/latest/configuration.html#attr-scheduler.max_hold_expiration) // +optional // +kubebuilder:validation:Minimum:=0 MaxHoldExpiration *uint32 `json:"MaxHoldExpiration,omitempty"` }
Spec for the scheduler microservice
func (*ZuulSchedulerSpec) DeepCopy ¶
func (in *ZuulSchedulerSpec) DeepCopy() *ZuulSchedulerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulSchedulerSpec.
func (*ZuulSchedulerSpec) DeepCopyInto ¶
func (in *ZuulSchedulerSpec) DeepCopyInto(out *ZuulSchedulerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulSpec ¶
type ZuulSpec struct { // A list of OpenID Connect authenticators that will enable admin API access on zuul-web OIDCAuthenticators []ZuulOIDCAuthenticatorSpec `json:"oidcAuthenticators,omitempty"` // The name of the default authenticator to use if no authenticator is bound explicitly to a tenant with zuul-web DefaultAuthenticator string `json:"defaultAuthenticator,omitempty"` // The list of Gerrit-based connections to add to Zuul's configuration GerritConns []GerritConnection `json:"gerritconns,omitempty"` // The list of GitHub-based connections to add to Zuul's configuration GitHubConns []GitHubConnection `json:"githubconns,omitempty"` // The list of GitLab-based connections to add to Zuul's configuration GitLabConns []GitLabConnection `json:"gitlabconns,omitempty"` // The list of Git-based connections to add to Zuul's configuration GitConns []GitConnection `json:"gitconns,omitempty"` // The list of Pagure-based connections to add to Zuul's configuration PagureConns []PagureConnection `json:"pagureconns,omitempty"` // The list of ElasticSearch-based connections to add to Zuul's configuration ElasticSearchConns []ElasticSearchConnection `json:"elasticsearchconns,omitempty"` // Configuration of the executor microservices Executor ZuulExecutorSpec `json:"executor,omitempty"` // Configuration of the scheduler microservice Scheduler ZuulSchedulerSpec `json:"scheduler,omitempty"` // Configuration of the web microservice Web ZuulWebSpec `json:"web,omitempty"` // Configuration of the merger microservice Merger ZuulMergerSpec `json:"merger,omitempty"` }
Configuration of the Zuul service
func (*ZuulSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulSpec.
func (*ZuulSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZuulWebSpec ¶
type ZuulWebSpec struct { // Specify the Log Level of the zuul-web launcher service. // Valid values are: // "INFO" (default), // "WARN", // "DEBUG". // Changing this value will restart the service. // +optional LogLevel LogLevel `json:"logLevel,omitempty"` // Memory/CPU Limit // +kubebuilder:validation:Optional // +kubebuilder:default={"memory": "2Gi", "cpu": "2000m"} Limits *LimitsSpec `json:"limits"` }
func (*ZuulWebSpec) DeepCopy ¶
func (in *ZuulWebSpec) DeepCopy() *ZuulWebSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZuulWebSpec.
func (*ZuulWebSpec) DeepCopyInto ¶
func (in *ZuulWebSpec) DeepCopyInto(out *ZuulWebSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.