v1alpha1

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2019 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=edgefs.rook.io

Copyright 2018 The Rook Authors. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2018 The Rook Authors. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2018 The Rook Authors. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2018 The Rook Authors. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

View Source
const (
	PlacementKeyMgr    = "mgr"
	PlacementKeyTarget = "target"
)
View Source
const (
	CustomResourceGroup = "edgefs.rook.io"
	Version             = "v1alpha1"
)
View Source
const (
	ResourcesKeyMgr    = "mgr"
	ResourcesKeyTarget = "target"
)

Variables

View Source
var (
	// SchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: edgefsrookio.GroupName, Version: Version}

SchemeGroupVersion is group version used to register these objects

Functions

func GetMgrPlacement

func GetMgrPlacement(p rook.PlacementSpec) rook.Placement

GetMgrPlacement returns the placement for the MGR service

func GetMgrResources

func GetMgrResources(p rook.ResourceSpec) v1.ResourceRequirements

GetMgrResources returns the placement for the MGR service

func GetTargetPlacement

func GetTargetPlacement(p rook.PlacementSpec) rook.Placement

GetTargetPlacement returns the placement for the Target service

func GetTargetResources

func GetTargetResources(p rook.ResourceSpec) v1.ResourceRequirements

GetTargetResources returns the placement for the Targets

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Cluster

type Cluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              ClusterSpec   `json:"spec"`
	Status            ClusterStatus `json:"status,omitempty"`
}

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []Cluster `json:"items"`
}

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterSpec

type ClusterSpec struct {
	Storage rook.StorageScopeSpec `json:"storage,omitempty"`
	// The placement-related configuration to pass to kubernetes (affinity, node selector, tolerations).
	Placement rook.PlacementSpec `json:"placement,omitempty"`
	Network   NetworkSpec        `json:"network,omitempty"`

	// Resources set resource requests and limits
	//Resources rook.ResourceSpec `json:"resources,omitempty"`
	Resources v1.ResourceRequirements `json:"resources,omitempty"`
	// The path on the host where config and data can be persisted.
	DataDirHostPath      string            `json:"dataDirHostPath,omitempty"`
	ServiceAccount       string            `json:"serviceAccount,omitempty"`
	DataVolumeSize       resource.Quantity `json:"dataVolumeSize,omitempty"`
	DevicesResurrectMode string            `json:"devicesResurrectMode,omitempty"`
	EdgefsImageName      string            `json:"edgefsImageName,omitempty"`
}

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterState

type ClusterState string
const (
	ClusterStateCreating ClusterState = "Creating"
	ClusterStateCreated  ClusterState = "Created"
	ClusterStateUpdating ClusterState = "Updating"
	ClusterStateDeleting ClusterState = "Deleting"
	ClusterStateError    ClusterState = "Error"
)

type ClusterStatus

type ClusterStatus struct {
	State   ClusterState `json:"state,omitempty"`
	Message string       `json:"message,omitempty"`
}

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

type ISCSI

type ISCSI struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              ISCSISpec `json:"spec"`
}

func (*ISCSI) DeepCopy

func (in *ISCSI) DeepCopy() *ISCSI

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

func (*ISCSI) DeepCopyInto

func (in *ISCSI) DeepCopyInto(out *ISCSI)

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

func (*ISCSI) DeepCopyObject

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

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

type ISCSIList

type ISCSIList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []ISCSI `json:"items"`
}

func (*ISCSIList) DeepCopy

func (in *ISCSIList) DeepCopy() *ISCSIList

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

func (*ISCSIList) DeepCopyInto

func (in *ISCSIList) DeepCopyInto(out *ISCSIList)

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

func (*ISCSIList) DeepCopyObject

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

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

type ISCSISpec

type ISCSISpec struct {
	// The affinity to place the ISCSI pods (default is to place on any available nodes in EdgeFS running namespace)
	Placement rook.Placement `json:"placement"`
	// Resources set resource requests and limits
	Resources v1.ResourceRequirements `json:"resources,omitempty"`
	// The number of pods in the ISCSI replicaset
	Instances int32 `json:"instances"`
	//IISCSI Http port (default value 3000)
	TargetName string `json:"targetName,omitempty"`
	//specific ISCSI target parameters
	TargetParams TargetParametersSpec `json:"targetParams"`
}

ISCSISpec represent the spec of a iscsi service

func (*ISCSISpec) DeepCopy

func (in *ISCSISpec) DeepCopy() *ISCSISpec

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

func (*ISCSISpec) DeepCopyInto

func (in *ISCSISpec) DeepCopyInto(out *ISCSISpec)

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

type NFS

type NFS struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              NFSSpec `json:"spec"`
}

func (*NFS) DeepCopy

func (in *NFS) DeepCopy() *NFS

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

func (*NFS) DeepCopyInto

func (in *NFS) DeepCopyInto(out *NFS)

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

func (*NFS) DeepCopyObject

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

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

type NFSList

type NFSList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []NFS `json:"items"`
}

func (*NFSList) DeepCopy

