v1alpha1

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Aug 7, 2023 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the pco v1alpha1 API group +kubebuilder:object:generate=true +groupName=pco.plusserver.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "pco.plusserver.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 ComputeQuotas

type ComputeQuotas struct {
	// Number of cores between 0 and 500
	Cores    *int `json:"cores,omitempty"`
	FixedIps *int `json:"fixed_ips,omitempty"`

	// The number of allowed floating IP addresses for each project
	FloatingIps              *int `json:"floating_ips,omitempty"`
	InjectedFileContentBytes *int `json:"injected_file_content_bytes,omitempty"`
	InjectedFilePathBytes    *int `json:"injected_file_path_bytes,omitempty"`
	InjectedFiles            *int `json:"injected_files,omitempty"`
	Instances                int  `json:"instances"`
	KeyPairs                 int  `json:"key_pairs"`
	MetadataItems            int  `json:"metadata_items"`

	// Maximum amount of RAM in MiB
	Ram                *int `json:"ram,omitempty"`
	SecurityGroupRules *int `json:"security_group_rules,omitempty"`
	SecurityGroups     *int `json:"security_groups,omitempty"`
	ServerGroupMembers *int `json:"server_group_members,omitempty"`
	ServerGroups       int  `json:"server_groups"`
}

ComputeQuotas defines model for ComputeQuotas.

func (*ComputeQuotas) DeepCopy

func (in *ComputeQuotas) DeepCopy() *ComputeQuotas

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

func (*ComputeQuotas) DeepCopyInto

func (in *ComputeQuotas) DeepCopyInto(out *ComputeQuotas)

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

type ConditionTypes

type ConditionTypes string
const (
	UserReady               ConditionTypes = "UserReady"
	ProjectReady            ConditionTypes = "ProjectReady"
	RegionReady             ConditionTypes = "RegionReady"
	UserProjectBindingReady ConditionTypes = "UserProjectBindingReady"
)

type NetworkQuotas

type NetworkQuotas struct {
	// The number of floating IP addresses allowed for each project.A value of -1 means no limit
	Floatingip *int `json:"floatingip,omitempty"`
	Network    int  `json:"network"`
	Port       *int `json:"port,omitempty"`

	// The number of role-based access control (RBAC) policies for each project
	RbacPolicy        *int `json:"rbac_policy,omitempty"`
	Router            int  `json:"router"`
	SecurityGroup     int  `json:"security_group"`
	SecurityGroupRule int  `json:"security_group_rule"`
	Subnet            int  `json:"subnet"`
	Subnetpool        *int `json:"subnetpool,omitempty"`
}

NetworkQuotas defines model for NetworkQuotas.

func (*NetworkQuotas) DeepCopy

func (in *NetworkQuotas) DeepCopy() *NetworkQuotas

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

func (*NetworkQuotas) DeepCopyInto

func (in *NetworkQuotas) DeepCopyInto(out *NetworkQuotas)

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

type Project

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

	Spec   ProjectSpec   `json:"spec,omitempty"`
	Status ProjectStatus `json:"status,omitempty"`
}

Project is the Schema for the projects API

func (*Project) AwaitReady added in v0.3.0

func (v *Project) AwaitReady(ctx context.Context, timeout time.Duration, client client.Client, logger logr.Logger) error

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

func (*Project) Default

func (r *Project) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Project) SetupWebhookWithManager

func (r *Project) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Project) UpdateProjectCondition

func (r *Project) UpdateProjectCondition(ctx context.Context, reconcileClient client.Client, reason ProjectReadyReasons, message string) error

func (*Project) UpdateRegionCondition

func (r *Project) UpdateRegionCondition(ctx context.Context, reconcileClient client.Client, reason RegionReadyReasons, message string) error

func (*Project) ValidateCreate

func (r *Project) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Project) ValidateDelete

func (r *Project) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Project) ValidateUpdate

func (r *Project) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ProjectList

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

ProjectList contains a list of Project

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

type ProjectReadyReasons

type ProjectReadyReasons string
const (
	ProjectIsReady   ProjectReadyReasons = "ProjectIsReady"
	ProjectIsUnready ProjectReadyReasons = "ProjectIsUnready"
	ProjectNotFound  ProjectReadyReasons = "ProjectNotFound"
	ProjectUnknown   ProjectReadyReasons = "UnknownError"
)

type ProjectSpec

type ProjectSpec struct {
	Region      string `json:"region,omitempty"`
	Description string `json:"description,omitempty"`
	//Enabled     *bool            `json:"enabled,omitempty"`
	Quotas *QuotaCollection `json:"quotas,omitempty"`
}

ProjectSpec defines the desired state of Project

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus

type ProjectStatus struct {
	Conditions []metav1.Condition `json:"conditions"`
}

ProjectStatus defines the observed state of Project

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

type QuotaCollection

type QuotaCollection struct {
	Compute *ComputeQuotas `json:"compute,omitempty"`
	Network *NetworkQuotas `json:"network,omitempty"`
	Volume  *VolumeQuotas  `json:"volume,omitempty"`
}

func (*QuotaCollection) DeepCopy

func (in *QuotaCollection) DeepCopy() *QuotaCollection

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

func (*QuotaCollection) DeepCopyInto

func (in *QuotaCollection) DeepCopyInto(out *QuotaCollection)

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

type Region

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

	Spec   RegionSpec   `json:"spec,omitempty"`
	Status RegionStatus `json:"status,omitempty"`
}

Region is the Schema for the regions API

func (*Region) AwaitReady added in v0.3.0

func (v *Region) AwaitReady(ctx context.Context, timeout time.Duration, client client.Client, logger logr.Logger) error

func (*Region) DeepCopy

func (in *Region) DeepCopy() *Region

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

func (*Region) DeepCopyInto

func (in *Region) DeepCopyInto(out *Region)

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

func (*Region) DeepCopyObject

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

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

func (*Region) Default

func (r *Region) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Region) SetupWebhookWithManager

func (r *Region) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Region) UpdateRegionCondition

func (r *Region) UpdateRegionCondition(ctx context.Context, reconcileClient client.Client, reason RegionReadyReasons, message string) error

func (*Region) ValidateCreate

func (r *Region) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Region) ValidateDelete

func (r *Region) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Region) ValidateUpdate

func (r *Region) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionList

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

RegionList contains a list of Region

func (*RegionList) DeepCopy

func (in *RegionList) DeepCopy() *RegionList

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

func (*RegionList) DeepCopyInto

func (in *RegionList) DeepCopyInto(out *RegionList)

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

func (*RegionList) DeepCopyObject

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

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

type RegionReadyReasons

type RegionReadyReasons string
const (
	RegionIsReady   RegionReadyReasons = "RegionIsReady"
	RegionIsUnready RegionReadyReasons = "RegionIsUnready"
	RegionNotFound  RegionReadyReasons = "RegionNotFound"
	RegionUnknown   RegionReadyReasons = "UnknownError"
)

type RegionSpec

type RegionSpec struct {
	Endpoint string `json:"endpoint,omitempty"`
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
}

RegionSpec defines the desired state of Region

func (*RegionSpec) DeepCopy

func (in *RegionSpec) DeepCopy() *RegionSpec

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

func (*RegionSpec) DeepCopyInto

func (in *RegionSpec) DeepCopyInto(out *RegionSpec)

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

type RegionStatus

type RegionStatus struct {
	Conditions []metav1.Condition `json:"conditions"`
}

RegionStatus defines the observed state of Region

func (*RegionStatus) DeepCopy

func (in *RegionStatus) DeepCopy() *RegionStatus

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

func (*RegionStatus) DeepCopyInto

func (in *RegionStatus) DeepCopyInto(out *RegionStatus)

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

type User

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

	Spec   UserSpec   `json:"spec,omitempty"`
	Status UserStatus `json:"status,omitempty"`
}

User is the Schema for the users API

func (*User) AwaitReady added in v0.3.0

func (v *User) AwaitReady(ctx context.Context, timeout time.Duration, client client.Client, logger logr.Logger) error

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject

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

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

func (*User) Default

func (r *User) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (User) DefaultUserProjectBindingName

func (u User) DefaultUserProjectBindingName() types.NamespacedName

func (User) Mail

func (u User) Mail(ctx context.Context, r client.Client) (*string, error)

func (*User) SetupWebhookWithManager

func (r *User) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*User) UpdateUserCondition

func (r *User) UpdateUserCondition(ctx context.Context, reconcileClient client.Client, reason UserReadyReasons, message string) error

func (User) UserAccessSecretName

func (u User) UserAccessSecretName() types.NamespacedName

func (*User) ValidateCreate

func (r *User) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*User) ValidateDelete

func (r *User) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*User) ValidateUpdate

func (r *User) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type UserList

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

UserList contains a list of User

func (*UserList) DeepCopy

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject

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

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

type UserProjectBinding

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

	Spec   UserProjectBindingSpec   `json:"spec,omitempty"`
	Status UserProjectBindingStatus `json:"status,omitempty"`
}

UserProjectBinding is the Schema for the userprojectbindings API

func (UserProjectBinding) ApplicationCredentialName added in v0.2.0

func (upb UserProjectBinding) ApplicationCredentialName() string

func (*UserProjectBinding) AwaitReady added in v0.3.0

