v1

package
v0.0.0-...-61a2cff Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2023 License: Apache-2.0 Imports: 15 Imported by: 1

Documentation

Overview

Package v1 contains API Schema definitions for the imagehub v1 API group +kubebuilder:object:generate=true +groupName=imagehub.sealos.io

Index

Constants

View Source
const (
	Separator       = '.'
	StringLenLimit  = 1000
	SealosOrgLable  = "organization.imagehub.sealos.io"
	SealosRepoLabel = "repository.imagehub.sealos.io"
	SealosTagLabel  = "tag.imagehub.sealos.io"

	OrgFinalizerName      = "organization.imagehub.sealos.io/finalizer"
	RepoFinalizerName     = "repository.imagehub.sealos.io/finalizer"
	ImgFinalizerName      = "image.imagehub.sealos.io/finalizer"
	DataPackFinalizerName = "datapack.hub.sealos.io/finalizer"

	KeywordsLabelPrefix = "keyword.imagehub.sealos.io/"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "imagehub.sealos.io", Version: "v1"}

	// 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

func GetSupportedKeywords

func GetSupportedKeywords() []string

Types

type Action

type Action struct {
	// TODO: support more action types ,now just support yaml.
	Name       string `json:"name,omitempty"`
	ActionType string `json:"actionType,omitempty"`
	Template   string `json:"actions,omitempty"`
	CMD        string `json:"cmd,omitempty"`
}

func (*Action) DeepCopy

func (in *Action) DeepCopy() *Action

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

func (*Action) DeepCopyInto

func (in *Action) DeepCopyInto(out *Action)

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

type Checker

type Checker interface {
	// contains filtered or unexported methods
}

type Codes

type Codes int
const (
	NOTRUN  Codes = 0
	OK      Codes = 1
	PENDING Codes = 2
	ERROR   Codes = 3
)

type Data

type Data struct {
	// base
	Name ImageName `json:"name,omitempty"`
	Type ImageType `json:"type,omitempty"`
	// grid
	RepoName      RepoName `json:"repoName,omitempty"`
	Rating        int      `json:"rating,omitempty"`
	DownloadCount int64    `json:"downloadCount,omitempty"`
	Icon          string   `json:"icon,omitempty"`
	Keywords      []string `json:"keywords,omitempty"`
	Size          int64    `json:"size,omitempty"`
	Description   string   `json:"description,omitempty"`
	// detail
	Tags TagList `json:"tags,omitempty"`
	Docs string  `json:"docs,omitempty"`
	ID   string  `json:"ID,omitempty"`
	Arch string  `json:"arch,omitempty"`
}

Data defines all data needs to return

func (*Data) DeepCopy

func (in *Data) DeepCopy() *Data

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

func (*Data) DeepCopyInto

func (in *Data) DeepCopyInto(out *Data)

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

type DataPack

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

	Spec   DataPackSpec   `json:"spec,omitempty"`
	Status DataPackStatus `json:"status,omitempty"`
}

DataPack is the Schema for the datapacks API

func (*DataPack) DeepCopy

func (in *DataPack) DeepCopy() *DataPack

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

func (*DataPack) DeepCopyInto

func (in *DataPack) DeepCopyInto(out *DataPack)

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

func (*DataPack) DeepCopyObject

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

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

type DataPackList

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

DataPackList contains a list of DataPack

func (*DataPackList) DeepCopy

func (in *DataPackList) DeepCopy() *DataPackList

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

func (*DataPackList) DeepCopyInto

func (in *DataPackList) DeepCopyInto(out *DataPackList)

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

func (*DataPackList) DeepCopyObject

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

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

type DataPackSpec

type DataPackSpec struct {

	//+kubebuilder:validation:Enum={ base, grid, detail, }
	//+kubebuilder:default=base
	Type  DataPackType `json:"type,omitempty"`
	Names []ImageName  `json:"names,omitempty"`
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:="2h"
	ExpireTime string `json:"expireTime,omitempty"`
}

DataPackSpec defines the desired state of DataPack

func (*DataPackSpec) DeepCopy

func (in *DataPackSpec) DeepCopy() *DataPackSpec

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

