v1alpha1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Oct 16, 2020 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the goharbor v1alpha1 API group +kubebuilder:object:generate=true +groupName=goharbor.io

Index

Constants

View Source
const (
	ExternalComponent  string = "external"
	InClusterComponent string = "inCluster"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "goharbor.io", 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
)
View Source
var (
	HarborClusterGVK = schema.GroupVersionKind{
		Group:   GroupVersion.Group,
		Version: GroupVersion.Version,
		Kind:    "HarborCluster",
	}
)

Functions

This section is empty.

Types

type Azure

type Azure struct {
	// +kubebuilder:validation:Required
	AccountName string `json:"accountname"`
	// +kubebuilder:validation:Required
	AccountKey string `json:"accountkey"`
	// +kubebuilder:validation:Required
	Container string `json:"container"`
	Realm     string `json:"realm,omitempty"`
}

func (*Azure) DeepCopy

func (in *Azure) DeepCopy() *Azure

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

func (*Azure) DeepCopyInto

func (in *Azure) DeepCopyInto(out *Azure)

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

type ChartMuseum

type ChartMuseum struct {
	AbsoluteURL bool `json:"absoluteURL,omitempty"`
}

func (*ChartMuseum) DeepCopy

func (in *ChartMuseum) DeepCopy() *ChartMuseum

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

func (*ChartMuseum) DeepCopyInto

func (in *ChartMuseum) DeepCopyInto(out *ChartMuseum)

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

type Clair

type Clair struct {
	UpdateInterval       int      `json:"updateInterval,omitempty"`
	VulnerabilitySources []string `json:"vulnerabilitySources,omitempty"`
}

func (*Clair) DeepCopy

func (in *Clair) DeepCopy() *Clair

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

func (*Clair) DeepCopyInto

func (in *Clair) DeepCopyInto(out *Clair)

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

type Component

type Component string

the name of component used harbor cluster.

const (
	ComponentHarbor   Component = "harbor"
	ComponentCache    Component = "cache"
	ComponentStorage  Component = "storage"
	ComponentDatabase Component = "database"
)

all Component used in harbor cluster full stack.

type Database

type Database struct {
	// Set the kind of which redis service to be used, inCluster or external.
	// +kubebuilder:validation:Enum=inCluster;external
	Kind string `json:"kind"`

	// +kubebuilder:validation:Required
	Spec *PostgresSQL `json:"spec"`
}

func (*Database) DeepCopy

func (in *Database) DeepCopy() *Database

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

func (*Database) DeepCopyInto

func (in *Database) DeepCopyInto(out *Database)

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

type Gcs

type Gcs struct {
	// +kubebuilder:validation:Required
	Bucket string `json:"bucket"`
	// The base64 encoded json file which contains the key
	EncodedKey string `json:"encodedkey"`
	// +kubebuilder:validation:Required
	RootDirectory string `json:"rootdirectory"`
	ChunkSize     string `json:"chunksize,omitempty"`
}

func (*Gcs) DeepCopy

func (in *Gcs) DeepCopy() *Gcs

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

func (*Gcs) DeepCopyInto

func (in *Gcs) DeepCopyInto(out *Gcs)

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

type HarborCluster

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

	Spec   HarborClusterSpec   `json:"spec,omitempty"`
	Status HarborClusterStatus `json:"status,omitempty"`
}

HarborCluster is the Schema for the harborclusters API

func (*HarborCluster) DeepCopy

func (in *HarborCluster) DeepCopy() *HarborCluster

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

func (*HarborCluster) DeepCopyInto

func (in *HarborCluster) DeepCopyInto(out *HarborCluster)

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

func (*HarborCluster) DeepCopyObject

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

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

func (*HarborCluster) Default

func (r *HarborCluster) Default()

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

func (*HarborCluster) SetupWebhookWithManager

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

func (*HarborCluster) ValidateCertificateIssuerRef

func (r *HarborCluster) ValidateCertificateIssuerRef() error

func (*HarborCluster) ValidateComponentKind

func (r *HarborCluster) ValidateComponentKind(old runtime.Object) error

func (*HarborCluster) ValidateCreate

func (r *HarborCluster) ValidateCreate() error

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

func (*HarborCluster) ValidateDelete

func (r *HarborCluster) ValidateDelete() error

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

