v1alpha1

package
v0.0.88 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2025 License: Apache-2.0 Imports: 3 Imported by: 2

Documentation

Index

Constants

View Source
const (
	// WebuiDisplayNameAnnotation is the annotation key for the display name.
	WebuiDisplayNameAnnotation = "webui.task.opencidn.daocloud.io/display-name"

	// WebuiGroupAnnotation is the annotation key for the group name.
	WebuiGroupAnnotation = "webui.task.opencidn.daocloud.io/group"

	// WebuiGroupIgnoreSizeAnnotation is the annotation key to ignore size when grouping.
	WebuiGroupIgnoreSizeAnnotation = "webui.task.opencidn.daocloud.io/group-ignore-size"

	// WebuiTagAnnotation is the annotation key for tags.
	// Multiple tags can be specified as a comma-separated list.
	WebuiTagAnnotation = "webui.task.opencidn.daocloud.io/tags"

	// ReleaseTTLAnnotation is the annotation key for the time-to-live duration.
	// The value should be a valid duration string (e.g., "1h", "30m", "3600s").
	ReleaseTTLAnnotation = "release.task.opencidn.daocloud.io/ttl"
)
View Source
const (
	// BearerKind is the kind of the Bearer resource.
	BearerKind = "Bearer"
)
View Source
const (
	// BlobKind is the kind of the Blob resource.
	BlobKind = "Blob"
)
View Source
const (
	// ChunkKind is the kind of the Chunk resource.
	ChunkKind = "Chunk"
)
View Source
const GroupName = "task.opencidn.daocloud.io"

GroupName specifies the group name used to register the objects.

View Source
const (
	// MultipartKind is the kind of the Multipart resource.
	MultipartKind = "Multipart"
)

Variables

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

	// Deprecated: use Install instead
	AddToScheme = localSchemeBuilder.AddToScheme
	Install     = localSchemeBuilder.AddToScheme
)
View Source
var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1alpha1"}

GroupVersion specifies the group and the version used to register the objects.

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects Deprecated: use GroupVersion instead.

Functions

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

func SetObjectDefaults_Bearer

func SetObjectDefaults_Bearer(in *Bearer)

func SetObjectDefaults_BearerList

func SetObjectDefaults_BearerList(in *BearerList)

func SetObjectDefaults_Blob

func SetObjectDefaults_Blob(in *Blob)

func SetObjectDefaults_BlobList

func SetObjectDefaults_BlobList(in *BlobList)

Types

type Bearer

type Bearer struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec holds information about the request being evaluated.
	Spec BearerSpec `json:"spec"`
	// Status holds status for the Bearer
	Status BearerStatus `json:"status,omitempty"`
}

Bearer is an API that describes the staged change of a resource +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*Bearer) DeepCopy

func (in *Bearer) DeepCopy() *Bearer

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

func (*Bearer) DeepCopyInto

func (in *Bearer) DeepCopyInto(out *Bearer)

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

func (*Bearer) DeepCopyObject

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

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

type BearerList

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

BearerList contains a list of Bearer +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BearerList) DeepCopy

func (in *BearerList) DeepCopy() *BearerList

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

func (*BearerList) DeepCopyInto

func (in *BearerList) DeepCopyInto(out *BearerList)

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

func (*BearerList) DeepCopyObject

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

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

type BearerPhase

type BearerPhase string

BearerPhase defines the phase of a Bearer

const (
	// BearerPhasePending means the manifest is pending
	BearerPhasePending BearerPhase = "Pending"
	// BearerPhaseRunning means the manifest is running
	BearerPhaseRunning BearerPhase = "Running"
	// BearerPhaseSucceeded means the manifest has succeeded
	BearerPhaseSucceeded BearerPhase = "Succeeded"
	// BearerPhaseFailed means the manifest has failed
	BearerPhaseFailed BearerPhase = "Failed"
	// BearerPhaseUnknown means the manifest status is unknown
	BearerPhaseUnknown BearerPhase = "Unknown"
)

type BearerSpec

type BearerSpec struct {
	// URL is the URL that is being checked for authorization.
	URL string `json:"url"`

	// Priority represents the relative importance of this manifest when multiple manifests exist.
	Priority int64 `json:"priority"`

	// MaximumRetry is the number of times the chunk has been retried.
	// +default=3
	MaximumRetry int64 `json:"maximumRetry,omitempty"`
}

BearerSpec defines the specification for Bearer. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BearerSpec) DeepCopy

func (in *BearerSpec) DeepCopy() *BearerSpec

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

func (*BearerSpec) DeepCopyInto