func (*DataPackSpec) DeepCopyInto

func (in *DataPackSpec) DeepCopyInto(out *DataPackSpec)

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

type DataPackStatus

type DataPackStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Codes Codes `json:"codes"`
	Datas Datas `json:"datas,omitempty"`
}

DataPackStatus defines the observed state of DataPack

func (*DataPackStatus) DeepCopy

func (in *DataPackStatus) DeepCopy() *DataPackStatus

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

func (*DataPackStatus) DeepCopyInto

func (in *DataPackStatus) DeepCopyInto(out *DataPackStatus)

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

type DataPackType

type DataPackType string
const (
	ImageBaseDataType   DataPackType = "base"
	ImageGridDataType   DataPackType = "grid"
	ImageDetailDataType DataPackType = "detail"
)

data types

type Datas

type Datas map[ImageName]Data

Datas in datapack status

func (Datas) DeepCopy

func (in Datas) DeepCopy() Datas

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

func (Datas) DeepCopyInto

func (in Datas) DeepCopyInto(out *Datas)

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

type FullData

type FullData struct {
	ImageInfo ImageInfo `json:"imageInfo,omitempty"`
	RepoInfo  RepoInfo  `json:"repoInfo,omitempty"`
	OrgInfo   OrgInfo   `json:"orgInfo,omitempty"`
}

FullData will gen at reconcile beginning

func (*FullData) DeepCopy

func (in *FullData) DeepCopy() *FullData

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

func (*FullData) DeepCopyInto

func (in *FullData) DeepCopyInto(out *FullData)

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

type Image

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

	Spec   ImageSpec   `json:"spec,omitempty"`
	Status ImageStatus `json:"status,omitempty"`
}

Image is the Schema for the images API

func (*Image) DeepCopy

func (in *Image) DeepCopy() *Image

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

func (*Image) DeepCopyInto

func (in *Image) DeepCopyInto(out *Image)

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

func (*Image) DeepCopyObject

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

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

func (*Image) MulateFromOldobj

func (i *Image) MulateFromOldobj(old *Image)

func (*Image) SetupWebhookWithManager

func (i *Image) SetupWebhookWithManager(mgr ctrl.Manager) error

type ImageBaseData

type ImageBaseData struct {
	Name ImageName `json:"name,omitempty"`
	Type ImageType `json:"type,omitempty"`
}

func (*ImageBaseData) DeepCopy

func (in *ImageBaseData) DeepCopy() *ImageBaseData

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

func (*ImageBaseData) DeepCopyInto

func (in *ImageBaseData) DeepCopyInto(out *ImageBaseData)

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

func (*ImageBaseData) New

func (i *ImageBaseData) New(fd *FullData)

func (*ImageBaseData) ToData

func (i *ImageBaseData) ToData() Data

type ImageDetailData

type ImageDetailData struct {
	Name          ImageName `json:"name,omitempty"`
	Type          ImageType `json:"type,omitempty"`
	RepoName      RepoName  `json:"repoName,omitempty"`
	Rating        int       `json:"rating,omitempty"`
	DownloadCount int64     `json:"downloadCount,omitempty"`
	Icon          string    `json:"icon,omitempty"`
	Keywords      []string  `json:"keywords,omitempty"`
	Description   string    `json:"description,omitempty"`
	Docs          string    `json:"docs,omitempty"`
	ID            string    `json:"ID,omitempty"`
	Size          int64     `json:"size,omitempty"`
	Arch          string    `json:"arch,omitempty"`
	Tags          TagList   `json:"tags,omitempty"`
}

func (*ImageDetailData) DeepCopy

func (in *ImageDetailData) DeepCopy() *ImageDetailData

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

func (*ImageDetailData) DeepCopyInto

func (in *ImageDetailData) DeepCopyInto(out *ImageDetailData)

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

func (*ImageDetailData) New

func (i *ImageDetailData) New(fd *FullData)

func (*ImageDetailData) ToData

func (i *ImageDetailData) ToData() Data

type ImageDetailInfo