func (*HarborCluster) ValidateUpdate

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

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

type HarborClusterCondition

type HarborClusterCondition struct {
	// Type is the type of the condition.
	Type HarborClusterConditionType `json:"type"`
	// Status is the status of the condition.
	// Can be True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time the condition transitioned from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// Unique, one-word, CamelCase reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Human-readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

HarborClusterCondition contains details for the current condition of this pod.

func (*HarborClusterCondition) DeepCopy

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

func (*HarborClusterCondition) DeepCopyInto

func (in *HarborClusterCondition) DeepCopyInto(out *HarborClusterCondition)

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

type HarborClusterConditionType

type HarborClusterConditionType string

HarborClusterConditionType is a valid value for HarborClusterConditionType.Type

const (
	// Ready means the HarborCluster is ready.
	Ready HarborClusterConditionType = "Ready"
	// CacheReady means the Cache is ready.
	CacheReady HarborClusterConditionType = "CacheReady"
	// DatabaseReady means the Database is ready.
	DatabaseReady HarborClusterConditionType = "DatabaseReady"
	// StorageReady means the Storage is ready.
	StorageReady HarborClusterConditionType = "StorageReady"
	// ServiceReady means the Service of Harbor is ready.
	ServiceReady HarborClusterConditionType = "ServiceReady"
)

These are valid conditions of a HarborCluster.

type HarborClusterList

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

HarborClusterList contains a list of HarborCluster

func (*HarborClusterList) DeepCopy

func (in *HarborClusterList) DeepCopy() *HarborClusterList

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

func (*HarborClusterList) DeepCopyInto

func (in *HarborClusterList) DeepCopyInto(out *HarborClusterList)

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

func (*HarborClusterList) DeepCopyObject

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

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

type HarborClusterSpec

type HarborClusterSpec struct {

	// harbor version to be deployed, this version determines the image tags of harbor service components
	// +kubebuilder:validation:Required
	// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
	// +kubebuilder:validation:Pattern="^(?P<major>0|[1-9]\\d*)\\.(?P<minor>0|[1-9]\\d*)\\.(?P<patch>0|[1-9]\\d*)(?:-(?P<prerelease>(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(?P<buildmetadata>[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$"
	Version string `json:"version"`

	// The url exposed to clients to access harbor
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Pattern="^https?://.*$"
	PublicURL string `json:"publicURL"`

	// Password for the root admin
	// +kubebuilder:validation:Required
	AdminPasswordSecret string `json:"adminPasswordSecret"`

	// Secret reference for the TLS certs
	// +optional
	TLSSecret string `json:"tlsSecret,omitempty"`

	// DisableRedirect expose docker registry redirect parameter
	// +optional
	DisableRedirect bool `json:"disableRedirect,omitempty"`

	// The issuer for Harbor certificates.
	// If the 'kind' field is not set, or set to 'Issuer', an Issuer resource
	// with the given name in the same namespace as the Certificate will be used.
	// If the 'kind' field is set to 'ClusterIssuer', a ClusterIssuer with the
	// provided name will be used.
	// The 'name' field in this stanza is required at all times.
	CertificateIssuerRef cmmeta.ObjectReference `json:"certificateIssuerRef,omitempty"`

	// Indicates that the harbor is paused.
	// +optional
	Paused bool `json:"paused,omitempty"`

	// The Maximum priority. Deployments may be created with priority in interval ] priority - 100 ; priority ]
	// +kubebuilder:validation:Optional
	Priority *int32 `json:"priority,omitempty"`

	// Pod instance number
	// +kubebuilder:validation:Required
	Replicas int `json:"replicas"`

	// Source registry of images, the default is dockerhub
	ImageSource *ImageSource `json:"imageSource,omitempty"`

	// Extra configuration options for jobservices
	// +optional
	JobService *JobService `json:"jobService,omitempty"`

	// Extra configuration options for clair scanner
	// +optional
	Clair *Clair `json:"clair,omitempty"`

	// Extra configuration options for trivy scanner
	// +kubebuilder:validation:Optional
	Trivy *Trivy `json:"trivy,omitempty"`

	// Extra configuration options for chartmeseum
	// +kubebuilder:validation:Optional
	ChartMuseum *ChartMuseum `json:"chartMuseum,omitempty"`

	// Extra configuration options for notary
	// +kubebuilder:validation:Optional
	Notary *Notary `json:"notary,omitempty"`

	// Cache service(Redis) configurations might be external redis services or inCluster redis services
	// +kubebuilder:validation:Required
	Redis *Redis `json:"redis"`

	// database service (PostgresSQL) configuration
	// +kubebuilder:validation:Required
	Database *Database `json:"database"`

	// Storage service configurations. Might be external cloud storage services or inCluster storage (minIO)
	// +kubebuilder:validation:Required
	Storage *Storage `json:"storage"`
}

HarborClusterSpec defines the desired state of HarborCluster

func (*HarborClusterSpec) DeepCopy

func (in *HarborClusterSpec) DeepCopy() *HarborClusterSpec

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

func (*HarborClusterSpec) DeepCopyInto

func (in *HarborClusterSpec) DeepCopyInto(out *HarborClusterSpec)

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

type HarborClusterStatus

type HarborClusterStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Conditions []HarborClusterCondition `json:"conditions,omitempty"`
}

