Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +groupName=image.linode.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Image
- func (in *Image) DeepCopy() *Image
- func (in *Image) DeepCopyInto(out *Image)
- func (in *Image) DeepCopyObject() runtime.Object
- func (mg *Image) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Image) GetConnectionDetailsMapping() map[string]string
- func (mg *Image) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Image) GetID() string
- func (tr *Image) GetInitParameters() (map[string]any, error)
- func (mg *Image) GetManagementPolicies() xpv1.ManagementPolicies
- func (tr *Image) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)
- func (tr *Image) GetObservation() (map[string]any, error)
- func (tr *Image) GetParameters() (map[string]any, error)
- func (mg *Image) GetProviderConfigReference() *xpv1.Reference
- func (mg *Image) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Image) GetTerraformResourceType() string
- func (tr *Image) GetTerraformSchemaVersion() int
- func (mg *Image) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Image) Hub()
- func (tr *Image) LateInitialize(attrs []byte) (bool, error)
- func (mg *Image) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Image) SetConditions(c ...xpv1.Condition)
- func (mg *Image) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Image) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (tr *Image) SetObservation(obs map[string]any) error
- func (tr *Image) SetParameters(params map[string]any) error
- func (mg *Image) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Image) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Image) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ImageInitParameters
- type ImageList
- type ImageObservation
- type ImageParameters
- type ImageSpec
- type ImageStatus
- type ReplicationsInitParameters
- type ReplicationsObservation
- type ReplicationsParameters
Constants ¶
const ( CRDGroup = "image.linode.upbound.io" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // CRDGroupVersion is the API Group Version used to register the objects CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( Image_Kind = "Image" Image_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Image_Kind}.String() Image_KindAPIVersion = Image_Kind + "." + CRDGroupVersion.String() Image_GroupVersionKind = CRDGroupVersion.WithKind(Image_Kind) )
Repository type metadata.
Functions ¶
This section is empty.
Types ¶
type Image ¶
type Image struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.label) || (has(self.initProvider) && has(self.initProvider.label))",message="spec.forProvider.label is a required parameter" Spec ImageSpec `json:"spec"` Status ImageStatus `json:"status,omitempty"` }
Image is the Schema for the Images API. Manages a Linode Image. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,linode}
func (*Image) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Image.
func (*Image) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Image) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Image) GetCondition ¶
func (mg *Image) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Image.
func (*Image) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this Image
func (*Image) GetDeletionPolicy ¶
func (mg *Image) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Image.
func (*Image) GetInitParameters ¶ added in v0.0.16
GetInitParameters of this Image
func (*Image) GetManagementPolicies ¶ added in v0.0.16
func (mg *Image) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Image.
func (*Image) GetMergedParameters ¶ added in v0.0.16
GetInitParameters of this Image
func (*Image) GetObservation ¶
GetObservation of this Image
func (*Image) GetParameters ¶
GetParameters of this Image
func (*Image) GetProviderConfigReference ¶
GetProviderConfigReference of this Image.
func (*Image) GetPublishConnectionDetailsTo ¶
func (mg *Image) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Image.
func (*Image) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Image
func (*Image) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Image) GetWriteConnectionSecretToReference ¶
func (mg *Image) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Image.
func (*Image) Hub ¶ added in v0.0.16
func (tr *Image) Hub()
Hub marks this type as a conversion hub.
func (*Image) LateInitialize ¶
LateInitialize this Image using its observed tfState. returns True if there are any spec changes for the resource.
func (*Image) ResolveReferences ¶ added in v0.0.1
ResolveReferences of this Image.
func (*Image) SetConditions ¶
SetConditions of this Image.
func (*Image) SetDeletionPolicy ¶
func (mg *Image) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Image.
func (*Image) SetManagementPolicies ¶ added in v0.0.16
func (mg *Image) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Image.
func (*Image) SetObservation ¶
SetObservation for this Image
func (*Image) SetParameters ¶
SetParameters for this Image
func (*Image) SetProviderConfigReference ¶
SetProviderConfigReference of this Image.
func (*Image) SetPublishConnectionDetailsTo ¶
func (mg *Image) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Image.
func (*Image) SetWriteConnectionSecretToReference ¶
func (mg *Image) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Image.
type ImageInitParameters ¶ added in v0.0.16
type ImageInitParameters struct { // Whether this image supports cloud-init. CloudInit *bool `json:"cloudInit,omitempty" tf:"cloud_init,omitempty"` // A detailed description of this Image. // A detailed description of this Image. Description *string `json:"description,omitempty" tf:"description,omitempty"` // The ID of the Linode Disk that this Image will be created from. // The ID of the Linode Disk that this Image will be created from. // +crossplane:generate:reference:type=github.com/linode/provider-linode/apis/instance/v1alpha1.Disk DiskID *float64 `json:"diskId,omitempty" tf:"disk_id,omitempty"` // Reference to a Disk in instance to populate diskId. // +kubebuilder:validation:Optional DiskIDRef *v1.Reference `json:"diskIdRef,omitempty" tf:"-"` // Selector for a Disk in instance to populate diskId. // +kubebuilder:validation:Optional DiskIDSelector *v1.Selector `json:"diskIdSelector,omitempty" tf:"-"` // The MD5 hash of the file to be uploaded. This is used to trigger file updates. // The MD5 hash of the image file. FileHash *string `json:"fileHash,omitempty" tf:"file_hash,omitempty"` // The path of the image file to be uploaded. // The name of the file to upload to this image. FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // A short description of the Image. Labels cannot contain special characters. // A short description of the Image. Labels cannot contain special characters. Label *string `json:"label,omitempty" tf:"label,omitempty"` // The ID of the Linode that this Image will be created from. // The ID of the Linode that this Image will be created from. // +crossplane:generate:reference:type=github.com/linode/provider-linode/apis/instance/v1alpha1.Instance LinodeID *float64 `json:"linodeId,omitempty" tf:"linode_id,omitempty"` // Reference to a Instance in instance to populate linodeId. // +kubebuilder:validation:Optional LinodeIDRef *v1.Reference `json:"linodeIdRef,omitempty" tf:"-"` // Selector for a Instance in instance to populate linodeId. // +kubebuilder:validation:Optional LinodeIDSelector *v1.Selector `json:"linodeIdSelector,omitempty" tf:"-"` // The region of the image. See all regions here. // The region to upload to. Region *string `json:"region,omitempty" tf:"region,omitempty"` // A list of regions that customer wants to replicate this image in. At least one valid region is required and only core regions allowed. Existing images in the regions not passed will be removed. Note: Image replication may not be available to all users. See Replicate an Image here for more details. // A list of regions that customer wants to replicate this image in. At least one available region is required and only core regions allowed. Existing images in the regions not passed will be removed. ReplicaRegions []*string `json:"replicaRegions,omitempty" tf:"replica_regions,omitempty"` // A list of customized tags. // The customized tags for the image. Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` // Whether to wait for all image replications become available. Default to false. // Whether to wait for all image replications become `available`. WaitForReplications *bool `json:"waitForReplications,omitempty" tf:"wait_for_replications,omitempty"` }
func (*ImageInitParameters) DeepCopy ¶ added in v0.0.16
func (in *ImageInitParameters) DeepCopy() *ImageInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageInitParameters.
func (*ImageInitParameters) DeepCopyInto ¶ added in v0.0.16
func (in *ImageInitParameters) DeepCopyInto(out *ImageInitParameters)
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 Images
func (*ImageList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageList.
func (*ImageList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ImageList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ImageObservation ¶
type ImageObservation struct { // The capabilities of this Image. Capabilities []*string `json:"capabilities,omitempty" tf:"capabilities,omitempty"` // Whether this image supports cloud-init. CloudInit *bool `json:"cloudInit,omitempty" tf:"cloud_init,omitempty"` // When this Image was created. // When this Image was created. Created *string `json:"created,omitempty" tf:"created,omitempty"` // The name of the User who created this Image. // The name of the User who created this Image. CreatedBy *string `json:"createdBy,omitempty" tf:"created_by,omitempty"` // Whether or not this Image is deprecated. Will only be True for deprecated public Images. // Whether or not this Image is deprecated. Will only be True for deprecated public Images. Deprecated *bool `json:"deprecated,omitempty" tf:"deprecated,omitempty"` // A detailed description of this Image. // A detailed description of this Image. Description *string `json:"description,omitempty" tf:"description,omitempty"` // The ID of the Linode Disk that this Image will be created from. // The ID of the Linode Disk that this Image will be created from. DiskID *float64 `json:"diskId,omitempty" tf:"disk_id,omitempty"` // Only Images created automatically (from a deleted Linode; type=automatic) will expire. // Only Images created automatically (from a deleted Linode; type=automatic) will expire. Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` // The MD5 hash of the file to be uploaded. This is used to trigger file updates. // The MD5 hash of the image file. FileHash *string `json:"fileHash,omitempty" tf:"file_hash,omitempty"` // The path of the image file to be uploaded. // The name of the file to upload to this image. FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345. ID *string `json:"id,omitempty" tf:"id,omitempty"` // True if the Image is public. // True if the Image is public. IsPublic *bool `json:"isPublic,omitempty" tf:"is_public,omitempty"` // A short description of the Image. Labels cannot contain special characters. // A short description of the Image. Labels cannot contain special characters. Label *string `json:"label,omitempty" tf:"label,omitempty"` // The ID of the Linode that this Image will be created from. // The ID of the Linode that this Image will be created from. LinodeID *float64 `json:"linodeId,omitempty" tf:"linode_id,omitempty"` // The region of the image. See all regions here. // The region to upload to. Region *string `json:"region,omitempty" tf:"region,omitempty"` // A list of regions that customer wants to replicate this image in. At least one valid region is required and only core regions allowed. Existing images in the regions not passed will be removed. Note: Image replication may not be available to all users. See Replicate an Image here for more details. // A list of regions that customer wants to replicate this image in. At least one available region is required and only core regions allowed. Existing images in the regions not passed will be removed. ReplicaRegions []*string `json:"replicaRegions,omitempty" tf:"replica_regions,omitempty"` // A list of image replications region and corresponding status. // A list of image replications region and corresponding status. Replications []ReplicationsObservation `json:"replications,omitempty" tf:"replications,omitempty"` // The minimum size this Image needs to deploy. Size is in MB. // The minimum size this Image needs to deploy. Size is in MB. Size *float64 `json:"size,omitempty" tf:"size,omitempty"` // The status of an image replica. // The current status of this Image. Status *string `json:"status,omitempty" tf:"status,omitempty"` // A list of customized tags. // The customized tags for the image. Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` // The total size of the image in all available regions. // The total size of the image in all available regions. TotalSize *float64 `json:"totalSize,omitempty" tf:"total_size,omitempty"` // How the Image was created. 'Manual' Images can be created at any time. 'Automatic' images are created automatically from a deleted Linode. // How the Image was created. 'Manual' Images can be created at any time. 'Automatic' images are created automatically from a deleted Linode. Type *string `json:"type,omitempty" tf:"type,omitempty"` // The upstream distribution vendor. Nil for private Images. // The upstream distribution vendor. Nil for private Images. Vendor *string `json:"vendor,omitempty" tf:"vendor,omitempty"` // Whether to wait for all image replications become available. Default to false. // Whether to wait for all image replications become `available`. WaitForReplications *bool `json:"waitForReplications,omitempty" tf:"wait_for_replications,omitempty"` }
func (*ImageObservation) DeepCopy ¶
func (in *ImageObservation) DeepCopy() *ImageObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageObservation.
func (*ImageObservation) DeepCopyInto ¶
func (in *ImageObservation) DeepCopyInto(out *ImageObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageParameters ¶
type ImageParameters struct { // Whether this image supports cloud-init. // +kubebuilder:validation:Optional CloudInit *bool `json:"cloudInit,omitempty" tf:"cloud_init,omitempty"` // A detailed description of this Image. // A detailed description of this Image. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The ID of the Linode Disk that this Image will be created from. // The ID of the Linode Disk that this Image will be created from. // +crossplane:generate:reference:type=github.com/linode/provider-linode/apis/instance/v1alpha1.Disk // +kubebuilder:validation:Optional DiskID *float64 `json:"diskId,omitempty" tf:"disk_id,omitempty"` // Reference to a Disk in instance to populate diskId. // +kubebuilder:validation:Optional DiskIDRef *v1.Reference `json:"diskIdRef,omitempty" tf:"-"` // Selector for a Disk in instance to populate diskId. // +kubebuilder:validation:Optional DiskIDSelector *v1.Selector `json:"diskIdSelector,omitempty" tf:"-"` // The MD5 hash of the file to be uploaded. This is used to trigger file updates. // The MD5 hash of the image file. // +kubebuilder:validation:Optional FileHash *string `json:"fileHash,omitempty" tf:"file_hash,omitempty"` // The path of the image file to be uploaded. // The name of the file to upload to this image. // +kubebuilder:validation:Optional FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // A short description of the Image. Labels cannot contain special characters. // A short description of the Image. Labels cannot contain special characters. // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The ID of the Linode that this Image will be created from. // The ID of the Linode that this Image will be created from. // +crossplane:generate:reference:type=github.com/linode/provider-linode/apis/instance/v1alpha1.Instance // +kubebuilder:validation:Optional LinodeID *float64 `json:"linodeId,omitempty" tf:"linode_id,omitempty"` // Reference to a Instance in instance to populate linodeId. // +kubebuilder:validation:Optional LinodeIDRef *v1.Reference `json:"linodeIdRef,omitempty" tf:"-"` // Selector for a Instance in instance to populate linodeId. // +kubebuilder:validation:Optional LinodeIDSelector *v1.Selector `json:"linodeIdSelector,omitempty" tf:"-"` // The region of the image. See all regions here. // The region to upload to. // +kubebuilder:validation:Optional Region *string `json:"region,omitempty" tf:"region,omitempty"` // A list of regions that customer wants to replicate this image in. At least one valid region is required and only core regions allowed. Existing images in the regions not passed will be removed. Note: Image replication may not be available to all users. See Replicate an Image here for more details. // A list of regions that customer wants to replicate this image in. At least one available region is required and only core regions allowed. Existing images in the regions not passed will be removed. // +kubebuilder:validation:Optional ReplicaRegions []*string `json:"replicaRegions,omitempty" tf:"replica_regions,omitempty"` // A list of customized tags. // The customized tags for the image. // +kubebuilder:validation:Optional Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` // Whether to wait for all image replications become available. Default to false. // Whether to wait for all image replications become `available`. // +kubebuilder:validation:Optional WaitForReplications *bool `json:"waitForReplications,omitempty" tf:"wait_for_replications,omitempty"` }
func (*ImageParameters) DeepCopy ¶
func (in *ImageParameters) DeepCopy() *ImageParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageParameters.
func (*ImageParameters) DeepCopyInto ¶
func (in *ImageParameters) DeepCopyInto(out *ImageParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageSpec ¶
type ImageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ImageParameters `json:"forProvider"` // THIS IS A BETA FIELD. It will be honored // unless the Management Policies feature flag is disabled. // InitProvider holds the same fields as ForProvider, with the exception // of Identifier and other resource reference fields. The fields that are // in InitProvider are merged into ForProvider when the resource is created. // The same fields are also added to the terraform ignore_changes hook, to // avoid updating them after creation. This is useful for fields that are // required on creation, but we do not desire to update them after creation, // for example because of an external controller is managing them, like an // autoscaler. InitProvider ImageInitParameters `json:"initProvider,omitempty"` }
ImageSpec defines the desired state of Image
func (*ImageSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec.
func (*ImageSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageStatus ¶
type ImageStatus struct { v1.ResourceStatus `json:",inline"` AtProvider ImageObservation `json:"atProvider,omitempty"` }
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 ReplicationsInitParameters ¶ added in v0.0.24
type ReplicationsInitParameters struct { }
func (*ReplicationsInitParameters) DeepCopy ¶ added in v0.0.24
func (in *ReplicationsInitParameters) DeepCopy() *ReplicationsInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationsInitParameters.
func (*ReplicationsInitParameters) DeepCopyInto ¶ added in v0.0.24
func (in *ReplicationsInitParameters) DeepCopyInto(out *ReplicationsInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationsObservation ¶ added in v0.0.24
type ReplicationsObservation struct { // The region of the image. See all regions here. Region *string `json:"region,omitempty" tf:"region,omitempty"` // The status of an image replica. Status *string `json:"status,omitempty" tf:"status,omitempty"` }
func (*ReplicationsObservation) DeepCopy ¶ added in v0.0.24
func (in *ReplicationsObservation) DeepCopy() *ReplicationsObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationsObservation.
func (*ReplicationsObservation) DeepCopyInto ¶ added in v0.0.24
func (in *ReplicationsObservation) DeepCopyInto(out *ReplicationsObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationsParameters ¶ added in v0.0.24
type ReplicationsParameters struct { }
func (*ReplicationsParameters) DeepCopy ¶ added in v0.0.24
func (in *ReplicationsParameters) DeepCopy() *ReplicationsParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationsParameters.
func (*ReplicationsParameters) DeepCopyInto ¶ added in v0.0.24
func (in *ReplicationsParameters) DeepCopyInto(out *ReplicationsParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.