func (in *BearerSpec) DeepCopyInto(out *BearerSpec)

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

type BearerStatus

type BearerStatus struct {
	// HandlerName is the name of the handler.
	HandlerName string `json:"handlerName"`

	// Phase represents the current phase of the manifest.
	Phase BearerPhase `json:"phase,omitempty"`

	// TokenInfo contains information about the authentication token
	TokenInfo *BearerTokenInfo `json:"tokenInfo,omitempty"`

	// Conditions holds conditions for the Bearer.
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}

BearerStatus holds status for the Bearer +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BearerStatus) DeepCopy

func (in *BearerStatus) DeepCopy() *BearerStatus

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

func (*BearerStatus) DeepCopyInto

func (in *BearerStatus) DeepCopyInto(out *BearerStatus)

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

type BearerTokenInfo

type BearerTokenInfo struct {
	// Token is the actual authentication token string
	Token string `json:"token"`

	// ExpiresIn is the duration in seconds until the token expires
	ExpiresIn int64 `json:"expires_in,omitempty"`

	// IssuedAt is the timestamp when the token was issued
	IssuedAt metav1.Time `json:"issued_at,omitempty"`
}

BearerTokenInfo contains information about an authentication token +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BearerTokenInfo) DeepCopy

func (in *BearerTokenInfo) DeepCopy() *BearerTokenInfo

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

func (*BearerTokenInfo) DeepCopyInto

func (in *BearerTokenInfo) DeepCopyInto(out *BearerTokenInfo)

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

type Blob

type Blob struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec holds information about the request being evaluated.
	Spec BlobSpec `json:"spec"`
	// Status holds status for the Blob
	Status BlobStatus `json:"status,omitempty"`
}

Blob is an API that describes the staged change of a resource +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*Blob) DeepCopy

func (in *Blob) DeepCopy() *Blob

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

func (*Blob) DeepCopyInto

func (in *Blob) DeepCopyInto(out *Blob)

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

func (*Blob) DeepCopyObject

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

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

type BlobDestination

type BlobDestination struct {
	// Name is the name of the destination.
	Name string `json:"name"`

	// Path is the filesystem path where the blob should be stored.
	Path string `json:"path"`

	// ReverifySha256 indicates whether the blob's content should be verified with SHA256 checksum.
	// If true, the blob will be verified after download using the ContentSha256 value.
	ReverifySha256 bool `json:"reverifySha256,omitempty"`

	// SkipIfExists indicates whether to skip the download if the blob already exists at the destination.
	SkipIfExists bool `json:"skipIfExists,omitempty"`
}

BlobDestination defines the destination for a blob. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BlobDestination) DeepCopy

func (in *BlobDestination) DeepCopy() *BlobDestination

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

func (*BlobDestination) DeepCopyInto

func (in *BlobDestination) DeepCopyInto(out *BlobDestination)

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

type BlobList

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

BlobList contains a list of Blob +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BlobList) DeepCopy

func (in *BlobList) DeepCopy() *BlobList

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

func (*BlobList) DeepCopyInto

func (in *BlobList) DeepCopyInto(out *BlobList)

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

func (*BlobList) DeepCopyObject

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

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

type BlobPhase

type BlobPhase string

BlobPhase defines the phase of a Blob

const (
	// BlobPhasePending means the blob is pending
	BlobPhasePending BlobPhase = "Pending"
	// BlobPhaseRunning means the blob is running
	BlobPhaseRunning BlobPhase = "Running"
	// BlobPhaseSucceeded means the blob has succeeded
	BlobPhaseSucceeded BlobPhase = "Succeeded"
	// BlobPhaseFailed means the blob has failed
	BlobPhaseFailed BlobPhase = "Failed"
	// BlobPhaseUnknown means the blob status is unknown
	BlobPhaseUnknown BlobPhase = "Unknown"
)

type BlobSource

type BlobSource struct {
	// URL is the source URL of the blob.
	URL string `json:"url"`

	// BearerName is the name of the Bearer resource that should be used for authentication.
	BearerName string `json:"bearerName,omitempty"`

	// Headers contains the HTTP headers for the request
	// +optional
	Headers map[string]string `json:"headers,omitempty"`
}

BlobSource defines the source for a blob. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BlobSource) DeepCopy

func (in *BlobSource) DeepCopy() *BlobSource

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

func (*BlobSource) DeepCopyInto

func (in *BlobSource) DeepCopyInto(out *BlobSource)

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

type BlobSpec