type ImageDetailInfo struct {
	Keywords    []string `json:"keywords,omitempty"`
	Description string   `json:"description,omitempty"`
	Icon        string   `json:"icon,omitempty"`
	Docs        string   `json:"docs,omitempty"`
	// URL sealos cloud ui endpoint
	URL string `json:"url,omitempty"`
	// ID Arch Size CreateTime should use buildah inspect to get infor.
	ID   string `json:"ID,omitempty"`
	Arch string `json:"arch,omitempty"`
	Size int64  `json:"size,omitempty"`
	//+kubebuilder:default:="1970-01-01T00:00:00Z"
	CreateTime metav1.Time `json:"creatTime"`
	// Actions todo
	Actions map[string]Action `json:"actions,omitempty"`
}

ImageDetailInfo TODO: add limits for ImageDetailInfo

func (*ImageDetailInfo) DeepCopy

func (in *ImageDetailInfo) DeepCopy() *ImageDetailInfo

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

func (*ImageDetailInfo) DeepCopyInto

func (in *ImageDetailInfo) DeepCopyInto(out *ImageDetailInfo)

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

type ImageGridData

type ImageGridData struct {
	Name          ImageName `json:"name,omitempty"`
	Type          ImageType `json:"type,omitempty"`
	RepoName      RepoName  `json:"repoName,omitempty"`
	Rating        int       `json:"rating,omitempty"`
	DownloadCount int64     `json:"downloadCount,omitempty"`
	Icon          string    `json:"icon,omitempty"`
	Keywords      []string  `json:"keywords,omitempty"`
	Size          int64     `json:"size,omitempty"`
	Description   string    `json:"description,omitempty"`
}

func (*ImageGridData) DeepCopy

func (in *ImageGridData) DeepCopy() *ImageGridData

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

func (*ImageGridData) DeepCopyInto

func (in *ImageGridData) DeepCopyInto(out *ImageGridData)

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

func (*ImageGridData) New

func (i *ImageGridData) New(fd *FullData)

func (*ImageGridData) ToData

func (i *ImageGridData) ToData() Data

type ImageInfo

type ImageInfo ImageSpec

func (*ImageInfo) DeepCopy

func (in *ImageInfo) DeepCopy() *ImageInfo

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

func (*ImageInfo) DeepCopyInto

func (in *ImageInfo) DeepCopyInto(out *ImageInfo)

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

type ImageList

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

ImageList contains a list of Image

func (*ImageList) DeepCopy

func (in *ImageList) DeepCopy() *ImageList

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

func (*ImageList) DeepCopyInto

func (in *ImageList) DeepCopyInto(out *ImageList)

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

func (*ImageList) DeepCopyObject

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

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

type ImageMutator

type ImageMutator struct {
	client.Client
}

func (*ImageMutator) Default

func (m *ImageMutator) Default(ctx context.Context, obj runtime.Object) error

type ImageName

type ImageName string

func (ImageName) GetMateName

func (n ImageName) GetMateName() string

GetMateName TODO: change name to matename in a right way libring/mysql:v8.0.3 -> libring.mysql.v8.0.3

func (ImageName) GetOrg

func (n ImageName) GetOrg() string

func (ImageName) GetRepo

func (n ImageName) GetRepo() string

func (ImageName) GetTag

func (n ImageName) GetTag() string

func (ImageName) IsLegal

func (n ImageName) IsLegal() bool

IsLegal check name is legal name.eg: labring/mysql:v8.0.31

func (ImageName) ToMetaName

func (n ImageName) ToMetaName() string

func (ImageName) ToOrgName

func (n ImageName) ToOrgName() OrgName

func (ImageName) ToRepoName

func (n ImageName) ToRepoName() RepoName

type ImageSpec

type ImageSpec struct {

	//+kubebuilder:validation:Required
	Name       ImageName       `json:"name,omitempty"`
	Type       ImageType       `json:"type,omitempty"`
	DetailInfo ImageDetailInfo `json:"detail,omitempty"`
}

ImageSpec defines the desired state of Image

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

type ImageStatus

type ImageStatus struct {
}

ImageStatus defines the observed state of Image

func (*ImageStatus) DeepCopy

func (in *ImageStatus) DeepCopy() *ImageStatus

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

func (*ImageStatus) DeepCopyInto

