v1alpha1

package
v0.0.0-...-33d23e6 Latest Latest
Warning

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

Go to latest
Published: Mar 5, 2020 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the xo v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=xo.90poe.io

Package v1alpha1 contains API Schema definitions for the xo v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=xo.90poe.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "xo.90poe.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)

Functions

Types

type ESAlias

type ESAlias struct {
	// (Array) Array of index names used to perform the action. If the index parameter is not specified, this parameter is required.
	// +required
	// +listType=set
	Indices []string `json:"indices,omitempty"`
	// (String) Comma-separated list or wildcard expression of index alias names to add, remove, or delete. If the alias parameter is not specified, this parameter is required for the add or remove action.
	// +required
	// +listType=set
	Aliases []string `json:"aliases,omitempty"`
	// (Optional, query object) Filter query used to limit the index alias. If specified, the index alias only applies to documents returned by the filter. Filter query used to limit the index alias. If specified, the index alias only applies to documents returned by the filter. See Filtered aliases for an example.
	// +optional
	Filter string `json:"filter,omitempty"`
	// (Optional, boolean) If true, assigns the index as an alias’s write index. Defaults to false.
	// +optional
	IsWriteIndex bool `json:"is_write_index,omitempty"`
	// (Optional, string) Custom routing value used to route operations to a specific shard.
	// +optional
	Routing string `json:"routing,omitempty"`
	// (Optional, string) Custom routing value used for the alias’s indexing operations.
	// +optional
	IndexRouting string `json:"index_routing,omitempty"`
	// (Optional, string) Custom routing value used for the alias’s search operations.
	// +optional
	SearchRouting string `json:"search_routing,omitempty"`
}

ESAlias is alias object from https://www.elastic.co/guide/en/elasticsearch/reference/7.x/indices-aliases.html

func (*ESAlias) DeepCopy

func (in *ESAlias) DeepCopy() *ESAlias

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESAlias.

func (*ESAlias) DeepCopyInto

func (in *ESAlias) DeepCopyInto(out *ESAlias)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESAliases

type ESAliases struct {
	// Adds an alias to an index.
	// +optional
	Add ESAlias `json:"add,omitempty"`
	// Adds an alias to an index.
	// +optional
	Remove ESAlias `json:"remove,omitempty"`
	// Adds an alias to an index.
	// +optional
	RemoveIndex ESAlias `json:"remove_index,omitempty"`
}

ESAliases is aliases object from https://www.elastic.co/guide/en/elasticsearch/reference/7.x/indices-aliases.html

func (*ESAliases) DeepCopy

func (in *ESAliases) DeepCopy() *ESAliases

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESAliases.

func (*ESAliases) DeepCopyInto

func (in *ESAliases) DeepCopyInto(out *ESAliases)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESAnalyze

type ESAnalyze struct {
	// The maximum number of tokens that can be produced using _analyze API. Defaults to 10000.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxTokenCount int64 `json:"max_token_count,omitempty"`
}

func (*ESAnalyze) DeepCopy

func (in *ESAnalyze) DeepCopy() *ESAnalyze

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESAnalyze.

func (*ESAnalyze) DeepCopyInto

func (in *ESAnalyze) DeepCopyInto(out *ESAnalyze)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESHighlights

type ESHighlights struct {
	// The maximum number of characters that will be analyzed for a highlight request. This setting is only applicable when highlighting is requested on a text that was indexed without offsets or term vectors. Defaults to 1000000.
	// +optional
	// +kubebuilder:validation:Minimum=1
	HighlightMaxAnalyzedOffset int64 `json:"max_analyzed_offset,omitempty"`
}

func (*ESHighlights) DeepCopy

func (in *ESHighlights) DeepCopy() *ESHighlights

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESHighlights.

func (*ESHighlights) DeepCopyInto

func (in *ESHighlights) DeepCopyInto(out *ESHighlights)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESIdle

type ESIdle struct {
	// How long a shard can not receive a search or get request until it’s considered search idle. (default is 30s)
	// +optional
	After string `json:"after,omitempty"`
}

ES Index values taken from: https://www.elastic.co/guide/en/elasticsearch/reference/7.x/index-modules.html

func (*ESIdle) DeepCopy

func (in *ESIdle) DeepCopy() *ESIdle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESIdle.

func (*ESIdle) DeepCopyInto