type BlobSpec struct {
	// Source is the source of the blob.
	Source []BlobSource `json:"source"`

	// Destination is the destination of the blob.
	Destination []BlobDestination `json:"destination"`

	// Priority represents the relative importance of this blob when multiple blobs exist.
	Priority int64 `json:"priority"`

	// MinimumChunkSize represents the minimum size of each chunk when splitting the blob.
	MinimumChunkSize int64 `json:"minimumChunkSize,omitempty"`

	// ChunkSize represents the size of each chunk when splitting the blob.
	ChunkSize int64 `json:"chunkSize,omitempty"`

	// ChunksNumber represents the total number of chunks that the blob will be split into.
	ChunksNumber int64 `json:"chunksNumber,omitempty"`

	// ContentSha256 is the sha256 checksum of the blob content being verified.
	ContentSha256 string `json:"contentSha256,omitempty"`

	// MaximumRunning is the maximum number of running chunks allowed for this blob.
	// +default=2
	MaximumRunning int64 `json:"maximumRunning,omitempty"`

	// MaximumPending is the maximum number of pending chunks allowed for this blob.
	// +default=1
	MaximumPending int64 `json:"maximumPending,omitempty"`

	// MaximumRetry is the number of times the chunk has been retried.
	// +default=3
	MaximumRetry int64 `json:"maximumRetry,omitempty"`

	// ForceAcceptRanges forces the blob to support range requests regardless of server response.
	// When set to true, the blob will be treated as if it supports range requests even if the
	// server doesn't advertise 'Accept-Ranges: bytes' in the response headers.
	// This is useful for servers that support range requests but don't properly advertise it.
	// +optional
	ForceAcceptRanges bool `json:"forceAcceptRanges,omitempty"`
}

BlobSpec defines the specification for Blob. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BlobSpec) DeepCopy

func (in *BlobSpec) DeepCopy() *BlobSpec

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

func (*BlobSpec) DeepCopyInto

func (in *BlobSpec) DeepCopyInto(out *BlobSpec)

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

type BlobStatus

type BlobStatus struct {
	// HandlerName is the name of the handler.
	HandlerName string `json:"handlerName"`

	// Phase represents the current phase of the blob.
	Phase BlobPhase `json:"phase,omitempty"`

	// Total represents the total amount of work to be done for this blob.
	Total int64 `json:"total,omitempty"`

	// AcceptRanges represents the accept-ranges header of the response.
	AcceptRanges bool `json:"acceptRanges,omitempty"`

	// Progress is the progress of the blob.
	Progress int64 `json:"progress,omitempty"`

	// PendingChunks is the number of pending chunks for this blob.
	PendingChunks int64 `json:"pendingChunks,omitempty"`

	// RunningChunks is the number of running chunks for this blob.
	RunningChunks int64 `json:"runningChunks,omitempty"`

	// SucceededChunks is the number of succeeded chunks for this blob.
	SucceededChunks int64 `json:"succeededChunks,omitempty"`

	// FailedChunks is the number of failed chunks for this blob.
	FailedChunks int64 `json:"failedChunks,omitempty"`

	// Retry is the number of times the blob has been retried.
	Retry int64 `json:"retry,omitempty"`

	// CompletionTime represents the time when the blob reached a terminal phase (Succeeded or Failed).
	// This field is used to calculate the TTL for resource cleanup.
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// Conditions holds conditions for the Blob.
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}

BlobStatus holds status for the Blob +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*BlobStatus) DeepCopy

func (in *BlobStatus) DeepCopy() *BlobStatus

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

func (*BlobStatus) DeepCopyInto

func (in *BlobStatus) DeepCopyInto(out *BlobStatus)

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

type Chunk

type Chunk struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec holds information about the request being evaluated.
	Spec ChunkSpec `json:"spec"`
	// Status holds status for the Chunk
	Status ChunkStatus `json:"status,omitempty"`
}

Chunk is an API that describes the staged change of a resource +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*Chunk) DeepCopy

func (in *Chunk) DeepCopy() *Chunk

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

func (*Chunk) DeepCopyInto

func (in *Chunk) DeepCopyInto(out *Chunk)

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

func (*Chunk) DeepCopyObject

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

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

type ChunkHTTP

type ChunkHTTP struct {
	// Request defines the HTTP request parameters
	Request ChunkHTTPRequest `json:"request"`

	// Response defines the expected HTTP response for validation
	Response ChunkHTTPResponse `json:"response"`
}

ChunkHTTP defines the HTTP request/response configuration for Chunk +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkHTTP) DeepCopy

func (in *ChunkHTTP) DeepCopy() *ChunkHTTP

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

func (*ChunkHTTP) DeepCopyInto