func (in *ImageStatus) DeepCopyInto(out *ImageStatus)

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

type ImageType

type ImageType string
const (
	CloudImageType   ImageType = "cloud-image"
	ClusterImageType ImageType = "cluster-image"
)

type ImageValidator

type ImageValidator struct {
	client.Client
}

ImageValidator will validate Images change.

func (*ImageValidator) ValidateCreate

func (v *ImageValidator) ValidateCreate(ctx context.Context, obj runtime.Object) error

func (*ImageValidator) ValidateDelete

func (v *ImageValidator) ValidateDelete(ctx context.Context, obj runtime.Object) error

func (*ImageValidator) ValidateUpdate

func (v *ImageValidator) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) error

type OrgCombinator

type OrgCombinator interface {
	GetOrg() string
}

type OrgInfo

type OrgInfo OrganizationStatus

func (*OrgInfo) DeepCopy

func (in *OrgInfo) DeepCopy() *OrgInfo

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

func (*OrgInfo) DeepCopyInto

func (in *OrgInfo) DeepCopyInto(out *OrgInfo)

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

type OrgMutator

type OrgMutator struct {
	client.Client
}

func (OrgMutator) Default

func (m OrgMutator) Default(ctx context.Context, obj runtime.Object) error

Default mutate when create org

type OrgName

type OrgName string

func (OrgName) GetOrg

func (n OrgName) GetOrg() string

func (OrgName) ToMetaName

func (n OrgName) ToMetaName() string

type Organization

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

	Spec   OrganizationSpec   `json:"spec,omitempty"`
	Status OrganizationStatus `json:"status,omitempty"`
}

Organization is the Schema for the organizations API

func (*Organization) DeepCopy

func (in *Organization) DeepCopy() *Organization

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

func (*Organization) DeepCopyInto

func (in *Organization) DeepCopyInto(out *Organization)

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

func (*Organization) DeepCopyObject

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

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

func (*Organization) SetupWebhookWithManager

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

func (*Organization) ValidateCreate

func (r *Organization) ValidateCreate() error

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

func (*Organization) ValidateDelete

func (r *Organization) ValidateDelete() error

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

func (*Organization) ValidateUpdate

func (r *Organization) ValidateUpdate(_ runtime.Object) error

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

type OrganizationList

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

OrganizationList contains a list of Organization

func (*OrganizationList) DeepCopy

func (in *OrganizationList) DeepCopy() *OrganizationList

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

func (*OrganizationList) DeepCopyInto

func (in *OrganizationList) DeepCopyInto(out *OrganizationList)

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

func (*OrganizationList) DeepCopyObject

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

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

type OrganizationSpec

type OrganizationSpec struct {

	//+kubebuilder:validation:Required
	//+kubebuilder:validation:MaxLength=1024
	Name string `json:"name,omitempty"` //e.g: "labring"
	// Creator is the user who first create this org
	// update manager
	Creator string `json:"creator,omitempty"`
	// Manager can update org and org's repo/image
	Manager []string `json:"manager,omitempty"`
}

OrganizationSpec defines the desired state of Organization

func (*OrganizationSpec) DeepCopy

func (in *OrganizationSpec) DeepCopy() *OrganizationSpec

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

func (*OrganizationSpec) DeepCopyInto

func (in *OrganizationSpec) DeepCopyInto(out *OrganizationSpec)

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

type OrganizationStatus

type OrganizationStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	//+kubebuilder:validation:Required
	//+kubebuilder:validation:MaxLength=1024
	Name  string     `json:"name,omitempty"` //e.g: "labring"
	Repos []RepoName `json:"repos,omitempty"`
}

OrganizationStatus defines the observed state of Organization

func (*OrganizationStatus) DeepCopy

func (in *OrganizationStatus) DeepCopy() *OrganizationStatus

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

func (*OrganizationStatus) DeepCopyInto

func (in *OrganizationStatus) DeepCopyInto(out *OrganizationStatus)

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

type RepoCombinator

type RepoCombinator interface {
	GetRepo() string
}

type RepoInfo

type RepoInfo RepositoryStatus

func (*RepoInfo) DeepCopy