func (v *UserProjectBinding) AwaitReady(ctx context.Context, timeout time.Duration, client client.Client, logger logr.Logger) error

func (*UserProjectBinding) DeepCopy

func (in *UserProjectBinding) DeepCopy() *UserProjectBinding

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

func (*UserProjectBinding) DeepCopyInto

func (in *UserProjectBinding) DeepCopyInto(out *UserProjectBinding)

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

func (*UserProjectBinding) DeepCopyObject

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

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

func (*UserProjectBinding) SetupWebhookWithManager

func (r *UserProjectBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*UserProjectBinding) UpdateProjectCondition

func (r *UserProjectBinding) UpdateProjectCondition(ctx context.Context, reconcileClient client.Client, reason ProjectReadyReasons, message string) error

func (*UserProjectBinding) UpdateUserCondition

func (r *UserProjectBinding) UpdateUserCondition(ctx context.Context, reconcileClient client.Client, reason UserReadyReasons, message string) error

func (*UserProjectBinding) UpdateUserProjectBindingCondition

func (r *UserProjectBinding) UpdateUserProjectBindingCondition(ctx context.Context, reconcileClient client.Client, reason UserProjectBindingReadyReasons, message string) error

func (*UserProjectBinding) ValidateCreate

func (r *UserProjectBinding) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*UserProjectBinding) ValidateDelete

func (r *UserProjectBinding) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*UserProjectBinding) ValidateUpdate

func (r *UserProjectBinding) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type UserProjectBindingList

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

UserProjectBindingList contains a list of UserProjectBinding

func (*UserProjectBindingList) DeepCopy

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

func (*UserProjectBindingList) DeepCopyInto

func (in *UserProjectBindingList) DeepCopyInto(out *UserProjectBindingList)

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

func (*UserProjectBindingList) DeepCopyObject

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

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

type UserProjectBindingReadyReasons

type UserProjectBindingReadyReasons string
const (
	UserProjectBindingIsReady UserProjectBindingReadyReasons = "UserProjectBindingIsReady"
	UserProjectBindingUnknown UserProjectBindingReadyReasons = "UnknownError"
)

type UserProjectBindingSpec

type UserProjectBindingSpec struct {
	Project               string `json:"project"`
	User                  string `json:"user"`
	ApplicationCredential bool   `json:"applicationCredential,omitempty"`
}

UserProjectBindingSpec defines the desired state of UserProjectBinding

func (*UserProjectBindingSpec) DeepCopy

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

func (*UserProjectBindingSpec) DeepCopyInto

func (in *UserProjectBindingSpec) DeepCopyInto(out *UserProjectBindingSpec)

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

type UserProjectBindingStatus

type UserProjectBindingStatus struct {
	Conditions []metav1.Condition `json:"conditions"`
}

UserProjectBindingStatus defines the observed state of UserProjectBinding

func (*UserProjectBindingStatus) DeepCopy

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

func (*UserProjectBindingStatus) DeepCopyInto

func (in *UserProjectBindingStatus) DeepCopyInto(out *UserProjectBindingStatus)

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

type UserReadyReasons

type UserReadyReasons string
const (
	UserIsReady     UserReadyReasons = "UserIsReady"
	UserHasNoSecret UserReadyReasons = "SecretNotFound"
	UserNotFound    UserReadyReasons = "UserNotFound"
	UserIsUnready   UserReadyReasons = "UserIsUnready"
	UserUnknown     UserReadyReasons = "UnknownError"
)

type UserSpec

type UserSpec struct {
	Description string `json:"description,omitempty"`
	Enabled     *bool  `json:"enabled,omitempty"`
}

UserSpec defines the desired state of User

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus

type UserStatus struct {
	Conditions []metav1.Condition `json:"conditions"`
}

UserStatus defines the observed state of User

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

type VolumeQuotas

type VolumeQuotas struct {
	BackupGigabytes int `json:"backup_gigabytes"`
	Backups         int `json:"backups"`

	// Maximum amount of available Storage
	Gigabytes          *int `json:"gigabytes,omitempty"`
	Groups             *int `json:"groups,omitempty"`
	PerVolumeGigabytes *int `json:"per_volume_gigabytes,omitempty"`

	// Maximum amount of snapshots
	Snapshots *int `json:"snapshots,omitempty"`
	Volumes   int  `json:"volumes"`
}

VolumeQuotas defines model for VolumeQuotas.

func (*VolumeQuotas) DeepCopy

func (in *VolumeQuotas) DeepCopy() *VolumeQuotas

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

func (*VolumeQuotas) DeepCopyInto

func (in *VolumeQuotas) DeepCopyInto(out *VolumeQuotas)

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