func (in *ChunkHTTP) DeepCopyInto(out *ChunkHTTP)

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

type ChunkHTTPRequest

type ChunkHTTPRequest struct {
	// Method is the HTTP method (GET, POST, PUT, DELETE, etc)
	Method string `json:"method"`

	// URL is the target URL for the request
	URL string `json:"url"`

	// Headers contains the HTTP headers for the request
	// +optional
	Headers map[string]string `json:"headers,omitempty"`
}

ChunkHTTPRequest defines the HTTP request parameters for Chunk +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkHTTPRequest) DeepCopy

func (in *ChunkHTTPRequest) DeepCopy() *ChunkHTTPRequest

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

func (*ChunkHTTPRequest) DeepCopyInto

func (in *ChunkHTTPRequest) DeepCopyInto(out *ChunkHTTPRequest)

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

type ChunkHTTPResponse

type ChunkHTTPResponse struct {
	// StatusCode is the expected HTTP status code
	StatusCode int `json:"statusCode"`

	// Headers contains the HTTP headers from the response
	Headers map[string]string `json:"headers,omitempty"`
}

ChunkHTTPResponse defines the expected HTTP response for validation +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkHTTPResponse) DeepCopy

func (in *ChunkHTTPResponse) DeepCopy() *ChunkHTTPResponse

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

func (*ChunkHTTPResponse) DeepCopyInto

func (in *ChunkHTTPResponse) DeepCopyInto(out *ChunkHTTPResponse)

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

type ChunkList

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

ChunkList contains a list of Chunk +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkList) DeepCopy

func (in *ChunkList) DeepCopy() *ChunkList

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

func (*ChunkList) DeepCopyInto

func (in *ChunkList) DeepCopyInto(out *ChunkList)

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

func (*ChunkList) DeepCopyObject

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

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

type ChunkPhase

type ChunkPhase string

ChunkPhase defines the phase of a Chunk

const (
	// ChunkPhasePending means the chunk is pending
	ChunkPhasePending ChunkPhase = "Pending"
	// ChunkPhaseRunning means the chunk is running
	ChunkPhaseRunning ChunkPhase = "Running"
	// ChunkPhaseSucceeded means the chunk has succeeded
	ChunkPhaseSucceeded ChunkPhase = "Succeeded"
	// ChunkPhaseFailed means the chunk has failed
	ChunkPhaseFailed ChunkPhase = "Failed"
	// ChunkPhaseUnknown means the chunk status is unknown
	ChunkPhaseUnknown ChunkPhase = "Unknown"
)

type ChunkSpec

type ChunkSpec struct {
	// Source is the source of the chunk.
	Source ChunkHTTP `json:"source"`

	// BearerName is the name of the Bearer resource that should be used for authentication.
	BearerName string `json:"bearerName,omitempty"`

	// Destination is the destination of the chunk.
	Destination []ChunkHTTP `json:"destination,omitempty"`

	// Priority represents the relative importance of this chunk when multiple chunks exist.
	Priority int64 `json:"priority"`

	// Total represents the total amount of work to be done for this chunk.
	Total int64 `json:"total,omitempty"`

	// ChunkIndex represents the part number in a multipart upload operation.
	// 0 means not part of a multipart upload, >0 means the part number (1-based index).
	ChunkIndex int64 `json:"chunkIndex,omitempty"`

	// ChunksNumber represents the total number of chunks that the chunk is part of in a multipart operation.
	ChunksNumber int64 `json:"chunksNumber,omitempty"`

	// Sha256PartialPreviousName indicates if this is an initial block when set to "-"
	Sha256PartialPreviousName string `json:"sha256PartialPreviousName,omitempty"`

	// Sha256 is the expected SHA256 hash of the complete content
	Sha256 string `json:"sha256,omitempty"`

	// MaximumRetry is the number of times the chunk has been retried.
	MaximumRetry int64 `json:"maximumRetry,omitempty"`

	// InlineResponseBody indicates whether the response body should be inlined in the status
	InlineResponseBody bool `json:"inlineResponseBody,omitempty"`
}

ChunkSpec defines the specification for Chunk. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkSpec) DeepCopy

func (in *ChunkSpec) DeepCopy() *ChunkSpec

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

func (*ChunkSpec) DeepCopyInto

func (in *ChunkSpec) DeepCopyInto(out *ChunkSpec)

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

type ChunkStatus