HarborClusterStatus defines the observed state of HarborCluster

func (*HarborClusterStatus) DeepCopy

func (in *HarborClusterStatus) DeepCopy() *HarborClusterStatus

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

func (*HarborClusterStatus) DeepCopyInto

func (in *HarborClusterStatus) DeepCopyInto(out *HarborClusterStatus)

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

type Hosts

type Hosts struct {
	Host string `json:"host,omitempty"`
	Port string `json:"port,omitempty"`
}

func (*Hosts) DeepCopy

func (in *Hosts) DeepCopy() *Hosts

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

func (*Hosts) DeepCopyInto

func (in *Hosts) DeepCopyInto(out *Hosts)

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

type ImageSource

type ImageSource struct {
	Registry        string `json:"registry,omitempty"`
	ImagePullSecret string `json:"imagePullSecret,omitempty"`
}

func (*ImageSource) DeepCopy

func (in *ImageSource) DeepCopy() *ImageSource

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

func (*ImageSource) DeepCopyInto

func (in *ImageSource) DeepCopyInto(out *ImageSource)

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

type InCluster

type InCluster struct {
	// inCluster Provider, just support minIO now.
	Provider string     `json:"provider,omitempty"`
	Spec     *MinIOSpec `json:"spec,omitempty"`
}

InCluster of storage.

func (*InCluster) DeepCopy

func (in *InCluster) DeepCopy() *InCluster

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

func (*InCluster) DeepCopyInto

func (in *InCluster) DeepCopyInto(out *InCluster)

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

type JobService

type JobService struct {
	// +kubebuilder:validation:Required
	Replicas int `json:"replicas"`

	// +optional
	WorkerCount int32 `json:"workerCount"`
}

func (*JobService) DeepCopy

func (in *JobService) DeepCopy() *JobService

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

func (*JobService) DeepCopyInto

func (in *JobService) DeepCopyInto(out *JobService)

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

type MinIOSpec

type MinIOSpec struct {
	// Supply number of replicas.
	// For standalone mode, supply 1. For distributed mode, supply 4 to 16 drives (should be even).
	// Note that the operator does not support upgrading from standalone to distributed mode.
	// +kubebuilder:validation:Required
	Replicas int32 `json:"replicas"`
	// Version defines the MinIO Client (mc) Docker image version.
	Version string `json:"version,omitempty"`
	// Number of persistent volumes that will be attached per server
	VolumesPerServer int32 `json:"volumesPerServer"`
	// VolumeClaimTemplate allows a user to specify how volumes inside a MinIOInstance
	// +optional
	VolumeClaimTemplate corev1.PersistentVolumeClaim `json:"volumeClaimTemplate,omitempty"`
	// If provided, use these requests and limit for cpu/memory resource allocation
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

func (*MinIOSpec) DeepCopy

func (in *MinIOSpec) DeepCopy() *MinIOSpec

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

func (*MinIOSpec) DeepCopyInto

func (in *MinIOSpec) DeepCopyInto(out *MinIOSpec)

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

type Notary

type Notary struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Pattern="^https?://.*$"
	PublicURL string `json:"publicUrl"`
}

func (*Notary) DeepCopy