func (in *RepoInfo) DeepCopy() *RepoInfo

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

func (*RepoInfo) DeepCopyInto

func (in *RepoInfo) DeepCopyInto(out *RepoInfo)

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

type RepoMutator

type RepoMutator struct {
	client.Client
}

func (RepoMutator) Default

func (m RepoMutator) Default(ctx context.Context, obj runtime.Object) error

type RepoName

type RepoName string

func (RepoName) GetOrg

func (n RepoName) GetOrg() string

func (RepoName) GetRepo

func (n RepoName) GetRepo() string

func (RepoName) IsLegal

func (n RepoName) IsLegal() bool

IsLegal check name is legal name.eg: labring/mysql:v8.0.31

func (RepoName) ToMetaName

func (n RepoName) ToMetaName() string

type RepoValidator

type RepoValidator struct {
	client.Client
}

RepoValidator will validate Repositories change.

func (*RepoValidator) ValidateCreate

func (v *RepoValidator) ValidateCreate(ctx context.Context, obj runtime.Object) error

func (*RepoValidator) ValidateDelete

func (v *RepoValidator) ValidateDelete(ctx context.Context, obj runtime.Object) error

func (*RepoValidator) ValidateUpdate

func (v *RepoValidator) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) error

type Repository

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

	Spec   RepositorySpec   `json:"spec,omitempty"`
	Status RepositoryStatus `json:"status,omitempty"`
}

Repository is the Schema for the repositories API

func (*Repository) DeepCopy

func (in *Repository) DeepCopy() *Repository

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

func (*Repository) DeepCopyInto

func (in *Repository) DeepCopyInto(out *Repository)

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

func (*Repository) DeepCopyObject

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

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

func (*Repository) SetupWebhookWithManager

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

type RepositoryList

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

RepositoryList contains a list of Repository

func (*RepositoryList) DeepCopy

func (in *RepositoryList) DeepCopy() *RepositoryList

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

func (*RepositoryList) DeepCopyInto

func (in *RepositoryList) DeepCopyInto(out *RepositoryList)

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

func (*RepositoryList) DeepCopyObject

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

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

type RepositorySpec

type RepositorySpec struct {

	//+kubebuilder:validation:Required
	Name RepoName `json:"name"` // e.g: "libring/mysql"
	//+kubebuilder:default:=false
	IsPrivate bool `json:"isPrivate"`
}

RepositorySpec defines the desired state of Repository, Org automatically generated by Name.

func (*RepositorySpec) DeepCopy

func (in *RepositorySpec) DeepCopy() *RepositorySpec

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

func (*RepositorySpec) DeepCopyInto

func (in *RepositorySpec) DeepCopyInto(out *RepositorySpec)

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

type RepositoryStatus

type RepositoryStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Name          RepoName `json:"name,omitempty"` // e.g: "libring/mysql"
	DownloadCount int64    `json:"downloadCount,omitempty"`
	Tags          TagList  `json:"tags,omitempty"`
	LatestTag     *TagData `json:"latestTag,omitempty"`
}

RepositoryStatus defines the observed state of Repository

func (*RepositoryStatus) DeepCopy

func (in *RepositoryStatus) DeepCopy() *RepositoryStatus

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

func (*RepositoryStatus) DeepCopyInto

func (in *RepositoryStatus) DeepCopyInto(out *RepositoryStatus)

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

type TagCombinator

type TagCombinator interface {
	GetTag() string
}

type TagData

type TagData struct {
	Name     string `json:"name"`
	MetaName string `json:"metaName"`
	Size     int64  `json:"size"`

	//+kubebuilder:default:="1970-01-01T00:00:00Z"
	CreateTime metav1.Time `json:"creatTime"` // todo inspect image and get time
}

func (*TagData) DeepCopy

func (in *TagData) DeepCopy() *TagData

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

func (*TagData) DeepCopyInto

func (in *TagData) DeepCopyInto(out *TagData)

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

type TagList

type TagList []TagData

func (TagList) DeepCopy

func (in TagList) DeepCopy() TagList

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

func (TagList) DeepCopyInto

func (in TagList) DeepCopyInto(out *TagList)

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