v1alpha1

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2019 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=nfs.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.

Index

Constants

View Source
const (
	CustomResourceGroup = "nfs.rook.io"
	Version             = "v1alpha1"
)

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: nfsrookio.GroupName, Version: Version}

SchemeGroupVersion is group version used to register these objects

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AllowedClientsSpec

type AllowedClientsSpec struct {

	// Name of the clients group
	Name string `json:"name,omitempty"`

	// The clients that can access the share
	// Values can be hostname, ip address, netgroup, CIDR network address, or all
	Clients []string `json:"clients,omitempty"`

	// Reading and Writing permissions for the client to access the NFS export
	// Valid values are "ReadOnly", "ReadWrite" and "none"
	// Gets overridden when ServerSpec.accessMode is specified
	AccessMode string `json:"accessMode,omitempty"`

	// Squash options for clients
	// Valid values are "none", "rootid", "root", and "all"
	// Gets overridden when ServerSpec.squash is specified
	Squash string `json:"squash,omitempty"`
}

AllowedClientsSpec represents the client specs for accessing the NFS export

func (*AllowedClientsSpec) DeepCopy

func (in *AllowedClientsSpec) DeepCopy() *AllowedClientsSpec

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

func (*AllowedClientsSpec) DeepCopyInto

func (in *AllowedClientsSpec) DeepCopyInto(out *AllowedClientsSpec)

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

type ExportsSpec

type ExportsSpec struct {
	// Name of the export
	Name string `json:"name,omitempty"`

	// The NFS server configuration
	Server ServerSpec `json:"server,omitempty"`

	// PVC from which the NFS daemon gets storage for sharing
	PersistentVolumeClaim v1.PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
}

ExportsSpec represents the spec of NFS exports

func (*ExportsSpec) DeepCopy

func (in *ExportsSpec) DeepCopy() *ExportsSpec

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

func (*ExportsSpec) DeepCopyInto

func (in *ExportsSpec) DeepCopyInto(out *ExportsSpec)

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

type NFSServer

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

func (*NFSServer) DeepCopy

func (in *NFSServer) DeepCopy() *NFSServer

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

func (*NFSServer) DeepCopyInto

func (in *NFSServer) DeepCopyInto(out *NFSServer)

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

func (*NFSServer) DeepCopyObject

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

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

type NFSServerList

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

func (*NFSServerList) DeepCopy

func (in *NFSServerList) DeepCopy() *NFSServerList

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

func (*NFSServerList) DeepCopyInto

func (in *NFSServerList) DeepCopyInto(out *NFSServerList)

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

func (*NFSServerList) DeepCopyObject

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

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

type NFSServerSpec

type NFSServerSpec struct {
	// The annotations-related configuration to add/set on each Pod related object.
	Annotations rookalpha.Annotations `json:"annotations,omitempty"`

	// Replicas of the NFS daemon
	Replicas int `json:"replicas,omitempty"`

	// The parameters to configure the NFS export
	Exports []ExportsSpec `json:"exports,omitempty"`
}

NFSServerSpec represents the spec of NFS daemon

func (*NFSServerSpec) DeepCopy

func (in *NFSServerSpec) DeepCopy() *NFSServerSpec

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

func (*NFSServerSpec) DeepCopyInto

func (in *NFSServerSpec) DeepCopyInto(out *NFSServerSpec)

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

type ServerSpec

type ServerSpec struct {
	// Reading and Writing permissions on the export
	// Valid values are "ReadOnly", "ReadWrite" and "none"
	AccessMode string `json:"accessMode,omitempty"`

	// This prevents the root users connected remotely from having root privileges
	// Valid values are "none", "rootid", "root", and "all"
	Squash string `json:"squash,omitempty"`

	// The clients allowed to access the NFS export
	AllowedClients []AllowedClientsSpec `json:"allowedClients,omitempty"`
}

ServerSpec represents the spec for configuring the NFS server

func (*ServerSpec) DeepCopy

func (in *ServerSpec) DeepCopy() *ServerSpec

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

func (*ServerSpec) DeepCopyInto

func (in *ServerSpec) DeepCopyInto(out *ServerSpec)

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