func (in *NFSList) DeepCopy() *NFSList

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

func (*NFSList) DeepCopyInto

func (in *NFSList) DeepCopyInto(out *NFSList)

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

func (*NFSList) DeepCopyObject

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

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

type NFSSpec

type NFSSpec struct {
	// The affinity to place the NFS pods (default is to place on any available nodes in EdgeFS running namespace)
	Placement rook.Placement `json:"placement"`
	// Resources set resource requests and limits
	Resources v1.ResourceRequirements `json:"resources,omitempty"`
	// The number of pods in the NFS replicaset
	Instances int32 `json:"instances"`
}

NFSSpec represent the spec of a pool

func (*NFSSpec) DeepCopy

func (in *NFSSpec) DeepCopy() *NFSSpec

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

func (*NFSSpec) DeepCopyInto

func (in *NFSSpec) DeepCopyInto(out *NFSSpec)

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

type NetworkSpec

type NetworkSpec struct {
	ServerIfName string `json:"serverIfName"`
	BrokerIfName string `json:"brokerIfName"`
}

func (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

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

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

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

type S3

type S3 struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              S3Spec `json:"spec"`
}

func (*S3) DeepCopy

func (in *S3) DeepCopy() *S3

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

func (*S3) DeepCopyInto

func (in *S3) DeepCopyInto(out *S3)

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

func (*S3) DeepCopyObject

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

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

type S3List

type S3List struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []S3 `json:"items"`
}

func (*S3List) DeepCopy

func (in *S3List) DeepCopy() *S3List

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

func (*S3List) DeepCopyInto

func (in *S3List) DeepCopyInto(out *S3List)

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

func (*S3List) DeepCopyObject

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

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

type S3Spec

type S3Spec struct {
	// The affinity to place the S3 pods (default is to place on any available nodes in EdgeFS running namespace)
	Placement rook.Placement `json:"placement"`
	// Resources set resource requests and limits
	Resources v1.ResourceRequirements `json:"resources,omitempty"`
	// The number of pods in the S3 replicaset
	Instances int32 `json:"instances"`
	//S3X Http port (default value 3000)
	Port uint `json:"port,omitempty"`
	//S3X Https port (default value 3001)
	SecurePort uint `json:"securePort,omitempty"`
	// The name of the secret that stores the ssl certificate for secure s3 connections
	SSLCertificateRef string `json:"sslCertificateRef,,omitempty"`
}

S3Spec represent the spec of a s3 service

func (*S3Spec) DeepCopy

func (in *S3Spec) DeepCopy() *S3Spec

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

func (*S3Spec) DeepCopyInto

func (in *S3Spec) DeepCopyInto(out *S3Spec)

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

type S3X

type S3X struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              S3XSpec `json:"spec"`
}

func (*S3X) DeepCopy

func (in *S3X) DeepCopy() *S3X

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

func (*S3X) DeepCopyInto

func (in *S3X) DeepCopyInto(out *S3X)

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

func (*S3X) DeepCopyObject

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

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

type S3XList

type S3XList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []S3X `json:"items"`
}

func (*S3XList) DeepCopy

func (in *S3XList) DeepCopy() *S3XList

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

func (*S3XList) DeepCopyInto

func (in *S3XList) DeepCopyInto(out *S3XList)

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

func (*S3XList) DeepCopyObject

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

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

type S3XSpec

type S3XSpec struct {
	// The affinity to place the S3X pods (default is to place on any available nodes in EdgeFS running namespace)
	Placement rook.Placement `json:"placement"`
	// Resources set resource requests and limits
	Resources v1.ResourceRequirements `json:"resources,omitempty"`
	// The number of pods in the S3X replicaset
	Instances int32 `json:"instances"`
	//S3X Http port (default value 3000)
	Port uint `json:"port,omitempty"`
	//S3X Https port (default value 3001)
	SecurePort uint `json:"securePort,omitempty"`
	// The name of the secret that stores the ssl certificate for secure s3x connections
	SSLCertificateRef string `json:"sslCertificateRef,,omitempty"`
}

S3XSpec represent the spec of a s3 service

func (*S3XSpec) DeepCopy

func (in *S3XSpec) DeepCopy() *S3XSpec

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

func (*S3XSpec) DeepCopyInto

func (in *S3XSpec) DeepCopyInto(out *S3XSpec)

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

type TargetParametersSpec

type TargetParametersSpec struct {
	MaxRecvDataSegmentLength uint `json:"maxRecvDataSegmentLength"`
	DefaultTime2Retain       uint `json:"defaultTime2Retain"`
	DefaultTime2Wait         uint `json:"defaultTime2Wait"`
	FirstBurstLength         uint `json:"firstBurstLength"`
	MaxBurstLength           uint `json:"maxBurstLength"`
	MaxQueueCmd              uint `json:"maxQueueCmd"`
}

func (*TargetParametersSpec) DeepCopy

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

func (*TargetParametersSpec) DeepCopyInto

func (in *TargetParametersSpec) DeepCopyInto(out *TargetParametersSpec)

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