Documentation
¶
Overview ¶
Package v1alpha1 contains the input type for this Function +kubebuilder:object:generate=true +groupName=krm.kcl.dev +versionName=v1alpha1
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConfigSpec ¶
type ConfigSpec struct {
// Arguments is the list of top level dynamic arguments for the kcl option function, e.g., env="prod"
Arguments []string `json:"arguments,omitempty" yaml:"arguments,omitempty"`
// Settings is the list of kcl setting files including all of the CLI config.
Settings []string `json:"settings,omitempty" yaml:"settings,omitempty"`
// Overrides is the list of override paths and values, e.g., app.image="v2"
Overrides []string `json:"overrides,omitempty" yaml:"overrides,omitempty"`
// PathSelectors is the list of path selectors to select output result, e.g., a.b.c
PathSelectors []string `json:"pathSelectors,omitempty" yaml:"pathSelectors,omitempty"`
// Vendor denotes running kcl in the vendor mode.
Vendor bool `json:"vendor,omitempty" yaml:"vendor,omitempty"`
// SortKeys denotes sorting the output result keys, e.g., `{b = 1, a = 2} => {a = 2, b = 1}`.
SortKeys bool `json:"sortKeys,omitempty" yaml:"sortKeys,omitempty"`
// ShowHidden denotes output the hidden attribute in the result.
ShowHidden bool `json:"showHidden,omitempty" yaml:"showHidden,omitempty"`
// DisableNone denotes running kcl and disable dumping None values.
DisableNone bool `json:"disableNone,omitempty" yaml:"disableNone,omitempty"`
// Debug denotes running kcl in debug mode.
Debug bool `json:"debug,omitempty" yaml:"debug,omitempty"`
// StrictRangeCheck performs the 32-bit strict numeric range checks on numbers.
StrictRangeCheck bool `json:"strictRangeCheck,omitempty" yaml:"strictRangeCheck,omitempty"`
}
ConfigSpec defines the compile config.
func (*ConfigSpec) DeepCopy ¶
func (in *ConfigSpec) DeepCopy() *ConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigSpec.
func (*ConfigSpec) DeepCopyInto ¶
func (in *ConfigSpec) DeepCopyInto(out *ConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CredSpec ¶
type CredSpec struct {
Url string `json:"url,omitempty" yaml:"url,omitempty"`
Username string `json:"username" yaml:"username"`
Password string `json:"password" yaml:"password"`
}
CredSpec defines authentication credentials for remote locations
func (*CredSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredSpec.
func (*CredSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KCLInput ¶
type KCLInput struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RunSpec `json:"spec,omitempty" yaml:"spec,omitempty"`
}
KCLInput can be used to provide input to this Function. +kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:resource:categories=crossplane
func (*KCLInput) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KCLInput.
func (*KCLInput) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KCLInput) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Resource ¶
type Resource struct {
// Name is a unique identifier for this entry in a ResourceList
Name string `json:"name"`
// Base of the composed resource that patches will be applied to.
// According to the patches and transforms functions, this may be ommited on
// occassion by a previous pipeline
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:EmbeddedResource
// +optional
Base *runtime.RawExtension `json:"base,omitempty"`
}
func (*Resource) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resource.
func (*Resource) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceList ¶
type ResourceList []Resource
func (ResourceList) DeepCopy ¶
func (in ResourceList) DeepCopy() ResourceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceList.
func (ResourceList) DeepCopyInto ¶
func (in ResourceList) DeepCopyInto(out *ResourceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunSpec ¶
type RunSpec struct {
// Source is a required field for providing a KCL script inline.
Source string `json:"source" yaml:"source"`
// Config is the compile config.
Config ConfigSpec `json:"config,omitempty" yaml:"config,omitempty"`
// Credentials for remote locations
Credentials CredSpec `json:"credentials,omitempty" yaml:"credentials,omitempty"`
// Dependencies are the external dependencies for the KCL code.
// The format of the `dependencies` field is same as the `[dependencies]` in the `kcl.mod` file
Dependencies string `json:"dependencies,omitempty" yaml:"dependencies,omitempty"`
// Params are the parameters in key-value pairs format.
Params map[string]runtime.RawExtension `json:"params,omitempty" yaml:"params,omitempty"`
// Resources is a list of resources to patch and create
// This is utilized when a Target is set to PatchResources
Resources ResourceList `json:"resources,omitempty"`
// Target determines what object the export output should be applied to
// +kubebuilder:default:=Resources
// +kubebuilder:validation:Enum:=Default;PatchDesired;PatchResources;Resources;XR
Target resource.Target `json:"target"`
}
RunSpec defines the desired state of Crossplane KCL function.
func (*RunSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunSpec.
func (*RunSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.