From d5405cb978a7f319519df72324ef3867aa475b92 Mon Sep 17 00:00:00 2001 From: Cem Mergenci Date: Tue, 5 Nov 2024 02:30:34 +0300 Subject: [PATCH] Run another `make generate`. The previous `make generate` wasn't committed separately. This one reflects changes because of Upjet commit [5cdf369][]. [5cdf369]: https://github.com/crossplane/upjet/commit/5cdf36996e4aadd69bd81fdca3285c71784b0a11 Signed-off-by: Cem Mergenci --- .../v1beta2/zz_generated.deepcopy.go | 24 + .../v1beta2/zz_generated.resolvers.go | 55 ++ apis/apigateway/v1beta2/zz_restapi_types.go | 20 + apis/appsync/v1beta2/zz_generated.deepcopy.go | 24 + .../appsync/v1beta2/zz_generated.resolvers.go | 46 +- apis/appsync/v1beta2/zz_resolver_types.go | 20 + .../v1beta1/zz_generated.deepcopy.go | 24 + .../v1beta1/zz_generated.resolvers.go | 39 + .../v1beta1/zz_notification_types.go | 19 +- apis/backup/v1beta1/zz_generated.deepcopy.go | 48 ++ apis/backup/v1beta1/zz_generated.resolvers.go | 78 ++ apis/backup/v1beta1/zz_selection_types.go | 40 + apis/budgets/v1beta2/zz_budgetaction_types.go | 18 + apis/budgets/v1beta2/zz_generated.deepcopy.go | 24 + .../budgets/v1beta2/zz_generated.resolvers.go | 47 ++ .../v1beta2/zz_generated.deepcopy.go | 48 ++ .../v1beta2/zz_generated.resolvers.go | 88 ++ .../v1beta2/zz_metricalarm_types.go | 40 + apis/connect/v1beta2/zz_generated.deepcopy.go | 24 + .../connect/v1beta2/zz_generated.resolvers.go | 39 + apis/connect/v1beta2/zz_user_types.go | 21 +- .../v1beta2/zz_deploymentgroup_types.go | 22 +- apis/deploy/v1beta2/zz_generated.deepcopy.go | 24 + apis/deploy/v1beta2/zz_generated.resolvers.go | 51 ++ .../dms/v1beta1/zz_eventsubscription_types.go | 18 + apis/dms/v1beta1/zz_generated.deepcopy.go | 24 + apis/dms/v1beta1/zz_generated.resolvers.go | 39 + .../v1beta1/zz_eventsubscription_types.go | 20 + apis/docdb/v1beta1/zz_generated.deepcopy.go | 24 + apis/docdb/v1beta1/zz_generated.resolvers.go | 39 + apis/ec2/v1beta1/zz_generated.deepcopy.go | 120 +++ apis/ec2/v1beta1/zz_generated.resolvers.go | 203 +++++ apis/ec2/v1beta1/zz_natgateway_types.go | 20 + .../ec2/v1beta1/zz_securitygrouprule_types.go | 40 + .../v1beta1/zz_vpcendpointservice_types.go | 40 + apis/elasticsearch/v1beta2/zz_domain_types.go | 20 + .../v1beta2/zz_generated.deepcopy.go | 24 + .../v1beta2/zz_generated.resolvers.go | 43 + .../v1beta1/zz_backendserverpolicy_types.go | 20 + apis/elb/v1beta1/zz_generated.deepcopy.go | 48 ++ apis/elb/v1beta1/zz_generated.resolvers.go | 78 ++ apis/elb/v1beta1/zz_listenerpolicy_types.go | 20 + .../v1beta2/zz_deliverystream_types.go | 88 +- .../firehose/v1beta2/zz_generated.deepcopy.go | 96 +++ .../v1beta2/zz_generated.resolvers.go | 185 +++++ .../v1beta1/zz_gamesessionqueue_types.go | 20 + .../gamelift/v1beta1/zz_generated.deepcopy.go | 24 + .../v1beta1/zz_generated.resolvers.go | 39 + apis/glue/v1beta2/zz_connection_types.go | 20 + apis/glue/v1beta2/zz_crawler_types.go | 20 +- apis/glue/v1beta2/zz_generated.deepcopy.go | 48 ++ apis/glue/v1beta2/zz_generated.resolvers.go | 86 ++ apis/iam/v1beta1/zz_generated.deepcopy.go | 24 + apis/iam/v1beta1/zz_generated.resolvers.go | 50 ++ apis/iam/v1beta1/zz_role_types.go | 20 + .../v1beta2/zz_application_types.go | 44 +- .../v1beta2/zz_generated.deepcopy.go | 48 ++ .../v1beta2/zz_generated.resolvers.go | 93 +++ .../v1beta1/zz_datalakesettings_types.go | 20 + .../v1beta1/zz_generated.deepcopy.go | 24 + .../v1beta1/zz_generated.resolvers.go | 52 +- apis/lambda/v1beta2/zz_function_types.go | 20 + apis/lambda/v1beta2/zz_generated.deepcopy.go | 24 + apis/lambda/v1beta2/zz_generated.resolvers.go | 38 + .../v1beta2/zz_generated.deepcopy.go | 24 + .../v1beta2/zz_generated.resolvers.go | 39 + apis/medialive/v1beta2/zz_input_types.go | 20 + .../v1beta1/zz_eventsubscription_types.go | 20 + apis/neptune/v1beta1/zz_generated.deepcopy.go | 24 + .../neptune/v1beta1/zz_generated.resolvers.go | 39 + apis/rds/v1beta1/zz_clusterendpoint_types.go | 40 + .../rds/v1beta1/zz_eventsubscription_types.go | 20 + apis/rds/v1beta1/zz_generated.deepcopy.go | 96 +++ apis/rds/v1beta1/zz_generated.resolvers.go | 154 ++++ apis/rds/v1beta1/zz_proxy_types.go | 21 +- .../v1beta1/zz_eventsubscription_types.go | 20 + .../redshift/v1beta1/zz_generated.deepcopy.go | 24 + .../v1beta1/zz_generated.resolvers.go | 39 + apis/route53/v1beta1/zz_generated.deepcopy.go | 24 + .../route53/v1beta1/zz_generated.resolvers.go | 39 + apis/route53/v1beta1/zz_healthcheck_types.go | 20 + apis/route53/v1beta2/zz_generated.deepcopy.go | 24 + .../route53/v1beta2/zz_generated.resolvers.go | 40 + apis/route53/v1beta2/zz_record_types.go | 20 + .../v1beta2/zz_generated.deepcopy.go | 48 ++ .../v1beta2/zz_generated.resolvers.go | 77 ++ .../v1beta2/zz_safetyrule_types.go | 40 + .../v1beta2/zz_generated.deepcopy.go | 24 + .../v1beta2/zz_generated.resolvers.go | 47 ++ .../zz_storagelensconfiguration_types.go | 20 + apis/ssm/v1beta2/zz_association_types.go | 22 +- apis/ssm/v1beta2/zz_generated.deepcopy.go | 72 ++ apis/ssm/v1beta2/zz_generated.resolvers.go | 143 +++- .../v1beta2/zz_maintenancewindowtask_types.go | 44 +- .../transfer/v1beta2/zz_generated.deepcopy.go | 48 ++ .../v1beta2/zz_generated.resolvers.go | 85 ++ apis/transfer/v1beta2/zz_server_types.go | 40 + apis/workspaces/v1beta2/zz_directory_types.go | 20 + .../v1beta2/zz_generated.deepcopy.go | 24 + .../v1beta2/zz_generated.resolvers.go | 38 + cmd/provider/bedrockagent/zz_main.go | 2 +- cmd/provider/osis/zz_main.go | 2 +- cmd/provider/pipes/zz_main.go | 2 +- config/provider-metadata.yaml | 340 ++++++++ .../acm/v1beta1/certificatevalidation.yaml | 4 +- .../autoscaling/v1beta1/notification.yaml | 6 +- .../budgets/v1beta2/budgetaction.yaml | 4 +- examples-generated/connect/v1beta2/user.yaml | 4 +- .../dms/v1beta1/eventsubscription.yaml | 4 +- .../docdb/v1beta1/eventsubscription.yaml | 4 +- .../ec2/v1beta1/securitygrouprule.yaml | 8 +- .../vpcendpointconnectionnotification.yaml | 4 +- .../ec2/v1beta1/vpcendpointservice.yaml | 4 +- .../elb/v1beta1/backendserverpolicy.yaml | 4 +- .../elb/v1beta1/listenerpolicy.yaml | 4 +- examples-generated/elb/v1beta1/policy.yaml | 8 +- .../gamelift/v1beta1/gamesessionqueue.yaml | 6 +- .../v1beta1/datalakesettings.yaml | 6 +- .../medialive/v1beta2/input.yaml | 4 +- .../neptune/v1beta1/eventsubscription.yaml | 4 +- .../rds/v1beta1/clusterendpoint.yaml | 6 +- .../rds/v1beta1/eventsubscription.yaml | 4 +- examples-generated/rds/v1beta1/proxy.yaml | 4 +- .../rds/v1beta1/proxytarget.yaml | 4 +- .../rds/v1beta2/proxydefaulttargetgroup.yaml | 4 +- .../redshift/v1beta1/eventsubscription.yaml | 4 +- .../route53/v1beta2/record.yaml | 4 +- .../v1beta2/storagelensconfiguration.yaml | 6 +- .../ses/v1beta1/domaindkim.yaml | 4 +- .../ses/v1beta1/domainmailfrom.yaml | 8 +- .../ssm/v1beta2/association.yaml | 4 +- .../ssm/v1beta2/maintenancewindowtask.yaml | 8 +- .../apigateway.aws.upbound.io_restapis.yaml | 158 ++++ .../appsync.aws.upbound.io_resolvers.yaml | 158 ++++ ...oscaling.aws.upbound.io_notifications.yaml | 162 +++- .../backup.aws.upbound.io_selections.yaml | 312 +++++++ .../budgets.aws.upbound.io_budgetactions.yaml | 156 ++++ ...loudwatch.aws.upbound.io_metricalarms.yaml | 310 +++++++ .../crds/connect.aws.upbound.io_users.yaml | 162 +++- ...eploy.aws.upbound.io_deploymentgroups.yaml | 158 ++++ ...dms.aws.upbound.io_eventsubscriptions.yaml | 158 ++++ ...cdb.aws.upbound.io_eventsubscriptions.yaml | 156 ++++ .../crds/ec2.aws.upbound.io_natgateways.yaml | 154 ++++ ...ec2.aws.upbound.io_securitygrouprules.yaml | 308 +++++++ ...c2.aws.upbound.io_vpcendpointservices.yaml | 308 +++++++ .../elasticsearch.aws.upbound.io_domains.yaml | 158 ++++ ....aws.upbound.io_backendserverpolicies.yaml | 156 ++++ .../elb.aws.upbound.io_listenerpolicies.yaml | 156 ++++ ...rehose.aws.upbound.io_deliverystreams.yaml | 760 ++++++++++++++++-- ...lift.aws.upbound.io_gamesessionqueues.yaml | 156 ++++ .../crds/glue.aws.upbound.io_connections.yaml | 158 ++++ .../crds/glue.aws.upbound.io_crawlers.yaml | 158 ++++ package/crds/iam.aws.upbound.io_roles.yaml | 156 ++++ ...alyticsv2.aws.upbound.io_applications.yaml | 314 ++++++++ ...ation.aws.upbound.io_datalakesettings.yaml | 154 ++++ .../crds/lambda.aws.upbound.io_functions.yaml | 158 ++++ .../crds/medialive.aws.upbound.io_inputs.yaml | 158 ++++ ...une.aws.upbound.io_eventsubscriptions.yaml | 158 ++++ .../rds.aws.upbound.io_clusterendpoints.yaml | 316 ++++++++ ...rds.aws.upbound.io_eventsubscriptions.yaml | 156 ++++ package/crds/rds.aws.upbound.io_proxies.yaml | 160 +++- ...ift.aws.upbound.io_eventsubscriptions.yaml | 156 ++++ .../route53.aws.upbound.io_healthchecks.yaml | 158 ++++ .../crds/route53.aws.upbound.io_records.yaml | 154 ++++ ...trolconfig.aws.upbound.io_safetyrules.yaml | 316 ++++++++ ....upbound.io_storagelensconfigurations.yaml | 156 ++++ .../crds/ssm.aws.upbound.io_associations.yaml | 156 ++++ ...aws.upbound.io_maintenancewindowtasks.yaml | 314 ++++++++ .../crds/transfer.aws.upbound.io_servers.yaml | 312 +++++++ ...workspaces.aws.upbound.io_directories.yaml | 156 ++++ 170 files changed, 12630 insertions(+), 169 deletions(-) diff --git a/apis/apigateway/v1beta2/zz_generated.deepcopy.go b/apis/apigateway/v1beta2/zz_generated.deepcopy.go index 08a440d234..acb33cc43d 100644 --- a/apis/apigateway/v1beta2/zz_generated.deepcopy.go +++ b/apis/apigateway/v1beta2/zz_generated.deepcopy.go @@ -2276,6 +2276,18 @@ func (in *RestAPIEndpointConfigurationInitParameters) DeepCopyInto(out *RestAPIE } } } + if in.VPCEndpointIdsRefs != nil { + in, out := &in.VPCEndpointIdsRefs, &out.VPCEndpointIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPCEndpointIdsSelector != nil { + in, out := &in.VPCEndpointIdsSelector, &out.VPCEndpointIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestAPIEndpointConfigurationInitParameters. @@ -2350,6 +2362,18 @@ func (in *RestAPIEndpointConfigurationParameters) DeepCopyInto(out *RestAPIEndpo } } } + if in.VPCEndpointIdsRefs != nil { + in, out := &in.VPCEndpointIdsRefs, &out.VPCEndpointIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPCEndpointIdsSelector != nil { + in, out := &in.VPCEndpointIdsSelector, &out.VPCEndpointIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestAPIEndpointConfigurationParameters. diff --git a/apis/apigateway/v1beta2/zz_generated.resolvers.go b/apis/apigateway/v1beta2/zz_generated.resolvers.go index 46f255fd59..148f7c9e67 100644 --- a/apis/apigateway/v1beta2/zz_generated.resolvers.go +++ b/apis/apigateway/v1beta2/zz_generated.resolvers.go @@ -445,6 +445,61 @@ func (mg *MethodSettings) ResolveReferences(ctx context.Context, c client.Reader return nil } +// ResolveReferences of this RestAPI. +func (mg *RestAPI) ResolveReferences(ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList + r := reference.NewAPIResolver(c, mg) + + var mrsp reference.MultiResolutionResponse + var err error + + if mg.Spec.ForProvider.EndpointConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "VPCEndpoint", "VPCEndpointList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIdsRefs, + Selector: mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIds") + } + mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.EndpointConfiguration.VPCEndpointIdsRefs = mrsp.ResolvedReferences + + } + if mg.Spec.InitProvider.EndpointConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "VPCEndpoint", "VPCEndpointList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIdsRefs, + Selector: mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIds") + } + mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.EndpointConfiguration.VPCEndpointIdsRefs = mrsp.ResolvedReferences + + } + + return nil +} + // ResolveReferences of this Stage. func (mg *Stage) ResolveReferences(ctx context.Context, c client.Reader) error { var m xpresource.Managed diff --git a/apis/apigateway/v1beta2/zz_restapi_types.go b/apis/apigateway/v1beta2/zz_restapi_types.go index 736b768441..4c2ebc50de 100755 --- a/apis/apigateway/v1beta2/zz_restapi_types.go +++ b/apis/apigateway/v1beta2/zz_restapi_types.go @@ -19,8 +19,18 @@ type RestAPIEndpointConfigurationInitParameters struct { Types []*string `json:"types,omitempty" tf:"types,omitempty"` // Set of VPC Endpoint identifiers. It is only supported for PRIVATE endpoint type. If importing an OpenAPI specification via the body argument, this corresponds to the x-amazon-apigateway-endpoint-configuration extension vpcEndpointIds property. If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.VPCEndpoint + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set VPCEndpointIds []*string `json:"vpcEndpointIds,omitempty" tf:"vpc_endpoint_ids,omitempty"` + + // References to VPCEndpoint in ec2 to populate vpcEndpointIds. + // +kubebuilder:validation:Optional + VPCEndpointIdsRefs []v1.Reference `json:"vpcEndpointIdsRefs,omitempty" tf:"-"` + + // Selector for a list of VPCEndpoint in ec2 to populate vpcEndpointIds. + // +kubebuilder:validation:Optional + VPCEndpointIdsSelector *v1.Selector `json:"vpcEndpointIdsSelector,omitempty" tf:"-"` } type RestAPIEndpointConfigurationObservation struct { @@ -40,9 +50,19 @@ type RestAPIEndpointConfigurationParameters struct { Types []*string `json:"types" tf:"types,omitempty"` // Set of VPC Endpoint identifiers. It is only supported for PRIVATE endpoint type. If importing an OpenAPI specification via the body argument, this corresponds to the x-amazon-apigateway-endpoint-configuration extension vpcEndpointIds property. If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.VPCEndpoint + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set VPCEndpointIds []*string `json:"vpcEndpointIds,omitempty" tf:"vpc_endpoint_ids,omitempty"` + + // References to VPCEndpoint in ec2 to populate vpcEndpointIds. + // +kubebuilder:validation:Optional + VPCEndpointIdsRefs []v1.Reference `json:"vpcEndpointIdsRefs,omitempty" tf:"-"` + + // Selector for a list of VPCEndpoint in ec2 to populate vpcEndpointIds. + // +kubebuilder:validation:Optional + VPCEndpointIdsSelector *v1.Selector `json:"vpcEndpointIdsSelector,omitempty" tf:"-"` } type RestAPIInitParameters struct { diff --git a/apis/appsync/v1beta2/zz_generated.deepcopy.go b/apis/appsync/v1beta2/zz_generated.deepcopy.go index 90c7cfa769..49e3e398b8 100644 --- a/apis/appsync/v1beta2/zz_generated.deepcopy.go +++ b/apis/appsync/v1beta2/zz_generated.deepcopy.go @@ -3033,6 +3033,18 @@ func (in *PipelineConfigInitParameters) DeepCopyInto(out *PipelineConfigInitPara } } } + if in.FunctionsRefs != nil { + in, out := &in.FunctionsRefs, &out.FunctionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FunctionsSelector != nil { + in, out := &in.FunctionsSelector, &out.FunctionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineConfigInitParameters. @@ -3085,6 +3097,18 @@ func (in *PipelineConfigParameters) DeepCopyInto(out *PipelineConfigParameters) } } } + if in.FunctionsRefs != nil { + in, out := &in.FunctionsRefs, &out.FunctionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FunctionsSelector != nil { + in, out := &in.FunctionsSelector, &out.FunctionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineConfigParameters. diff --git a/apis/appsync/v1beta2/zz_generated.resolvers.go b/apis/appsync/v1beta2/zz_generated.resolvers.go index a863601f56..360fc63a1e 100644 --- a/apis/appsync/v1beta2/zz_generated.resolvers.go +++ b/apis/appsync/v1beta2/zz_generated.resolvers.go @@ -359,6 +359,7 @@ func (mg *Resolver) ResolveReferences(ctx context.Context, c client.Reader) erro r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("appsync.aws.upbound.io", "v1beta2", "GraphQLAPI", "GraphQLAPIList") @@ -398,12 +399,33 @@ func (mg *Resolver) ResolveReferences(ctx context.Context, c client.Reader) erro } mg.Spec.ForProvider.DataSource = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DataSourceRef = rsp.ResolvedReference + + if mg.Spec.ForProvider.PipelineConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("appsync.aws.upbound.io", "v1beta2", "Function", "FunctionList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.PipelineConfig.Functions), + Extract: resource.ExtractParamPath("function_id", true), + References: mg.Spec.ForProvider.PipelineConfig.FunctionsRefs, + Selector: mg.Spec.ForProvider.PipelineConfig.FunctionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.PipelineConfig.Functions") + } + mg.Spec.ForProvider.PipelineConfig.Functions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.PipelineConfig.FunctionsRefs = mrsp.ResolvedReferences + + } { m, l, err = apisresolver.GetManagedResource("appsync.aws.upbound.io", "v1beta2", "Datasource", "DatasourceList") if err != nil { return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DataSource), Extract: reference.ExternalName(), @@ -418,5 +440,27 @@ func (mg *Resolver) ResolveReferences(ctx context.Context, c client.Reader) erro mg.Spec.InitProvider.DataSource = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DataSourceRef = rsp.ResolvedReference + if mg.Spec.InitProvider.PipelineConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("appsync.aws.upbound.io", "v1beta2", "Function", "FunctionList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.PipelineConfig.Functions), + Extract: resource.ExtractParamPath("function_id", true), + References: mg.Spec.InitProvider.PipelineConfig.FunctionsRefs, + Selector: mg.Spec.InitProvider.PipelineConfig.FunctionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.PipelineConfig.Functions") + } + mg.Spec.InitProvider.PipelineConfig.Functions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.PipelineConfig.FunctionsRefs = mrsp.ResolvedReferences + + } + return nil } diff --git a/apis/appsync/v1beta2/zz_resolver_types.go b/apis/appsync/v1beta2/zz_resolver_types.go index 83ea363cbd..9e0a055616 100755 --- a/apis/appsync/v1beta2/zz_resolver_types.go +++ b/apis/appsync/v1beta2/zz_resolver_types.go @@ -48,7 +48,17 @@ type CachingConfigParameters struct { type PipelineConfigInitParameters struct { // A list of Function objects. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/appsync/v1beta2.Function + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("function_id",true) Functions []*string `json:"functions,omitempty" tf:"functions,omitempty"` + + // References to Function in appsync to populate functions. + // +kubebuilder:validation:Optional + FunctionsRefs []v1.Reference `json:"functionsRefs,omitempty" tf:"-"` + + // Selector for a list of Function in appsync to populate functions. + // +kubebuilder:validation:Optional + FunctionsSelector *v1.Selector `json:"functionsSelector,omitempty" tf:"-"` } type PipelineConfigObservation struct { @@ -60,8 +70,18 @@ type PipelineConfigObservation struct { type PipelineConfigParameters struct { // A list of Function objects. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/appsync/v1beta2.Function + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("function_id",true) // +kubebuilder:validation:Optional Functions []*string `json:"functions,omitempty" tf:"functions,omitempty"` + + // References to Function in appsync to populate functions. + // +kubebuilder:validation:Optional + FunctionsRefs []v1.Reference `json:"functionsRefs,omitempty" tf:"-"` + + // Selector for a list of Function in appsync to populate functions. + // +kubebuilder:validation:Optional + FunctionsSelector *v1.Selector `json:"functionsSelector,omitempty" tf:"-"` } type ResolverInitParameters struct { diff --git a/apis/autoscaling/v1beta1/zz_generated.deepcopy.go b/apis/autoscaling/v1beta1/zz_generated.deepcopy.go index 0255b98bc3..0090d2661b 100644 --- a/apis/autoscaling/v1beta1/zz_generated.deepcopy.go +++ b/apis/autoscaling/v1beta1/zz_generated.deepcopy.go @@ -6799,6 +6799,18 @@ func (in *NotificationInitParameters) DeepCopyInto(out *NotificationInitParamete } } } + if in.GroupNamesRefs != nil { + in, out := &in.GroupNamesRefs, &out.GroupNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GroupNamesSelector != nil { + in, out := &in.GroupNamesSelector, &out.GroupNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Notifications != nil { in, out := &in.Notifications, &out.Notifications *out = make([]*string, len(*in)) @@ -6930,6 +6942,18 @@ func (in *NotificationParameters) DeepCopyInto(out *NotificationParameters) { } } } + if in.GroupNamesRefs != nil { + in, out := &in.GroupNamesRefs, &out.GroupNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GroupNamesSelector != nil { + in, out := &in.GroupNamesSelector, &out.GroupNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Notifications != nil { in, out := &in.Notifications, &out.Notifications *out = make([]*string, len(*in)) diff --git a/apis/autoscaling/v1beta1/zz_generated.resolvers.go b/apis/autoscaling/v1beta1/zz_generated.resolvers.go index 46001a1e38..b40508037d 100644 --- a/apis/autoscaling/v1beta1/zz_generated.resolvers.go +++ b/apis/autoscaling/v1beta1/zz_generated.resolvers.go @@ -619,7 +619,27 @@ func (mg *Notification) ResolveReferences(ctx context.Context, c client.Reader) r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("autoscaling.aws.upbound.io", "v1beta3", "AutoscalingGroup", "AutoscalingGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.GroupNames), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.GroupNamesRefs, + Selector: mg.Spec.ForProvider.GroupNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.GroupNames") + } + mg.Spec.ForProvider.GroupNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.GroupNamesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -639,6 +659,25 @@ func (mg *Notification) ResolveReferences(ctx context.Context, c client.Reader) } mg.Spec.ForProvider.TopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("autoscaling.aws.upbound.io", "v1beta3", "AutoscalingGroup", "AutoscalingGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.GroupNames), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.GroupNamesRefs, + Selector: mg.Spec.InitProvider.GroupNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.GroupNames") + } + mg.Spec.InitProvider.GroupNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.GroupNamesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { diff --git a/apis/autoscaling/v1beta1/zz_notification_types.go b/apis/autoscaling/v1beta1/zz_notification_types.go index dc348762a3..94a2df6a85 100755 --- a/apis/autoscaling/v1beta1/zz_notification_types.go +++ b/apis/autoscaling/v1beta1/zz_notification_types.go @@ -16,9 +16,18 @@ import ( type NotificationInitParameters struct { // List of AutoScaling Group Names + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta3.AutoscalingGroup // +listType=set GroupNames []*string `json:"groupNames,omitempty" tf:"group_names,omitempty"` + // References to AutoscalingGroup in autoscaling to populate groupNames. + // +kubebuilder:validation:Optional + GroupNamesRefs []v1.Reference `json:"groupNamesRefs,omitempty" tf:"-"` + + // Selector for a list of AutoscalingGroup in autoscaling to populate groupNames. + // +kubebuilder:validation:Optional + GroupNamesSelector *v1.Selector `json:"groupNamesSelector,omitempty" tf:"-"` + // List of Notification Types that trigger // notifications. Acceptable values are documented in the AWS documentation here // +listType=set @@ -58,10 +67,19 @@ type NotificationObservation struct { type NotificationParameters struct { // List of AutoScaling Group Names + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta3.AutoscalingGroup // +kubebuilder:validation:Optional // +listType=set GroupNames []*string `json:"groupNames,omitempty" tf:"group_names,omitempty"` + // References to AutoscalingGroup in autoscaling to populate groupNames. + // +kubebuilder:validation:Optional + GroupNamesRefs []v1.Reference `json:"groupNamesRefs,omitempty" tf:"-"` + + // Selector for a list of AutoscalingGroup in autoscaling to populate groupNames. + // +kubebuilder:validation:Optional + GroupNamesSelector *v1.Selector `json:"groupNamesSelector,omitempty" tf:"-"` + // List of Notification Types that trigger // notifications. Acceptable values are documented in the AWS documentation here // +kubebuilder:validation:Optional @@ -124,7 +142,6 @@ type NotificationStatus struct { type Notification 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.groupNames) || (has(self.initProvider) && has(self.initProvider.groupNames))",message="spec.forProvider.groupNames is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notifications) || (has(self.initProvider) && has(self.initProvider.notifications))",message="spec.forProvider.notifications is a required parameter" Spec NotificationSpec `json:"spec"` Status NotificationStatus `json:"status,omitempty"` diff --git a/apis/backup/v1beta1/zz_generated.deepcopy.go b/apis/backup/v1beta1/zz_generated.deepcopy.go index 6d9a6839dd..3702b965f4 100644 --- a/apis/backup/v1beta1/zz_generated.deepcopy.go +++ b/apis/backup/v1beta1/zz_generated.deepcopy.go @@ -2796,6 +2796,18 @@ func (in *SelectionInitParameters) DeepCopyInto(out *SelectionInitParameters) { } } } + if in.NotResourcesRefs != nil { + in, out := &in.NotResourcesRefs, &out.NotResourcesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotResourcesSelector != nil { + in, out := &in.NotResourcesSelector, &out.NotResourcesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PlanID != nil { in, out := &in.PlanID, &out.PlanID *out = new(string) @@ -2822,6 +2834,18 @@ func (in *SelectionInitParameters) DeepCopyInto(out *SelectionInitParameters) { } } } + if in.ResourcesRefs != nil { + in, out := &in.ResourcesRefs, &out.ResourcesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResourcesSelector != nil { + in, out := &in.ResourcesSelector, &out.ResourcesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SelectionTag != nil { in, out := &in.SelectionTag, &out.SelectionTag *out = make([]SelectionTagInitParameters, len(*in)) @@ -2985,6 +3009,18 @@ func (in *SelectionParameters) DeepCopyInto(out *SelectionParameters) { } } } + if in.NotResourcesRefs != nil { + in, out := &in.NotResourcesRefs, &out.NotResourcesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotResourcesSelector != nil { + in, out := &in.NotResourcesSelector, &out.NotResourcesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PlanID != nil { in, out := &in.PlanID, &out.PlanID *out = new(string) @@ -3016,6 +3052,18 @@ func (in *SelectionParameters) DeepCopyInto(out *SelectionParameters) { } } } + if in.ResourcesRefs != nil { + in, out := &in.ResourcesRefs, &out.ResourcesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResourcesSelector != nil { + in, out := &in.ResourcesSelector, &out.ResourcesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SelectionTag != nil { in, out := &in.SelectionTag, &out.SelectionTag *out = make([]SelectionTagParameters, len(*in)) diff --git a/apis/backup/v1beta1/zz_generated.resolvers.go b/apis/backup/v1beta1/zz_generated.resolvers.go index 922798f2b1..c04760cc5c 100644 --- a/apis/backup/v1beta1/zz_generated.resolvers.go +++ b/apis/backup/v1beta1/zz_generated.resolvers.go @@ -9,6 +9,7 @@ package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" @@ -80,6 +81,7 @@ func (mg *Selection) ResolveReferences(ctx context.Context, c client.Reader) err r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") @@ -100,6 +102,25 @@ func (mg *Selection) ResolveReferences(ctx context.Context, c client.Reader) err } mg.Spec.ForProvider.IAMRoleArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.IAMRoleArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.NotResources), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.NotResourcesRefs, + Selector: mg.Spec.ForProvider.NotResourcesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.NotResources") + } + mg.Spec.ForProvider.NotResources = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.NotResourcesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("backup.aws.upbound.io", "v1beta2", "Plan", "PlanList") if err != nil { @@ -119,6 +140,25 @@ func (mg *Selection) ResolveReferences(ctx context.Context, c client.Reader) err } mg.Spec.ForProvider.PlanID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PlanIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Resources), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.ResourcesRefs, + Selector: mg.Spec.ForProvider.ResourcesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Resources") + } + mg.Spec.ForProvider.Resources = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ResourcesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") if err != nil { @@ -138,6 +178,25 @@ func (mg *Selection) ResolveReferences(ctx context.Context, c client.Reader) err } mg.Spec.InitProvider.IAMRoleArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.IAMRoleArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.NotResources), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.NotResourcesRefs, + Selector: mg.Spec.InitProvider.NotResourcesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.NotResources") + } + mg.Spec.InitProvider.NotResources = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.NotResourcesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("backup.aws.upbound.io", "v1beta2", "Plan", "PlanList") if err != nil { @@ -157,6 +216,25 @@ func (mg *Selection) ResolveReferences(ctx context.Context, c client.Reader) err } mg.Spec.InitProvider.PlanID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.PlanIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Resources), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.ResourcesRefs, + Selector: mg.Spec.InitProvider.ResourcesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Resources") + } + mg.Spec.InitProvider.Resources = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ResourcesRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/backup/v1beta1/zz_selection_types.go b/apis/backup/v1beta1/zz_selection_types.go index ae0a1d9789..12769a296b 100755 --- a/apis/backup/v1beta1/zz_selection_types.go +++ b/apis/backup/v1beta1/zz_selection_types.go @@ -70,9 +70,19 @@ type SelectionInitParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set NotResources []*string `json:"notResources,omitempty" tf:"not_resources,omitempty"` + // References to Instance in rds to populate notResources. + // +kubebuilder:validation:Optional + NotResourcesRefs []v1.Reference `json:"notResourcesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate notResources. + // +kubebuilder:validation:Optional + NotResourcesSelector *v1.Selector `json:"notResourcesSelector,omitempty" tf:"-"` + // The backup plan ID to be associated with the selection of resources. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/backup/v1beta2.Plan PlanID *string `json:"planId,omitempty" tf:"plan_id,omitempty"` @@ -86,9 +96,19 @@ type SelectionInitParameters struct { PlanIDSelector *v1.Selector `json:"planIdSelector,omitempty" tf:"-"` // An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set Resources []*string `json:"resources,omitempty" tf:"resources,omitempty"` + // References to Instance in rds to populate resources. + // +kubebuilder:validation:Optional + ResourcesRefs []v1.Reference `json:"resourcesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate resources. + // +kubebuilder:validation:Optional + ResourcesSelector *v1.Selector `json:"resourcesSelector,omitempty" tf:"-"` + // Tag-based conditions used to specify a set of resources to assign to a backup plan. SelectionTag []SelectionTagInitParameters `json:"selectionTag,omitempty" tf:"selection_tag,omitempty"` } @@ -147,10 +167,20 @@ type SelectionParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set NotResources []*string `json:"notResources,omitempty" tf:"not_resources,omitempty"` + // References to Instance in rds to populate notResources. + // +kubebuilder:validation:Optional + NotResourcesRefs []v1.Reference `json:"notResourcesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate notResources. + // +kubebuilder:validation:Optional + NotResourcesSelector *v1.Selector `json:"notResourcesSelector,omitempty" tf:"-"` + // The backup plan ID to be associated with the selection of resources. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/backup/v1beta2.Plan // +kubebuilder:validation:Optional @@ -170,10 +200,20 @@ type SelectionParameters struct { Region *string `json:"region" tf:"-"` // An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set Resources []*string `json:"resources,omitempty" tf:"resources,omitempty"` + // References to Instance in rds to populate resources. + // +kubebuilder:validation:Optional + ResourcesRefs []v1.Reference `json:"resourcesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate resources. + // +kubebuilder:validation:Optional + ResourcesSelector *v1.Selector `json:"resourcesSelector,omitempty" tf:"-"` + // Tag-based conditions used to specify a set of resources to assign to a backup plan. // +kubebuilder:validation:Optional SelectionTag []SelectionTagParameters `json:"selectionTag,omitempty" tf:"selection_tag,omitempty"` diff --git a/apis/budgets/v1beta2/zz_budgetaction_types.go b/apis/budgets/v1beta2/zz_budgetaction_types.go index 138d5f70f9..074b88232b 100755 --- a/apis/budgets/v1beta2/zz_budgetaction_types.go +++ b/apis/budgets/v1beta2/zz_budgetaction_types.go @@ -273,9 +273,18 @@ type IAMActionDefinitionInitParameters struct { PolicyArnSelector *v1.Selector `json:"policyArnSelector,omitempty" tf:"-"` // A list of roles to be attached. There must be at least one role. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role // +listType=set Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` + // References to Role in iam to populate roles. + // +kubebuilder:validation:Optional + RolesRefs []v1.Reference `json:"rolesRefs,omitempty" tf:"-"` + + // Selector for a list of Role in iam to populate roles. + // +kubebuilder:validation:Optional + RolesSelector *v1.Selector `json:"rolesSelector,omitempty" tf:"-"` + // A list of users to be attached. There must be at least one user. // +listType=set Users []*string `json:"users,omitempty" tf:"users,omitempty"` @@ -321,10 +330,19 @@ type IAMActionDefinitionParameters struct { PolicyArnSelector *v1.Selector `json:"policyArnSelector,omitempty" tf:"-"` // A list of roles to be attached. There must be at least one role. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role // +kubebuilder:validation:Optional // +listType=set Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` + // References to Role in iam to populate roles. + // +kubebuilder:validation:Optional + RolesRefs []v1.Reference `json:"rolesRefs,omitempty" tf:"-"` + + // Selector for a list of Role in iam to populate roles. + // +kubebuilder:validation:Optional + RolesSelector *v1.Selector `json:"rolesSelector,omitempty" tf:"-"` + // A list of users to be attached. There must be at least one user. // +kubebuilder:validation:Optional // +listType=set diff --git a/apis/budgets/v1beta2/zz_generated.deepcopy.go b/apis/budgets/v1beta2/zz_generated.deepcopy.go index 8770576e60..316c3fbea1 100644 --- a/apis/budgets/v1beta2/zz_generated.deepcopy.go +++ b/apis/budgets/v1beta2/zz_generated.deepcopy.go @@ -1491,6 +1491,18 @@ func (in *IAMActionDefinitionInitParameters) DeepCopyInto(out *IAMActionDefiniti } } } + if in.RolesRefs != nil { + in, out := &in.RolesRefs, &out.RolesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RolesSelector != nil { + in, out := &in.RolesSelector, &out.RolesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Users != nil { in, out := &in.Users, &out.Users *out = make([]*string, len(*in)) @@ -1607,6 +1619,18 @@ func (in *IAMActionDefinitionParameters) DeepCopyInto(out *IAMActionDefinitionPa } } } + if in.RolesRefs != nil { + in, out := &in.RolesRefs, &out.RolesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RolesSelector != nil { + in, out := &in.RolesSelector, &out.RolesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Users != nil { in, out := &in.Users, &out.Users *out = make([]*string, len(*in)) diff --git a/apis/budgets/v1beta2/zz_generated.resolvers.go b/apis/budgets/v1beta2/zz_generated.resolvers.go index 5fa7da7225..f332f4be4f 100644 --- a/apis/budgets/v1beta2/zz_generated.resolvers.go +++ b/apis/budgets/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *BudgetAction) ResolveReferences( // ResolveReferences of this BudgetAc r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("budgets.aws.upbound.io", "v1beta2", "Budget", "BudgetList") @@ -69,6 +70,29 @@ func (mg *BudgetAction) ResolveReferences( // ResolveReferences of this BudgetAc } } + if mg.Spec.ForProvider.Definition != nil { + if mg.Spec.ForProvider.Definition.IAMActionDefinition != nil { + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Definition.IAMActionDefinition.Roles), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.Definition.IAMActionDefinition.RolesRefs, + Selector: mg.Spec.ForProvider.Definition.IAMActionDefinition.RolesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Definition.IAMActionDefinition.Roles") + } + mg.Spec.ForProvider.Definition.IAMActionDefinition.Roles = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.Definition.IAMActionDefinition.RolesRefs = mrsp.ResolvedReferences + + } + } { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") if err != nil { @@ -130,6 +154,29 @@ func (mg *BudgetAction) ResolveReferences( // ResolveReferences of this BudgetAc } } + if mg.Spec.InitProvider.Definition != nil { + if mg.Spec.InitProvider.Definition.IAMActionDefinition != nil { + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Definition.IAMActionDefinition.Roles), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.Definition.IAMActionDefinition.RolesRefs, + Selector: mg.Spec.InitProvider.Definition.IAMActionDefinition.RolesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Definition.IAMActionDefinition.Roles") + } + mg.Spec.InitProvider.Definition.IAMActionDefinition.Roles = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.Definition.IAMActionDefinition.RolesRefs = mrsp.ResolvedReferences + + } + } { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") if err != nil { diff --git a/apis/cloudwatch/v1beta2/zz_generated.deepcopy.go b/apis/cloudwatch/v1beta2/zz_generated.deepcopy.go index 4e052b3f7d..d1d0c91353 100644 --- a/apis/cloudwatch/v1beta2/zz_generated.deepcopy.go +++ b/apis/cloudwatch/v1beta2/zz_generated.deepcopy.go @@ -574,6 +574,18 @@ func (in *MetricAlarmInitParameters) DeepCopyInto(out *MetricAlarmInitParameters } } } + if in.AlarmActionsRefs != nil { + in, out := &in.AlarmActionsRefs, &out.AlarmActionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlarmActionsSelector != nil { + in, out := &in.AlarmActionsSelector, &out.AlarmActionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.AlarmDescription != nil { in, out := &in.AlarmDescription, &out.AlarmDescription *out = new(string) @@ -659,6 +671,18 @@ func (in *MetricAlarmInitParameters) DeepCopyInto(out *MetricAlarmInitParameters } } } + if in.OkActionsRefs != nil { + in, out := &in.OkActionsRefs, &out.OkActionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OkActionsSelector != nil { + in, out := &in.OkActionsSelector, &out.OkActionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Period != nil { in, out := &in.Period, &out.Period *out = new(float64) @@ -956,6 +980,18 @@ func (in *MetricAlarmParameters) DeepCopyInto(out *MetricAlarmParameters) { } } } + if in.AlarmActionsRefs != nil { + in, out := &in.AlarmActionsRefs, &out.AlarmActionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlarmActionsSelector != nil { + in, out := &in.AlarmActionsSelector, &out.AlarmActionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.AlarmDescription != nil { in, out := &in.AlarmDescription, &out.AlarmDescription *out = new(string) @@ -1041,6 +1077,18 @@ func (in *MetricAlarmParameters) DeepCopyInto(out *MetricAlarmParameters) { } } } + if in.OkActionsRefs != nil { + in, out := &in.OkActionsRefs, &out.OkActionsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OkActionsSelector != nil { + in, out := &in.OkActionsSelector, &out.OkActionsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Period != nil { in, out := &in.Period, &out.Period *out = new(float64) diff --git a/apis/cloudwatch/v1beta2/zz_generated.resolvers.go b/apis/cloudwatch/v1beta2/zz_generated.resolvers.go index c901794afb..28fb53ca68 100644 --- a/apis/cloudwatch/v1beta2/zz_generated.resolvers.go +++ b/apis/cloudwatch/v1beta2/zz_generated.resolvers.go @@ -104,3 +104,91 @@ func (mg *CompositeAlarm) ResolveReferences( // ResolveReferences of this Compos return nil } + +// ResolveReferences of this MetricAlarm. +func (mg *MetricAlarm) ResolveReferences(ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList + r := reference.NewAPIResolver(c, mg) + + var mrsp reference.MultiResolutionResponse + var err error + { + m, l, err = apisresolver.GetManagedResource("autoscaling.aws.upbound.io", "v1beta2", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.AlarmActions), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.AlarmActionsRefs, + Selector: mg.Spec.ForProvider.AlarmActionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.AlarmActions") + } + mg.Spec.ForProvider.AlarmActions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.AlarmActionsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.OkActions), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.OkActionsRefs, + Selector: mg.Spec.ForProvider.OkActionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.OkActions") + } + mg.Spec.ForProvider.OkActions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.OkActionsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("autoscaling.aws.upbound.io", "v1beta2", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.AlarmActions), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.AlarmActionsRefs, + Selector: mg.Spec.InitProvider.AlarmActionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.AlarmActions") + } + mg.Spec.InitProvider.AlarmActions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.AlarmActionsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.OkActions), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.OkActionsRefs, + Selector: mg.Spec.InitProvider.OkActionsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.OkActions") + } + mg.Spec.InitProvider.OkActions = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.OkActionsRefs = mrsp.ResolvedReferences + + return nil +} diff --git a/apis/cloudwatch/v1beta2/zz_metricalarm_types.go b/apis/cloudwatch/v1beta2/zz_metricalarm_types.go index db58dc5f52..242e270e58 100755 --- a/apis/cloudwatch/v1beta2/zz_metricalarm_types.go +++ b/apis/cloudwatch/v1beta2/zz_metricalarm_types.go @@ -19,9 +19,19 @@ type MetricAlarmInitParameters struct { ActionsEnabled *bool `json:"actionsEnabled,omitempty" tf:"actions_enabled,omitempty"` // The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta2.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set AlarmActions []*string `json:"alarmActions,omitempty" tf:"alarm_actions,omitempty"` + // References to Policy in autoscaling to populate alarmActions. + // +kubebuilder:validation:Optional + AlarmActionsRefs []v1.Reference `json:"alarmActionsRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in autoscaling to populate alarmActions. + // +kubebuilder:validation:Optional + AlarmActionsSelector *v1.Selector `json:"alarmActionsSelector,omitempty" tf:"-"` + // The description for the alarm. AlarmDescription *string `json:"alarmDescription,omitempty" tf:"alarm_description,omitempty"` @@ -63,9 +73,19 @@ type MetricAlarmInitParameters struct { Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"` // The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/sns/v1beta1.Topic + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set OkActions []*string `json:"okActions,omitempty" tf:"ok_actions,omitempty"` + // References to Topic in sns to populate okActions. + // +kubebuilder:validation:Optional + OkActionsRefs []v1.Reference `json:"okActionsRefs,omitempty" tf:"-"` + + // Selector for a list of Topic in sns to populate okActions. + // +kubebuilder:validation:Optional + OkActionsSelector *v1.Selector `json:"okActionsSelector,omitempty" tf:"-"` + // The period in seconds over which the specified statistic is applied. // Valid values are 10, 30, or any multiple of 60. Period *float64 `json:"period,omitempty" tf:"period,omitempty"` @@ -186,10 +206,20 @@ type MetricAlarmParameters struct { ActionsEnabled *bool `json:"actionsEnabled,omitempty" tf:"actions_enabled,omitempty"` // The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta2.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set AlarmActions []*string `json:"alarmActions,omitempty" tf:"alarm_actions,omitempty"` + // References to Policy in autoscaling to populate alarmActions. + // +kubebuilder:validation:Optional + AlarmActionsRefs []v1.Reference `json:"alarmActionsRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in autoscaling to populate alarmActions. + // +kubebuilder:validation:Optional + AlarmActionsSelector *v1.Selector `json:"alarmActionsSelector,omitempty" tf:"-"` + // The description for the alarm. // +kubebuilder:validation:Optional AlarmDescription *string `json:"alarmDescription,omitempty" tf:"alarm_description,omitempty"` @@ -242,10 +272,20 @@ type MetricAlarmParameters struct { Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"` // The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/sns/v1beta1.Topic + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set OkActions []*string `json:"okActions,omitempty" tf:"ok_actions,omitempty"` + // References to Topic in sns to populate okActions. + // +kubebuilder:validation:Optional + OkActionsRefs []v1.Reference `json:"okActionsRefs,omitempty" tf:"-"` + + // Selector for a list of Topic in sns to populate okActions. + // +kubebuilder:validation:Optional + OkActionsSelector *v1.Selector `json:"okActionsSelector,omitempty" tf:"-"` + // The period in seconds over which the specified statistic is applied. // Valid values are 10, 30, or any multiple of 60. // +kubebuilder:validation:Optional diff --git a/apis/connect/v1beta2/zz_generated.deepcopy.go b/apis/connect/v1beta2/zz_generated.deepcopy.go index 0ee98e6fcb..9fd5bdbe13 100644 --- a/apis/connect/v1beta2/zz_generated.deepcopy.go +++ b/apis/connect/v1beta2/zz_generated.deepcopy.go @@ -4305,6 +4305,18 @@ func (in *UserInitParameters) DeepCopyInto(out *UserInitParameters) { } } } + if in.SecurityProfileIdsRefs != nil { + in, out := &in.SecurityProfileIdsRefs, &out.SecurityProfileIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfileIdsSelector != nil { + in, out := &in.SecurityProfileIdsSelector, &out.SecurityProfileIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -4552,6 +4564,18 @@ func (in *UserParameters) DeepCopyInto(out *UserParameters) { } } } + if in.SecurityProfileIdsRefs != nil { + in, out := &in.SecurityProfileIdsRefs, &out.SecurityProfileIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfileIdsSelector != nil { + in, out := &in.SecurityProfileIdsSelector, &out.SecurityProfileIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) diff --git a/apis/connect/v1beta2/zz_generated.resolvers.go b/apis/connect/v1beta2/zz_generated.resolvers.go index f50ccbfc51..9a53a82f16 100644 --- a/apis/connect/v1beta2/zz_generated.resolvers.go +++ b/apis/connect/v1beta2/zz_generated.resolvers.go @@ -663,6 +663,7 @@ func (mg *User) ResolveReferences(ctx context.Context, c client.Reader) error { r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("connect.aws.upbound.io", "v1beta1", "Instance", "InstanceList") @@ -702,6 +703,25 @@ func (mg *User) ResolveReferences(ctx context.Context, c client.Reader) error { } mg.Spec.ForProvider.RoutingProfileID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RoutingProfileIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("connect.aws.upbound.io", "v1beta1", "SecurityProfile", "SecurityProfileList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SecurityProfileIds), + Extract: resource.ExtractParamPath("security_profile_id", true), + References: mg.Spec.ForProvider.SecurityProfileIdsRefs, + Selector: mg.Spec.ForProvider.SecurityProfileIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SecurityProfileIds") + } + mg.Spec.ForProvider.SecurityProfileIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SecurityProfileIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("connect.aws.upbound.io", "v1beta1", "Instance", "InstanceList") if err != nil { @@ -740,6 +760,25 @@ func (mg *User) ResolveReferences(ctx context.Context, c client.Reader) error { } mg.Spec.InitProvider.RoutingProfileID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.RoutingProfileIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("connect.aws.upbound.io", "v1beta1", "SecurityProfile", "SecurityProfileList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SecurityProfileIds), + Extract: resource.ExtractParamPath("security_profile_id", true), + References: mg.Spec.InitProvider.SecurityProfileIdsRefs, + Selector: mg.Spec.InitProvider.SecurityProfileIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SecurityProfileIds") + } + mg.Spec.InitProvider.SecurityProfileIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SecurityProfileIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/connect/v1beta2/zz_user_types.go b/apis/connect/v1beta2/zz_user_types.go index 013068739c..acf24c5425 100755 --- a/apis/connect/v1beta2/zz_user_types.go +++ b/apis/connect/v1beta2/zz_user_types.go @@ -99,9 +99,19 @@ type UserInitParameters struct { RoutingProfileIDSelector *v1.Selector `json:"routingProfileIdSelector,omitempty" tf:"-"` // A list of identifiers for the security profiles for the user. Specify a minimum of 1 and maximum of 10 security profile ids. For more information, see Best Practices for Security Profiles in the Amazon Connect Administrator Guide. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/connect/v1beta1.SecurityProfile + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("security_profile_id",true) // +listType=set SecurityProfileIds []*string `json:"securityProfileIds,omitempty" tf:"security_profile_ids,omitempty"` + // References to SecurityProfile in connect to populate securityProfileIds. + // +kubebuilder:validation:Optional + SecurityProfileIdsRefs []v1.Reference `json:"securityProfileIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityProfile in connect to populate securityProfileIds. + // +kubebuilder:validation:Optional + SecurityProfileIdsSelector *v1.Selector `json:"securityProfileIdsSelector,omitempty" tf:"-"` + // Key-value map of resource tags. // +mapType=granular Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` @@ -213,10 +223,20 @@ type UserParameters struct { RoutingProfileIDSelector *v1.Selector `json:"routingProfileIdSelector,omitempty" tf:"-"` // A list of identifiers for the security profiles for the user. Specify a minimum of 1 and maximum of 10 security profile ids. For more information, see Best Practices for Security Profiles in the Amazon Connect Administrator Guide. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/connect/v1beta1.SecurityProfile + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("security_profile_id",true) // +kubebuilder:validation:Optional // +listType=set SecurityProfileIds []*string `json:"securityProfileIds,omitempty" tf:"security_profile_ids,omitempty"` + // References to SecurityProfile in connect to populate securityProfileIds. + // +kubebuilder:validation:Optional + SecurityProfileIdsRefs []v1.Reference `json:"securityProfileIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityProfile in connect to populate securityProfileIds. + // +kubebuilder:validation:Optional + SecurityProfileIdsSelector *v1.Selector `json:"securityProfileIdsSelector,omitempty" tf:"-"` + // Key-value map of resource tags. // +kubebuilder:validation:Optional // +mapType=granular @@ -309,7 +329,6 @@ type User struct { 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" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.phoneConfig) || (has(self.initProvider) && has(self.initProvider.phoneConfig))",message="spec.forProvider.phoneConfig is a required parameter" - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.securityProfileIds) || (has(self.initProvider) && has(self.initProvider.securityProfileIds))",message="spec.forProvider.securityProfileIds is a required parameter" Spec UserSpec `json:"spec"` Status UserStatus `json:"status,omitempty"` } diff --git a/apis/deploy/v1beta2/zz_deploymentgroup_types.go b/apis/deploy/v1beta2/zz_deploymentgroup_types.go index 9439313b5c..cda2c06aa5 100755 --- a/apis/deploy/v1beta2/zz_deploymentgroup_types.go +++ b/apis/deploy/v1beta2/zz_deploymentgroup_types.go @@ -705,8 +705,18 @@ type OnPremisesInstanceTagFilterParameters struct { type ProdTrafficRouteInitParameters struct { // List of Amazon Resource Names (ARNs) of the load balancer listeners. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LBListener + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set ListenerArns []*string `json:"listenerArns,omitempty" tf:"listener_arns,omitempty"` + + // References to LBListener in elbv2 to populate listenerArns. + // +kubebuilder:validation:Optional + ListenerArnsRefs []v1.Reference `json:"listenerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LBListener in elbv2 to populate listenerArns. + // +kubebuilder:validation:Optional + ListenerArnsSelector *v1.Selector `json:"listenerArnsSelector,omitempty" tf:"-"` } type ProdTrafficRouteObservation struct { @@ -719,9 +729,19 @@ type ProdTrafficRouteObservation struct { type ProdTrafficRouteParameters struct { // List of Amazon Resource Names (ARNs) of the load balancer listeners. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LBListener + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set - ListenerArns []*string `json:"listenerArns" tf:"listener_arns,omitempty"` + ListenerArns []*string `json:"listenerArns,omitempty" tf:"listener_arns,omitempty"` + + // References to LBListener in elbv2 to populate listenerArns. + // +kubebuilder:validation:Optional + ListenerArnsRefs []v1.Reference `json:"listenerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LBListener in elbv2 to populate listenerArns. + // +kubebuilder:validation:Optional + ListenerArnsSelector *v1.Selector `json:"listenerArnsSelector,omitempty" tf:"-"` } type TargetGroupInfoInitParameters struct { diff --git a/apis/deploy/v1beta2/zz_generated.deepcopy.go b/apis/deploy/v1beta2/zz_generated.deepcopy.go index de09620886..d4d9adb666 100644 --- a/apis/deploy/v1beta2/zz_generated.deepcopy.go +++ b/apis/deploy/v1beta2/zz_generated.deepcopy.go @@ -2050,6 +2050,18 @@ func (in *ProdTrafficRouteInitParameters) DeepCopyInto(out *ProdTrafficRouteInit } } } + if in.ListenerArnsRefs != nil { + in, out := &in.ListenerArnsRefs, &out.ListenerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ListenerArnsSelector != nil { + in, out := &in.ListenerArnsSelector, &out.ListenerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProdTrafficRouteInitParameters. @@ -2102,6 +2114,18 @@ func (in *ProdTrafficRouteParameters) DeepCopyInto(out *ProdTrafficRouteParamete } } } + if in.ListenerArnsRefs != nil { + in, out := &in.ListenerArnsRefs, &out.ListenerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ListenerArnsSelector != nil { + in, out := &in.ListenerArnsSelector, &out.ListenerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProdTrafficRouteParameters. diff --git a/apis/deploy/v1beta2/zz_generated.resolvers.go b/apis/deploy/v1beta2/zz_generated.resolvers.go index dba7f2e03d..fd08d4bae0 100644 --- a/apis/deploy/v1beta2/zz_generated.resolvers.go +++ b/apis/deploy/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *DeploymentGroup) ResolveReferences( // ResolveReferences of this Deplo r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("deploy.aws.upbound.io", "v1beta1", "App", "AppList") @@ -111,6 +112,31 @@ func (mg *DeploymentGroup) ResolveReferences( // ResolveReferences of this Deplo } } + if mg.Spec.ForProvider.LoadBalancerInfo != nil { + if mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo != nil { + if mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute != nil { + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LBListener", "LBListenerList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsRefs, + Selector: mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns") + } + mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsRefs = mrsp.ResolvedReferences + + } + } + } if mg.Spec.ForProvider.LoadBalancerInfo != nil { if mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo != nil { for i5 := 0; i5 < len(mg.Spec.ForProvider.LoadBalancerInfo.TargetGroupPairInfo.TargetGroup); i5++ { @@ -241,6 +267,31 @@ func (mg *DeploymentGroup) ResolveReferences( // ResolveReferences of this Deplo } } + if mg.Spec.InitProvider.LoadBalancerInfo != nil { + if mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo != nil { + if mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute != nil { + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LBListener", "LBListenerList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsRefs, + Selector: mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns") + } + mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.ProdTrafficRoute.ListenerArnsRefs = mrsp.ResolvedReferences + + } + } + } if mg.Spec.InitProvider.LoadBalancerInfo != nil { if mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo != nil { for i5 := 0; i5 < len(mg.Spec.InitProvider.LoadBalancerInfo.TargetGroupPairInfo.TargetGroup); i5++ { diff --git a/apis/dms/v1beta1/zz_eventsubscription_types.go b/apis/dms/v1beta1/zz_eventsubscription_types.go index b01f77c48d..38cb75a95f 100755 --- a/apis/dms/v1beta1/zz_eventsubscription_types.go +++ b/apis/dms/v1beta1/zz_eventsubscription_types.go @@ -36,9 +36,18 @@ type EventSubscriptionInitParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // Ids of sources to listen to. If you don't specify a value, notifications are provided for all sources. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/dms/v1beta1.ReplicationTask // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to ReplicationTask in dms to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of ReplicationTask in dms to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // Type of source for events. Valid values: replication-instance or replication-task SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` @@ -111,10 +120,19 @@ type EventSubscriptionParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // Ids of sources to listen to. If you don't specify a value, notifications are provided for all sources. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/dms/v1beta1.ReplicationTask // +kubebuilder:validation:Optional // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to ReplicationTask in dms to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of ReplicationTask in dms to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // Type of source for events. Valid values: replication-instance or replication-task // +kubebuilder:validation:Optional SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` diff --git a/apis/dms/v1beta1/zz_generated.deepcopy.go b/apis/dms/v1beta1/zz_generated.deepcopy.go index 9a90687573..7cd7b48324 100644 --- a/apis/dms/v1beta1/zz_generated.deepcopy.go +++ b/apis/dms/v1beta1/zz_generated.deepcopy.go @@ -1109,6 +1109,18 @@ func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionIn } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -1318,6 +1330,18 @@ func (in *EventSubscriptionParameters) DeepCopyInto(out *EventSubscriptionParame } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) diff --git a/apis/dms/v1beta1/zz_generated.resolvers.go b/apis/dms/v1beta1/zz_generated.resolvers.go index 7b596f1fd2..6b2fdb9d62 100644 --- a/apis/dms/v1beta1/zz_generated.resolvers.go +++ b/apis/dms/v1beta1/zz_generated.resolvers.go @@ -152,6 +152,7 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") @@ -172,6 +173,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dms.aws.upbound.io", "v1beta1", "ReplicationTask", "ReplicationTaskList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SourceIds), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.SourceIdsRefs, + Selector: mg.Spec.ForProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SourceIds") + } + mg.Spec.ForProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SourceIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -191,6 +211,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.InitProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dms.aws.upbound.io", "v1beta1", "ReplicationTask", "ReplicationTaskList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SourceIds), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.SourceIdsRefs, + Selector: mg.Spec.InitProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SourceIds") + } + mg.Spec.InitProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SourceIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/docdb/v1beta1/zz_eventsubscription_types.go b/apis/docdb/v1beta1/zz_eventsubscription_types.go index 546df8fd3d..1676f9e17f 100755 --- a/apis/docdb/v1beta1/zz_eventsubscription_types.go +++ b/apis/docdb/v1beta1/zz_eventsubscription_types.go @@ -36,9 +36,19 @@ type EventSubscriptionInitParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/docdb/v1beta1.Cluster + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Cluster in docdb to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Cluster in docdb to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-cluster, db-parameter-group, db-security-group, db-cluster-snapshot. If not set, all sources will be subscribed to. SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` @@ -115,10 +125,20 @@ type EventSubscriptionParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/docdb/v1beta1.Cluster + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Cluster in docdb to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Cluster in docdb to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-cluster, db-parameter-group, db-security-group, db-cluster-snapshot. If not set, all sources will be subscribed to. // +kubebuilder:validation:Optional SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` diff --git a/apis/docdb/v1beta1/zz_generated.deepcopy.go b/apis/docdb/v1beta1/zz_generated.deepcopy.go index 25d6efff02..73d19f8764 100644 --- a/apis/docdb/v1beta1/zz_generated.deepcopy.go +++ b/apis/docdb/v1beta1/zz_generated.deepcopy.go @@ -1794,6 +1794,18 @@ func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionIn } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -2008,6 +2020,18 @@ func (in *EventSubscriptionParameters) DeepCopyInto(out *EventSubscriptionParame } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) diff --git a/apis/docdb/v1beta1/zz_generated.resolvers.go b/apis/docdb/v1beta1/zz_generated.resolvers.go index c8aaed2b27..a6623bbd2a 100644 --- a/apis/docdb/v1beta1/zz_generated.resolvers.go +++ b/apis/docdb/v1beta1/zz_generated.resolvers.go @@ -252,6 +252,7 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") @@ -272,6 +273,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("docdb.aws.upbound.io", "v1beta1", "Cluster", "ClusterList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.SourceIdsRefs, + Selector: mg.Spec.ForProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SourceIds") + } + mg.Spec.ForProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SourceIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -291,6 +311,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.InitProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("docdb.aws.upbound.io", "v1beta1", "Cluster", "ClusterList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.SourceIdsRefs, + Selector: mg.Spec.InitProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SourceIds") + } + mg.Spec.InitProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SourceIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/ec2/v1beta1/zz_generated.deepcopy.go b/apis/ec2/v1beta1/zz_generated.deepcopy.go index 3b29c46245..e5e5d8f0f0 100644 --- a/apis/ec2/v1beta1/zz_generated.deepcopy.go +++ b/apis/ec2/v1beta1/zz_generated.deepcopy.go @@ -23369,6 +23369,18 @@ func (in *NATGatewayInitParameters_2) DeepCopyInto(out *NATGatewayInitParameters } } } + if in.SecondaryAllocationIdsRefs != nil { + in, out := &in.SecondaryAllocationIdsRefs, &out.SecondaryAllocationIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecondaryAllocationIdsSelector != nil { + in, out := &in.SecondaryAllocationIdsSelector, &out.SecondaryAllocationIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SecondaryPrivateIPAddressCount != nil { in, out := &in.SecondaryPrivateIPAddressCount, &out.SecondaryPrivateIPAddressCount *out = new(float64) @@ -23663,6 +23675,18 @@ func (in *NATGatewayParameters_2) DeepCopyInto(out *NATGatewayParameters_2) { } } } + if in.SecondaryAllocationIdsRefs != nil { + in, out := &in.SecondaryAllocationIdsRefs, &out.SecondaryAllocationIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecondaryAllocationIdsSelector != nil { + in, out := &in.SecondaryAllocationIdsSelector, &out.SecondaryAllocationIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SecondaryPrivateIPAddressCount != nil { in, out := &in.SecondaryPrivateIPAddressCount, &out.SecondaryPrivateIPAddressCount *out = new(float64) @@ -35399,6 +35423,18 @@ func (in *SecurityGroupRuleInitParameters_2) DeepCopyInto(out *SecurityGroupRule } } } + if in.CidrBlocksRefs != nil { + in, out := &in.CidrBlocksRefs, &out.CidrBlocksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CidrBlocksSelector != nil { + in, out := &in.CidrBlocksSelector, &out.CidrBlocksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) @@ -35420,6 +35456,18 @@ func (in *SecurityGroupRuleInitParameters_2) DeepCopyInto(out *SecurityGroupRule } } } + if in.IPv6CidrBlocksRefs != nil { + in, out := &in.IPv6CidrBlocksRefs, &out.IPv6CidrBlocksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPv6CidrBlocksSelector != nil { + in, out := &in.IPv6CidrBlocksSelector, &out.IPv6CidrBlocksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PrefixListIDRefs != nil { in, out := &in.PrefixListIDRefs, &out.PrefixListIDRefs *out = make([]v1.Reference, len(*in)) @@ -35711,6 +35759,18 @@ func (in *SecurityGroupRuleParameters_2) DeepCopyInto(out *SecurityGroupRulePara } } } + if in.CidrBlocksRefs != nil { + in, out := &in.CidrBlocksRefs, &out.CidrBlocksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CidrBlocksSelector != nil { + in, out := &in.CidrBlocksSelector, &out.CidrBlocksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) @@ -35732,6 +35792,18 @@ func (in *SecurityGroupRuleParameters_2) DeepCopyInto(out *SecurityGroupRulePara } } } + if in.IPv6CidrBlocksRefs != nil { + in, out := &in.IPv6CidrBlocksRefs, &out.IPv6CidrBlocksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPv6CidrBlocksSelector != nil { + in, out := &in.IPv6CidrBlocksSelector, &out.IPv6CidrBlocksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PrefixListIDRefs != nil { in, out := &in.PrefixListIDRefs, &out.PrefixListIDRefs *out = make([]v1.Reference, len(*in)) @@ -49950,6 +50022,18 @@ func (in *VPCEndpointServiceInitParameters) DeepCopyInto(out *VPCEndpointService } } } + if in.GatewayLoadBalancerArnsRefs != nil { + in, out := &in.GatewayLoadBalancerArnsRefs, &out.GatewayLoadBalancerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatewayLoadBalancerArnsSelector != nil { + in, out := &in.GatewayLoadBalancerArnsSelector, &out.GatewayLoadBalancerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.NetworkLoadBalancerArns != nil { in, out := &in.NetworkLoadBalancerArns, &out.NetworkLoadBalancerArns *out = make([]*string, len(*in)) @@ -49961,6 +50045,18 @@ func (in *VPCEndpointServiceInitParameters) DeepCopyInto(out *VPCEndpointService } } } + if in.NetworkLoadBalancerArnsRefs != nil { + in, out := &in.NetworkLoadBalancerArnsRefs, &out.NetworkLoadBalancerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkLoadBalancerArnsSelector != nil { + in, out := &in.NetworkLoadBalancerArnsSelector, &out.NetworkLoadBalancerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PrivateDNSName != nil { in, out := &in.PrivateDNSName, &out.PrivateDNSName *out = new(string) @@ -50216,6 +50312,18 @@ func (in *VPCEndpointServiceParameters) DeepCopyInto(out *VPCEndpointServicePara } } } + if in.GatewayLoadBalancerArnsRefs != nil { + in, out := &in.GatewayLoadBalancerArnsRefs, &out.GatewayLoadBalancerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatewayLoadBalancerArnsSelector != nil { + in, out := &in.GatewayLoadBalancerArnsSelector, &out.GatewayLoadBalancerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.NetworkLoadBalancerArns != nil { in, out := &in.NetworkLoadBalancerArns, &out.NetworkLoadBalancerArns *out = make([]*string, len(*in)) @@ -50227,6 +50335,18 @@ func (in *VPCEndpointServiceParameters) DeepCopyInto(out *VPCEndpointServicePara } } } + if in.NetworkLoadBalancerArnsRefs != nil { + in, out := &in.NetworkLoadBalancerArnsRefs, &out.NetworkLoadBalancerArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkLoadBalancerArnsSelector != nil { + in, out := &in.NetworkLoadBalancerArnsSelector, &out.NetworkLoadBalancerArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PrivateDNSName != nil { in, out := &in.PrivateDNSName, &out.PrivateDNSName *out = new(string) diff --git a/apis/ec2/v1beta1/zz_generated.resolvers.go b/apis/ec2/v1beta1/zz_generated.resolvers.go index 682a44307c..9fad21136b 100644 --- a/apis/ec2/v1beta1/zz_generated.resolvers.go +++ b/apis/ec2/v1beta1/zz_generated.resolvers.go @@ -2259,6 +2259,7 @@ func (mg *NATGateway) ResolveReferences(ctx context.Context, c client.Reader) er r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") @@ -2279,6 +2280,25 @@ func (mg *NATGateway) ResolveReferences(ctx context.Context, c client.Reader) er } mg.Spec.ForProvider.AllocationID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AllocationIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SecondaryAllocationIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.SecondaryAllocationIdsRefs, + Selector: mg.Spec.ForProvider.SecondaryAllocationIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SecondaryAllocationIds") + } + mg.Spec.ForProvider.SecondaryAllocationIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SecondaryAllocationIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") if err != nil { @@ -2317,6 +2337,25 @@ func (mg *NATGateway) ResolveReferences(ctx context.Context, c client.Reader) er } mg.Spec.InitProvider.AllocationID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.AllocationIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SecondaryAllocationIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.SecondaryAllocationIdsRefs, + Selector: mg.Spec.InitProvider.SecondaryAllocationIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SecondaryAllocationIds") + } + mg.Spec.InitProvider.SecondaryAllocationIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SecondaryAllocationIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") if err != nil { @@ -3761,6 +3800,44 @@ func (mg *SecurityGroupRule) ResolveReferences(ctx context.Context, c client.Rea var rsp reference.ResolutionResponse var mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.CidrBlocks), + Extract: resource.ExtractParamPath("cidr_block", false), + References: mg.Spec.ForProvider.CidrBlocksRefs, + Selector: mg.Spec.ForProvider.CidrBlocksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.CidrBlocks") + } + mg.Spec.ForProvider.CidrBlocks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.CidrBlocksRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.IPv6CidrBlocks), + Extract: resource.ExtractParamPath("ipv6_cidr_block", false), + References: mg.Spec.ForProvider.IPv6CidrBlocksRefs, + Selector: mg.Spec.ForProvider.IPv6CidrBlocksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.IPv6CidrBlocks") + } + mg.Spec.ForProvider.IPv6CidrBlocks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.IPv6CidrBlocksRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "ManagedPrefixList", "ManagedPrefixListList") if err != nil { @@ -3818,6 +3895,44 @@ func (mg *SecurityGroupRule) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SourceSecurityGroupID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SourceSecurityGroupIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.CidrBlocks), + Extract: resource.ExtractParamPath("cidr_block", false), + References: mg.Spec.InitProvider.CidrBlocksRefs, + Selector: mg.Spec.InitProvider.CidrBlocksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.CidrBlocks") + } + mg.Spec.InitProvider.CidrBlocks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.CidrBlocksRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.IPv6CidrBlocks), + Extract: resource.ExtractParamPath("ipv6_cidr_block", false), + References: mg.Spec.InitProvider.IPv6CidrBlocksRefs, + Selector: mg.Spec.InitProvider.IPv6CidrBlocksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.IPv6CidrBlocks") + } + mg.Spec.InitProvider.IPv6CidrBlocks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.IPv6CidrBlocksRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "ManagedPrefixList", "ManagedPrefixListList") if err != nil { @@ -6142,6 +6257,94 @@ func (mg *VPCEndpointSecurityGroupAssociation) ResolveReferences(ctx context.Con return nil } +// ResolveReferences of this VPCEndpointService. +func (mg *VPCEndpointService) ResolveReferences(ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList + r := reference.NewAPIResolver(c, mg) + + var mrsp reference.MultiResolutionResponse + var err error + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LB", "LBList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.GatewayLoadBalancerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.GatewayLoadBalancerArnsRefs, + Selector: mg.Spec.ForProvider.GatewayLoadBalancerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.GatewayLoadBalancerArns") + } + mg.Spec.ForProvider.GatewayLoadBalancerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.GatewayLoadBalancerArnsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LB", "LBList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.NetworkLoadBalancerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.NetworkLoadBalancerArnsRefs, + Selector: mg.Spec.ForProvider.NetworkLoadBalancerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.NetworkLoadBalancerArns") + } + mg.Spec.ForProvider.NetworkLoadBalancerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.NetworkLoadBalancerArnsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LB", "LBList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.GatewayLoadBalancerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.GatewayLoadBalancerArnsRefs, + Selector: mg.Spec.InitProvider.GatewayLoadBalancerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.GatewayLoadBalancerArns") + } + mg.Spec.InitProvider.GatewayLoadBalancerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.GatewayLoadBalancerArnsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("elbv2.aws.upbound.io", "v1beta2", "LB", "LBList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.NetworkLoadBalancerArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.NetworkLoadBalancerArnsRefs, + Selector: mg.Spec.InitProvider.NetworkLoadBalancerArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.NetworkLoadBalancerArns") + } + mg.Spec.InitProvider.NetworkLoadBalancerArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.NetworkLoadBalancerArnsRefs = mrsp.ResolvedReferences + + return nil +} + // ResolveReferences of this VPCEndpointServiceAllowedPrincipal. func (mg *VPCEndpointServiceAllowedPrincipal) ResolveReferences(ctx context.Context, c client.Reader) error { var m xpresource.Managed diff --git a/apis/ec2/v1beta1/zz_natgateway_types.go b/apis/ec2/v1beta1/zz_natgateway_types.go index d08e0cecff..2f7c838333 100755 --- a/apis/ec2/v1beta1/zz_natgateway_types.go +++ b/apis/ec2/v1beta1/zz_natgateway_types.go @@ -35,9 +35,19 @@ type NATGatewayInitParameters_2 struct { PrivateIP *string `json:"privateIp,omitempty" tf:"private_ip,omitempty"` // A list of secondary allocation EIP IDs for this NAT Gateway. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecondaryAllocationIds []*string `json:"secondaryAllocationIds,omitempty" tf:"secondary_allocation_ids,omitempty"` + // References to EIP in ec2 to populate secondaryAllocationIds. + // +kubebuilder:validation:Optional + SecondaryAllocationIdsRefs []v1.Reference `json:"secondaryAllocationIdsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate secondaryAllocationIds. + // +kubebuilder:validation:Optional + SecondaryAllocationIdsSelector *v1.Selector `json:"secondaryAllocationIdsSelector,omitempty" tf:"-"` + // [Private NAT Gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT Gateway. SecondaryPrivateIPAddressCount *float64 `json:"secondaryPrivateIpAddressCount,omitempty" tf:"secondary_private_ip_address_count,omitempty"` @@ -138,10 +148,20 @@ type NATGatewayParameters_2 struct { Region *string `json:"region" tf:"-"` // A list of secondary allocation EIP IDs for this NAT Gateway. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SecondaryAllocationIds []*string `json:"secondaryAllocationIds,omitempty" tf:"secondary_allocation_ids,omitempty"` + // References to EIP in ec2 to populate secondaryAllocationIds. + // +kubebuilder:validation:Optional + SecondaryAllocationIdsRefs []v1.Reference `json:"secondaryAllocationIdsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate secondaryAllocationIds. + // +kubebuilder:validation:Optional + SecondaryAllocationIdsSelector *v1.Selector `json:"secondaryAllocationIdsSelector,omitempty" tf:"-"` + // [Private NAT Gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT Gateway. // +kubebuilder:validation:Optional SecondaryPrivateIPAddressCount *float64 `json:"secondaryPrivateIpAddressCount,omitempty" tf:"secondary_private_ip_address_count,omitempty"` diff --git a/apis/ec2/v1beta1/zz_securitygrouprule_types.go b/apis/ec2/v1beta1/zz_securitygrouprule_types.go index 9209b8e876..f3969eceae 100755 --- a/apis/ec2/v1beta1/zz_securitygrouprule_types.go +++ b/apis/ec2/v1beta1/zz_securitygrouprule_types.go @@ -16,8 +16,18 @@ import ( type SecurityGroupRuleInitParameters_2 struct { // List of CIDR blocks. Cannot be specified with source_security_group_id or self. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.VPC + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("cidr_block",false) CidrBlocks []*string `json:"cidrBlocks,omitempty" tf:"cidr_blocks,omitempty"` + // References to VPC in ec2 to populate cidrBlocks. + // +kubebuilder:validation:Optional + CidrBlocksRefs []v1.Reference `json:"cidrBlocksRefs,omitempty" tf:"-"` + + // Selector for a list of VPC in ec2 to populate cidrBlocks. + // +kubebuilder:validation:Optional + CidrBlocksSelector *v1.Selector `json:"cidrBlocksSelector,omitempty" tf:"-"` + // Description of the rule. Description *string `json:"description,omitempty" tf:"description,omitempty"` @@ -25,8 +35,18 @@ type SecurityGroupRuleInitParameters_2 struct { FromPort *float64 `json:"fromPort,omitempty" tf:"from_port,omitempty"` // List of IPv6 CIDR blocks. Cannot be specified with source_security_group_id or self. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.VPC + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("ipv6_cidr_block",false) IPv6CidrBlocks []*string `json:"ipv6CidrBlocks,omitempty" tf:"ipv6_cidr_blocks,omitempty"` + // References to VPC in ec2 to populate ipv6CidrBlocks. + // +kubebuilder:validation:Optional + IPv6CidrBlocksRefs []v1.Reference `json:"ipv6CidrBlocksRefs,omitempty" tf:"-"` + + // Selector for a list of VPC in ec2 to populate ipv6CidrBlocks. + // +kubebuilder:validation:Optional + IPv6CidrBlocksSelector *v1.Selector `json:"ipv6CidrBlocksSelector,omitempty" tf:"-"` + // References to ManagedPrefixList in ec2 to populate prefixListIds. // +kubebuilder:validation:Optional PrefixListIDRefs []v1.Reference `json:"prefixListIdRefs,omitempty" tf:"-"` @@ -125,9 +145,19 @@ type SecurityGroupRuleObservation_2 struct { type SecurityGroupRuleParameters_2 struct { // List of CIDR blocks. Cannot be specified with source_security_group_id or self. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.VPC + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("cidr_block",false) // +kubebuilder:validation:Optional CidrBlocks []*string `json:"cidrBlocks,omitempty" tf:"cidr_blocks,omitempty"` + // References to VPC in ec2 to populate cidrBlocks. + // +kubebuilder:validation:Optional + CidrBlocksRefs []v1.Reference `json:"cidrBlocksRefs,omitempty" tf:"-"` + + // Selector for a list of VPC in ec2 to populate cidrBlocks. + // +kubebuilder:validation:Optional + CidrBlocksSelector *v1.Selector `json:"cidrBlocksSelector,omitempty" tf:"-"` + // Description of the rule. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` @@ -137,9 +167,19 @@ type SecurityGroupRuleParameters_2 struct { FromPort *float64 `json:"fromPort,omitempty" tf:"from_port,omitempty"` // List of IPv6 CIDR blocks. Cannot be specified with source_security_group_id or self. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.VPC + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("ipv6_cidr_block",false) // +kubebuilder:validation:Optional IPv6CidrBlocks []*string `json:"ipv6CidrBlocks,omitempty" tf:"ipv6_cidr_blocks,omitempty"` + // References to VPC in ec2 to populate ipv6CidrBlocks. + // +kubebuilder:validation:Optional + IPv6CidrBlocksRefs []v1.Reference `json:"ipv6CidrBlocksRefs,omitempty" tf:"-"` + + // Selector for a list of VPC in ec2 to populate ipv6CidrBlocks. + // +kubebuilder:validation:Optional + IPv6CidrBlocksSelector *v1.Selector `json:"ipv6CidrBlocksSelector,omitempty" tf:"-"` + // References to ManagedPrefixList in ec2 to populate prefixListIds. // +kubebuilder:validation:Optional PrefixListIDRefs []v1.Reference `json:"prefixListIdRefs,omitempty" tf:"-"` diff --git a/apis/ec2/v1beta1/zz_vpcendpointservice_types.go b/apis/ec2/v1beta1/zz_vpcendpointservice_types.go index 4d53b128c4..833aa08315 100755 --- a/apis/ec2/v1beta1/zz_vpcendpointservice_types.go +++ b/apis/ec2/v1beta1/zz_vpcendpointservice_types.go @@ -40,13 +40,33 @@ type VPCEndpointServiceInitParameters struct { AcceptanceRequired *bool `json:"acceptanceRequired,omitempty" tf:"acceptance_required,omitempty"` // Amazon Resource Names (ARNs) of one or more Gateway Load Balancers for the endpoint service. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LB + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set GatewayLoadBalancerArns []*string `json:"gatewayLoadBalancerArns,omitempty" tf:"gateway_load_balancer_arns,omitempty"` + // References to LB in elbv2 to populate gatewayLoadBalancerArns. + // +kubebuilder:validation:Optional + GatewayLoadBalancerArnsRefs []v1.Reference `json:"gatewayLoadBalancerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LB in elbv2 to populate gatewayLoadBalancerArns. + // +kubebuilder:validation:Optional + GatewayLoadBalancerArnsSelector *v1.Selector `json:"gatewayLoadBalancerArnsSelector,omitempty" tf:"-"` + // Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LB + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set NetworkLoadBalancerArns []*string `json:"networkLoadBalancerArns,omitempty" tf:"network_load_balancer_arns,omitempty"` + // References to LB in elbv2 to populate networkLoadBalancerArns. + // +kubebuilder:validation:Optional + NetworkLoadBalancerArnsRefs []v1.Reference `json:"networkLoadBalancerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LB in elbv2 to populate networkLoadBalancerArns. + // +kubebuilder:validation:Optional + NetworkLoadBalancerArnsSelector *v1.Selector `json:"networkLoadBalancerArnsSelector,omitempty" tf:"-"` + // The private DNS name for the service. PrivateDNSName *string `json:"privateDnsName,omitempty" tf:"private_dns_name,omitempty"` @@ -128,15 +148,35 @@ type VPCEndpointServiceParameters struct { AcceptanceRequired *bool `json:"acceptanceRequired,omitempty" tf:"acceptance_required,omitempty"` // Amazon Resource Names (ARNs) of one or more Gateway Load Balancers for the endpoint service. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LB + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set GatewayLoadBalancerArns []*string `json:"gatewayLoadBalancerArns,omitempty" tf:"gateway_load_balancer_arns,omitempty"` + // References to LB in elbv2 to populate gatewayLoadBalancerArns. + // +kubebuilder:validation:Optional + GatewayLoadBalancerArnsRefs []v1.Reference `json:"gatewayLoadBalancerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LB in elbv2 to populate gatewayLoadBalancerArns. + // +kubebuilder:validation:Optional + GatewayLoadBalancerArnsSelector *v1.Selector `json:"gatewayLoadBalancerArnsSelector,omitempty" tf:"-"` + // Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta2.LB + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set NetworkLoadBalancerArns []*string `json:"networkLoadBalancerArns,omitempty" tf:"network_load_balancer_arns,omitempty"` + // References to LB in elbv2 to populate networkLoadBalancerArns. + // +kubebuilder:validation:Optional + NetworkLoadBalancerArnsRefs []v1.Reference `json:"networkLoadBalancerArnsRefs,omitempty" tf:"-"` + + // Selector for a list of LB in elbv2 to populate networkLoadBalancerArns. + // +kubebuilder:validation:Optional + NetworkLoadBalancerArnsSelector *v1.Selector `json:"networkLoadBalancerArnsSelector,omitempty" tf:"-"` + // The private DNS name for the service. // +kubebuilder:validation:Optional PrivateDNSName *string `json:"privateDnsName,omitempty" tf:"private_dns_name,omitempty"` diff --git a/apis/elasticsearch/v1beta2/zz_domain_types.go b/apis/elasticsearch/v1beta2/zz_domain_types.go index afeba0f83e..846c914833 100755 --- a/apis/elasticsearch/v1beta2/zz_domain_types.go +++ b/apis/elasticsearch/v1beta2/zz_domain_types.go @@ -817,9 +817,19 @@ type SnapshotOptionsParameters struct { type VPCOptionsInitParameters struct { // List of VPC Security Group IDs to be applied to the Elasticsearch domain endpoints. If omitted, the default Security Group for the VPC will be used. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` + // List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in. // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` @@ -846,10 +856,20 @@ type VPCOptionsObservation struct { type VPCOptionsParameters struct { // List of VPC Security Group IDs to be applied to the Elasticsearch domain endpoints. If omitted, the default Security Group for the VPC will be used. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` + // List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in. // +kubebuilder:validation:Optional // +listType=set diff --git a/apis/elasticsearch/v1beta2/zz_generated.deepcopy.go b/apis/elasticsearch/v1beta2/zz_generated.deepcopy.go index 649af51ea1..65f0b095af 100644 --- a/apis/elasticsearch/v1beta2/zz_generated.deepcopy.go +++ b/apis/elasticsearch/v1beta2/zz_generated.deepcopy.go @@ -2249,6 +2249,18 @@ func (in *VPCOptionsInitParameters) DeepCopyInto(out *VPCOptionsInitParameters) } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -2339,6 +2351,18 @@ func (in *VPCOptionsParameters) DeepCopyInto(out *VPCOptionsParameters) { } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) diff --git a/apis/elasticsearch/v1beta2/zz_generated.resolvers.go b/apis/elasticsearch/v1beta2/zz_generated.resolvers.go index a180e97d8b..a08e3ad655 100644 --- a/apis/elasticsearch/v1beta2/zz_generated.resolvers.go +++ b/apis/elasticsearch/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *Domain) ResolveReferences(ctx context.Context, c client.Reader) error r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.LogPublishingOptions); i3++ { @@ -47,6 +48,27 @@ func (mg *Domain) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.LogPublishingOptions[i3].CloudwatchLogGroupArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.LogPublishingOptions[i3].CloudwatchLogGroupArnRef = rsp.ResolvedReference + } + if mg.Spec.ForProvider.VPCOptions != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.VPCOptions.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.VPCOptions.SecurityGroupIdsRefs, + Selector: mg.Spec.ForProvider.VPCOptions.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.VPCOptions.SecurityGroupIds") + } + mg.Spec.ForProvider.VPCOptions.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.VPCOptions.SecurityGroupIdsRefs = mrsp.ResolvedReferences + } for i3 := 0; i3 < len(mg.Spec.InitProvider.LogPublishingOptions); i3++ { { @@ -68,6 +90,27 @@ func (mg *Domain) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.LogPublishingOptions[i3].CloudwatchLogGroupArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.LogPublishingOptions[i3].CloudwatchLogGroupArnRef = rsp.ResolvedReference + } + if mg.Spec.InitProvider.VPCOptions != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.VPCOptions.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.VPCOptions.SecurityGroupIdsRefs, + Selector: mg.Spec.InitProvider.VPCOptions.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.VPCOptions.SecurityGroupIds") + } + mg.Spec.InitProvider.VPCOptions.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.VPCOptions.SecurityGroupIdsRefs = mrsp.ResolvedReferences + } return nil diff --git a/apis/elb/v1beta1/zz_backendserverpolicy_types.go b/apis/elb/v1beta1/zz_backendserverpolicy_types.go index 0f47783885..535964d943 100755 --- a/apis/elb/v1beta1/zz_backendserverpolicy_types.go +++ b/apis/elb/v1beta1/zz_backendserverpolicy_types.go @@ -31,8 +31,18 @@ type BackendServerPolicyInitParameters struct { LoadBalancerNameSelector *v1.Selector `json:"loadBalancerNameSelector,omitempty" tf:"-"` // List of Policy Names to apply to the backend server. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elb/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("policy_name",false) // +listType=set PolicyNames []*string `json:"policyNames,omitempty" tf:"policy_names,omitempty"` + + // References to Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesRefs []v1.Reference `json:"policyNamesRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesSelector *v1.Selector `json:"policyNamesSelector,omitempty" tf:"-"` } type BackendServerPolicyObservation struct { @@ -71,10 +81,20 @@ type BackendServerPolicyParameters struct { LoadBalancerNameSelector *v1.Selector `json:"loadBalancerNameSelector,omitempty" tf:"-"` // List of Policy Names to apply to the backend server. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elb/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("policy_name",false) // +kubebuilder:validation:Optional // +listType=set PolicyNames []*string `json:"policyNames,omitempty" tf:"policy_names,omitempty"` + // References to Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesRefs []v1.Reference `json:"policyNamesRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesSelector *v1.Selector `json:"policyNamesSelector,omitempty" tf:"-"` + // Region is the region you'd like your resource to be created in. // +upjet:crd:field:TFTag=- // +kubebuilder:validation:Required diff --git a/apis/elb/v1beta1/zz_generated.deepcopy.go b/apis/elb/v1beta1/zz_generated.deepcopy.go index 640bbe3880..8e4d0290e7 100644 --- a/apis/elb/v1beta1/zz_generated.deepcopy.go +++ b/apis/elb/v1beta1/zz_generated.deepcopy.go @@ -667,6 +667,18 @@ func (in *BackendServerPolicyInitParameters) DeepCopyInto(out *BackendServerPoli } } } + if in.PolicyNamesRefs != nil { + in, out := &in.PolicyNamesRefs, &out.PolicyNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicyNamesSelector != nil { + in, out := &in.PolicyNamesSelector, &out.PolicyNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServerPolicyInitParameters. @@ -786,6 +798,18 @@ func (in *BackendServerPolicyParameters) DeepCopyInto(out *BackendServerPolicyPa } } } + if in.PolicyNamesRefs != nil { + in, out := &in.PolicyNamesRefs, &out.PolicyNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicyNamesSelector != nil { + in, out := &in.PolicyNamesSelector, &out.PolicyNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Region != nil { in, out := &in.Region, &out.Region *out = new(string) @@ -2232,6 +2256,18 @@ func (in *ListenerPolicyInitParameters) DeepCopyInto(out *ListenerPolicyInitPara } } } + if in.PolicyNamesRefs != nil { + in, out := &in.PolicyNamesRefs, &out.PolicyNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicyNamesSelector != nil { + in, out := &in.PolicyNamesSelector, &out.PolicyNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Triggers != nil { in, out := &in.Triggers, &out.Triggers *out = make(map[string]*string, len(*in)) @@ -2383,6 +2419,18 @@ func (in *ListenerPolicyParameters) DeepCopyInto(out *ListenerPolicyParameters) } } } + if in.PolicyNamesRefs != nil { + in, out := &in.PolicyNamesRefs, &out.PolicyNamesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicyNamesSelector != nil { + in, out := &in.PolicyNamesSelector, &out.PolicyNamesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Region != nil { in, out := &in.Region, &out.Region *out = new(string) diff --git a/apis/elb/v1beta1/zz_generated.resolvers.go b/apis/elb/v1beta1/zz_generated.resolvers.go index 53a2721562..0b2b6269e8 100644 --- a/apis/elb/v1beta1/zz_generated.resolvers.go +++ b/apis/elb/v1beta1/zz_generated.resolvers.go @@ -143,6 +143,7 @@ func (mg *BackendServerPolicy) ResolveReferences(ctx context.Context, c client.R r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta2", "ELB", "ELBList") @@ -163,6 +164,25 @@ func (mg *BackendServerPolicy) ResolveReferences(ctx context.Context, c client.R } mg.Spec.ForProvider.LoadBalancerName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.LoadBalancerNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.PolicyNames), + Extract: resource.ExtractParamPath("policy_name", false), + References: mg.Spec.ForProvider.PolicyNamesRefs, + Selector: mg.Spec.ForProvider.PolicyNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.PolicyNames") + } + mg.Spec.ForProvider.PolicyNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.PolicyNamesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta2", "ELB", "ELBList") if err != nil { @@ -182,6 +202,25 @@ func (mg *BackendServerPolicy) ResolveReferences(ctx context.Context, c client.R } mg.Spec.InitProvider.LoadBalancerName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.LoadBalancerNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.PolicyNames), + Extract: resource.ExtractParamPath("policy_name", false), + References: mg.Spec.InitProvider.PolicyNamesRefs, + Selector: mg.Spec.InitProvider.PolicyNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.PolicyNames") + } + mg.Spec.InitProvider.PolicyNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.PolicyNamesRefs = mrsp.ResolvedReferences return nil } @@ -381,6 +420,7 @@ func (mg *ListenerPolicy) ResolveReferences(ctx context.Context, c client.Reader r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta2", "ELB", "ELBList") @@ -401,6 +441,25 @@ func (mg *ListenerPolicy) ResolveReferences(ctx context.Context, c client.Reader } mg.Spec.ForProvider.LoadBalancerName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.LoadBalancerNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.PolicyNames), + Extract: resource.ExtractParamPath("policy_name", false), + References: mg.Spec.ForProvider.PolicyNamesRefs, + Selector: mg.Spec.ForProvider.PolicyNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.PolicyNames") + } + mg.Spec.ForProvider.PolicyNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.PolicyNamesRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta2", "ELB", "ELBList") if err != nil { @@ -420,6 +479,25 @@ func (mg *ListenerPolicy) ResolveReferences(ctx context.Context, c client.Reader } mg.Spec.InitProvider.LoadBalancerName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.LoadBalancerNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("elb.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.PolicyNames), + Extract: resource.ExtractParamPath("policy_name", false), + References: mg.Spec.InitProvider.PolicyNamesRefs, + Selector: mg.Spec.InitProvider.PolicyNamesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.PolicyNames") + } + mg.Spec.InitProvider.PolicyNames = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.PolicyNamesRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/elb/v1beta1/zz_listenerpolicy_types.go b/apis/elb/v1beta1/zz_listenerpolicy_types.go index 442797d9af..4534c96ffb 100755 --- a/apis/elb/v1beta1/zz_listenerpolicy_types.go +++ b/apis/elb/v1beta1/zz_listenerpolicy_types.go @@ -31,9 +31,19 @@ type ListenerPolicyInitParameters struct { LoadBalancerPort *float64 `json:"loadBalancerPort,omitempty" tf:"load_balancer_port,omitempty"` // List of Policy Names to apply to the backend server. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elb/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("policy_name",false) // +listType=set PolicyNames []*string `json:"policyNames,omitempty" tf:"policy_names,omitempty"` + // References to Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesRefs []v1.Reference `json:"policyNamesRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesSelector *v1.Selector `json:"policyNamesSelector,omitempty" tf:"-"` + // Map of arbitrary keys and values that, when changed, will trigger an update. // +mapType=granular Triggers map[string]*string `json:"triggers,omitempty" tf:"triggers,omitempty"` @@ -79,10 +89,20 @@ type ListenerPolicyParameters struct { LoadBalancerPort *float64 `json:"loadBalancerPort,omitempty" tf:"load_balancer_port,omitempty"` // List of Policy Names to apply to the backend server. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elb/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("policy_name",false) // +kubebuilder:validation:Optional // +listType=set PolicyNames []*string `json:"policyNames,omitempty" tf:"policy_names,omitempty"` + // References to Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesRefs []v1.Reference `json:"policyNamesRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in elb to populate policyNames. + // +kubebuilder:validation:Optional + PolicyNamesSelector *v1.Selector `json:"policyNamesSelector,omitempty" tf:"-"` + // Region is the region you'd like your resource to be created in. // +upjet:crd:field:TFTag=- // +kubebuilder:validation:Required diff --git a/apis/firehose/v1beta2/zz_deliverystream_types.go b/apis/firehose/v1beta2/zz_deliverystream_types.go index 4d6ff8491d..cfe2fa8341 100755 --- a/apis/firehose/v1beta2/zz_deliverystream_types.go +++ b/apis/firehose/v1beta2/zz_deliverystream_types.go @@ -2527,12 +2527,32 @@ type OpensearchConfigurationVPCConfigInitParameters struct { RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"` // A list of security group IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` + // A list of subnet IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } type OpensearchConfigurationVPCConfigObservation struct { @@ -2568,14 +2588,34 @@ type OpensearchConfigurationVPCConfigParameters struct { RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"` // A list of security group IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"` + SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` // A list of subnet IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"` + SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } type OpensearchserverlessConfigurationCloudwatchLoggingOptionsInitParameters struct { @@ -5838,12 +5878,32 @@ type VPCConfigInitParameters struct { RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"` // A list of security group IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` + // A list of subnet IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } type VPCConfigObservation struct { @@ -5879,14 +5939,34 @@ type VPCConfigParameters struct { RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"` // A list of security group IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"` + SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` // A list of subnet IDs to associate with Kinesis Firehose. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"` + SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } // DeliveryStreamSpec defines the desired state of DeliveryStream diff --git a/apis/firehose/v1beta2/zz_generated.deepcopy.go b/apis/firehose/v1beta2/zz_generated.deepcopy.go index 9df32b0e30..3054a67626 100644 --- a/apis/firehose/v1beta2/zz_generated.deepcopy.go +++ b/apis/firehose/v1beta2/zz_generated.deepcopy.go @@ -5057,6 +5057,18 @@ func (in *OpensearchConfigurationVPCConfigInitParameters) DeepCopyInto(out *Open } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -5068,6 +5080,18 @@ func (in *OpensearchConfigurationVPCConfigInitParameters) DeepCopyInto(out *Open } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationVPCConfigInitParameters. @@ -5156,6 +5180,18 @@ func (in *OpensearchConfigurationVPCConfigParameters) DeepCopyInto(out *Opensear } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -5167,6 +5203,18 @@ func (in *OpensearchConfigurationVPCConfigParameters) DeepCopyInto(out *Opensear } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchConfigurationVPCConfigParameters. @@ -11674,6 +11722,18 @@ func (in *VPCConfigInitParameters) DeepCopyInto(out *VPCConfigInitParameters) { } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -11685,6 +11745,18 @@ func (in *VPCConfigInitParameters) DeepCopyInto(out *VPCConfigInitParameters) { } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigInitParameters. @@ -11773,6 +11845,18 @@ func (in *VPCConfigParameters) DeepCopyInto(out *VPCConfigParameters) { } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -11784,6 +11868,18 @@ func (in *VPCConfigParameters) DeepCopyInto(out *VPCConfigParameters) { } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigParameters. diff --git a/apis/firehose/v1beta2/zz_generated.resolvers.go b/apis/firehose/v1beta2/zz_generated.resolvers.go index b80002ace0..cf62afd5cb 100644 --- a/apis/firehose/v1beta2/zz_generated.resolvers.go +++ b/apis/firehose/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *DeliveryStream) ResolveReferences( // ResolveReferences of this Delive r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error if mg.Spec.ForProvider.ElasticsearchConfiguration != nil { @@ -138,6 +139,52 @@ func (mg *DeliveryStream) ResolveReferences( // ResolveReferences of this Delive } } + if mg.Spec.ForProvider.ElasticsearchConfiguration != nil { + if mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsRefs, + Selector: mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds") + } + mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.ForProvider.ElasticsearchConfiguration != nil { + if mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsRefs, + Selector: mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds") + } + mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.ForProvider.ExtendedS3Configuration != nil { { m, l, err = apisresolver.GetManagedResource("s3.aws.upbound.io", "v1beta2", "Bucket", "BucketList") @@ -521,6 +568,52 @@ func (mg *DeliveryStream) ResolveReferences( // ResolveReferences of this Delive } } + if mg.Spec.ForProvider.OpensearchConfiguration != nil { + if mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsRefs, + Selector: mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds") + } + mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.ForProvider.OpensearchConfiguration != nil { + if mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIdsRefs, + Selector: mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIds") + } + mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.OpensearchConfiguration.VPCConfig.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.ForProvider.OpensearchserverlessConfiguration != nil { { m, l, err = apisresolver.GetManagedResource("opensearchserverless.aws.upbound.io", "v1beta1", "Collection", "CollectionList") @@ -946,6 +1039,52 @@ func (mg *DeliveryStream) ResolveReferences( // ResolveReferences of this Delive } } + if mg.Spec.InitProvider.ElasticsearchConfiguration != nil { + if mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsRefs, + Selector: mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds") + } + mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.InitProvider.ElasticsearchConfiguration != nil { + if mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsRefs, + Selector: mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds") + } + mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ElasticsearchConfiguration.VPCConfig.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.InitProvider.ExtendedS3Configuration != nil { { m, l, err = apisresolver.GetManagedResource("s3.aws.upbound.io", "v1beta2", "Bucket", "BucketList") @@ -1329,6 +1468,52 @@ func (mg *DeliveryStream) ResolveReferences( // ResolveReferences of this Delive } } + if mg.Spec.InitProvider.OpensearchConfiguration != nil { + if mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsRefs, + Selector: mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds") + } + mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.InitProvider.OpensearchConfiguration != nil { + if mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIdsRefs, + Selector: mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIds") + } + mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.OpensearchConfiguration.VPCConfig.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.InitProvider.OpensearchserverlessConfiguration != nil { { m, l, err = apisresolver.GetManagedResource("opensearchserverless.aws.upbound.io", "v1beta1", "Collection", "CollectionList") diff --git a/apis/gamelift/v1beta1/zz_gamesessionqueue_types.go b/apis/gamelift/v1beta1/zz_gamesessionqueue_types.go index 470394ce36..77b8d79906 100755 --- a/apis/gamelift/v1beta1/zz_gamesessionqueue_types.go +++ b/apis/gamelift/v1beta1/zz_gamesessionqueue_types.go @@ -19,8 +19,18 @@ type GameSessionQueueInitParameters struct { CustomEventData *string `json:"customEventData,omitempty" tf:"custom_event_data,omitempty"` // List of fleet/alias ARNs used by session queue for placing game sessions. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/gamelift/v1beta2.Fleet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` + // References to Fleet in gamelift to populate destinations. + // +kubebuilder:validation:Optional + DestinationsRefs []v1.Reference `json:"destinationsRefs,omitempty" tf:"-"` + + // Selector for a list of Fleet in gamelift to populate destinations. + // +kubebuilder:validation:Optional + DestinationsSelector *v1.Selector `json:"destinationsSelector,omitempty" tf:"-"` + // An SNS topic ARN that is set up to receive game session placement notifications. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/sns/v1beta1.Topic // +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor() @@ -83,9 +93,19 @@ type GameSessionQueueParameters struct { CustomEventData *string `json:"customEventData,omitempty" tf:"custom_event_data,omitempty"` // List of fleet/alias ARNs used by session queue for placing game sessions. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/gamelift/v1beta2.Fleet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` + // References to Fleet in gamelift to populate destinations. + // +kubebuilder:validation:Optional + DestinationsRefs []v1.Reference `json:"destinationsRefs,omitempty" tf:"-"` + + // Selector for a list of Fleet in gamelift to populate destinations. + // +kubebuilder:validation:Optional + DestinationsSelector *v1.Selector `json:"destinationsSelector,omitempty" tf:"-"` + // An SNS topic ARN that is set up to receive game session placement notifications. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/sns/v1beta1.Topic // +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor() diff --git a/apis/gamelift/v1beta1/zz_generated.deepcopy.go b/apis/gamelift/v1beta1/zz_generated.deepcopy.go index dd4db67c71..bf433b9a3c 100644 --- a/apis/gamelift/v1beta1/zz_generated.deepcopy.go +++ b/apis/gamelift/v1beta1/zz_generated.deepcopy.go @@ -1298,6 +1298,18 @@ func (in *GameSessionQueueInitParameters) DeepCopyInto(out *GameSessionQueueInit } } } + if in.DestinationsRefs != nil { + in, out := &in.DestinationsRefs, &out.DestinationsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DestinationsSelector != nil { + in, out := &in.DestinationsSelector, &out.DestinationsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.NotificationTarget != nil { in, out := &in.NotificationTarget, &out.NotificationTarget *out = new(string) @@ -1494,6 +1506,18 @@ func (in *GameSessionQueueParameters) DeepCopyInto(out *GameSessionQueueParamete } } } + if in.DestinationsRefs != nil { + in, out := &in.DestinationsRefs, &out.DestinationsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DestinationsSelector != nil { + in, out := &in.DestinationsSelector, &out.DestinationsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.NotificationTarget != nil { in, out := &in.NotificationTarget, &out.NotificationTarget *out = new(string) diff --git a/apis/gamelift/v1beta1/zz_generated.resolvers.go b/apis/gamelift/v1beta1/zz_generated.resolvers.go index b3b10e3d63..2f1f9078ef 100644 --- a/apis/gamelift/v1beta1/zz_generated.resolvers.go +++ b/apis/gamelift/v1beta1/zz_generated.resolvers.go @@ -253,7 +253,27 @@ func (mg *GameSessionQueue) ResolveReferences(ctx context.Context, c client.Read r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("gamelift.aws.upbound.io", "v1beta2", "Fleet", "FleetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Destinations), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.DestinationsRefs, + Selector: mg.Spec.ForProvider.DestinationsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Destinations") + } + mg.Spec.ForProvider.Destinations = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.DestinationsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -273,6 +293,25 @@ func (mg *GameSessionQueue) ResolveReferences(ctx context.Context, c client.Read } mg.Spec.ForProvider.NotificationTarget = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NotificationTargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("gamelift.aws.upbound.io", "v1beta2", "Fleet", "FleetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Destinations), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.DestinationsRefs, + Selector: mg.Spec.InitProvider.DestinationsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Destinations") + } + mg.Spec.InitProvider.Destinations = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.DestinationsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { diff --git a/apis/glue/v1beta2/zz_connection_types.go b/apis/glue/v1beta2/zz_connection_types.go index 1f139db5a8..969a3e2dd0 100755 --- a/apis/glue/v1beta2/zz_connection_types.go +++ b/apis/glue/v1beta2/zz_connection_types.go @@ -118,9 +118,19 @@ type PhysicalConnectionRequirementsInitParameters struct { AvailabilityZoneSelector *v1.Selector `json:"availabilityZoneSelector,omitempty" tf:"-"` // The security group ID list used by the connection. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecurityGroupIDList []*string `json:"securityGroupIdList,omitempty" tf:"security_group_id_list,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIdList. + // +kubebuilder:validation:Optional + SecurityGroupIDListRefs []v1.Reference `json:"securityGroupIdListRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIdList. + // +kubebuilder:validation:Optional + SecurityGroupIDListSelector *v1.Selector `json:"securityGroupIdListSelector,omitempty" tf:"-"` + // The subnet ID used by the connection. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() @@ -165,10 +175,20 @@ type PhysicalConnectionRequirementsParameters struct { AvailabilityZoneSelector *v1.Selector `json:"availabilityZoneSelector,omitempty" tf:"-"` // The security group ID list used by the connection. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SecurityGroupIDList []*string `json:"securityGroupIdList,omitempty" tf:"security_group_id_list,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIdList. + // +kubebuilder:validation:Optional + SecurityGroupIDListRefs []v1.Reference `json:"securityGroupIdListRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIdList. + // +kubebuilder:validation:Optional + SecurityGroupIDListSelector *v1.Selector `json:"securityGroupIdListSelector,omitempty" tf:"-"` + // The subnet ID used by the connection. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() diff --git a/apis/glue/v1beta2/zz_crawler_types.go b/apis/glue/v1beta2/zz_crawler_types.go index 4f2734fb12..5194d53730 100755 --- a/apis/glue/v1beta2/zz_crawler_types.go +++ b/apis/glue/v1beta2/zz_crawler_types.go @@ -37,7 +37,16 @@ type CatalogTargetInitParameters struct { EventQueueArn *string `json:"eventQueueArn,omitempty" tf:"event_queue_arn,omitempty"` // A list of catalog tables to be synchronized. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/glue/v1beta2.CatalogTable Tables []*string `json:"tables,omitempty" tf:"tables,omitempty"` + + // References to CatalogTable in glue to populate tables. + // +kubebuilder:validation:Optional + TablesRefs []v1.Reference `json:"tablesRefs,omitempty" tf:"-"` + + // Selector for a list of CatalogTable in glue to populate tables. + // +kubebuilder:validation:Optional + TablesSelector *v1.Selector `json:"tablesSelector,omitempty" tf:"-"` } type CatalogTargetObservation struct { @@ -86,8 +95,17 @@ type CatalogTargetParameters struct { EventQueueArn *string `json:"eventQueueArn,omitempty" tf:"event_queue_arn,omitempty"` // A list of catalog tables to be synchronized. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/glue/v1beta2.CatalogTable + // +kubebuilder:validation:Optional + Tables []*string `json:"tables,omitempty" tf:"tables,omitempty"` + + // References to CatalogTable in glue to populate tables. + // +kubebuilder:validation:Optional + TablesRefs []v1.Reference `json:"tablesRefs,omitempty" tf:"-"` + + // Selector for a list of CatalogTable in glue to populate tables. // +kubebuilder:validation:Optional - Tables []*string `json:"tables" tf:"tables,omitempty"` + TablesSelector *v1.Selector `json:"tablesSelector,omitempty" tf:"-"` } type CrawlerInitParameters struct { diff --git a/apis/glue/v1beta2/zz_generated.deepcopy.go b/apis/glue/v1beta2/zz_generated.deepcopy.go index 5e00fecb1d..d0bad4dc9f 100644 --- a/apis/glue/v1beta2/zz_generated.deepcopy.go +++ b/apis/glue/v1beta2/zz_generated.deepcopy.go @@ -1091,6 +1091,18 @@ func (in *CatalogTargetInitParameters) DeepCopyInto(out *CatalogTargetInitParame } } } + if in.TablesRefs != nil { + in, out := &in.TablesRefs, &out.TablesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TablesSelector != nil { + in, out := &in.TablesSelector, &out.TablesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogTargetInitParameters. @@ -1193,6 +1205,18 @@ func (in *CatalogTargetParameters) DeepCopyInto(out *CatalogTargetParameters) { } } } + if in.TablesRefs != nil { + in, out := &in.TablesRefs, &out.TablesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TablesSelector != nil { + in, out := &in.TablesSelector, &out.TablesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogTargetParameters. @@ -6081,6 +6105,18 @@ func (in *PhysicalConnectionRequirementsInitParameters) DeepCopyInto(out *Physic } } } + if in.SecurityGroupIDListRefs != nil { + in, out := &in.SecurityGroupIDListRefs, &out.SecurityGroupIDListRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIDListSelector != nil { + in, out := &in.SecurityGroupIDListSelector, &out.SecurityGroupIDListSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetID != nil { in, out := &in.SubnetID, &out.SubnetID *out = new(string) @@ -6173,6 +6209,18 @@ func (in *PhysicalConnectionRequirementsParameters) DeepCopyInto(out *PhysicalCo } } } + if in.SecurityGroupIDListRefs != nil { + in, out := &in.SecurityGroupIDListRefs, &out.SecurityGroupIDListRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIDListSelector != nil { + in, out := &in.SecurityGroupIDListSelector, &out.SecurityGroupIDListSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetID != nil { in, out := &in.SubnetID, &out.SubnetID *out = new(string) diff --git a/apis/glue/v1beta2/zz_generated.resolvers.go b/apis/glue/v1beta2/zz_generated.resolvers.go index f575078228..3616a137cc 100644 --- a/apis/glue/v1beta2/zz_generated.resolvers.go +++ b/apis/glue/v1beta2/zz_generated.resolvers.go @@ -56,6 +56,7 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error if mg.Spec.ForProvider.PhysicalConnectionRequirements != nil { @@ -78,6 +79,27 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er mg.Spec.ForProvider.PhysicalConnectionRequirements.AvailabilityZone = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PhysicalConnectionRequirements.AvailabilityZoneRef = rsp.ResolvedReference + } + if mg.Spec.ForProvider.PhysicalConnectionRequirements != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDList), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDListRefs, + Selector: mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDListSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDList") + } + mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDList = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.PhysicalConnectionRequirements.SecurityGroupIDListRefs = mrsp.ResolvedReferences + } if mg.Spec.ForProvider.PhysicalConnectionRequirements != nil { { @@ -120,6 +142,27 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er mg.Spec.InitProvider.PhysicalConnectionRequirements.AvailabilityZone = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.PhysicalConnectionRequirements.AvailabilityZoneRef = rsp.ResolvedReference + } + if mg.Spec.InitProvider.PhysicalConnectionRequirements != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDList), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDListRefs, + Selector: mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDListSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDList") + } + mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDList = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.PhysicalConnectionRequirements.SecurityGroupIDListRefs = mrsp.ResolvedReferences + } if mg.Spec.InitProvider.PhysicalConnectionRequirements != nil { { @@ -153,6 +196,7 @@ func (mg *Crawler) ResolveReferences(ctx context.Context, c client.Reader) error r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.CatalogTarget); i3++ { @@ -175,6 +219,27 @@ func (mg *Crawler) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.CatalogTarget[i3].DatabaseName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CatalogTarget[i3].DatabaseNameRef = rsp.ResolvedReference + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.CatalogTarget); i3++ { + { + m, l, err = apisresolver.GetManagedResource("glue.aws.upbound.io", "v1beta2", "CatalogTable", "CatalogTableList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.CatalogTarget[i3].Tables), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.CatalogTarget[i3].TablesRefs, + Selector: mg.Spec.ForProvider.CatalogTarget[i3].TablesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.CatalogTarget[i3].Tables") + } + mg.Spec.ForProvider.CatalogTarget[i3].Tables = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.CatalogTarget[i3].TablesRefs = mrsp.ResolvedReferences + } { m, l, err = apisresolver.GetManagedResource("glue.aws.upbound.io", "v1beta2", "CatalogDatabase", "CatalogDatabaseList") @@ -276,6 +341,27 @@ func (mg *Crawler) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.CatalogTarget[i3].DatabaseName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.CatalogTarget[i3].DatabaseNameRef = rsp.ResolvedReference + } + for i3 := 0; i3 < len(mg.Spec.InitProvider.CatalogTarget); i3++ { + { + m, l, err = apisresolver.GetManagedResource("glue.aws.upbound.io", "v1beta2", "CatalogTable", "CatalogTableList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.CatalogTarget[i3].Tables), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.CatalogTarget[i3].TablesRefs, + Selector: mg.Spec.InitProvider.CatalogTarget[i3].TablesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.CatalogTarget[i3].Tables") + } + mg.Spec.InitProvider.CatalogTarget[i3].Tables = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.CatalogTarget[i3].TablesRefs = mrsp.ResolvedReferences + } { m, l, err = apisresolver.GetManagedResource("glue.aws.upbound.io", "v1beta2", "CatalogDatabase", "CatalogDatabaseList") diff --git a/apis/iam/v1beta1/zz_generated.deepcopy.go b/apis/iam/v1beta1/zz_generated.deepcopy.go index 0664e1e101..d6206b77c2 100644 --- a/apis/iam/v1beta1/zz_generated.deepcopy.go +++ b/apis/iam/v1beta1/zz_generated.deepcopy.go @@ -2277,6 +2277,18 @@ func (in *RoleInitParameters) DeepCopyInto(out *RoleInitParameters) { } } } + if in.ManagedPolicyArnsRefs != nil { + in, out := &in.ManagedPolicyArnsRefs, &out.ManagedPolicyArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedPolicyArnsSelector != nil { + in, out := &in.ManagedPolicyArnsSelector, &out.ManagedPolicyArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.MaxSessionDuration != nil { in, out := &in.MaxSessionDuration, &out.MaxSessionDuration *out = new(float64) @@ -2503,6 +2515,18 @@ func (in *RoleParameters) DeepCopyInto(out *RoleParameters) { } } } + if in.ManagedPolicyArnsRefs != nil { + in, out := &in.ManagedPolicyArnsRefs, &out.ManagedPolicyArnsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedPolicyArnsSelector != nil { + in, out := &in.ManagedPolicyArnsSelector, &out.ManagedPolicyArnsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.MaxSessionDuration != nil { in, out := &in.MaxSessionDuration, &out.MaxSessionDuration *out = new(float64) diff --git a/apis/iam/v1beta1/zz_generated.resolvers.go b/apis/iam/v1beta1/zz_generated.resolvers.go index 97807d3c3f..075fdac76b 100644 --- a/apis/iam/v1beta1/zz_generated.resolvers.go +++ b/apis/iam/v1beta1/zz_generated.resolvers.go @@ -294,6 +294,56 @@ func (mg *InstanceProfile) ResolveReferences(ctx context.Context, c client.Reade return nil } +// ResolveReferences of this Role. +func (mg *Role) ResolveReferences(ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList + r := reference.NewAPIResolver(c, mg) + + var mrsp reference.MultiResolutionResponse + var err error + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ManagedPolicyArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.ManagedPolicyArnsRefs, + Selector: mg.Spec.ForProvider.ManagedPolicyArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ManagedPolicyArns") + } + mg.Spec.ForProvider.ManagedPolicyArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ManagedPolicyArnsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Policy", "PolicyList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ManagedPolicyArns), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.ManagedPolicyArnsRefs, + Selector: mg.Spec.InitProvider.ManagedPolicyArnsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ManagedPolicyArns") + } + mg.Spec.InitProvider.ManagedPolicyArns = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ManagedPolicyArnsRefs = mrsp.ResolvedReferences + + return nil +} + // ResolveReferences of this RolePolicy. func (mg *RolePolicy) ResolveReferences(ctx context.Context, c client.Reader) error { var m xpresource.Managed diff --git a/apis/iam/v1beta1/zz_role_types.go b/apis/iam/v1beta1/zz_role_types.go index 27611ccd5f..5a865cf2bf 100755 --- a/apis/iam/v1beta1/zz_role_types.go +++ b/apis/iam/v1beta1/zz_role_types.go @@ -57,9 +57,19 @@ type RoleInitParameters struct { InlinePolicy []InlinePolicyInitParameters `json:"inlinePolicy,omitempty" tf:"inline_policy,omitempty"` // Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Crossplane will ignore policy attachments to this resource. When configured, Crossplane will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e., managed_policy_arns = []) will cause Crossplane to remove all managed policy attachments. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set ManagedPolicyArns []*string `json:"managedPolicyArns,omitempty" tf:"managed_policy_arns,omitempty"` + // References to Policy in iam to populate managedPolicyArns. + // +kubebuilder:validation:Optional + ManagedPolicyArnsRefs []v1.Reference `json:"managedPolicyArnsRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in iam to populate managedPolicyArns. + // +kubebuilder:validation:Optional + ManagedPolicyArnsSelector *v1.Selector `json:"managedPolicyArnsSelector,omitempty" tf:"-"` + // Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. MaxSessionDuration *float64 `json:"maxSessionDuration,omitempty" tf:"max_session_duration,omitempty"` @@ -141,10 +151,20 @@ type RoleParameters struct { InlinePolicy []InlinePolicyParameters `json:"inlinePolicy,omitempty" tf:"inline_policy,omitempty"` // Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Crossplane will ignore policy attachments to this resource. When configured, Crossplane will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e., managed_policy_arns = []) will cause Crossplane to remove all managed policy attachments. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Policy + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set ManagedPolicyArns []*string `json:"managedPolicyArns,omitempty" tf:"managed_policy_arns,omitempty"` + // References to Policy in iam to populate managedPolicyArns. + // +kubebuilder:validation:Optional + ManagedPolicyArnsRefs []v1.Reference `json:"managedPolicyArnsRefs,omitempty" tf:"-"` + + // Selector for a list of Policy in iam to populate managedPolicyArns. + // +kubebuilder:validation:Optional + ManagedPolicyArnsSelector *v1.Selector `json:"managedPolicyArnsSelector,omitempty" tf:"-"` + // Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. // +kubebuilder:validation:Optional MaxSessionDuration *float64 `json:"maxSessionDuration,omitempty" tf:"max_session_duration,omitempty"` diff --git a/apis/kinesisanalyticsv2/v1beta2/zz_application_types.go b/apis/kinesisanalyticsv2/v1beta2/zz_application_types.go index 4b3ae57c55..0d3353cb78 100755 --- a/apis/kinesisanalyticsv2/v1beta2/zz_application_types.go +++ b/apis/kinesisanalyticsv2/v1beta2/zz_application_types.go @@ -1642,12 +1642,32 @@ type SQLApplicationConfigurationParameters struct { type VPCConfigurationInitParameters struct { // The Security Group IDs used by the VPC configuration. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` + // The Subnet IDs used by the VPC configuration. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } type VPCConfigurationObservation struct { @@ -1670,14 +1690,34 @@ type VPCConfigurationObservation struct { type VPCConfigurationParameters struct { // The Security Group IDs used by the VPC configuration. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds" tf:"security_group_ids,omitempty"` + SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` + + // References to SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of SecurityGroup in ec2 to populate securityGroupIds. + // +kubebuilder:validation:Optional + SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` // The Subnet IDs used by the VPC configuration. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set - SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"` + SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` } // ApplicationSpec defines the desired state of Application diff --git a/apis/kinesisanalyticsv2/v1beta2/zz_generated.deepcopy.go b/apis/kinesisanalyticsv2/v1beta2/zz_generated.deepcopy.go index 49ac14dca9..476dca99fb 100644 --- a/apis/kinesisanalyticsv2/v1beta2/zz_generated.deepcopy.go +++ b/apis/kinesisanalyticsv2/v1beta2/zz_generated.deepcopy.go @@ -3939,6 +3939,18 @@ func (in *VPCConfigurationInitParameters) DeepCopyInto(out *VPCConfigurationInit } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -3950,6 +3962,18 @@ func (in *VPCConfigurationInitParameters) DeepCopyInto(out *VPCConfigurationInit } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigurationInitParameters. @@ -4023,6 +4047,18 @@ func (in *VPCConfigurationParameters) DeepCopyInto(out *VPCConfigurationParamete } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SubnetIds != nil { in, out := &in.SubnetIds, &out.SubnetIds *out = make([]*string, len(*in)) @@ -4034,6 +4070,18 @@ func (in *VPCConfigurationParameters) DeepCopyInto(out *VPCConfigurationParamete } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCConfigurationParameters. diff --git a/apis/kinesisanalyticsv2/v1beta2/zz_generated.resolvers.go b/apis/kinesisanalyticsv2/v1beta2/zz_generated.resolvers.go index 042dc83d14..9ab35a5351 100644 --- a/apis/kinesisanalyticsv2/v1beta2/zz_generated.resolvers.go +++ b/apis/kinesisanalyticsv2/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *Application) ResolveReferences( // ResolveReferences of this Applicati r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error if mg.Spec.ForProvider.ApplicationConfiguration != nil { @@ -189,6 +190,52 @@ func (mg *Application) ResolveReferences( // ResolveReferences of this Applicati } } } + if mg.Spec.ForProvider.ApplicationConfiguration != nil { + if mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsRefs, + Selector: mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds") + } + mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.ForProvider.ApplicationConfiguration != nil { + if mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsRefs, + Selector: mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds") + } + mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.ForProvider.CloudwatchLoggingOptions != nil { { m, l, err = apisresolver.GetManagedResource("cloudwatchlogs.aws.upbound.io", "v1beta1", "Stream", "StreamList") @@ -391,6 +438,52 @@ func (mg *Application) ResolveReferences( // ResolveReferences of this Applicati } } } + if mg.Spec.InitProvider.ApplicationConfiguration != nil { + if mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsRefs, + Selector: mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds") + } + mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SecurityGroupIdsRefs = mrsp.ResolvedReferences + + } + } + if mg.Spec.InitProvider.ApplicationConfiguration != nil { + if mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsRefs, + Selector: mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds") + } + mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ApplicationConfiguration.VPCConfiguration.SubnetIdsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.InitProvider.CloudwatchLoggingOptions != nil { { m, l, err = apisresolver.GetManagedResource("cloudwatchlogs.aws.upbound.io", "v1beta1", "Stream", "StreamList") diff --git a/apis/lakeformation/v1beta1/zz_datalakesettings_types.go b/apis/lakeformation/v1beta1/zz_datalakesettings_types.go index c92b0ab592..5097f1eec7 100755 --- a/apis/lakeformation/v1beta1/zz_datalakesettings_types.go +++ b/apis/lakeformation/v1beta1/zz_datalakesettings_types.go @@ -80,9 +80,19 @@ type CreateTableDefaultPermissionsParameters struct { type DataLakeSettingsInitParameters struct { // – Set of ARNs of AWS Lake Formation principals (IAM users or roles). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.User + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set Admins []*string `json:"admins,omitempty" tf:"admins,omitempty"` + // References to User in iam to populate admins. + // +kubebuilder:validation:Optional + AdminsRefs []v1.Reference `json:"adminsRefs,omitempty" tf:"-"` + + // Selector for a list of User in iam to populate admins. + // +kubebuilder:validation:Optional + AdminsSelector *v1.Selector `json:"adminsSelector,omitempty" tf:"-"` + // Whether to allow Amazon EMR clusters to access data managed by Lake Formation. AllowExternalDataFiltering *bool `json:"allowExternalDataFiltering,omitempty" tf:"allow_external_data_filtering,omitempty"` @@ -162,10 +172,20 @@ type DataLakeSettingsObservation struct { type DataLakeSettingsParameters struct { // – Set of ARNs of AWS Lake Formation principals (IAM users or roles). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.User + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set Admins []*string `json:"admins,omitempty" tf:"admins,omitempty"` + // References to User in iam to populate admins. + // +kubebuilder:validation:Optional + AdminsRefs []v1.Reference `json:"adminsRefs,omitempty" tf:"-"` + + // Selector for a list of User in iam to populate admins. + // +kubebuilder:validation:Optional + AdminsSelector *v1.Selector `json:"adminsSelector,omitempty" tf:"-"` + // Whether to allow Amazon EMR clusters to access data managed by Lake Formation. // +kubebuilder:validation:Optional AllowExternalDataFiltering *bool `json:"allowExternalDataFiltering,omitempty" tf:"allow_external_data_filtering,omitempty"` diff --git a/apis/lakeformation/v1beta1/zz_generated.deepcopy.go b/apis/lakeformation/v1beta1/zz_generated.deepcopy.go index 8ca753ab06..7a6c7eaea8 100644 --- a/apis/lakeformation/v1beta1/zz_generated.deepcopy.go +++ b/apis/lakeformation/v1beta1/zz_generated.deepcopy.go @@ -345,6 +345,18 @@ func (in *DataLakeSettingsInitParameters) DeepCopyInto(out *DataLakeSettingsInit } } } + if in.AdminsRefs != nil { + in, out := &in.AdminsRefs, &out.AdminsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminsSelector != nil { + in, out := &in.AdminsSelector, &out.AdminsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.AllowExternalDataFiltering != nil { in, out := &in.AllowExternalDataFiltering, &out.AllowExternalDataFiltering *out = new(bool) @@ -612,6 +624,18 @@ func (in *DataLakeSettingsParameters) DeepCopyInto(out *DataLakeSettingsParamete } } } + if in.AdminsRefs != nil { + in, out := &in.AdminsRefs, &out.AdminsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminsSelector != nil { + in, out := &in.AdminsSelector, &out.AdminsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.AllowExternalDataFiltering != nil { in, out := &in.AllowExternalDataFiltering, &out.AllowExternalDataFiltering *out = new(bool) diff --git a/apis/lakeformation/v1beta1/zz_generated.resolvers.go b/apis/lakeformation/v1beta1/zz_generated.resolvers.go index a140ebfaac..e010a233f2 100644 --- a/apis/lakeformation/v1beta1/zz_generated.resolvers.go +++ b/apis/lakeformation/v1beta1/zz_generated.resolvers.go @@ -18,12 +18,62 @@ import ( client "sigs.k8s.io/controller-runtime/pkg/client" ) -func (mg *Permissions) ResolveReferences( // ResolveReferences of this Permissions. +func (mg *DataLakeSettings) ResolveReferences( // ResolveReferences of this DataLakeSettings. ctx context.Context, c client.Reader) error { var m xpresource.Managed var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) + var mrsp reference.MultiResolutionResponse + var err error + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "User", "UserList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Admins), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.AdminsRefs, + Selector: mg.Spec.ForProvider.AdminsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Admins") + } + mg.Spec.ForProvider.Admins = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.AdminsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "User", "UserList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Admins), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.AdminsRefs, + Selector: mg.Spec.InitProvider.AdminsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Admins") + } + mg.Spec.InitProvider.Admins = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.AdminsRefs = mrsp.ResolvedReferences + + return nil +} + +// ResolveReferences of this Permissions. +func (mg *Permissions) ResolveReferences(ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList + r := reference.NewAPIResolver(c, mg) + var rsp reference.ResolutionResponse var err error diff --git a/apis/lambda/v1beta2/zz_function_types.go b/apis/lambda/v1beta2/zz_function_types.go index fb8d5f3dfd..e79821b078 100755 --- a/apis/lambda/v1beta2/zz_function_types.go +++ b/apis/lambda/v1beta2/zz_function_types.go @@ -167,8 +167,18 @@ type FunctionInitParameters struct { KMSKeyArnSelector *v1.Selector `json:"kmsKeyArnSelector,omitempty" tf:"-"` // List of Lambda Layer Version ARNs (maximum of 5) to attach to your Lambda Function. See Lambda Layers + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/lambda/v1beta1.LayerVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) Layers []*string `json:"layers,omitempty" tf:"layers,omitempty"` + // References to LayerVersion in lambda to populate layers. + // +kubebuilder:validation:Optional + LayersRefs []v1.Reference `json:"layersRefs,omitempty" tf:"-"` + + // Selector for a list of LayerVersion in lambda to populate layers. + // +kubebuilder:validation:Optional + LayersSelector *v1.Selector `json:"layersSelector,omitempty" tf:"-"` + // Configuration block used to specify advanced logging settings. Detailed below. LoggingConfig *LoggingConfigInitParameters `json:"loggingConfig,omitempty" tf:"logging_config,omitempty"` @@ -455,9 +465,19 @@ type FunctionParameters struct { KMSKeyArnSelector *v1.Selector `json:"kmsKeyArnSelector,omitempty" tf:"-"` // List of Lambda Layer Version ARNs (maximum of 5) to attach to your Lambda Function. See Lambda Layers + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/lambda/v1beta1.LayerVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional Layers []*string `json:"layers,omitempty" tf:"layers,omitempty"` + // References to LayerVersion in lambda to populate layers. + // +kubebuilder:validation:Optional + LayersRefs []v1.Reference `json:"layersRefs,omitempty" tf:"-"` + + // Selector for a list of LayerVersion in lambda to populate layers. + // +kubebuilder:validation:Optional + LayersSelector *v1.Selector `json:"layersSelector,omitempty" tf:"-"` + // Configuration block used to specify advanced logging settings. Detailed below. // +kubebuilder:validation:Optional LoggingConfig *LoggingConfigParameters `json:"loggingConfig,omitempty" tf:"logging_config,omitempty"` diff --git a/apis/lambda/v1beta2/zz_generated.deepcopy.go b/apis/lambda/v1beta2/zz_generated.deepcopy.go index d05739d9c2..55699adafd 100644 --- a/apis/lambda/v1beta2/zz_generated.deepcopy.go +++ b/apis/lambda/v1beta2/zz_generated.deepcopy.go @@ -2662,6 +2662,18 @@ func (in *FunctionInitParameters) DeepCopyInto(out *FunctionInitParameters) { } } } + if in.LayersRefs != nil { + in, out := &in.LayersRefs, &out.LayersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LayersSelector != nil { + in, out := &in.LayersSelector, &out.LayersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.LoggingConfig != nil { in, out := &in.LoggingConfig, &out.LoggingConfig *out = new(LoggingConfigInitParameters) @@ -3205,6 +3217,18 @@ func (in *FunctionParameters) DeepCopyInto(out *FunctionParameters) { } } } + if in.LayersRefs != nil { + in, out := &in.LayersRefs, &out.LayersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LayersSelector != nil { + in, out := &in.LayersSelector, &out.LayersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.LoggingConfig != nil { in, out := &in.LoggingConfig, &out.LoggingConfig *out = new(LoggingConfigParameters) diff --git a/apis/lambda/v1beta2/zz_generated.resolvers.go b/apis/lambda/v1beta2/zz_generated.resolvers.go index e0cba53c38..715ef9cdcd 100644 --- a/apis/lambda/v1beta2/zz_generated.resolvers.go +++ b/apis/lambda/v1beta2/zz_generated.resolvers.go @@ -242,6 +242,25 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } mg.Spec.ForProvider.KMSKeyArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.KMSKeyArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("lambda.aws.upbound.io", "v1beta1", "LayerVersion", "LayerVersionList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Layers), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.LayersRefs, + Selector: mg.Spec.ForProvider.LayersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Layers") + } + mg.Spec.ForProvider.Layers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.LayersRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") if err != nil { @@ -381,6 +400,25 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } mg.Spec.InitProvider.KMSKeyArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.KMSKeyArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("lambda.aws.upbound.io", "v1beta1", "LayerVersion", "LayerVersionList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Layers), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.LayersRefs, + Selector: mg.Spec.InitProvider.LayersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Layers") + } + mg.Spec.InitProvider.Layers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.LayersRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "SecurityGroup", "SecurityGroupList") if err != nil { diff --git a/apis/medialive/v1beta2/zz_generated.deepcopy.go b/apis/medialive/v1beta2/zz_generated.deepcopy.go index 4dc88baedd..ad71a04273 100644 --- a/apis/medialive/v1beta2/zz_generated.deepcopy.go +++ b/apis/medialive/v1beta2/zz_generated.deepcopy.go @@ -11362,6 +11362,18 @@ func (in *InputInitParameters) DeepCopyInto(out *InputInitParameters) { } } } + if in.InputSecurityGroupsRefs != nil { + in, out := &in.InputSecurityGroupsRefs, &out.InputSecurityGroupsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputSecurityGroupsSelector != nil { + in, out := &in.InputSecurityGroupsSelector, &out.InputSecurityGroupsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.MediaConnectFlows != nil { in, out := &in.MediaConnectFlows, &out.MediaConnectFlows *out = make([]MediaConnectFlowsInitParameters, len(*in)) @@ -11912,6 +11924,18 @@ func (in *InputParameters) DeepCopyInto(out *InputParameters) { } } } + if in.InputSecurityGroupsRefs != nil { + in, out := &in.InputSecurityGroupsRefs, &out.InputSecurityGroupsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputSecurityGroupsSelector != nil { + in, out := &in.InputSecurityGroupsSelector, &out.InputSecurityGroupsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.MediaConnectFlows != nil { in, out := &in.MediaConnectFlows, &out.MediaConnectFlows *out = make([]MediaConnectFlowsParameters, len(*in)) diff --git a/apis/medialive/v1beta2/zz_generated.resolvers.go b/apis/medialive/v1beta2/zz_generated.resolvers.go index 2de1c76ddb..73ca391f19 100644 --- a/apis/medialive/v1beta2/zz_generated.resolvers.go +++ b/apis/medialive/v1beta2/zz_generated.resolvers.go @@ -118,7 +118,27 @@ func (mg *Input) ResolveReferences(ctx context.Context, c client.Reader) error { r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("medialive.aws.upbound.io", "v1beta1", "InputSecurityGroup", "InputSecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.InputSecurityGroups), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.InputSecurityGroupsRefs, + Selector: mg.Spec.ForProvider.InputSecurityGroupsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.InputSecurityGroups") + } + mg.Spec.ForProvider.InputSecurityGroups = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.InputSecurityGroupsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") if err != nil { @@ -138,6 +158,25 @@ func (mg *Input) ResolveReferences(ctx context.Context, c client.Reader) error { } mg.Spec.ForProvider.RoleArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RoleArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("medialive.aws.upbound.io", "v1beta1", "InputSecurityGroup", "InputSecurityGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.InputSecurityGroups), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.InputSecurityGroupsRefs, + Selector: mg.Spec.InitProvider.InputSecurityGroupsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.InputSecurityGroups") + } + mg.Spec.InitProvider.InputSecurityGroups = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.InputSecurityGroupsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") if err != nil { diff --git a/apis/medialive/v1beta2/zz_input_types.go b/apis/medialive/v1beta2/zz_input_types.go index 1d438e7d1b..7c227fc6a4 100755 --- a/apis/medialive/v1beta2/zz_input_types.go +++ b/apis/medialive/v1beta2/zz_input_types.go @@ -60,8 +60,18 @@ type InputInitParameters struct { InputDevices []InputDevicesInitParameters `json:"inputDevices,omitempty" tf:"input_devices,omitempty"` // List of input security groups. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/medialive/v1beta1.InputSecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() InputSecurityGroups []*string `json:"inputSecurityGroups,omitempty" tf:"input_security_groups,omitempty"` + // References to InputSecurityGroup in medialive to populate inputSecurityGroups. + // +kubebuilder:validation:Optional + InputSecurityGroupsRefs []v1.Reference `json:"inputSecurityGroupsRefs,omitempty" tf:"-"` + + // Selector for a list of InputSecurityGroup in medialive to populate inputSecurityGroups. + // +kubebuilder:validation:Optional + InputSecurityGroupsSelector *v1.Selector `json:"inputSecurityGroupsSelector,omitempty" tf:"-"` + // A list of the MediaConnect Flows. See Media Connect Flows for more details. MediaConnectFlows []MediaConnectFlowsInitParameters `json:"mediaConnectFlows,omitempty" tf:"media_connect_flows,omitempty"` @@ -161,9 +171,19 @@ type InputParameters struct { InputDevices []InputDevicesParameters `json:"inputDevices,omitempty" tf:"input_devices,omitempty"` // List of input security groups. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/medialive/v1beta1.InputSecurityGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional InputSecurityGroups []*string `json:"inputSecurityGroups,omitempty" tf:"input_security_groups,omitempty"` + // References to InputSecurityGroup in medialive to populate inputSecurityGroups. + // +kubebuilder:validation:Optional + InputSecurityGroupsRefs []v1.Reference `json:"inputSecurityGroupsRefs,omitempty" tf:"-"` + + // Selector for a list of InputSecurityGroup in medialive to populate inputSecurityGroups. + // +kubebuilder:validation:Optional + InputSecurityGroupsSelector *v1.Selector `json:"inputSecurityGroupsSelector,omitempty" tf:"-"` + // A list of the MediaConnect Flows. See Media Connect Flows for more details. // +kubebuilder:validation:Optional MediaConnectFlows []MediaConnectFlowsParameters `json:"mediaConnectFlows,omitempty" tf:"media_connect_flows,omitempty"` diff --git a/apis/neptune/v1beta1/zz_eventsubscription_types.go b/apis/neptune/v1beta1/zz_eventsubscription_types.go index 54cf4161c9..80ee922254 100755 --- a/apis/neptune/v1beta1/zz_eventsubscription_types.go +++ b/apis/neptune/v1beta1/zz_eventsubscription_types.go @@ -36,9 +36,19 @@ type EventSubscriptionInitParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/neptune/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to ClusterInstance in neptune to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in neptune to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, db-snapshot, db-cluster or db-cluster-snapshot. If not set, all sources will be subscribed to. SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` @@ -115,10 +125,20 @@ type EventSubscriptionParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/neptune/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to ClusterInstance in neptune to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in neptune to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, db-snapshot, db-cluster or db-cluster-snapshot. If not set, all sources will be subscribed to. // +kubebuilder:validation:Optional SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` diff --git a/apis/neptune/v1beta1/zz_generated.deepcopy.go b/apis/neptune/v1beta1/zz_generated.deepcopy.go index 910c17f096..de6f46a965 100644 --- a/apis/neptune/v1beta1/zz_generated.deepcopy.go +++ b/apis/neptune/v1beta1/zz_generated.deepcopy.go @@ -2366,6 +2366,18 @@ func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionIn } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -2580,6 +2592,18 @@ func (in *EventSubscriptionParameters) DeepCopyInto(out *EventSubscriptionParame } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) diff --git a/apis/neptune/v1beta1/zz_generated.resolvers.go b/apis/neptune/v1beta1/zz_generated.resolvers.go index 8c9a23328a..458f7bb73c 100644 --- a/apis/neptune/v1beta1/zz_generated.resolvers.go +++ b/apis/neptune/v1beta1/zz_generated.resolvers.go @@ -530,6 +530,7 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") @@ -550,6 +551,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("neptune.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.SourceIdsRefs, + Selector: mg.Spec.ForProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SourceIds") + } + mg.Spec.ForProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SourceIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -569,6 +589,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.InitProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("neptune.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.SourceIdsRefs, + Selector: mg.Spec.InitProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SourceIds") + } + mg.Spec.InitProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SourceIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/rds/v1beta1/zz_clusterendpoint_types.go b/apis/rds/v1beta1/zz_clusterendpoint_types.go index 74bf6301dd..e97f9bd2d6 100755 --- a/apis/rds/v1beta1/zz_clusterendpoint_types.go +++ b/apis/rds/v1beta1/zz_clusterendpoint_types.go @@ -32,13 +32,33 @@ type ClusterEndpointInitParameters struct { CustomEndpointType *string `json:"customEndpointType,omitempty" tf:"custom_endpoint_type,omitempty"` // List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty. Conflicts with static_members. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set ExcludedMembers []*string `json:"excludedMembers,omitempty" tf:"excluded_members,omitempty"` + // References to ClusterInstance in rds to populate excludedMembers. + // +kubebuilder:validation:Optional + ExcludedMembersRefs []v1.Reference `json:"excludedMembersRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in rds to populate excludedMembers. + // +kubebuilder:validation:Optional + ExcludedMembersSelector *v1.Selector `json:"excludedMembersSelector,omitempty" tf:"-"` + // List of DB instance identifiers that are part of the custom endpoint group. Conflicts with excluded_members. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set StaticMembers []*string `json:"staticMembers,omitempty" tf:"static_members,omitempty"` + // References to ClusterInstance in rds to populate staticMembers. + // +kubebuilder:validation:Optional + StaticMembersRefs []v1.Reference `json:"staticMembersRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in rds to populate staticMembers. + // +kubebuilder:validation:Optional + StaticMembersSelector *v1.Selector `json:"staticMembersSelector,omitempty" tf:"-"` + // Key-value map of resource tags. // +mapType=granular Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` @@ -99,20 +119,40 @@ type ClusterEndpointParameters struct { CustomEndpointType *string `json:"customEndpointType,omitempty" tf:"custom_endpoint_type,omitempty"` // List of DB instance identifiers that aren't part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty. Conflicts with static_members. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set ExcludedMembers []*string `json:"excludedMembers,omitempty" tf:"excluded_members,omitempty"` + // References to ClusterInstance in rds to populate excludedMembers. + // +kubebuilder:validation:Optional + ExcludedMembersRefs []v1.Reference `json:"excludedMembersRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in rds to populate excludedMembers. + // +kubebuilder:validation:Optional + ExcludedMembersSelector *v1.Selector `json:"excludedMembersSelector,omitempty" tf:"-"` + // 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:"-"` // List of DB instance identifiers that are part of the custom endpoint group. Conflicts with excluded_members. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta1.ClusterInstance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set StaticMembers []*string `json:"staticMembers,omitempty" tf:"static_members,omitempty"` + // References to ClusterInstance in rds to populate staticMembers. + // +kubebuilder:validation:Optional + StaticMembersRefs []v1.Reference `json:"staticMembersRefs,omitempty" tf:"-"` + + // Selector for a list of ClusterInstance in rds to populate staticMembers. + // +kubebuilder:validation:Optional + StaticMembersSelector *v1.Selector `json:"staticMembersSelector,omitempty" tf:"-"` + // Key-value map of resource tags. // +kubebuilder:validation:Optional // +mapType=granular diff --git a/apis/rds/v1beta1/zz_eventsubscription_types.go b/apis/rds/v1beta1/zz_eventsubscription_types.go index b6fc1f5613..293a5baad7 100755 --- a/apis/rds/v1beta1/zz_eventsubscription_types.go +++ b/apis/rds/v1beta1/zz_eventsubscription_types.go @@ -36,9 +36,19 @@ type EventSubscriptionInitParameters struct { SnsTopicSelector *v1.Selector `json:"snsTopicSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("identifier",false) // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Instance in rds to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, db-snapshot, db-cluster, db-cluster-snapshot, or db-proxy. If not set, all sources will be subscribed to. SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` @@ -115,10 +125,20 @@ type EventSubscriptionParameters struct { SnsTopicSelector *v1.Selector `json:"snsTopicSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/rds/v1beta3.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("identifier",false) // +kubebuilder:validation:Optional // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Instance in rds to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in rds to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, db-snapshot, db-cluster, db-cluster-snapshot, or db-proxy. If not set, all sources will be subscribed to. // +kubebuilder:validation:Optional SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` diff --git a/apis/rds/v1beta1/zz_generated.deepcopy.go b/apis/rds/v1beta1/zz_generated.deepcopy.go index d34fa305e3..a0b3ca28a5 100644 --- a/apis/rds/v1beta1/zz_generated.deepcopy.go +++ b/apis/rds/v1beta1/zz_generated.deepcopy.go @@ -570,6 +570,18 @@ func (in *ClusterEndpointInitParameters) DeepCopyInto(out *ClusterEndpointInitPa } } } + if in.ExcludedMembersRefs != nil { + in, out := &in.ExcludedMembersRefs, &out.ExcludedMembersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExcludedMembersSelector != nil { + in, out := &in.ExcludedMembersSelector, &out.ExcludedMembersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.StaticMembers != nil { in, out := &in.StaticMembers, &out.StaticMembers *out = make([]*string, len(*in)) @@ -581,6 +593,18 @@ func (in *ClusterEndpointInitParameters) DeepCopyInto(out *ClusterEndpointInitPa } } } + if in.StaticMembersRefs != nil { + in, out := &in.StaticMembersRefs, &out.StaticMembersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StaticMembersSelector != nil { + in, out := &in.StaticMembersSelector, &out.StaticMembersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -769,6 +793,18 @@ func (in *ClusterEndpointParameters) DeepCopyInto(out *ClusterEndpointParameters } } } + if in.ExcludedMembersRefs != nil { + in, out := &in.ExcludedMembersRefs, &out.ExcludedMembersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExcludedMembersSelector != nil { + in, out := &in.ExcludedMembersSelector, &out.ExcludedMembersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Region != nil { in, out := &in.Region, &out.Region *out = new(string) @@ -785,6 +821,18 @@ func (in *ClusterEndpointParameters) DeepCopyInto(out *ClusterEndpointParameters } } } + if in.StaticMembersRefs != nil { + in, out := &in.StaticMembersRefs, &out.StaticMembersRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StaticMembersSelector != nil { + in, out := &in.StaticMembersSelector, &out.StaticMembersSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -5020,6 +5068,18 @@ func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionIn } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -5234,6 +5294,18 @@ func (in *EventSubscriptionParameters) DeepCopyInto(out *EventSubscriptionParame } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -9189,6 +9261,18 @@ func (in *ProxyInitParameters) DeepCopyInto(out *ProxyInitParameters) { } } } + if in.VPCSubnetIdsRefs != nil { + in, out := &in.VPCSubnetIdsRefs, &out.VPCSubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPCSubnetIdsSelector != nil { + in, out := &in.VPCSubnetIdsSelector, &out.VPCSubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInitParameters. @@ -9449,6 +9533,18 @@ func (in *ProxyParameters) DeepCopyInto(out *ProxyParameters) { } } } + if in.VPCSubnetIdsRefs != nil { + in, out := &in.VPCSubnetIdsRefs, &out.VPCSubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPCSubnetIdsSelector != nil { + in, out := &in.VPCSubnetIdsSelector, &out.VPCSubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyParameters. diff --git a/apis/rds/v1beta1/zz_generated.resolvers.go b/apis/rds/v1beta1/zz_generated.resolvers.go index 7a5651e20b..ff28c2ed14 100644 --- a/apis/rds/v1beta1/zz_generated.resolvers.go +++ b/apis/rds/v1beta1/zz_generated.resolvers.go @@ -439,6 +439,7 @@ func (mg *ClusterEndpoint) ResolveReferences(ctx context.Context, c client.Reade r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta2", "Cluster", "ClusterList") @@ -459,6 +460,44 @@ func (mg *ClusterEndpoint) ResolveReferences(ctx context.Context, c client.Reade } mg.Spec.ForProvider.ClusterIdentifier = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ClusterIdentifierRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ExcludedMembers), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ExcludedMembersRefs, + Selector: mg.Spec.ForProvider.ExcludedMembersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ExcludedMembers") + } + mg.Spec.ForProvider.ExcludedMembers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ExcludedMembersRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.StaticMembers), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.StaticMembersRefs, + Selector: mg.Spec.ForProvider.StaticMembersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.StaticMembers") + } + mg.Spec.ForProvider.StaticMembers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.StaticMembersRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta2", "Cluster", "ClusterList") if err != nil { @@ -478,6 +517,44 @@ func (mg *ClusterEndpoint) ResolveReferences(ctx context.Context, c client.Reade } mg.Spec.InitProvider.ClusterIdentifier = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ClusterIdentifierRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ExcludedMembers), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ExcludedMembersRefs, + Selector: mg.Spec.InitProvider.ExcludedMembersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ExcludedMembers") + } + mg.Spec.InitProvider.ExcludedMembers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ExcludedMembersRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta1", "ClusterInstance", "ClusterInstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.StaticMembers), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.StaticMembersRefs, + Selector: mg.Spec.InitProvider.StaticMembersSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.StaticMembers") + } + mg.Spec.InitProvider.StaticMembers = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.StaticMembersRefs = mrsp.ResolvedReferences return nil } @@ -1005,6 +1082,7 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") @@ -1025,6 +1103,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SnsTopic = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SnsTopicRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SourceIds), + Extract: resource.ExtractParamPath("identifier", false), + References: mg.Spec.ForProvider.SourceIdsRefs, + Selector: mg.Spec.ForProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SourceIds") + } + mg.Spec.ForProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SourceIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -1044,6 +1141,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.InitProvider.SnsTopic = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SnsTopicRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("rds.aws.upbound.io", "v1beta3", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SourceIds), + Extract: resource.ExtractParamPath("identifier", false), + References: mg.Spec.InitProvider.SourceIdsRefs, + Selector: mg.Spec.InitProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SourceIds") + } + mg.Spec.InitProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SourceIdsRefs = mrsp.ResolvedReferences return nil } @@ -1495,6 +1611,25 @@ func (mg *Proxy) ResolveReferences(ctx context.Context, c client.Reader) error { } mg.Spec.ForProvider.VPCSecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.VPCSecurityGroupIDRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.VPCSubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.VPCSubnetIdsRefs, + Selector: mg.Spec.ForProvider.VPCSubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.VPCSubnetIds") + } + mg.Spec.ForProvider.VPCSubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.VPCSubnetIdsRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.InitProvider.Auth); i3++ { { @@ -1554,6 +1689,25 @@ func (mg *Proxy) ResolveReferences(ctx context.Context, c client.Reader) error { } mg.Spec.InitProvider.VPCSecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.InitProvider.VPCSecurityGroupIDRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.VPCSubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.VPCSubnetIdsRefs, + Selector: mg.Spec.InitProvider.VPCSubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.VPCSubnetIds") + } + mg.Spec.InitProvider.VPCSubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.VPCSubnetIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/rds/v1beta1/zz_proxy_types.go b/apis/rds/v1beta1/zz_proxy_types.go index f330e7797d..86a1e9672d 100755 --- a/apis/rds/v1beta1/zz_proxy_types.go +++ b/apis/rds/v1beta1/zz_proxy_types.go @@ -152,8 +152,18 @@ type ProxyInitParameters struct { VPCSecurityGroupIds []*string `json:"vpcSecurityGroupIds,omitempty" tf:"vpc_security_group_ids,omitempty"` // One or more VPC subnet IDs to associate with the new proxy. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set VPCSubnetIds []*string `json:"vpcSubnetIds,omitempty" tf:"vpc_subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate vpcSubnetIds. + // +kubebuilder:validation:Optional + VPCSubnetIdsRefs []v1.Reference `json:"vpcSubnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate vpcSubnetIds. + // +kubebuilder:validation:Optional + VPCSubnetIdsSelector *v1.Selector `json:"vpcSubnetIdsSelector,omitempty" tf:"-"` } type ProxyObservation struct { @@ -265,9 +275,19 @@ type ProxyParameters struct { VPCSecurityGroupIds []*string `json:"vpcSecurityGroupIds,omitempty" tf:"vpc_security_group_ids,omitempty"` // One or more VPC subnet IDs to associate with the new proxy. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set VPCSubnetIds []*string `json:"vpcSubnetIds,omitempty" tf:"vpc_subnet_ids,omitempty"` + + // References to Subnet in ec2 to populate vpcSubnetIds. + // +kubebuilder:validation:Optional + VPCSubnetIdsRefs []v1.Reference `json:"vpcSubnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate vpcSubnetIds. + // +kubebuilder:validation:Optional + VPCSubnetIdsSelector *v1.Selector `json:"vpcSubnetIdsSelector,omitempty" tf:"-"` } // ProxySpec defines the desired state of Proxy @@ -308,7 +328,6 @@ type Proxy struct { metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.auth) || (has(self.initProvider) && has(self.initProvider.auth))",message="spec.forProvider.auth is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.engineFamily) || (has(self.initProvider) && has(self.initProvider.engineFamily))",message="spec.forProvider.engineFamily is a required parameter" - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vpcSubnetIds) || (has(self.initProvider) && has(self.initProvider.vpcSubnetIds))",message="spec.forProvider.vpcSubnetIds is a required parameter" Spec ProxySpec `json:"spec"` Status ProxyStatus `json:"status,omitempty"` } diff --git a/apis/redshift/v1beta1/zz_eventsubscription_types.go b/apis/redshift/v1beta1/zz_eventsubscription_types.go index 6efbf612e3..a5fe888907 100755 --- a/apis/redshift/v1beta1/zz_eventsubscription_types.go +++ b/apis/redshift/v1beta1/zz_eventsubscription_types.go @@ -39,9 +39,19 @@ type EventSubscriptionInitParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/redshift/v1beta2.Cluster + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Cluster in redshift to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Cluster in redshift to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, or scheduled-action. If not set, all sources will be subscribed to. SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` @@ -127,10 +137,20 @@ type EventSubscriptionParameters struct { SnsTopicArnSelector *v1.Selector `json:"snsTopicArnSelector,omitempty" tf:"-"` // A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/redshift/v1beta2.Cluster + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"` + // References to Cluster in redshift to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsRefs []v1.Reference `json:"sourceIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Cluster in redshift to populate sourceIds. + // +kubebuilder:validation:Optional + SourceIdsSelector *v1.Selector `json:"sourceIdsSelector,omitempty" tf:"-"` + // The type of source that will be generating the events. Valid options are cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, or scheduled-action. If not set, all sources will be subscribed to. // +kubebuilder:validation:Optional SourceType *string `json:"sourceType,omitempty" tf:"source_type,omitempty"` diff --git a/apis/redshift/v1beta1/zz_generated.deepcopy.go b/apis/redshift/v1beta1/zz_generated.deepcopy.go index 2318f606e9..9531a74f0d 100644 --- a/apis/redshift/v1beta1/zz_generated.deepcopy.go +++ b/apis/redshift/v1beta1/zz_generated.deepcopy.go @@ -1608,6 +1608,18 @@ func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionIn } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) @@ -1837,6 +1849,18 @@ func (in *EventSubscriptionParameters) DeepCopyInto(out *EventSubscriptionParame } } } + if in.SourceIdsRefs != nil { + in, out := &in.SourceIdsRefs, &out.SourceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIdsSelector != nil { + in, out := &in.SourceIdsSelector, &out.SourceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SourceType != nil { in, out := &in.SourceType, &out.SourceType *out = new(string) diff --git a/apis/redshift/v1beta1/zz_generated.resolvers.go b/apis/redshift/v1beta1/zz_generated.resolvers.go index 1b7ea4c0f4..e9539391e5 100644 --- a/apis/redshift/v1beta1/zz_generated.resolvers.go +++ b/apis/redshift/v1beta1/zz_generated.resolvers.go @@ -318,6 +318,7 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") @@ -338,6 +339,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.ForProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("redshift.aws.upbound.io", "v1beta2", "Cluster", "ClusterList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.SourceIdsRefs, + Selector: mg.Spec.ForProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.SourceIds") + } + mg.Spec.ForProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.SourceIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("sns.aws.upbound.io", "v1beta1", "Topic", "TopicList") if err != nil { @@ -357,6 +377,25 @@ func (mg *EventSubscription) ResolveReferences(ctx context.Context, c client.Rea } mg.Spec.InitProvider.SnsTopicArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SnsTopicArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("redshift.aws.upbound.io", "v1beta2", "Cluster", "ClusterList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SourceIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.SourceIdsRefs, + Selector: mg.Spec.InitProvider.SourceIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.SourceIds") + } + mg.Spec.InitProvider.SourceIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.SourceIdsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/route53/v1beta1/zz_generated.deepcopy.go b/apis/route53/v1beta1/zz_generated.deepcopy.go index 8be52a6fdb..102a666bc9 100644 --- a/apis/route53/v1beta1/zz_generated.deepcopy.go +++ b/apis/route53/v1beta1/zz_generated.deepcopy.go @@ -740,6 +740,18 @@ func (in *HealthCheckInitParameters) DeepCopyInto(out *HealthCheckInitParameters } } } + if in.ChildHealthchecksRefs != nil { + in, out := &in.ChildHealthchecksRefs, &out.ChildHealthchecksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ChildHealthchecksSelector != nil { + in, out := &in.ChildHealthchecksSelector, &out.ChildHealthchecksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.CloudwatchAlarmName != nil { in, out := &in.CloudwatchAlarmName, &out.CloudwatchAlarmName *out = new(string) @@ -1094,6 +1106,18 @@ func (in *HealthCheckParameters) DeepCopyInto(out *HealthCheckParameters) { } } } + if in.ChildHealthchecksRefs != nil { + in, out := &in.ChildHealthchecksRefs, &out.ChildHealthchecksRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ChildHealthchecksSelector != nil { + in, out := &in.ChildHealthchecksSelector, &out.ChildHealthchecksSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.CloudwatchAlarmName != nil { in, out := &in.CloudwatchAlarmName, &out.CloudwatchAlarmName *out = new(string) diff --git a/apis/route53/v1beta1/zz_generated.resolvers.go b/apis/route53/v1beta1/zz_generated.resolvers.go index 25a30ccfc3..dada646f28 100644 --- a/apis/route53/v1beta1/zz_generated.resolvers.go +++ b/apis/route53/v1beta1/zz_generated.resolvers.go @@ -24,7 +24,27 @@ func (mg *HealthCheck) ResolveReferences( // ResolveReferences of this HealthChe r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("route53.aws.upbound.io", "v1beta1", "HealthCheck", "HealthCheckList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ChildHealthchecks), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.ChildHealthchecksRefs, + Selector: mg.Spec.ForProvider.ChildHealthchecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ChildHealthchecks") + } + mg.Spec.ForProvider.ChildHealthchecks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.ChildHealthchecksRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("cloudwatch.aws.upbound.io", "v1beta2", "MetricAlarm", "MetricAlarmList") if err != nil { @@ -44,6 +64,25 @@ func (mg *HealthCheck) ResolveReferences( // ResolveReferences of this HealthChe } mg.Spec.ForProvider.CloudwatchAlarmName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CloudwatchAlarmNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("route53.aws.upbound.io", "v1beta1", "HealthCheck", "HealthCheckList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ChildHealthchecks), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.ChildHealthchecksRefs, + Selector: mg.Spec.InitProvider.ChildHealthchecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ChildHealthchecks") + } + mg.Spec.InitProvider.ChildHealthchecks = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.ChildHealthchecksRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("cloudwatch.aws.upbound.io", "v1beta2", "MetricAlarm", "MetricAlarmList") if err != nil { diff --git a/apis/route53/v1beta1/zz_healthcheck_types.go b/apis/route53/v1beta1/zz_healthcheck_types.go index b74e9c5bdc..c4decb1576 100755 --- a/apis/route53/v1beta1/zz_healthcheck_types.go +++ b/apis/route53/v1beta1/zz_healthcheck_types.go @@ -19,9 +19,19 @@ type HealthCheckInitParameters struct { ChildHealthThreshold *float64 `json:"childHealthThreshold,omitempty" tf:"child_health_threshold,omitempty"` // For a specified parent health check, a list of HealthCheckId values for the associated child health checks. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53/v1beta1.HealthCheck + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set ChildHealthchecks []*string `json:"childHealthchecks,omitempty" tf:"child_healthchecks,omitempty"` + // References to HealthCheck in route53 to populate childHealthchecks. + // +kubebuilder:validation:Optional + ChildHealthchecksRefs []v1.Reference `json:"childHealthchecksRefs,omitempty" tf:"-"` + + // Selector for a list of HealthCheck in route53 to populate childHealthchecks. + // +kubebuilder:validation:Optional + ChildHealthchecksSelector *v1.Selector `json:"childHealthchecksSelector,omitempty" tf:"-"` + // The name of the CloudWatch alarm. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/cloudwatch/v1beta2.MetricAlarm CloudwatchAlarmName *string `json:"cloudwatchAlarmName,omitempty" tf:"cloudwatch_alarm_name,omitempty"` @@ -179,10 +189,20 @@ type HealthCheckParameters struct { ChildHealthThreshold *float64 `json:"childHealthThreshold,omitempty" tf:"child_health_threshold,omitempty"` // For a specified parent health check, a list of HealthCheckId values for the associated child health checks. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53/v1beta1.HealthCheck + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set ChildHealthchecks []*string `json:"childHealthchecks,omitempty" tf:"child_healthchecks,omitempty"` + // References to HealthCheck in route53 to populate childHealthchecks. + // +kubebuilder:validation:Optional + ChildHealthchecksRefs []v1.Reference `json:"childHealthchecksRefs,omitempty" tf:"-"` + + // Selector for a list of HealthCheck in route53 to populate childHealthchecks. + // +kubebuilder:validation:Optional + ChildHealthchecksSelector *v1.Selector `json:"childHealthchecksSelector,omitempty" tf:"-"` + // The name of the CloudWatch alarm. // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/cloudwatch/v1beta2.MetricAlarm // +kubebuilder:validation:Optional diff --git a/apis/route53/v1beta2/zz_generated.deepcopy.go b/apis/route53/v1beta2/zz_generated.deepcopy.go index a535a8ebf0..16813e2b45 100644 --- a/apis/route53/v1beta2/zz_generated.deepcopy.go +++ b/apis/route53/v1beta2/zz_generated.deepcopy.go @@ -670,6 +670,18 @@ func (in *RecordInitParameters) DeepCopyInto(out *RecordInitParameters) { } } } + if in.RecordsRefs != nil { + in, out := &in.RecordsRefs, &out.RecordsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RecordsSelector != nil { + in, out := &in.RecordsSelector, &out.RecordsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SetIdentifier != nil { in, out := &in.SetIdentifier, &out.SetIdentifier *out = new(string) @@ -934,6 +946,18 @@ func (in *RecordParameters) DeepCopyInto(out *RecordParameters) { } } } + if in.RecordsRefs != nil { + in, out := &in.RecordsRefs, &out.RecordsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RecordsSelector != nil { + in, out := &in.RecordsSelector, &out.RecordsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Region != nil { in, out := &in.Region, &out.Region *out = new(string) diff --git a/apis/route53/v1beta2/zz_generated.resolvers.go b/apis/route53/v1beta2/zz_generated.resolvers.go index 93762aaa88..10161e54de 100644 --- a/apis/route53/v1beta2/zz_generated.resolvers.go +++ b/apis/route53/v1beta2/zz_generated.resolvers.go @@ -9,6 +9,7 @@ package v1beta2 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" @@ -24,6 +25,7 @@ func (mg *Record) ResolveReferences(ctx context.Context, c client.Reader) error r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("route53.aws.upbound.io", "v1beta1", "HealthCheck", "HealthCheckList") @@ -44,6 +46,25 @@ func (mg *Record) ResolveReferences(ctx context.Context, c client.Reader) error } mg.Spec.ForProvider.HealthCheckID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.HealthCheckIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Records), + Extract: resource.ExtractParamPath("public_ip", true), + References: mg.Spec.ForProvider.RecordsRefs, + Selector: mg.Spec.ForProvider.RecordsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Records") + } + mg.Spec.ForProvider.Records = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.RecordsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("route53.aws.upbound.io", "v1beta1", "Zone", "ZoneList") if err != nil { @@ -82,6 +103,25 @@ func (mg *Record) ResolveReferences(ctx context.Context, c client.Reader) error } mg.Spec.InitProvider.HealthCheckID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.HealthCheckIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Records), + Extract: resource.ExtractParamPath("public_ip", true), + References: mg.Spec.InitProvider.RecordsRefs, + Selector: mg.Spec.InitProvider.RecordsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Records") + } + mg.Spec.InitProvider.Records = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.RecordsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("route53.aws.upbound.io", "v1beta1", "Zone", "ZoneList") if err != nil { diff --git a/apis/route53/v1beta2/zz_record_types.go b/apis/route53/v1beta2/zz_record_types.go index 8247713610..8c2f96e6e8 100755 --- a/apis/route53/v1beta2/zz_record_types.go +++ b/apis/route53/v1beta2/zz_record_types.go @@ -268,9 +268,19 @@ type RecordInitParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // A string list of records.g., "first255characters\"\"morecharacters"). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("public_ip",true) // +listType=set Records []*string `json:"records,omitempty" tf:"records,omitempty"` + // References to EIP in ec2 to populate records. + // +kubebuilder:validation:Optional + RecordsRefs []v1.Reference `json:"recordsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate records. + // +kubebuilder:validation:Optional + RecordsSelector *v1.Selector `json:"recordsSelector,omitempty" tf:"-"` + // Unique identifier to differentiate records with routing policies from one another. Required if using cidr_routing_policy, failover_routing_policy, geolocation_routing_policy,geoproximity_routing_policy, latency_routing_policy, multivalue_answer_routing_policy, or weighted_routing_policy. SetIdentifier *string `json:"setIdentifier,omitempty" tf:"set_identifier,omitempty"` @@ -407,10 +417,20 @@ type RecordParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // A string list of records.g., "first255characters\"\"morecharacters"). + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("public_ip",true) // +kubebuilder:validation:Optional // +listType=set Records []*string `json:"records,omitempty" tf:"records,omitempty"` + // References to EIP in ec2 to populate records. + // +kubebuilder:validation:Optional + RecordsRefs []v1.Reference `json:"recordsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate records. + // +kubebuilder:validation:Optional + RecordsSelector *v1.Selector `json:"recordsSelector,omitempty" tf:"-"` + // An AWS region from which to measure latency. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency // Region is the region you'd like your resource to be created in. // +upjet:crd:field:TFTag=- diff --git a/apis/route53recoverycontrolconfig/v1beta2/zz_generated.deepcopy.go b/apis/route53recoverycontrolconfig/v1beta2/zz_generated.deepcopy.go index f1dcd189ec..587b220d9b 100644 --- a/apis/route53recoverycontrolconfig/v1beta2/zz_generated.deepcopy.go +++ b/apis/route53recoverycontrolconfig/v1beta2/zz_generated.deepcopy.go @@ -182,6 +182,18 @@ func (in *SafetyRuleInitParameters) DeepCopyInto(out *SafetyRuleInitParameters) } } } + if in.GatingControlsRefs != nil { + in, out := &in.GatingControlsRefs, &out.GatingControlsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatingControlsSelector != nil { + in, out := &in.GatingControlsSelector, &out.GatingControlsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -203,6 +215,18 @@ func (in *SafetyRuleInitParameters) DeepCopyInto(out *SafetyRuleInitParameters) } } } + if in.TargetControlsRefs != nil { + in, out := &in.TargetControlsRefs, &out.TargetControlsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetControlsSelector != nil { + in, out := &in.TargetControlsSelector, &out.TargetControlsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.WaitPeriodMs != nil { in, out := &in.WaitPeriodMs, &out.WaitPeriodMs *out = new(float64) @@ -387,6 +411,18 @@ func (in *SafetyRuleParameters) DeepCopyInto(out *SafetyRuleParameters) { } } } + if in.GatingControlsRefs != nil { + in, out := &in.GatingControlsRefs, &out.GatingControlsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatingControlsSelector != nil { + in, out := &in.GatingControlsSelector, &out.GatingControlsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -413,6 +449,18 @@ func (in *SafetyRuleParameters) DeepCopyInto(out *SafetyRuleParameters) { } } } + if in.TargetControlsRefs != nil { + in, out := &in.TargetControlsRefs, &out.TargetControlsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetControlsSelector != nil { + in, out := &in.TargetControlsSelector, &out.TargetControlsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.WaitPeriodMs != nil { in, out := &in.WaitPeriodMs, &out.WaitPeriodMs *out = new(float64) diff --git a/apis/route53recoverycontrolconfig/v1beta2/zz_generated.resolvers.go b/apis/route53recoverycontrolconfig/v1beta2/zz_generated.resolvers.go index 1be13a202e..d7d9642d89 100644 --- a/apis/route53recoverycontrolconfig/v1beta2/zz_generated.resolvers.go +++ b/apis/route53recoverycontrolconfig/v1beta2/zz_generated.resolvers.go @@ -9,6 +9,7 @@ package v1beta2 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" @@ -70,6 +71,44 @@ func (mg *SafetyRule) ResolveReferences( // ResolveReferences of this SafetyRule return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.GatingControls), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.GatingControlsRefs, + Selector: mg.Spec.ForProvider.GatingControlsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.GatingControls") + } + mg.Spec.ForProvider.GatingControls = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.GatingControlsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("route53recoverycontrolconfig.aws.upbound.io", "v1beta1", "RoutingControl", "RoutingControlList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.TargetControls), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.TargetControlsRefs, + Selector: mg.Spec.ForProvider.TargetControlsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.TargetControls") + } + mg.Spec.ForProvider.TargetControls = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.TargetControlsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("route53recoverycontrolconfig.aws.upbound.io", "v1beta1", "RoutingControl", "RoutingControlList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.AssertedControls), Extract: common.TerraformID(), @@ -102,6 +141,44 @@ func (mg *SafetyRule) ResolveReferences( // ResolveReferences of this SafetyRule } mg.Spec.InitProvider.ControlPanelArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ControlPanelArnRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("route53recoverycontrolconfig.aws.upbound.io", "v1beta1", "RoutingControl", "RoutingControlList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.GatingControls), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.GatingControlsRefs, + Selector: mg.Spec.InitProvider.GatingControlsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.GatingControls") + } + mg.Spec.InitProvider.GatingControls = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.GatingControlsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("route53recoverycontrolconfig.aws.upbound.io", "v1beta1", "RoutingControl", "RoutingControlList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.TargetControls), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.TargetControlsRefs, + Selector: mg.Spec.InitProvider.TargetControlsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.TargetControls") + } + mg.Spec.InitProvider.TargetControls = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.TargetControlsRefs = mrsp.ResolvedReferences return nil } diff --git a/apis/route53recoverycontrolconfig/v1beta2/zz_safetyrule_types.go b/apis/route53recoverycontrolconfig/v1beta2/zz_safetyrule_types.go index fd14197a00..6aa50b9099 100755 --- a/apis/route53recoverycontrolconfig/v1beta2/zz_safetyrule_types.go +++ b/apis/route53recoverycontrolconfig/v1beta2/zz_safetyrule_types.go @@ -81,8 +81,18 @@ type SafetyRuleInitParameters struct { ControlPanelArnSelector *v1.Selector `json:"controlPanelArnSelector,omitempty" tf:"-"` // Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) GatingControls []*string `json:"gatingControls,omitempty" tf:"gating_controls,omitempty"` + // References to RoutingControl in route53recoverycontrolconfig to populate gatingControls. + // +kubebuilder:validation:Optional + GatingControlsRefs []v1.Reference `json:"gatingControlsRefs,omitempty" tf:"-"` + + // Selector for a list of RoutingControl in route53recoverycontrolconfig to populate gatingControls. + // +kubebuilder:validation:Optional + GatingControlsSelector *v1.Selector `json:"gatingControlsSelector,omitempty" tf:"-"` + // Name describing the safety rule. Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -90,8 +100,18 @@ type SafetyRuleInitParameters struct { RuleConfig *RuleConfigInitParameters `json:"ruleConfig,omitempty" tf:"rule_config,omitempty"` // Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) TargetControls []*string `json:"targetControls,omitempty" tf:"target_controls,omitempty"` + // References to RoutingControl in route53recoverycontrolconfig to populate targetControls. + // +kubebuilder:validation:Optional + TargetControlsRefs []v1.Reference `json:"targetControlsRefs,omitempty" tf:"-"` + + // Selector for a list of RoutingControl in route53recoverycontrolconfig to populate targetControls. + // +kubebuilder:validation:Optional + TargetControlsSelector *v1.Selector `json:"targetControlsSelector,omitempty" tf:"-"` + // Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. WaitPeriodMs *float64 `json:"waitPeriodMs,omitempty" tf:"wait_period_ms,omitempty"` } @@ -159,9 +179,19 @@ type SafetyRuleParameters struct { ControlPanelArnSelector *v1.Selector `json:"controlPanelArnSelector,omitempty" tf:"-"` // Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional GatingControls []*string `json:"gatingControls,omitempty" tf:"gating_controls,omitempty"` + // References to RoutingControl in route53recoverycontrolconfig to populate gatingControls. + // +kubebuilder:validation:Optional + GatingControlsRefs []v1.Reference `json:"gatingControlsRefs,omitempty" tf:"-"` + + // Selector for a list of RoutingControl in route53recoverycontrolconfig to populate gatingControls. + // +kubebuilder:validation:Optional + GatingControlsSelector *v1.Selector `json:"gatingControlsSelector,omitempty" tf:"-"` + // Name describing the safety rule. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -176,9 +206,19 @@ type SafetyRuleParameters struct { RuleConfig *RuleConfigParameters `json:"ruleConfig,omitempty" tf:"rule_config,omitempty"` // Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional TargetControls []*string `json:"targetControls,omitempty" tf:"target_controls,omitempty"` + // References to RoutingControl in route53recoverycontrolconfig to populate targetControls. + // +kubebuilder:validation:Optional + TargetControlsRefs []v1.Reference `json:"targetControlsRefs,omitempty" tf:"-"` + + // Selector for a list of RoutingControl in route53recoverycontrolconfig to populate targetControls. + // +kubebuilder:validation:Optional + TargetControlsSelector *v1.Selector `json:"targetControlsSelector,omitempty" tf:"-"` + // Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. // +kubebuilder:validation:Optional WaitPeriodMs *float64 `json:"waitPeriodMs,omitempty" tf:"wait_period_ms,omitempty"` diff --git a/apis/s3control/v1beta2/zz_generated.deepcopy.go b/apis/s3control/v1beta2/zz_generated.deepcopy.go index 60161e416a..fa9e31da0e 100644 --- a/apis/s3control/v1beta2/zz_generated.deepcopy.go +++ b/apis/s3control/v1beta2/zz_generated.deepcopy.go @@ -1725,6 +1725,18 @@ func (in *ExcludeInitParameters) DeepCopyInto(out *ExcludeInitParameters) { } } } + if in.BucketsRefs != nil { + in, out := &in.BucketsRefs, &out.BucketsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BucketsSelector != nil { + in, out := &in.BucketsSelector, &out.BucketsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Regions != nil { in, out := &in.Regions, &out.Regions *out = make([]*string, len(*in)) @@ -1799,6 +1811,18 @@ func (in *ExcludeParameters) DeepCopyInto(out *ExcludeParameters) { } } } + if in.BucketsRefs != nil { + in, out := &in.BucketsRefs, &out.BucketsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BucketsSelector != nil { + in, out := &in.BucketsSelector, &out.BucketsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Regions != nil { in, out := &in.Regions, &out.Regions *out = make([]*string, len(*in)) diff --git a/apis/s3control/v1beta2/zz_generated.resolvers.go b/apis/s3control/v1beta2/zz_generated.resolvers.go index a58389d201..00c1772af1 100644 --- a/apis/s3control/v1beta2/zz_generated.resolvers.go +++ b/apis/s3control/v1beta2/zz_generated.resolvers.go @@ -262,6 +262,7 @@ func (mg *StorageLensConfiguration) ResolveReferences(ctx context.Context, c cli r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error if mg.Spec.ForProvider.StorageLensConfiguration != nil { @@ -289,6 +290,29 @@ func (mg *StorageLensConfiguration) ResolveReferences(ctx context.Context, c cli } } } + if mg.Spec.ForProvider.StorageLensConfiguration != nil { + if mg.Spec.ForProvider.StorageLensConfiguration.Exclude != nil { + { + m, l, err = apisresolver.GetManagedResource("s3.aws.upbound.io", "v1beta2", "Bucket", "BucketList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.StorageLensConfiguration.Exclude.Buckets), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.ForProvider.StorageLensConfiguration.Exclude.BucketsRefs, + Selector: mg.Spec.ForProvider.StorageLensConfiguration.Exclude.BucketsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.StorageLensConfiguration.Exclude.Buckets") + } + mg.Spec.ForProvider.StorageLensConfiguration.Exclude.Buckets = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.StorageLensConfiguration.Exclude.BucketsRefs = mrsp.ResolvedReferences + + } + } if mg.Spec.InitProvider.StorageLensConfiguration != nil { if mg.Spec.InitProvider.StorageLensConfiguration.DataExport != nil { if mg.Spec.InitProvider.StorageLensConfiguration.DataExport.S3BucketDestination != nil { @@ -314,6 +338,29 @@ func (mg *StorageLensConfiguration) ResolveReferences(ctx context.Context, c cli } } } + if mg.Spec.InitProvider.StorageLensConfiguration != nil { + if mg.Spec.InitProvider.StorageLensConfiguration.Exclude != nil { + { + m, l, err = apisresolver.GetManagedResource("s3.aws.upbound.io", "v1beta2", "Bucket", "BucketList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.StorageLensConfiguration.Exclude.Buckets), + Extract: resource.ExtractParamPath("arn", true), + References: mg.Spec.InitProvider.StorageLensConfiguration.Exclude.BucketsRefs, + Selector: mg.Spec.InitProvider.StorageLensConfiguration.Exclude.BucketsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.StorageLensConfiguration.Exclude.Buckets") + } + mg.Spec.InitProvider.StorageLensConfiguration.Exclude.Buckets = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.StorageLensConfiguration.Exclude.BucketsRefs = mrsp.ResolvedReferences + + } + } return nil } diff --git a/apis/s3control/v1beta2/zz_storagelensconfiguration_types.go b/apis/s3control/v1beta2/zz_storagelensconfiguration_types.go index e885f434fa..3a78676576 100755 --- a/apis/s3control/v1beta2/zz_storagelensconfiguration_types.go +++ b/apis/s3control/v1beta2/zz_storagelensconfiguration_types.go @@ -382,9 +382,19 @@ type EncryptionParameters struct { type ExcludeInitParameters struct { // List of S3 bucket ARNs. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +listType=set Buckets []*string `json:"buckets,omitempty" tf:"buckets,omitempty"` + // References to Bucket in s3 to populate buckets. + // +kubebuilder:validation:Optional + BucketsRefs []v1.Reference `json:"bucketsRefs,omitempty" tf:"-"` + + // Selector for a list of Bucket in s3 to populate buckets. + // +kubebuilder:validation:Optional + BucketsSelector *v1.Selector `json:"bucketsSelector,omitempty" tf:"-"` + // List of AWS Regions. // +listType=set Regions []*string `json:"regions,omitempty" tf:"regions,omitempty"` @@ -404,10 +414,20 @@ type ExcludeObservation struct { type ExcludeParameters struct { // List of S3 bucket ARNs. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/s3/v1beta2.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true) // +kubebuilder:validation:Optional // +listType=set Buckets []*string `json:"buckets,omitempty" tf:"buckets,omitempty"` + // References to Bucket in s3 to populate buckets. + // +kubebuilder:validation:Optional + BucketsRefs []v1.Reference `json:"bucketsRefs,omitempty" tf:"-"` + + // Selector for a list of Bucket in s3 to populate buckets. + // +kubebuilder:validation:Optional + BucketsSelector *v1.Selector `json:"bucketsSelector,omitempty" tf:"-"` + // List of AWS Regions. // +kubebuilder:validation:Optional // +listType=set diff --git a/apis/ssm/v1beta2/zz_association_types.go b/apis/ssm/v1beta2/zz_association_types.go index e4df73fef3..2213738d46 100755 --- a/apis/ssm/v1beta2/zz_association_types.go +++ b/apis/ssm/v1beta2/zz_association_types.go @@ -268,7 +268,17 @@ type TargetsInitParameters struct { Key *string `json:"key,omitempty" tf:"key,omitempty"` // A list of instance IDs or tag values. AWS currently limits this list size to one value. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } type TargetsObservation struct { @@ -287,8 +297,18 @@ type TargetsParameters struct { Key *string `json:"key" tf:"key,omitempty"` // A list of instance IDs or tag values. AWS currently limits this list size to one value. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. // +kubebuilder:validation:Optional - Values []*string `json:"values" tf:"values,omitempty"` + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } // AssociationSpec defines the desired state of Association diff --git a/apis/ssm/v1beta2/zz_generated.deepcopy.go b/apis/ssm/v1beta2/zz_generated.deepcopy.go index 051ae42d1c..38f7320320 100644 --- a/apis/ssm/v1beta2/zz_generated.deepcopy.go +++ b/apis/ssm/v1beta2/zz_generated.deepcopy.go @@ -1185,6 +1185,18 @@ func (in *MaintenanceWindowTaskTargetsInitParameters) DeepCopyInto(out *Maintena } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindowTaskTargetsInitParameters. @@ -1247,6 +1259,18 @@ func (in *MaintenanceWindowTaskTargetsParameters) DeepCopyInto(out *MaintenanceW } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindowTaskTargetsParameters. @@ -1496,6 +1520,18 @@ func (in *ParameterInitParameters) DeepCopyInto(out *ParameterInitParameters) { } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterInitParameters. @@ -1558,6 +1594,18 @@ func (in *ParameterParameters) DeepCopyInto(out *ParameterParameters) { } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterParameters. @@ -2317,6 +2365,18 @@ func (in *TargetsInitParameters) DeepCopyInto(out *TargetsInitParameters) { } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetsInitParameters. @@ -2379,6 +2439,18 @@ func (in *TargetsParameters) DeepCopyInto(out *TargetsParameters) { } } } + if in.ValuesRefs != nil { + in, out := &in.ValuesRefs, &out.ValuesRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValuesSelector != nil { + in, out := &in.ValuesSelector, &out.ValuesSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetsParameters. diff --git a/apis/ssm/v1beta2/zz_generated.resolvers.go b/apis/ssm/v1beta2/zz_generated.resolvers.go index 1168160d34..08b3d18719 100644 --- a/apis/ssm/v1beta2/zz_generated.resolvers.go +++ b/apis/ssm/v1beta2/zz_generated.resolvers.go @@ -25,6 +25,7 @@ func (mg *Association) ResolveReferences( // ResolveReferences of this Associati r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("ssm.aws.upbound.io", "v1beta1", "Document", "DocumentList") @@ -45,12 +46,33 @@ func (mg *Association) ResolveReferences( // ResolveReferences of this Associati } mg.Spec.ForProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NameRef = rsp.ResolvedReference + + for i3 := 0; i3 < len(mg.Spec.ForProvider.Targets); i3++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Targets[i3].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.Targets[i3].ValuesRefs, + Selector: mg.Spec.ForProvider.Targets[i3].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Targets[i3].Values") + } + mg.Spec.ForProvider.Targets[i3].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.Targets[i3].ValuesRefs = mrsp.ResolvedReferences + + } { m, l, err = apisresolver.GetManagedResource("ssm.aws.upbound.io", "v1beta1", "Document", "DocumentList") if err != nil { return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Name), Extract: reference.ExternalName(), @@ -65,6 +87,28 @@ func (mg *Association) ResolveReferences( // ResolveReferences of this Associati mg.Spec.InitProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NameRef = rsp.ResolvedReference + for i3 := 0; i3 < len(mg.Spec.InitProvider.Targets); i3++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Targets[i3].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.Targets[i3].ValuesRefs, + Selector: mg.Spec.InitProvider.Targets[i3].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Targets[i3].Values") + } + mg.Spec.InitProvider.Targets[i3].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.Targets[i3].ValuesRefs = mrsp.ResolvedReferences + + } + return nil } @@ -75,6 +119,7 @@ func (mg *MaintenanceWindowTask) ResolveReferences(ctx context.Context, c client r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("iam.aws.upbound.io", "v1beta1", "Role", "RoleList") @@ -95,12 +140,33 @@ func (mg *MaintenanceWindowTask) ResolveReferences(ctx context.Context, c client } mg.Spec.ForProvider.ServiceRoleArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceRoleArnRef = rsp.ResolvedReference + + for i3 := 0; i3 < len(mg.Spec.ForProvider.Targets); i3++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Targets[i3].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.Targets[i3].ValuesRefs, + Selector: mg.Spec.ForProvider.Targets[i3].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Targets[i3].Values") + } + mg.Spec.ForProvider.Targets[i3].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.Targets[i3].ValuesRefs = mrsp.ResolvedReferences + + } { m, l, err = apisresolver.GetManagedResource("lambda.aws.upbound.io", "v1beta2", "Function", "FunctionList") if err != nil { return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TaskArn), Extract: resource.ExtractParamPath("arn", true), @@ -115,6 +181,31 @@ func (mg *MaintenanceWindowTask) ResolveReferences(ctx context.Context, c client mg.Spec.ForProvider.TaskArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TaskArnRef = rsp.ResolvedReference + if mg.Spec.ForProvider.TaskInvocationParameters != nil { + if mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters != nil { + for i5 := 0; i5 < len(mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter); i5++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesRefs, + Selector: mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values") + } + mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesRefs = mrsp.ResolvedReferences + + } + } + } if mg.Spec.ForProvider.TaskInvocationParameters != nil { if mg.Spec.ForProvider.TaskInvocationParameters.RunCommandParameters != nil { if mg.Spec.ForProvider.TaskInvocationParameters.RunCommandParameters.NotificationConfig != nil { @@ -223,12 +314,33 @@ func (mg *MaintenanceWindowTask) ResolveReferences(ctx context.Context, c client } mg.Spec.InitProvider.ServiceRoleArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ServiceRoleArnRef = rsp.ResolvedReference + + for i3 := 0; i3 < len(mg.Spec.InitProvider.Targets); i3++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Targets[i3].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.Targets[i3].ValuesRefs, + Selector: mg.Spec.InitProvider.Targets[i3].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Targets[i3].Values") + } + mg.Spec.InitProvider.Targets[i3].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.Targets[i3].ValuesRefs = mrsp.ResolvedReferences + + } { m, l, err = apisresolver.GetManagedResource("lambda.aws.upbound.io", "v1beta2", "Function", "FunctionList") if err != nil { return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TaskArn), Extract: resource.ExtractParamPath("arn", true), @@ -243,6 +355,31 @@ func (mg *MaintenanceWindowTask) ResolveReferences(ctx context.Context, c client mg.Spec.InitProvider.TaskArn = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.TaskArnRef = rsp.ResolvedReference + if mg.Spec.InitProvider.TaskInvocationParameters != nil { + if mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters != nil { + for i5 := 0; i5 < len(mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter); i5++ { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta2", "Instance", "InstanceList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesRefs, + Selector: mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values") + } + mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].Values = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.TaskInvocationParameters.AutomationParameters.Parameter[i5].ValuesRefs = mrsp.ResolvedReferences + + } + } + } if mg.Spec.InitProvider.TaskInvocationParameters != nil { if mg.Spec.InitProvider.TaskInvocationParameters.RunCommandParameters != nil { if mg.Spec.InitProvider.TaskInvocationParameters.RunCommandParameters.NotificationConfig != nil { diff --git a/apis/ssm/v1beta2/zz_maintenancewindowtask_types.go b/apis/ssm/v1beta2/zz_maintenancewindowtask_types.go index 5aa805d67e..99220a2f00 100755 --- a/apis/ssm/v1beta2/zz_maintenancewindowtask_types.go +++ b/apis/ssm/v1beta2/zz_maintenancewindowtask_types.go @@ -314,7 +314,17 @@ type MaintenanceWindowTaskTargetsInitParameters struct { Key *string `json:"key,omitempty" tf:"key,omitempty"` // The array of strings. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } type MaintenanceWindowTaskTargetsObservation struct { @@ -330,8 +340,18 @@ type MaintenanceWindowTaskTargetsParameters struct { Key *string `json:"key" tf:"key,omitempty"` // The array of strings. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } type NotificationConfigInitParameters struct { @@ -399,7 +419,17 @@ type ParameterInitParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // The array of strings. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } type ParameterObservation struct { @@ -418,8 +448,18 @@ type ParameterParameters struct { Name *string `json:"name" tf:"name,omitempty"` // The array of strings. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta2.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` + + // References to Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesRefs []v1.Reference `json:"valuesRefs,omitempty" tf:"-"` + + // Selector for a list of Instance in ec2 to populate values. + // +kubebuilder:validation:Optional + ValuesSelector *v1.Selector `json:"valuesSelector,omitempty" tf:"-"` } type RunCommandParametersInitParameters struct { diff --git a/apis/transfer/v1beta2/zz_generated.deepcopy.go b/apis/transfer/v1beta2/zz_generated.deepcopy.go index 2d73238011..4c266b2a7e 100644 --- a/apis/transfer/v1beta2/zz_generated.deepcopy.go +++ b/apis/transfer/v1beta2/zz_generated.deepcopy.go @@ -1680,6 +1680,18 @@ func (in *EndpointDetailsInitParameters) DeepCopyInto(out *EndpointDetailsInitPa } } } + if in.AddressAllocationIdsRefs != nil { + in, out := &in.AddressAllocationIdsRefs, &out.AddressAllocationIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AddressAllocationIdsSelector != nil { + in, out := &in.AddressAllocationIdsSelector, &out.AddressAllocationIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SecurityGroupIds != nil { in, out := &in.SecurityGroupIds, &out.SecurityGroupIds *out = make([]*string, len(*in)) @@ -1702,6 +1714,18 @@ func (in *EndpointDetailsInitParameters) DeepCopyInto(out *EndpointDetailsInitPa } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.VPCEndpointID != nil { in, out := &in.VPCEndpointID, &out.VPCEndpointID *out = new(string) @@ -1806,6 +1830,18 @@ func (in *EndpointDetailsParameters) DeepCopyInto(out *EndpointDetailsParameters } } } + if in.AddressAllocationIdsRefs != nil { + in, out := &in.AddressAllocationIdsRefs, &out.AddressAllocationIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AddressAllocationIdsSelector != nil { + in, out := &in.AddressAllocationIdsSelector, &out.AddressAllocationIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SecurityGroupIds != nil { in, out := &in.SecurityGroupIds, &out.SecurityGroupIds *out = make([]*string, len(*in)) @@ -1828,6 +1864,18 @@ func (in *EndpointDetailsParameters) DeepCopyInto(out *EndpointDetailsParameters } } } + if in.SubnetIdsRefs != nil { + in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetIdsSelector != nil { + in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.VPCEndpointID != nil { in, out := &in.VPCEndpointID, &out.VPCEndpointID *out = new(string) diff --git a/apis/transfer/v1beta2/zz_generated.resolvers.go b/apis/transfer/v1beta2/zz_generated.resolvers.go index 117d703907..bc6f37f5a9 100644 --- a/apis/transfer/v1beta2/zz_generated.resolvers.go +++ b/apis/transfer/v1beta2/zz_generated.resolvers.go @@ -118,6 +118,7 @@ func (mg *Server) ResolveReferences(ctx context.Context, c client.Reader) error r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse var err error { m, l, err = apisresolver.GetManagedResource("acm.aws.upbound.io", "v1beta2", "Certificate", "CertificateList") @@ -158,6 +159,48 @@ func (mg *Server) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.DirectoryID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DirectoryIDRef = rsp.ResolvedReference + if mg.Spec.ForProvider.EndpointDetails != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.EndpointDetails.AddressAllocationIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.EndpointDetails.AddressAllocationIdsRefs, + Selector: mg.Spec.ForProvider.EndpointDetails.AddressAllocationIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.EndpointDetails.AddressAllocationIds") + } + mg.Spec.ForProvider.EndpointDetails.AddressAllocationIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.EndpointDetails.AddressAllocationIdsRefs = mrsp.ResolvedReferences + + } + if mg.Spec.ForProvider.EndpointDetails != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.EndpointDetails.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.EndpointDetails.SubnetIdsRefs, + Selector: mg.Spec.ForProvider.EndpointDetails.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.EndpointDetails.SubnetIds") + } + mg.Spec.ForProvider.EndpointDetails.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.EndpointDetails.SubnetIdsRefs = mrsp.ResolvedReferences + + } if mg.Spec.ForProvider.EndpointDetails != nil { { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") @@ -236,6 +279,48 @@ func (mg *Server) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.DirectoryID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DirectoryIDRef = rsp.ResolvedReference + if mg.Spec.InitProvider.EndpointDetails != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "EIP", "EIPList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.EndpointDetails.AddressAllocationIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.EndpointDetails.AddressAllocationIdsRefs, + Selector: mg.Spec.InitProvider.EndpointDetails.AddressAllocationIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.EndpointDetails.AddressAllocationIds") + } + mg.Spec.InitProvider.EndpointDetails.AddressAllocationIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.EndpointDetails.AddressAllocationIdsRefs = mrsp.ResolvedReferences + + } + if mg.Spec.InitProvider.EndpointDetails != nil { + { + m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.EndpointDetails.SubnetIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.EndpointDetails.SubnetIdsRefs, + Selector: mg.Spec.InitProvider.EndpointDetails.SubnetIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.EndpointDetails.SubnetIds") + } + mg.Spec.InitProvider.EndpointDetails.SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.EndpointDetails.SubnetIdsRefs = mrsp.ResolvedReferences + + } if mg.Spec.InitProvider.EndpointDetails != nil { { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "VPC", "VPCList") diff --git a/apis/transfer/v1beta2/zz_server_types.go b/apis/transfer/v1beta2/zz_server_types.go index 7ee328233b..b7229b2c1b 100755 --- a/apis/transfer/v1beta2/zz_server_types.go +++ b/apis/transfer/v1beta2/zz_server_types.go @@ -16,17 +16,37 @@ import ( type EndpointDetailsInitParameters struct { // A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when endpoint_type is set to VPC. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set AddressAllocationIds []*string `json:"addressAllocationIds,omitempty" tf:"address_allocation_ids,omitempty"` + // References to EIP in ec2 to populate addressAllocationIds. + // +kubebuilder:validation:Optional + AddressAllocationIdsRefs []v1.Reference `json:"addressAllocationIdsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate addressAllocationIds. + // +kubebuilder:validation:Optional + AddressAllocationIdsSelector *v1.Selector `json:"addressAllocationIdsSelector,omitempty" tf:"-"` + // A list of security groups IDs that are available to attach to your server's endpoint. If no security groups are specified, the VPC's default security groups are automatically assigned to your endpoint. This property can only be used when endpoint_type is set to VPC. // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` // A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when endpoint_type is set to VPC. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` + // The ID of the VPC endpoint. This property can only be used when endpoint_type is set to VPC_ENDPOINT VPCEndpointID *string `json:"vpcEndpointId,omitempty" tf:"vpc_endpoint_id,omitempty"` @@ -68,20 +88,40 @@ type EndpointDetailsObservation struct { type EndpointDetailsParameters struct { // A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when endpoint_type is set to VPC. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.EIP + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set AddressAllocationIds []*string `json:"addressAllocationIds,omitempty" tf:"address_allocation_ids,omitempty"` + // References to EIP in ec2 to populate addressAllocationIds. + // +kubebuilder:validation:Optional + AddressAllocationIdsRefs []v1.Reference `json:"addressAllocationIdsRefs,omitempty" tf:"-"` + + // Selector for a list of EIP in ec2 to populate addressAllocationIds. + // +kubebuilder:validation:Optional + AddressAllocationIdsSelector *v1.Selector `json:"addressAllocationIdsSelector,omitempty" tf:"-"` + // A list of security groups IDs that are available to attach to your server's endpoint. If no security groups are specified, the VPC's default security groups are automatically assigned to your endpoint. This property can only be used when endpoint_type is set to VPC. // +kubebuilder:validation:Optional // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` // A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when endpoint_type is set to VPC. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` + // References to Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Subnet in ec2 to populate subnetIds. + // +kubebuilder:validation:Optional + SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` + // The ID of the VPC endpoint. This property can only be used when endpoint_type is set to VPC_ENDPOINT // +kubebuilder:validation:Optional VPCEndpointID *string `json:"vpcEndpointId,omitempty" tf:"vpc_endpoint_id,omitempty"` diff --git a/apis/workspaces/v1beta2/zz_directory_types.go b/apis/workspaces/v1beta2/zz_directory_types.go index 394bd25782..f15fd3e804 100755 --- a/apis/workspaces/v1beta2/zz_directory_types.go +++ b/apis/workspaces/v1beta2/zz_directory_types.go @@ -29,9 +29,19 @@ type DirectoryInitParameters struct { DirectoryIDSelector *v1.Selector `json:"directoryIdSelector,omitempty" tf:"-"` // – The identifiers of the IP access control groups associated with the directory. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/workspaces/v1beta1.IPGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +listType=set IPGroupIds []*string `json:"ipGroupIds,omitempty" tf:"ip_group_ids,omitempty"` + // References to IPGroup in workspaces to populate ipGroupIds. + // +kubebuilder:validation:Optional + IPGroupIdsRefs []v1.Reference `json:"ipGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of IPGroup in workspaces to populate ipGroupIds. + // +kubebuilder:validation:Optional + IPGroupIdsSelector *v1.Selector `json:"ipGroupIdsSelector,omitempty" tf:"-"` + // – Configuration of SAML authentication integration. Defined below. SAMLProperties *SAMLPropertiesInitParameters `json:"samlProperties,omitempty" tf:"saml_properties,omitempty"` @@ -143,10 +153,20 @@ type DirectoryParameters struct { DirectoryIDSelector *v1.Selector `json:"directoryIdSelector,omitempty" tf:"-"` // – The identifiers of the IP access control groups associated with the directory. + // +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/workspaces/v1beta1.IPGroup + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional // +listType=set IPGroupIds []*string `json:"ipGroupIds,omitempty" tf:"ip_group_ids,omitempty"` + // References to IPGroup in workspaces to populate ipGroupIds. + // +kubebuilder:validation:Optional + IPGroupIdsRefs []v1.Reference `json:"ipGroupIdsRefs,omitempty" tf:"-"` + + // Selector for a list of IPGroup in workspaces to populate ipGroupIds. + // +kubebuilder:validation:Optional + IPGroupIdsSelector *v1.Selector `json:"ipGroupIdsSelector,omitempty" tf:"-"` + // Region is the region you'd like your resource to be created in. // +upjet:crd:field:TFTag=- // +kubebuilder:validation:Required diff --git a/apis/workspaces/v1beta2/zz_generated.deepcopy.go b/apis/workspaces/v1beta2/zz_generated.deepcopy.go index cba5ba5ef2..badbbf21ac 100644 --- a/apis/workspaces/v1beta2/zz_generated.deepcopy.go +++ b/apis/workspaces/v1beta2/zz_generated.deepcopy.go @@ -69,6 +69,18 @@ func (in *DirectoryInitParameters) DeepCopyInto(out *DirectoryInitParameters) { } } } + if in.IPGroupIdsRefs != nil { + in, out := &in.IPGroupIdsRefs, &out.IPGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPGroupIdsSelector != nil { + in, out := &in.IPGroupIdsSelector, &out.IPGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SAMLProperties != nil { in, out := &in.SAMLProperties, &out.SAMLProperties *out = new(SAMLPropertiesInitParameters) @@ -346,6 +358,18 @@ func (in *DirectoryParameters) DeepCopyInto(out *DirectoryParameters) { } } } + if in.IPGroupIdsRefs != nil { + in, out := &in.IPGroupIdsRefs, &out.IPGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPGroupIdsSelector != nil { + in, out := &in.IPGroupIdsSelector, &out.IPGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Region != nil { in, out := &in.Region, &out.Region *out = new(string) diff --git a/apis/workspaces/v1beta2/zz_generated.resolvers.go b/apis/workspaces/v1beta2/zz_generated.resolvers.go index 53dd61359b..e34d9c18b3 100644 --- a/apis/workspaces/v1beta2/zz_generated.resolvers.go +++ b/apis/workspaces/v1beta2/zz_generated.resolvers.go @@ -45,6 +45,25 @@ func (mg *Directory) ResolveReferences( // ResolveReferences of this Directory. } mg.Spec.ForProvider.DirectoryID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DirectoryIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("workspaces.aws.upbound.io", "v1beta1", "IPGroup", "IPGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.IPGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.ForProvider.IPGroupIdsRefs, + Selector: mg.Spec.ForProvider.IPGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.IPGroupIds") + } + mg.Spec.ForProvider.IPGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.IPGroupIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") if err != nil { @@ -104,6 +123,25 @@ func (mg *Directory) ResolveReferences( // ResolveReferences of this Directory. } mg.Spec.InitProvider.DirectoryID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DirectoryIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("workspaces.aws.upbound.io", "v1beta1", "IPGroup", "IPGroupList") + if err != nil { + return errors.Wrap(err, "failed to get the reference target managed resource and its list for reference resolution") + } + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.IPGroupIds), + Extract: resource.ExtractResourceID(), + References: mg.Spec.InitProvider.IPGroupIdsRefs, + Selector: mg.Spec.InitProvider.IPGroupIdsSelector, + To: reference.To{List: l, Managed: m}, + }) + } + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.IPGroupIds") + } + mg.Spec.InitProvider.IPGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.InitProvider.IPGroupIdsRefs = mrsp.ResolvedReferences { m, l, err = apisresolver.GetManagedResource("ec2.aws.upbound.io", "v1beta1", "Subnet", "SubnetList") if err != nil { diff --git a/cmd/provider/bedrockagent/zz_main.go b/cmd/provider/bedrockagent/zz_main.go index dba1ac7b2b..63dc7d0921 100644 --- a/cmd/provider/bedrockagent/zz_main.go +++ b/cmd/provider/bedrockagent/zz_main.go @@ -217,7 +217,7 @@ func main() { })), "cannot create default store config") } - kingpin.FatalIfError(conversion.RegisterConversions(o.Provider), "Cannot initialize the webhook conversion registry") + kingpin.FatalIfError(conversion.RegisterConversions(o.Provider, mgr.GetScheme()), "Cannot initialize the webhook conversion registry") kingpin.FatalIfError(controller.Setup_bedrockagent(mgr, o), "Cannot setup AWS controllers") kingpin.FatalIfError(mgr.Start(ctrl.SetupSignalHandler()), "Cannot start controller manager") } diff --git a/cmd/provider/osis/zz_main.go b/cmd/provider/osis/zz_main.go index 748e990800..663f81027e 100644 --- a/cmd/provider/osis/zz_main.go +++ b/cmd/provider/osis/zz_main.go @@ -217,7 +217,7 @@ func main() { })), "cannot create default store config") } - kingpin.FatalIfError(conversion.RegisterConversions(o.Provider), "Cannot initialize the webhook conversion registry") + kingpin.FatalIfError(conversion.RegisterConversions(o.Provider, mgr.GetScheme()), "Cannot initialize the webhook conversion registry") kingpin.FatalIfError(controller.Setup_osis(mgr, o), "Cannot setup AWS controllers") kingpin.FatalIfError(mgr.Start(ctrl.SetupSignalHandler()), "Cannot start controller manager") } diff --git a/cmd/provider/pipes/zz_main.go b/cmd/provider/pipes/zz_main.go index f9f2e2c594..a1cc96c5aa 100644 --- a/cmd/provider/pipes/zz_main.go +++ b/cmd/provider/pipes/zz_main.go @@ -217,7 +217,7 @@ func main() { })), "cannot create default store config") } - kingpin.FatalIfError(conversion.RegisterConversions(o.Provider), "Cannot initialize the webhook conversion registry") + kingpin.FatalIfError(conversion.RegisterConversions(o.Provider, mgr.GetScheme()), "Cannot initialize the webhook conversion registry") kingpin.FatalIfError(controller.Setup_pipes(mgr, o), "Cannot setup AWS controllers") kingpin.FatalIfError(mgr.Start(ctrl.SetupSignalHandler()), "Cannot start controller manager") } diff --git a/config/provider-metadata.yaml b/config/provider-metadata.yaml index e4ba751240..6b1a95f83a 100644 --- a/config/provider-metadata.yaml +++ b/config/provider-metadata.yaml @@ -2579,6 +2579,8 @@ resources: "name": "example", "put_rest_api_mode": "merge" } + references: + endpoint_configuration.vpc_endpoint_ids: aws_vpc_endpoint.example[0].id dependencies: aws_api_gateway_deployment.example: |- { @@ -2967,6 +2969,8 @@ resources: "${aws_lb.example.arn}" ] } + references: + target_arns: aws_lb.example.arn dependencies: aws_lb.example: |- { @@ -3604,6 +3608,7 @@ resources: } } references: + security_group_ids: data.aws_security_group.example.id subnet_ids: data.aws_subnets.example.ids argumentDocs: arn: '- VPC Link ARN.' @@ -4072,6 +4077,8 @@ resources: "scalable_dimension": "ecs:service:DesiredCount", "service_namespace": "ecs" } + references: + lifecycle.ignore_changes: tags_all argumentDocs: arn: '- The ARN of the scalable target.' max_capacity: '- (Required) Max capacity of the scalable target.' @@ -6557,6 +6564,8 @@ resources: } ] } + references: + vpc_config.subnet_ids: aws_subnet.example.id argumentDocs: access_endpoint: '- (Optional) Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below.' access_endpoint.endpoint_type: '- (Required) Type of interface endpoint. For valid values, refer to the AWS documentation.' @@ -7309,6 +7318,7 @@ resources: } references: api_id: aws_appsync_graphql_api.test.id + pipeline_config.functions: aws_appsync_function.test1.function_id dependencies: aws_appsync_datasource.test: |- { @@ -7351,6 +7361,7 @@ resources: } references: api_id: aws_appsync_graphql_api.test.id + pipeline_config.functions: aws_appsync_function.test.function_id argumentDocs: api_id: '- (Required) API ID for the GraphQL API.' arn: '- ARN' @@ -7527,6 +7538,7 @@ resources: } references: bucket: aws_s3_bucket.example.id + lifecycle.ignore_changes: bucket argumentDocs: acl_configuration: '- (Optional) That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.' bucket: '- (Required) Name of S3 bucket to save the results of the query execution.' @@ -8036,6 +8048,7 @@ resources: references: launch_configuration: aws_launch_configuration.foobar.name placement_group: aws_placement_group.test.id + vpc_zone_identifier: aws_subnet.example1.id dependencies: aws_placement_group.test: |- { @@ -8153,6 +8166,7 @@ resources: } references: mixed_instances_policy.launch_template.launch_template_specification.launch_template_id: aws_launch_template.example.id + vpc_zone_identifier: aws_subnet.example1.id dependencies: aws_launch_template.example: |- { @@ -8307,6 +8321,7 @@ resources: dynamic.content.value: tag.value.value dynamic.for_each: var.extra_tags launch_configuration: aws_launch_configuration.foobar.name + vpc_zone_identifier: aws_subnet.example1.id - name: example manifest: |- { @@ -8695,6 +8710,7 @@ resources: "topic_arn": "${aws_sns_topic.example.arn}" } references: + group_names: aws_autoscaling_group.bar.name topic_arn: aws_sns_topic.example.arn dependencies: aws_autoscaling_group.bar: |- @@ -9759,6 +9775,7 @@ resources: references: iam_role_arn: aws_iam_role.example.arn plan_id: aws_backup_plan.example.id + resources: aws_db_instance.example.arn - name: example manifest: |- { @@ -9773,6 +9790,7 @@ resources: } references: iam_role_arn: aws_iam_role.example.arn + not_resources: aws_db_instance.example.arn plan_id: aws_backup_plan.example.id argumentDocs: condition: '- (Optional) A list of conditions that you define to assign resources to your backup plans using tags.' @@ -9931,6 +9949,8 @@ resources: references: compute_resources.instance_role: aws_iam_instance_profile.ecs_instance_role.arn compute_resources.placement_group: aws_placement_group.sample.name + compute_resources.security_group_ids: aws_security_group.sample.id + compute_resources.subnets: aws_subnet.sample.id service_role: aws_iam_role.aws_batch_service_role.arn dependencies: aws_iam_instance_profile.ecs_instance_role: |- @@ -10009,6 +10029,8 @@ resources: "type": "MANAGED" } references: + compute_resources.security_group_ids: aws_security_group.sample.id + compute_resources.subnets: aws_subnet.sample.id service_role: aws_iam_role.aws_batch_service_role.arn - name: sample manifest: |- @@ -10042,6 +10064,8 @@ resources: } references: compute_resources.instance_role: aws_iam_instance_profile.ecs_instance.arn + compute_resources.security_group_ids: aws_security_group.sample.id + compute_resources.subnets: aws_subnet.sample.id argumentDocs: arn: '- The Amazon Resource Name (ARN) of the compute environment.' compute_environment_name: '- (Optional, Forces new resource) The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, and underscores are allowed. If omitted, Terraform will assign a random, unique name.' @@ -11389,6 +11413,7 @@ resources: references: budget_name: aws_budgets_budget.example.name definition.iam_action_definition.policy_arn: aws_iam_policy.example.arn + definition.iam_action_definition.roles: aws_iam_role.example.name execution_role_arn: aws_iam_role.example.arn dependencies: aws_budgets_budget.example: |- @@ -11512,6 +11537,8 @@ resources: } ] } + references: + monitor_arn_list: aws_ce_anomaly_monitor.test.arn dependencies: aws_ce_anomaly_monitor.test: |- { @@ -11549,6 +11576,8 @@ resources: } ] } + references: + monitor_arn_list: aws_ce_anomaly_monitor.test.arn - name: test manifest: |- { @@ -11596,6 +11625,8 @@ resources: } ] } + references: + monitor_arn_list: aws_ce_anomaly_monitor.test.arn - name: realtime_subscription manifest: |- { @@ -11615,6 +11646,7 @@ resources: ] } references: + monitor_arn_list: aws_ce_anomaly_monitor.anomaly_monitor.arn subscriber.address: aws_sns_topic.cost_anomaly_updates.arn dependencies: aws_ce_anomaly_monitor.anomaly_monitor: |- @@ -12919,6 +12951,7 @@ resources: "stack_set_name": "${aws_cloudformation_stack_set.example.name}" } references: + deployment_targets.organizational_unit_ids: aws_organizations_organization.example.roots[0].id stack_set_name: aws_cloudformation_stack_set.example.name argumentDocs: accounts: '- (Optional) Accounts where you want to create stack instances in the specified regions. You can specify either accounts or deployment_targets, but not both.' @@ -13044,6 +13077,7 @@ resources: "stack_set_name": "${aws_cloudformation_stack_set.example.name}" } references: + deployment_targets.organizational_unit_ids: aws_organizations_organization.example.roots[0].id stack_set_name: aws_cloudformation_stack_set.example.name argumentDocs: account_id: '- (Optional) Target AWS Account ID to create a Stack based on the StackSet. Defaults to current account.' @@ -13227,6 +13261,8 @@ resources: } ] } + references: + staging_distribution_dns_names.items: aws_cloudfront_distribution.staging.domain_name dependencies: aws_cloudfront_distribution.production: |- { @@ -13267,6 +13303,8 @@ resources: } ] } + references: + staging_distribution_dns_names.items: aws_cloudfront_distribution.staging.domain_name - name: example manifest: |- { @@ -13291,6 +13329,8 @@ resources: } ] } + references: + staging_distribution_dns_names.items: aws_cloudfront_distribution.staging.domain_name argumentDocs: enabled: '- (Required) Whether this continuous deployment policy is enabled.' etag: '- Current version of the continuous distribution policy.' @@ -13872,6 +13912,8 @@ resources: ], "name": "example-key-group" } + references: + items: aws_cloudfront_public_key.example.id dependencies: aws_cloudfront_public_key.example: |- { @@ -14744,6 +14786,8 @@ resources: } ] } + references: + advanced_event_selector.field_selector.equals: data.aws_dynamodb_table.table.arn argumentDocs: advanced_event_selector: '- (Optional) The advanced event selectors to use to select the events for the data store. For more information about how to use advanced event selectors, see Log events by using advanced event selectors in the CloudTrail User Guide.' arn: '- ARN of the event data store.' @@ -16006,6 +16050,8 @@ resources: "statistic": "Average", "threshold": 80 } + references: + alarm_actions: aws_autoscaling_policy.bat.arn dependencies: aws_autoscaling_policy.bat: |- { @@ -16122,6 +16168,8 @@ resources: "threshold": "${var.logstash_servers_count}" } references: + alarm_actions: aws_sns_topic.sns.arn + ok_actions: aws_sns_topic.sns.arn threshold: var.logstash_servers_count argumentDocs: actions_enabled: '- (Optional) Indicates whether or not actions should be executed during any changes to the alarm''s state. Defaults to true.' @@ -16674,6 +16722,8 @@ resources: references: cache.location: aws_s3_bucket.example.bucket service_role: aws_iam_role.example.arn + vpc_config.security_group_ids: aws_security_group.example1.id + vpc_config.subnets: aws_subnet.example1.id vpc_config.vpc_id: aws_vpc.example.id dependencies: aws_iam_role.example: |- @@ -17590,6 +17640,7 @@ resources: app_name: aws_codedeploy_app.example.name ecs_service.cluster_name: aws_ecs_cluster.example.name ecs_service.service_name: aws_ecs_service.example.name + load_balancer_info.target_group_pair_info.prod_traffic_route.listener_arns: aws_lb_listener.example.arn load_balancer_info.target_group_pair_info.target_group.name: aws_lb_target_group.green.name service_role_arn: aws_iam_role.example.arn dependencies: @@ -18331,6 +18382,8 @@ resources: "graph.facebook.com": "7346241598935552" } } + references: + saml_provider_arns: aws_iam_saml_provider.default.arn dependencies: aws_iam_saml_provider.default: |- { @@ -21100,6 +21153,7 @@ resources: references: instance_id: aws_connect_instance.example.id routing_profile_id: aws_connect_routing_profile.example.routing_profile_id + security_profile_ids: aws_connect_security_profile.example.security_profile_id - name: example manifest: |- { @@ -21128,6 +21182,7 @@ resources: hierarchy_group_id: aws_connect_user_hierarchy_group.example.hierarchy_group_id instance_id: aws_connect_instance.example.id routing_profile_id: aws_connect_routing_profile.example.routing_profile_id + security_profile_ids: aws_connect_security_profile.example.security_profile_id - name: example manifest: |- { @@ -21155,6 +21210,7 @@ resources: references: instance_id: aws_connect_instance.example.id routing_profile_id: aws_connect_routing_profile.example.routing_profile_id + security_profile_ids: aws_connect_security_profile.example.security_profile_id - name: example manifest: |- { @@ -21175,6 +21231,7 @@ resources: references: instance_id: aws_connect_instance.example.id routing_profile_id: aws_connect_routing_profile.example.routing_profile_id + security_profile_ids: aws_connect_security_profile.example.security_profile_id - name: example manifest: |- { @@ -21198,6 +21255,7 @@ resources: references: instance_id: aws_connect_instance.example.id routing_profile_id: aws_connect_routing_profile.example.routing_profile_id + security_profile_ids: aws_connect_security_profile.example.security_profile_id argumentDocs: arn: '- The Amazon Resource Name (ARN) of the user.' directory_user_id: '- (Optional) The identifier of the user account in the directory used for identity management. If Amazon Connect cannot access the directory, you can specify this identifier to authenticate users. If you include the identifier, we assume that Amazon Connect cannot access the directory. Otherwise, the identity information is used to authenticate users from your directory. This parameter is required if you are using an existing directory for identity management in Amazon Connect when Amazon Connect cannot access your directory to authenticate users. If you are using SAML for identity management and include this parameter, an error is returned.' @@ -21870,6 +21928,8 @@ resources: } references: private_link_endpoint: data.aws_network_interface.example.private_ip + security_group_arns: aws_security_group.example.arn + subnet_arns: aws_subnet.example.arn vpc_endpoint_id: aws_vpc_endpoint.example.id dependencies: aws_vpc_endpoint.example: |- @@ -21918,6 +21978,8 @@ resources: } ] } + references: + agent_arns: aws_datasync_agent.example.arn argumentDocs: access_tier: '- (Optional) The access tier that you want your objects or files transferred into. Valid values: HOT, COOL and ARCHIVE. Default: HOT.' agent_arns: '- (Required) A list of DataSync Agent ARNs with which this location will be associated.' @@ -21951,6 +22013,7 @@ resources: "efs_file_system_arn": "${aws_efs_mount_target.example.file_system_arn}" } references: + ec2_config.security_group_arns: aws_security_group.example.arn ec2_config.subnet_arn: aws_subnet.example.arn efs_file_system_arn: aws_efs_mount_target.example.file_system_arn argumentDocs: @@ -21983,6 +22046,7 @@ resources: } references: fsx_filesystem_arn: aws_fsx_lustre_file_system.example.arn + security_group_arns: aws_security_group.example.arn argumentDocs: arn: '- Amazon Resource Name (ARN) of the DataSync Location.' creation_time: '- The time that the FSx for Lustre location was created.' @@ -22024,6 +22088,7 @@ resources: } references: fsx_filesystem_arn: aws_fsx_ontap_file_system.test.arn + security_group_arns: aws_security_group.test.arn storage_virtual_machine_arn: aws_fsx_ontap_storage_virtual_machine.test.arn argumentDocs: arn: '- ARN of the DataSync Location for the FSx Ontap File System.' @@ -22071,6 +22136,7 @@ resources: } references: fsx_filesystem_arn: aws_fsx_openzfs_file_system.example.arn + security_group_arns: aws_security_group.example.arn argumentDocs: arn: '- Amazon Resource Name (ARN) of the DataSync Location.' creation_time: '- The time that the FSx for openzfs location was created.' @@ -22104,6 +22170,7 @@ resources: } references: fsx_filesystem_arn: aws_fsx_windows_file_system.example.arn + security_group_arns: aws_security_group.example.arn argumentDocs: arn: '- Amazon Resource Name (ARN) of the DataSync Location.' creation_time: '- The time that the FSx for Windows location was created.' @@ -22140,6 +22207,7 @@ resources: "simple_user": "example" } references: + agent_arns: aws_datasync_agent.example.arn name_node.hostname: aws_instance.example.private_dns - name: example manifest: |- @@ -22159,6 +22227,7 @@ resources: ] } references: + agent_arns: aws_datasync_agent.example.arn name_node.hostname: aws_instance.example.private_dns argumentDocs: agent_arns: '- (Required) A list of DataSync Agent ARNs with which this location will be associated.' @@ -22202,6 +22271,8 @@ resources: "server_hostname": "nfs.example.com", "subdirectory": "/exported/path" } + references: + on_prem_config.agent_arns: aws_datasync_agent.example.arn argumentDocs: arn: '- Amazon Resource Name (ARN) of the DataSync Location.' id: '- Amazon Resource Name (ARN) of the DataSync Location.' @@ -22229,6 +22300,8 @@ resources: "bucket_name": "example", "server_hostname": "example" } + references: + agent_arns: aws_datasync_agent.example.arn argumentDocs: access_key: '- (Optional) The access key is used if credentials are required to access the self-managed object storage server. If your object storage requires a user name and password to authenticate, use access_key and secret_key to provide the user name and password, respectively.' agent_arns: '- (Required) A list of DataSync Agent ARNs with which this location will be associated.' @@ -22293,6 +22366,8 @@ resources: "subdirectory": "/exported/path", "user": "Guest" } + references: + agent_arns: aws_datasync_agent.example.arn argumentDocs: agent_arns: '- (Required) A list of DataSync Agent ARNs with which this location will be associated.' arn: '- Amazon Resource Name (ARN) of the DataSync Location.' @@ -23055,6 +23130,8 @@ resources: "${aws_subnet.example2.id}" ] } + references: + subnet_ids: aws_subnet.example1.id argumentDocs: description: '- (Optional) A description of the subnet group.' id: '- The name of the subnet group.' @@ -23126,6 +23203,7 @@ resources: } references: sns_topic: aws_sns_topic.default.arn + source_ids: aws_db_instance.default.identifier dependencies: aws_db_instance.default: |- { @@ -23640,6 +23718,7 @@ resources: } references: db_instance_identifier: aws_db_instance.example.identifier + lifecycle.replace_triggered_by: aws_db_instance.example.id role_arn: aws_iam_role.example.arn argumentDocs: create: '- (Default 10m)' @@ -23810,6 +23889,8 @@ resources: references: auth.secret_arn: aws_secretsmanager_secret.example.arn role_arn: aws_iam_role.example.arn + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.example.id argumentDocs: arn: '- The Amazon Resource Name (ARN) for the proxy.' auth: '- (Required) Configuration block(s) with authorization mechanisms to connect to the associated instances or clusters. Described below.' @@ -24134,6 +24215,8 @@ resources: "Name": "My DB subnet group" } } + references: + subnet_ids: aws_subnet.frontend.id argumentDocs: arn: '- The ARN of the db subnet group.' description: '- (Optional) The description of the DB subnet group. Defaults to "Managed by Terraform".' @@ -24230,6 +24313,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: subnet_ids argumentDocs: arn: '- ARN of the Default Network ACL' default_network_acl_id: '- (Required) Network ACL ID to manage. This attribute is exported from aws_vpc, or manually found via the AWS Console.' @@ -24999,6 +25084,7 @@ resources: ] } references: + vpc_settings.subnet_ids: aws_subnet.foo.id vpc_settings.vpc_id: aws_vpc.main.id dependencies: aws_subnet.bar: |- @@ -25038,6 +25124,7 @@ resources: ] } references: + vpc_settings.subnet_ids: aws_subnet.foo.id vpc_settings.vpc_id: aws_vpc.main.id dependencies: aws_subnet.bar: |- @@ -25078,6 +25165,7 @@ resources: "type": "ADConnector" } references: + connect_settings.subnet_ids: aws_subnet.foo.id connect_settings.vpc_id: aws_vpc.main.id dependencies: aws_subnet.bar: |- @@ -25661,6 +25749,7 @@ resources: } references: execution_role_arn: aws_iam_role.example.arn + policy_details.event_source.parameters.snapshot_owner: data.aws_caller_identity.current.account_id dependencies: aws_iam_role_policy_attachment.example: |- { @@ -25922,6 +26011,7 @@ resources: } references: sns_topic_arn: aws_sns_topic.example.arn + source_ids: aws_dms_replication_task.example.replication_task_id argumentDocs: arn: '- Amazon Resource Name (ARN) of the DMS Event Subscription.' create: '- (Default 10m)' @@ -26552,6 +26642,7 @@ resources: } references: sns_topic_arn: aws_sns_topic.example.arn + source_ids: aws_docdb_cluster.example.id dependencies: aws_docdb_cluster.example: |- { @@ -26672,6 +26763,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: source_db_cluster_identifier argumentDocs: arn: '- Global Cluster Amazon Resource Name (ARN)' create: '- (Default 5m)' @@ -26708,6 +26801,8 @@ resources: "Name": "My docdb subnet group" } } + references: + subnet_ids: aws_subnet.frontend.id argumentDocs: arn: '- The ARN of the docDB subnet group.' description: '- (Optional) The description of the docDB subnet group. Defaults to "Managed by Terraform".' @@ -30006,6 +30101,7 @@ resources: "vpc_id": "${aws_vpc.example.id}" } references: + subnet_ids: aws_subnet.example.id transit_gateway_id: aws_ec2_transit_gateway.example.id vpc_id: aws_vpc.example.id argumentDocs: @@ -30715,6 +30811,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: desired_count - name: bar manifest: |- { @@ -30742,6 +30840,7 @@ resources: "name": "example" } references: + alarms.alarm_names: aws_cloudwatch_metric_alarm.example.alarm_name cluster: aws_ecs_cluster.example.id - name: example manifest: |- @@ -31840,6 +31939,7 @@ resources: } references: role_arn: aws_iam_role.example.arn + vpc_config.subnet_ids: aws_subnet.example1.id - name: example manifest: |- { @@ -31899,6 +31999,7 @@ resources: ] } references: + outpost_config.outpost_arns: data.aws_outposts_outpost.example.arn role_arn: aws_iam_role.example.arn dependencies: aws_iam_role.example: |- @@ -32113,6 +32214,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: scaling_config[0].desired_size - name: example manifest: |- { @@ -32785,6 +32888,8 @@ resources: ], "replication_group_id": "tf-rep-group-1" } + references: + lifecycle.ignore_changes: num_cache_clusters dependencies: aws_elasticache_cluster.replica: |- { @@ -32888,6 +32993,7 @@ resources: "transit_encryption_enabled": true } references: + security_group_ids: aws_security_group.example.id subnet_group_name: aws_elasticache_subnet_group.example.name argumentDocs: apply_immediately: '- (Optional) Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.' @@ -33055,6 +33161,7 @@ resources: } references: kms_key_id: aws_kms_key.test.arn + security_group_ids: aws_security_group.test.id - name: example manifest: |- { @@ -33087,6 +33194,7 @@ resources: } references: kms_key_id: aws_kms_key.test.arn + security_group_ids: aws_security_group.test.id - name: example manifest: |- { @@ -33119,6 +33227,7 @@ resources: } references: kms_key_id: aws_kms_key.test.arn + security_group_ids: aws_security_group.test.id argumentDocs: arn: '- The Amazon Resource Name (ARN) of the serverless cache.' cache_usage_limits: '- (Optional) Sets the cache usage limits for storage and ElastiCache Processing Units for the cache. See cache_usage_limits Block for details.' @@ -33170,6 +33279,8 @@ resources: "${aws_subnet.foo.id}" ] } + references: + subnet_ids: aws_subnet.foo.id dependencies: aws_subnet.foo: |- { @@ -33274,6 +33385,8 @@ resources: "${aws_elasticache_user.test.user_id}" ] } + references: + user_ids: aws_elasticache_user.test.user_id dependencies: aws_elasticache_user.test: |- { @@ -33436,6 +33549,8 @@ resources: } references: domain_name: var.domain + vpc_options.security_group_ids: aws_security_group.es.id + vpc_options.subnet_ids: data.aws_subnets.selected.ids[0] dependencies: aws_iam_service_linked_role.es: |- { @@ -33641,6 +33756,8 @@ resources: } references: domain_arn: aws_elasticsearch_domain.domain_1.arn + vpc_options.security_group_ids: aws_security_group.test.id + vpc_options.subnet_ids: aws_subnet.test.id argumentDocs: create: '- (Default 60m)' delete: '- (Default 90m)' @@ -33885,6 +34002,8 @@ resources: "Name": "foobar-terraform-elb" } } + references: + instances: aws_instance.foo.id argumentDocs: HTTP: ', HTTPS - PORT and PATH are required' TCP: ', SSL - PORT is required, PATH is not supported' @@ -34221,6 +34340,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: step - name: example manifest: |- { @@ -34418,6 +34539,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: kerberos_attributes argumentDocs: action_on_failure: '- (Required) Action to take if the step fails. Valid values: TERMINATE_JOB_FLOW, TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE' additional_info: '- (Optional) JSON string for selecting additional features such as adding proxy information. Note: Currently there is no API to retrieve the value of this argument after EMR cluster creation from provider, therefore Terraform cannot detect drift from the actual EMR cluster if its value is changed outside Terraform.' @@ -34743,6 +34866,7 @@ resources: references: engine_security_group_id: aws_security_group.test.id service_role: aws_iam_role.test.arn + subnet_ids: aws_subnet.test.id user_role: aws_iam_role.test.arn vpc_id: aws_vpc.test.id workspace_security_group_id: aws_security_group.test.id @@ -35605,6 +35729,8 @@ resources: code.s3_key: aws_s3_object.object.key database.database_name: aws_finspace_kx_database.example.name environment_id: aws_finspace_kx_environment.example.id + vpc_configuration.security_group_ids: aws_security_group.example.id + vpc_configuration.subnet_ids: aws_subnet.example.id vpc_configuration.vpc_id: aws_vpc.test.id argumentDocs: SINGLE: AZ mode. @@ -36588,6 +36714,8 @@ resources: "${aws_subnet.test1.id}" ] } + references: + subnet_ids: aws_subnet.test1.id argumentDocs: arn: '- The Amazon Resource Name (ARN) for the resource.' copy_tags_to_data_repository_associations: '- A boolean flag indicating whether tags for the cache should be copied to data repository associations. This value defaults to false.' @@ -36638,6 +36766,8 @@ resources: "${aws_subnet.example.id}" ] } + references: + subnet_ids: aws_subnet.example.id - name: example manifest: |- { @@ -36652,6 +36782,9 @@ resources: "${aws_security_group.example.id}" ] } + references: + lifecycle.ignore_changes: security_group_ids + security_group_ids: aws_security_group.example.id argumentDocs: arn: '- Amazon Resource Name of the file system.' auto_import_policy: '- (Optional) How Amazon FSx keeps your file and directory listings up to date as you add or modify objects in your linked S3 bucket. see Auto Import Data Repo for more details. Only supported on PERSISTENT_1 deployment types.' @@ -36716,6 +36849,7 @@ resources: } references: preferred_subnet_id: aws_subnet.test1.id + subnet_ids: aws_subnet.test1.id - name: testhapairs manifest: |- { @@ -36730,6 +36864,7 @@ resources: } references: preferred_subnet_id: aws_subnet.test1.id + subnet_ids: aws_subnet.test1.id - name: testsingleazgen2 manifest: |- { @@ -36744,6 +36879,7 @@ resources: } references: preferred_subnet_id: aws_subnet.test1.id + subnet_ids: aws_subnet.test1.id - name: testmultiazgen2 manifest: |- { @@ -36759,6 +36895,7 @@ resources: } references: preferred_subnet_id: aws_subnet.test1.id + subnet_ids: aws_subnet.test1.id - name: example manifest: |- { @@ -36773,6 +36910,9 @@ resources: "${aws_security_group.example.id}" ] } + references: + lifecycle.ignore_changes: security_group_ids + security_group_ids: aws_security_group.example.id argumentDocs: arn: '- Amazon Resource Name of the file system.' automatic_backup_retention_days: '- (Optional) The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.' @@ -36859,6 +36999,8 @@ resources: ], "svm_admin_password": "avoid-plaintext-passwords" } + references: + lifecycle.ignore_changes: svm_admin_password argumentDocs: active_directory_configuration: '- (Optional) Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.' active_directory_configuration.netbios_name: '- (Required) The NetBIOS name of the Active Directory computer object that will be created for your SVM. This is often the same as the SVM name but can be different. AWS limits to 15 characters because of standard NetBIOS naming limits.' @@ -36992,6 +37134,8 @@ resources: ], "throughput_capacity": 64 } + references: + subnet_ids: aws_subnet.test1.id - name: example manifest: |- { @@ -37006,6 +37150,9 @@ resources: "${aws_security_group.example.id}" ] } + references: + lifecycle.ignore_changes: security_group_ids + security_group_ids: aws_security_group.example.id argumentDocs: arn: '- Amazon Resource Name of the file system.' automatic_backup_retention_days: '- (Optional) The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.' @@ -37177,6 +37324,7 @@ resources: references: active_directory_id: aws_directory_service_directory.example.id kms_key_id: aws_kms_key.example.arn + subnet_ids: aws_subnet.example.id - name: example manifest: |- { @@ -37200,6 +37348,7 @@ resources: } references: kms_key_id: aws_kms_key.example.arn + subnet_ids: aws_subnet.example.id - name: example manifest: |- { @@ -37214,6 +37363,9 @@ resources: "${aws_security_group.example.id}" ] } + references: + lifecycle.ignore_changes: security_group_ids + security_group_ids: aws_security_group.example.id argumentDocs: active_directory_id: '- (Optional) The ID for an existing Microsoft Active Directory instance that the file system should join when it''s created. Cannot be specified with self_managed_active_directory.' aliases: '- (Optional) An array DNS alias names that you want to associate with the Amazon FSx file system. For more information, see Working with DNS Aliases' @@ -37544,6 +37696,7 @@ resources: "timeout_in_seconds": 60 } references: + destinations: aws_gamelift_fleet.us_west_2_fleet.arn notification_target: aws_sns_topic.game_session_queue_notifications.arn argumentDocs: arn: '- Game Session Queue ARN.' @@ -38321,6 +38474,7 @@ resources: } references: physical_connection_requirements.availability_zone: aws_subnet.example.availability_zone + physical_connection_requirements.security_group_id_list: aws_security_group.example.id physical_connection_requirements.subnet_id: aws_subnet.example.id - name: example1 manifest: |- @@ -38542,6 +38696,7 @@ resources: } references: catalog_target.database_name: aws_glue_catalog_database.example.name + catalog_target.tables: aws_glue_catalog_table.example.name database_name: aws_glue_catalog_database.example.name role: aws_iam_role.example.arn - name: example @@ -40552,6 +40707,7 @@ resources: } references: group: aws_iam_group.group.name + users: aws_iam_user.user_one.name dependencies: aws_iam_group.group: |- { @@ -40586,6 +40742,7 @@ resources: } references: group_name: aws_iam_group.example.name + policy_names: aws_iam_group_policy.example.name - name: example manifest: |- { @@ -40676,6 +40833,7 @@ resources: } references: group_name: aws_iam_group.example.name + policy_arns: aws_iam_policy.example.arn - name: example manifest: |- { @@ -40795,7 +40953,10 @@ resources: ] } references: + groups: aws_iam_group.group.name policy_arn: aws_iam_policy.policy.arn + roles: aws_iam_role.role.name + users: aws_iam_user.user.name dependencies: aws_iam_group.group: |- { @@ -40890,6 +41051,7 @@ resources: } references: assume_role_policy: data.aws_iam_policy_document.instance_assume_role_policy.json + managed_policy_arns: aws_iam_policy.policy_one.arn dependencies: aws_iam_policy.policy_one: |- { @@ -40945,6 +41107,7 @@ resources: "role_name": "${aws_iam_role.example.name}" } references: + policy_names: aws_iam_role_policy.example.name role_name: aws_iam_role.example.name - name: example manifest: |- @@ -41036,6 +41199,7 @@ resources: "role_name": "${aws_iam_role.example.name}" } references: + policy_arns: aws_iam_policy.example.arn role_name: aws_iam_role.example.name - name: example manifest: |- @@ -41295,6 +41459,7 @@ resources: "user": "${aws_iam_user.user1.name}" } references: + groups: aws_iam_group.group1.name user: aws_iam_user.user1.name dependencies: aws_iam_group.group1: |- @@ -41322,6 +41487,7 @@ resources: "user": "${aws_iam_user.user1.name}" } references: + groups: aws_iam_group.group3.name user: aws_iam_user.user1.name dependencies: aws_iam_group.group1: |- @@ -41378,6 +41544,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: password_length argumentDocs: encrypted_password: '- The encrypted password, base64 encoded. Only available if password was handled on Terraform resource creation, not import.' key_fingerprint: '- The fingerprint of the PGP key used to encrypt the password. Only available if password was handled on Terraform resource creation, not import.' @@ -41402,6 +41570,7 @@ resources: "user_name": "${aws_iam_user.example.name}" } references: + policy_names: aws_iam_user_policy.example.name user_name: aws_iam_user.example.name - name: example manifest: |- @@ -41492,6 +41661,7 @@ resources: "user_name": "${aws_iam_user.example.name}" } references: + policy_arns: aws_iam_policy.example.arn user_name: aws_iam_user.example.name - name: example manifest: |- @@ -42120,6 +42290,7 @@ resources: instance_profile_name: aws_iam_instance_profile.example.name key_pair: aws_key_pair.example.key_name logging.s3_logs.s3_bucket_name: aws_s3_bucket.example.bucket + security_group_ids: aws_security_group.example.id sns_topic_arn: aws_sns_topic.example.arn subnet_id: aws_subnet.main.id argumentDocs: @@ -42399,6 +42570,8 @@ resources: "EC2" ] } + references: + account_ids: data.aws_caller_identity.current.account_id argumentDocs: account_ids: |- - (Required) Set of account IDs. @@ -43012,6 +43185,8 @@ resources: ], "service_type": "DATA" } + references: + server_certificate_arns: aws_acm_certificate.cert.arn argumentDocs: arn: '- The ARN of the domain configuration.' authorizer_config: '- (Optional) An object that specifies the authorization service for a domain. See the authorizer_config Block below for details.' @@ -43549,6 +43724,7 @@ resources: } references: vpc_configuration.role_arn: aws_iam_role.example.arn + vpc_configuration.security_groups: aws_security_group.example.id vpc_configuration.vpc_id: aws_vpc.example.id argumentDocs: arn: '- The ARN of the topic rule destination' @@ -43767,6 +43943,8 @@ resources: ], "name": "tf-ivschat-room" } + references: + logging_configuration_identifiers: aws_ivschat_logging_configuration.example.arn dependencies: aws_ivschat_logging_configuration.example: |- { @@ -44344,6 +44522,7 @@ resources: "role_arn": "${aws_iam_role.example.arn}" } references: + configuration.content_source_configuration.faq_ids: aws_kendra_faq.example.faq_id index_id: aws_kendra_index.example.id role_arn: aws_iam_role.example.arn argumentDocs: @@ -45945,6 +46124,8 @@ resources: elasticsearch_configuration.s3_configuration.bucket_arn: aws_s3_bucket.bucket.arn elasticsearch_configuration.s3_configuration.role_arn: aws_iam_role.firehose.arn elasticsearch_configuration.vpc_config.role_arn: aws_iam_role.firehose.arn + elasticsearch_configuration.vpc_config.security_group_ids: aws_security_group.first.id + elasticsearch_configuration.vpc_config.subnet_ids: aws_subnet.first.id dependencies: aws_elasticsearch_domain.test_cluster: |- { @@ -46068,6 +46249,8 @@ resources: opensearch_configuration.s3_configuration.bucket_arn: aws_s3_bucket.bucket.arn opensearch_configuration.s3_configuration.role_arn: aws_iam_role.firehose.arn opensearch_configuration.vpc_config.role_arn: aws_iam_role.firehose.arn + opensearch_configuration.vpc_config.security_group_ids: aws_security_group.first.id + opensearch_configuration.vpc_config.subnet_ids: aws_subnet.first.id dependencies: aws_iam_role_policy.firehose-opensearch: |- { @@ -47031,6 +47214,8 @@ resources: references: application_configuration.application_code_configuration.code_content.s3_content_location.bucket_arn: aws_s3_bucket.example.arn application_configuration.application_code_configuration.code_content.s3_content_location.file_key: aws_s3_object.example.key + application_configuration.vpc_configuration.security_group_ids: aws_security_group.example[0].id + application_configuration.vpc_configuration.subnet_ids: aws_subnet.example.id service_execution_role: aws_iam_role.example.arn dependencies: aws_s3_bucket.example: |- @@ -47585,6 +47770,8 @@ resources: "${aws_iam_role.test.arn}" ] } + references: + admins: aws_iam_user.test.arn - name: example manifest: |- { @@ -47612,6 +47799,7 @@ resources: ] } references: + admins: aws_iam_user.test.arn create_database_default_permissions.principal: aws_iam_user.test.arn create_table_default_permissions.principal: aws_iam_role.test.arn - name: example @@ -47650,8 +47838,10 @@ resources: ] } references: + admins: aws_iam_user.test.arn create_database_default_permissions.principal: aws_iam_user.test.arn create_table_default_permissions.principal: aws_iam_role.test.arn + external_data_filtering_allow_list: data.aws_caller_identity.current.account_id - name: example manifest: |- { @@ -48083,6 +48273,8 @@ resources: "Name": "dynamodb" } } + references: + allowed_publishers.signing_profile_version_arns: aws_signer_signing_profile.example1.arn argumentDocs: allowed_publishers: (Required) A configuration block of allowed publishers as signing profiles for this code signing configuration. Detailed below. allowed_publishers.signing_profile_version_arns: '- (Required) The Amazon Resource Name (ARN) for each of the signing profiles. A signing profile defines a trusted user who can sign a code package.' @@ -48329,6 +48521,8 @@ resources: "${aws_lambda_layer_version.example.arn}" ] } + references: + layers: aws_lambda_layer_version.example.arn dependencies: aws_lambda_layer_version.example: '{}' - name: test_lambda @@ -48378,6 +48572,8 @@ resources: } references: file_system_config.arn: aws_efs_access_point.access_point_for_lambda.arn + vpc_config.security_group_ids: aws_security_group.sg_for_lambda.id + vpc_config.subnet_ids: aws_subnet.subnet_for_lambda.id dependencies: aws_efs_access_point.access_point_for_lambda: |- { @@ -48944,6 +49140,7 @@ resources: } references: function_name: aws_lambda_function.example.function_name + lifecycle.replace_triggered_by: aws_lambda_function.example argumentDocs: action: '- (Required) The AWS Lambda action you want to allow in this statement. (e.g., lambda:InvokeFunction)' event_source_token: '- (Optional) The Event Source Token to validate. Used with Alexa Skills.' @@ -49477,6 +49674,7 @@ resources: } references: access_logs.bucket: aws_s3_bucket.lb_logs.id + security_groups: aws_security_group.lb_sg.id - name: test manifest: |- { @@ -53156,6 +53354,7 @@ resources: } references: load_balancer_name: aws_elb.wu-tang.name + policy_names: aws_load_balancer_policy.wu-tang-root-ca-backend-auth-policy.policy_name dependencies: aws_elb.wu-tang: |- { @@ -53223,6 +53422,7 @@ resources: } references: load_balancer_name: aws_elb.wu-tang.name + policy_names: aws_load_balancer_policy.wu-tang-ssl.policy_name dependencies: aws_elb.wu-tang: |- { @@ -53270,6 +53470,7 @@ resources: } references: load_balancer_name: aws_elb.wu-tang.name + policy_names: aws_load_balancer_policy.wu-tang-ssl-tls-1-1.policy_name dependencies: aws_elb.wu-tang: |- { @@ -54043,6 +54244,8 @@ resources: "name": "NAME OF THE FINDINGS FILTER", "position": 1 } + references: + finding_criteria.criterion.eq: data.aws_region.current.name dependencies: aws_macie2_account.example: '{}' argumentDocs: @@ -54711,6 +54914,8 @@ resources: }, "type": "UDP_PUSH" } + references: + input_security_groups: aws_medialive_input_security_group.example.id dependencies: aws_medialive_input_security_group.example: |- { @@ -54807,6 +55012,8 @@ resources: "tag1": "value1" } } + references: + availability_zones: data.aws_availability_zones.available.names[0] argumentDocs: arn: '- ARN of the Multiplex.' availability_zones: '- (Required) A list of availability zones. You must specify exactly two.' @@ -54931,6 +55138,7 @@ resources: "subnet_group_name": "${aws_memorydb_subnet_group.example.id}" } references: + security_group_ids: aws_security_group.example.id subnet_group_name: aws_memorydb_subnet_group.example.id argumentDocs: acl_name: '- (Required) The name of the Access Control List to associate with the cluster.' @@ -55059,6 +55267,8 @@ resources: "${aws_subnet.example.id}" ] } + references: + subnet_ids: aws_subnet.example.id dependencies: aws_subnet.example: |- { @@ -55101,6 +55311,8 @@ resources: ], "user_name": "my-user" } + references: + authentication_mode.passwords: random_password.example.result dependencies: random_password.example: |- { @@ -55151,6 +55363,7 @@ resources: references: configuration.id: aws_mq_configuration.test.id configuration.revision: aws_mq_configuration.test.latest_revision + security_groups: aws_security_group.test.id - name: example manifest: |- { @@ -55178,6 +55391,7 @@ resources: references: configuration.id: aws_mq_configuration.test.id configuration.revision: aws_mq_configuration.test.latest_revision + security_groups: aws_security_group.test.id - name: example_primary manifest: |- { @@ -55205,6 +55419,7 @@ resources: } references: provider: awsalternate + security_groups: aws_security_group.example_primary.id - name: example manifest: |- { @@ -55233,6 +55448,7 @@ resources: } references: data_replication_primary_broker_arn: aws_mq_broker.primary.arn + security_groups: aws_security_group.example.id argumentDocs: ActiveMQ: ':' RabbitMQ: ':' @@ -55420,6 +55636,8 @@ resources: } } references: + broker_node_group_info.client_subnets: aws_subnet.subnet_az1.id + broker_node_group_info.security_groups: aws_security_group.sg.id encryption_info.encryption_at_rest_kms_key_arn: aws_kms_key.kms.arn logging_info.broker_logs.cloudwatch_logs.log_group: aws_cloudwatch_log_group.test.name logging_info.broker_logs.firehose.delivery_stream: aws_kinesis_firehose_delivery_stream.test_stream.name @@ -55529,6 +55747,9 @@ resources: "kafka_version": "2.7.1", "number_of_broker_nodes": 3 } + references: + broker_node_group_info.client_subnets: aws_subnet.subnet_az1.id + broker_node_group_info.security_groups: aws_security_group.sg.id argumentDocs: arn: '- (Required) Amazon Resource Name (ARN) of the MSK Configuration to use in the cluster.' az_distribution: '- (Optional) The distribution of broker nodes across availability zones (documentation). Currently the only valid value is DEFAULT.' @@ -55714,6 +55935,7 @@ resources: } references: kafka_cluster.amazon_msk_cluster.msk_cluster_arn: aws_msk_cluster.target.arn + kafka_cluster.vpc_config.security_groups_ids: aws_security_group.target.id replication_info_list.source_kafka_cluster_arn: aws_msk_cluster.source.arn replication_info_list.target_kafka_cluster_arn: aws_msk_cluster.target.arn service_execution_role_arn: aws_iam_role.source.arn @@ -55768,6 +55990,7 @@ resources: } references: cluster_arn: aws_msk_cluster.example.arn + secret_arn_list: aws_secretsmanager_secret.example.arn dependencies: aws_kms_key.example: |- { @@ -55838,6 +56061,8 @@ resources: } ] } + references: + vpc_config.security_group_ids: aws_security_group.example.id argumentDocs: arn: '- The ARN of the serverless cluster.' client_authentication: '- (Required) Specifies client authentication information for the serverless cluster. See below.' @@ -55872,6 +56097,7 @@ resources: "vpc_id": "${aws_vpc.test.id}" } references: + security_groups: aws_security_group.test.id vpc_id: aws_vpc.test.id argumentDocs: arn: '- Amazon Resource Name (ARN) of the VPC connection.' @@ -55968,6 +56194,8 @@ resources: } references: kafka_cluster.apache_kafka_cluster.bootstrap_servers: aws_msk_cluster.example.bootstrap_brokers_tls + kafka_cluster.apache_kafka_cluster.vpc.security_groups: aws_security_group.example.id + kafka_cluster.apache_kafka_cluster.vpc.subnets: aws_subnet.example1.id plugin.custom_plugin.arn: aws_mskconnect_custom_plugin.example.arn plugin.custom_plugin.revision: aws_mskconnect_custom_plugin.example.latest_revision service_execution_role_arn: aws_iam_role.example.arn @@ -56125,6 +56353,7 @@ resources: } references: execution_role_arn: aws_iam_role.example.arn + network_configuration.security_group_ids: aws_security_group.example.id source_bucket_arn: aws_s3_bucket.example.arn - name: example manifest: |- @@ -56148,6 +56377,7 @@ resources: } references: execution_role_arn: aws_iam_role.example.arn + network_configuration.security_group_ids: aws_security_group.example.id source_bucket_arn: aws_s3_bucket.example.arn - name: example manifest: |- @@ -56201,6 +56431,7 @@ resources: } references: execution_role_arn: aws_iam_role.example.arn + network_configuration.security_group_ids: aws_security_group.example.id source_bucket_arn: aws_s3_bucket.example.arn - name: example manifest: |- @@ -56224,6 +56455,7 @@ resources: } references: execution_role_arn: aws_iam_role.example.arn + network_configuration.security_group_ids: aws_security_group.example.id source_bucket_arn: aws_s3_bucket.example.arn argumentDocs: airflow_configuration_options: '- (Optional) The airflow_configuration_options parameter specifies airflow override options. Check the Official documentation for all possible configuration options.' @@ -56308,6 +56540,7 @@ resources: } references: allocation_id: aws_eip.example.id + secondary_allocation_ids: aws_eip.secondary.id subnet_id: aws_subnet.example.id - name: example manifest: |- @@ -56617,6 +56850,7 @@ resources: } references: sns_topic_arn: aws_sns_topic.default.arn + source_ids: aws_neptune_cluster_instance.example.id dependencies: aws_neptune_cluster.default: |- { @@ -56741,6 +56975,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: source_db_cluster_identifier argumentDocs: arn: '- Global Cluster Amazon Resource Name (ARN)' db_cluster_arn: '- Amazon Resource Name (ARN) of member DB Cluster.' @@ -56807,6 +57043,8 @@ resources: "Name": "My neptune subnet group" } } + references: + subnet_ids: aws_subnet.frontend.id argumentDocs: arn: '- The ARN of the neptune subnet group.' description: '- (Optional) The description of the neptune subnet group. Defaults to "Managed by Terraform".' @@ -56966,6 +57204,7 @@ resources: } references: attachment.instance: aws_instance.test.id + security_groups: aws_security_group.web.id subnet_id: aws_subnet.public_a.id argumentDocs: arn: '- ARN of the network interface.' @@ -58914,6 +59153,7 @@ resources: } references: core_network_id: awscc_networkmanager_core_network.example.id + subnet_arns: aws_subnet.example.arn vpc_arn: aws_vpc.example.arn argumentDocs: arn: '- The ARN of the attachment.' @@ -59213,6 +59453,8 @@ resources: references: access_policies: data.aws_iam_policy_document.example.json domain_name: var.domain + vpc_options.security_group_ids: aws_security_group.example.id + vpc_options.subnet_ids: data.aws_subnets.example.ids[0] dependencies: aws_iam_service_linked_role.example: |- { @@ -59716,6 +59958,8 @@ resources: } references: domain_arn: aws_opensearch_domain.domain_1.arn + vpc_options.security_group_ids: aws_security_group.test.id + vpc_options.subnet_ids: aws_subnet.test.id argumentDocs: create: '- (Default 60m)' delete: '- (Default 90m)' @@ -59908,6 +60152,7 @@ resources: "vpc_id": "${aws_vpc.example.id}" } references: + subnet_ids: aws_subnet.example.id vpc_id: aws_vpc.example.id argumentDocs: create: '- (Default 30m)' @@ -60216,6 +60461,7 @@ resources: "state": "stopped" } references: + layer_ids: aws_opsworks_custom_layer.my-layer.id stack_id: aws_opsworks_stack.main.id argumentDocs: agent_version: '- (Optional) OpsWorks agent to install. Default is INHERIT.' @@ -60732,6 +60978,8 @@ resources: "name": "my_new_account", "role_name": "myOrganizationRole" } + references: + lifecycle.ignore_changes: role_name argumentDocs: arn: '- The ARN for this account.' close_on_deletion: '- (Optional) If true, a deletion event will close the account. Otherwise, it will only remove from the organization. This is not supported for GovCloud accounts.' @@ -62675,6 +62923,7 @@ resources: ] } references: + column_level_permission_rules.principals: aws_quicksight_user.example.arn physical_table_map.s3_source.data_source_arn: aws_quicksight_data_source.example.arn - name: example manifest: |- @@ -63157,6 +63406,7 @@ resources: "policy_arn": "${aws_iam_policy.example.arn}" } references: + identities.user: aws_quicksight_user.example.user_name policy_arn: aws_iam_policy.example.arn argumentDocs: assignment_id: '- Assignment ID.' @@ -63975,6 +64225,7 @@ resources: "snapshot_identifier": "${data.aws_db_cluster_snapshot.example.id}" } references: + lifecycle.ignore_changes: snapshot_identifier snapshot_identifier: data.aws_db_cluster_snapshot.example.id dependencies: aws_rds_global_cluster.example: |- @@ -64212,6 +64463,7 @@ resources: } references: cluster_identifier: aws_rds_cluster.default.id + excluded_members: aws_rds_cluster_instance.test1.id dependencies: aws_rds_cluster.default: |- { @@ -64267,6 +64519,7 @@ resources: } references: cluster_identifier: aws_rds_cluster.default.id + static_members: aws_rds_cluster_instance.test1.id dependencies: aws_rds_cluster.default: |- { @@ -64841,6 +65094,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: source_db_cluster_identifier argumentDocs: arn: '- RDS Global Cluster Amazon Resource Name (ARN)' create: '- (Default 30m)' @@ -64882,6 +65137,7 @@ resources: "target_arn": "${aws_redshiftserverless_namespace.example.arn}" } references: + lifecycle.ignore_changes: kms_key_id source_arn: aws_rds_cluster.example.arn target_arn: aws_redshiftserverless_namespace.example.arn dependencies: @@ -65129,6 +65385,7 @@ resources: } references: cluster_identifier: aws_redshift_cluster.example.cluster_identifier + iam_role_arns: aws_iam_role.example.arn argumentDocs: cluster_identifier: '- (Required) The name of the Redshift Cluster IAM Roles.' default_iam_role_arn: '- (Optional) The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was created.' @@ -65293,6 +65550,7 @@ resources: } references: sns_topic_arn: aws_sns_topic.default.arn + source_ids: aws_redshift_cluster.default.id dependencies: aws_redshift_cluster.default: |- { @@ -65694,6 +65952,8 @@ resources: "environment": "Production" } } + references: + subnet_ids: aws_subnet.foo.id dependencies: aws_subnet.bar: |- { @@ -66498,6 +66758,8 @@ resources: "${aws_iam_role.test.arn}" ] } + references: + role_arns: aws_iam_role.test.arn dependencies: aws_iam_role.test: |- { @@ -67117,6 +67379,8 @@ resources: ], "wait_period_ms": 5000 } + references: + asserted_controls: aws_route53recoverycontrolconfig_routing_control.example.arn - name: example manifest: |- { @@ -67137,6 +67401,9 @@ resources: ], "wait_period_ms": 5000 } + references: + gating_controls: aws_route53recoverycontrolconfig_routing_control.example.arn + target_controls: aws_route53recoverycontrolconfig_routing_control.example.arn argumentDocs: arn: '- ARN of the safety rule.' asserted_controls: '- (Optional) Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.' @@ -67376,6 +67643,8 @@ resources: }, "type": "CALCULATED" } + references: + child_healthchecks: aws_route53_health_check.child.id - name: foo manifest: |- { @@ -67577,6 +67846,7 @@ resources: "zone_id": "${aws_route53_zone.primary.zone_id}" } references: + records: aws_eip.lb.public_ip zone_id: aws_route53_zone.primary.zone_id - name: www-dev manifest: |- @@ -67690,6 +67960,7 @@ resources: "zone_id": "${aws_route53_zone.example.zone_id}" } references: + records: aws_route53_zone.example.name_servers[0] zone_id: aws_route53_zone.example.zone_id dependencies: aws_route53_zone.example: |- @@ -67818,6 +68089,7 @@ resources: } references: ip_address.subnet_id: aws_subnet.sn2.id + security_group_ids: aws_security_group.sg1.id argumentDocs: arn: '- ARN of the Route 53 Resolver endpoint.' create: '- (Default 10m)' @@ -68972,6 +69244,7 @@ resources: references: storage_lens_configuration.data_export.s3_bucket_destination.account_id: data.aws_caller_identity.current.account_id storage_lens_configuration.data_export.s3_bucket_destination.arn: aws_s3_bucket.target.arn + storage_lens_configuration.exclude.buckets: aws_s3_bucket.b1.arn argumentDocs: account_id: '- (Optional) The AWS account ID for the S3 Storage Lens configuration. Defaults to automatically determined account ID of the Terraform AWS provider.' advanced_cost_optimization_metrics.enabled: (Optional) Whether advanced cost-optimization metrics are enabled. @@ -71907,6 +72180,7 @@ resources: } references: default_user_settings.execution_role: aws_iam_role.example.arn + subnet_ids: aws_subnet.example.id vpc_id: aws_vpc.example.id dependencies: aws_iam_role.example: |- @@ -71944,6 +72218,7 @@ resources: default_user_settings.execution_role: aws_iam_role.example.arn default_user_settings.kernel_gateway_app_settings.custom_image.app_image_config_name: aws_sagemaker_app_image_config.example.app_image_config_name default_user_settings.kernel_gateway_app_settings.custom_image.image_name: aws_sagemaker_image_version.example.image_name + subnet_ids: aws_subnet.example.id vpc_id: aws_vpc.example.id dependencies: aws_sagemaker_app_image_config.example: |- @@ -73615,6 +73890,8 @@ resources: } ] } + references: + egress.prefix_list_ids: aws_vpc_endpoint.my_endpoint.prefix_list_id dependencies: aws_vpc_endpoint.my_endpoint: '{}' - name: example @@ -73750,6 +74027,9 @@ resources: "to_port": 65535, "type": "ingress" } + references: + cidr_blocks: aws_vpc.example.cidr_block + ipv6_cidr_blocks: aws_vpc.example.ipv6_cidr_block - name: allow_all manifest: |- { @@ -73762,6 +74042,8 @@ resources: "to_port": 0, "type": "egress" } + references: + prefix_list_ids: aws_vpc_endpoint.my_endpoint.prefix_list_id dependencies: aws_vpc_endpoint.my_endpoint: '{}' - name: s3_gateway_egress @@ -73777,6 +74059,8 @@ resources: "to_port": 443, "type": "egress" } + references: + prefix_list_ids: data.aws_prefix_list.s3.id argumentDocs: cidr_blocks.cidr_blocks: '- (Optional) List of CIDR blocks. Cannot be specified with source_security_group_id or self.' cidr_blocks.description: '- (Optional) Description of the rule.' @@ -78461,6 +78745,7 @@ resources: } references: name: aws_ssm_document.example.name + targets.values: aws_instance.example.id - name: example manifest: |- { @@ -78503,6 +78788,7 @@ resources: } references: name: aws_ssm_document.example.name + targets.values: aws_instance.example.id argumentDocs: apply_only_at_cron_interval: '- (Optional) By default, when you create a new or update associations, the system runs it immediately and then according to the schedule you specified. Enable this option if you do not want an association to run immediately after you create or update it. This parameter is not supported for rate expressions. Default: false.' arn: '- The ARN of the SSM association' @@ -78616,6 +78902,8 @@ resources: ], "name": "test_document" } + references: + lifecycle.ignore_changes: attachments_source argumentDocs: account_ids: '- The AWS user accounts that should have access to the document. The account IDs can either be a group of account IDs or All.' arn: '- The Amazon Resource Name (ARN) of the document.' @@ -78792,6 +79080,8 @@ resources: "window_id": "${aws_ssm_maintenance_window.example.id}" } references: + targets.values: aws_instance.example.id + task_invocation_parameters.automation_parameters.parameter.values: aws_instance.example.id window_id: aws_ssm_maintenance_window.example.id - name: example manifest: |- @@ -78822,6 +79112,7 @@ resources: "window_id": "${aws_ssm_maintenance_window.example.id}" } references: + targets.values: aws_instance.example.id task_arn: aws_lambda_function.example.arn window_id: aws_ssm_maintenance_window.example.id - name: example @@ -78872,6 +79163,7 @@ resources: "window_id": "${aws_ssm_maintenance_window.example.id}" } references: + targets.values: aws_instance.example.id task_invocation_parameters.run_command_parameters.notification_config.notification_arn: aws_sns_topic.example.arn task_invocation_parameters.run_command_parameters.output_s3_bucket: aws_s3_bucket.example.id task_invocation_parameters.run_command_parameters.service_role_arn: aws_iam_role.example.arn @@ -78905,6 +79197,7 @@ resources: "window_id": "${aws_ssm_maintenance_window.example.id}" } references: + targets.values: aws_instance.example.id task_arn: aws_sfn_activity.example.id window_id: aws_ssm_maintenance_window.example.id argumentDocs: @@ -79484,6 +79777,8 @@ resources: ], "time_zone_id": "Australia/Sydney" } + references: + contact_ids: aws_ssmcontacts_contact.example.arn - name: example manifest: |- { @@ -79548,6 +79843,8 @@ resources: }, "time_zone_id": "Australia/Sydney" } + references: + contact_ids: aws_ssmcontacts_contact.example.arn - name: example manifest: |- { @@ -79586,6 +79883,8 @@ resources: ], "time_zone_id": "Australia/Sydney" } + references: + contact_ids: aws_ssmcontacts_contact.example.arn argumentDocs: arn: '- The Amazon Resource Name (ARN) of the rotation.' contact_ids: '- (Required) Amazon Resource Names (ARNs) of the contacts to add to the rotation. The order in which you list the contacts is their shift order in the rotation schedule.' @@ -79791,6 +80090,7 @@ resources: references: action.ssm_automation.document_name: aws_ssm_document.document1.name action.ssm_automation.role_arn: aws_iam_role.role1.arn + chat_channel: aws_sns_topic.topic.arn incident_template.notification_target.sns_topic_arn: aws_sns_topic.example2.arn argumentDocs: "1": '- Severe Impact' @@ -81099,6 +81399,9 @@ resources: "${aws_subnet.exampleid}" ] } + references: + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.exampleid - name: example manifest: |- { @@ -81116,6 +81419,9 @@ resources: "${aws_subnet.example.id}" ] } + references: + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.example.id dependencies: aws_security_group.example: |- { @@ -81149,6 +81455,9 @@ resources: "${aws_subnet.example.id}" ] } + references: + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.example.id dependencies: aws_internet_gateway.example: |- { @@ -81219,6 +81528,8 @@ resources: } references: log_delivery_configuration.s3_configuration.bucket_name: aws_s3_bucket.example.name + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.example.id dependencies: aws_s3_bucket.example: |- { @@ -81248,6 +81559,9 @@ resources: "${aws_subnet.example_2.id}" ] } + references: + vpc_security_group_ids: aws_security_group.example.id + vpc_subnet_ids: aws_subnet.example_1.id dependencies: aws_subnet.example_1: |- { @@ -81766,6 +82080,8 @@ resources: ], "usage": "LOCAL" } + references: + certificate_ids: aws_transfer_certificate.example.certificate_id argumentDocs: arn: '- The ARN of the profile.' as2_id: '- (Required) The As2Id is the AS2 name as defined in the RFC 4130. For inbound ttransfers this is the AS2 From Header for the AS2 messages sent from the partner. For Outbound messages this is the AS2 To Header for the AS2 messages sent to the partner. his ID cannot include spaces.' @@ -81809,6 +82125,8 @@ resources: "endpoint_type": "VPC" } references: + endpoint_details.address_allocation_ids: aws_eip.example.id + endpoint_details.subnet_ids: aws_subnet.example.id endpoint_details.vpc_id: aws_vpc.example.id - name: example manifest: |- @@ -81848,6 +82166,7 @@ resources: } references: certificate: aws_acm_certificate.example.arn + endpoint_details.subnet_ids: aws_subnet.example.id endpoint_details.vpc_id: aws_vpc.example.id - name: transfer manifest: |- @@ -82195,6 +82514,7 @@ resources: references: domain_certificate_arn: aws_acm_certificate.example.arn load_balancer_options.load_balancer_arn: aws_lb.example.arn + security_group_ids: aws_security_group.example.id verified_access_group_id: aws_verifiedaccess_group.example.id - name: example manifest: |- @@ -82220,6 +82540,7 @@ resources: references: domain_certificate_arn: aws_acm_certificate.example.arn network_interface_options.network_interface_id: aws_network_interface.example.id + security_group_ids: aws_security_group.example.id verified_access_group_id: aws_verifiedaccess_group.example.id argumentDocs: application_domain: '- (Required) The DNS name for users to reach your application.' @@ -82542,6 +82863,7 @@ resources: "policy_store_id": "${aws_verifiedpermissions_policy_store.example.id}" } references: + configuration.cognito_user_pool_configuration.client_ids: aws_cognito_user_pool_client.example.id configuration.cognito_user_pool_configuration.user_pool_arn: aws_cognito_user_pool.example.arn policy_store_id: aws_verifiedpermissions_policy_store.example.id dependencies: @@ -82971,6 +83293,7 @@ resources: "vpc_id": "${aws_vpc.main.id}" } references: + security_group_ids: aws_security_group.sg1.id vpc_id: aws_vpc.main.id - name: ec2 manifest: |- @@ -82995,6 +83318,7 @@ resources: } references: subnet_configuration.subnet_id: aws_subnet.example2.id + subnet_ids: aws_subnet.example1.id vpc_id: aws_vpc.example.id - name: example manifest: |- @@ -83008,6 +83332,7 @@ resources: } references: service_name: aws_vpc_endpoint_service.example.service_name + subnet_ids: aws_subnet.example.id vpc_endpoint_type: aws_vpc_endpoint_service.example.service_type vpc_id: aws_vpc.example.id dependencies: @@ -83036,7 +83361,9 @@ resources: "vpc_id": "${var.vpc_id}" } references: + security_group_ids: aws_security_group.ptfe_service.id service_name: var.ptfe_service + subnet_ids: local.subnet_ids vpc_id: var.vpc_id dependencies: aws_route53_record.ptfe_service: |- @@ -83271,6 +83598,8 @@ resources: "${aws_lb.example.arn}" ] } + references: + network_load_balancer_arns: aws_lb.example.arn - name: example manifest: |- { @@ -83279,6 +83608,8 @@ resources: "${aws_lb.example.arn}" ] } + references: + gateway_load_balancer_arns: aws_lb.example.arn argumentDocs: acceptance_required: '- (Required) Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - true or false.' allowed_principals: '- (Optional) The ARNs of one or more principals allowed to discover the endpoint service.' @@ -84084,6 +84415,8 @@ resources: } ] } + references: + lifecycle.ignore_changes: auto_accept argumentDocs: accept_status: '- The status of the VPC Peering Connection request.' accepter: |- @@ -84767,6 +85100,7 @@ resources: "vpc_identifier": "${aws_vpc.example.id}" } references: + security_group_ids: aws_security_group.example.id service_network_identifier: aws_vpclattice_service_network.example.id vpc_identifier: aws_vpc.example.id argumentDocs: @@ -88024,6 +88358,7 @@ resources: "resource_arn": "${aws_wafv2_web_acl.example.arn}" } references: + log_destination_configs: aws_kinesis_firehose_delivery_stream.example.arn resource_arn: aws_wafv2_web_acl.example.arn - name: example manifest: |- @@ -88074,6 +88409,7 @@ resources: "resource_arn": "${aws_wafv2_web_acl.example.arn}" } references: + log_destination_configs: aws_kinesis_firehose_delivery_stream.example.arn resource_arn: aws_wafv2_web_acl.example.arn - name: example manifest: |- @@ -88084,6 +88420,7 @@ resources: "resource_arn": "${aws_wafv2_web_acl.example.arn}" } references: + log_destination_configs: aws_cloudwatch_log_group.example.arn resource_arn: aws_wafv2_web_acl.example.arn dependencies: aws_cloudwatch_log_group.example: |- @@ -88144,6 +88481,7 @@ resources: ] } references: + network.security_group_ids: aws_security_group.test.id network.vpc_id: aws_vpc.test.id - name: test manifest: |- @@ -88282,6 +88620,7 @@ resources: } references: directory_id: aws_directory_service_directory.example.id + subnet_ids: aws_subnet.example_c.id workspace_creation_properties.custom_security_group_id: aws_security_group.example.id dependencies: aws_directory_service_directory.example: |- @@ -88352,6 +88691,7 @@ resources: } references: directory_id: aws_directory_service_directory.example.id + ip_group_ids: aws_workspaces_ip_group.example.id dependencies: aws_workspaces_ip_group.example: |- { diff --git a/examples-generated/acm/v1beta1/certificatevalidation.yaml b/examples-generated/acm/v1beta1/certificatevalidation.yaml index 41a1548738..caa404f17f 100644 --- a/examples-generated/acm/v1beta1/certificatevalidation.yaml +++ b/examples-generated/acm/v1beta1/certificatevalidation.yaml @@ -67,8 +67,8 @@ spec: } }} name: ${each.value.name} - records: - - ${each.value.record} + recordsRefs: + - name: value region: us-west-1 ttl: 60 type: ${each.value.type} diff --git a/examples-generated/autoscaling/v1beta1/notification.yaml b/examples-generated/autoscaling/v1beta1/notification.yaml index deeb5140a2..e6f81dd4ac 100644 --- a/examples-generated/autoscaling/v1beta1/notification.yaml +++ b/examples-generated/autoscaling/v1beta1/notification.yaml @@ -8,9 +8,9 @@ metadata: name: example-notifications spec: forProvider: - groupNames: - - ${aws_autoscaling_group.bar.name} - - ${aws_autoscaling_group.foo.name} + groupNamesRefs: + - name: bar + - name: foo notifications: - autoscaling:EC2_INSTANCE_LAUNCH - autoscaling:EC2_INSTANCE_TERMINATE diff --git a/examples-generated/budgets/v1beta2/budgetaction.yaml b/examples-generated/budgets/v1beta2/budgetaction.yaml index d36ca43610..de2029c02c 100644 --- a/examples-generated/budgets/v1beta2/budgetaction.yaml +++ b/examples-generated/budgets/v1beta2/budgetaction.yaml @@ -21,8 +21,8 @@ spec: - policyArnSelector: matchLabels: testing.upbound.io/example-name: example - roles: - - ${aws_iam_role.example.name} + rolesRefs: + - name: example executionRoleArnSelector: matchLabels: testing.upbound.io/example-name: example diff --git a/examples-generated/connect/v1beta2/user.yaml b/examples-generated/connect/v1beta2/user.yaml index 154840c3c4..91d364ede4 100644 --- a/examples-generated/connect/v1beta2/user.yaml +++ b/examples-generated/connect/v1beta2/user.yaml @@ -26,5 +26,5 @@ spec: routingProfileIdSelector: matchLabels: testing.upbound.io/example-name: example - securityProfileIds: - - ${aws_connect_security_profile.example.security_profile_id} + securityProfileIdsRefs: + - name: example diff --git a/examples-generated/dms/v1beta1/eventsubscription.yaml b/examples-generated/dms/v1beta1/eventsubscription.yaml index a78d471654..ac66a70241 100644 --- a/examples-generated/dms/v1beta1/eventsubscription.yaml +++ b/examples-generated/dms/v1beta1/eventsubscription.yaml @@ -16,8 +16,8 @@ spec: snsTopicArnSelector: matchLabels: testing.upbound.io/example-name: example - sourceIds: - - ${aws_dms_replication_task.example.replication_task_id} + sourceIdsRefs: + - name: example sourceType: replication-task tags: Name: example diff --git a/examples-generated/docdb/v1beta1/eventsubscription.yaml b/examples-generated/docdb/v1beta1/eventsubscription.yaml index e7e1843f9f..efdb7ab82a 100644 --- a/examples-generated/docdb/v1beta1/eventsubscription.yaml +++ b/examples-generated/docdb/v1beta1/eventsubscription.yaml @@ -16,8 +16,8 @@ spec: snsTopicArnSelector: matchLabels: testing.upbound.io/example-name: example - sourceIds: - - ${aws_docdb_cluster.example.id} + sourceIdsRefs: + - name: example sourceType: db-cluster --- diff --git a/examples-generated/ec2/v1beta1/securitygrouprule.yaml b/examples-generated/ec2/v1beta1/securitygrouprule.yaml index 9a4d882b7f..f9fa6b4a8f 100644 --- a/examples-generated/ec2/v1beta1/securitygrouprule.yaml +++ b/examples-generated/ec2/v1beta1/securitygrouprule.yaml @@ -8,11 +8,11 @@ metadata: name: example spec: forProvider: - cidrBlocks: - - ${aws_vpc.example.cidr_block} + cidrBlocksRefs: + - name: example fromPort: 0 - ipv6CidrBlocks: - - ${aws_vpc.example.ipv6_cidr_block} + ipv6CidrBlocksRefs: + - name: example protocol: tcp region: us-west-1 securityGroupIdSelector: diff --git a/examples-generated/ec2/v1beta1/vpcendpointconnectionnotification.yaml b/examples-generated/ec2/v1beta1/vpcendpointconnectionnotification.yaml index a99400f84e..57164cc389 100644 --- a/examples-generated/ec2/v1beta1/vpcendpointconnectionnotification.yaml +++ b/examples-generated/ec2/v1beta1/vpcendpointconnectionnotification.yaml @@ -47,6 +47,6 @@ metadata: spec: forProvider: acceptanceRequired: false - networkLoadBalancerArns: - - ${aws_lb.test.arn} + networkLoadBalancerArnsRefs: + - name: test region: us-west-1 diff --git a/examples-generated/ec2/v1beta1/vpcendpointservice.yaml b/examples-generated/ec2/v1beta1/vpcendpointservice.yaml index 610cd7fcb8..56bc639bc0 100644 --- a/examples-generated/ec2/v1beta1/vpcendpointservice.yaml +++ b/examples-generated/ec2/v1beta1/vpcendpointservice.yaml @@ -9,6 +9,6 @@ metadata: spec: forProvider: acceptanceRequired: false - networkLoadBalancerArns: - - ${aws_lb.example.arn} + networkLoadBalancerArnsRefs: + - name: example region: us-west-1 diff --git a/examples-generated/elb/v1beta1/backendserverpolicy.yaml b/examples-generated/elb/v1beta1/backendserverpolicy.yaml index a99985d205..15b781e88f 100644 --- a/examples-generated/elb/v1beta1/backendserverpolicy.yaml +++ b/examples-generated/elb/v1beta1/backendserverpolicy.yaml @@ -12,8 +12,8 @@ spec: loadBalancerNameSelector: matchLabels: testing.upbound.io/example-name: wu-tang - policyNames: - - ${aws_load_balancer_policy.wu-tang-root-ca-backend-auth-policy.policy_name} + policyNamesRefs: + - name: wu-tang-root-ca-backend-auth-policy region: us-west-1 --- diff --git a/examples-generated/elb/v1beta1/listenerpolicy.yaml b/examples-generated/elb/v1beta1/listenerpolicy.yaml index eca0681175..5bfb71ba10 100644 --- a/examples-generated/elb/v1beta1/listenerpolicy.yaml +++ b/examples-generated/elb/v1beta1/listenerpolicy.yaml @@ -12,8 +12,8 @@ spec: matchLabels: testing.upbound.io/example-name: wu-tang loadBalancerPort: 443 - policyNames: - - ${aws_load_balancer_policy.wu-tang-ssl.policy_name} + policyNamesRefs: + - name: wu-tang-ssl region: us-west-1 --- diff --git a/examples-generated/elb/v1beta1/policy.yaml b/examples-generated/elb/v1beta1/policy.yaml index f052303e0b..c09c82fb15 100644 --- a/examples-generated/elb/v1beta1/policy.yaml +++ b/examples-generated/elb/v1beta1/policy.yaml @@ -60,8 +60,8 @@ spec: loadBalancerNameSelector: matchLabels: testing.upbound.io/example-name: wu-tang - policyNames: - - ${aws_load_balancer_policy.wu-tang-root-ca-backend-auth-policy.policy_name} + policyNamesRefs: + - name: wu-tang-root-ca-backend-auth-policy region: us-west-1 --- @@ -80,6 +80,6 @@ spec: matchLabels: testing.upbound.io/example-name: wu-tang loadBalancerPort: 443 - policyNames: - - ${aws_load_balancer_policy.wu-tang-ssl.policy_name} + policyNamesRefs: + - name: wu-tang-ssl region: us-west-1 diff --git a/examples-generated/gamelift/v1beta1/gamesessionqueue.yaml b/examples-generated/gamelift/v1beta1/gamesessionqueue.yaml index f0e75a36c8..c747b4ac58 100644 --- a/examples-generated/gamelift/v1beta1/gamesessionqueue.yaml +++ b/examples-generated/gamelift/v1beta1/gamesessionqueue.yaml @@ -8,9 +8,9 @@ metadata: name: test spec: forProvider: - destinations: - - ${aws_gamelift_fleet.us_west_2_fleet.arn} - - ${aws_gamelift_fleet.eu_central_1_fleet.arn} + destinationsRefs: + - name: us_west_2_fleet + - name: eu_central_1_fleet notificationTargetSelector: matchLabels: testing.upbound.io/example-name: game_session_queue_notifications diff --git a/examples-generated/lakeformation/v1beta1/datalakesettings.yaml b/examples-generated/lakeformation/v1beta1/datalakesettings.yaml index 0611116ea0..e53e6ec253 100644 --- a/examples-generated/lakeformation/v1beta1/datalakesettings.yaml +++ b/examples-generated/lakeformation/v1beta1/datalakesettings.yaml @@ -8,7 +8,7 @@ metadata: name: example spec: forProvider: - admins: - - ${aws_iam_user.test.arn} - - ${aws_iam_role.test.arn} + adminsRefs: + - name: test + - name: test region: us-west-1 diff --git a/examples-generated/medialive/v1beta2/input.yaml b/examples-generated/medialive/v1beta2/input.yaml index 999a163fd4..563da21d08 100644 --- a/examples-generated/medialive/v1beta2/input.yaml +++ b/examples-generated/medialive/v1beta2/input.yaml @@ -8,8 +8,8 @@ metadata: name: example spec: forProvider: - inputSecurityGroups: - - ${aws_medialive_input_security_group.example.id} + inputSecurityGroupsRefs: + - name: example name: example-input region: us-west-1 tags: diff --git a/examples-generated/neptune/v1beta1/eventsubscription.yaml b/examples-generated/neptune/v1beta1/eventsubscription.yaml index 00fb4bb3fe..409e1cee38 100644 --- a/examples-generated/neptune/v1beta1/eventsubscription.yaml +++ b/examples-generated/neptune/v1beta1/eventsubscription.yaml @@ -25,8 +25,8 @@ spec: snsTopicArnSelector: matchLabels: testing.upbound.io/example-name: default - sourceIds: - - ${aws_neptune_cluster_instance.example.id} + sourceIdsRefs: + - name: example sourceType: db-instance tags: env: test diff --git a/examples-generated/rds/v1beta1/clusterendpoint.yaml b/examples-generated/rds/v1beta1/clusterendpoint.yaml index 28f089c483..9a58e2bb60 100644 --- a/examples-generated/rds/v1beta1/clusterendpoint.yaml +++ b/examples-generated/rds/v1beta1/clusterendpoint.yaml @@ -12,9 +12,9 @@ spec: matchLabels: testing.upbound.io/example-name: default customEndpointType: READER - excludedMembers: - - ${aws_rds_cluster_instance.test1.id} - - ${aws_rds_cluster_instance.test2.id} + excludedMembersRefs: + - name: test1 + - name: test2 region: us-west-1 --- diff --git a/examples-generated/rds/v1beta1/eventsubscription.yaml b/examples-generated/rds/v1beta1/eventsubscription.yaml index 591e6dfded..918287c4cc 100644 --- a/examples-generated/rds/v1beta1/eventsubscription.yaml +++ b/examples-generated/rds/v1beta1/eventsubscription.yaml @@ -23,8 +23,8 @@ spec: snsTopicSelector: matchLabels: testing.upbound.io/example-name: default - sourceIds: - - ${aws_db_instance.default.identifier} + sourceIdsRefs: + - name: default sourceType: db-instance --- diff --git a/examples-generated/rds/v1beta1/proxy.yaml b/examples-generated/rds/v1beta1/proxy.yaml index a6c42014a5..306cbb6acc 100644 --- a/examples-generated/rds/v1beta1/proxy.yaml +++ b/examples-generated/rds/v1beta1/proxy.yaml @@ -28,5 +28,5 @@ spec: Name: example vpcSecurityGroupIdRefs: - name: example - vpcSubnetIds: - - ${aws_subnet.example.id} + vpcSubnetIdsRefs: + - name: example diff --git a/examples-generated/rds/v1beta1/proxytarget.yaml b/examples-generated/rds/v1beta1/proxytarget.yaml index 95185c3165..5f3ca9b4b2 100644 --- a/examples-generated/rds/v1beta1/proxytarget.yaml +++ b/examples-generated/rds/v1beta1/proxytarget.yaml @@ -49,8 +49,8 @@ spec: Name: example vpcSecurityGroupIdRefs: - name: example - vpcSubnetIds: - - ${aws_subnet.example.id} + vpcSubnetIdsRefs: + - name: example --- diff --git a/examples-generated/rds/v1beta2/proxydefaulttargetgroup.yaml b/examples-generated/rds/v1beta2/proxydefaulttargetgroup.yaml index 72ebf71a87..86ab1b9acc 100644 --- a/examples-generated/rds/v1beta2/proxydefaulttargetgroup.yaml +++ b/examples-generated/rds/v1beta2/proxydefaulttargetgroup.yaml @@ -52,5 +52,5 @@ spec: Name: example vpcSecurityGroupIdRefs: - name: example - vpcSubnetIds: - - ${aws_subnet.example.id} + vpcSubnetIdsRefs: + - name: example diff --git a/examples-generated/redshift/v1beta1/eventsubscription.yaml b/examples-generated/redshift/v1beta1/eventsubscription.yaml index 769594f026..2519488d87 100644 --- a/examples-generated/redshift/v1beta1/eventsubscription.yaml +++ b/examples-generated/redshift/v1beta1/eventsubscription.yaml @@ -18,8 +18,8 @@ spec: snsTopicArnSelector: matchLabels: testing.upbound.io/example-name: default - sourceIds: - - ${aws_redshift_cluster.default.id} + sourceIdsRefs: + - name: default sourceType: cluster tags: Name: default diff --git a/examples-generated/route53/v1beta2/record.yaml b/examples-generated/route53/v1beta2/record.yaml index 0a4cb8a7b7..0f16515bc6 100644 --- a/examples-generated/route53/v1beta2/record.yaml +++ b/examples-generated/route53/v1beta2/record.yaml @@ -9,8 +9,8 @@ metadata: spec: forProvider: name: www.example.com - records: - - ${aws_eip.lb.public_ip} + recordsRefs: + - name: lb region: us-west-1 ttl: 300 type: A diff --git a/examples-generated/s3control/v1beta2/storagelensconfiguration.yaml b/examples-generated/s3control/v1beta2/storagelensconfiguration.yaml index 168beb4c53..4ff2067dd0 100644 --- a/examples-generated/s3control/v1beta2/storagelensconfiguration.yaml +++ b/examples-generated/s3control/v1beta2/storagelensconfiguration.yaml @@ -32,8 +32,8 @@ spec: outputSchemaVersion: V_1 enabled: true exclude: - - buckets: - - ${aws_s3_bucket.b1.arn} - - ${aws_s3_bucket.b2.arn} + - bucketsRefs: + - name: b1 + - name: b2 regions: - us-east-2 diff --git a/examples-generated/ses/v1beta1/domaindkim.yaml b/examples-generated/ses/v1beta1/domaindkim.yaml index 246b82b767..ce54ce43f2 100644 --- a/examples-generated/ses/v1beta1/domaindkim.yaml +++ b/examples-generated/ses/v1beta1/domaindkim.yaml @@ -24,8 +24,8 @@ spec: forProvider: count: 3 name: ${aws_ses_domain_dkim.example.dkim_tokens[count.index]}._domainkey - records: - - ${aws_ses_domain_dkim.example.dkim_tokens[count.index]}.dkim.amazonses.com + recordsRefs: + - name: example region: us-west-1 ttl: "600" type: CNAME diff --git a/examples-generated/ses/v1beta1/domainmailfrom.yaml b/examples-generated/ses/v1beta1/domainmailfrom.yaml index 9c6f3bc932..582f4697b0 100644 --- a/examples-generated/ses/v1beta1/domainmailfrom.yaml +++ b/examples-generated/ses/v1beta1/domainmailfrom.yaml @@ -27,8 +27,8 @@ metadata: spec: forProvider: name: example.com - records: - - 10 feedback-smtp.us-east-1.amazonses.com + recordsRefs: + - name: example region: us-west-1 ttl: "600" type: MX @@ -49,8 +49,8 @@ metadata: spec: forProvider: name: example.com - records: - - v=spf1 include:amazonses.com ~all + recordsRefs: + - name: example region: us-west-1 ttl: "600" type: TXT diff --git a/examples-generated/ssm/v1beta2/association.yaml b/examples-generated/ssm/v1beta2/association.yaml index f876548644..f7843492a9 100644 --- a/examples-generated/ssm/v1beta2/association.yaml +++ b/examples-generated/ssm/v1beta2/association.yaml @@ -14,5 +14,5 @@ spec: region: us-west-1 targets: - key: InstanceIds - values: - - ${aws_instance.example.id} + valuesRefs: + - name: example diff --git a/examples-generated/ssm/v1beta2/maintenancewindowtask.yaml b/examples-generated/ssm/v1beta2/maintenancewindowtask.yaml index 238f308361..653ef636af 100644 --- a/examples-generated/ssm/v1beta2/maintenancewindowtask.yaml +++ b/examples-generated/ssm/v1beta2/maintenancewindowtask.yaml @@ -14,8 +14,8 @@ spec: region: us-west-1 targets: - key: InstanceIds - values: - - ${aws_instance.example.id} + valuesRefs: + - name: example taskArnSelector: matchLabels: testing.upbound.io/example-name: example @@ -24,8 +24,8 @@ spec: - documentVersion: $LATEST parameter: - name: InstanceId - values: - - ${aws_instance.example.id} + valuesRefs: + - name: example taskType: AUTOMATION windowIdSelector: matchLabels: diff --git a/package/crds/apigateway.aws.upbound.io_restapis.yaml b/package/crds/apigateway.aws.upbound.io_restapis.yaml index f8dd5da972..49d8f5cff1 100644 --- a/package/crds/apigateway.aws.upbound.io_restapis.yaml +++ b/package/crds/apigateway.aws.upbound.io_restapis.yaml @@ -880,6 +880,85 @@ spec: type: string type: array x-kubernetes-list-type: set + vpcEndpointIdsRefs: + description: References to VPCEndpoint in ec2 to populate + vpcEndpointIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + vpcEndpointIdsSelector: + description: Selector for a list of VPCEndpoint in ec2 to + populate vpcEndpointIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object failOnWarnings: description: Whether warnings while API Gateway is creating or @@ -1024,6 +1103,85 @@ spec: type: string type: array x-kubernetes-list-type: set + vpcEndpointIdsRefs: + description: References to VPCEndpoint in ec2 to populate + vpcEndpointIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + vpcEndpointIdsSelector: + description: Selector for a list of VPCEndpoint in ec2 to + populate vpcEndpointIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object failOnWarnings: description: Whether warnings while API Gateway is creating or diff --git a/package/crds/appsync.aws.upbound.io_resolvers.yaml b/package/crds/appsync.aws.upbound.io_resolvers.yaml index 26838cf938..b7f6e3e933 100644 --- a/package/crds/appsync.aws.upbound.io_resolvers.yaml +++ b/package/crds/appsync.aws.upbound.io_resolvers.yaml @@ -1142,6 +1142,85 @@ spec: items: type: string type: array + functionsRefs: + description: References to Function in appsync to populate + functions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + functionsSelector: + description: Selector for a list of Function in appsync to + populate functions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object region: description: Region is the region you'd like your resource to @@ -1334,6 +1413,85 @@ spec: items: type: string type: array + functionsRefs: + description: References to Function in appsync to populate + functions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + functionsSelector: + description: Selector for a list of Function in appsync to + populate functions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object requestTemplate: description: Request mapping template for UNIT resolver or 'before diff --git a/package/crds/autoscaling.aws.upbound.io_notifications.yaml b/package/crds/autoscaling.aws.upbound.io_notifications.yaml index 918183e5f8..0745ac5ef3 100644 --- a/package/crds/autoscaling.aws.upbound.io_notifications.yaml +++ b/package/crds/autoscaling.aws.upbound.io_notifications.yaml @@ -79,6 +79,85 @@ spec: type: string type: array x-kubernetes-list-type: set + groupNamesRefs: + description: References to AutoscalingGroup in autoscaling to + populate groupNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + groupNamesSelector: + description: Selector for a list of AutoscalingGroup in autoscaling + to populate groupNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object notifications: description: |- List of Notification Types that trigger @@ -190,6 +269,85 @@ spec: type: string type: array x-kubernetes-list-type: set + groupNamesRefs: + description: References to AutoscalingGroup in autoscaling to + populate groupNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + groupNamesSelector: + description: Selector for a list of AutoscalingGroup in autoscaling + to populate groupNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object notifications: description: |- List of Notification Types that trigger @@ -444,10 +602,6 @@ spec: - forProvider type: object x-kubernetes-validations: - - message: spec.forProvider.groupNames is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.groupNames) - || (has(self.initProvider) && has(self.initProvider.groupNames))' - message: spec.forProvider.notifications is a required parameter rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies || ''Update'' in self.managementPolicies) || has(self.forProvider.notifications) diff --git a/package/crds/backup.aws.upbound.io_selections.yaml b/package/crds/backup.aws.upbound.io_selections.yaml index 49f8123f06..5163336332 100644 --- a/package/crds/backup.aws.upbound.io_selections.yaml +++ b/package/crds/backup.aws.upbound.io_selections.yaml @@ -216,6 +216,84 @@ spec: type: string type: array x-kubernetes-list-type: set + notResourcesRefs: + description: References to Instance in rds to populate notResources. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + notResourcesSelector: + description: Selector for a list of Instance in rds to populate + notResources. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object planId: description: The backup plan ID to be associated with the selection of resources. @@ -306,6 +384,84 @@ spec: type: string type: array x-kubernetes-list-type: set + resourcesRefs: + description: References to Instance in rds to populate resources. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + resourcesSelector: + description: Selector for a list of Instance in rds to populate + resources. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object selectionTag: description: Tag-based conditions used to specify a set of resources to assign to a backup plan. @@ -483,6 +639,84 @@ spec: type: string type: array x-kubernetes-list-type: set + notResourcesRefs: + description: References to Instance in rds to populate notResources. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + notResourcesSelector: + description: Selector for a list of Instance in rds to populate + notResources. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object planId: description: The backup plan ID to be associated with the selection of resources. @@ -569,6 +803,84 @@ spec: type: string type: array x-kubernetes-list-type: set + resourcesRefs: + description: References to Instance in rds to populate resources. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + resourcesSelector: + description: Selector for a list of Instance in rds to populate + resources. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object selectionTag: description: Tag-based conditions used to specify a set of resources to assign to a backup plan. diff --git a/package/crds/budgets.aws.upbound.io_budgetactions.yaml b/package/crds/budgets.aws.upbound.io_budgetactions.yaml index edbe030d41..23760e3b58 100644 --- a/package/crds/budgets.aws.upbound.io_budgetactions.yaml +++ b/package/crds/budgets.aws.upbound.io_budgetactions.yaml @@ -1478,6 +1478,84 @@ spec: type: string type: array x-kubernetes-list-type: set + rolesRefs: + description: References to Role in iam to populate roles. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + rolesSelector: + description: Selector for a list of Role in iam to populate + roles. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object users: description: A list of users to be attached. There must be at least one user. @@ -1848,6 +1926,84 @@ spec: type: string type: array x-kubernetes-list-type: set + rolesRefs: + description: References to Role in iam to populate roles. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + rolesSelector: + description: Selector for a list of Role in iam to populate + roles. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object users: description: A list of users to be attached. There must be at least one user. diff --git a/package/crds/cloudwatch.aws.upbound.io_metricalarms.yaml b/package/crds/cloudwatch.aws.upbound.io_metricalarms.yaml index 7279f610af..c8e98c6663 100644 --- a/package/crds/cloudwatch.aws.upbound.io_metricalarms.yaml +++ b/package/crds/cloudwatch.aws.upbound.io_metricalarms.yaml @@ -1006,6 +1006,84 @@ spec: type: string type: array x-kubernetes-list-type: set + alarmActionsRefs: + description: References to Policy in autoscaling to populate alarmActions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + alarmActionsSelector: + description: Selector for a list of Policy in autoscaling to populate + alarmActions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object alarmDescription: description: The description for the alarm. type: string @@ -1153,6 +1231,83 @@ spec: type: string type: array x-kubernetes-list-type: set + okActionsRefs: + description: References to Topic in sns to populate okActions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + okActionsSelector: + description: Selector for a list of Topic in sns to populate okActions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object period: description: |- The period in seconds over which the specified statistic is applied. @@ -1220,6 +1375,84 @@ spec: type: string type: array x-kubernetes-list-type: set + alarmActionsRefs: + description: References to Policy in autoscaling to populate alarmActions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + alarmActionsSelector: + description: Selector for a list of Policy in autoscaling to populate + alarmActions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object alarmDescription: description: The description for the alarm. type: string @@ -1367,6 +1600,83 @@ spec: type: string type: array x-kubernetes-list-type: set + okActionsRefs: + description: References to Topic in sns to populate okActions. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + okActionsSelector: + description: Selector for a list of Topic in sns to populate okActions. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object period: description: |- The period in seconds over which the specified statistic is applied. diff --git a/package/crds/connect.aws.upbound.io_users.yaml b/package/crds/connect.aws.upbound.io_users.yaml index d992c40b1e..2dfb34cd61 100644 --- a/package/crds/connect.aws.upbound.io_users.yaml +++ b/package/crds/connect.aws.upbound.io_users.yaml @@ -1311,6 +1311,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityProfileIdsRefs: + description: References to SecurityProfile in connect to populate + securityProfileIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityProfileIdsSelector: + description: Selector for a list of SecurityProfile in connect + to populate securityProfileIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object tags: additionalProperties: type: string @@ -1590,6 +1669,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityProfileIdsRefs: + description: References to SecurityProfile in connect to populate + securityProfileIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityProfileIdsSelector: + description: Selector for a list of SecurityProfile in connect + to populate securityProfileIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object tags: additionalProperties: type: string @@ -1773,10 +1931,6 @@ spec: rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies || ''Update'' in self.managementPolicies) || has(self.forProvider.phoneConfig) || (has(self.initProvider) && has(self.initProvider.phoneConfig))' - - message: spec.forProvider.securityProfileIds is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.securityProfileIds) - || (has(self.initProvider) && has(self.initProvider.securityProfileIds))' status: description: UserStatus defines the observed state of User. properties: diff --git a/package/crds/deploy.aws.upbound.io_deploymentgroups.yaml b/package/crds/deploy.aws.upbound.io_deploymentgroups.yaml index 0dd19f18be..686cea6b56 100644 --- a/package/crds/deploy.aws.upbound.io_deploymentgroups.yaml +++ b/package/crds/deploy.aws.upbound.io_deploymentgroups.yaml @@ -2915,6 +2915,85 @@ spec: type: string type: array x-kubernetes-list-type: set + listenerArnsRefs: + description: References to LBListener in elbv2 to + populate listenerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + listenerArnsSelector: + description: Selector for a list of LBListener in + elbv2 to populate listenerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object targetGroup: description: Configuration blocks for a target group within @@ -3692,6 +3771,85 @@ spec: type: string type: array x-kubernetes-list-type: set + listenerArnsRefs: + description: References to LBListener in elbv2 to + populate listenerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + listenerArnsSelector: + description: Selector for a list of LBListener in + elbv2 to populate listenerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object targetGroup: description: Configuration blocks for a target group within diff --git a/package/crds/dms.aws.upbound.io_eventsubscriptions.yaml b/package/crds/dms.aws.upbound.io_eventsubscriptions.yaml index 5dd23c7b2e..eab5c72900 100644 --- a/package/crds/dms.aws.upbound.io_eventsubscriptions.yaml +++ b/package/crds/dms.aws.upbound.io_eventsubscriptions.yaml @@ -171,6 +171,85 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to ReplicationTask in dms to populate + sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of ReplicationTask in dms to + populate sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: 'Type of source for events. Valid values: replication-instance or replication-task' @@ -291,6 +370,85 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to ReplicationTask in dms to populate + sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of ReplicationTask in dms to + populate sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: 'Type of source for events. Valid values: replication-instance or replication-task' diff --git a/package/crds/docdb.aws.upbound.io_eventsubscriptions.yaml b/package/crds/docdb.aws.upbound.io_eventsubscriptions.yaml index 85fb352953..87f80b789d 100644 --- a/package/crds/docdb.aws.upbound.io_eventsubscriptions.yaml +++ b/package/crds/docdb.aws.upbound.io_eventsubscriptions.yaml @@ -176,6 +176,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Cluster in docdb to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Cluster in docdb to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-cluster, db-parameter-group, @@ -303,6 +381,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Cluster in docdb to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Cluster in docdb to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-cluster, db-parameter-group, diff --git a/package/crds/ec2.aws.upbound.io_natgateways.yaml b/package/crds/ec2.aws.upbound.io_natgateways.yaml index 1b47357da8..08111c9a4e 100644 --- a/package/crds/ec2.aws.upbound.io_natgateways.yaml +++ b/package/crds/ec2.aws.upbound.io_natgateways.yaml @@ -171,6 +171,83 @@ spec: type: string type: array x-kubernetes-list-type: set + secondaryAllocationIdsRefs: + description: References to EIP in ec2 to populate secondaryAllocationIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + secondaryAllocationIdsSelector: + description: Selector for a list of EIP in ec2 to populate secondaryAllocationIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object secondaryPrivateIpAddressCount: description: '[Private NAT Gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT Gateway.' @@ -376,6 +453,83 @@ spec: type: string type: array x-kubernetes-list-type: set + secondaryAllocationIdsRefs: + description: References to EIP in ec2 to populate secondaryAllocationIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + secondaryAllocationIdsSelector: + description: Selector for a list of EIP in ec2 to populate secondaryAllocationIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object secondaryPrivateIpAddressCount: description: '[Private NAT Gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT Gateway.' diff --git a/package/crds/ec2.aws.upbound.io_securitygrouprules.yaml b/package/crds/ec2.aws.upbound.io_securitygrouprules.yaml index 38ac17ec00..920ba6a205 100644 --- a/package/crds/ec2.aws.upbound.io_securitygrouprules.yaml +++ b/package/crds/ec2.aws.upbound.io_securitygrouprules.yaml @@ -79,6 +79,83 @@ spec: items: type: string type: array + cidrBlocksRefs: + description: References to VPC in ec2 to populate cidrBlocks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + cidrBlocksSelector: + description: Selector for a list of VPC in ec2 to populate cidrBlocks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object description: description: Description of the rule. type: string @@ -92,6 +169,83 @@ spec: items: type: string type: array + ipv6CidrBlocksRefs: + description: References to VPC in ec2 to populate ipv6CidrBlocks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + ipv6CidrBlocksSelector: + description: Selector for a list of VPC in ec2 to populate ipv6CidrBlocks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object prefixListIdRefs: description: References to ManagedPrefixList in ec2 to populate prefixListIds. @@ -375,6 +529,83 @@ spec: items: type: string type: array + cidrBlocksRefs: + description: References to VPC in ec2 to populate cidrBlocks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + cidrBlocksSelector: + description: Selector for a list of VPC in ec2 to populate cidrBlocks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object description: description: Description of the rule. type: string @@ -388,6 +619,83 @@ spec: items: type: string type: array + ipv6CidrBlocksRefs: + description: References to VPC in ec2 to populate ipv6CidrBlocks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + ipv6CidrBlocksSelector: + description: Selector for a list of VPC in ec2 to populate ipv6CidrBlocks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object prefixListIdRefs: description: References to ManagedPrefixList in ec2 to populate prefixListIds. diff --git a/package/crds/ec2.aws.upbound.io_vpcendpointservices.yaml b/package/crds/ec2.aws.upbound.io_vpcendpointservices.yaml index 5fe72f48d8..02912aaf56 100644 --- a/package/crds/ec2.aws.upbound.io_vpcendpointservices.yaml +++ b/package/crds/ec2.aws.upbound.io_vpcendpointservices.yaml @@ -85,6 +85,83 @@ spec: type: string type: array x-kubernetes-list-type: set + gatewayLoadBalancerArnsRefs: + description: References to LB in elbv2 to populate gatewayLoadBalancerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + gatewayLoadBalancerArnsSelector: + description: Selector for a list of LB in elbv2 to populate gatewayLoadBalancerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object networkLoadBalancerArns: description: Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service. @@ -92,6 +169,83 @@ spec: type: string type: array x-kubernetes-list-type: set + networkLoadBalancerArnsRefs: + description: References to LB in elbv2 to populate networkLoadBalancerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + networkLoadBalancerArnsSelector: + description: Selector for a list of LB in elbv2 to populate networkLoadBalancerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object privateDnsName: description: The private DNS name for the service. type: string @@ -140,6 +294,83 @@ spec: type: string type: array x-kubernetes-list-type: set + gatewayLoadBalancerArnsRefs: + description: References to LB in elbv2 to populate gatewayLoadBalancerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + gatewayLoadBalancerArnsSelector: + description: Selector for a list of LB in elbv2 to populate gatewayLoadBalancerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object networkLoadBalancerArns: description: Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service. @@ -147,6 +378,83 @@ spec: type: string type: array x-kubernetes-list-type: set + networkLoadBalancerArnsRefs: + description: References to LB in elbv2 to populate networkLoadBalancerArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + networkLoadBalancerArnsSelector: + description: Selector for a list of LB in elbv2 to populate networkLoadBalancerArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object privateDnsName: description: The private DNS name for the service. type: string diff --git a/package/crds/elasticsearch.aws.upbound.io_domains.yaml b/package/crds/elasticsearch.aws.upbound.io_domains.yaml index 9fa5d5fb73..a953e8f6f3 100644 --- a/package/crds/elasticsearch.aws.upbound.io_domains.yaml +++ b/package/crds/elasticsearch.aws.upbound.io_domains.yaml @@ -2013,6 +2013,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 to + populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in. @@ -2430,6 +2509,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 to + populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in. diff --git a/package/crds/elb.aws.upbound.io_backendserverpolicies.yaml b/package/crds/elb.aws.upbound.io_backendserverpolicies.yaml index 8c73e31753..dedc8b4894 100644 --- a/package/crds/elb.aws.upbound.io_backendserverpolicies.yaml +++ b/package/crds/elb.aws.upbound.io_backendserverpolicies.yaml @@ -159,6 +159,84 @@ spec: type: string type: array x-kubernetes-list-type: set + policyNamesRefs: + description: References to Policy in elb to populate policyNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + policyNamesSelector: + description: Selector for a list of Policy in elb to populate + policyNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object region: description: Region is the region you'd like your resource to be created in. @@ -265,6 +343,84 @@ spec: type: string type: array x-kubernetes-list-type: set + policyNamesRefs: + description: References to Policy in elb to populate policyNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + policyNamesSelector: + description: Selector for a list of Policy in elb to populate + policyNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object managementPolicies: default: diff --git a/package/crds/elb.aws.upbound.io_listenerpolicies.yaml b/package/crds/elb.aws.upbound.io_listenerpolicies.yaml index 17de5960e4..993db460f6 100644 --- a/package/crds/elb.aws.upbound.io_listenerpolicies.yaml +++ b/package/crds/elb.aws.upbound.io_listenerpolicies.yaml @@ -160,6 +160,84 @@ spec: type: string type: array x-kubernetes-list-type: set + policyNamesRefs: + description: References to Policy in elb to populate policyNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + policyNamesSelector: + description: Selector for a list of Policy in elb to populate + policyNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object region: description: Region is the region you'd like your resource to be created in. @@ -274,6 +352,84 @@ spec: type: string type: array x-kubernetes-list-type: set + policyNamesRefs: + description: References to Policy in elb to populate policyNames. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + policyNamesSelector: + description: Selector for a list of Policy in elb to populate + policyNames. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object triggers: additionalProperties: type: string diff --git a/package/crds/firehose.aws.upbound.io_deliverystreams.yaml b/package/crds/firehose.aws.upbound.io_deliverystreams.yaml index b41bef4669..ef80856722 100644 --- a/package/crds/firehose.aws.upbound.io_deliverystreams.yaml +++ b/package/crds/firehose.aws.upbound.io_deliverystreams.yaml @@ -14127,6 +14127,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: A list of subnet IDs to associate with Kinesis Firehose. @@ -14134,6 +14213,84 @@ spec: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: object extendedS3Configuration: @@ -16565,6 +16722,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: A list of subnet IDs to associate with Kinesis Firehose. @@ -16572,6 +16808,84 @@ spec: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: object opensearchserverlessConfiguration: @@ -19095,58 +19409,229 @@ spec: type: string type: object type: object - type: object - typeName: - description: The Elasticsearch type name with maximum length - of 100 characters. - type: string - vpcConfig: - description: The VPC configuration for the delivery stream - to connect to Elastic Search associated with the VPC. See - vpc_config block below for details. - properties: - roleArn: - description: The ARN of the IAM role to be assumed by - Firehose for calling the Amazon EC2 configuration API - and for creating network interfaces. Make sure role - has necessary IAM permissions - type: string - roleArnRef: - description: Reference to a Role in iam to populate roleArn. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - roleArnSelector: - description: Selector for a Role in iam to populate roleArn. + type: object + typeName: + description: The Elasticsearch type name with maximum length + of 100 characters. + type: string + vpcConfig: + description: The VPC configuration for the delivery stream + to connect to Elastic Search associated with the VPC. See + vpc_config block below for details. + properties: + roleArn: + description: The ARN of the IAM role to be assumed by + Firehose for calling the Amazon EC2 configuration API + and for creating network interfaces. Make sure role + has necessary IAM permissions + type: string + roleArnRef: + description: Reference to a Role in iam to populate roleArn. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + roleArnSelector: + description: Selector for a Role in iam to populate roleArn. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + securityGroupIds: + description: A list of security group IDs to associate + with Kinesis Firehose. + items: + type: string + type: array + x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + subnetIds: + description: A list of subnet IDs to associate with Kinesis + Firehose. + items: + type: string + type: array + x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. properties: matchControllerRef: description: |- @@ -19185,20 +19670,6 @@ spec: type: string type: object type: object - securityGroupIds: - description: A list of security group IDs to associate - with Kinesis Firehose. - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIds: - description: A list of subnet IDs to associate with Kinesis - Firehose. - items: - type: string - type: array - x-kubernetes-list-type: set type: object type: object extendedS3Configuration: @@ -21626,6 +22097,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: A list of subnet IDs to associate with Kinesis Firehose. @@ -21633,6 +22183,84 @@ spec: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: object opensearchserverlessConfiguration: diff --git a/package/crds/gamelift.aws.upbound.io_gamesessionqueues.yaml b/package/crds/gamelift.aws.upbound.io_gamesessionqueues.yaml index 7d40219efb..6b9d8703cd 100644 --- a/package/crds/gamelift.aws.upbound.io_gamesessionqueues.yaml +++ b/package/crds/gamelift.aws.upbound.io_gamesessionqueues.yaml @@ -83,6 +83,84 @@ spec: items: type: string type: array + destinationsRefs: + description: References to Fleet in gamelift to populate destinations. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + destinationsSelector: + description: Selector for a list of Fleet in gamelift to populate + destinations. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object notificationTarget: description: An SNS topic ARN that is set up to receive game session placement notifications. @@ -218,6 +296,84 @@ spec: items: type: string type: array + destinationsRefs: + description: References to Fleet in gamelift to populate destinations. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + destinationsSelector: + description: Selector for a list of Fleet in gamelift to populate + destinations. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object notificationTarget: description: An SNS topic ARN that is set up to receive game session placement notifications. diff --git a/package/crds/glue.aws.upbound.io_connections.yaml b/package/crds/glue.aws.upbound.io_connections.yaml index 242659e14c..b1166f0875 100644 --- a/package/crds/glue.aws.upbound.io_connections.yaml +++ b/package/crds/glue.aws.upbound.io_connections.yaml @@ -967,6 +967,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdListRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIdList. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdListSelector: + description: Selector for a list of SecurityGroup in ec2 to + populate securityGroupIdList. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetId: description: The subnet ID used by the connection. type: string @@ -1180,6 +1259,85 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdListRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIdList. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdListSelector: + description: Selector for a list of SecurityGroup in ec2 to + populate securityGroupIdList. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetId: description: The subnet ID used by the connection. type: string diff --git a/package/crds/glue.aws.upbound.io_crawlers.yaml b/package/crds/glue.aws.upbound.io_crawlers.yaml index 4b08865de2..ea1ad69559 100644 --- a/package/crds/glue.aws.upbound.io_crawlers.yaml +++ b/package/crds/glue.aws.upbound.io_crawlers.yaml @@ -2196,6 +2196,85 @@ spec: items: type: string type: array + tablesRefs: + description: References to CatalogTable in glue to populate + tables. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + tablesSelector: + description: Selector for a list of CatalogTable in glue + to populate tables. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array classifiers: @@ -2901,6 +2980,85 @@ spec: items: type: string type: array + tablesRefs: + description: References to CatalogTable in glue to populate + tables. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + tablesSelector: + description: Selector for a list of CatalogTable in glue + to populate tables. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array classifiers: diff --git a/package/crds/iam.aws.upbound.io_roles.yaml b/package/crds/iam.aws.upbound.io_roles.yaml index 34fdc6a6b2..0eaab9aafc 100644 --- a/package/crds/iam.aws.upbound.io_roles.yaml +++ b/package/crds/iam.aws.upbound.io_roles.yaml @@ -113,6 +113,84 @@ spec: type: string type: array x-kubernetes-list-type: set + managedPolicyArnsRefs: + description: References to Policy in iam to populate managedPolicyArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + managedPolicyArnsSelector: + description: Selector for a list of Policy in iam to populate + managedPolicyArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object maxSessionDuration: description: Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value @@ -187,6 +265,84 @@ spec: type: string type: array x-kubernetes-list-type: set + managedPolicyArnsRefs: + description: References to Policy in iam to populate managedPolicyArns. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + managedPolicyArnsSelector: + description: Selector for a list of Policy in iam to populate + managedPolicyArns. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object maxSessionDuration: description: Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value diff --git a/package/crds/kinesisanalyticsv2.aws.upbound.io_applications.yaml b/package/crds/kinesisanalyticsv2.aws.upbound.io_applications.yaml index 1c08ec01b0..202276681f 100644 --- a/package/crds/kinesisanalyticsv2.aws.upbound.io_applications.yaml +++ b/package/crds/kinesisanalyticsv2.aws.upbound.io_applications.yaml @@ -4518,12 +4518,169 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: The Subnet IDs used by the VPC configuration. items: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: object applicationMode: @@ -5671,12 +5828,169 @@ spec: type: string type: array x-kubernetes-list-type: set + securityGroupIdsRefs: + description: References to SecurityGroup in ec2 to populate + securityGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + securityGroupIdsSelector: + description: Selector for a list of SecurityGroup in ec2 + to populate securityGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object subnetIds: description: The Subnet IDs used by the VPC configuration. items: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: object applicationMode: diff --git a/package/crds/lakeformation.aws.upbound.io_datalakesettings.yaml b/package/crds/lakeformation.aws.upbound.io_datalakesettings.yaml index d2d77b7ec8..8c15448a63 100644 --- a/package/crds/lakeformation.aws.upbound.io_datalakesettings.yaml +++ b/package/crds/lakeformation.aws.upbound.io_datalakesettings.yaml @@ -80,6 +80,83 @@ spec: type: string type: array x-kubernetes-list-type: set + adminsRefs: + description: References to User in iam to populate admins. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + adminsSelector: + description: Selector for a list of User in iam to populate admins. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object allowExternalDataFiltering: description: Whether to allow Amazon EMR clusters to access data managed by Lake Formation. @@ -202,6 +279,83 @@ spec: type: string type: array x-kubernetes-list-type: set + adminsRefs: + description: References to User in iam to populate admins. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + adminsSelector: + description: Selector for a list of User in iam to populate admins. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object allowExternalDataFiltering: description: Whether to allow Amazon EMR clusters to access data managed by Lake Formation. diff --git a/package/crds/lambda.aws.upbound.io_functions.yaml b/package/crds/lambda.aws.upbound.io_functions.yaml index 2182e2198a..093efea87c 100644 --- a/package/crds/lambda.aws.upbound.io_functions.yaml +++ b/package/crds/lambda.aws.upbound.io_functions.yaml @@ -2570,6 +2570,85 @@ spec: items: type: string type: array + layersRefs: + description: References to LayerVersion in lambda to populate + layers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + layersSelector: + description: Selector for a list of LayerVersion in lambda to + populate layers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object loggingConfig: description: Configuration block used to specify advanced logging settings. Detailed below. @@ -3370,6 +3449,85 @@ spec: items: type: string type: array + layersRefs: + description: References to LayerVersion in lambda to populate + layers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + layersSelector: + description: Selector for a list of LayerVersion in lambda to + populate layers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object loggingConfig: description: Configuration block used to specify advanced logging settings. Detailed below. diff --git a/package/crds/medialive.aws.upbound.io_inputs.yaml b/package/crds/medialive.aws.upbound.io_inputs.yaml index d48fcd5b75..d61feb23cf 100644 --- a/package/crds/medialive.aws.upbound.io_inputs.yaml +++ b/package/crds/medialive.aws.upbound.io_inputs.yaml @@ -856,6 +856,85 @@ spec: items: type: string type: array + inputSecurityGroupsRefs: + description: References to InputSecurityGroup in medialive to + populate inputSecurityGroups. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + inputSecurityGroupsSelector: + description: Selector for a list of InputSecurityGroup in medialive + to populate inputSecurityGroups. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object mediaConnectFlows: description: A list of the MediaConnect Flows. See Media Connect Flows for more details. @@ -1036,6 +1115,85 @@ spec: items: type: string type: array + inputSecurityGroupsRefs: + description: References to InputSecurityGroup in medialive to + populate inputSecurityGroups. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + inputSecurityGroupsSelector: + description: Selector for a list of InputSecurityGroup in medialive + to populate inputSecurityGroups. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object mediaConnectFlows: description: A list of the MediaConnect Flows. See Media Connect Flows for more details. diff --git a/package/crds/neptune.aws.upbound.io_eventsubscriptions.yaml b/package/crds/neptune.aws.upbound.io_eventsubscriptions.yaml index bf6b3989a3..af9d8a0ff7 100644 --- a/package/crds/neptune.aws.upbound.io_eventsubscriptions.yaml +++ b/package/crds/neptune.aws.upbound.io_eventsubscriptions.yaml @@ -175,6 +175,85 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to ClusterInstance in neptune to populate + sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of ClusterInstance in neptune + to populate sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, @@ -301,6 +380,85 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to ClusterInstance in neptune to populate + sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of ClusterInstance in neptune + to populate sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, diff --git a/package/crds/rds.aws.upbound.io_clusterendpoints.yaml b/package/crds/rds.aws.upbound.io_clusterendpoints.yaml index f459982b9a..6bf3c9be49 100644 --- a/package/crds/rds.aws.upbound.io_clusterendpoints.yaml +++ b/package/crds/rds.aws.upbound.io_clusterendpoints.yaml @@ -162,6 +162,85 @@ spec: type: string type: array x-kubernetes-list-type: set + excludedMembersRefs: + description: References to ClusterInstance in rds to populate + excludedMembers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + excludedMembersSelector: + description: Selector for a list of ClusterInstance in rds to + populate excludedMembers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object region: description: Region is the region you'd like your resource to be created in. @@ -173,6 +252,85 @@ spec: type: string type: array x-kubernetes-list-type: set + staticMembersRefs: + description: References to ClusterInstance in rds to populate + staticMembers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + staticMembersSelector: + description: Selector for a list of ClusterInstance in rds to + populate staticMembers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object tags: additionalProperties: type: string @@ -284,6 +442,85 @@ spec: type: string type: array x-kubernetes-list-type: set + excludedMembersRefs: + description: References to ClusterInstance in rds to populate + excludedMembers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + excludedMembersSelector: + description: Selector for a list of ClusterInstance in rds to + populate excludedMembers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object staticMembers: description: List of DB instance identifiers that are part of the custom endpoint group. Conflicts with excluded_members. @@ -291,6 +528,85 @@ spec: type: string type: array x-kubernetes-list-type: set + staticMembersRefs: + description: References to ClusterInstance in rds to populate + staticMembers. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + staticMembersSelector: + description: Selector for a list of ClusterInstance in rds to + populate staticMembers. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object tags: additionalProperties: type: string diff --git a/package/crds/rds.aws.upbound.io_eventsubscriptions.yaml b/package/crds/rds.aws.upbound.io_eventsubscriptions.yaml index a33bfd134c..508d8ec911 100644 --- a/package/crds/rds.aws.upbound.io_eventsubscriptions.yaml +++ b/package/crds/rds.aws.upbound.io_eventsubscriptions.yaml @@ -175,6 +175,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Instance in rds to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Instance in rds to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, @@ -301,6 +379,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Instance in rds to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Instance in rds to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are db-instance, db-security-group, db-parameter-group, diff --git a/package/crds/rds.aws.upbound.io_proxies.yaml b/package/crds/rds.aws.upbound.io_proxies.yaml index 79563767e4..dcbd0f1bae 100644 --- a/package/crds/rds.aws.upbound.io_proxies.yaml +++ b/package/crds/rds.aws.upbound.io_proxies.yaml @@ -398,6 +398,84 @@ spec: type: string type: array x-kubernetes-list-type: set + vpcSubnetIdsRefs: + description: References to Subnet in ec2 to populate vpcSubnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + vpcSubnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + vpcSubnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object required: - region type: object @@ -735,6 +813,84 @@ spec: type: string type: array x-kubernetes-list-type: set + vpcSubnetIdsRefs: + description: References to Subnet in ec2 to populate vpcSubnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + vpcSubnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + vpcSubnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object managementPolicies: default: @@ -912,10 +1068,6 @@ spec: rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies || ''Update'' in self.managementPolicies) || has(self.forProvider.engineFamily) || (has(self.initProvider) && has(self.initProvider.engineFamily))' - - message: spec.forProvider.vpcSubnetIds is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.vpcSubnetIds) - || (has(self.initProvider) && has(self.initProvider.vpcSubnetIds))' status: description: ProxyStatus defines the observed state of Proxy. properties: diff --git a/package/crds/redshift.aws.upbound.io_eventsubscriptions.yaml b/package/crds/redshift.aws.upbound.io_eventsubscriptions.yaml index d2963e7125..98d8ac1dd9 100644 --- a/package/crds/redshift.aws.upbound.io_eventsubscriptions.yaml +++ b/package/crds/redshift.aws.upbound.io_eventsubscriptions.yaml @@ -180,6 +180,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Cluster in redshift to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Cluster in redshift to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are cluster, cluster-parameter-group, cluster-security-group, @@ -311,6 +389,84 @@ spec: type: string type: array x-kubernetes-list-type: set + sourceIdsRefs: + description: References to Cluster in redshift to populate sourceIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + sourceIdsSelector: + description: Selector for a list of Cluster in redshift to populate + sourceIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object sourceType: description: The type of source that will be generating the events. Valid options are cluster, cluster-parameter-group, cluster-security-group, diff --git a/package/crds/route53.aws.upbound.io_healthchecks.yaml b/package/crds/route53.aws.upbound.io_healthchecks.yaml index 92e7250233..cfd0689efd 100644 --- a/package/crds/route53.aws.upbound.io_healthchecks.yaml +++ b/package/crds/route53.aws.upbound.io_healthchecks.yaml @@ -86,6 +86,85 @@ spec: type: string type: array x-kubernetes-list-type: set + childHealthchecksRefs: + description: References to HealthCheck in route53 to populate + childHealthchecks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + childHealthchecksSelector: + description: Selector for a list of HealthCheck in route53 to + populate childHealthchecks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object cloudwatchAlarmName: description: The name of the CloudWatch alarm. type: string @@ -288,6 +367,85 @@ spec: type: string type: array x-kubernetes-list-type: set + childHealthchecksRefs: + description: References to HealthCheck in route53 to populate + childHealthchecks. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + childHealthchecksSelector: + description: Selector for a list of HealthCheck in route53 to + populate childHealthchecks. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object cloudwatchAlarmName: description: The name of the CloudWatch alarm. type: string diff --git a/package/crds/route53.aws.upbound.io_records.yaml b/package/crds/route53.aws.upbound.io_records.yaml index 54767219fe..1f321449f9 100644 --- a/package/crds/route53.aws.upbound.io_records.yaml +++ b/package/crds/route53.aws.upbound.io_records.yaml @@ -1394,6 +1394,83 @@ spec: type: string type: array x-kubernetes-list-type: set + recordsRefs: + description: References to EIP in ec2 to populate records. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + recordsSelector: + description: Selector for a list of EIP in ec2 to populate records. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object region: description: |- An AWS region from which to measure latency. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency @@ -1709,6 +1786,83 @@ spec: type: string type: array x-kubernetes-list-type: set + recordsRefs: + description: References to EIP in ec2 to populate records. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + recordsSelector: + description: Selector for a list of EIP in ec2 to populate records. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object setIdentifier: description: Unique identifier to differentiate records with routing policies from one another. Required if using cidr_routing_policy, diff --git a/package/crds/route53recoverycontrolconfig.aws.upbound.io_safetyrules.yaml b/package/crds/route53recoverycontrolconfig.aws.upbound.io_safetyrules.yaml index 29b90ad8de..9b7ebbe50c 100644 --- a/package/crds/route53recoverycontrolconfig.aws.upbound.io_safetyrules.yaml +++ b/package/crds/route53recoverycontrolconfig.aws.upbound.io_safetyrules.yaml @@ -1039,6 +1039,85 @@ spec: items: type: string type: array + gatingControlsRefs: + description: References to RoutingControl in route53recoverycontrolconfig + to populate gatingControls. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + gatingControlsSelector: + description: Selector for a list of RoutingControl in route53recoverycontrolconfig + to populate gatingControls. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object name: description: Name describing the safety rule. type: string @@ -1069,6 +1148,85 @@ spec: items: type: string type: array + targetControlsRefs: + description: References to RoutingControl in route53recoverycontrolconfig + to populate targetControls. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + targetControlsSelector: + description: Selector for a list of RoutingControl in route53recoverycontrolconfig + to populate targetControls. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object waitPeriodMs: description: Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. @@ -1262,6 +1420,85 @@ spec: items: type: string type: array + gatingControlsRefs: + description: References to RoutingControl in route53recoverycontrolconfig + to populate gatingControls. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + gatingControlsSelector: + description: Selector for a list of RoutingControl in route53recoverycontrolconfig + to populate gatingControls. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object name: description: Name describing the safety rule. type: string @@ -1288,6 +1525,85 @@ spec: items: type: string type: array + targetControlsRefs: + description: References to RoutingControl in route53recoverycontrolconfig + to populate targetControls. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + targetControlsSelector: + description: Selector for a list of RoutingControl in route53recoverycontrolconfig + to populate targetControls. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object waitPeriodMs: description: Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. diff --git a/package/crds/s3control.aws.upbound.io_storagelensconfigurations.yaml b/package/crds/s3control.aws.upbound.io_storagelensconfigurations.yaml index ceca227e80..b86c981aea 100644 --- a/package/crds/s3control.aws.upbound.io_storagelensconfigurations.yaml +++ b/package/crds/s3control.aws.upbound.io_storagelensconfigurations.yaml @@ -1736,6 +1736,84 @@ spec: type: string type: array x-kubernetes-list-type: set + bucketsRefs: + description: References to Bucket in s3 to populate buckets. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + bucketsSelector: + description: Selector for a list of Bucket in s3 to populate + buckets. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object regions: description: List of AWS Regions. items: @@ -2072,6 +2150,84 @@ spec: type: string type: array x-kubernetes-list-type: set + bucketsRefs: + description: References to Bucket in s3 to populate buckets. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + bucketsSelector: + description: Selector for a list of Bucket in s3 to populate + buckets. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object regions: description: List of AWS Regions. items: diff --git a/package/crds/ssm.aws.upbound.io_associations.yaml b/package/crds/ssm.aws.upbound.io_associations.yaml index 3423a2d90f..4adcf0d510 100644 --- a/package/crds/ssm.aws.upbound.io_associations.yaml +++ b/package/crds/ssm.aws.upbound.io_associations.yaml @@ -1048,6 +1048,84 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in ec2 to populate + values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array waitForSuccessTimeoutSeconds: @@ -1244,6 +1322,84 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in ec2 to populate + values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array waitForSuccessTimeoutSeconds: diff --git a/package/crds/ssm.aws.upbound.io_maintenancewindowtasks.yaml b/package/crds/ssm.aws.upbound.io_maintenancewindowtasks.yaml index 694ed140f4..12dcfaf707 100644 --- a/package/crds/ssm.aws.upbound.io_maintenancewindowtasks.yaml +++ b/package/crds/ssm.aws.upbound.io_maintenancewindowtasks.yaml @@ -2161,6 +2161,84 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in ec2 to populate + values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array taskArn: @@ -2265,6 +2343,85 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate + values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in + ec2 to populate values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array type: object @@ -2865,6 +3022,84 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in ec2 to populate + values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array taskArn: @@ -2969,6 +3204,85 @@ spec: items: type: string type: array + valuesRefs: + description: References to Instance in ec2 to populate + values. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + valuesSelector: + description: Selector for a list of Instance in + ec2 to populate values. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array type: object diff --git a/package/crds/transfer.aws.upbound.io_servers.yaml b/package/crds/transfer.aws.upbound.io_servers.yaml index 02d21fb5ef..6001fa5fd5 100644 --- a/package/crds/transfer.aws.upbound.io_servers.yaml +++ b/package/crds/transfer.aws.upbound.io_servers.yaml @@ -1959,6 +1959,84 @@ spec: type: string type: array x-kubernetes-list-type: set + addressAllocationIdsRefs: + description: References to EIP in ec2 to populate addressAllocationIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + addressAllocationIdsSelector: + description: Selector for a list of EIP in ec2 to populate + addressAllocationIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object securityGroupIds: description: A list of security groups IDs that are available to attach to your server's endpoint. If no security groups @@ -1977,6 +2055,84 @@ spec: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object vpcEndpointId: description: The ID of the VPC endpoint. This property can only be used when endpoint_type is set to VPC_ENDPOINT @@ -2542,6 +2698,84 @@ spec: type: string type: array x-kubernetes-list-type: set + addressAllocationIdsRefs: + description: References to EIP in ec2 to populate addressAllocationIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + addressAllocationIdsSelector: + description: Selector for a list of EIP in ec2 to populate + addressAllocationIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object securityGroupIds: description: A list of security groups IDs that are available to attach to your server's endpoint. If no security groups @@ -2560,6 +2794,84 @@ spec: type: string type: array x-kubernetes-list-type: set + subnetIdsRefs: + description: References to Subnet in ec2 to populate subnetIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + subnetIdsSelector: + description: Selector for a list of Subnet in ec2 to populate + subnetIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object vpcEndpointId: description: The ID of the VPC endpoint. This property can only be used when endpoint_type is set to VPC_ENDPOINT diff --git a/package/crds/workspaces.aws.upbound.io_directories.yaml b/package/crds/workspaces.aws.upbound.io_directories.yaml index 051d418657..49fac4f00d 100644 --- a/package/crds/workspaces.aws.upbound.io_directories.yaml +++ b/package/crds/workspaces.aws.upbound.io_directories.yaml @@ -1390,6 +1390,84 @@ spec: type: string type: array x-kubernetes-list-type: set + ipGroupIdsRefs: + description: References to IPGroup in workspaces to populate ipGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + ipGroupIdsSelector: + description: Selector for a list of IPGroup in workspaces to populate + ipGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object region: description: Region is the region you'd like your resource to be created in. @@ -1768,6 +1846,84 @@ spec: type: string type: array x-kubernetes-list-type: set + ipGroupIdsRefs: + description: References to IPGroup in workspaces to populate ipGroupIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + ipGroupIdsSelector: + description: Selector for a list of IPGroup in workspaces to populate + ipGroupIds. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object samlProperties: description: – Configuration of SAML authentication integration. Defined below.