v1beta1

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=rolesanywhere.aws.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "rolesanywhere.aws.upbound.io"
	CRDVersion = "v1beta1"
)

Package type metadata.

Variables

View Source
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
)
View Source
var (
	Profile_Kind             = "Profile"
	Profile_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Profile_Kind}.String()
	Profile_KindAPIVersion   = Profile_Kind + "." + CRDGroupVersion.String()
	Profile_GroupVersionKind = CRDGroupVersion.WithKind(Profile_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Profile

type Profile 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.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   ProfileSpec   `json:"spec"`
	Status ProfileStatus `json:"status,omitempty"`
}

Profile is the Schema for the Profiles API. Provides a Roles Anywhere Profile resource +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,aws}

func (*Profile) DeepCopy

func (in *Profile) DeepCopy() *Profile

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

func (*Profile) DeepCopyInto

func (in *Profile) DeepCopyInto(out *Profile)

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

func (*Profile) DeepCopyObject

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

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

func (*Profile) GetCondition

func (mg *Profile) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Profile.

func (*Profile) GetConnectionDetailsMapping

func (tr *Profile) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Profile

func (*Profile) GetDeletionPolicy

func (mg *Profile) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Profile.

func (*Profile) GetID

func (tr *Profile) GetID() string

GetID returns ID of underlying Terraform resource of this Profile

func (*Profile) GetInitParameters added in v0.38.0

func (tr *Profile) GetInitParameters() (map[string]any, error)

GetInitParameters of this Profile

func (*Profile) GetManagementPolicies added in v0.38.0

func (mg *Profile) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Profile.

func (*Profile) GetMergedParameters added in v0.44.0

func (tr *Profile) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Profile

func (*Profile) GetObservation

func (tr *Profile) GetObservation() (map[string]any, error)

GetObservation of this Profile

func (*Profile) GetParameters

func (tr *Profile) GetParameters() (map[string]any, error)

GetParameters of this Profile

func (*Profile) GetProviderConfigReference

func (mg *Profile) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Profile.

func (*Profile) GetPublishConnectionDetailsTo

func (mg *Profile) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Profile.

func (*Profile) GetTerraformResourceType

func (mg *Profile) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Profile

func (*Profile) GetTerraformSchemaVersion

func (tr *Profile) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Profile) GetWriteConnectionSecretToReference

func (mg *Profile) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Profile.

func (*Profile) Hub added in v0.47.2

func (tr *Profile) Hub()

Hub marks this type as a conversion hub.

func (*Profile) LateInitialize

func (tr *Profile) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Profile using its observed tfState. returns True if there are any spec changes for the resource.

func (*Profile) ResolveReferences

func (mg *Profile) ResolveReferences(ctx context.Context, c client.Reader) error

func (*Profile) SetConditions

func (mg *Profile) SetConditions(c ...xpv1.Condition)

SetConditions of this Profile.

func (*Profile) SetDeletionPolicy

func (mg *Profile) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Profile.

func (*Profile) SetManagementPolicies added in v0.38.0

func (mg *Profile) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Profile.

func (*Profile) SetObservation

func (tr *Profile) SetObservation(obs map[string]any) error

SetObservation for this Profile

func (*Profile) SetParameters

func (tr *Profile) SetParameters(params map[string]any) error

SetParameters for this Profile

func (*Profile) SetProviderConfigReference

func (mg *Profile) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Profile.

func (*Profile) SetPublishConnectionDetailsTo

func (mg *Profile) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Profile.

func (*Profile) SetWriteConnectionSecretToReference

func (mg *Profile) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Profile.

type ProfileInitParameters added in v0.38.0