func (in *Notary) DeepCopy() *Notary

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

func (*Notary) DeepCopyInto

func (in *Notary) DeepCopyInto(out *Notary)

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

type Oss

type Oss struct {
	// +kubebuilder:validation:Required
	AccessKeyId string `json:"accesskeyid"`
	// +kubebuilder:validation:Required
	AccessKeySecret string `json:"accesskeysecret"`
	// +kubebuilder:validation:Required
	Region string `json:"region"`
	// +kubebuilder:validation:Required
	Bucket string `json:"bucket"`
	// +kubebuilder:validation:Required
	Endpoint      string `json:"endpoint"`
	Internal      string `json:"internal,omitempty"`
	Encrypt       string `json:"encrypt,omitempty"`
	Secure        string `json:"secure,omitempty"`
	ChunkSize     string `json:"chunksize,omitempty"`
	RootDirectory string `json:"rootdirectory,omitempty"`
}

func (*Oss) DeepCopy

func (in *Oss) DeepCopy() *Oss

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

func (*Oss) DeepCopyInto

func (in *Oss) DeepCopyInto(out *Oss)

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

type PostgresSQL

type PostgresSQL struct {
	Storage          string                      `json:"storage,omitempty"`
	Replicas         int                         `json:"replicas,omitempty"`
	Version          string                      `json:"version,omitempty"`
	StorageClassName string                      `json:"storageClassName,omitempty"`
	Resources        corev1.ResourceRequirements `json:"resources,omitempty"`

	// External params following.
	// The secret must contains "host","port","database","usernane" and "password".
	// host: 192.168.1.1
	// port: 5432
	// username: root
	// password: password
	// database: database
	SecretName     string `json:"secretName,omitempty"`
	SslConfig      string `json:"sslConfig,omitempty"`
	ConnectTimeout int    `json:"connectTimeout,omitempty"`
}

func (*PostgresSQL) DeepCopy

func (in *PostgresSQL) DeepCopy() *PostgresSQL

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

func (*PostgresSQL) DeepCopyInto

func (in *PostgresSQL) DeepCopyInto(out *PostgresSQL)

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

type Redis

type Redis struct {
	// Set the kind of which redis service to be used, inCluster or external. Setting up a harbor-cluster with external redis service should provide client params to communicate. The difference between inCluster redis and external redis is that the inCluster redis installed automatically.
	// +kubebuilder:validation:Enum=inCluster;external
	Kind string `json:"kind"`

	// +kubebuilder:validation:Required
	Spec *RedisSpec `json:"spec"`
}

func (*Redis) DeepCopy

func (in *Redis) DeepCopy() *Redis

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

func (*Redis) DeepCopyInto

func (in *Redis) DeepCopyInto(out *Redis)

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

type RedisServer

type RedisServer struct {
	Replicas         int                         `json:"replicas,omitempty"`
	Resources        corev1.ResourceRequirements `json:"resources,omitempty"`
	StorageClassName string                      `json:"storageClassName,omitempty"`
	// the size of storage used in redis.
	Storage string `json:"storage,omitempty"`
}

func (*RedisServer) DeepCopy

func (in *RedisServer) DeepCopy() *RedisServer

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

func (*RedisServer) DeepCopyInto

func (in *RedisServer) DeepCopyInto(out *RedisServer)

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

type RedisSpec

type RedisSpec struct {
	Server   *RedisServer `json:"server,omitempty"`
	Sentinel *Sentinel    `json:"sentinel,omitempty"`

	// External params following.
	// The secret must contains "password".
	SecretName string `json:"secretName,omitempty"`
	// Maximum number of socket connections.
	// Default is 10 connections per every CPU as reported by runtime.NumCPU.
	PoolSize int `json:"poolSize,omitempty"`
	// TLS Config to use. When set TLS will be negotiated.
	// set the secret which type of Opaque, and contains "tls.key","tls.crt","ca.crt".
	TlsConfig string `json:"tlsConfig,omitempty"`
	GroupName string `json:"groupName,omitempty"`
	// +kubebuilder:validation:Enum=sentinel;redis
	Schema string  `json:"schema,omitempty"`
	Hosts  []Hosts `json:"hosts,omitempty"`
}

func (*RedisSpec) DeepCopy