func (in *ESIdle) DeepCopyInto(out *ESIdle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESIndexBlocks

type ESIndexBlocks struct {
	// Set to true to make the index and index metadata read only, false to allow writes and metadata changes.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	ReadOnly string `json:"read_only,omitempty"`
	// Similar to index.blocks.read_only but also allows deleting the index to free up resources. The disk-based shard allocator may add and remove this block automatically.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	ReadOnlyAllowDelete string `json:"read_only_allow_delete,omitempty"`
	// Set to true to disable read operations against the index.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	Read string `json:"read,omitempty"`
	// Set to true to disable data write operations against the index. Unlike read_only, this setting does not affect metadata. For instance, you can close an index with a write block, but not an index with a read_only block.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	Write string `json:"write,omitempty"`
	// Set to true to disable index metadata reads and writes.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	Metadata string `json:"metadata,omitempty"`
}

ESIndexBlocks defines block in dynamic values

func (*ESIndexBlocks) DeepCopy

func (in *ESIndexBlocks) DeepCopy() *ESIndexBlocks

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESIndexBlocks.

func (*ESIndexBlocks) DeepCopyInto

func (in *ESIndexBlocks) DeepCopyInto(out *ESIndexBlocks)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESIndexRouting

type ESIndexRouting struct {
	Allocation ESRoutingAllocationEnable `json:"allocation,omitempty"`
	Rebalance  ESRoutingRebalanceEnable  `json:"rebalance,omitempty"`
}

ESIndexRouting defines routing in dynamic values

func (*ESIndexRouting) DeepCopy

func (in *ESIndexRouting) DeepCopy() *ESIndexRouting

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESIndexRouting.

func (*ESIndexRouting) DeepCopyInto

func (in *ESIndexRouting) DeepCopyInto(out *ESIndexRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESIndexSettings

type ESIndexSettings struct {
	//Static Index settings
	//The number of primary shards that an index should have. Defaults to 1. This setting can only be set at index creation time. It cannot be changed on a closed index. Note: the number of shards are limited to 1024 per index. This limitation is a safety limit to prevent accidental creation of indices that can destabilize a cluster due to resource allocation.
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=1024
	NumOfShards int32 `json:"number_of_shards,omitempty"`
	// Shard structure
	// +optional
	Shard ESShard `json:"shard,omitempty"`
	// The default value compresses stored data with LZ4 compression, but this can be set to best_compression which uses DEFLATE for a higher compression ratio, at the expense of slower stored fields performance. If you are updating the compression type, the new one will be applied after segments are merged. Segment merging can be forced using force merge.
	// +optional
	// +kubebuilder:validation:Pattern=`^(default|best_compression)$`
	Codec string `json:"codec,omitempty"`
	// The number of shards a custom routing value can go to. Defaults to 1 and can only be set at index creation time. This value must be less than the index.number_of_shards unless the index.number_of_shards value is also 1. See Routing to an index partition for more details about how this setting is used.
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=1024
	// +kubebuilder:validation:ExclusiveMaximum=true
	RoutingPartitionSize int32 `json:"routing_partition_size,omitempty"`
	// Indicates whether cached filters are pre-loaded for nested queries. Possible values are true (default) and false.
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	LoadFixedBitsetFiltersEagerly string `json:"load_fixed_bitset_filters_eagerly,omitempty"`
	// Indicates whether the index should be hidden by default. Hidden indices are not returned by default when using a wildcard expression. This behavior is controlled per request through the use of the expand_wildcards parameter. Possible values are true and false (default).
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false)$`
	Hidden string `json:"hidden,omitempty"`

	//Dynamic index settings
	//The number of replicas each primary shard has. Defaults to 1.
	// +optional
	// +kubebuilder:validation:Minimum=1
	NumOfReplicas int32 `json:"number_of_replicas,omitempty"`
	// Auto-expand the number of replicas based on the number of data nodes in the cluster. Set to a dash delimited lower and upper bound (e.g. 0-5) or use all for the upper bound (e.g. 0-all). Defaults to false (i.e. disabled). Note that the auto-expanded number of replicas only takes allocation filtering rules into account, but ignores any other allocation rules such as shard allocation awareness and total shards per node, and this can lead to the cluster health becoming YELLOW if the applicable rules prevent all the replicas from being allocated.
	// +optional
	AutoExpandReplicas string `json:"auto_expand_replicas,omitempty"`
	// How long a shard can not receive a search or get request until it’s considered search idle. (default is 30s)
	// +optional
	SearchIdleAfter ESSearch `json:"search,omitempty"`
	// How often to perform a refresh operation, which makes recent changes to the index visible to search. Defaults to 1s. Can be set to -1 to disable refresh. If this setting is not explicitly set, shards that haven’t seen search traffic for at least index.search.idle.after seconds will not receive background refreshes until they receive a search request. Searches that hit an idle shard where a refresh is pending will wait for the next background refresh (within 1s). This behavior aims to automatically optimize bulk indexing in the default case when no searches are performed. In order to opt out of this behavior an explicit value of 1s should set as the refresh interval.
	// +optional
	RefreshInterval string `json:"refresh_interval,omitempty"`
	// The maximum value of from + size for searches to this index. Defaults to 10000. Search requests take heap memory and time proportional to from + size and this limits that memory. See Scroll or Search After for a more efficient alternative to raising this.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxResultWindow int64 `json:"max_result_window,omitempty"`
	// The maximum value of from + size for inner hits definition and top hits aggregations to this index. Defaults to 100. Inner hits and top hits aggregation take heap memory and time proportional to from + size and this limits that memory.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxInnerResultWindow int64 `json:"max_inner_result_window,omitempty"`
	// The maximum value of window_size for rescore requests in searches of this index. Defaults to index.max_result_window which defaults to 10000. Search requests take heap memory and time proportional to max(window_size, from + size) and this limits that memory.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxRescoreWindow int64 `json:"max_rescore_window,omitempty"`
	// The maximum value of window_size for rescore requests in searches of this index. Defaults to index.max_result_window which defaults to 10000. Search requests take heap memory and time proportional to max(window_size, from + size) and this limits that memory.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxDocValueFieldsSearch int64 `json:"max_docvalue_fields_search,omitempty"`
	// The maximum number of script_fields that are allowed in a query. Defaults to 32.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxScriptFields int64 `json:"max_script_fields,omitempty"`
	// The maximum allowed difference between min_gram and max_gram for NGramTokenizer and NGramTokenFilter. Defaults to 1.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxNgramDiff int64 `json:"max_ngram_diff,omitempty"`
	// The maximum allowed difference between max_shingle_size and min_shingle_size for ShingleTokenFilter. Defaults to 3.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxShingleDiff int64 `json:"max_shingle_diff,omitempty"`

	// +optional
	Blocks ESIndexBlocks `json:"blocks,omitempty"`

	// Maximum number of refresh listeners available on each shard of the index. These listeners are used to implement refresh=wait_for.
	// The maximum allowed difference between max_shingle_size and min_shingle_size for ShingleTokenFilter. Defaults to 3.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxRefreshListeners int64 `json:"max_refresh_listeners,omitempty"`

	// +optional
	Analyze ESAnalyze `json:"analyze,omitempty"`

	// +optional
	Highlight ESHighlights `json:"highlight,omitempty"`
	// The maximum number of terms that can be used in Terms Query. Defaults to 65536.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxTermsCount int64 `json:"max_terms_count,omitempty"`
	// The maximum length of regex that can be used in Regexp Query. Defaults to 1000.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxRegexLength int64 `json:"max_regex_length,omitempty"`
	// Routing values
	// +optional
	Routing ESIndexRouting `json:"routing,omitempty"`
	// The length of time that a deleted document’s version number remains available for further versioned operations. Defaults to 60s.
	// +optional
	GCdeletes string `json:"gc_deletes,omitempty"`
	// The default ingest node pipeline for this index. Index requests will fail if the default pipeline is set and the pipeline does not exist. The default may be overridden using the pipeline parameter. The special pipeline name _none indicates no ingest pipeline should be run.
	// +optional
	DefaultPipeline string `json:"default_pipeline,omitempty"`
	// The final ingest node pipeline for this index. Index requests will fail if the final pipeline is set and the pipeline does not exist. The final pipeline always runs after the request pipeline (if specified) and the default pipeline (if it exists). The special pipeline name _none indicates no ingest pipeline will run.
	// +optional
	FinalPipeline string `json:"final_pipeline,omitempty"`
}

ESIndexSettings settings for index NOTE: until we run on 1.17 - we can't have default values, this means we can't use bool here. We would need to use string and watch for "" to note default value

func (*ESIndexSettings) DeepCopy

func (in *ESIndexSettings) DeepCopy() *ESIndexSettings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESIndexSettings.

func (*ESIndexSettings) DeepCopyInto

func (in *ESIndexSettings) DeepCopyInto(out *ESIndexSettings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESRoutingAllocationEnable

type ESRoutingAllocationEnable struct {
	// Controls shard allocation for this index. It can be set to:
	//     all (default) - Allows shard allocation for all shards.
	//     primaries - Allows shard allocation only for primary shards.
	//     new_primaries - Allows shard allocation only for newly-created primary shards.
	//     none - No shard allocation is allowed.
	// +optional
	// +kubebuilder:validation:Pattern=`^(all|primaries|new_primaries|none)$`
	Enable string `json:"enable,omitempty"`
}

func (*ESRoutingAllocationEnable) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESRoutingAllocationEnable.

func (*ESRoutingAllocationEnable) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESRoutingRebalanceEnable

type ESRoutingRebalanceEnable struct {
	// Enables shard rebalancing for this index. It can be set to:
	//     all (default) - Allows shard rebalancing for all shards.
	//     primaries - Allows shard rebalancing only for primary shards.
	//     replicas - Allows shard rebalancing only for replica shards.
	//     none - No shard rebalancing is allowed.
	// +optional
	// +kubebuilder:validation:Pattern=`^(all|primaries|replicas|none)$`
	Enable string `json:"enable,omitempty"`
}

func (*ESRoutingRebalanceEnable) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESRoutingRebalanceEnable.

func (*ESRoutingRebalanceEnable) DeepCopyInto

func (in *ESRoutingRebalanceEnable) DeepCopyInto(out *ESRoutingRebalanceEnable)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESSearch

type ESSearch struct {
	// +optional
	Idle ESIdle `json:"idle,omitempty"`
}

func (*ESSearch) DeepCopy

func (in *ESSearch) DeepCopy() *ESSearch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESSearch.

func (*ESSearch) DeepCopyInto

func (in *ESSearch) DeepCopyInto(out *ESSearch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ESShard

type ESShard struct {
	// Whether or not shards should be checked for corruption before opening. When corruption is detected, it will prevent the shard from being opened. Accepts: true, false, checksum
	// +optional
	// +kubebuilder:validation:Pattern=`^(true|false|checksum)$`
	ShardCheckOnStartup string `json:"check_on_startup,omitempty"`
}

ESShard would hold shard structure

func (*ESShard) DeepCopy

func (in *ESShard) DeepCopy() *ESShard

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ESShard.

func (*ESShard) DeepCopyInto

func (in *ESShard) DeepCopyInto(out *ESShard)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticSearchIndex

type ElasticSearchIndex struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ElasticSearchIndexSpec   `json:"spec,omitempty"`
	Status ElasticSearchIndexStatus `json:"status,omitempty"`
}

ElasticSearchIndex is the Schema for the elasticsearchindices API +kubebuilder:subresource:status +kubebuilder:resource:path=elasticsearchindices,scope=Namespaced

func (*ElasticSearchIndex) DeepCopy

func (in *ElasticSearchIndex) DeepCopy() *ElasticSearchIndex

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchIndex.

func (*ElasticSearchIndex) DeepCopyInto

func (in *ElasticSearchIndex) DeepCopyInto(out *ElasticSearchIndex)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ElasticSearchIndex) DeepCopyObject

func (in *ElasticSearchIndex) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ElasticSearchIndexList

type ElasticSearchIndexList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ElasticSearchIndex `json:"items"`
}

ElasticSearchIndexList contains a list of ElasticSearchIndex

func (*ElasticSearchIndexList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchIndexList.

func (*ElasticSearchIndexList) DeepCopyInto

func (in *ElasticSearchIndexList) DeepCopyInto(out *ElasticSearchIndexList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ElasticSearchIndexList) DeepCopyObject

func (in *ElasticSearchIndexList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ElasticSearchIndexSpec

type ElasticSearchIndexSpec struct {
	// See more at https://www.elastic.co/guide/en/elasticsearch/reference/7.x/index-modules.html
	// Name of ES index
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=255
	// +kubebuilder:validation:Pattern=`^[^-_+A-Z][^A-Z\\\/\*\?"\<\> ,|#]{1,254}$`
	Name string `json:"name"`
	// Should we drop index if K8S object is deleted, default false
	// +optional
	DropOnDelete bool `json:"drop_on_delete,omitempty"`

	//Index settings
	// +optional
	Settings ESIndexSettings `json:"settings"`
	// Mappings of ES Index
	// +kubebuilder:validation:Pattern=`[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]`
	Mappings string `json:"mappings"`
}

ElasticSearchIndexSpec defines the desired state of ElasticSearchIndex +k8s:openapi-gen=true

func (*ElasticSearchIndexSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchIndexSpec.

func (*ElasticSearchIndexSpec) DeepCopyInto

func (in *ElasticSearchIndexSpec) DeepCopyInto(out *ElasticSearchIndexSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticSearchIndexStatus

type ElasticSearchIndexStatus struct {
	// Acknowledgment of last operation success from ES cluster. If false - last operation failed or was not performed
	// +optional
	Acknowledged bool `json:"acknowledged,omitempty"`
	// Last operation attempted on ES index. Can be: create or udpate
	// +kubebuilder:validation:Pattern=`^(create|update)$`
	Operation string `json:"operation"`
	// LatestError would hold error, if last operation was un-successful, or it would be empty otherways
	// +optional
	LatestError string `json:"latest_error,omitempty"`
	// Name of index
	Name string `json:"index_name"`
}

ElasticSearchIndexStatus defines the observed state of ElasticSearchIndex +k8s:openapi-gen=true

func (*ElasticSearchIndexStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchIndexStatus.

func (*ElasticSearchIndexStatus) DeepCopyInto

func (in *ElasticSearchIndexStatus) DeepCopyInto(out *ElasticSearchIndexStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticSearchTemplate

type ElasticSearchTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ElasticSearchTemplateSpec   `json:"spec,omitempty"`
	Status ElasticSearchTemplateStatus `json:"status,omitempty"`
}

ElasticSearchTemplate is the Schema for the elasticsearchtemplates API +kubebuilder:subresource:status +kubebuilder:resource:path=elasticsearchtemplates,scope=Namespaced

func (*ElasticSearchTemplate) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchTemplate.

func (*ElasticSearchTemplate) DeepCopyInto

func (in *ElasticSearchTemplate) DeepCopyInto(out *ElasticSearchTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ElasticSearchTemplate) DeepCopyObject

func (in *ElasticSearchTemplate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ElasticSearchTemplateList

type ElasticSearchTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ElasticSearchTemplate `json:"items"`
}

ElasticSearchTemplateList contains a list of ElasticSearchTemplate

func (*ElasticSearchTemplateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchTemplateList.

func (*ElasticSearchTemplateList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ElasticSearchTemplateList) DeepCopyObject

func (in *ElasticSearchTemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ElasticSearchTemplateSpec

type ElasticSearchTemplateSpec struct {
	// See more at https://www.elastic.co/guide/en/elasticsearch/reference/7.x/indices-templates.html
	// Name of ES template
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=255
	// +kubebuilder:validation:Pattern=`^[^-_+A-Z][^A-Z\\\/\*\?"\<\> ,|#]{1,254}$`
	Name string `json:"name"`
	// Should we drop template if K8S object is deleted, default false
	// +optional
	DropOnDelete bool `json:"drop_on_delete,omitempty"`

	// (Required, array of strings) Array of wildcard expressions used to match the names of indices during creation.
	// +listType=set
	IndexPatterns []string `json:"index_patterns"`
	// (Optional, alias object) Index aliases which include the index. See Update index alias.
	// +optional
	Aliases ESAliases `json:"aliases,omitempty"`

	// (Optional, index setting object) Configuration options for the index. See Index Settings.
	// +optional
	Settings ESIndexSettings `json:"settings"`
	// (Optional, mapping object) Mapping for fields in the index. If specified, this mapping can include:
	//     Field names
	//     Field datatypes
	//     Mapping parameters
	// +kubebuilder:validation:Pattern=`[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]`
	Mappings string `json:"mappings"`

	// (Optional, integer) Version number used to manage index templates externally. This number is not automatically generated by Elasticsearch.
	// +optional
	// +kubebuilder:validation:MinValue=1
	Version int64 `json:"version,omitempty"`
}

ElasticSearchTemplateSpec defines the desired state of ElasticSearchTemplate

func (*ElasticSearchTemplateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchTemplateSpec.

func (*ElasticSearchTemplateSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ElasticSearchTemplateStatus

type ElasticSearchTemplateStatus struct {
	// Acknowledgment of last operation success from ES cluster. If false - last operation failed or was not performed
	// +optional
	Acknowledged bool `json:"acknowledged,omitempty"`
	// Last operation attempted on ES template. Can be: create or udpate
	// +kubebuilder:validation:Pattern=`^(create|update)$`
	Operation string `json:"operation"`
	// LatestError would hold error, if last operation was un-successful, or it would be empty otherways
	// +optional
	LatestError string `json:"latest_error,omitempty"`
	Name        string `json:"template_name"`
}

ElasticSearchTemplateStatus defines the observed state of ElasticSearchTemplate

func (*ElasticSearchTemplateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticSearchTemplateStatus.

func (*ElasticSearchTemplateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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