type ProfileInitParameters struct {

	// The number of seconds the vended session credentials are valid for. Defaults to 3600.
	DurationSeconds *float64 `json:"durationSeconds,omitempty" tf:"duration_seconds,omitempty"`

	// Whether or not the Profile is enabled.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A list of managed policy ARNs that apply to the vended session credentials.
	// +listType=set
	ManagedPolicyArns []*string `json:"managedPolicyArns,omitempty" tf:"managed_policy_arns,omitempty"`

	// The name of the Profile.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies whether instance properties are required in CreateSession requests with this profile.
	RequireInstanceProperties *bool `json:"requireInstanceProperties,omitempty" tf:"require_instance_properties,omitempty"`

	// A list of IAM roles that this profile can assume
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +listType=set
	RoleArns []*string `json:"roleArns,omitempty" tf:"role_arns,omitempty"`

	// References to Role in iam to populate roleArns.
	// +kubebuilder:validation:Optional
	RoleArnsRefs []v1.Reference `json:"roleArnsRefs,omitempty" tf:"-"`

	// Selector for a list of Role in iam to populate roleArns.
	// +kubebuilder:validation:Optional
	RoleArnsSelector *v1.Selector `json:"roleArnsSelector,omitempty" tf:"-"`

	// A session policy that applies to the trust boundary of the vended session credentials.
	SessionPolicy *string `json:"sessionPolicy,omitempty" tf:"session_policy,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*ProfileInitParameters) DeepCopy added in v0.38.0

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

func (*ProfileInitParameters) DeepCopyInto added in v0.38.0

func (in *ProfileInitParameters) DeepCopyInto(out *ProfileInitParameters)

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

type ProfileList

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

ProfileList contains a list of Profiles

func (*ProfileList) DeepCopy

func (in *ProfileList) DeepCopy() *ProfileList

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

func (*ProfileList) DeepCopyInto

func (in *ProfileList) DeepCopyInto(out *ProfileList)

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

func (*ProfileList) DeepCopyObject

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

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

func (*ProfileList) GetItems

func (l *ProfileList) GetItems() []resource.Managed

GetItems of this ProfileList.

type ProfileObservation

type ProfileObservation struct {

	// Amazon Resource Name (ARN) of the Profile
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// The number of seconds the vended session credentials are valid for. Defaults to 3600.
	DurationSeconds *float64 `json:"durationSeconds,omitempty" tf:"duration_seconds,omitempty"`

	// Whether or not the Profile is enabled.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The Profile ID.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// A list of managed policy ARNs that apply to the vended session credentials.
	// +listType=set
	ManagedPolicyArns []*string `json:"managedPolicyArns,omitempty" tf:"managed_policy_arns,omitempty"`

	// The name of the Profile.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies whether instance properties are required in CreateSession requests with this profile.
	RequireInstanceProperties *bool `json:"requireInstanceProperties,omitempty" tf:"require_instance_properties,omitempty"`

	// A list of IAM roles that this profile can assume
	// +listType=set
	RoleArns []*string `json:"roleArns,omitempty" tf:"role_arns,omitempty"`

	// A session policy that applies to the trust boundary of the vended session credentials.
	SessionPolicy *string `json:"sessionPolicy,omitempty" tf:"session_policy,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
}

func (*ProfileObservation) DeepCopy

func (in *ProfileObservation) DeepCopy() *ProfileObservation

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

func (*ProfileObservation) DeepCopyInto

func (in *ProfileObservation) DeepCopyInto(out *ProfileObservation)

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

type ProfileParameters

type ProfileParameters struct {

	// The number of seconds the vended session credentials are valid for. Defaults to 3600.
	// +kubebuilder:validation:Optional
	DurationSeconds *float64 `json:"durationSeconds,omitempty" tf:"duration_seconds,omitempty"`

	// Whether or not the Profile is enabled.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A list of managed policy ARNs that apply to the vended session credentials.
	// +kubebuilder:validation:Optional
	// +listType=set
	ManagedPolicyArns []*string `json:"managedPolicyArns,omitempty" tf:"managed_policy_arns,omitempty"`

	// The name of the Profile.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Specifies whether instance properties are required in CreateSession requests with this profile.
	// +kubebuilder:validation:Optional
	RequireInstanceProperties *bool `json:"requireInstanceProperties,omitempty" tf:"require_instance_properties,omitempty"`

	// A list of IAM roles that this profile can assume
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	// +listType=set
	RoleArns []*string `json:"roleArns,omitempty" tf:"role_arns,omitempty"`

	// References to Role in iam to populate roleArns.
	// +kubebuilder:validation:Optional
	RoleArnsRefs []v1.Reference `json:"roleArnsRefs,omitempty" tf:"-"`

	// Selector for a list of Role in iam to populate roleArns.
	// +kubebuilder:validation:Optional
	RoleArnsSelector *v1.Selector `json:"roleArnsSelector,omitempty" tf:"-"`

	// A session policy that applies to the trust boundary of the vended session credentials.
	// +kubebuilder:validation:Optional
	SessionPolicy *string `json:"sessionPolicy,omitempty" tf:"session_policy,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*ProfileParameters) DeepCopy

func (in *ProfileParameters) DeepCopy() *ProfileParameters

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

func (*ProfileParameters) DeepCopyInto

func (in *ProfileParameters) DeepCopyInto(out *ProfileParameters)

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

type ProfileSpec

type ProfileSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ProfileParameters `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 ProfileInitParameters `json:"initProvider,omitempty"`
}

ProfileSpec defines the desired state of Profile

func (*ProfileSpec) DeepCopy

func (in *ProfileSpec) DeepCopy() *ProfileSpec

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

func (*ProfileSpec) DeepCopyInto

func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec)

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

type ProfileStatus

type ProfileStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ProfileObservation `json:"atProvider,omitempty"`
}

ProfileStatus defines the observed state of Profile.

func (*ProfileStatus) DeepCopy

func (in *ProfileStatus) DeepCopy() *ProfileStatus

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

func (*ProfileStatus) DeepCopyInto

func (in *ProfileStatus) DeepCopyInto(out *ProfileStatus)

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