func (in *RedisSpec) DeepCopy() *RedisSpec

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

func (*RedisSpec) DeepCopyInto

func (in *RedisSpec) DeepCopyInto(out *RedisSpec)

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

type S3

type S3 struct {
	// +kubebuilder:validation:Required
	Region string `json:"region"`
	// +kubebuilder:validation:Required
	Bucket string `json:"bucket"`
	// +kubebuilder:validation:Required
	AccessKey string `json:"accesskey"`
	// +kubebuilder:validation:Required
	SecretKey string `json:"secretkey"`
	// +kubebuilder:validation:Required
	RegionEndpoint string `json:"regionendpoint"`
	Encrypt        bool   `json:"encrypt,omitempty"`
	KeyId          string `json:"keyid,omitempty"`
	Secure         bool   `json:"secure,omitempty"`
	V4Auth         bool   `json:"v4auth,omitempty"`
	ChunkSize      string `json:"chunksize,omitempty"`
	RootDirectory  string `json:"rootdirectory,omitempty"`
	StorageClass   string `json:"storageclass,omitempty"`
}

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.

type Sentinel

type Sentinel struct {
	Replicas int `json:"replicas,omitempty"`
}

func (*Sentinel) DeepCopy

func (in *Sentinel) DeepCopy() *Sentinel

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

func (*Sentinel) DeepCopyInto

func (in *Sentinel) DeepCopyInto(out *Sentinel)

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

type Storage

type Storage struct {
	// set the kind of which storage service to be used. Set the kind as "azure", "gcs", "s3", "oss", "swift" or "inCluster", and fill the information.
	// in the options section. inCluster indicates the local storage service of harbor-cluster. We use minIO as a default built-in object storage service.
	// +kubebuilder:validation:Enum=inCluster;azure;gcs;s3;oss;swift
	Kind string `json:"kind"`

	// inCLuster options.
	InCluster *InCluster `json:"options,omitempty"`

	// Azure options.
	Azure *Azure `json:"azure,omitempty"`

	// Gcs options.
	Gcs *Gcs `json:"gcs,omitempty"`

	// S3 options.
	S3 *S3 `json:"s3,omitempty"`

	// Swift options.
	Swift *Swift `json:"swift,omitempty"`

	// Oss options.
	Oss *Oss `json:"oss,omitempty"`
}

func (*Storage) DeepCopy

func (in *Storage) DeepCopy() *Storage

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

func (*Storage) DeepCopyInto

func (in *Storage) DeepCopyInto(out *Storage)

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

type Swift

type Swift struct {
	// +kubebuilder:validation:Required
	Authurl string `json:"authurl"`
	// +kubebuilder:validation:Required
	Username string `json:"username"`
	// +kubebuilder:validation:Required
	Password string `json:"password"`
	// +kubebuilder:validation:Required
	Container string `json:"container"`
	// +kubebuilder:validation:Required
	Region string `json:"region"`
	// +kubebuilder:validation:Required
	Tenant              string `json:"tenant"`
	TenantId            string `json:"tenantid,omitempty"`
	Domain              string `json:"domain,omitempty"`
	DomainId            string `json:"domainid,omitempty"`
	TrustId             string `json:"trustid,omitempty"`
	InsecureSkipVerify  bool   `json:"insecureskipverify,omitempty"`
	ChunkSize           string `json:"chunksize,omitempty"`
	Prefix              string `json:"prefix,omitempty"`
	SecretKey           string `json:"secretkey,omitempty"`
	AuthVersion         int    `json:"authversion,omitempty"`
	EndpointType        string `json:"endpointtype,omitempty"`
	TempurlContainerkey bool   `json:"tempurlcontainerkey,omitempty"`
	TempurlMethods      string `json:"tempurlmethods,omitempty"`
}

func (*Swift) DeepCopy

func (in *Swift) DeepCopy() *Swift

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

func (*Swift) DeepCopyInto

func (in *Swift) DeepCopyInto(out *Swift)

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

type Trivy

type Trivy struct {
	GithubToken string `json:"githubToken,omitempty"`
}

func (*Trivy) DeepCopy

func (in *Trivy) DeepCopy() *Trivy

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

func (*Trivy) DeepCopyInto

func (in *Trivy) DeepCopyInto(out *Trivy)

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