Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the peerdiscovery v1alpha1 API group +kubebuilder:object:generate=true +groupName=peerdiscovery.irt-saintexupery.com
Index ¶
- Variables
- type Categories
- type Category
- type ConnectivityValues
- type IdentitiesStatus
- type Identity
- type IdentityList
- type IdentitySpec
- type IdentityStateValues
- type LoadBalancerDefinition
- type Peer
- type PeerList
- type PeerSpec
- type PeerStatus
- type PeersSyncAndIdentitySync
- type Swarm
- type SwarmDefinition
- type SwarmNetwork
- type SwarmPool
- type SwarmPoolList
- type SwarmPoolSpec
- type SwarmPoolStatus
- type SwarmStatus
- type SwarmStorage
- type TargetedSwarm
- type TargetedSwarms
- type TraefikIntegrationDefinition
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "peerdiscovery.irt-saintexupery.com", 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 Categories ¶
type Categories []Category
Categories contains ... a list of category
func (Categories) DeepCopy ¶
func (in Categories) DeepCopy() Categories
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Categories.
func (Categories) DeepCopyInto ¶
func (in Categories) DeepCopyInto(out *Categories)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Category ¶
type Category struct {
Name string `json:"name"`
}
Category is used to specify whatever metadata one need to attach to their identity
func (*Category) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Category.
func (*Category) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConnectivityValues ¶
type ConnectivityValues string
Connectivity value contains Peer status (online/offline)
const ( Unknown ConnectivityValues = "Unknown" Online ConnectivityValues = "Online" Offline ConnectivityValues = "Offline" )
Connectivity states.
type IdentitiesStatus ¶
type IdentitiesStatus struct {
IdentitiesStatus map[string]PeersSyncAndIdentitySync `json:"status"`
LastUpdate string `json:"lastUpdate"`
}
IdentityStatus defines the observed state of Identity
func (*IdentitiesStatus) DeepCopy ¶
func (in *IdentitiesStatus) DeepCopy() *IdentitiesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentitiesStatus.
func (*IdentitiesStatus) DeepCopyInto ¶
func (in *IdentitiesStatus) DeepCopyInto(out *IdentitiesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Identity ¶
type Identity struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec IdentitySpec `json:"spec,omitempty"`
Status IdentitiesStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:printcolumn:name="Name",type=string,JSONPath=`.spec.name` +kubebuilder:printcolumn:name="URL",type=string,JSONPath=`.spec.URL` Identity is the Schema for the identities API
func (*Identity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Identity.
func (*Identity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Identity) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IdentityList ¶
type IdentityList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Identity `json:"items"`
}
IdentityList contains a list of Identity
func (*IdentityList) DeepCopy ¶
func (in *IdentityList) DeepCopy() *IdentityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityList.
func (*IdentityList) DeepCopyInto ¶
func (in *IdentityList) DeepCopyInto(out *IdentityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IdentityList) DeepCopyObject ¶
func (in *IdentityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IdentitySpec ¶
type IdentitySpec struct {
PublicationTargets TargetedSwarms `json:"swarms"`
URL string `json:"URL"`
Description string `json:"description"`
Categories Categories `json:"categories"`
Name string `json:"name"`
}
IdentitySpec defines the desired state of Identity
func (*IdentitySpec) DeepCopy ¶
func (in *IdentitySpec) DeepCopy() *IdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentitySpec.
func (*IdentitySpec) DeepCopyInto ¶
func (in *IdentitySpec) DeepCopyInto(out *IdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityStateValues ¶
type IdentityStateValues string
IdentityStateValues represents the state of a the publicated identity (synchronized, i.e. published on the IPFS network, or not)
const ( // IPFS data in sync with kubernetes object Synchronized IdentityStateValues = "Synchronized" // IPFS data out of sync with kubernetes object OutOfSync IdentityStateValues = "Out of sync" )
Identity states.
type LoadBalancerDefinition ¶
type LoadBalancerDefinition struct {
// Set value as "auto" to let the cloud manager provisioning an IP automatically
LoadBalancerIP string `json:"loadBalancerIP"`
ExposedAPI bool `json:"exposedAPI"`
}
func (*LoadBalancerDefinition) DeepCopy ¶
func (in *LoadBalancerDefinition) DeepCopy() *LoadBalancerDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerDefinition.
func (*LoadBalancerDefinition) DeepCopyInto ¶
func (in *LoadBalancerDefinition) DeepCopyInto(out *LoadBalancerDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Peer ¶
type Peer struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PeerSpec `json:"spec,omitempty"`
Status PeerStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:printcolumn:name="PeerName",type=string,JSONPath=`.spec.name` +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.status` +kubebuilder:printcolumn:name="URL",type=string,JSONPath=`.spec.url` +kubebuilder:printcolumn:name="Description",type=string,JSONPath=`.spec.description` Peer is the Schema for the peers API
func (*Peer) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Peer.
func (*Peer) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Peer) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PeerList ¶
type PeerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Peer `json:"items"`
}
PeerList contains a list of Peer
func (*PeerList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeerList.
func (*PeerList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PeerList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PeerSpec ¶
type PeerSpec struct {
URL string `json:"url"`
Description string `json:"description"`
Categories Categories `json:"categories"`
Name string `json:"name"`
}
PeerSpec defines the desired state of Peer
func (*PeerSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeerSpec.
func (*PeerSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeerStatus ¶
type PeerStatus struct {
PeerStatus ConnectivityValues `json:"status"`
// count how many time the peer disapeared from underlying IPFS table
MissingCounter int `json:"missingCounter"`
}
PeerStatus defines the observed state of Peer
func (*PeerStatus) DeepCopy ¶
func (in *PeerStatus) DeepCopy() *PeerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeerStatus.
func (*PeerStatus) DeepCopyInto ¶
func (in *PeerStatus) DeepCopyInto(out *PeerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeersSyncAndIdentitySync ¶
type PeersSyncAndIdentitySync struct {
IdentitySync IdentityStateValues `json:"identity status"`
PeersSync string `json:"synchronized peers"`
}
func (*PeersSyncAndIdentitySync) DeepCopy ¶
func (in *PeersSyncAndIdentitySync) DeepCopy() *PeersSyncAndIdentitySync
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeersSyncAndIdentitySync.
func (*PeersSyncAndIdentitySync) DeepCopyInto ¶
func (in *PeersSyncAndIdentitySync) DeepCopyInto(out *PeersSyncAndIdentitySync)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Swarm ¶
type Swarm struct {
Name string `json:"name"`
SwarmDefinition SwarmDefinition `json:"swarmDefinition,omitempty"`
Network SwarmNetwork `json:"network"`
Storage SwarmStorage `json:"storage"`
IPFSVersion string `json:"IPFSVersion"`
}
func (*Swarm) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Swarm.
func (*Swarm) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmDefinition ¶
type SwarmDefinition struct {
BootstrapNodeAddresses []string `json:"bootstrapNodeAddresses,omitempty"`
SwarmKeySecretRef string `json:"swarmKeySecretRef"`
}
func (*SwarmDefinition) DeepCopy ¶
func (in *SwarmDefinition) DeepCopy() *SwarmDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmDefinition.
func (*SwarmDefinition) DeepCopyInto ¶
func (in *SwarmDefinition) DeepCopyInto(out *SwarmDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmNetwork ¶
type SwarmNetwork struct {
Traefik TraefikIntegrationDefinition `json:"traefik,omitempty"`
LoadBalancer LoadBalancerDefinition `json:"loadBalancer,omitempty"`
SwarmPort int `json:"swarmPort"`
APIPort int `json:"apiPort"`
// If the load balancer doesn't have a public facing IP, no need to specify this
// Controller will extract the load balancer IP and swarm Port from Load balancer configuration
// to setup the underlying IPFS Node
AnnouncePort int `json:"announcePort,omitempty"`
AnnounceIP string `json:"announceIP,omitempty"`
}
func (*SwarmNetwork) DeepCopy ¶
func (in *SwarmNetwork) DeepCopy() *SwarmNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmNetwork.
func (*SwarmNetwork) DeepCopyInto ¶
func (in *SwarmNetwork) DeepCopyInto(out *SwarmNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmPool ¶
type SwarmPool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec SwarmPoolSpec `json:"spec,omitempty"`
Status SwarmPoolStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced SwarmPool is the Schema for the swarmpools API
func (*SwarmPool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmPool.
func (*SwarmPool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SwarmPool) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SwarmPool) HasSpecChanged ¶
HasSpecChanged returns true if object spec has changed
func (*SwarmPool) UpdateSpecHash ¶
func (sp *SwarmPool) UpdateSpecHash()
UpdateSpecHash computes and update spec hash, and stores it in status object field
type SwarmPoolList ¶
type SwarmPoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []SwarmPool `json:"items"`
}
SwarmPoolList contains a list of SwarmPool
func (*SwarmPoolList) DeepCopy ¶
func (in *SwarmPoolList) DeepCopy() *SwarmPoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmPoolList.
func (*SwarmPoolList) DeepCopyInto ¶
func (in *SwarmPoolList) DeepCopyInto(out *SwarmPoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SwarmPoolList) DeepCopyObject ¶
func (in *SwarmPoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SwarmPoolSpec ¶
type SwarmPoolSpec struct {
Swarms []Swarm `json:"swarms"`
}
SwarmPoolSpec defines the desired state of SwarmPool
func (*SwarmPoolSpec) DeepCopy ¶
func (in *SwarmPoolSpec) DeepCopy() *SwarmPoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmPoolSpec.
func (*SwarmPoolSpec) DeepCopyInto ¶
func (in *SwarmPoolSpec) DeepCopyInto(out *SwarmPoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmPoolStatus ¶
type SwarmPoolStatus struct {
SwarmsStatus map[string]SwarmStatus `json:"status"`
LastUpdate string `json:"lastUpdate"`
SpecHash string `json:"hash"`
}
SwarmPoolStatus defines the observed state of SwarmPool
func (*SwarmPoolStatus) DeepCopy ¶
func (in *SwarmPoolStatus) DeepCopy() *SwarmPoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmPoolStatus.
func (*SwarmPoolStatus) DeepCopyInto ¶
func (in *SwarmPoolStatus) DeepCopyInto(out *SwarmPoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmStatus ¶
type SwarmStatus struct {
Name string `json:"Name"`
ID string `json:"Peer Id"`
Addresses []string `json:"Addresses"`
NbConnectedPeers int `json:"Number of connected peers"`
NbBootstrapAddresses int `json:"Number of bootstraps"`
}
func (*SwarmStatus) DeepCopy ¶
func (in *SwarmStatus) DeepCopy() *SwarmStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmStatus.
func (*SwarmStatus) DeepCopyInto ¶
func (in *SwarmStatus) DeepCopyInto(out *SwarmStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SwarmStorage ¶
type SwarmStorage struct {
StorageSize string `json:"capacity"`
}
func (*SwarmStorage) DeepCopy ¶
func (in *SwarmStorage) DeepCopy() *SwarmStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwarmStorage.
func (*SwarmStorage) DeepCopyInto ¶
func (in *SwarmStorage) DeepCopyInto(out *SwarmStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetedSwarm ¶
type TargetedSwarm struct {
Namespace string `json:"namespace"`
SwarmPoolName string `json:"swarmPool"`
Swarm string `json:"swarm"`
}
TargetedSwarm is the identity publication target (an IPFS node behind the scene)
func (*TargetedSwarm) DeepCopy ¶
func (in *TargetedSwarm) DeepCopy() *TargetedSwarm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetedSwarm.
func (*TargetedSwarm) DeepCopyInto ¶
func (in *TargetedSwarm) DeepCopyInto(out *TargetedSwarm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetedSwarms ¶
type TargetedSwarms []TargetedSwarm
TargetedSwarms is ... a list of TargetedSwarm
func (TargetedSwarms) DeepCopy ¶
func (in TargetedSwarms) DeepCopy() TargetedSwarms
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetedSwarms.
func (TargetedSwarms) DeepCopyInto ¶
func (in TargetedSwarms) DeepCopyInto(out *TargetedSwarms)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TraefikIntegrationDefinition ¶
type TraefikIntegrationDefinition struct {
TraefikEntryPoint string `json:"traefikEntryPoint"`
TraefikLoadBalancerService string `json:"traefikLoadBalancerServiceName"`
TraefikLoadBalancerNamespace string `json:"traefikLoadBalancerNamespace"`
}
func (*TraefikIntegrationDefinition) DeepCopy ¶
func (in *TraefikIntegrationDefinition) DeepCopy() *TraefikIntegrationDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TraefikIntegrationDefinition.
func (*TraefikIntegrationDefinition) DeepCopyInto ¶
func (in *TraefikIntegrationDefinition) DeepCopyInto(out *TraefikIntegrationDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.