Documentation
¶
Overview ¶
Package def implements definitions for Kafka resources.
Package def implements definitions for Kafka resources.
Package def implements definitions for Kafka resources.
Package def implements definitions for Kafka resources.
Package def implements definitions for Kafka resources.
Package def implements definitions for Kafka resources.
Index ¶
- type ACLDefinition
- type ACLEntryGroup
- type ACLEntryGroups
- type ACLSpecDefinition
- type BrokerDefinition
- type BrokerSpecDefinition
- type BrokersDefinition
- type BrokersSpecDefinition
- type ConfigKey
- type ConfigSource
- type Configs
- type ConfigsMap
- type PartitionAssignments
- type PartitionRackAssignments
- type ResourceDefinition
- type ResourceMetadataDefinition
- type ResourceMetadataLabels
- type TopicDefinition
- type TopicSpecDefinition
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ACLDefinition ¶ added in v0.1.0
type ACLDefinition struct { ResourceDefinition Spec ACLSpecDefinition `json:"spec"` }
ACLDefinition represents an ACL resource definition.
func NewACLDefinition ¶ added in v0.1.0
func NewACLDefinition( metadata ResourceMetadataDefinition, acls ACLEntryGroups, ) ACLDefinition
NewACLDefinition creates an ACL definition from metadata and config.
func (ACLDefinition) Copy ¶ added in v0.1.0
func (a ACLDefinition) Copy() ACLDefinition
Copy creates a copy of this ACLDefinition.
func (ACLDefinition) Validate ¶ added in v0.1.0
func (a ACLDefinition) Validate() error
Validate validates the definition.
type ACLEntryGroup ¶ added in v0.1.0
type ACLEntryGroup struct { Principals []string `json:"principals"` Hosts []string `json:"hosts"` Operations []string `json:"operations"` PermissionType string `json:"permissionType"` }
ACLEntryGroup represents an ACL entry group.
type ACLEntryGroups ¶ added in v0.1.0
type ACLEntryGroups []ACLEntryGroup
ACLEntryGroups represents a slice of ACL entry groups.
func (ACLEntryGroups) Contains ¶ added in v0.1.0
func (a ACLEntryGroups) Contains( principal string, host string, operation string, permissionType string, ) bool
Contains determines if an ACL entry is contained in any group.
func (ACLEntryGroups) Sort ¶ added in v0.1.0
func (a ACLEntryGroups) Sort()
Sort sorts ACL entry groups.
func (ACLEntryGroups) Validate ¶ added in v0.1.0
func (a ACLEntryGroups) Validate() error
Validate validates ACL entry groups.
type ACLSpecDefinition ¶ added in v0.1.0
type ACLSpecDefinition struct { ACLs ACLEntryGroups `json:"acls,omitempty"` DeleteUndefinedACLs bool `json:"deleteUndefinedAcls"` }
ACLSpecDefinition represents an ACL spec definition.
type BrokerDefinition ¶
type BrokerDefinition struct { ResourceDefinition Spec BrokerSpecDefinition `json:"spec"` }
BrokerDefinition represents a broker resource definition.
func NewBrokerDefinition ¶
func NewBrokerDefinition( metadata ResourceMetadataDefinition, configsMap ConfigsMap, ) BrokerDefinition
NewBrokerDefinition creates a broker definition from metadata and config.
func (BrokerDefinition) Copy ¶
func (b BrokerDefinition) Copy() BrokerDefinition
Copy creates a copy of this BrokerDefinition.
func (BrokerDefinition) Validate ¶
func (b BrokerDefinition) Validate() error
Validate validates the definition.
func (BrokerDefinition) ValidateWithMetadata ¶
func (b BrokerDefinition) ValidateWithMetadata(brokers meta.Brokers) error
ValidateWithMetadata further validates the definition using metadata.
type BrokerSpecDefinition ¶
type BrokerSpecDefinition struct { Configs ConfigsMap `json:"configs,omitempty"` DeleteUndefinedConfigs bool `json:"deleteUndefinedConfigs"` }
BrokerSpecDefinition represents a broker spec definition.
type BrokersDefinition ¶
type BrokersDefinition struct { ResourceDefinition Spec BrokersSpecDefinition `json:"spec"` }
BrokersDefinition represents a brokers resource definition.
func NewBrokersDefinition ¶
func NewBrokersDefinition( metadata ResourceMetadataDefinition, configsMap ConfigsMap, ) BrokersDefinition
NewBrokersDefinition creates a brokers definition from metadata and config.
func (BrokersDefinition) Copy ¶
func (b BrokersDefinition) Copy() BrokersDefinition
Copy creates a copy of this BrokersDefinition.
func (BrokersDefinition) Validate ¶
func (b BrokersDefinition) Validate() error
Validate validates the definition.
type BrokersSpecDefinition ¶
type BrokersSpecDefinition struct { Configs ConfigsMap `json:"configs,omitempty"` DeleteUndefinedConfigs bool `json:"deleteUndefinedConfigs"` }
BrokersSpecDefinition represents a brokers spec definition.
type ConfigKey ¶
type ConfigKey struct { Name string Value *string IsSensitive bool ReadOnly bool Source ConfigSource }
ConfigKey represents a config key.
type ConfigSource ¶
type ConfigSource int8
ConfigSource represents the source of a config key.
const ( ConfigSourceUnknown ConfigSource = 0 ConfigSourceDynamicTopicConfig ConfigSource = 1 ConfigSourceDynamicBrokerConfig ConfigSource = 2 ConfigSourceDynamicDefaultBrokerConfig ConfigSource = 3 ConfigSourceStaticBrokerConfig ConfigSource = 4 ConfigSourceDefaultConfig ConfigSource = 5 ConfigSourceDynamicBrokerLoggerConfig ConfigSource = 6 )
ConfigSource types.
type Configs ¶
type Configs []ConfigKey
Configs represents a slice of ConfigKey.
func (Configs) ToExportableMap ¶
func (c Configs) ToExportableMap() ConfigsMap
ToExportableMap returns an exportable map of the configs (sensitive keys filtered out).
type ConfigsMap ¶
ConfigsMap represents a map of resource configs.
type PartitionAssignments ¶
type PartitionAssignments [][]int32
PartitionAssignments represents partition assignments by broker ID.
type PartitionRackAssignments ¶
type PartitionRackAssignments [][]string
PartitionRackAssignments represents partition assignments by rack.
type ResourceDefinition ¶
type ResourceDefinition struct { APIVersion string `json:"apiVersion"` Kind string `json:"kind"` Metadata ResourceMetadataDefinition `json:"metadata"` }
ResourceDefinition represents a resource definition.
func (ResourceDefinition) ValidateResource ¶
func (r ResourceDefinition) ValidateResource() error
ValidateResource validates the resource definition.
type ResourceMetadataDefinition ¶
type ResourceMetadataDefinition struct { Labels ResourceMetadataLabels `json:"labels,omitempty"` Name string `json:"name"` Type string `json:"type,omitempty"` }
ResourceMetadataDefinition represents a resource metadata definition.
type ResourceMetadataLabels ¶
ResourceMetadataLabels represents resource metadata labels.
type TopicDefinition ¶
type TopicDefinition struct { ResourceDefinition Spec TopicSpecDefinition `json:"spec"` }
TopicDefinition represents a topic resource definition.
func NewTopicDefinition ¶
func NewTopicDefinition( metadata ResourceMetadataDefinition, partitionAssignments PartitionAssignments, partitionRackAssignments PartitionRackAssignments, configsMap ConfigsMap, brokers meta.Brokers, includeAssignments bool, includeRackAssignments bool, ) TopicDefinition
NewTopicDefinition creates a topic definition from metadata and config.
func (TopicDefinition) Copy ¶
func (t TopicDefinition) Copy() TopicDefinition
Copy creates a copy of this TopicDefinition.
func (TopicDefinition) Validate ¶
func (t TopicDefinition) Validate() error
Validate validates the definition.
func (TopicDefinition) ValidateWithMetadata ¶
func (t TopicDefinition) ValidateWithMetadata(brokers meta.Brokers) error
ValidateWithMetadata further validates the definition using metadata.
type TopicSpecDefinition ¶
type TopicSpecDefinition struct { Configs ConfigsMap `json:"configs,omitempty"` DeleteUndefinedConfigs bool `json:"deleteUndefinedConfigs"` Partitions int `json:"partitions"` ReplicationFactor int `json:"replicationFactor"` Assignments PartitionAssignments `json:"assignments,omitempty"` RackAssignments PartitionRackAssignments `json:"rackAssignments,omitempty"` }
TopicSpecDefinition represents a topic spec definition.
func (TopicSpecDefinition) HasAssignments ¶
func (s TopicSpecDefinition) HasAssignments() bool
HasAssignments determines if a spec has assignments.
func (TopicSpecDefinition) HasRackAssignments ¶
func (s TopicSpecDefinition) HasRackAssignments() bool
HasRackAssignments determines if a spec has rack assignments.