type ChunkStatus struct {
	// HandlerName is the name of the handler.
	HandlerName string `json:"handlerName"`

	// Phase represents the current phase of the chunk.
	Phase ChunkPhase `json:"phase,omitempty"`

	// Progress is the progress of the chunk.
	Progress int64 `json:"progress,omitempty"`

	// SourceResponse is the response from the source resource
	SourceResponse *ChunkHTTPResponse `json:"sourceResponse,omitempty"`

	// ResponseBody contains the raw response body from the source resource
	ResponseBody []byte `json:"responseBody,omitempty"`

	// SourceProgress is the progress of reading the source resource
	SourceProgress int64 `json:"sourceProgress,omitempty"`

	// DestinationProgresses tracks progress of writing to destination resources
	DestinationProgresses []int64 `json:"destinationProgresses,omitempty"`

	// Sha256Partial contains sha256 hash that is partially calculated and saved
	Sha256Partial []byte `json:"sha256Partial,omitempty"`

	// Sha256 is the sha256 hash of the resource snapshot being verified.
	Sha256 string `json:"sha256,omitempty"`

	// Etag is the ETag of the resource snapshot being verified.
	Etags []string `json:"etags,omitempty"`

	// Retry is the number of times the chunk has been retried.
	Retry int64 `json:"retry,omitempty"`

	// Retryable indicates whether the chunk can be retried.
	Retryable bool `json:"retryable,omitempty"`

	// CompletionTime represents the time when the chunk reached a terminal phase (Succeeded or Failed).
	// This field is used to calculate the TTL for resource cleanup.
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// Conditions holds conditions for the Chunk.
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}

ChunkStatus holds status for the Chunk +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*ChunkStatus) DeepCopy

func (in *ChunkStatus) DeepCopy() *ChunkStatus

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

func (*ChunkStatus) DeepCopyInto

func (in *ChunkStatus) DeepCopyInto(out *ChunkStatus)

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

type Condition

type Condition struct {
	// Type of condition in CamelCase or in foo.example.com/CamelCase.
	// Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
	// useful (see .node.status.conditions), the ability to deconflict is important.
	// The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
	Type string `json:"type"`

	// Message is a human readable message indicating details about the transition.
	// This may be an empty string.
	Message string `json:"message"`
}

Condition contains details for one aspect of the current state of this API Resource. +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func AppendConditions

func AppendConditions(existing []Condition, newConditions ...Condition) []Condition

AppendConditions appends new conditions to existing ones, merging duplicates by type. If a condition with the same type already exists, it will be updated with the new condition.

func GetCondition

func GetCondition(conditions []Condition, conditionType string) (Condition, bool)

GetCondition returns the condition with the given type if it exists in the conditions list. The second return value indicates whether the condition was found.

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

type ConditionStatus

type ConditionStatus string

ConditionStatus is the status of a condition. +enum

const (
	// ConditionTrue means a resource is in the condition.
	ConditionTrue ConditionStatus = "True"
	// ConditionFalse means a resource is not in the condition.
	ConditionFalse ConditionStatus = "False"
	// ConditionUnknown means kubernetes can't decide if a resource is in the condition or not.
	ConditionUnknown ConditionStatus = "Unknown"
)

type Multipart

type Multipart struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// DestinationNames contains the names of destination resources for multipart uploads
	DestinationNames []string `json:"destinationNames,omitempty"`

	// UploadIDs holds the list of upload IDs for multipart uploads
	UploadIDs []string `json:"uploadIDs,omitempty"`

	// UploadEtags holds the etags of uploaded parts for multipart uploads
	UploadEtags []UploadEtags `json:"uploadEtags,omitempty"`
}

Multipart is an API that describes the staged change of a resource +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*Multipart) DeepCopy

func (in *Multipart) DeepCopy() *Multipart

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

func (*Multipart) DeepCopyInto

func (in *Multipart) DeepCopyInto(out *Multipart)

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

func (*Multipart) DeepCopyObject

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

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

type MultipartList

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

MultipartList contains a list of Multipart +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*MultipartList) DeepCopy

func (in *MultipartList) DeepCopy() *MultipartList

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

func (*MultipartList) DeepCopyInto

func (in *MultipartList) DeepCopyInto(out *MultipartList)

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

func (*MultipartList) DeepCopyObject

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

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

type UploadEtags

type UploadEtags struct {
	Size  int64    `json:"size,omitempty"`
	Etags []string `json:"etags,omitempty"`
}

UploadEtags holds the etag information for uploaded parts of a multipart upload +k8s:deepcopy-gen=true +k8s:openapi-gen=true

func (*UploadEtags) DeepCopy

func (in *UploadEtags) DeepCopy() *UploadEtags

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

func (*UploadEtags) DeepCopyInto

func (in *UploadEtags) DeepCopyInto(out *UploadEtags)

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