From 56bc4500b6c4663922dbac3c1812a34407e2e50d Mon Sep 17 00:00:00 2001 From: Alper Rifat Ulucinar Date: Mon, 4 Mar 2024 19:16:44 +0300 Subject: [PATCH 1/3] Enable conversion webhooks Signed-off-by: Alper Rifat Ulucinar --- Makefile | 24 ++++++++++- apis/generate.go | 4 +- build | 2 +- cluster/images/provider-gcp/Makefile | 9 ++-- cmd/provider/accesscontextmanager/zz_main.go | 43 +++++++++++++++++++ cmd/provider/activedirectory/zz_main.go | 43 +++++++++++++++++++ cmd/provider/alloydb/zz_main.go | 43 +++++++++++++++++++ cmd/provider/apigee/zz_main.go | 43 +++++++++++++++++++ cmd/provider/appengine/zz_main.go | 43 +++++++++++++++++++ cmd/provider/artifact/zz_main.go | 43 +++++++++++++++++++ cmd/provider/beyondcorp/zz_main.go | 43 +++++++++++++++++++ cmd/provider/bigquery/zz_main.go | 43 +++++++++++++++++++ cmd/provider/bigtable/zz_main.go | 43 +++++++++++++++++++ cmd/provider/binaryauthorization/zz_main.go | 43 +++++++++++++++++++ cmd/provider/certificatemanager/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloud/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudbuild/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudfunctions/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudfunctions2/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudiot/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudplatform/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudrun/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudscheduler/zz_main.go | 43 +++++++++++++++++++ cmd/provider/cloudtasks/zz_main.go | 43 +++++++++++++++++++ cmd/provider/composer/zz_main.go | 43 +++++++++++++++++++ cmd/provider/compute/zz_main.go | 43 +++++++++++++++++++ cmd/provider/config/zz_main.go | 43 +++++++++++++++++++ cmd/provider/container/zz_main.go | 43 +++++++++++++++++++ cmd/provider/containeranalysis/zz_main.go | 43 +++++++++++++++++++ cmd/provider/containeraws/zz_main.go | 43 +++++++++++++++++++ cmd/provider/containerazure/zz_main.go | 43 +++++++++++++++++++ cmd/provider/datacatalog/zz_main.go | 43 +++++++++++++++++++ cmd/provider/dataflow/zz_main.go | 43 +++++++++++++++++++ cmd/provider/datafusion/zz_main.go | 43 +++++++++++++++++++ cmd/provider/datalossprevention/zz_main.go | 43 +++++++++++++++++++ cmd/provider/dataplex/zz_main.go | 43 +++++++++++++++++++ cmd/provider/dataproc/zz_main.go | 43 +++++++++++++++++++ cmd/provider/datastore/zz_main.go | 43 +++++++++++++++++++ cmd/provider/datastream/zz_main.go | 43 +++++++++++++++++++ cmd/provider/dialogflowcx/zz_main.go | 43 +++++++++++++++++++ cmd/provider/dns/zz_main.go | 43 +++++++++++++++++++ cmd/provider/documentai/zz_main.go | 43 +++++++++++++++++++ cmd/provider/essentialcontacts/zz_main.go | 43 +++++++++++++++++++ cmd/provider/eventarc/zz_main.go | 43 +++++++++++++++++++ cmd/provider/filestore/zz_main.go | 43 +++++++++++++++++++ cmd/provider/firebaserules/zz_main.go | 43 +++++++++++++++++++ cmd/provider/gke/zz_main.go | 43 +++++++++++++++++++ cmd/provider/gkehub/zz_main.go | 43 +++++++++++++++++++ cmd/provider/healthcare/zz_main.go | 43 +++++++++++++++++++ cmd/provider/iam/zz_main.go | 43 +++++++++++++++++++ cmd/provider/iap/zz_main.go | 43 +++++++++++++++++++ cmd/provider/identityplatform/zz_main.go | 43 +++++++++++++++++++ cmd/provider/kms/zz_main.go | 43 +++++++++++++++++++ cmd/provider/logging/zz_main.go | 43 +++++++++++++++++++ cmd/provider/memcache/zz_main.go | 43 +++++++++++++++++++ cmd/provider/mlengine/zz_main.go | 43 +++++++++++++++++++ cmd/provider/monitoring/zz_main.go | 43 +++++++++++++++++++ cmd/provider/monolith/zz_main.go | 43 +++++++++++++++++++ cmd/provider/networkconnectivity/zz_main.go | 43 +++++++++++++++++++ cmd/provider/networkmanagement/zz_main.go | 43 +++++++++++++++++++ cmd/provider/notebooks/zz_main.go | 43 +++++++++++++++++++ cmd/provider/osconfig/zz_main.go | 43 +++++++++++++++++++ cmd/provider/oslogin/zz_main.go | 43 +++++++++++++++++++ cmd/provider/privateca/zz_main.go | 43 +++++++++++++++++++ cmd/provider/pubsub/zz_main.go | 43 +++++++++++++++++++ cmd/provider/redis/zz_main.go | 43 +++++++++++++++++++ cmd/provider/secretmanager/zz_main.go | 43 +++++++++++++++++++ cmd/provider/servicenetworking/zz_main.go | 43 +++++++++++++++++++ cmd/provider/sourcerepo/zz_main.go | 43 +++++++++++++++++++ cmd/provider/spanner/zz_main.go | 43 +++++++++++++++++++ cmd/provider/sql/zz_main.go | 43 +++++++++++++++++++ cmd/provider/storage/zz_main.go | 43 +++++++++++++++++++ cmd/provider/storagetransfer/zz_main.go | 43 +++++++++++++++++++ cmd/provider/tpu/zz_main.go | 43 +++++++++++++++++++ cmd/provider/vertexai/zz_main.go | 43 +++++++++++++++++++ cmd/provider/vpcaccess/zz_main.go | 43 +++++++++++++++++++ cmd/provider/workflows/zz_main.go | 43 +++++++++++++++++++ hack/main.go.tmpl | 43 +++++++++++++++++++ package/kustomize/kustomization.yaml | 14 ++++++ .../splittransformer/SplitTransformer | 11 +++++ package/kustomize/splitter.yaml | 5 +++ package/kustomize/webhook.yaml | 14 ++++++ 82 files changed, 3255 insertions(+), 10 deletions(-) create mode 100644 package/kustomize/kustomization.yaml create mode 100755 package/kustomize/plugin/providers.upbound.io/splittransformer/SplitTransformer create mode 100644 package/kustomize/splitter.yaml create mode 100644 package/kustomize/webhook.yaml diff --git a/Makefile b/Makefile index 5e8c80029..5b945ab52 100644 --- a/Makefile +++ b/Makefile @@ -63,10 +63,12 @@ export SUBPACKAGES := $(SUBPACKAGES) # Setup Kubernetes tools KIND_VERSION = v0.15.0 -UPTEST_VERSION = v0.8.0 # dependency for up UP_VERSION = v0.20.0 UP_CHANNEL = stable +UPTEST_VERSION = v0.8.0 +KUSTOMIZE_VERSION = v5.3.0 +YQ_VERSION = v4.40.5 export UP_VERSION := $(UP_VERSION) export UP_CHANNEL := $(UP_CHANNEL) @@ -90,9 +92,13 @@ XPKG_REG_ORGS ?= xpkg.upbound.io/upbound # NOTE(hasheddan): skip promoting on xpkg.upbound.io as channel tags are # inferred. XPKG_REG_ORGS_NO_PROMOTE ?= xpkg.upbound.io/upbound +XPKG_DIR = $(OUTPUT_DIR)/package +XPKG_IGNORE = kustomization.yaml export XPKG_REG_ORGS := $(XPKG_REG_ORGS) export XPKG_REG_ORGS_NO_PROMOTE := $(XPKG_REG_ORGS_NO_PROMOTE) +export XPKG_DIR := $(XPKG_DIR) +export XPKG_IGNORE := $(XPKG_IGNORE) -include build/makelib/xpkg.mk @@ -128,7 +134,7 @@ submodules: run: go.build @$(INFO) Running Crossplane locally out-of-cluster . . . @# To see other arguments that can be provided, run the command with --help instead - UPBOUND_CONTEXT="local" $(GO_OUT_DIR)/monolith --debug + UPBOUND_CONTEXT="local" $(GO_OUT_DIR)/monolith --debug --certs-dir="" # NOTE(hasheddan): we ensure up is installed prior to running platform-specific # build steps in parallel to avoid encountering an installation race condition. @@ -297,3 +303,17 @@ go.mod.cachedir: @go env GOMODCACHE .PHONY: cobertura reviewable submodules fallthrough go.mod.cachedir go.cachedir run crds.clean $(TERRAFORM_PROVIDER_SCHEMA) + +build.init: kustomize-crds + +kustomize-crds: output.init $(KUSTOMIZE) $(YQ) + @$(INFO) Kustomizing CRDs... + @rm -fr $(OUTPUT_DIR)/package || $(FAIL) + @cp -R package $(OUTPUT_DIR) && \ + cd $(OUTPUT_DIR)/package/crds && \ + kustomize create --autodetect || $(FAIL) + @export YQ=$(YQ) && \ + XDG_CONFIG_HOME=$(PWD)/package $(KUSTOMIZE) build --enable-alpha-plugins $(OUTPUT_DIR)/package/kustomize -o $(OUTPUT_DIR)/package/crds.yaml || $(FAIL) + @$(OK) Kustomizing CRDs. + +.PHONY: kustomize-crds diff --git a/apis/generate.go b/apis/generate.go index f2e8e2f2a..a8e54a915 100644 --- a/apis/generate.go +++ b/apis/generate.go @@ -24,18 +24,16 @@ limitations under the License. //go:generate rm -rf ../package/crds // Remove generated Go files -//go:generate bash -c "find . -iname 'zz_*' ! -iname 'zz_generated.managed*.go' -delete" //go:generate bash -c "find . -type d -empty -delete" //go:generate bash -c "find ../internal/controller -iname 'zz_*' -delete" //go:generate bash -c "find ../internal/controller -type d -empty -delete" -//go:generate rm -rf ../examples-generated //go:generate bash -c "find ../cmd/provider -name 'zz_*' -type f -delete" //go:generate bash -c "find ../cmd/provider -type d -maxdepth 1 -mindepth 1 -empty -delete" // Scrape metadata from Terraform registry //go:generate go run github.com/crossplane/upjet/cmd/scraper -n hashicorp/terraform-provider-google -r ../.work/terraform-provider-google/website/docs/r -o ../config/provider-metadata.yaml --prelude-xpath "//text()[contains(., \"subcategory\")]" --resource-prefix google -// Run Terrajet generator +// Run upjet generator //go:generate go run ../cmd/generator/main.go .. // Generate deepcopy methodsets and CRD manifests diff --git a/build b/build index a6e25afa0..75a9fe3ae 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit a6e25afa0d43da62b11af96a5d29627a52f32cd9 +Subproject commit 75a9fe3ae6b6de82c5f7ddc6a267617940f16b83 diff --git a/cluster/images/provider-gcp/Makefile b/cluster/images/provider-gcp/Makefile index 833cb5c2c..3fccb545d 100755 --- a/cluster/images/provider-gcp/Makefile +++ b/cluster/images/provider-gcp/Makefile @@ -26,7 +26,7 @@ img.build: @$(INFO) Building image $${IMAGE}; \ $(MAKE) BUILD_ARGS="--load ${BUILD_ARGS}" IMAGE=$${IMAGE} XPKG_REG_ORGS=$(XPKG_REG_ORGS) img.build.shared; \ if [[ "$${LOAD_PACKAGES}" == "true" ]]; then \ - $(MAKE) batch-process SUBPACKAGES="$(SUBPACKAGES)" BATCH_PLATFORMS=$(PLATFORM) BUILD_ONLY=true STORE_PACKAGES="$$(tr ' ' ',' <<< "$(SUBPACKAGES)")" && \ + $(MAKE) batch-process SUBPACKAGES="$(SUBPACKAGES)" XPKG_DIR=$(XPKG_DIR) XPKG_IGNORE=$(XPKG_IGNORE) BATCH_PLATFORMS=$(PLATFORM) BUILD_ONLY=true STORE_PACKAGES="$$(tr ' ' ',' <<< "$(SUBPACKAGES)")" && \ for s in $(SUBPACKAGES); do \ export t=$$(docker load -qi "$(XPKG_OUTPUT_DIR)/$(PLATFORM)/$(PROJECT_NAME)-$${s}-$(VERSION).xpkg") && \ docker tag $${t##*:} $(BUILD_REGISTRY)/$(PROJECT_NAME)-$${s}-$(ARCH); \ @@ -71,10 +71,11 @@ batch-process: $(UP) --build-only=$(BUILD_ONLY) \ --examples-root $(ROOT_DIR)/examples \ --examples-group-override monolith=* --examples-group-override config=providerconfig \ - --auth-ext $(ROOT_DIR)/package/auth.yaml \ - --crd-root $(ROOT_DIR)/package/crds \ + --auth-ext $(XPKG_DIR)/auth.yaml \ + --crd-root $(XPKG_DIR)/crds \ + --ignore $(XPKG_IGNORE) \ --crd-group-override monolith=* --crd-group-override config=$(PROVIDER_NAME) \ - --package-metadata-template $(ROOT_DIR)/package/crossplane.yaml.tmpl \ + --package-metadata-template $(XPKG_DIR)/crossplane.yaml.tmpl \ --template-var XpkgRegOrg=$(XPKG_REG_ORGS) --template-var DepConstraint="$(DEP_CONSTRAINT)" --template-var ProviderName=$(PROVIDER_NAME) \ --concurrency $(CONCURRENCY) \ --push-retry 10 || $(FAIL) diff --git a/cmd/provider/accesscontextmanager/zz_main.go b/cmd/provider/accesscontextmanager/zz_main.go index 9847eca69..d2ee89d25 100644 --- a/cmd/provider/accesscontextmanager/zz_main.go +++ b/cmd/provider/accesscontextmanager/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-accesscontextmanager", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/activedirectory/zz_main.go b/cmd/provider/activedirectory/zz_main.go index 270ba25b8..1904905ec 100644 --- a/cmd/provider/activedirectory/zz_main.go +++ b/cmd/provider/activedirectory/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-activedirectory", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/alloydb/zz_main.go b/cmd/provider/alloydb/zz_main.go index 31b08681d..01881b198 100644 --- a/cmd/provider/alloydb/zz_main.go +++ b/cmd/provider/alloydb/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-alloydb", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/apigee/zz_main.go b/cmd/provider/apigee/zz_main.go index 6c0c7c50a..a234fb1aa 100644 --- a/cmd/provider/apigee/zz_main.go +++ b/cmd/provider/apigee/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-apigee", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/appengine/zz_main.go b/cmd/provider/appengine/zz_main.go index 45539c947..6bb8ec9cb 100644 --- a/cmd/provider/appengine/zz_main.go +++ b/cmd/provider/appengine/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-appengine", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/artifact/zz_main.go b/cmd/provider/artifact/zz_main.go index 0103eed91..2f0f487da 100644 --- a/cmd/provider/artifact/zz_main.go +++ b/cmd/provider/artifact/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-artifact", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/beyondcorp/zz_main.go b/cmd/provider/beyondcorp/zz_main.go index 24c058adb..e8800c5d4 100644 --- a/cmd/provider/beyondcorp/zz_main.go +++ b/cmd/provider/beyondcorp/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-beyondcorp", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/bigquery/zz_main.go b/cmd/provider/bigquery/zz_main.go index d0e2dcb6f..1aee44849 100644 --- a/cmd/provider/bigquery/zz_main.go +++ b/cmd/provider/bigquery/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-bigquery", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/bigtable/zz_main.go b/cmd/provider/bigtable/zz_main.go index 7750a421e..f8c15c55f 100644 --- a/cmd/provider/bigtable/zz_main.go +++ b/cmd/provider/bigtable/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-bigtable", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/binaryauthorization/zz_main.go b/cmd/provider/binaryauthorization/zz_main.go index 9c4723980..63b0a3bc3 100644 --- a/cmd/provider/binaryauthorization/zz_main.go +++ b/cmd/provider/binaryauthorization/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-binaryauthorization", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/certificatemanager/zz_main.go b/cmd/provider/certificatemanager/zz_main.go index cb3b4af6e..a53692432 100644 --- a/cmd/provider/certificatemanager/zz_main.go +++ b/cmd/provider/certificatemanager/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-certificatemanager", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloud/zz_main.go b/cmd/provider/cloud/zz_main.go index 65b692575..9b52ce4a4 100644 --- a/cmd/provider/cloud/zz_main.go +++ b/cmd/provider/cloud/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloud", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudbuild/zz_main.go b/cmd/provider/cloudbuild/zz_main.go index 411beb684..32efaca61 100644 --- a/cmd/provider/cloudbuild/zz_main.go +++ b/cmd/provider/cloudbuild/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudbuild", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudfunctions/zz_main.go b/cmd/provider/cloudfunctions/zz_main.go index d19d38405..a13d0f3d8 100644 --- a/cmd/provider/cloudfunctions/zz_main.go +++ b/cmd/provider/cloudfunctions/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudfunctions", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudfunctions2/zz_main.go b/cmd/provider/cloudfunctions2/zz_main.go index 0f37a79c8..210723859 100644 --- a/cmd/provider/cloudfunctions2/zz_main.go +++ b/cmd/provider/cloudfunctions2/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudfunctions2", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudiot/zz_main.go b/cmd/provider/cloudiot/zz_main.go index 2dc9b796c..da3662e00 100644 --- a/cmd/provider/cloudiot/zz_main.go +++ b/cmd/provider/cloudiot/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudiot", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudplatform/zz_main.go b/cmd/provider/cloudplatform/zz_main.go index 5dda2a075..5228334f8 100644 --- a/cmd/provider/cloudplatform/zz_main.go +++ b/cmd/provider/cloudplatform/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudplatform", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudrun/zz_main.go b/cmd/provider/cloudrun/zz_main.go index a623d9ab7..64cc428b9 100644 --- a/cmd/provider/cloudrun/zz_main.go +++ b/cmd/provider/cloudrun/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudrun", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudscheduler/zz_main.go b/cmd/provider/cloudscheduler/zz_main.go index c5e4c68a0..7130ed6a2 100644 --- a/cmd/provider/cloudscheduler/zz_main.go +++ b/cmd/provider/cloudscheduler/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudscheduler", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/cloudtasks/zz_main.go b/cmd/provider/cloudtasks/zz_main.go index 49a473999..444d6e25d 100644 --- a/cmd/provider/cloudtasks/zz_main.go +++ b/cmd/provider/cloudtasks/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-cloudtasks", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/composer/zz_main.go b/cmd/provider/composer/zz_main.go index 16dd0fd9f..8d5465749 100644 --- a/cmd/provider/composer/zz_main.go +++ b/cmd/provider/composer/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-composer", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/compute/zz_main.go b/cmd/provider/compute/zz_main.go index 641c67359..9c522de9b 100644 --- a/cmd/provider/compute/zz_main.go +++ b/cmd/provider/compute/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-compute", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/config/zz_main.go b/cmd/provider/config/zz_main.go index 72b5a428c..054006b40 100644 --- a/cmd/provider/config/zz_main.go +++ b/cmd/provider/config/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-config", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/container/zz_main.go b/cmd/provider/container/zz_main.go index 83236527a..5f650a990 100644 --- a/cmd/provider/container/zz_main.go +++ b/cmd/provider/container/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-container", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/containeranalysis/zz_main.go b/cmd/provider/containeranalysis/zz_main.go index 39fb8863b..7a89b87a8 100644 --- a/cmd/provider/containeranalysis/zz_main.go +++ b/cmd/provider/containeranalysis/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-containeranalysis", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/containeraws/zz_main.go b/cmd/provider/containeraws/zz_main.go index 4bdf348f4..35acbc806 100644 --- a/cmd/provider/containeraws/zz_main.go +++ b/cmd/provider/containeraws/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-containeraws", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/containerazure/zz_main.go b/cmd/provider/containerazure/zz_main.go index de9e27c3f..332890099 100644 --- a/cmd/provider/containerazure/zz_main.go +++ b/cmd/provider/containerazure/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-containerazure", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/datacatalog/zz_main.go b/cmd/provider/datacatalog/zz_main.go index 1a7aca805..4f16d1a87 100644 --- a/cmd/provider/datacatalog/zz_main.go +++ b/cmd/provider/datacatalog/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-datacatalog", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/dataflow/zz_main.go b/cmd/provider/dataflow/zz_main.go index c513365ef..937ec664b 100644 --- a/cmd/provider/dataflow/zz_main.go +++ b/cmd/provider/dataflow/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-dataflow", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/datafusion/zz_main.go b/cmd/provider/datafusion/zz_main.go index bd24d7ed2..29f15a4ea 100644 --- a/cmd/provider/datafusion/zz_main.go +++ b/cmd/provider/datafusion/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-datafusion", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/datalossprevention/zz_main.go b/cmd/provider/datalossprevention/zz_main.go index bffe4bc69..764f6af65 100644 --- a/cmd/provider/datalossprevention/zz_main.go +++ b/cmd/provider/datalossprevention/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-datalossprevention", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/dataplex/zz_main.go b/cmd/provider/dataplex/zz_main.go index 39eceec0c..d06d9433c 100644 --- a/cmd/provider/dataplex/zz_main.go +++ b/cmd/provider/dataplex/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-dataplex", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/dataproc/zz_main.go b/cmd/provider/dataproc/zz_main.go index 8687da1fd..9cff0b7a7 100644 --- a/cmd/provider/dataproc/zz_main.go +++ b/cmd/provider/dataproc/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-dataproc", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/datastore/zz_main.go b/cmd/provider/datastore/zz_main.go index 157396ef4..aab11a54a 100644 --- a/cmd/provider/datastore/zz_main.go +++ b/cmd/provider/datastore/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-datastore", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/datastream/zz_main.go b/cmd/provider/datastream/zz_main.go index 5f6924c41..38eb683f7 100644 --- a/cmd/provider/datastream/zz_main.go +++ b/cmd/provider/datastream/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-datastream", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/dialogflowcx/zz_main.go b/cmd/provider/dialogflowcx/zz_main.go index dc4c09f67..5ec5ac5a9 100644 --- a/cmd/provider/dialogflowcx/zz_main.go +++ b/cmd/provider/dialogflowcx/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-dialogflowcx", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/dns/zz_main.go b/cmd/provider/dns/zz_main.go index 32b1f0d2e..d88e35edc 100644 --- a/cmd/provider/dns/zz_main.go +++ b/cmd/provider/dns/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-dns", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/documentai/zz_main.go b/cmd/provider/documentai/zz_main.go index e3f6a704d..d5d6eb605 100644 --- a/cmd/provider/documentai/zz_main.go +++ b/cmd/provider/documentai/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-documentai", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/essentialcontacts/zz_main.go b/cmd/provider/essentialcontacts/zz_main.go index d5bd70159..ea2d9267b 100644 --- a/cmd/provider/essentialcontacts/zz_main.go +++ b/cmd/provider/essentialcontacts/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-essentialcontacts", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/eventarc/zz_main.go b/cmd/provider/eventarc/zz_main.go index be60664f8..fa075ecc2 100644 --- a/cmd/provider/eventarc/zz_main.go +++ b/cmd/provider/eventarc/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-eventarc", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/filestore/zz_main.go b/cmd/provider/filestore/zz_main.go index af3138cd4..0b78ebef8 100644 --- a/cmd/provider/filestore/zz_main.go +++ b/cmd/provider/filestore/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-filestore", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/firebaserules/zz_main.go b/cmd/provider/firebaserules/zz_main.go index 90754d34c..b8eb9ce72 100644 --- a/cmd/provider/firebaserules/zz_main.go +++ b/cmd/provider/firebaserules/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-firebaserules", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/gke/zz_main.go b/cmd/provider/gke/zz_main.go index 719bac391..3ec6b6ba3 100644 --- a/cmd/provider/gke/zz_main.go +++ b/cmd/provider/gke/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-gke", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/gkehub/zz_main.go b/cmd/provider/gkehub/zz_main.go index 68eb54b96..f490438c4 100644 --- a/cmd/provider/gkehub/zz_main.go +++ b/cmd/provider/gkehub/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-gkehub", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/healthcare/zz_main.go b/cmd/provider/healthcare/zz_main.go index 3df1f2fa2..bc566701f 100644 --- a/cmd/provider/healthcare/zz_main.go +++ b/cmd/provider/healthcare/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-healthcare", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/iam/zz_main.go b/cmd/provider/iam/zz_main.go index 645635158..43f020fe3 100644 --- a/cmd/provider/iam/zz_main.go +++ b/cmd/provider/iam/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-iam", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/iap/zz_main.go b/cmd/provider/iap/zz_main.go index 07c527d08..95b830993 100644 --- a/cmd/provider/iap/zz_main.go +++ b/cmd/provider/iap/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-iap", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/identityplatform/zz_main.go b/cmd/provider/identityplatform/zz_main.go index cfd47c8e7..790a9d820 100644 --- a/cmd/provider/identityplatform/zz_main.go +++ b/cmd/provider/identityplatform/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-identityplatform", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/kms/zz_main.go b/cmd/provider/kms/zz_main.go index 890b1a43e..8f60cdf3e 100644 --- a/cmd/provider/kms/zz_main.go +++ b/cmd/provider/kms/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-kms", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/logging/zz_main.go b/cmd/provider/logging/zz_main.go index c410f1d07..511412939 100644 --- a/cmd/provider/logging/zz_main.go +++ b/cmd/provider/logging/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-logging", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/memcache/zz_main.go b/cmd/provider/memcache/zz_main.go index 07c48942f..95d7cc4b6 100644 --- a/cmd/provider/memcache/zz_main.go +++ b/cmd/provider/memcache/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-memcache", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/mlengine/zz_main.go b/cmd/provider/mlengine/zz_main.go index 33e25206e..88e65fe0e 100644 --- a/cmd/provider/mlengine/zz_main.go +++ b/cmd/provider/mlengine/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-mlengine", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/monitoring/zz_main.go b/cmd/provider/monitoring/zz_main.go index fb75bc884..c8d78493e 100644 --- a/cmd/provider/monitoring/zz_main.go +++ b/cmd/provider/monitoring/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-monitoring", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/monolith/zz_main.go b/cmd/provider/monolith/zz_main.go index 99e42029e..9828772f8 100644 --- a/cmd/provider/monolith/zz_main.go +++ b/cmd/provider/monolith/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/networkconnectivity/zz_main.go b/cmd/provider/networkconnectivity/zz_main.go index 51ed97da5..f59c7efb2 100644 --- a/cmd/provider/networkconnectivity/zz_main.go +++ b/cmd/provider/networkconnectivity/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-networkconnectivity", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/networkmanagement/zz_main.go b/cmd/provider/networkmanagement/zz_main.go index f33b8ffb2..63203281e 100644 --- a/cmd/provider/networkmanagement/zz_main.go +++ b/cmd/provider/networkmanagement/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-networkmanagement", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/notebooks/zz_main.go b/cmd/provider/notebooks/zz_main.go index 4935e6b87..6e615a66c 100644 --- a/cmd/provider/notebooks/zz_main.go +++ b/cmd/provider/notebooks/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-notebooks", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/osconfig/zz_main.go b/cmd/provider/osconfig/zz_main.go index de1827f03..92e295c5c 100644 --- a/cmd/provider/osconfig/zz_main.go +++ b/cmd/provider/osconfig/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-osconfig", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/oslogin/zz_main.go b/cmd/provider/oslogin/zz_main.go index 1af7d3a41..eee193633 100644 --- a/cmd/provider/oslogin/zz_main.go +++ b/cmd/provider/oslogin/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-oslogin", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/privateca/zz_main.go b/cmd/provider/privateca/zz_main.go index c948259fa..631132357 100644 --- a/cmd/provider/privateca/zz_main.go +++ b/cmd/provider/privateca/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-privateca", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/pubsub/zz_main.go b/cmd/provider/pubsub/zz_main.go index 9deed02da..0d1173bcb 100644 --- a/cmd/provider/pubsub/zz_main.go +++ b/cmd/provider/pubsub/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-pubsub", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/redis/zz_main.go b/cmd/provider/redis/zz_main.go index 285b1e288..030de7a62 100644 --- a/cmd/provider/redis/zz_main.go +++ b/cmd/provider/redis/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-redis", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/secretmanager/zz_main.go b/cmd/provider/secretmanager/zz_main.go index 1a9537cf8..fd6b0f429 100644 --- a/cmd/provider/secretmanager/zz_main.go +++ b/cmd/provider/secretmanager/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-secretmanager", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/servicenetworking/zz_main.go b/cmd/provider/servicenetworking/zz_main.go index 810a51268..28ce3d602 100644 --- a/cmd/provider/servicenetworking/zz_main.go +++ b/cmd/provider/servicenetworking/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-servicenetworking", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/sourcerepo/zz_main.go b/cmd/provider/sourcerepo/zz_main.go index 8e8d8b9b2..684400f07 100644 --- a/cmd/provider/sourcerepo/zz_main.go +++ b/cmd/provider/sourcerepo/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-sourcerepo", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/spanner/zz_main.go b/cmd/provider/spanner/zz_main.go index 1bc5c6773..5c8d3b7c1 100644 --- a/cmd/provider/spanner/zz_main.go +++ b/cmd/provider/spanner/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-spanner", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/sql/zz_main.go b/cmd/provider/sql/zz_main.go index 7b8973230..b9b62cab7 100644 --- a/cmd/provider/sql/zz_main.go +++ b/cmd/provider/sql/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-sql", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/storage/zz_main.go b/cmd/provider/storage/zz_main.go index d199d3345..77a15fa4c 100644 --- a/cmd/provider/storage/zz_main.go +++ b/cmd/provider/storage/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-storage", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/storagetransfer/zz_main.go b/cmd/provider/storagetransfer/zz_main.go index bacfae24e..2d6ae48db 100644 --- a/cmd/provider/storagetransfer/zz_main.go +++ b/cmd/provider/storagetransfer/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-storagetransfer", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/tpu/zz_main.go b/cmd/provider/tpu/zz_main.go index c2b3aef87..5e0fc64d8 100644 --- a/cmd/provider/tpu/zz_main.go +++ b/cmd/provider/tpu/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-tpu", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/vertexai/zz_main.go b/cmd/provider/vertexai/zz_main.go index 825df820f..d2ca62924 100644 --- a/cmd/provider/vertexai/zz_main.go +++ b/cmd/provider/vertexai/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-vertexai", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/vpcaccess/zz_main.go b/cmd/provider/vpcaccess/zz_main.go index bd041a771..1f1a66c12 100644 --- a/cmd/provider/vpcaccess/zz_main.go +++ b/cmd/provider/vpcaccess/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-vpcaccess", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/cmd/provider/workflows/zz_main.go b/cmd/provider/workflows/zz_main.go index 2db0db58e..aa0c713be 100644 --- a/cmd/provider/workflows/zz_main.go +++ b/cmd/provider/workflows/zz_main.go @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp-workflows", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/hack/main.go.tmpl b/hack/main.go.tmpl index b0cc7be41..c883116ac 100644 --- a/hack/main.go.tmpl +++ b/hack/main.go.tmpl @@ -39,6 +39,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/log/zap" + "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" @@ -48,6 +49,13 @@ import ( "github.com/upbound/provider-gcp/internal/features" ) +const ( + webhookTLSCertDirEnvVar = "WEBHOOK_TLS_CERT_DIR" + tlsServerCertDirEnvVar = "TLS_SERVER_CERTS_DIR" + certsDirEnvVar = "CERTS_DIR" + tlsServerCertDir = "/tls/server" +) + func deprecationAction(flagName string) kingpin.Action { return func(c *kingpin.ParseContext) error { _, err := fmt.Fprintf(os.Stderr, "warning: Command-line flag %q is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).\n", flagName) @@ -70,6 +78,14 @@ func main() { enableExternalSecretStores = app.Flag("enable-external-secret-stores", "Enable support for ExternalSecretStores.").Default("false").Envar("ENABLE_EXTERNAL_SECRET_STORES").Bool() enableManagementPolicies = app.Flag("enable-management-policies", "Enable support for Management Policies.").Default("true").Envar("ENABLE_MANAGEMENT_POLICIES").Bool() + certsDirSet = false + // we record whether the command-line option "--certs-dir" was supplied + // in the registered PreAction for the flag. + certsDir = app.Flag("certs-dir", "The directory that contains the server key and certificate.").Default(tlsServerCertDir).Envar(certsDirEnvVar).PreAction(func(_ *kingpin.ParseContext) error { + certsDirSet = true + return nil + }).String() + // now deprecated command-line arguments with the Terraform SDK-based upjet architecture _ = app.Flag("provider-ttl", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] TTL for the native plugin processes before they are replaced. Changing the default may increase memory consumption.").Hidden().Action(deprecationAction("provider-ttl")).Int() _ = app.Flag("terraform-version", "[DEPRECATED: This option is no longer used and it will be removed in a future release.] Terraform version.").Envar("TERRAFORM_VERSION").Hidden().Action(deprecationAction("terraform-version")).String() @@ -97,12 +113,38 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + // Get the TLS certs directory from the environment variables set by + // Crossplane if they're available. + // In older XP versions we used WEBHOOK_TLS_CERT_DIR, in newer versions + // we use TLS_SERVER_CERTS_DIR. If an explicit certs dir is not supplied + // via the command-line options, then these environment variables are used + // instead. + if !certsDirSet { + // backwards-compatibility concerns + xpCertsDir := os.Getenv(certsDirEnvVar) + if xpCertsDir == "" { + xpCertsDir = os.Getenv(tlsServerCertDirEnvVar) + } + if xpCertsDir == "" { + xpCertsDir = os.Getenv(webhookTLSCertDirEnvVar) + } + // we probably don't need this condition but just to be on the + // safe side, if we are missing any kingpin machinery details... + if xpCertsDir != "" { + *certsDir = xpCertsDir + } + } + mgr, err := ctrl.NewManager(ratelimiter.LimitRESTConfig(cfg, *maxReconcileRate), ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-gcp{{ if ne .Group "monolith" }}-{{ .Group }}{{ end }}", Cache: cache.Options{ SyncPeriod: syncInterval, }, + WebhookServer: webhook.NewServer( + webhook.Options{ + CertDir: *certsDir, + }), LeaderElectionResourceLock: resourcelock.LeasesResourceLock, LeaseDuration: func() *time.Duration { d := 60 * time.Second; return &d }(), RenewDeadline: func() *time.Duration { d := 50 * time.Second; return &d }(), @@ -125,6 +167,7 @@ func main() { SetupFn: clients.TerraformSetupBuilder(provider.TerraformProvider), PollJitter: pollJitter, OperationTrackerStore: tjcontroller.NewOperationStore(log), + StartWebhooks: *certsDir != "", } if *enableManagementPolicies { diff --git a/package/kustomize/kustomization.yaml b/package/kustomize/kustomization.yaml new file mode 100644 index 000000000..a6336b620 --- /dev/null +++ b/package/kustomize/kustomization.yaml @@ -0,0 +1,14 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - ../crds + +patches: +- path: webhook.yaml + target: + group: apiextensions.k8s.io + kind: CustomResourceDefinition + +transformers: + - splitter.yaml diff --git a/package/kustomize/plugin/providers.upbound.io/splittransformer/SplitTransformer b/package/kustomize/plugin/providers.upbound.io/splittransformer/SplitTransformer new file mode 100755 index 000000000..5ea7d69d6 --- /dev/null +++ b/package/kustomize/plugin/providers.upbound.io/splittransformer/SplitTransformer @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +set -aeuo pipefail + +# skip the config directory argument +shift +output_dir="$1" + +cd "${output_dir}" +# prepend the YAML doc separator to the stdin +{ echo "---"; cat; } | ${YQ} --split-exp '.spec.group + "_" + .spec.names.plural + ".yaml"' - diff --git a/package/kustomize/splitter.yaml b/package/kustomize/splitter.yaml new file mode 100644 index 000000000..92cb1330c --- /dev/null +++ b/package/kustomize/splitter.yaml @@ -0,0 +1,5 @@ +apiVersion: providers.upbound.io +kind: SplitTransformer +metadata: + name: splitter +argsOneLiner: ../crds diff --git a/package/kustomize/webhook.yaml b/package/kustomize/webhook.yaml new file mode 100644 index 000000000..f811dff1e --- /dev/null +++ b/package/kustomize/webhook.yaml @@ -0,0 +1,14 @@ +# The following patch enables a conversion webhook for the CRD +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: ignored +spec: + conversion: + strategy: Webhook + webhook: + clientConfig: + service: + path: /convert + conversionReviewVersions: + - v1 From 21eb724c805cd24a9135989eeda2f6ffdafde449 Mon Sep 17 00:00:00 2001 From: Alper Rifat Ulucinar Date: Mon, 4 Mar 2024 23:57:19 +0300 Subject: [PATCH 2/3] Run the resolver transformer to prevent import cycles in cross-resource reference resolvers Signed-off-by: Alper Rifat Ulucinar --- .../v1beta1/zz_generated.resolvers.go | 243 +- .../alloydb/v1beta1/zz_generated.resolvers.go | 139 +- apis/apigee/v1beta1/zz_generated.resolvers.go | 249 +- .../v1beta1/zz_generated.resolvers.go | 249 +- .../v1beta1/zz_generated.resolvers.go | 55 +- .../v1beta1/zz_generated.resolvers.go | 105 +- .../v1beta1/zz_generated.resolvers.go | 1814 +++-- .../v1beta1/zz_generated.resolvers.go | 163 +- .../v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 34 +- apis/cloud/v1beta1/zz_generated.resolvers.go | 57 +- .../v1beta1/zz_generated.resolvers.go | 199 +- .../v1beta1/zz_generated.resolvers.go | 162 +- .../v1beta1/zz_generated.resolvers.go | 428 +- .../v1beta1/zz_generated.resolvers.go | 81 +- .../v1beta1/zz_generated.resolvers.go | 578 +- .../v1beta1/zz_generated.resolvers.go | 526 +- .../v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 196 +- .../compute/v1beta1/zz_generated.resolvers.go | 6706 ++++++++++------- .../v1beta1/zz_generated.resolvers.go | 220 +- .../v1beta1/zz_generated.resolvers.go | 33 +- .../v1beta1/zz_generated.resolvers.go | 33 +- .../v1beta1/zz_generated.resolvers.go | 160 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 79 +- .../v1beta1/zz_generated.resolvers.go | 246 +- .../v1beta1/zz_generated.resolvers.go | 244 +- .../v1beta1/zz_generated.resolvers.go | 435 +- apis/dns/v1beta1/zz_generated.resolvers.go | 430 +- .../v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 139 +- .../v1beta1/zz_generated.resolvers.go | 54 +- apis/generate.go | 4 + apis/gke/v1beta1/zz_generated.resolvers.go | 104 +- apis/gkehub/v1beta1/zz_generated.resolvers.go | 105 +- .../v1beta1/zz_generated.resolvers.go | 103 +- apis/iam/v1beta1/zz_generated.resolvers.go | 34 +- apis/iap/v1beta1/zz_generated.resolvers.go | 106 +- .../v1beta1/zz_generated.resolvers.go | 163 +- apis/kms/v1beta1/zz_generated.resolvers.go | 269 +- .../logging/v1beta1/zz_generated.resolvers.go | 229 +- .../v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 150 +- .../v1beta1/zz_generated.resolvers.go | 102 +- .../v1beta1/zz_generated.resolvers.go | 379 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 291 +- apis/pubsub/v1beta1/zz_generated.resolvers.go | 343 +- apis/redis/v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 152 +- .../spanner/v1beta1/zz_generated.resolvers.go | 187 +- apis/sql/v1beta1/zz_generated.resolvers.go | 177 +- .../storage/v1beta1/zz_generated.resolvers.go | 627 +- apis/tpu/v1beta1/zz_generated.resolvers.go | 56 +- .../v1beta1/zz_generated.resolvers.go | 55 +- .../v1beta1/zz_generated.resolvers.go | 103 +- .../v1beta1/zz_generated.resolvers.go | 56 +- cmd/provider/accesscontextmanager/zz_main.go | 2 + cmd/provider/activedirectory/zz_main.go | 2 + cmd/provider/alloydb/zz_main.go | 2 + cmd/provider/apigee/zz_main.go | 2 + cmd/provider/appengine/zz_main.go | 2 + cmd/provider/artifact/zz_main.go | 2 + cmd/provider/beyondcorp/zz_main.go | 2 + cmd/provider/bigquery/zz_main.go | 2 + cmd/provider/bigtable/zz_main.go | 2 + cmd/provider/binaryauthorization/zz_main.go | 2 + cmd/provider/certificatemanager/zz_main.go | 2 + cmd/provider/cloud/zz_main.go | 2 + cmd/provider/cloudbuild/zz_main.go | 2 + cmd/provider/cloudfunctions/zz_main.go | 2 + cmd/provider/cloudfunctions2/zz_main.go | 2 + cmd/provider/cloudiot/zz_main.go | 2 + cmd/provider/cloudplatform/zz_main.go | 2 + cmd/provider/cloudrun/zz_main.go | 2 + cmd/provider/cloudscheduler/zz_main.go | 2 + cmd/provider/cloudtasks/zz_main.go | 2 + cmd/provider/composer/zz_main.go | 2 + cmd/provider/compute/zz_main.go | 2 + cmd/provider/config/zz_main.go | 2 + cmd/provider/container/zz_main.go | 2 + cmd/provider/containeranalysis/zz_main.go | 2 + cmd/provider/containeraws/zz_main.go | 2 + cmd/provider/containerazure/zz_main.go | 2 + cmd/provider/datacatalog/zz_main.go | 2 + cmd/provider/dataflow/zz_main.go | 2 + cmd/provider/datafusion/zz_main.go | 2 + cmd/provider/datalossprevention/zz_main.go | 2 + cmd/provider/dataplex/zz_main.go | 2 + cmd/provider/dataproc/zz_main.go | 2 + cmd/provider/datastore/zz_main.go | 2 + cmd/provider/datastream/zz_main.go | 2 + cmd/provider/dialogflowcx/zz_main.go | 2 + cmd/provider/dns/zz_main.go | 2 + cmd/provider/documentai/zz_main.go | 2 + cmd/provider/essentialcontacts/zz_main.go | 2 + cmd/provider/eventarc/zz_main.go | 2 + cmd/provider/filestore/zz_main.go | 2 + cmd/provider/firebaserules/zz_main.go | 2 + cmd/provider/gke/zz_main.go | 2 + cmd/provider/gkehub/zz_main.go | 2 + cmd/provider/healthcare/zz_main.go | 2 + cmd/provider/iam/zz_main.go | 2 + cmd/provider/iap/zz_main.go | 2 + cmd/provider/identityplatform/zz_main.go | 2 + cmd/provider/kms/zz_main.go | 2 + cmd/provider/logging/zz_main.go | 2 + cmd/provider/memcache/zz_main.go | 2 + cmd/provider/mlengine/zz_main.go | 2 + cmd/provider/monitoring/zz_main.go | 2 + cmd/provider/monolith/zz_main.go | 2 + cmd/provider/networkconnectivity/zz_main.go | 2 + cmd/provider/networkmanagement/zz_main.go | 2 + cmd/provider/notebooks/zz_main.go | 2 + cmd/provider/osconfig/zz_main.go | 2 + cmd/provider/oslogin/zz_main.go | 2 + cmd/provider/privateca/zz_main.go | 2 + cmd/provider/pubsub/zz_main.go | 2 + cmd/provider/redis/zz_main.go | 2 + cmd/provider/secretmanager/zz_main.go | 2 + cmd/provider/servicenetworking/zz_main.go | 2 + cmd/provider/sourcerepo/zz_main.go | 2 + cmd/provider/spanner/zz_main.go | 2 + cmd/provider/sql/zz_main.go | 2 + cmd/provider/storage/zz_main.go | 2 + cmd/provider/storagetransfer/zz_main.go | 2 + cmd/provider/tpu/zz_main.go | 2 + cmd/provider/vertexai/zz_main.go | 2 + cmd/provider/vpcaccess/zz_main.go | 2 + cmd/provider/workflows/zz_main.go | 2 + hack/main.go.tmpl | 2 + internal/apis/scheme.go | 37 + 137 files changed, 11006 insertions(+), 7882 deletions(-) create mode 100644 internal/apis/scheme.go diff --git a/apis/accesscontextmanager/v1beta1/zz_generated.resolvers.go b/apis/accesscontextmanager/v1beta1/zz_generated.resolvers.go index 358f7a23b..47c858fc7 100644 --- a/apis/accesscontextmanager/v1beta1/zz_generated.resolvers.go +++ b/apis/accesscontextmanager/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this AccessLevelCondition. -func (mg *AccessLevelCondition) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *AccessLevelCondition) ResolveReferences( // ResolveReferences of this AccessLevelCondition. + 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 + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.AccessLevel), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.AccessLevelRef, - Selector: mg.Spec.ForProvider.AccessLevelSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AccessLevel), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.AccessLevelRef, + Selector: mg.Spec.ForProvider.AccessLevelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AccessLevel") } mg.Spec.ForProvider.AccessLevel = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AccessLevelRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.AccessLevel), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.AccessLevelRef, - Selector: mg.Spec.InitProvider.AccessLevelSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AccessLevel), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.AccessLevelRef, + Selector: mg.Spec.InitProvider.AccessLevelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AccessLevel") } @@ -69,6 +80,8 @@ func (mg *AccessLevelCondition) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this ServicePerimeter. func (mg *ServicePerimeter) 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 @@ -76,16 +89,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.Spec); i3++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Spec[i3].AccessLevels), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.Spec[i3].AccessLevelsRefs, - Selector: mg.Spec.ForProvider.Spec[i3].AccessLevelsSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Spec[i3].AccessLevels), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.Spec[i3].AccessLevelsRefs, + Selector: mg.Spec.ForProvider.Spec[i3].AccessLevelsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Spec[i3].AccessLevels") } @@ -94,16 +110,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Status); i3++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Status[i3].AccessLevels), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.Status[i3].AccessLevelsRefs, - Selector: mg.Spec.ForProvider.Status[i3].AccessLevelsSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Status[i3].AccessLevels), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.Status[i3].AccessLevelsRefs, + Selector: mg.Spec.ForProvider.Status[i3].AccessLevelsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Status[i3].AccessLevels") } @@ -115,16 +134,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read for i4 := 0; i4 < len(mg.Spec.ForProvider.Status[i3].IngressPolicies); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelRef, - Selector: mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelRef, + Selector: mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel") } @@ -136,16 +158,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Spec); i3++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Spec[i3].AccessLevels), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.Spec[i3].AccessLevelsRefs, - Selector: mg.Spec.InitProvider.Spec[i3].AccessLevelsSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Spec[i3].AccessLevels), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.Spec[i3].AccessLevelsRefs, + Selector: mg.Spec.InitProvider.Spec[i3].AccessLevelsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Spec[i3].AccessLevels") } @@ -154,16 +179,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Status); i3++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Status[i3].AccessLevels), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.Status[i3].AccessLevelsRefs, - Selector: mg.Spec.InitProvider.Status[i3].AccessLevelsSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Status[i3].AccessLevels), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.Status[i3].AccessLevelsRefs, + Selector: mg.Spec.InitProvider.Status[i3].AccessLevelsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Status[i3].AccessLevels") } @@ -175,16 +203,19 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read for i4 := 0; i4 < len(mg.Spec.InitProvider.Status[i3].IngressPolicies); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelRef, - Selector: mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelSelector, - To: reference.To{ - List: &AccessLevelList{}, - Managed: &AccessLevel{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "AccessLevel", "AccessLevelList") + 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.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelRef, + Selector: mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Status[i3].IngressPolicies[i4].IngressFrom[i5].Sources[i6].AccessLevel") } @@ -201,37 +232,45 @@ func (mg *ServicePerimeter) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this ServicePerimeterResource. func (mg *ServicePerimeterResource) 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 + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "ServicePerimeter", "ServicePerimeterList") + 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.PerimeterName), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.PerimeterNameRef, - Selector: mg.Spec.ForProvider.PerimeterNameSelector, - To: reference.To{ - List: &ServicePerimeterList{}, - Managed: &ServicePerimeter{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PerimeterName), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.PerimeterNameRef, + Selector: mg.Spec.ForProvider.PerimeterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PerimeterName") } mg.Spec.ForProvider.PerimeterName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PerimeterNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("accesscontextmanager.gcp.upbound.io", "v1beta1", "ServicePerimeter", "ServicePerimeterList") + 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.PerimeterName), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.PerimeterNameRef, - Selector: mg.Spec.InitProvider.PerimeterNameSelector, - To: reference.To{ - List: &ServicePerimeterList{}, - Managed: &ServicePerimeter{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PerimeterName), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.PerimeterNameRef, + Selector: mg.Spec.InitProvider.PerimeterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PerimeterName") } diff --git a/apis/alloydb/v1beta1/zz_generated.resolvers.go b/apis/alloydb/v1beta1/zz_generated.resolvers.go index bf6216819..5ccc4a93f 100644 --- a/apis/alloydb/v1beta1/zz_generated.resolvers.go +++ b/apis/alloydb/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Backup. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Backup. func (mg *Backup) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ClusterName), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.ClusterNameRef, - Selector: mg.Spec.ForProvider.ClusterNameSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("alloydb.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ClusterName), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.ClusterNameRef, + Selector: mg.Spec.ForProvider.ClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ClusterName") } mg.Spec.ForProvider.ClusterName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ClusterNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ClusterName), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.ClusterNameRef, - Selector: mg.Spec.InitProvider.ClusterNameSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("alloydb.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ClusterName), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.ClusterNameRef, + Selector: mg.Spec.InitProvider.ClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ClusterName") } @@ -70,37 +82,45 @@ func (mg *Backup) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Cluster. func (mg *Cluster) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -112,21 +132,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Instance. func (mg *Instance) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.ClusterRef, - Selector: mg.Spec.ForProvider.ClusterSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("alloydb.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.ClusterRef, + Selector: mg.Spec.ForProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Cluster") } diff --git a/apis/apigee/v1beta1/zz_generated.resolvers.go b/apis/apigee/v1beta1/zz_generated.resolvers.go index 50771ac2e..855488ad6 100644 --- a/apis/apigee/v1beta1/zz_generated.resolvers.go +++ b/apis/apigee/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,28 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/compute/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Envgroup. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Envgroup. func (mg *Envgroup) 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 + { + m, l, err = apisresolver.GetManagedResource("apigee.gcp.upbound.io", "v1beta1", "Organization", "OrganizationList") + 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.OrgID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.OrgIDRef, - Selector: mg.Spec.ForProvider.OrgIDSelector, - To: reference.To{ - List: &OrganizationList{}, - Managed: &Organization{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.OrgID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.OrgIDRef, + Selector: mg.Spec.ForProvider.OrgIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.OrgID") } @@ -55,21 +63,26 @@ func (mg *Envgroup) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this Environment. func (mg *Environment) 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 + { + m, l, err = apisresolver.GetManagedResource("apigee.gcp.upbound.io", "v1beta1", "Organization", "OrganizationList") + 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.OrgID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.OrgIDRef, - Selector: mg.Spec.ForProvider.OrgIDSelector, - To: reference.To{ - List: &OrganizationList{}, - Managed: &Organization{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.OrgID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.OrgIDRef, + Selector: mg.Spec.ForProvider.OrgIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.OrgID") } @@ -81,53 +94,64 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e // ResolveReferences of this Instance. func (mg *Instance) 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 + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.DiskEncryptionKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DiskEncryptionKeyNameRef, - Selector: mg.Spec.ForProvider.DiskEncryptionKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DiskEncryptionKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DiskEncryptionKeyNameRef, + Selector: mg.Spec.ForProvider.DiskEncryptionKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DiskEncryptionKeyName") } mg.Spec.ForProvider.DiskEncryptionKeyName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DiskEncryptionKeyNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("apigee.gcp.upbound.io", "v1beta1", "Organization", "OrganizationList") + 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.OrgID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.OrgIDRef, - Selector: mg.Spec.ForProvider.OrgIDSelector, - To: reference.To{ - List: &OrganizationList{}, - Managed: &Organization{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.OrgID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.OrgIDRef, + Selector: mg.Spec.ForProvider.OrgIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.OrgID") } mg.Spec.ForProvider.OrgID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.OrgIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.DiskEncryptionKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DiskEncryptionKeyNameRef, - Selector: mg.Spec.InitProvider.DiskEncryptionKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DiskEncryptionKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DiskEncryptionKeyNameRef, + Selector: mg.Spec.InitProvider.DiskEncryptionKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DiskEncryptionKeyName") } @@ -139,21 +163,26 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this NATAddress. func (mg *NATAddress) 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 + { + m, l, err = apisresolver.GetManagedResource("apigee.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.InstanceIDRef, - Selector: mg.Spec.ForProvider.InstanceIDSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceIDRef, + Selector: mg.Spec.ForProvider.InstanceIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceID") } @@ -165,69 +194,83 @@ func (mg *NATAddress) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this Organization. func (mg *Organization) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AuthorizedNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AuthorizedNetworkRef, - Selector: mg.Spec.ForProvider.AuthorizedNetworkSelector, - To: reference.To{ - List: &v1beta11.NetworkList{}, - Managed: &v1beta11.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AuthorizedNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AuthorizedNetworkRef, + Selector: mg.Spec.ForProvider.AuthorizedNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AuthorizedNetwork") } mg.Spec.ForProvider.AuthorizedNetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AuthorizedNetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.RuntimeDatabaseEncryptionKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyNameRef, - Selector: mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyNameRef, + Selector: mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyName") } mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RuntimeDatabaseEncryptionKeyNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AuthorizedNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AuthorizedNetworkRef, - Selector: mg.Spec.InitProvider.AuthorizedNetworkSelector, - To: reference.To{ - List: &v1beta11.NetworkList{}, - Managed: &v1beta11.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AuthorizedNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AuthorizedNetworkRef, + Selector: mg.Spec.InitProvider.AuthorizedNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AuthorizedNetwork") } mg.Spec.InitProvider.AuthorizedNetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.AuthorizedNetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.RuntimeDatabaseEncryptionKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyNameRef, - Selector: mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyNameRef, + Selector: mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RuntimeDatabaseEncryptionKeyName") } diff --git a/apis/appengine/v1beta1/zz_generated.resolvers.go b/apis/appengine/v1beta1/zz_generated.resolvers.go index 408c58dba..0ba6fa57e 100644 --- a/apis/appengine/v1beta1/zz_generated.resolvers.go +++ b/apis/appengine/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,53 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Application. -func (mg *Application) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Application) ResolveReferences( // ResolveReferences of this Application. + 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -70,22 +81,27 @@ func (mg *Application) ResolveReferences(ctx context.Context, c client.Reader) e // ResolveReferences of this ApplicationURLDispatchRules. func (mg *ApplicationURLDispatchRules) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.DispatchRules); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DispatchRules[i3].Service), - Extract: resource.ExtractParamPath("service", false), - Reference: mg.Spec.ForProvider.DispatchRules[i3].ServiceRef, - Selector: mg.Spec.ForProvider.DispatchRules[i3].ServiceSelector, - To: reference.To{ - List: &StandardAppVersionList{}, - Managed: &StandardAppVersion{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "StandardAppVersion", "StandardAppVersionList") + 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.DispatchRules[i3].Service), + Extract: resource.ExtractParamPath("service", false), + Reference: mg.Spec.ForProvider.DispatchRules[i3].ServiceRef, + Selector: mg.Spec.ForProvider.DispatchRules[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DispatchRules[i3].Service") } @@ -94,16 +110,19 @@ func (mg *ApplicationURLDispatchRules) ResolveReferences(ctx context.Context, c } for i3 := 0; i3 < len(mg.Spec.InitProvider.DispatchRules); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DispatchRules[i3].Service), - Extract: resource.ExtractParamPath("service", false), - Reference: mg.Spec.InitProvider.DispatchRules[i3].ServiceRef, - Selector: mg.Spec.InitProvider.DispatchRules[i3].ServiceSelector, - To: reference.To{ - List: &StandardAppVersionList{}, - Managed: &StandardAppVersion{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "StandardAppVersion", "StandardAppVersionList") + 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.DispatchRules[i3].Service), + Extract: resource.ExtractParamPath("service", false), + Reference: mg.Spec.InitProvider.DispatchRules[i3].ServiceRef, + Selector: mg.Spec.InitProvider.DispatchRules[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DispatchRules[i3].Service") } @@ -117,37 +136,45 @@ func (mg *ApplicationURLDispatchRules) ResolveReferences(ctx context.Context, c // ResolveReferences of this FirewallRule. func (mg *FirewallRule) 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 + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "Application", "ApplicationList") + 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.Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ApplicationList{}, - Managed: &Application{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "Application", "ApplicationList") + 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.Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ApplicationList{}, - Managed: &Application{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -159,37 +186,45 @@ func (mg *FirewallRule) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this ServiceNetworkSettings. func (mg *ServiceNetworkSettings) 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 + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "StandardAppVersion", "StandardAppVersionList") + 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.Service), - Extract: resource.ExtractParamPath("service", false), - Reference: mg.Spec.ForProvider.ServiceRef, - Selector: mg.Spec.ForProvider.ServiceSelector, - To: reference.To{ - List: &StandardAppVersionList{}, - Managed: &StandardAppVersion{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Service), + Extract: resource.ExtractParamPath("service", false), + Reference: mg.Spec.ForProvider.ServiceRef, + Selector: mg.Spec.ForProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Service") } mg.Spec.ForProvider.Service = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "StandardAppVersion", "StandardAppVersionList") + 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.Service), - Extract: resource.ExtractParamPath("service", false), - Reference: mg.Spec.InitProvider.ServiceRef, - Selector: mg.Spec.InitProvider.ServiceSelector, - To: reference.To{ - List: &StandardAppVersionList{}, - Managed: &StandardAppVersion{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Service), + Extract: resource.ExtractParamPath("service", false), + Reference: mg.Spec.InitProvider.ServiceRef, + Selector: mg.Spec.InitProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Service") } @@ -201,37 +236,45 @@ func (mg *ServiceNetworkSettings) ResolveReferences(ctx context.Context, c clien // ResolveReferences of this StandardAppVersion. func (mg *StandardAppVersion) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.ServiceAccountRef, - Selector: mg.Spec.ForProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.ServiceAccountRef, + Selector: mg.Spec.ForProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccount") } mg.Spec.ForProvider.ServiceAccount = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceAccountRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.ServiceAccountRef, - Selector: mg.Spec.InitProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.ServiceAccountRef, + Selector: mg.Spec.InitProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccount") } diff --git a/apis/artifact/v1beta1/zz_generated.resolvers.go b/apis/artifact/v1beta1/zz_generated.resolvers.go index e92d5da2c..c81828f8c 100644 --- a/apis/artifact/v1beta1/zz_generated.resolvers.go +++ b/apis/artifact/v1beta1/zz_generated.resolvers.go @@ -14,19 +14,24 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this RegistryRepository. -func (mg *RegistryRepository) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *RegistryRepository) ResolveReferences( // ResolveReferences of this RegistryRepository. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -34,16 +39,19 @@ func (mg *RegistryRepository) ResolveReferences(ctx context.Context, c client.Re for i3 := 0; i3 < len(mg.Spec.ForProvider.VirtualRepositoryConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositoryRef, - Selector: mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositorySelector, - To: reference.To{ - List: &RegistryRepositoryList{}, - Managed: &RegistryRepository{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("artifact.gcp.upbound.io", "v1beta1", "RegistryRepository", "RegistryRepositoryList") + 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.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositoryRef, + Selector: mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositorySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository") } @@ -54,16 +62,19 @@ func (mg *RegistryRepository) ResolveReferences(ctx context.Context, c client.Re } for i3 := 0; i3 < len(mg.Spec.InitProvider.VirtualRepositoryConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositoryRef, - Selector: mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositorySelector, - To: reference.To{ - List: &RegistryRepositoryList{}, - Managed: &RegistryRepository{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("artifact.gcp.upbound.io", "v1beta1", "RegistryRepository", "RegistryRepositoryList") + 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.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositoryRef, + Selector: mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].RepositorySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VirtualRepositoryConfig[i3].UpstreamPolicies[i4].Repository") } diff --git a/apis/beyondcorp/v1beta1/zz_generated.resolvers.go b/apis/beyondcorp/v1beta1/zz_generated.resolvers.go index 8d6505f41..57dff5fc6 100644 --- a/apis/beyondcorp/v1beta1/zz_generated.resolvers.go +++ b/apis/beyondcorp/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,28 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this AppConnection. -func (mg *AppConnection) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *AppConnection) ResolveReferences( // ResolveReferences of this AppConnection. + 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Gateway); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Gateway[i3].AppGateway), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Gateway[i3].AppGatewayRef, - Selector: mg.Spec.ForProvider.Gateway[i3].AppGatewaySelector, - To: reference.To{ - List: &AppGatewayList{}, - Managed: &AppGateway{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("beyondcorp.gcp.upbound.io", "v1beta1", "AppGateway", "AppGatewayList") + 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.Gateway[i3].AppGateway), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Gateway[i3].AppGatewayRef, + Selector: mg.Spec.ForProvider.Gateway[i3].AppGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Gateway[i3].AppGateway") } @@ -52,16 +60,19 @@ func (mg *AppConnection) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Gateway); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Gateway[i3].AppGateway), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Gateway[i3].AppGatewayRef, - Selector: mg.Spec.InitProvider.Gateway[i3].AppGatewaySelector, - To: reference.To{ - List: &AppGatewayList{}, - Managed: &AppGateway{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("beyondcorp.gcp.upbound.io", "v1beta1", "AppGateway", "AppGatewayList") + 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.Gateway[i3].AppGateway), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Gateway[i3].AppGatewayRef, + Selector: mg.Spec.InitProvider.Gateway[i3].AppGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Gateway[i3].AppGateway") } @@ -75,6 +86,8 @@ func (mg *AppConnection) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this AppConnector. func (mg *AppConnector) 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 @@ -82,16 +95,19 @@ func (mg *AppConnector) ResolveReferences(ctx context.Context, c client.Reader) for i3 := 0; i3 < len(mg.Spec.ForProvider.PrincipalInfo); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailRef, - Selector: mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.PrincipalInfo[i3].ServiceAccount[i4].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailRef, + Selector: mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PrincipalInfo[i3].ServiceAccount[i4].Email") } @@ -102,16 +118,19 @@ func (mg *AppConnector) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.PrincipalInfo); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailRef, - Selector: mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.PrincipalInfo[i3].ServiceAccount[i4].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailRef, + Selector: mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PrincipalInfo[i3].ServiceAccount[i4].Email") } diff --git a/apis/bigquery/v1beta1/zz_generated.resolvers.go b/apis/bigquery/v1beta1/zz_generated.resolvers.go index 50f720026..c4fcd02da 100644 --- a/apis/bigquery/v1beta1/zz_generated.resolvers.go +++ b/apis/bigquery/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,45 +23,53 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta12 "github.com/upbound/provider-gcp/apis/kms/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/sql/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this AnalyticsHubDataExchangeIAMMember. -func (mg *AnalyticsHubDataExchangeIAMMember) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *AnalyticsHubDataExchangeIAMMember) ResolveReferences( // ResolveReferences of this AnalyticsHubDataExchangeIAMMember. + 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "AnalyticsHubDataExchange", "AnalyticsHubDataExchangeList") + 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.DataExchangeID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DataExchangeIDRef, - Selector: mg.Spec.ForProvider.DataExchangeIDSelector, - To: reference.To{ - List: &AnalyticsHubDataExchangeList{}, - Managed: &AnalyticsHubDataExchange{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DataExchangeID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DataExchangeIDRef, + Selector: mg.Spec.ForProvider.DataExchangeIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DataExchangeID") } mg.Spec.ForProvider.DataExchangeID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DataExchangeIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "AnalyticsHubDataExchange", "AnalyticsHubDataExchangeList") + 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.DataExchangeID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DataExchangeIDRef, - Selector: mg.Spec.InitProvider.DataExchangeIDSelector, - To: reference.To{ - List: &AnalyticsHubDataExchangeList{}, - Managed: &AnalyticsHubDataExchange{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DataExchangeID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DataExchangeIDRef, + Selector: mg.Spec.InitProvider.DataExchangeIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DataExchangeID") } @@ -72,22 +81,27 @@ func (mg *AnalyticsHubDataExchangeIAMMember) ResolveReferences(ctx context.Conte // ResolveReferences of this AnalyticsHubListing. func (mg *AnalyticsHubListing) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.BigqueryDataset); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BigqueryDataset[i3].Dataset), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BigqueryDataset[i3].DatasetRef, - Selector: mg.Spec.ForProvider.BigqueryDataset[i3].DatasetSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.BigqueryDataset[i3].Dataset), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BigqueryDataset[i3].DatasetRef, + Selector: mg.Spec.ForProvider.BigqueryDataset[i3].DatasetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BigqueryDataset[i3].Dataset") } @@ -95,16 +109,19 @@ func (mg *AnalyticsHubListing) ResolveReferences(ctx context.Context, c client.R mg.Spec.ForProvider.BigqueryDataset[i3].DatasetRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DataExchangeID), - Extract: resource.ExtractParamPath("data_exchange_id", false), - Reference: mg.Spec.ForProvider.DataExchangeIDRef, - Selector: mg.Spec.ForProvider.DataExchangeIDSelector, - To: reference.To{ - List: &AnalyticsHubDataExchangeList{}, - Managed: &AnalyticsHubDataExchange{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "AnalyticsHubDataExchange", "AnalyticsHubDataExchangeList") + 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.DataExchangeID), + Extract: resource.ExtractParamPath("data_exchange_id", false), + Reference: mg.Spec.ForProvider.DataExchangeIDRef, + Selector: mg.Spec.ForProvider.DataExchangeIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DataExchangeID") } @@ -112,16 +129,19 @@ func (mg *AnalyticsHubListing) ResolveReferences(ctx context.Context, c client.R mg.Spec.ForProvider.DataExchangeIDRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.BigqueryDataset); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BigqueryDataset[i3].Dataset), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BigqueryDataset[i3].DatasetRef, - Selector: mg.Spec.InitProvider.BigqueryDataset[i3].DatasetSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.BigqueryDataset[i3].Dataset), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BigqueryDataset[i3].DatasetRef, + Selector: mg.Spec.InitProvider.BigqueryDataset[i3].DatasetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BigqueryDataset[i3].Dataset") } @@ -135,6 +155,8 @@ func (mg *AnalyticsHubListing) ResolveReferences(ctx context.Context, c client.R // ResolveReferences of this Connection. func (mg *Connection) 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 @@ -142,16 +164,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er for i3 := 0; i3 < len(mg.Spec.ForProvider.CloudSQL); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.CloudSQL[i3].Credential); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].Username), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].UsernameRef, - Selector: mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].UsernameSelector, - To: reference.To{ - List: &v1beta1.UserList{}, - Managed: &v1beta1.User{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].Username), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].UsernameRef, + Selector: mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].UsernameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudSQL[i3].Credential[i4].Username") } @@ -161,16 +186,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er } } for i3 := 0; i3 < len(mg.Spec.ForProvider.CloudSQL); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudSQL[i3].Database), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CloudSQL[i3].DatabaseRef, - Selector: mg.Spec.ForProvider.CloudSQL[i3].DatabaseSelector, - To: reference.To{ - List: &v1beta1.DatabaseList{}, - Managed: &v1beta1.Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.CloudSQL[i3].Database), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CloudSQL[i3].DatabaseRef, + Selector: mg.Spec.ForProvider.CloudSQL[i3].DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudSQL[i3].Database") } @@ -179,16 +207,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.ForProvider.CloudSQL); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudSQL[i3].InstanceID), - Extract: resource.ExtractParamPath("connection_name", true), - Reference: mg.Spec.ForProvider.CloudSQL[i3].InstanceIDRef, - Selector: mg.Spec.ForProvider.CloudSQL[i3].InstanceIDSelector, - To: reference.To{ - List: &v1beta1.DatabaseInstanceList{}, - Managed: &v1beta1.DatabaseInstance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.CloudSQL[i3].InstanceID), + Extract: resource.ExtractParamPath("connection_name", true), + Reference: mg.Spec.ForProvider.CloudSQL[i3].InstanceIDRef, + Selector: mg.Spec.ForProvider.CloudSQL[i3].InstanceIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudSQL[i3].InstanceID") } @@ -198,16 +229,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.CloudSQL); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.CloudSQL[i3].Credential); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].Username), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].UsernameRef, - Selector: mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].UsernameSelector, - To: reference.To{ - List: &v1beta1.UserList{}, - Managed: &v1beta1.User{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].Username), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].UsernameRef, + Selector: mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].UsernameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudSQL[i3].Credential[i4].Username") } @@ -217,16 +251,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er } } for i3 := 0; i3 < len(mg.Spec.InitProvider.CloudSQL); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudSQL[i3].Database), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CloudSQL[i3].DatabaseRef, - Selector: mg.Spec.InitProvider.CloudSQL[i3].DatabaseSelector, - To: reference.To{ - List: &v1beta1.DatabaseList{}, - Managed: &v1beta1.Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.CloudSQL[i3].Database), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CloudSQL[i3].DatabaseRef, + Selector: mg.Spec.InitProvider.CloudSQL[i3].DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudSQL[i3].Database") } @@ -235,16 +272,19 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.CloudSQL); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudSQL[i3].InstanceID), - Extract: resource.ExtractParamPath("connection_name", true), - Reference: mg.Spec.InitProvider.CloudSQL[i3].InstanceIDRef, - Selector: mg.Spec.InitProvider.CloudSQL[i3].InstanceIDSelector, - To: reference.To{ - List: &v1beta1.DatabaseInstanceList{}, - Managed: &v1beta1.DatabaseInstance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.CloudSQL[i3].InstanceID), + Extract: resource.ExtractParamPath("connection_name", true), + Reference: mg.Spec.InitProvider.CloudSQL[i3].InstanceIDRef, + Selector: mg.Spec.InitProvider.CloudSQL[i3].InstanceIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudSQL[i3].InstanceID") } @@ -258,37 +298,45 @@ func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this DataTransferConfig. func (mg *DataTransferConfig) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DestinationDatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DestinationDatasetIDRef, - Selector: mg.Spec.ForProvider.DestinationDatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DestinationDatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DestinationDatasetIDRef, + Selector: mg.Spec.ForProvider.DestinationDatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DestinationDatasetID") } mg.Spec.ForProvider.DestinationDatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DestinationDatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DestinationDatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DestinationDatasetIDRef, - Selector: mg.Spec.InitProvider.DestinationDatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DestinationDatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DestinationDatasetIDRef, + Selector: mg.Spec.InitProvider.DestinationDatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DestinationDatasetID") } @@ -300,6 +348,8 @@ func (mg *DataTransferConfig) ResolveReferences(ctx context.Context, c client.Re // ResolveReferences of this Dataset. func (mg *Dataset) 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 @@ -308,16 +358,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error for i3 := 0; i3 < len(mg.Spec.ForProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Access[i3].Dataset); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDRef, - Selector: mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Access[i3].Dataset[i4].Dataset[i5].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDRef, + Selector: mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetID") } @@ -329,16 +382,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetID), - Extract: resource.ExtractParamPath("dataset_id", false), - Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].DatasetID), + Extract: resource.ExtractParamPath("dataset_id", false), + Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Access[i3].Routine[i4].DatasetID") } @@ -349,16 +405,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectIDRef, - Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectIDRef, + Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Access[i3].Routine[i4].ProjectID") } @@ -369,16 +428,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineIDRef, - Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].RoutineID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineIDRef, + Selector: mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Access[i3].Routine[i4].RoutineID") } @@ -388,16 +450,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } } for i3 := 0; i3 < len(mg.Spec.ForProvider.Access); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Access[i3].UserByEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.Access[i3].UserByEmailRef, - Selector: mg.Spec.ForProvider.Access[i3].UserByEmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.Access[i3].UserByEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.Access[i3].UserByEmailRef, + Selector: mg.Spec.ForProvider.Access[i3].UserByEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Access[i3].UserByEmail") } @@ -406,16 +471,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.DefaultEncryptionConfiguration); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameRef, - Selector: mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta12.CryptoKeyList{}, - Managed: &v1beta12.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.DefaultEncryptionConfiguration[i3].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameRef, + Selector: mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DefaultEncryptionConfiguration[i3].KMSKeyName") } @@ -426,16 +494,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error for i3 := 0; i3 < len(mg.Spec.InitProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Access[i3].Dataset); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDRef, - Selector: mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Access[i3].Dataset[i4].Dataset[i5].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDRef, + Selector: mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Access[i3].Dataset[i4].Dataset[i5].DatasetID") } @@ -447,16 +518,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetID), - Extract: resource.ExtractParamPath("dataset_id", false), - Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].DatasetID), + Extract: resource.ExtractParamPath("dataset_id", false), + Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Access[i3].Routine[i4].DatasetID") } @@ -467,16 +541,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectIDRef, - Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectIDRef, + Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Access[i3].Routine[i4].ProjectID") } @@ -487,16 +564,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.Access); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Access[i3].Routine); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineIDRef, - Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Access[i3].Routine[i4].RoutineID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineIDRef, + Selector: mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Access[i3].Routine[i4].RoutineID") } @@ -506,16 +586,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Access); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Access[i3].UserByEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.Access[i3].UserByEmailRef, - Selector: mg.Spec.InitProvider.Access[i3].UserByEmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.Access[i3].UserByEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.Access[i3].UserByEmailRef, + Selector: mg.Spec.InitProvider.Access[i3].UserByEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Access[i3].UserByEmail") } @@ -524,16 +607,19 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.DefaultEncryptionConfiguration); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameRef, - Selector: mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta12.CryptoKeyList{}, - Managed: &v1beta12.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.DefaultEncryptionConfiguration[i3].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameRef, + Selector: mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DefaultEncryptionConfiguration[i3].KMSKeyName") } @@ -547,6 +633,8 @@ func (mg *Dataset) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this DatasetAccess. func (mg *DatasetAccess) 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 @@ -554,16 +642,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) for i3 := 0; i3 < len(mg.Spec.ForProvider.Dataset); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Dataset[i3].Dataset); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Dataset[i3].Dataset[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Dataset[i3].Dataset[i4].DatasetID") } @@ -572,16 +663,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -589,16 +683,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.DatasetIDRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Routine[i3].DatasetID), - Extract: resource.ExtractParamPath("dataset_id", false), - Reference: mg.Spec.ForProvider.Routine[i3].DatasetIDRef, - Selector: mg.Spec.ForProvider.Routine[i3].DatasetIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].DatasetID), + Extract: resource.ExtractParamPath("dataset_id", false), + Reference: mg.Spec.ForProvider.Routine[i3].DatasetIDRef, + Selector: mg.Spec.ForProvider.Routine[i3].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Routine[i3].DatasetID") } @@ -607,16 +704,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Routine[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.Routine[i3].ProjectIDRef, - Selector: mg.Spec.ForProvider.Routine[i3].ProjectIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.Routine[i3].ProjectIDRef, + Selector: mg.Spec.ForProvider.Routine[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Routine[i3].ProjectID") } @@ -625,16 +725,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Routine[i3].RoutineID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Routine[i3].RoutineIDRef, - Selector: mg.Spec.ForProvider.Routine[i3].RoutineIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].RoutineID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Routine[i3].RoutineIDRef, + Selector: mg.Spec.ForProvider.Routine[i3].RoutineIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Routine[i3].RoutineID") } @@ -642,16 +745,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.Routine[i3].RoutineIDRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.UserByEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.UserByEmailRef, - Selector: mg.Spec.ForProvider.UserByEmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.UserByEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.UserByEmailRef, + Selector: mg.Spec.ForProvider.UserByEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.UserByEmail") } @@ -659,16 +765,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.UserByEmailRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.View); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.View[i3].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.View[i3].DatasetIDRef, - Selector: mg.Spec.ForProvider.View[i3].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.View[i3].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.View[i3].DatasetIDRef, + Selector: mg.Spec.ForProvider.View[i3].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.View[i3].DatasetID") } @@ -677,16 +786,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.View); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.View[i3].TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.View[i3].TableIDRef, - Selector: mg.Spec.ForProvider.View[i3].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.View[i3].TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.View[i3].TableIDRef, + Selector: mg.Spec.ForProvider.View[i3].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.View[i3].TableID") } @@ -696,16 +808,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Dataset); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Dataset[i3].Dataset); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Dataset[i3].Dataset[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Dataset[i3].Dataset[i4].DatasetID") } @@ -714,16 +829,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DatasetIDRef, - Selector: mg.Spec.InitProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DatasetIDRef, + Selector: mg.Spec.InitProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DatasetID") } @@ -731,16 +849,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.DatasetIDRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Routine[i3].DatasetID), - Extract: resource.ExtractParamPath("dataset_id", false), - Reference: mg.Spec.InitProvider.Routine[i3].DatasetIDRef, - Selector: mg.Spec.InitProvider.Routine[i3].DatasetIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].DatasetID), + Extract: resource.ExtractParamPath("dataset_id", false), + Reference: mg.Spec.InitProvider.Routine[i3].DatasetIDRef, + Selector: mg.Spec.InitProvider.Routine[i3].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Routine[i3].DatasetID") } @@ -749,16 +870,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Routine[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.Routine[i3].ProjectIDRef, - Selector: mg.Spec.InitProvider.Routine[i3].ProjectIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.Routine[i3].ProjectIDRef, + Selector: mg.Spec.InitProvider.Routine[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Routine[i3].ProjectID") } @@ -767,16 +891,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Routine); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Routine[i3].RoutineID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Routine[i3].RoutineIDRef, - Selector: mg.Spec.InitProvider.Routine[i3].RoutineIDSelector, - To: reference.To{ - List: &RoutineList{}, - Managed: &Routine{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Routine", "RoutineList") + 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.Routine[i3].RoutineID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Routine[i3].RoutineIDRef, + Selector: mg.Spec.InitProvider.Routine[i3].RoutineIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Routine[i3].RoutineID") } @@ -784,16 +911,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.Routine[i3].RoutineIDRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.UserByEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.UserByEmailRef, - Selector: mg.Spec.InitProvider.UserByEmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.UserByEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.UserByEmailRef, + Selector: mg.Spec.InitProvider.UserByEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.UserByEmail") } @@ -801,16 +931,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.UserByEmailRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.View); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.View[i3].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.View[i3].DatasetIDRef, - Selector: mg.Spec.InitProvider.View[i3].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.View[i3].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.View[i3].DatasetIDRef, + Selector: mg.Spec.InitProvider.View[i3].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.View[i3].DatasetID") } @@ -819,16 +952,19 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.View); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.View[i3].TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.View[i3].TableIDRef, - Selector: mg.Spec.InitProvider.View[i3].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.View[i3].TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.View[i3].TableIDRef, + Selector: mg.Spec.InitProvider.View[i3].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.View[i3].TableID") } @@ -842,21 +978,26 @@ func (mg *DatasetAccess) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this DatasetIAMBinding. func (mg *DatasetIAMBinding) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -868,21 +1009,26 @@ func (mg *DatasetIAMBinding) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this DatasetIAMMember. func (mg *DatasetIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -894,21 +1040,26 @@ func (mg *DatasetIAMMember) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this DatasetIAMPolicy. func (mg *DatasetIAMPolicy) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -920,6 +1071,8 @@ func (mg *DatasetIAMPolicy) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this Job. func (mg *Job) 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 @@ -927,16 +1080,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { for i3 := 0; i3 < len(mg.Spec.ForProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameRef, - Selector: mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta12.CryptoKeyList{}, - Managed: &v1beta12.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameRef, + Selector: mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName") } @@ -947,16 +1103,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Copy[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Copy[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].DatasetID") } @@ -967,16 +1126,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Copy[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Copy[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Copy[i3].DestinationTable[i4].TableID") } @@ -987,16 +1149,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Extract); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Extract[i3].SourceTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Extract[i3].SourceTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Extract[i3].SourceTable[i4].DatasetID") } @@ -1007,16 +1172,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Extract); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Extract[i3].SourceTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableIDRef, - Selector: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Extract[i3].SourceTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableIDRef, + Selector: mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Extract[i3].SourceTable[i4].TableID") } @@ -1027,16 +1195,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Load); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Load[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Load[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Load[i3].DestinationTable[i4].DatasetID") } @@ -1047,16 +1218,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Load); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Load[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Load[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Load[i3].DestinationTable[i4].TableID") } @@ -1067,16 +1241,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Query[i3].DefaultDataset); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Query[i3].DefaultDataset[i4].DatasetID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Query[i3].DefaultDataset[i4].DatasetID") } @@ -1087,16 +1264,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Query[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Query[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Query[i3].DestinationTable[i4].DatasetID") } @@ -1107,16 +1287,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.ForProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Query[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Query[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Query[i3].DestinationTable[i4].TableID") } @@ -1127,16 +1310,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameRef, - Selector: mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta12.CryptoKeyList{}, - Managed: &v1beta12.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameRef, + Selector: mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Copy[i3].DestinationEncryptionConfiguration[i4].KMSKeyName") } @@ -1147,16 +1333,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Copy[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Copy[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].DatasetID") } @@ -1167,16 +1356,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Copy); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Copy[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Copy[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Copy[i3].DestinationTable[i4].TableID") } @@ -1187,16 +1379,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Extract); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Extract[i3].SourceTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Extract[i3].SourceTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Extract[i3].SourceTable[i4].DatasetID") } @@ -1207,16 +1402,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Extract); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Extract[i3].SourceTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableIDRef, - Selector: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Extract[i3].SourceTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableIDRef, + Selector: mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Extract[i3].SourceTable[i4].TableID") } @@ -1227,16 +1425,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Load); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Load[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Load[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Load[i3].DestinationTable[i4].DatasetID") } @@ -1247,16 +1448,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Load); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Load[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Load[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Load[i3].DestinationTable[i4].TableID") } @@ -1267,16 +1471,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Query[i3].DefaultDataset); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Query[i3].DefaultDataset[i4].DatasetID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Query[i3].DefaultDataset[i4].DatasetID") } @@ -1287,16 +1494,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Query[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetIDRef, - Selector: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Query[i3].DestinationTable[i4].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetIDRef, + Selector: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Query[i3].DestinationTable[i4].DatasetID") } @@ -1307,16 +1517,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.Query); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Query[i3].DestinationTable); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableID), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableIDRef, - Selector: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Query[i3].DestinationTable[i4].TableID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableIDRef, + Selector: mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Query[i3].DestinationTable[i4].TableID") } @@ -1331,21 +1544,26 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this ReservationAssignment. func (mg *ReservationAssignment) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Reservation", "ReservationList") + 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.Reservation), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ReservationRef, - Selector: mg.Spec.ForProvider.ReservationSelector, - To: reference.To{ - List: &ReservationList{}, - Managed: &Reservation{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Reservation), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ReservationRef, + Selector: mg.Spec.ForProvider.ReservationSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Reservation") } @@ -1357,21 +1575,26 @@ func (mg *ReservationAssignment) ResolveReferences(ctx context.Context, c client // ResolveReferences of this Routine. func (mg *Routine) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -1383,21 +1606,26 @@ func (mg *Routine) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Table. func (mg *Table) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } @@ -1409,69 +1637,83 @@ func (mg *Table) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this TableIAMBinding. func (mg *TableIAMBinding) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } mg.Spec.ForProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TableIDRef, - Selector: mg.Spec.ForProvider.TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TableIDRef, + Selector: mg.Spec.ForProvider.TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TableID") } mg.Spec.ForProvider.TableID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TableIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DatasetIDRef, - Selector: mg.Spec.InitProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DatasetIDRef, + Selector: mg.Spec.InitProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DatasetID") } mg.Spec.InitProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TableIDRef, - Selector: mg.Spec.InitProvider.TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TableIDRef, + Selector: mg.Spec.InitProvider.TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TableID") } @@ -1483,37 +1725,45 @@ func (mg *TableIAMBinding) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this TableIAMMember. func (mg *TableIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } mg.Spec.ForProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TableIDRef, - Selector: mg.Spec.ForProvider.TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TableIDRef, + Selector: mg.Spec.ForProvider.TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TableID") } @@ -1525,69 +1775,83 @@ func (mg *TableIAMMember) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this TableIAMPolicy. func (mg *TableIAMPolicy) 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 + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } mg.Spec.ForProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TableIDRef, - Selector: mg.Spec.ForProvider.TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TableIDRef, + Selector: mg.Spec.ForProvider.TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TableID") } mg.Spec.ForProvider.TableID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TableIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DatasetIDRef, - Selector: mg.Spec.InitProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DatasetIDRef, + Selector: mg.Spec.InitProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DatasetID") } mg.Spec.InitProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TableIDRef, - Selector: mg.Spec.InitProvider.TableIDSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TableIDRef, + Selector: mg.Spec.InitProvider.TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TableID") } diff --git a/apis/bigtable/v1beta1/zz_generated.resolvers.go b/apis/bigtable/v1beta1/zz_generated.resolvers.go index a1201712b..748414a44 100644 --- a/apis/bigtable/v1beta1/zz_generated.resolvers.go +++ b/apis/bigtable/v1beta1/zz_generated.resolvers.go @@ -14,33 +14,41 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this AppProfile. -func (mg *AppProfile) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *AppProfile) ResolveReferences( // ResolveReferences of this AppProfile. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } @@ -52,69 +60,83 @@ func (mg *AppProfile) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this GarbageCollectionPolicy. func (mg *GarbageCollectionPolicy) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceNameRef, - Selector: mg.Spec.ForProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceNameRef, + Selector: mg.Spec.ForProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceName") } mg.Spec.ForProvider.InstanceName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Table), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TableRef, - Selector: mg.Spec.ForProvider.TableSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Table), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TableRef, + Selector: mg.Spec.ForProvider.TableSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Table") } mg.Spec.ForProvider.Table = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TableRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceNameRef, - Selector: mg.Spec.InitProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceNameRef, + Selector: mg.Spec.InitProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InstanceName") } mg.Spec.InitProvider.InstanceName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.InstanceNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Table), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TableRef, - Selector: mg.Spec.InitProvider.TableSelector, - To: reference.To{ - List: &TableList{}, - Managed: &Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.Table), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TableRef, + Selector: mg.Spec.InitProvider.TableSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Table") } @@ -126,21 +148,26 @@ func (mg *GarbageCollectionPolicy) ResolveReferences(ctx context.Context, c clie // ResolveReferences of this Table. func (mg *Table) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceNameRef, - Selector: mg.Spec.ForProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigtable.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceNameRef, + Selector: mg.Spec.ForProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceName") } diff --git a/apis/binaryauthorization/v1beta1/zz_generated.resolvers.go b/apis/binaryauthorization/v1beta1/zz_generated.resolvers.go index f31ce116c..a95363e9b 100644 --- a/apis/binaryauthorization/v1beta1/zz_generated.resolvers.go +++ b/apis/binaryauthorization/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,28 +22,36 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/containeranalysis/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Attestor. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Attestor. func (mg *Attestor) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.AttestationAuthorityNote); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReference), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReferenceRef, - Selector: mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReferenceSelector, - To: reference.To{ - List: &v1beta1.NoteList{}, - Managed: &v1beta1.Note{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("containeranalysis.gcp.upbound.io", "v1beta1", "Note", "NoteList") + 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.AttestationAuthorityNote[i3].NoteReference), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReferenceRef, + Selector: mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReferenceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AttestationAuthorityNote[i3].NoteReference") } @@ -51,16 +60,19 @@ func (mg *Attestor) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.AttestationAuthorityNote); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReference), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReferenceRef, - Selector: mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReferenceSelector, - To: reference.To{ - List: &v1beta1.NoteList{}, - Managed: &v1beta1.Note{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("containeranalysis.gcp.upbound.io", "v1beta1", "Note", "NoteList") + 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.AttestationAuthorityNote[i3].NoteReference), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReferenceRef, + Selector: mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReferenceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AttestationAuthorityNote[i3].NoteReference") } diff --git a/apis/certificatemanager/v1beta1/zz_generated.resolvers.go b/apis/certificatemanager/v1beta1/zz_generated.resolvers.go index 7e0e07291..82926e8e6 100644 --- a/apis/certificatemanager/v1beta1/zz_generated.resolvers.go +++ b/apis/certificatemanager/v1beta1/zz_generated.resolvers.go @@ -14,33 +14,41 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this CertificateMapEntry. -func (mg *CertificateMapEntry) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *CertificateMapEntry) ResolveReferences( // ResolveReferences of this CertificateMapEntry. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Map), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.MapRef, - Selector: mg.Spec.ForProvider.MapSelector, - To: reference.To{ - List: &CertificateMapList{}, - Managed: &CertificateMap{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("certificatemanager.gcp.upbound.io", "v1beta1", "CertificateMap", "CertificateMapList") + 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.Map), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.MapRef, + Selector: mg.Spec.ForProvider.MapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Map") } diff --git a/apis/cloud/v1beta1/zz_generated.resolvers.go b/apis/cloud/v1beta1/zz_generated.resolvers.go index 45c804de1..80d6c68c4 100644 --- a/apis/cloud/v1beta1/zz_generated.resolvers.go +++ b/apis/cloud/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,53 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this IdsEndpoint. -func (mg *IdsEndpoint) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *IdsEndpoint) ResolveReferences( // ResolveReferences of this IdsEndpoint. + 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } diff --git a/apis/cloudbuild/v1beta1/zz_generated.resolvers.go b/apis/cloudbuild/v1beta1/zz_generated.resolvers.go index 5af8c9c30..6a23273c4 100644 --- a/apis/cloudbuild/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudbuild/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,31 +23,36 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta13 "github.com/upbound/provider-gcp/apis/compute/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" - v1beta12 "github.com/upbound/provider-gcp/apis/secretmanager/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Trigger. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Trigger. func (mg *Trigger) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.PubsubConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubConfig[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PubsubConfig[i3].TopicRef, - Selector: mg.Spec.ForProvider.PubsubConfig[i3].TopicSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubConfig[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PubsubConfig[i3].TopicRef, + Selector: mg.Spec.ForProvider.PubsubConfig[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PubsubConfig[i3].Topic") } @@ -54,16 +60,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.PubsubConfig[i3].TopicRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccount), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ServiceAccountRef, - Selector: mg.Spec.ForProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ServiceAccountRef, + Selector: mg.Spec.ForProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccount") } @@ -71,16 +80,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.ServiceAccountRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.WebhookConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WebhookConfig[i3].Secret), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.WebhookConfig[i3].SecretRef, - Selector: mg.Spec.ForProvider.WebhookConfig[i3].SecretSelector, - To: reference.To{ - List: &v1beta12.SecretVersionList{}, - Managed: &v1beta12.SecretVersion{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "SecretVersion", "SecretVersionList") + 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.WebhookConfig[i3].Secret), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.WebhookConfig[i3].SecretRef, + Selector: mg.Spec.ForProvider.WebhookConfig[i3].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.WebhookConfig[i3].Secret") } @@ -89,16 +101,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.PubsubConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubConfig[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PubsubConfig[i3].TopicRef, - Selector: mg.Spec.InitProvider.PubsubConfig[i3].TopicSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubConfig[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PubsubConfig[i3].TopicRef, + Selector: mg.Spec.InitProvider.PubsubConfig[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PubsubConfig[i3].Topic") } @@ -106,16 +121,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.PubsubConfig[i3].TopicRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccount), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ServiceAccountRef, - Selector: mg.Spec.InitProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ServiceAccountRef, + Selector: mg.Spec.InitProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccount") } @@ -123,16 +141,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.ServiceAccountRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.WebhookConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.WebhookConfig[i3].Secret), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.WebhookConfig[i3].SecretRef, - Selector: mg.Spec.InitProvider.WebhookConfig[i3].SecretSelector, - To: reference.To{ - List: &v1beta12.SecretVersionList{}, - Managed: &v1beta12.SecretVersion{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "SecretVersion", "SecretVersionList") + 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.WebhookConfig[i3].Secret), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.WebhookConfig[i3].SecretRef, + Selector: mg.Spec.InitProvider.WebhookConfig[i3].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.WebhookConfig[i3].Secret") } @@ -146,22 +167,27 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this WorkerPool. func (mg *WorkerPool) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetworkRef, - Selector: mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetworkSelector, - To: reference.To{ - List: &v1beta13.NetworkList{}, - Managed: &v1beta13.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkConfig[i3].PeeredNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetworkRef, + Selector: mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkConfig[i3].PeeredNetwork") } @@ -170,16 +196,19 @@ func (mg *WorkerPool) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetworkRef, - Selector: mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetworkSelector, - To: reference.To{ - List: &v1beta13.NetworkList{}, - Managed: &v1beta13.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkConfig[i3].PeeredNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetworkRef, + Selector: mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkConfig[i3].PeeredNetwork") } diff --git a/apis/cloudfunctions/v1beta1/zz_generated.resolvers.go b/apis/cloudfunctions/v1beta1/zz_generated.resolvers.go index e986de862..da10fc041 100644 --- a/apis/cloudfunctions/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudfunctions/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,75 +23,92 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/storage/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Function. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Function. func (mg *Function) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SourceArchiveBucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.SourceArchiveBucketRef, - Selector: mg.Spec.ForProvider.SourceArchiveBucketSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.SourceArchiveBucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.SourceArchiveBucketRef, + Selector: mg.Spec.ForProvider.SourceArchiveBucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SourceArchiveBucket") } mg.Spec.ForProvider.SourceArchiveBucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SourceArchiveBucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SourceArchiveObject), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.SourceArchiveObjectRef, - Selector: mg.Spec.ForProvider.SourceArchiveObjectSelector, - To: reference.To{ - List: &v1beta1.BucketObjectList{}, - Managed: &v1beta1.BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.SourceArchiveObject), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.SourceArchiveObjectRef, + Selector: mg.Spec.ForProvider.SourceArchiveObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SourceArchiveObject") } mg.Spec.ForProvider.SourceArchiveObject = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SourceArchiveObjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SourceArchiveBucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.SourceArchiveBucketRef, - Selector: mg.Spec.InitProvider.SourceArchiveBucketSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.SourceArchiveBucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.SourceArchiveBucketRef, + Selector: mg.Spec.InitProvider.SourceArchiveBucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SourceArchiveBucket") } mg.Spec.InitProvider.SourceArchiveBucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SourceArchiveBucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SourceArchiveObject), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.SourceArchiveObjectRef, - Selector: mg.Spec.InitProvider.SourceArchiveObjectSelector, - To: reference.To{ - List: &v1beta1.BucketObjectList{}, - Managed: &v1beta1.BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.SourceArchiveObject), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.SourceArchiveObjectRef, + Selector: mg.Spec.InitProvider.SourceArchiveObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SourceArchiveObject") } @@ -102,37 +120,45 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this FunctionIAMMember. func (mg *FunctionIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudFunction), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CloudFunctionRef, - Selector: mg.Spec.ForProvider.CloudFunctionSelector, - To: reference.To{ - List: &FunctionList{}, - Managed: &Function{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudfunctions.gcp.upbound.io", "v1beta1", "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.CloudFunction), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CloudFunctionRef, + Selector: mg.Spec.ForProvider.CloudFunctionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudFunction") } mg.Spec.ForProvider.CloudFunction = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CloudFunctionRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudFunction), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CloudFunctionRef, - Selector: mg.Spec.InitProvider.CloudFunctionSelector, - To: reference.To{ - List: &FunctionList{}, - Managed: &Function{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudfunctions.gcp.upbound.io", "v1beta1", "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.CloudFunction), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CloudFunctionRef, + Selector: mg.Spec.InitProvider.CloudFunctionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudFunction") } diff --git a/apis/cloudfunctions2/v1beta1/zz_generated.resolvers.go b/apis/cloudfunctions2/v1beta1/zz_generated.resolvers.go index 873f7b2f0..4fa09bcc2 100644 --- a/apis/cloudfunctions2/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudfunctions2/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,16 +23,17 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudbuild/v1beta1" - v1beta13 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta12 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" - v1beta14 "github.com/upbound/provider-gcp/apis/secretmanager/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/storage/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Function. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Function. func (mg *Function) 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 @@ -40,16 +42,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro for i3 := 0; i3 < len(mg.Spec.ForProvider.BuildConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.BuildConfig[i3].Source); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketRef, - Selector: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketRef, + Selector: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket") } @@ -62,16 +67,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro for i3 := 0; i3 < len(mg.Spec.ForProvider.BuildConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.BuildConfig[i3].Source); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Object), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectRef, - Selector: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectSelector, - To: reference.To{ - List: &v1beta1.BucketObjectList{}, - Managed: &v1beta1.BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.BuildConfig[i3].Source[i4].StorageSource[i5].Object), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectRef, + Selector: mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Object") } @@ -82,16 +90,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.ForProvider.BuildConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BuildConfig[i3].WorkerPool), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BuildConfig[i3].WorkerPoolRef, - Selector: mg.Spec.ForProvider.BuildConfig[i3].WorkerPoolSelector, - To: reference.To{ - List: &v1beta11.WorkerPoolList{}, - Managed: &v1beta11.WorkerPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudbuild.gcp.upbound.io", "v1beta1", "WorkerPool", "WorkerPoolList") + 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.BuildConfig[i3].WorkerPool), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BuildConfig[i3].WorkerPoolRef, + Selector: mg.Spec.ForProvider.BuildConfig[i3].WorkerPoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BuildConfig[i3].WorkerPool") } @@ -101,16 +112,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.EventTrigger); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.EventTrigger[i3].EventFilters); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].Value), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].ValueRef, - Selector: mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].ValueSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.EventTrigger[i3].EventFilters[i4].Value), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].ValueRef, + Selector: mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].ValueSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EventTrigger[i3].EventFilters[i4].Value") } @@ -120,16 +134,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.ForProvider.EventTrigger); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventTrigger[i3].PubsubTopic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EventTrigger[i3].PubsubTopicRef, - Selector: mg.Spec.ForProvider.EventTrigger[i3].PubsubTopicSelector, - To: reference.To{ - List: &v1beta12.TopicList{}, - Managed: &v1beta12.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventTrigger[i3].PubsubTopic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EventTrigger[i3].PubsubTopicRef, + Selector: mg.Spec.ForProvider.EventTrigger[i3].PubsubTopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EventTrigger[i3].PubsubTopic") } @@ -138,16 +155,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.EventTrigger); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmailRef, - Selector: mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta13.ServiceAccountList{}, - Managed: &v1beta13.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.EventTrigger[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmailRef, + Selector: mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EventTrigger[i3].ServiceAccountEmail") } @@ -157,16 +177,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.ServiceConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretRef, - Selector: mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretSelector, - To: reference.To{ - List: &v1beta14.SecretList{}, - Managed: &v1beta14.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretRef, + Selector: mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret") } @@ -177,16 +200,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.ServiceConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].SecretRef, - Selector: mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].SecretSelector, - To: reference.To{ - List: &v1beta14.SecretList{}, - Managed: &v1beta14.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.ServiceConfig[i3].SecretVolumes[i4].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].SecretRef, + Selector: mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceConfig[i3].SecretVolumes[i4].Secret") } @@ -196,16 +222,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.ForProvider.ServiceConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmailRef, - Selector: mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta13.ServiceAccountList{}, - Managed: &v1beta13.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceConfig[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmailRef, + Selector: mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceConfig[i3].ServiceAccountEmail") } @@ -216,16 +245,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro for i3 := 0; i3 < len(mg.Spec.InitProvider.BuildConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.BuildConfig[i3].Source); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketRef, - Selector: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketRef, + Selector: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Bucket") } @@ -238,16 +270,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro for i3 := 0; i3 < len(mg.Spec.InitProvider.BuildConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.BuildConfig[i3].Source); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Object), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectRef, - Selector: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectSelector, - To: reference.To{ - List: &v1beta1.BucketObjectList{}, - Managed: &v1beta1.BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.BuildConfig[i3].Source[i4].StorageSource[i5].Object), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectRef, + Selector: mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BuildConfig[i3].Source[i4].StorageSource[i5].Object") } @@ -258,16 +293,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.InitProvider.BuildConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BuildConfig[i3].WorkerPool), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BuildConfig[i3].WorkerPoolRef, - Selector: mg.Spec.InitProvider.BuildConfig[i3].WorkerPoolSelector, - To: reference.To{ - List: &v1beta11.WorkerPoolList{}, - Managed: &v1beta11.WorkerPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudbuild.gcp.upbound.io", "v1beta1", "WorkerPool", "WorkerPoolList") + 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.BuildConfig[i3].WorkerPool), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BuildConfig[i3].WorkerPoolRef, + Selector: mg.Spec.InitProvider.BuildConfig[i3].WorkerPoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BuildConfig[i3].WorkerPool") } @@ -277,16 +315,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.EventTrigger); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.EventTrigger[i3].EventFilters); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].Value), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].ValueRef, - Selector: mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].ValueSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.EventTrigger[i3].EventFilters[i4].Value), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].ValueRef, + Selector: mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].ValueSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EventTrigger[i3].EventFilters[i4].Value") } @@ -296,16 +337,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.InitProvider.EventTrigger); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventTrigger[i3].PubsubTopic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EventTrigger[i3].PubsubTopicRef, - Selector: mg.Spec.InitProvider.EventTrigger[i3].PubsubTopicSelector, - To: reference.To{ - List: &v1beta12.TopicList{}, - Managed: &v1beta12.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventTrigger[i3].PubsubTopic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EventTrigger[i3].PubsubTopicRef, + Selector: mg.Spec.InitProvider.EventTrigger[i3].PubsubTopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EventTrigger[i3].PubsubTopic") } @@ -314,16 +358,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.EventTrigger); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmailRef, - Selector: mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta13.ServiceAccountList{}, - Managed: &v1beta13.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.EventTrigger[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmailRef, + Selector: mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EventTrigger[i3].ServiceAccountEmail") } @@ -333,16 +380,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.ServiceConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretRef, - Selector: mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretSelector, - To: reference.To{ - List: &v1beta14.SecretList{}, - Managed: &v1beta14.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretRef, + Selector: mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceConfig[i3].SecretEnvironmentVariables[i4].Secret") } @@ -353,16 +403,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.ServiceConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].SecretRef, - Selector: mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].SecretSelector, - To: reference.To{ - List: &v1beta14.SecretList{}, - Managed: &v1beta14.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.ServiceConfig[i3].SecretVolumes[i4].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].SecretRef, + Selector: mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceConfig[i3].SecretVolumes[i4].Secret") } @@ -372,16 +425,19 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.InitProvider.ServiceConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmailRef, - Selector: mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta13.ServiceAccountList{}, - Managed: &v1beta13.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceConfig[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmailRef, + Selector: mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceConfig[i3].ServiceAccountEmail") } diff --git a/apis/cloudiot/v1beta1/zz_generated.resolvers.go b/apis/cloudiot/v1beta1/zz_generated.resolvers.go index 3d9fd2475..4d988b6c2 100644 --- a/apis/cloudiot/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudiot/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,27 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Device. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Device. func (mg *Device) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudiot.gcp.upbound.io", "v1beta1", "Registry", "RegistryList") + 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.Registry), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.RegistryRef, - Selector: mg.Spec.ForProvider.RegistrySelector, - To: reference.To{ - List: &RegistryList{}, - Managed: &Registry{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Registry), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.RegistryRef, + Selector: mg.Spec.ForProvider.RegistrySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Registry") } @@ -54,22 +63,27 @@ func (mg *Device) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Registry. func (mg *Registry) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.EventNotificationConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicNameRef, - Selector: mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicNameSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicNameRef, + Selector: mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EventNotificationConfigs[i3].PubsubTopicName") } @@ -78,16 +92,19 @@ func (mg *Registry) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.EventNotificationConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicNameRef, - Selector: mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicNameSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicNameRef, + Selector: mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EventNotificationConfigs[i3].PubsubTopicName") } diff --git a/apis/cloudplatform/v1beta1/zz_generated.resolvers.go b/apis/cloudplatform/v1beta1/zz_generated.resolvers.go index 64e66bf84..39ea2ba3f 100644 --- a/apis/cloudplatform/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudplatform/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,44 +23,55 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/storage/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" common "github.com/upbound/provider-gcp/config/common" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Folder. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Folder. func (mg *Folder) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Parent), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Parent), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -71,37 +83,45 @@ func (mg *Folder) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this FolderIAMMember. func (mg *FolderIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Folder), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.FolderRef, - Selector: mg.Spec.ForProvider.FolderSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Folder), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.FolderRef, + Selector: mg.Spec.ForProvider.FolderSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Folder") } mg.Spec.ForProvider.Folder = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FolderRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Folder), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.FolderRef, - Selector: mg.Spec.InitProvider.FolderSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Folder), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.FolderRef, + Selector: mg.Spec.InitProvider.FolderSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Folder") } @@ -113,37 +133,45 @@ func (mg *FolderIAMMember) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this Project. func (mg *Project) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FolderID), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.FolderIDRef, - Selector: mg.Spec.ForProvider.FolderIDSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.FolderID), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.FolderIDRef, + Selector: mg.Spec.ForProvider.FolderIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.FolderID") } mg.Spec.ForProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FolderIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FolderID), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.FolderIDRef, - Selector: mg.Spec.InitProvider.FolderIDSelector, - To: reference.To{ - List: &FolderList{}, - Managed: &Folder{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.FolderID), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.FolderIDRef, + Selector: mg.Spec.InitProvider.FolderIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.FolderID") } @@ -155,37 +183,45 @@ func (mg *Project) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this ProjectDefaultServiceAccounts. func (mg *ProjectDefaultServiceAccounts) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -197,37 +233,45 @@ func (mg *ProjectDefaultServiceAccounts) ResolveReferences(ctx context.Context, // ResolveReferences of this ProjectIAMAuditConfig. func (mg *ProjectIAMAuditConfig) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -239,37 +283,45 @@ func (mg *ProjectIAMAuditConfig) ResolveReferences(ctx context.Context, c client // ResolveReferences of this ProjectIAMMember. func (mg *ProjectIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -281,37 +333,45 @@ func (mg *ProjectIAMMember) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this ProjectService. func (mg *ProjectService) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -323,69 +383,83 @@ func (mg *ProjectService) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this ProjectUsageExportBucket. func (mg *ProjectUsageExportBucket) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BucketName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketNameRef, - Selector: mg.Spec.ForProvider.BucketNameSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BucketName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketNameRef, + Selector: mg.Spec.ForProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BucketName") } mg.Spec.ForProvider.BucketName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BucketName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketNameRef, - Selector: mg.Spec.InitProvider.BucketNameSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BucketName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketNameRef, + Selector: mg.Spec.InitProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BucketName") } mg.Spec.InitProvider.BucketName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BucketNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &ProjectList{}, - Managed: &Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -397,37 +471,45 @@ func (mg *ProjectUsageExportBucket) ResolveReferences(ctx context.Context, c cli // ResolveReferences of this ServiceAccountIAMMember. func (mg *ServiceAccountIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccountID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ServiceAccountIDRef, - Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &ServiceAccountList{}, - Managed: &ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccountID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ServiceAccountIDRef, + Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccountID") } mg.Spec.ForProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceAccountIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccountID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ServiceAccountIDRef, - Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &ServiceAccountList{}, - Managed: &ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccountID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ServiceAccountIDRef, + Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccountID") } @@ -439,37 +521,45 @@ func (mg *ServiceAccountIAMMember) ResolveReferences(ctx context.Context, c clie // ResolveReferences of this ServiceAccountKey. func (mg *ServiceAccountKey) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccountID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ServiceAccountIDRef, - Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &ServiceAccountList{}, - Managed: &ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccountID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ServiceAccountIDRef, + Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccountID") } mg.Spec.ForProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceAccountIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccountID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ServiceAccountIDRef, - Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &ServiceAccountList{}, - Managed: &ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccountID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ServiceAccountIDRef, + Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccountID") } diff --git a/apis/cloudrun/v1beta1/zz_generated.resolvers.go b/apis/cloudrun/v1beta1/zz_generated.resolvers.go index 6e1420ae8..5399b5b53 100644 --- a/apis/cloudrun/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudrun/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,29 +22,35 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/secretmanager/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this DomainMapping. -func (mg *DomainMapping) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *DomainMapping) ResolveReferences( // ResolveReferences of this DomainMapping. + 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Metadata); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Metadata[i3].Namespace), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Metadata[i3].NamespaceRef, - Selector: mg.Spec.ForProvider.Metadata[i3].NamespaceSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Metadata[i3].Namespace), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Metadata[i3].NamespaceRef, + Selector: mg.Spec.ForProvider.Metadata[i3].NamespaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Metadata[i3].Namespace") } @@ -52,16 +59,19 @@ func (mg *DomainMapping) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.Spec); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Spec[i3].RouteName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Spec[i3].RouteNameRef, - Selector: mg.Spec.ForProvider.Spec[i3].RouteNameSelector, - To: reference.To{ - List: &ServiceList{}, - Managed: &Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Spec[i3].RouteName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Spec[i3].RouteNameRef, + Selector: mg.Spec.ForProvider.Spec[i3].RouteNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Spec[i3].RouteName") } @@ -70,16 +80,19 @@ func (mg *DomainMapping) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Metadata); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Metadata[i3].Namespace), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Metadata[i3].NamespaceRef, - Selector: mg.Spec.InitProvider.Metadata[i3].NamespaceSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Metadata[i3].Namespace), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Metadata[i3].NamespaceRef, + Selector: mg.Spec.InitProvider.Metadata[i3].NamespaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Metadata[i3].Namespace") } @@ -88,16 +101,19 @@ func (mg *DomainMapping) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.Spec); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Spec[i3].RouteName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Spec[i3].RouteNameRef, - Selector: mg.Spec.InitProvider.Spec[i3].RouteNameSelector, - To: reference.To{ - List: &ServiceList{}, - Managed: &Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Spec[i3].RouteName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Spec[i3].RouteNameRef, + Selector: mg.Spec.InitProvider.Spec[i3].RouteNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Spec[i3].RouteName") } @@ -111,22 +127,27 @@ func (mg *DomainMapping) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this Service. func (mg *Service) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Metadata); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Metadata[i3].Namespace), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Metadata[i3].NamespaceRef, - Selector: mg.Spec.ForProvider.Metadata[i3].NamespaceSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Metadata[i3].Namespace), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Metadata[i3].NamespaceRef, + Selector: mg.Spec.ForProvider.Metadata[i3].NamespaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Metadata[i3].Namespace") } @@ -140,16 +161,19 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error for i6 := 0; i6 < len(mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env); i6++ { for i7 := 0; i7 < len(mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom); i7++ { for i8 := 0; i8 < len(mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef); i8++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameRef, - Selector: mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameRef, + Selector: mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name") } @@ -166,16 +190,19 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.ForProvider.Template[i3].Spec); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameRef, - Selector: mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameRef, + Selector: mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName") } @@ -187,16 +214,19 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Metadata); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Metadata[i3].Namespace), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Metadata[i3].NamespaceRef, - Selector: mg.Spec.InitProvider.Metadata[i3].NamespaceSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Metadata[i3].Namespace), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Metadata[i3].NamespaceRef, + Selector: mg.Spec.InitProvider.Metadata[i3].NamespaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Metadata[i3].Namespace") } @@ -210,16 +240,19 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error for i6 := 0; i6 < len(mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env); i6++ { for i7 := 0; i7 < len(mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom); i7++ { for i8 := 0; i8 < len(mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef); i8++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameRef, - Selector: mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameRef, + Selector: mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Spec[i4].Containers[i5].Env[i6].ValueFrom[i7].SecretKeyRef[i8].Name") } @@ -236,16 +269,19 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.InitProvider.Template[i3].Spec); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameRef, - Selector: mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameRef, + Selector: mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Spec[i4].Volumes[i5].Secret[i6].SecretName") } @@ -262,69 +298,83 @@ func (mg *Service) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this ServiceIAMMember. func (mg *ServiceIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ServiceRef, - Selector: mg.Spec.ForProvider.ServiceSelector, - To: reference.To{ - List: &ServiceList{}, - Managed: &Service{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ServiceRef, + Selector: mg.Spec.ForProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Service") } mg.Spec.ForProvider.Service = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } mg.Spec.InitProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ServiceRef, - Selector: mg.Spec.InitProvider.ServiceSelector, - To: reference.To{ - List: &ServiceList{}, - Managed: &Service{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ServiceRef, + Selector: mg.Spec.InitProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Service") } @@ -336,6 +386,8 @@ func (mg *ServiceIAMMember) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this V2Job. func (mg *V2Job) 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 @@ -347,16 +399,19 @@ func (mg *V2Job) ResolveReferences(ctx context.Context, c client.Reader) error { for i6 := 0; i6 < len(mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env); i6++ { for i7 := 0; i7 < len(mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource); i7++ { for i8 := 0; i8 < len(mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef); i8++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretRef, - Selector: mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretRef, + Selector: mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret") } @@ -373,16 +428,19 @@ func (mg *V2Job) ResolveReferences(ctx context.Context, c client.Reader) error { for i4 := 0; i4 < len(mg.Spec.ForProvider.Template[i3].Template); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Template[i3].Template[i4].Volumes); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretRef, - Selector: mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretRef, + Selector: mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret") } @@ -399,16 +457,19 @@ func (mg *V2Job) ResolveReferences(ctx context.Context, c client.Reader) error { for i6 := 0; i6 < len(mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env); i6++ { for i7 := 0; i7 < len(mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource); i7++ { for i8 := 0; i8 < len(mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef); i8++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretRef, - Selector: mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretRef, + Selector: mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Template[i4].Containers[i5].Env[i6].ValueSource[i7].SecretKeyRef[i8].Secret") } @@ -425,16 +486,19 @@ func (mg *V2Job) ResolveReferences(ctx context.Context, c client.Reader) error { for i4 := 0; i4 < len(mg.Spec.InitProvider.Template[i3].Template); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Template[i3].Template[i4].Volumes); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretRef, - Selector: mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretRef, + Selector: mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Template[i4].Volumes[i5].Secret[i6].Secret") } @@ -451,6 +515,8 @@ func (mg *V2Job) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this V2Service. func (mg *V2Service) 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 @@ -461,16 +527,19 @@ func (mg *V2Service) ResolveReferences(ctx context.Context, c client.Reader) err for i5 := 0; i5 < len(mg.Spec.ForProvider.Template[i3].Containers[i4].Env); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource); i6++ { for i7 := 0; i7 < len(mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretRef, - Selector: mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretRef, + Selector: mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret") } @@ -485,16 +554,19 @@ func (mg *V2Service) ResolveReferences(ctx context.Context, c client.Reader) err for i3 := 0; i3 < len(mg.Spec.ForProvider.Template); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Template[i3].Volumes); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].SecretRef, - Selector: mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Volumes[i4].Secret[i5].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].SecretRef, + Selector: mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template[i3].Volumes[i4].Secret[i5].Secret") } @@ -509,16 +581,19 @@ func (mg *V2Service) ResolveReferences(ctx context.Context, c client.Reader) err for i5 := 0; i5 < len(mg.Spec.InitProvider.Template[i3].Containers[i4].Env); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource); i6++ { for i7 := 0; i7 < len(mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretRef, - Selector: mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretRef, + Selector: mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Containers[i4].Env[i5].ValueSource[i6].SecretKeyRef[i7].Secret") } @@ -533,16 +608,19 @@ func (mg *V2Service) ResolveReferences(ctx context.Context, c client.Reader) err for i3 := 0; i3 < len(mg.Spec.InitProvider.Template); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Template[i3].Volumes); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret); i5++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].Secret), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].SecretRef, - Selector: mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].SecretSelector, - To: reference.To{ - List: &v1beta11.SecretList{}, - Managed: &v1beta11.Secret{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Template[i3].Volumes[i4].Secret[i5].Secret), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].SecretRef, + Selector: mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template[i3].Volumes[i4].Secret[i5].Secret") } diff --git a/apis/cloudscheduler/v1beta1/zz_generated.resolvers.go b/apis/cloudscheduler/v1beta1/zz_generated.resolvers.go index d680ac5d5..68ad78c46 100644 --- a/apis/cloudscheduler/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudscheduler/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,28 +22,36 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Job. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Job. func (mg *Job) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.PubsubTarget); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubTarget[i3].TopicName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PubsubTarget[i3].TopicNameRef, - Selector: mg.Spec.ForProvider.PubsubTarget[i3].TopicNameSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubTarget[i3].TopicName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PubsubTarget[i3].TopicNameRef, + Selector: mg.Spec.ForProvider.PubsubTarget[i3].TopicNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PubsubTarget[i3].TopicName") } @@ -51,16 +60,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.PubsubTarget); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubTarget[i3].TopicName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.PubsubTarget[i3].TopicNameRef, - Selector: mg.Spec.InitProvider.PubsubTarget[i3].TopicNameSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubTarget[i3].TopicName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.PubsubTarget[i3].TopicNameRef, + Selector: mg.Spec.InitProvider.PubsubTarget[i3].TopicNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PubsubTarget[i3].TopicName") } diff --git a/apis/cloudtasks/v1beta1/zz_generated.resolvers.go b/apis/cloudtasks/v1beta1/zz_generated.resolvers.go index 5eef3f008..cab185053 100644 --- a/apis/cloudtasks/v1beta1/zz_generated.resolvers.go +++ b/apis/cloudtasks/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,43 +22,54 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Queue. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Queue. func (mg *Queue) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } diff --git a/apis/composer/v1beta1/zz_generated.resolvers.go b/apis/composer/v1beta1/zz_generated.resolvers.go index bf57f0cb6..f00d79883 100644 --- a/apis/composer/v1beta1/zz_generated.resolvers.go +++ b/apis/composer/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,13 +23,16 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Environment. -func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Environment) ResolveReferences( // ResolveReferences of this Environment. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -36,16 +40,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e for i3 := 0; i3 < len(mg.Spec.ForProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Config[i3].NodeConfig[i4].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].NetworkRef, - Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Config[i3].NodeConfig[i4].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].NetworkRef, + Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Config[i3].NodeConfig[i4].Network") } @@ -56,16 +63,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.ForProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccount), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccountRef, - Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.Config[i3].NodeConfig[i4].ServiceAccount), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccountRef, + Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Config[i3].NodeConfig[i4].ServiceAccount") } @@ -76,16 +86,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.ForProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Config[i3].NodeConfig[i4].Subnetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].SubnetworkRef, - Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].SubnetworkSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Config[i3].NodeConfig[i4].Subnetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].SubnetworkRef, + Selector: mg.Spec.ForProvider.Config[i3].NodeConfig[i4].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Config[i3].NodeConfig[i4].Subnetwork") } @@ -94,16 +107,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } @@ -112,16 +128,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e for i3 := 0; i3 < len(mg.Spec.InitProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Config[i3].NodeConfig[i4].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].NetworkRef, - Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Config[i3].NodeConfig[i4].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].NetworkRef, + Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Config[i3].NodeConfig[i4].Network") } @@ -132,16 +151,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.InitProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccount), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccountRef, - Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.Config[i3].NodeConfig[i4].ServiceAccount), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccountRef, + Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Config[i3].NodeConfig[i4].ServiceAccount") } @@ -152,16 +174,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.InitProvider.Config); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Config[i3].NodeConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Config[i3].NodeConfig[i4].Subnetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].SubnetworkRef, - Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].SubnetworkSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Config[i3].NodeConfig[i4].Subnetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].SubnetworkRef, + Selector: mg.Spec.InitProvider.Config[i3].NodeConfig[i4].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Config[i3].NodeConfig[i4].Subnetwork") } @@ -170,16 +195,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } diff --git a/apis/compute/v1beta1/zz_generated.resolvers.go b/apis/compute/v1beta1/zz_generated.resolvers.go index 879a696af..3d35db792 100644 --- a/apis/compute/v1beta1/zz_generated.resolvers.go +++ b/apis/compute/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,80 +23,94 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta12 "github.com/upbound/provider-gcp/apis/cloudfunctions/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta13 "github.com/upbound/provider-gcp/apis/cloudrun/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/storage/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" common "github.com/upbound/provider-gcp/config/common" compute "github.com/upbound/provider-gcp/config/compute" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Address. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Address. func (mg *Address) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } mg.Spec.ForProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } @@ -107,69 +122,83 @@ func (mg *Address) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this AttachedDisk. func (mg *AttachedDisk) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DiskRef, - Selector: mg.Spec.ForProvider.DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DiskRef, + Selector: mg.Spec.ForProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Disk") } mg.Spec.ForProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DiskRef, - Selector: mg.Spec.InitProvider.DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DiskRef, + Selector: mg.Spec.InitProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Disk") } mg.Spec.InitProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } @@ -181,37 +210,45 @@ func (mg *AttachedDisk) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this Autoscaler. func (mg *Autoscaler) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TargetRef, - Selector: mg.Spec.ForProvider.TargetSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TargetRef, + Selector: mg.Spec.ForProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Target") } mg.Spec.ForProvider.Target = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TargetRef, - Selector: mg.Spec.InitProvider.TargetSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TargetRef, + Selector: mg.Spec.InitProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Target") } @@ -223,69 +260,83 @@ func (mg *Autoscaler) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this BackendBucket. func (mg *BackendBucket) 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 + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BucketName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketNameRef, - Selector: mg.Spec.ForProvider.BucketNameSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BucketName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketNameRef, + Selector: mg.Spec.ForProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BucketName") } mg.Spec.ForProvider.BucketName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SecurityPolicy", "SecurityPolicyList") + 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.EdgeSecurityPolicy), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EdgeSecurityPolicyRef, - Selector: mg.Spec.ForProvider.EdgeSecurityPolicySelector, - To: reference.To{ - List: &SecurityPolicyList{}, - Managed: &SecurityPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EdgeSecurityPolicy), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EdgeSecurityPolicyRef, + Selector: mg.Spec.ForProvider.EdgeSecurityPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EdgeSecurityPolicy") } mg.Spec.ForProvider.EdgeSecurityPolicy = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.EdgeSecurityPolicyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.BucketName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketNameRef, - Selector: mg.Spec.InitProvider.BucketNameSelector, - To: reference.To{ - List: &v1beta1.BucketList{}, - Managed: &v1beta1.Bucket{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BucketName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketNameRef, + Selector: mg.Spec.InitProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BucketName") } mg.Spec.InitProvider.BucketName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BucketNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SecurityPolicy", "SecurityPolicyList") + 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.EdgeSecurityPolicy), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EdgeSecurityPolicyRef, - Selector: mg.Spec.InitProvider.EdgeSecurityPolicySelector, - To: reference.To{ - List: &SecurityPolicyList{}, - Managed: &SecurityPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EdgeSecurityPolicy), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EdgeSecurityPolicyRef, + Selector: mg.Spec.InitProvider.EdgeSecurityPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EdgeSecurityPolicy") } @@ -297,37 +348,45 @@ func (mg *BackendBucket) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this BackendBucketSignedURLKey. func (mg *BackendBucketSignedURLKey) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.BackendBucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BackendBucketRef, - Selector: mg.Spec.ForProvider.BackendBucketSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendBucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BackendBucketRef, + Selector: mg.Spec.ForProvider.BackendBucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendBucket") } mg.Spec.ForProvider.BackendBucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendBucketRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.BackendBucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BackendBucketRef, - Selector: mg.Spec.InitProvider.BackendBucketSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendBucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BackendBucketRef, + Selector: mg.Spec.InitProvider.BackendBucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendBucket") } @@ -339,6 +398,8 @@ func (mg *BackendBucketSignedURLKey) ResolveReferences(ctx context.Context, c cl // ResolveReferences of this BackendService. func (mg *BackendService) 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 @@ -346,16 +407,19 @@ func (mg *BackendService) ResolveReferences(ctx context.Context, c client.Reader var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.Backend); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Backend[i3].Group), - Extract: compute.InstanceGroupExtractor(), - Reference: mg.Spec.ForProvider.Backend[i3].GroupRef, - Selector: mg.Spec.ForProvider.Backend[i3].GroupSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Backend[i3].Group), + Extract: compute.InstanceGroupExtractor(), + Reference: mg.Spec.ForProvider.Backend[i3].GroupRef, + Selector: mg.Spec.ForProvider.Backend[i3].GroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Backend[i3].Group") } @@ -363,16 +427,19 @@ func (mg *BackendService) ResolveReferences(ctx context.Context, c client.Reader mg.Spec.ForProvider.Backend[i3].GroupRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.HealthChecks), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.ForProvider.HealthChecksRefs, - Selector: mg.Spec.ForProvider.HealthChecksSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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.HealthChecks), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.ForProvider.HealthChecksRefs, + Selector: mg.Spec.ForProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.HealthChecks") } @@ -380,16 +447,19 @@ func (mg *BackendService) ResolveReferences(ctx context.Context, c client.Reader mg.Spec.ForProvider.HealthChecksRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.InitProvider.Backend); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Backend[i3].Group), - Extract: compute.InstanceGroupExtractor(), - Reference: mg.Spec.InitProvider.Backend[i3].GroupRef, - Selector: mg.Spec.InitProvider.Backend[i3].GroupSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Backend[i3].Group), + Extract: compute.InstanceGroupExtractor(), + Reference: mg.Spec.InitProvider.Backend[i3].GroupRef, + Selector: mg.Spec.InitProvider.Backend[i3].GroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Backend[i3].Group") } @@ -397,16 +467,19 @@ func (mg *BackendService) ResolveReferences(ctx context.Context, c client.Reader mg.Spec.InitProvider.Backend[i3].GroupRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.HealthChecks), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.InitProvider.HealthChecksRefs, - Selector: mg.Spec.InitProvider.HealthChecksSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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.HealthChecks), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.InitProvider.HealthChecksRefs, + Selector: mg.Spec.InitProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.HealthChecks") } @@ -418,37 +491,45 @@ func (mg *BackendService) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this BackendServiceSignedURLKey. func (mg *BackendServiceSignedURLKey) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BackendServiceRef, - Selector: mg.Spec.ForProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendService), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BackendServiceRef, + Selector: mg.Spec.ForProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendService") } mg.Spec.ForProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BackendServiceRef, - Selector: mg.Spec.InitProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendService), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BackendServiceRef, + Selector: mg.Spec.InitProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendService") } @@ -460,22 +541,27 @@ func (mg *BackendServiceSignedURLKey) ResolveReferences(ctx context.Context, c c // ResolveReferences of this Disk. func (mg *Disk) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.AsyncPrimaryDisk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AsyncPrimaryDisk[i3].Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskRef, - Selector: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.AsyncPrimaryDisk[i3].Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskRef, + Selector: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AsyncPrimaryDisk[i3].Disk") } @@ -484,16 +570,19 @@ func (mg *Disk) ResolveReferences(ctx context.Context, c client.Reader) error { } for i3 := 0; i3 < len(mg.Spec.InitProvider.AsyncPrimaryDisk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AsyncPrimaryDisk[i3].Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskRef, - Selector: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.AsyncPrimaryDisk[i3].Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskRef, + Selector: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AsyncPrimaryDisk[i3].Disk") } @@ -507,37 +596,45 @@ func (mg *Disk) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this DiskIAMMember. func (mg *DiskIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NameRef, - Selector: mg.Spec.ForProvider.NameSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NameRef, + Selector: mg.Spec.ForProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Name") } mg.Spec.ForProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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(), - Reference: mg.Spec.InitProvider.NameRef, - Selector: mg.Spec.InitProvider.NameSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NameRef, + Selector: mg.Spec.InitProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Name") } @@ -549,69 +646,83 @@ func (mg *DiskIAMMember) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this DiskResourcePolicyAttachment. func (mg *DiskResourcePolicyAttachment) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DiskRef, - Selector: mg.Spec.ForProvider.DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Disk), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DiskRef, + Selector: mg.Spec.ForProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Disk") } mg.Spec.ForProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ResourcePolicy", "ResourcePolicyList") + 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.Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NameRef, - Selector: mg.Spec.ForProvider.NameSelector, - To: reference.To{ - List: &ResourcePolicyList{}, - Managed: &ResourcePolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NameRef, + Selector: mg.Spec.ForProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Name") } mg.Spec.ForProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DiskRef, - Selector: mg.Spec.InitProvider.DiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Disk), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DiskRef, + Selector: mg.Spec.InitProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Disk") } mg.Spec.InitProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ResourcePolicy", "ResourcePolicyList") + 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(), - Reference: mg.Spec.InitProvider.NameRef, - Selector: mg.Spec.InitProvider.NameSelector, - To: reference.To{ - List: &ResourcePolicyList{}, - Managed: &ResourcePolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NameRef, + Selector: mg.Spec.InitProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Name") } @@ -623,37 +734,45 @@ func (mg *DiskResourcePolicyAttachment) ResolveReferences(ctx context.Context, c // ResolveReferences of this Firewall. func (mg *Firewall) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -665,69 +784,83 @@ func (mg *Firewall) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this FirewallPolicyAssociation. func (mg *FirewallPolicyAssociation) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.AttachmentTarget), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.AttachmentTargetRef, - Selector: mg.Spec.ForProvider.AttachmentTargetSelector, - To: reference.To{ - List: &v1beta11.FolderList{}, - Managed: &v1beta11.Folder{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AttachmentTarget), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.AttachmentTargetRef, + Selector: mg.Spec.ForProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AttachmentTarget") } mg.Spec.ForProvider.AttachmentTarget = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AttachmentTargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "FirewallPolicy", "FirewallPolicyList") + 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.FirewallPolicy), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.FirewallPolicyRef, - Selector: mg.Spec.ForProvider.FirewallPolicySelector, - To: reference.To{ - List: &FirewallPolicyList{}, - Managed: &FirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FirewallPolicy), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.FirewallPolicyRef, + Selector: mg.Spec.ForProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.FirewallPolicy") } mg.Spec.ForProvider.FirewallPolicy = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FirewallPolicyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.AttachmentTarget), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.AttachmentTargetRef, - Selector: mg.Spec.InitProvider.AttachmentTargetSelector, - To: reference.To{ - List: &v1beta11.FolderList{}, - Managed: &v1beta11.Folder{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AttachmentTarget), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.AttachmentTargetRef, + Selector: mg.Spec.InitProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AttachmentTarget") } mg.Spec.InitProvider.AttachmentTarget = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.AttachmentTargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "FirewallPolicy", "FirewallPolicyList") + 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.FirewallPolicy), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.FirewallPolicyRef, - Selector: mg.Spec.InitProvider.FirewallPolicySelector, - To: reference.To{ - List: &FirewallPolicyList{}, - Managed: &FirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FirewallPolicy), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.FirewallPolicyRef, + Selector: mg.Spec.InitProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.FirewallPolicy") } @@ -739,37 +872,45 @@ func (mg *FirewallPolicyAssociation) ResolveReferences(ctx context.Context, c cl // ResolveReferences of this FirewallPolicyRule. func (mg *FirewallPolicyRule) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "FirewallPolicy", "FirewallPolicyList") + 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.FirewallPolicy), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.FirewallPolicyRef, - Selector: mg.Spec.ForProvider.FirewallPolicySelector, - To: reference.To{ - List: &FirewallPolicyList{}, - Managed: &FirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FirewallPolicy), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.FirewallPolicyRef, + Selector: mg.Spec.ForProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.FirewallPolicy") } mg.Spec.ForProvider.FirewallPolicy = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FirewallPolicyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "FirewallPolicy", "FirewallPolicyList") + 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.FirewallPolicy), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.FirewallPolicyRef, - Selector: mg.Spec.InitProvider.FirewallPolicySelector, - To: reference.To{ - List: &FirewallPolicyList{}, - Managed: &FirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FirewallPolicy), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.FirewallPolicyRef, + Selector: mg.Spec.InitProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.FirewallPolicy") } @@ -781,165 +922,197 @@ func (mg *FirewallPolicyRule) ResolveReferences(ctx context.Context, c client.Re // ResolveReferences of this ForwardingRule. func (mg *ForwardingRule) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.BackendService), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.BackendServiceRef, - Selector: mg.Spec.ForProvider.BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendService), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.BackendServiceRef, + Selector: mg.Spec.ForProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendService") } mg.Spec.ForProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.IPAddress), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.IPAddressRef, - Selector: mg.Spec.ForProvider.IPAddressSelector, - To: reference.To{ - List: &AddressList{}, - Managed: &Address{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.IPAddress), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.IPAddressRef, + Selector: mg.Spec.ForProvider.IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.IPAddress") } mg.Spec.ForProvider.IPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.IPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } mg.Spec.ForProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionTargetHTTPProxy", "RegionTargetHTTPProxyList") + 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.Target), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.TargetRef, - Selector: mg.Spec.ForProvider.TargetSelector, - To: reference.To{ - List: &RegionTargetHTTPProxyList{}, - Managed: &RegionTargetHTTPProxy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Target), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.TargetRef, + Selector: mg.Spec.ForProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Target") } mg.Spec.ForProvider.Target = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.BackendService), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.BackendServiceRef, - Selector: mg.Spec.InitProvider.BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendService), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.BackendServiceRef, + Selector: mg.Spec.InitProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendService") } mg.Spec.InitProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.IPAddress), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.IPAddressRef, - Selector: mg.Spec.InitProvider.IPAddressSelector, - To: reference.To{ - List: &AddressList{}, - Managed: &Address{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.IPAddress), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.IPAddressRef, + Selector: mg.Spec.InitProvider.IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.IPAddress") } mg.Spec.InitProvider.IPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.IPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } mg.Spec.InitProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionTargetHTTPProxy", "RegionTargetHTTPProxyList") + 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.Target), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.TargetRef, - Selector: mg.Spec.InitProvider.TargetSelector, - To: reference.To{ - List: &RegionTargetHTTPProxyList{}, - Managed: &RegionTargetHTTPProxy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Target), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.TargetRef, + Selector: mg.Spec.InitProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Target") } @@ -951,37 +1124,45 @@ func (mg *ForwardingRule) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this GlobalAddress. func (mg *GlobalAddress) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -993,133 +1174,159 @@ func (mg *GlobalAddress) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this GlobalForwardingRule. func (mg *GlobalForwardingRule) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalAddress", "GlobalAddressList") + 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.IPAddress), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.IPAddressRef, - Selector: mg.Spec.ForProvider.IPAddressSelector, - To: reference.To{ - List: &GlobalAddressList{}, - Managed: &GlobalAddress{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.IPAddress), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.IPAddressRef, + Selector: mg.Spec.ForProvider.IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.IPAddress") } mg.Spec.ForProvider.IPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.IPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetSSLProxy", "TargetSSLProxyList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TargetRef, - Selector: mg.Spec.ForProvider.TargetSelector, - To: reference.To{ - List: &TargetSSLProxyList{}, - Managed: &TargetSSLProxy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TargetRef, + Selector: mg.Spec.ForProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Target") } mg.Spec.ForProvider.Target = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalAddress", "GlobalAddressList") + 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.IPAddress), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.IPAddressRef, - Selector: mg.Spec.InitProvider.IPAddressSelector, - To: reference.To{ - List: &GlobalAddressList{}, - Managed: &GlobalAddress{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.IPAddress), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.IPAddressRef, + Selector: mg.Spec.InitProvider.IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.IPAddress") } mg.Spec.InitProvider.IPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.IPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } mg.Spec.InitProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetSSLProxy", "TargetSSLProxyList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TargetRef, - Selector: mg.Spec.InitProvider.TargetSelector, - To: reference.To{ - List: &TargetSSLProxyList{}, - Managed: &TargetSSLProxy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TargetRef, + Selector: mg.Spec.InitProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Target") } @@ -1131,37 +1338,45 @@ func (mg *GlobalForwardingRule) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this GlobalNetworkEndpoint. func (mg *GlobalNetworkEndpoint) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalNetworkEndpointGroup", "GlobalNetworkEndpointGroupList") + 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.GlobalNetworkEndpointGroup), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.GlobalNetworkEndpointGroupRef, - Selector: mg.Spec.ForProvider.GlobalNetworkEndpointGroupSelector, - To: reference.To{ - List: &GlobalNetworkEndpointGroupList{}, - Managed: &GlobalNetworkEndpointGroup{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.GlobalNetworkEndpointGroup), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.GlobalNetworkEndpointGroupRef, + Selector: mg.Spec.ForProvider.GlobalNetworkEndpointGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.GlobalNetworkEndpointGroup") } mg.Spec.ForProvider.GlobalNetworkEndpointGroup = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.GlobalNetworkEndpointGroupRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalNetworkEndpointGroup", "GlobalNetworkEndpointGroupList") + 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.GlobalNetworkEndpointGroup), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.GlobalNetworkEndpointGroupRef, - Selector: mg.Spec.InitProvider.GlobalNetworkEndpointGroupSelector, - To: reference.To{ - List: &GlobalNetworkEndpointGroupList{}, - Managed: &GlobalNetworkEndpointGroup{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.GlobalNetworkEndpointGroup), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.GlobalNetworkEndpointGroupRef, + Selector: mg.Spec.InitProvider.GlobalNetworkEndpointGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.GlobalNetworkEndpointGroup") } @@ -1173,21 +1388,26 @@ func (mg *GlobalNetworkEndpoint) ResolveReferences(ctx context.Context, c client // ResolveReferences of this HaVPNGateway. func (mg *HaVPNGateway) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } @@ -1195,16 +1415,19 @@ func (mg *HaVPNGateway) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.VPNInterfaces); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachment), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachmentRef, - Selector: mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachmentSelector, - To: reference.To{ - List: &InterconnectAttachmentList{}, - Managed: &InterconnectAttachment{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InterconnectAttachment", "InterconnectAttachmentList") + 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.VPNInterfaces[i3].InterconnectAttachment), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachmentRef, + Selector: mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachmentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachment") } @@ -1212,16 +1435,19 @@ func (mg *HaVPNGateway) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.VPNInterfaces[i3].InterconnectAttachmentRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -1229,16 +1455,19 @@ func (mg *HaVPNGateway) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.VPNInterfaces); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachment), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachmentRef, - Selector: mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachmentSelector, - To: reference.To{ - List: &InterconnectAttachmentList{}, - Managed: &InterconnectAttachment{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InterconnectAttachment", "InterconnectAttachmentList") + 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.VPNInterfaces[i3].InterconnectAttachment), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachmentRef, + Selector: mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachmentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VPNInterfaces[i3].InterconnectAttachment") } @@ -1252,37 +1481,45 @@ func (mg *HaVPNGateway) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this ImageIAMMember. func (mg *ImageIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Image", "ImageList") + 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.Image), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ImageRef, - Selector: mg.Spec.ForProvider.ImageSelector, - To: reference.To{ - List: &ImageList{}, - Managed: &Image{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Image), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ImageRef, + Selector: mg.Spec.ForProvider.ImageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Image") } mg.Spec.ForProvider.Image = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ImageRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Image", "ImageList") + 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.Image), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ImageRef, - Selector: mg.Spec.InitProvider.ImageSelector, - To: reference.To{ - List: &ImageList{}, - Managed: &Image{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Image), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ImageRef, + Selector: mg.Spec.InitProvider.ImageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Image") } @@ -1294,6 +1531,8 @@ func (mg *ImageIAMMember) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this Instance. func (mg *Instance) 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 @@ -1301,16 +1540,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro for i3 := 0; i3 < len(mg.Spec.ForProvider.BootDisk); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.BootDisk[i3].InitializeParams); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].Image), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].ImageRef, - Selector: mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].ImageSelector, - To: reference.To{ - List: &ImageList{}, - Managed: &Image{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Image", "ImageList") + 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.BootDisk[i3].InitializeParams[i4].Image), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].ImageRef, + Selector: mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].ImageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BootDisk[i3].InitializeParams[i4].Image") } @@ -1320,16 +1562,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Network") } @@ -1338,16 +1583,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork") } @@ -1356,16 +1604,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.ServiceAccount); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccount[i3].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.ServiceAccount[i3].EmailRef, - Selector: mg.Spec.ForProvider.ServiceAccount[i3].EmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount[i3].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.ServiceAccount[i3].EmailRef, + Selector: mg.Spec.ForProvider.ServiceAccount[i3].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccount[i3].Email") } @@ -1375,16 +1626,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.BootDisk); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.BootDisk[i3].InitializeParams); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].Image), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].ImageRef, - Selector: mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].ImageSelector, - To: reference.To{ - List: &ImageList{}, - Managed: &Image{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Image", "ImageList") + 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.BootDisk[i3].InitializeParams[i4].Image), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].ImageRef, + Selector: mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].ImageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BootDisk[i3].InitializeParams[i4].Image") } @@ -1394,16 +1648,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Network") } @@ -1412,16 +1669,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork") } @@ -1430,16 +1690,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.ServiceAccount); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccount[i3].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.ServiceAccount[i3].EmailRef, - Selector: mg.Spec.InitProvider.ServiceAccount[i3].EmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount[i3].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.ServiceAccount[i3].EmailRef, + Selector: mg.Spec.InitProvider.ServiceAccount[i3].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccount[i3].Email") } @@ -1453,22 +1716,27 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this InstanceFromTemplate. func (mg *InstanceFromTemplate) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Network") } @@ -1477,16 +1745,19 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork") } @@ -1494,16 +1765,19 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SourceInstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SourceInstanceTemplateRef, - Selector: mg.Spec.ForProvider.SourceInstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.SourceInstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SourceInstanceTemplateRef, + Selector: mg.Spec.ForProvider.SourceInstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SourceInstanceTemplate") } @@ -1511,16 +1785,19 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.SourceInstanceTemplateRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Network") } @@ -1529,16 +1806,19 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork") } @@ -1546,16 +1826,19 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SourceInstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SourceInstanceTemplateRef, - Selector: mg.Spec.InitProvider.SourceInstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.SourceInstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SourceInstanceTemplateRef, + Selector: mg.Spec.InitProvider.SourceInstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SourceInstanceTemplate") } @@ -1567,37 +1850,45 @@ func (mg *InstanceFromTemplate) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this InstanceGroup. func (mg *InstanceGroup) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -1609,6 +1900,8 @@ func (mg *InstanceGroup) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this InstanceGroupManager. func (mg *InstanceGroupManager) 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 @@ -1616,16 +1909,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.AutoHealingPolicies); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef, - Selector: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef, + Selector: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck") } @@ -1633,16 +1929,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.TargetPools), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.ForProvider.TargetPoolsRefs, - Selector: mg.Spec.ForProvider.TargetPoolsSelector, - To: reference.To{ - List: &TargetPoolList{}, - Managed: &TargetPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetPool", "TargetPoolList") + 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.TargetPools), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.ForProvider.TargetPoolsRefs, + Selector: mg.Spec.ForProvider.TargetPoolsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TargetPools") } @@ -1650,16 +1949,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.TargetPoolsRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.ForProvider.Version); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Version[i3].InstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Version[i3].InstanceTemplateRef, - Selector: mg.Spec.ForProvider.Version[i3].InstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.Version[i3].InstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Version[i3].InstanceTemplateRef, + Selector: mg.Spec.ForProvider.Version[i3].InstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Version[i3].InstanceTemplate") } @@ -1668,16 +1970,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. } for i3 := 0; i3 < len(mg.Spec.InitProvider.AutoHealingPolicies); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef, - Selector: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef, + Selector: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck") } @@ -1685,16 +1990,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.TargetPools), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.InitProvider.TargetPoolsRefs, - Selector: mg.Spec.InitProvider.TargetPoolsSelector, - To: reference.To{ - List: &TargetPoolList{}, - Managed: &TargetPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetPool", "TargetPoolList") + 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.TargetPools), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.InitProvider.TargetPoolsRefs, + Selector: mg.Spec.InitProvider.TargetPoolsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TargetPools") } @@ -1702,16 +2010,19 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. mg.Spec.InitProvider.TargetPoolsRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.InitProvider.Version); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Version[i3].InstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Version[i3].InstanceTemplateRef, - Selector: mg.Spec.InitProvider.Version[i3].InstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.Version[i3].InstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Version[i3].InstanceTemplateRef, + Selector: mg.Spec.InitProvider.Version[i3].InstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Version[i3].InstanceTemplate") } @@ -1725,37 +2036,45 @@ func (mg *InstanceGroupManager) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this InstanceIAMMember. func (mg *InstanceIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceNameRef, - Selector: mg.Spec.ForProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceNameRef, + Selector: mg.Spec.ForProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceName") } mg.Spec.ForProvider.InstanceName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceNameRef, - Selector: mg.Spec.InitProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceNameRef, + Selector: mg.Spec.InitProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InstanceName") } @@ -1767,22 +2086,27 @@ func (mg *InstanceIAMMember) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this InstanceTemplate. func (mg *InstanceTemplate) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Disk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Disk[i3].Source), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Disk[i3].SourceRef, - Selector: mg.Spec.ForProvider.Disk[i3].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk[i3].Source), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Disk[i3].SourceRef, + Selector: mg.Spec.ForProvider.Disk[i3].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Disk[i3].Source") } @@ -1791,16 +2115,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Network") } @@ -1809,16 +2136,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.ForProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkInterface[i3].Subnetwork") } @@ -1827,16 +2157,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.ServiceAccount); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccount[i3].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.ServiceAccount[i3].EmailRef, - Selector: mg.Spec.ForProvider.ServiceAccount[i3].EmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount[i3].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.ServiceAccount[i3].EmailRef, + Selector: mg.Spec.ForProvider.ServiceAccount[i3].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccount[i3].Email") } @@ -1845,16 +2178,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Disk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Disk[i3].Source), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Disk[i3].SourceRef, - Selector: mg.Spec.InitProvider.Disk[i3].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.Disk[i3].Source), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Disk[i3].SourceRef, + Selector: mg.Spec.InitProvider.Disk[i3].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Disk[i3].Source") } @@ -1863,16 +2199,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.NetworkInterface[i3].Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].NetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Network") } @@ -1881,16 +2220,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkInterface); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, - Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkInterface[i3].Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkRef, + Selector: mg.Spec.InitProvider.NetworkInterface[i3].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkInterface[i3].Subnetwork") } @@ -1899,16 +2241,19 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.ServiceAccount); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccount[i3].Email), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.ServiceAccount[i3].EmailRef, - Selector: mg.Spec.InitProvider.ServiceAccount[i3].EmailSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount[i3].Email), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.ServiceAccount[i3].EmailRef, + Selector: mg.Spec.InitProvider.ServiceAccount[i3].EmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccount[i3].Email") } @@ -1922,37 +2267,45 @@ func (mg *InstanceTemplate) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this InterconnectAttachment. func (mg *InterconnectAttachment) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.RouterRef, - Selector: mg.Spec.ForProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Router), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.RouterRef, + Selector: mg.Spec.ForProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Router") } mg.Spec.ForProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.RouterRef, - Selector: mg.Spec.InitProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Router), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.RouterRef, + Selector: mg.Spec.InitProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Router") } @@ -1964,69 +2317,83 @@ func (mg *InterconnectAttachment) ResolveReferences(ctx context.Context, c clien // ResolveReferences of this NetworkEndpoint. func (mg *NetworkEndpoint) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NetworkEndpointGroup", "NetworkEndpointGroupList") + 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.NetworkEndpointGroup), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkEndpointGroupRef, - Selector: mg.Spec.ForProvider.NetworkEndpointGroupSelector, - To: reference.To{ - List: &NetworkEndpointGroupList{}, - Managed: &NetworkEndpointGroup{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkEndpointGroup), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkEndpointGroupRef, + Selector: mg.Spec.ForProvider.NetworkEndpointGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkEndpointGroup") } mg.Spec.ForProvider.NetworkEndpointGroup = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkEndpointGroupRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } mg.Spec.InitProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NetworkEndpointGroup", "NetworkEndpointGroupList") + 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.NetworkEndpointGroup), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkEndpointGroupRef, - Selector: mg.Spec.InitProvider.NetworkEndpointGroupSelector, - To: reference.To{ - List: &NetworkEndpointGroupList{}, - Managed: &NetworkEndpointGroup{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkEndpointGroup), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkEndpointGroupRef, + Selector: mg.Spec.InitProvider.NetworkEndpointGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkEndpointGroup") } @@ -2038,69 +2405,83 @@ func (mg *NetworkEndpoint) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this NetworkEndpointGroup. func (mg *NetworkEndpointGroup) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } mg.Spec.ForProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } @@ -2112,53 +2493,64 @@ func (mg *NetworkEndpointGroup) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this NetworkFirewallPolicyAssociation. func (mg *NetworkFirewallPolicyAssociation) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AttachmentTarget), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AttachmentTargetRef, - Selector: mg.Spec.ForProvider.AttachmentTargetSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AttachmentTarget), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AttachmentTargetRef, + Selector: mg.Spec.ForProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AttachmentTarget") } mg.Spec.ForProvider.AttachmentTarget = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AttachmentTargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NetworkFirewallPolicy", "NetworkFirewallPolicyList") + 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.FirewallPolicy), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.FirewallPolicyRef, - Selector: mg.Spec.ForProvider.FirewallPolicySelector, - To: reference.To{ - List: &NetworkFirewallPolicyList{}, - Managed: &NetworkFirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FirewallPolicy), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.FirewallPolicyRef, + Selector: mg.Spec.ForProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.FirewallPolicy") } mg.Spec.ForProvider.FirewallPolicy = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FirewallPolicyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AttachmentTarget), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AttachmentTargetRef, - Selector: mg.Spec.InitProvider.AttachmentTargetSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AttachmentTarget), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AttachmentTargetRef, + Selector: mg.Spec.InitProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AttachmentTarget") } @@ -2170,53 +2562,64 @@ func (mg *NetworkFirewallPolicyAssociation) ResolveReferences(ctx context.Contex // ResolveReferences of this NetworkPeering. func (mg *NetworkPeering) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PeerNetwork), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.PeerNetworkRef, - Selector: mg.Spec.ForProvider.PeerNetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PeerNetwork), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.PeerNetworkRef, + Selector: mg.Spec.ForProvider.PeerNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PeerNetwork") } mg.Spec.ForProvider.PeerNetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PeerNetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PeerNetwork), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.PeerNetworkRef, - Selector: mg.Spec.InitProvider.PeerNetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PeerNetwork), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.PeerNetworkRef, + Selector: mg.Spec.InitProvider.PeerNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PeerNetwork") } @@ -2228,69 +2631,83 @@ func (mg *NetworkPeering) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this NetworkPeeringRoutesConfig. func (mg *NetworkPeeringRoutesConfig) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NetworkPeering", "NetworkPeeringList") + 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.Peering), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PeeringRef, - Selector: mg.Spec.ForProvider.PeeringSelector, - To: reference.To{ - List: &NetworkPeeringList{}, - Managed: &NetworkPeering{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Peering), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PeeringRef, + Selector: mg.Spec.ForProvider.PeeringSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Peering") } mg.Spec.ForProvider.Peering = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PeeringRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NetworkPeering", "NetworkPeeringList") + 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.Peering), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.PeeringRef, - Selector: mg.Spec.InitProvider.PeeringSelector, - To: reference.To{ - List: &NetworkPeeringList{}, - Managed: &NetworkPeering{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Peering), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.PeeringRef, + Selector: mg.Spec.InitProvider.PeeringSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Peering") } @@ -2302,21 +2719,26 @@ func (mg *NetworkPeeringRoutesConfig) ResolveReferences(ctx context.Context, c c // ResolveReferences of this NodeGroup. func (mg *NodeGroup) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NodeTemplate", "NodeTemplateList") + 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.NodeTemplate), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NodeTemplateRef, - Selector: mg.Spec.ForProvider.NodeTemplateSelector, - To: reference.To{ - List: &NodeTemplateList{}, - Managed: &NodeTemplate{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NodeTemplate), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NodeTemplateRef, + Selector: mg.Spec.ForProvider.NodeTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NodeTemplate") } @@ -2325,16 +2747,19 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err for i3 := 0; i3 < len(mg.Spec.ForProvider.ShareSettings); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.ShareSettings[i3].ProjectMap); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ID), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].IDRef, - Selector: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].IDSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ShareSettings[i3].ProjectMap[i4].ID), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].IDRef, + Selector: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].IDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ID") } @@ -2345,16 +2770,19 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err } for i3 := 0; i3 < len(mg.Spec.ForProvider.ShareSettings); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.ShareSettings[i3].ProjectMap); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectID), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDRef, - Selector: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ShareSettings[i3].ProjectMap[i4].ProjectID), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDRef, + Selector: mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ShareSettings[i3].ProjectMap[i4].ProjectID") } @@ -2363,16 +2791,19 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NodeTemplate), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NodeTemplateRef, - Selector: mg.Spec.InitProvider.NodeTemplateSelector, - To: reference.To{ - List: &NodeTemplateList{}, - Managed: &NodeTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "NodeTemplate", "NodeTemplateList") + 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.NodeTemplate), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NodeTemplateRef, + Selector: mg.Spec.InitProvider.NodeTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NodeTemplate") } @@ -2381,16 +2812,19 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err for i3 := 0; i3 < len(mg.Spec.InitProvider.ShareSettings); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.ShareSettings[i3].ProjectMap); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ID), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].IDRef, - Selector: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].IDSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ShareSettings[i3].ProjectMap[i4].ID), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].IDRef, + Selector: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].IDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ID") } @@ -2401,16 +2835,19 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err } for i3 := 0; i3 < len(mg.Spec.InitProvider.ShareSettings); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.ShareSettings[i3].ProjectMap); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectID), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDRef, - Selector: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ShareSettings[i3].ProjectMap[i4].ProjectID), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDRef, + Selector: mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ShareSettings[i3].ProjectMap[i4].ProjectID") } @@ -2425,22 +2862,27 @@ func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this PacketMirroring. func (mg *PacketMirroring) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.CollectorIlb); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CollectorIlb[i3].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CollectorIlb[i3].URLRef, - Selector: mg.Spec.ForProvider.CollectorIlb[i3].URLSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.CollectorIlb[i3].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CollectorIlb[i3].URLRef, + Selector: mg.Spec.ForProvider.CollectorIlb[i3].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CollectorIlb[i3].URL") } @@ -2450,16 +2892,19 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade } for i3 := 0; i3 < len(mg.Spec.ForProvider.MirroredResources); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.MirroredResources[i3].Instances); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URLRef, - Selector: mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URLSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.MirroredResources[i3].Instances[i4].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URLRef, + Selector: mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.MirroredResources[i3].Instances[i4].URL") } @@ -2469,16 +2914,19 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade } } for i3 := 0; i3 < len(mg.Spec.ForProvider.Network); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network[i3].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Network[i3].URLRef, - Selector: mg.Spec.ForProvider.Network[i3].URLSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network[i3].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Network[i3].URLRef, + Selector: mg.Spec.ForProvider.Network[i3].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network[i3].URL") } @@ -2487,16 +2935,19 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade } for i3 := 0; i3 < len(mg.Spec.InitProvider.CollectorIlb); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CollectorIlb[i3].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CollectorIlb[i3].URLRef, - Selector: mg.Spec.InitProvider.CollectorIlb[i3].URLSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.CollectorIlb[i3].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CollectorIlb[i3].URLRef, + Selector: mg.Spec.InitProvider.CollectorIlb[i3].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CollectorIlb[i3].URL") } @@ -2506,16 +2957,19 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade } for i3 := 0; i3 < len(mg.Spec.InitProvider.MirroredResources); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.MirroredResources[i3].Instances); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URLRef, - Selector: mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URLSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.MirroredResources[i3].Instances[i4].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URLRef, + Selector: mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.MirroredResources[i3].Instances[i4].URL") } @@ -2525,16 +2979,19 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Network); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network[i3].URL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Network[i3].URLRef, - Selector: mg.Spec.InitProvider.Network[i3].URLSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network[i3].URL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Network[i3].URLRef, + Selector: mg.Spec.InitProvider.Network[i3].URLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network[i3].URL") } @@ -2548,21 +3005,26 @@ func (mg *PacketMirroring) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this PerInstanceConfig. func (mg *PerInstanceConfig) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.InstanceGroupManager), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceGroupManagerRef, - Selector: mg.Spec.ForProvider.InstanceGroupManagerSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceGroupManager), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceGroupManagerRef, + Selector: mg.Spec.ForProvider.InstanceGroupManagerSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceGroupManager") } @@ -2571,16 +3033,19 @@ func (mg *PerInstanceConfig) ResolveReferences(ctx context.Context, c client.Rea for i3 := 0; i3 < len(mg.Spec.ForProvider.PreservedState); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PreservedState[i3].Disk); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PreservedState[i3].Disk[i4].Source), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceRef, - Selector: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.PreservedState[i3].Disk[i4].Source), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceRef, + Selector: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PreservedState[i3].Disk[i4].Source") } @@ -2589,32 +3054,38 @@ func (mg *PerInstanceConfig) ResolveReferences(ctx context.Context, c client.Rea } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Zone), - Extract: resource.ExtractParamPath("zone", false), - Reference: mg.Spec.ForProvider.ZoneRef, - Selector: mg.Spec.ForProvider.ZoneSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.ForProvider.ZoneRef, + Selector: mg.Spec.ForProvider.ZoneSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Zone") } mg.Spec.ForProvider.Zone = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ZoneRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.InstanceGroupManager), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceGroupManagerRef, - Selector: mg.Spec.InitProvider.InstanceGroupManagerSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InstanceGroupManager), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceGroupManagerRef, + Selector: mg.Spec.InitProvider.InstanceGroupManagerSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InstanceGroupManager") } @@ -2623,16 +3094,19 @@ func (mg *PerInstanceConfig) ResolveReferences(ctx context.Context, c client.Rea for i3 := 0; i3 < len(mg.Spec.InitProvider.PreservedState); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PreservedState[i3].Disk); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PreservedState[i3].Disk[i4].Source), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceRef, - Selector: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.PreservedState[i3].Disk[i4].Source), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceRef, + Selector: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PreservedState[i3].Disk[i4].Source") } @@ -2641,16 +3115,19 @@ func (mg *PerInstanceConfig) ResolveReferences(ctx context.Context, c client.Rea } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Zone), - Extract: resource.ExtractParamPath("zone", false), - Reference: mg.Spec.InitProvider.ZoneRef, - Selector: mg.Spec.InitProvider.ZoneSelector, - To: reference.To{ - List: &InstanceGroupManagerList{}, - Managed: &InstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceGroupManager", "InstanceGroupManagerList") + 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.Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.InitProvider.ZoneRef, + Selector: mg.Spec.InitProvider.ZoneSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Zone") } @@ -2662,37 +3139,45 @@ func (mg *PerInstanceConfig) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this RegionAutoscaler. func (mg *RegionAutoscaler) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TargetRef, - Selector: mg.Spec.ForProvider.TargetSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TargetRef, + Selector: mg.Spec.ForProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Target") } mg.Spec.ForProvider.Target = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Target), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TargetRef, - Selector: mg.Spec.InitProvider.TargetSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Target), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TargetRef, + Selector: mg.Spec.InitProvider.TargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Target") } @@ -2704,6 +3189,8 @@ func (mg *RegionAutoscaler) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this RegionBackendService. func (mg *RegionBackendService) 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 @@ -2711,16 +3198,19 @@ func (mg *RegionBackendService) ResolveReferences(ctx context.Context, c client. var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.Backend); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Backend[i3].Group), - Extract: compute.InstanceGroupExtractor(), - Reference: mg.Spec.ForProvider.Backend[i3].GroupRef, - Selector: mg.Spec.ForProvider.Backend[i3].GroupSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Backend[i3].Group), + Extract: compute.InstanceGroupExtractor(), + Reference: mg.Spec.ForProvider.Backend[i3].GroupRef, + Selector: mg.Spec.ForProvider.Backend[i3].GroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Backend[i3].Group") } @@ -2728,16 +3218,19 @@ func (mg *RegionBackendService) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.Backend[i3].GroupRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.HealthChecks), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.ForProvider.HealthChecksRefs, - Selector: mg.Spec.ForProvider.HealthChecksSelector, - To: reference.To{ - List: &RegionHealthCheckList{}, - Managed: &RegionHealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionHealthCheck", "RegionHealthCheckList") + 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.HealthChecks), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.ForProvider.HealthChecksRefs, + Selector: mg.Spec.ForProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.HealthChecks") } @@ -2745,16 +3238,19 @@ func (mg *RegionBackendService) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.HealthChecksRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.InitProvider.Backend); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Backend[i3].Group), - Extract: compute.InstanceGroupExtractor(), - Reference: mg.Spec.InitProvider.Backend[i3].GroupRef, - Selector: mg.Spec.InitProvider.Backend[i3].GroupSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Backend[i3].Group), + Extract: compute.InstanceGroupExtractor(), + Reference: mg.Spec.InitProvider.Backend[i3].GroupRef, + Selector: mg.Spec.InitProvider.Backend[i3].GroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Backend[i3].Group") } @@ -2762,16 +3258,19 @@ func (mg *RegionBackendService) ResolveReferences(ctx context.Context, c client. mg.Spec.InitProvider.Backend[i3].GroupRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.HealthChecks), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.InitProvider.HealthChecksRefs, - Selector: mg.Spec.InitProvider.HealthChecksSelector, - To: reference.To{ - List: &RegionHealthCheckList{}, - Managed: &RegionHealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionHealthCheck", "RegionHealthCheckList") + 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.HealthChecks), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.InitProvider.HealthChecksRefs, + Selector: mg.Spec.InitProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.HealthChecks") } @@ -2783,22 +3282,27 @@ func (mg *RegionBackendService) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this RegionDisk. func (mg *RegionDisk) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.AsyncPrimaryDisk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AsyncPrimaryDisk[i3].Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskRef, - Selector: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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.AsyncPrimaryDisk[i3].Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskRef, + Selector: mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AsyncPrimaryDisk[i3].Disk") } @@ -2806,16 +3310,19 @@ func (mg *RegionDisk) ResolveReferences(ctx context.Context, c client.Reader) er mg.Spec.ForProvider.AsyncPrimaryDisk[i3].DiskRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Snapshot), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SnapshotRef, - Selector: mg.Spec.ForProvider.SnapshotSelector, - To: reference.To{ - List: &SnapshotList{}, - Managed: &Snapshot{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Snapshot", "SnapshotList") + 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.Snapshot), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SnapshotRef, + Selector: mg.Spec.ForProvider.SnapshotSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Snapshot") } @@ -2823,16 +3330,19 @@ func (mg *RegionDisk) ResolveReferences(ctx context.Context, c client.Reader) er mg.Spec.ForProvider.SnapshotRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.AsyncPrimaryDisk); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AsyncPrimaryDisk[i3].Disk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskRef, - Selector: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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.AsyncPrimaryDisk[i3].Disk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskRef, + Selector: mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AsyncPrimaryDisk[i3].Disk") } @@ -2840,16 +3350,19 @@ func (mg *RegionDisk) ResolveReferences(ctx context.Context, c client.Reader) er mg.Spec.InitProvider.AsyncPrimaryDisk[i3].DiskRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Snapshot), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SnapshotRef, - Selector: mg.Spec.InitProvider.SnapshotSelector, - To: reference.To{ - List: &SnapshotList{}, - Managed: &Snapshot{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Snapshot", "SnapshotList") + 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.Snapshot), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SnapshotRef, + Selector: mg.Spec.InitProvider.SnapshotSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Snapshot") } @@ -2861,37 +3374,45 @@ func (mg *RegionDisk) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this RegionDiskIAMMember. func (mg *RegionDiskIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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.Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NameRef, - Selector: mg.Spec.ForProvider.NameSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NameRef, + Selector: mg.Spec.ForProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Name") } mg.Spec.ForProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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(), - Reference: mg.Spec.InitProvider.NameRef, - Selector: mg.Spec.InitProvider.NameSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NameRef, + Selector: mg.Spec.InitProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Name") } @@ -2903,69 +3424,83 @@ func (mg *RegionDiskIAMMember) ResolveReferences(ctx context.Context, c client.R // ResolveReferences of this RegionDiskResourcePolicyAttachment. func (mg *RegionDiskResourcePolicyAttachment) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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.Disk), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DiskRef, - Selector: mg.Spec.ForProvider.DiskSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Disk), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DiskRef, + Selector: mg.Spec.ForProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Disk") } mg.Spec.ForProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ResourcePolicy", "ResourcePolicyList") + 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.Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NameRef, - Selector: mg.Spec.ForProvider.NameSelector, - To: reference.To{ - List: &ResourcePolicyList{}, - Managed: &ResourcePolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NameRef, + Selector: mg.Spec.ForProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Name") } mg.Spec.ForProvider.Name = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionDisk", "RegionDiskList") + 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.Disk), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DiskRef, - Selector: mg.Spec.InitProvider.DiskSelector, - To: reference.To{ - List: &RegionDiskList{}, - Managed: &RegionDisk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Disk), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DiskRef, + Selector: mg.Spec.InitProvider.DiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Disk") } mg.Spec.InitProvider.Disk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ResourcePolicy", "ResourcePolicyList") + 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(), - Reference: mg.Spec.InitProvider.NameRef, - Selector: mg.Spec.InitProvider.NameSelector, - To: reference.To{ - List: &ResourcePolicyList{}, - Managed: &ResourcePolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NameRef, + Selector: mg.Spec.InitProvider.NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Name") } @@ -2977,6 +3512,8 @@ func (mg *RegionDiskResourcePolicyAttachment) ResolveReferences(ctx context.Cont // ResolveReferences of this RegionInstanceGroupManager. func (mg *RegionInstanceGroupManager) 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 @@ -2984,16 +3521,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c var err error for i3 := 0; i3 < len(mg.Spec.ForProvider.AutoHealingPolicies); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef, - Selector: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef, + Selector: mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheck") } @@ -3001,16 +3541,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c mg.Spec.ForProvider.AutoHealingPolicies[i3].HealthCheckRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.TargetPools), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.ForProvider.TargetPoolsRefs, - Selector: mg.Spec.ForProvider.TargetPoolsSelector, - To: reference.To{ - List: &TargetPoolList{}, - Managed: &TargetPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetPool", "TargetPoolList") + 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.TargetPools), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.ForProvider.TargetPoolsRefs, + Selector: mg.Spec.ForProvider.TargetPoolsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TargetPools") } @@ -3018,16 +3561,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c mg.Spec.ForProvider.TargetPoolsRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.ForProvider.Version); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Version[i3].InstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Version[i3].InstanceTemplateRef, - Selector: mg.Spec.ForProvider.Version[i3].InstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.Version[i3].InstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Version[i3].InstanceTemplateRef, + Selector: mg.Spec.ForProvider.Version[i3].InstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Version[i3].InstanceTemplate") } @@ -3036,16 +3582,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c } for i3 := 0; i3 < len(mg.Spec.InitProvider.AutoHealingPolicies); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef, - Selector: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckSelector, - To: reference.To{ - List: &HealthCheckList{}, - Managed: &HealthCheck{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef, + Selector: mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheck") } @@ -3053,16 +3602,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c mg.Spec.InitProvider.AutoHealingPolicies[i3].HealthCheckRef = rsp.ResolvedReference } - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.TargetPools), - Extract: common.SelfLinkExtractor(), - References: mg.Spec.InitProvider.TargetPoolsRefs, - Selector: mg.Spec.InitProvider.TargetPoolsSelector, - To: reference.To{ - List: &TargetPoolList{}, - Managed: &TargetPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "TargetPool", "TargetPoolList") + 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.TargetPools), + Extract: common.SelfLinkExtractor(), + References: mg.Spec.InitProvider.TargetPoolsRefs, + Selector: mg.Spec.InitProvider.TargetPoolsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TargetPools") } @@ -3070,16 +3622,19 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c mg.Spec.InitProvider.TargetPoolsRefs = mrsp.ResolvedReferences for i3 := 0; i3 < len(mg.Spec.InitProvider.Version); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Version[i3].InstanceTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Version[i3].InstanceTemplateRef, - Selector: mg.Spec.InitProvider.Version[i3].InstanceTemplateSelector, - To: reference.To{ - List: &InstanceTemplateList{}, - Managed: &InstanceTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "InstanceTemplate", "InstanceTemplateList") + 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.Version[i3].InstanceTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Version[i3].InstanceTemplateRef, + Selector: mg.Spec.InitProvider.Version[i3].InstanceTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Version[i3].InstanceTemplate") } @@ -3093,22 +3648,27 @@ func (mg *RegionInstanceGroupManager) ResolveReferences(ctx context.Context, c c // ResolveReferences of this RegionNetworkEndpointGroup. func (mg *RegionNetworkEndpointGroup) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.CloudFunction); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudFunction[i3].Function), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CloudFunction[i3].FunctionRef, - Selector: mg.Spec.ForProvider.CloudFunction[i3].FunctionSelector, - To: reference.To{ - List: &v1beta12.FunctionList{}, - Managed: &v1beta12.Function{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudfunctions.gcp.upbound.io", "v1beta1", "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.CloudFunction[i3].Function), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CloudFunction[i3].FunctionRef, + Selector: mg.Spec.ForProvider.CloudFunction[i3].FunctionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudFunction[i3].Function") } @@ -3117,16 +3677,19 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c } for i3 := 0; i3 < len(mg.Spec.ForProvider.CloudRun); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CloudRun[i3].Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CloudRun[i3].ServiceRef, - Selector: mg.Spec.ForProvider.CloudRun[i3].ServiceSelector, - To: reference.To{ - List: &v1beta13.ServiceList{}, - Managed: &v1beta13.Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.CloudRun[i3].Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CloudRun[i3].ServiceRef, + Selector: mg.Spec.ForProvider.CloudRun[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CloudRun[i3].Service") } @@ -3134,48 +3697,57 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c mg.Spec.ForProvider.CloudRun[i3].ServiceRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ServiceAttachment", "ServiceAttachmentList") + 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.PscTargetService), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.PscTargetServiceRef, - Selector: mg.Spec.ForProvider.PscTargetServiceSelector, - To: reference.To{ - List: &ServiceAttachmentList{}, - Managed: &ServiceAttachment{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PscTargetService), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.PscTargetServiceRef, + Selector: mg.Spec.ForProvider.PscTargetServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PscTargetService") } mg.Spec.ForProvider.PscTargetService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PscTargetServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } @@ -3183,16 +3755,19 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.CloudFunction); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudFunction[i3].Function), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CloudFunction[i3].FunctionRef, - Selector: mg.Spec.InitProvider.CloudFunction[i3].FunctionSelector, - To: reference.To{ - List: &v1beta12.FunctionList{}, - Managed: &v1beta12.Function{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudfunctions.gcp.upbound.io", "v1beta1", "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.CloudFunction[i3].Function), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CloudFunction[i3].FunctionRef, + Selector: mg.Spec.InitProvider.CloudFunction[i3].FunctionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudFunction[i3].Function") } @@ -3201,16 +3776,19 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c } for i3 := 0; i3 < len(mg.Spec.InitProvider.CloudRun); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CloudRun[i3].Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CloudRun[i3].ServiceRef, - Selector: mg.Spec.InitProvider.CloudRun[i3].ServiceSelector, - To: reference.To{ - List: &v1beta13.ServiceList{}, - Managed: &v1beta13.Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.CloudRun[i3].Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CloudRun[i3].ServiceRef, + Selector: mg.Spec.InitProvider.CloudRun[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CloudRun[i3].Service") } @@ -3218,48 +3796,57 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c mg.Spec.InitProvider.CloudRun[i3].ServiceRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ServiceAttachment", "ServiceAttachmentList") + 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.PscTargetService), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.PscTargetServiceRef, - Selector: mg.Spec.InitProvider.PscTargetServiceSelector, - To: reference.To{ - List: &ServiceAttachmentList{}, - Managed: &ServiceAttachment{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PscTargetService), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.PscTargetServiceRef, + Selector: mg.Spec.InitProvider.PscTargetServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PscTargetService") } mg.Spec.InitProvider.PscTargetService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.PscTargetServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } @@ -3271,53 +3858,64 @@ func (mg *RegionNetworkEndpointGroup) ResolveReferences(ctx context.Context, c c // ResolveReferences of this RegionNetworkFirewallPolicyAssociation. func (mg *RegionNetworkFirewallPolicyAssociation) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AttachmentTarget), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.AttachmentTargetRef, - Selector: mg.Spec.ForProvider.AttachmentTargetSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AttachmentTarget), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.AttachmentTargetRef, + Selector: mg.Spec.ForProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AttachmentTarget") } mg.Spec.ForProvider.AttachmentTarget = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AttachmentTargetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionNetworkFirewallPolicy", "RegionNetworkFirewallPolicyList") + 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.FirewallPolicy), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.FirewallPolicyRef, - Selector: mg.Spec.ForProvider.FirewallPolicySelector, - To: reference.To{ - List: &RegionNetworkFirewallPolicyList{}, - Managed: &RegionNetworkFirewallPolicy{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FirewallPolicy), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.FirewallPolicyRef, + Selector: mg.Spec.ForProvider.FirewallPolicySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.FirewallPolicy") } mg.Spec.ForProvider.FirewallPolicy = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FirewallPolicyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.AttachmentTarget), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.AttachmentTargetRef, - Selector: mg.Spec.InitProvider.AttachmentTargetSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AttachmentTarget), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.AttachmentTargetRef, + Selector: mg.Spec.InitProvider.AttachmentTargetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AttachmentTarget") } @@ -3329,6 +3927,8 @@ func (mg *RegionNetworkFirewallPolicyAssociation) ResolveReferences(ctx context. // ResolveReferences of this RegionPerInstanceConfig. func (mg *RegionPerInstanceConfig) 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 @@ -3336,16 +3936,19 @@ func (mg *RegionPerInstanceConfig) ResolveReferences(ctx context.Context, c clie for i3 := 0; i3 < len(mg.Spec.ForProvider.PreservedState); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PreservedState[i3].Disk); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PreservedState[i3].Disk[i4].Source), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceRef, - Selector: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.PreservedState[i3].Disk[i4].Source), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceRef, + Selector: mg.Spec.ForProvider.PreservedState[i3].Disk[i4].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PreservedState[i3].Disk[i4].Source") } @@ -3354,32 +3957,38 @@ func (mg *RegionPerInstanceConfig) ResolveReferences(ctx context.Context, c clie } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.ForProvider.RegionRef, - Selector: mg.Spec.ForProvider.RegionSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.ForProvider.RegionRef, + Selector: mg.Spec.ForProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Region") } mg.Spec.ForProvider.Region = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RegionRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.RegionInstanceGroupManager), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.RegionInstanceGroupManagerRef, - Selector: mg.Spec.ForProvider.RegionInstanceGroupManagerSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RegionInstanceGroupManager), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.RegionInstanceGroupManagerRef, + Selector: mg.Spec.ForProvider.RegionInstanceGroupManagerSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RegionInstanceGroupManager") } @@ -3388,16 +3997,19 @@ func (mg *RegionPerInstanceConfig) ResolveReferences(ctx context.Context, c clie for i3 := 0; i3 < len(mg.Spec.InitProvider.PreservedState); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PreservedState[i3].Disk); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PreservedState[i3].Disk[i4].Source), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceRef, - Selector: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.PreservedState[i3].Disk[i4].Source), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceRef, + Selector: mg.Spec.InitProvider.PreservedState[i3].Disk[i4].SourceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PreservedState[i3].Disk[i4].Source") } @@ -3406,32 +4018,38 @@ func (mg *RegionPerInstanceConfig) ResolveReferences(ctx context.Context, c clie } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.InitProvider.RegionRef, - Selector: mg.Spec.InitProvider.RegionSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.InitProvider.RegionRef, + Selector: mg.Spec.InitProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Region") } mg.Spec.InitProvider.Region = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.RegionRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionInstanceGroupManager", "RegionInstanceGroupManagerList") + 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.RegionInstanceGroupManager), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.RegionInstanceGroupManagerRef, - Selector: mg.Spec.InitProvider.RegionInstanceGroupManagerSelector, - To: reference.To{ - List: &RegionInstanceGroupManagerList{}, - Managed: &RegionInstanceGroupManager{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RegionInstanceGroupManager), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.RegionInstanceGroupManagerRef, + Selector: mg.Spec.InitProvider.RegionInstanceGroupManagerSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RegionInstanceGroupManager") } @@ -3443,37 +4061,45 @@ func (mg *RegionPerInstanceConfig) ResolveReferences(ctx context.Context, c clie // ResolveReferences of this RegionTargetHTTPProxy. func (mg *RegionTargetHTTPProxy) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionURLMap", "RegionURLMapList") + 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.URLMap), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.URLMapRef, - Selector: mg.Spec.ForProvider.URLMapSelector, - To: reference.To{ - List: &RegionURLMapList{}, - Managed: &RegionURLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.URLMap), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.URLMapRef, + Selector: mg.Spec.ForProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.URLMap") } mg.Spec.ForProvider.URLMap = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.URLMapRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionURLMap", "RegionURLMapList") + 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.URLMap), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.URLMapRef, - Selector: mg.Spec.InitProvider.URLMapSelector, - To: reference.To{ - List: &RegionURLMapList{}, - Managed: &RegionURLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.URLMap), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.URLMapRef, + Selector: mg.Spec.InitProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.URLMap") } @@ -3485,70 +4111,84 @@ func (mg *RegionTargetHTTPProxy) ResolveReferences(ctx context.Context, c client // ResolveReferences of this RegionTargetHTTPSProxy. func (mg *RegionTargetHTTPSProxy) 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 mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionSSLCertificate", "RegionSSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.SSLCertificatesRefs, - Selector: mg.Spec.ForProvider.SSLCertificatesSelector, - To: reference.To{ - List: &RegionSSLCertificateList{}, - Managed: &RegionSSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.SSLCertificatesRefs, + Selector: mg.Spec.ForProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SSLCertificates") } mg.Spec.ForProvider.SSLCertificates = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.SSLCertificatesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionURLMap", "RegionURLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.URLMapRef, - Selector: mg.Spec.ForProvider.URLMapSelector, - To: reference.To{ - List: &RegionURLMapList{}, - Managed: &RegionURLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.URLMapRef, + Selector: mg.Spec.ForProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.URLMap") } mg.Spec.ForProvider.URLMap = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.URLMapRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionSSLCertificate", "RegionSSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.SSLCertificatesRefs, - Selector: mg.Spec.InitProvider.SSLCertificatesSelector, - To: reference.To{ - List: &RegionSSLCertificateList{}, - Managed: &RegionSSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.SSLCertificatesRefs, + Selector: mg.Spec.InitProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SSLCertificates") } mg.Spec.InitProvider.SSLCertificates = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.InitProvider.SSLCertificatesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionURLMap", "RegionURLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.URLMapRef, - Selector: mg.Spec.InitProvider.URLMapSelector, - To: reference.To{ - List: &RegionURLMapList{}, - Managed: &RegionURLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.URLMapRef, + Selector: mg.Spec.InitProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.URLMap") } @@ -3560,37 +4200,45 @@ func (mg *RegionTargetHTTPSProxy) ResolveReferences(ctx context.Context, c clien // ResolveReferences of this RegionTargetTCPProxy. func (mg *RegionTargetTCPProxy) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.BackendService), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.BackendServiceRef, - Selector: mg.Spec.ForProvider.BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendService), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.BackendServiceRef, + Selector: mg.Spec.ForProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendService") } mg.Spec.ForProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.BackendService), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.BackendServiceRef, - Selector: mg.Spec.InitProvider.BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendService), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.BackendServiceRef, + Selector: mg.Spec.InitProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendService") } @@ -3602,6 +4250,8 @@ func (mg *RegionTargetTCPProxy) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this RegionURLMap. func (mg *RegionURLMap) 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 @@ -3609,16 +4259,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) for i3 := 0; i3 < len(mg.Spec.ForProvider.DefaultRouteAction); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceRef, - Selector: mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceRef, + Selector: mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService") } @@ -3629,16 +4282,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.DefaultRouteAction); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceRef, - Selector: mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceRef, + Selector: mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService") } @@ -3647,16 +4303,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DefaultServiceRef, - Selector: mg.Spec.ForProvider.DefaultServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DefaultServiceRef, + Selector: mg.Spec.ForProvider.DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DefaultService") } @@ -3664,16 +4323,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.DefaultServiceRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].DefaultService") } @@ -3685,16 +4347,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService") } @@ -3709,16 +4374,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService") } @@ -3731,16 +4399,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].Service") } @@ -3751,16 +4422,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].RouteRules); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].RouteRules[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].Service") } @@ -3768,18 +4442,21 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceRef = rsp.ResolvedReference } - } - for i3 := 0; i3 < len(mg.Spec.ForProvider.Test); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Test[i3].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Test[i3].ServiceRef, - Selector: mg.Spec.ForProvider.Test[i3].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Test); i3++ { + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.Test[i3].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Test[i3].ServiceRef, + Selector: mg.Spec.ForProvider.Test[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Test[i3].Service") } @@ -3789,16 +4466,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.DefaultRouteAction); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceRef, - Selector: mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceRef, + Selector: mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DefaultRouteAction[i3].RequestMirrorPolicy[i4].BackendService") } @@ -3809,16 +4489,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.DefaultRouteAction); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceRef, - Selector: mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceRef, + Selector: mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DefaultRouteAction[i3].WeightedBackendServices[i4].BackendService") } @@ -3827,16 +4510,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DefaultServiceRef, - Selector: mg.Spec.InitProvider.DefaultServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DefaultServiceRef, + Selector: mg.Spec.InitProvider.DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DefaultService") } @@ -3844,16 +4530,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.DefaultServiceRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].DefaultService") } @@ -3865,16 +4554,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService") } @@ -3889,16 +4581,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService") } @@ -3911,16 +4606,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].PathRule[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].Service") } @@ -3931,16 +4629,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].RouteRules); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.PathMatcher[i3].RouteRules[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].Service") } @@ -3950,16 +4651,19 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Test); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Test[i3].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Test[i3].ServiceRef, - Selector: mg.Spec.InitProvider.Test[i3].ServiceSelector, - To: reference.To{ - List: &RegionBackendServiceList{}, - Managed: &RegionBackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RegionBackendService", "RegionBackendServiceList") + 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.Test[i3].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Test[i3].ServiceRef, + Selector: mg.Spec.InitProvider.Test[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Test[i3].Service") } @@ -3973,101 +4677,121 @@ func (mg *RegionURLMap) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this Route. func (mg *Route) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.NextHopIlb), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NextHopIlbRef, - Selector: mg.Spec.ForProvider.NextHopIlbSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NextHopIlb), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NextHopIlbRef, + Selector: mg.Spec.ForProvider.NextHopIlbSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NextHopIlb") } mg.Spec.ForProvider.NextHopIlb = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NextHopIlbRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNTunnel", "VPNTunnelList") + 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.NextHopVPNTunnel), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NextHopVPNTunnelRef, - Selector: mg.Spec.ForProvider.NextHopVPNTunnelSelector, - To: reference.To{ - List: &VPNTunnelList{}, - Managed: &VPNTunnel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NextHopVPNTunnel), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NextHopVPNTunnelRef, + Selector: mg.Spec.ForProvider.NextHopVPNTunnelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NextHopVPNTunnel") } mg.Spec.ForProvider.NextHopVPNTunnel = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NextHopVPNTunnelRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.NextHopIlb), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NextHopIlbRef, - Selector: mg.Spec.InitProvider.NextHopIlbSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NextHopIlb), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NextHopIlbRef, + Selector: mg.Spec.InitProvider.NextHopIlbSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NextHopIlb") } mg.Spec.InitProvider.NextHopIlb = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NextHopIlbRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNTunnel", "VPNTunnelList") + 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.NextHopVPNTunnel), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NextHopVPNTunnelRef, - Selector: mg.Spec.InitProvider.NextHopVPNTunnelSelector, - To: reference.To{ - List: &VPNTunnelList{}, - Managed: &VPNTunnel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NextHopVPNTunnel), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NextHopVPNTunnelRef, + Selector: mg.Spec.InitProvider.NextHopVPNTunnelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NextHopVPNTunnel") } @@ -4079,37 +4803,45 @@ func (mg *Route) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this Router. func (mg *Router) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -4121,69 +4853,83 @@ func (mg *Router) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this RouterInterface. func (mg *RouterInterface) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RouterRef, - Selector: mg.Spec.ForProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RouterRef, + Selector: mg.Spec.ForProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Router") } mg.Spec.ForProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNTunnel", "VPNTunnelList") + 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.VPNTunnel), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.VPNTunnelRef, - Selector: mg.Spec.ForProvider.VPNTunnelSelector, - To: reference.To{ - List: &VPNTunnelList{}, - Managed: &VPNTunnel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VPNTunnel), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.VPNTunnelRef, + Selector: mg.Spec.ForProvider.VPNTunnelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VPNTunnel") } mg.Spec.ForProvider.VPNTunnel = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.VPNTunnelRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.RouterRef, - Selector: mg.Spec.InitProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.RouterRef, + Selector: mg.Spec.InitProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Router") } mg.Spec.InitProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNTunnel", "VPNTunnelList") + 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.VPNTunnel), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.VPNTunnelRef, - Selector: mg.Spec.InitProvider.VPNTunnelSelector, - To: reference.To{ - List: &VPNTunnelList{}, - Managed: &VPNTunnel{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VPNTunnel), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.VPNTunnelRef, + Selector: mg.Spec.InitProvider.VPNTunnelSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VPNTunnel") } @@ -4195,21 +4941,26 @@ func (mg *RouterInterface) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this RouterNAT. func (mg *RouterNAT) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RouterRef, - Selector: mg.Spec.ForProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RouterRef, + Selector: mg.Spec.ForProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Router") } @@ -4217,16 +4968,19 @@ func (mg *RouterNAT) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.ForProvider.RouterRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.Subnetwork); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork[i3].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Subnetwork[i3].NameRef, - Selector: mg.Spec.ForProvider.Subnetwork[i3].NameSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork[i3].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Subnetwork[i3].NameRef, + Selector: mg.Spec.ForProvider.Subnetwork[i3].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork[i3].Name") } @@ -4235,16 +4989,19 @@ func (mg *RouterNAT) ResolveReferences(ctx context.Context, c client.Reader) err } for i3 := 0; i3 < len(mg.Spec.InitProvider.Subnetwork); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork[i3].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Subnetwork[i3].NameRef, - Selector: mg.Spec.InitProvider.Subnetwork[i3].NameSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork[i3].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Subnetwork[i3].NameRef, + Selector: mg.Spec.InitProvider.Subnetwork[i3].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork[i3].Name") } @@ -4258,149 +5015,178 @@ func (mg *RouterNAT) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this RouterPeer. func (mg *RouterPeer) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RouterInterface", "RouterInterfaceList") + 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.Interface), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.InterfaceRef, - Selector: mg.Spec.ForProvider.InterfaceSelector, - To: reference.To{ - List: &RouterInterfaceList{}, - Managed: &RouterInterface{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Interface), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.InterfaceRef, + Selector: mg.Spec.ForProvider.InterfaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Interface") } mg.Spec.ForProvider.Interface = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InterfaceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.PeerIPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.ForProvider.PeerIPAddressRef, - Selector: mg.Spec.ForProvider.PeerIPAddressSelector, - To: reference.To{ - List: &AddressList{}, - Managed: &Address{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PeerIPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.ForProvider.PeerIPAddressRef, + Selector: mg.Spec.ForProvider.PeerIPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PeerIPAddress") } mg.Spec.ForProvider.PeerIPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PeerIPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.ForProvider.RegionRef, - Selector: mg.Spec.ForProvider.RegionSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.ForProvider.RegionRef, + Selector: mg.Spec.ForProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Region") } mg.Spec.ForProvider.Region = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RegionRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RouterRef, - Selector: mg.Spec.ForProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RouterRef, + Selector: mg.Spec.ForProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Router") } mg.Spec.ForProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.RouterApplianceInstance), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.RouterApplianceInstanceRef, - Selector: mg.Spec.ForProvider.RouterApplianceInstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RouterApplianceInstance), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.RouterApplianceInstanceRef, + Selector: mg.Spec.ForProvider.RouterApplianceInstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RouterApplianceInstance") } mg.Spec.ForProvider.RouterApplianceInstance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RouterApplianceInstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "RouterInterface", "RouterInterfaceList") + 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.Interface), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.InterfaceRef, - Selector: mg.Spec.InitProvider.InterfaceSelector, - To: reference.To{ - List: &RouterInterfaceList{}, - Managed: &RouterInterface{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Interface), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.InterfaceRef, + Selector: mg.Spec.InitProvider.InterfaceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Interface") } mg.Spec.InitProvider.Interface = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.InterfaceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.PeerIPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.InitProvider.PeerIPAddressRef, - Selector: mg.Spec.InitProvider.PeerIPAddressSelector, - To: reference.To{ - List: &AddressList{}, - Managed: &Address{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PeerIPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.InitProvider.PeerIPAddressRef, + Selector: mg.Spec.InitProvider.PeerIPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PeerIPAddress") } mg.Spec.InitProvider.PeerIPAddress = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.PeerIPAddressRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.InitProvider.RegionRef, - Selector: mg.Spec.InitProvider.RegionSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.InitProvider.RegionRef, + Selector: mg.Spec.InitProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Region") } mg.Spec.InitProvider.Region = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.RegionRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.RouterApplianceInstance), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.RouterApplianceInstanceRef, - Selector: mg.Spec.InitProvider.RouterApplianceInstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RouterApplianceInstance), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.RouterApplianceInstanceRef, + Selector: mg.Spec.InitProvider.RouterApplianceInstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RouterApplianceInstance") } @@ -4412,70 +5198,84 @@ func (mg *RouterPeer) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this ServiceAttachment. func (mg *ServiceAttachment) 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 mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NATSubnets), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.NATSubnetsRefs, - Selector: mg.Spec.ForProvider.NATSubnetsSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.NATSubnets), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.NATSubnetsRefs, + Selector: mg.Spec.ForProvider.NATSubnetsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NATSubnets") } mg.Spec.ForProvider.NATSubnets = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.NATSubnetsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.TargetService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TargetServiceRef, - Selector: mg.Spec.ForProvider.TargetServiceSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TargetService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TargetServiceRef, + Selector: mg.Spec.ForProvider.TargetServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TargetService") } mg.Spec.ForProvider.TargetService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NATSubnets), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.NATSubnetsRefs, - Selector: mg.Spec.InitProvider.NATSubnetsSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.NATSubnets), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.NATSubnetsRefs, + Selector: mg.Spec.InitProvider.NATSubnetsSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NATSubnets") } mg.Spec.InitProvider.NATSubnets = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.InitProvider.NATSubnetsRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.TargetService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TargetServiceRef, - Selector: mg.Spec.InitProvider.TargetServiceSelector, - To: reference.To{ - List: &ForwardingRuleList{}, - Managed: &ForwardingRule{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TargetService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TargetServiceRef, + Selector: mg.Spec.InitProvider.TargetServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TargetService") } @@ -4487,37 +5287,45 @@ func (mg *ServiceAttachment) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this SharedVPCHostProject. func (mg *SharedVPCHostProject) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } mg.Spec.ForProvider.Project = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.InitProvider.ProjectRef, - Selector: mg.Spec.InitProvider.ProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Project), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.InitProvider.ProjectRef, + Selector: mg.Spec.InitProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Project") } @@ -4529,69 +5337,83 @@ func (mg *SharedVPCHostProject) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this SharedVPCServiceProject. func (mg *SharedVPCServiceProject) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.HostProject), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.ForProvider.HostProjectRef, - Selector: mg.Spec.ForProvider.HostProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.HostProject), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.ForProvider.HostProjectRef, + Selector: mg.Spec.ForProvider.HostProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.HostProject") } mg.Spec.ForProvider.HostProject = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.HostProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ServiceProject), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.ForProvider.ServiceProjectRef, - Selector: mg.Spec.ForProvider.ServiceProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceProject), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.ForProvider.ServiceProjectRef, + Selector: mg.Spec.ForProvider.ServiceProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceProject") } mg.Spec.ForProvider.ServiceProject = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.HostProject), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.InitProvider.HostProjectRef, - Selector: mg.Spec.InitProvider.HostProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.HostProject), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.InitProvider.HostProjectRef, + Selector: mg.Spec.InitProvider.HostProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.HostProject") } mg.Spec.InitProvider.HostProject = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.HostProjectRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.ServiceProject), - Extract: common.ExtractProjectID(), - Reference: mg.Spec.InitProvider.ServiceProjectRef, - Selector: mg.Spec.InitProvider.ServiceProjectSelector, - To: reference.To{ - List: &v1beta11.ProjectList{}, - Managed: &v1beta11.Project{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceProject), + Extract: common.ExtractProjectID(), + Reference: mg.Spec.InitProvider.ServiceProjectRef, + Selector: mg.Spec.InitProvider.ServiceProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceProject") } @@ -4603,37 +5425,45 @@ func (mg *SharedVPCServiceProject) ResolveReferences(ctx context.Context, c clie // ResolveReferences of this Snapshot. func (mg *Snapshot) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.SourceDisk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SourceDiskRef, - Selector: mg.Spec.ForProvider.SourceDiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SourceDisk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SourceDiskRef, + Selector: mg.Spec.ForProvider.SourceDiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SourceDisk") } mg.Spec.ForProvider.SourceDisk = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SourceDiskRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Disk", "DiskList") + 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.SourceDisk), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SourceDiskRef, - Selector: mg.Spec.InitProvider.SourceDiskSelector, - To: reference.To{ - List: &DiskList{}, - Managed: &Disk{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SourceDisk), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SourceDiskRef, + Selector: mg.Spec.InitProvider.SourceDiskSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SourceDisk") } @@ -4645,37 +5475,45 @@ func (mg *Snapshot) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this Subnetwork. func (mg *Subnetwork) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -4687,37 +5525,45 @@ func (mg *Subnetwork) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this SubnetworkIAMMember. func (mg *SubnetworkIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } mg.Spec.ForProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &SubnetworkList{}, - Managed: &Subnetwork{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } @@ -4729,37 +5575,45 @@ func (mg *SubnetworkIAMMember) ResolveReferences(ctx context.Context, c client.R // ResolveReferences of this TargetGRPCProxy. func (mg *TargetGRPCProxy) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.URLMapRef, - Selector: mg.Spec.ForProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.URLMapRef, + Selector: mg.Spec.ForProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.URLMap") } mg.Spec.ForProvider.URLMap = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.URLMapRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.URLMapRef, - Selector: mg.Spec.InitProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.URLMapRef, + Selector: mg.Spec.InitProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.URLMap") } @@ -4771,37 +5625,45 @@ func (mg *TargetGRPCProxy) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this TargetHTTPProxy. func (mg *TargetHTTPProxy) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.URLMapRef, - Selector: mg.Spec.ForProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.URLMapRef, + Selector: mg.Spec.ForProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.URLMap") } mg.Spec.ForProvider.URLMap = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.URLMapRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.URLMapRef, - Selector: mg.Spec.InitProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.URLMapRef, + Selector: mg.Spec.InitProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.URLMap") } @@ -4813,70 +5675,84 @@ func (mg *TargetHTTPProxy) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this TargetHTTPSProxy. func (mg *TargetHTTPSProxy) 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 mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SSLCertificate", "SSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.SSLCertificatesRefs, - Selector: mg.Spec.ForProvider.SSLCertificatesSelector, - To: reference.To{ - List: &SSLCertificateList{}, - Managed: &SSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.SSLCertificatesRefs, + Selector: mg.Spec.ForProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SSLCertificates") } mg.Spec.ForProvider.SSLCertificates = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.SSLCertificatesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.URLMapRef, - Selector: mg.Spec.ForProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.URLMapRef, + Selector: mg.Spec.ForProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.URLMap") } mg.Spec.ForProvider.URLMap = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.URLMapRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SSLCertificate", "SSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.SSLCertificatesRefs, - Selector: mg.Spec.InitProvider.SSLCertificatesSelector, - To: reference.To{ - List: &SSLCertificateList{}, - Managed: &SSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.SSLCertificatesRefs, + Selector: mg.Spec.InitProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SSLCertificates") } mg.Spec.InitProvider.SSLCertificates = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.InitProvider.SSLCertificatesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "URLMap", "URLMapList") + 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.URLMap), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.URLMapRef, - Selector: mg.Spec.InitProvider.URLMapSelector, - To: reference.To{ - List: &URLMapList{}, - Managed: &URLMap{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.URLMap), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.URLMapRef, + Selector: mg.Spec.InitProvider.URLMapSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.URLMap") } @@ -4888,37 +5764,45 @@ func (mg *TargetHTTPSProxy) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this TargetInstance. func (mg *TargetInstance) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } @@ -4930,37 +5814,45 @@ func (mg *TargetInstance) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this TargetPool. func (mg *TargetPool) 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("compute.gcp.upbound.io", "v1beta1", "HTTPHealthCheck", "HTTPHealthCheckList") + 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.HealthChecks), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.HealthChecksRefs, - Selector: mg.Spec.ForProvider.HealthChecksSelector, - To: reference.To{ - List: &HTTPHealthCheckList{}, - Managed: &HTTPHealthCheck{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.HealthChecks), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.HealthChecksRefs, + Selector: mg.Spec.ForProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.HealthChecks") } mg.Spec.ForProvider.HealthChecks = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.HealthChecksRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "HTTPHealthCheck", "HTTPHealthCheckList") + 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.HealthChecks), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.HealthChecksRefs, - Selector: mg.Spec.InitProvider.HealthChecksSelector, - To: reference.To{ - List: &HTTPHealthCheckList{}, - Managed: &HTTPHealthCheck{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.HealthChecks), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.HealthChecksRefs, + Selector: mg.Spec.InitProvider.HealthChecksSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.HealthChecks") } @@ -4972,70 +5864,84 @@ func (mg *TargetPool) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this TargetSSLProxy. func (mg *TargetSSLProxy) 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 mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BackendServiceRef, - Selector: mg.Spec.ForProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BackendServiceRef, + Selector: mg.Spec.ForProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendService") } mg.Spec.ForProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SSLCertificate", "SSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.SSLCertificatesRefs, - Selector: mg.Spec.ForProvider.SSLCertificatesSelector, - To: reference.To{ - List: &SSLCertificateList{}, - Managed: &SSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.SSLCertificatesRefs, + Selector: mg.Spec.ForProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SSLCertificates") } mg.Spec.ForProvider.SSLCertificates = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.SSLCertificatesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BackendServiceRef, - Selector: mg.Spec.InitProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BackendServiceRef, + Selector: mg.Spec.InitProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendService") } mg.Spec.InitProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "SSLCertificate", "SSLCertificateList") + 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.SSLCertificates), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.SSLCertificatesRefs, - Selector: mg.Spec.InitProvider.SSLCertificatesSelector, - To: reference.To{ - List: &SSLCertificateList{}, - Managed: &SSLCertificate{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SSLCertificates), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.SSLCertificatesRefs, + Selector: mg.Spec.InitProvider.SSLCertificatesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SSLCertificates") } @@ -5047,37 +5953,45 @@ func (mg *TargetSSLProxy) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this TargetTCPProxy. func (mg *TargetTCPProxy) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BackendServiceRef, - Selector: mg.Spec.ForProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BackendServiceRef, + Selector: mg.Spec.ForProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackendService") } mg.Spec.ForProvider.BackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BackendServiceRef, - Selector: mg.Spec.InitProvider.BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BackendServiceRef, + Selector: mg.Spec.InitProvider.BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackendService") } @@ -5089,21 +6003,26 @@ func (mg *TargetTCPProxy) ResolveReferences(ctx context.Context, c client.Reader // ResolveReferences of this URLMap. func (mg *URLMap) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DefaultServiceRef, - Selector: mg.Spec.ForProvider.DefaultServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DefaultServiceRef, + Selector: mg.Spec.ForProvider.DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DefaultService") } @@ -5111,16 +6030,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.DefaultServiceRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.PathMatcher[i3].DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].DefaultService") } @@ -5132,16 +6054,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService") } @@ -5156,16 +6081,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService") } @@ -5178,16 +6106,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].PathRule); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.PathMatcher[i3].PathRule[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].PathRule[i4].Service") } @@ -5198,16 +6129,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.ForProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PathMatcher[i3].RouteRules); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, - Selector: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].RouteRules[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, + Selector: mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PathMatcher[i3].RouteRules[i4].Service") } @@ -5217,16 +6151,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } } for i3 := 0; i3 < len(mg.Spec.ForProvider.Test); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Test[i3].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Test[i3].ServiceRef, - Selector: mg.Spec.ForProvider.Test[i3].ServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.Test[i3].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Test[i3].ServiceRef, + Selector: mg.Spec.ForProvider.Test[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Test[i3].Service") } @@ -5234,16 +6171,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.Test[i3].ServiceRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DefaultServiceRef, - Selector: mg.Spec.InitProvider.DefaultServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DefaultServiceRef, + Selector: mg.Spec.InitProvider.DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DefaultService") } @@ -5251,16 +6191,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.DefaultServiceRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].DefaultService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.PathMatcher[i3].DefaultService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].DefaultServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].DefaultService") } @@ -5272,16 +6215,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].RequestMirrorPolicy[i6].BackendService") } @@ -5296,16 +6242,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].RouteAction[i5].WeightedBackendServices[i6].BackendService") } @@ -5318,16 +6267,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].PathRule); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.PathMatcher[i3].PathRule[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].PathRule[i4].Service") } @@ -5338,16 +6290,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.PathMatcher); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PathMatcher[i3].RouteRules); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, - Selector: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, - To: reference.To{ - List: &BackendServiceList{}, - Managed: &BackendService{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.PathMatcher[i3].RouteRules[i4].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceRef, + Selector: mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PathMatcher[i3].RouteRules[i4].Service") } @@ -5357,16 +6312,19 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error } } for i3 := 0; i3 < len(mg.Spec.InitProvider.Test); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Test[i3].Service), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Test[i3].ServiceRef, - Selector: mg.Spec.InitProvider.Test[i3].ServiceSelector, - To: reference.To{ - List: &BackendBucketList{}, - Managed: &BackendBucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendBucket", "BackendBucketList") + 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.Test[i3].Service), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Test[i3].ServiceRef, + Selector: mg.Spec.InitProvider.Test[i3].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Test[i3].Service") } @@ -5380,37 +6338,45 @@ func (mg *URLMap) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this VPNGateway. func (mg *VPNGateway) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &NetworkList{}, - Managed: &Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -5422,133 +6388,159 @@ func (mg *VPNGateway) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this VPNTunnel. func (mg *VPNTunnel) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ExternalVPNGateway", "ExternalVPNGatewayList") + 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.PeerExternalGateway), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PeerExternalGatewayRef, - Selector: mg.Spec.ForProvider.PeerExternalGatewaySelector, - To: reference.To{ - List: &ExternalVPNGatewayList{}, - Managed: &ExternalVPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PeerExternalGateway), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PeerExternalGatewayRef, + Selector: mg.Spec.ForProvider.PeerExternalGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PeerExternalGateway") } mg.Spec.ForProvider.PeerExternalGateway = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PeerExternalGatewayRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RouterRef, - Selector: mg.Spec.ForProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RouterRef, + Selector: mg.Spec.ForProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Router") } mg.Spec.ForProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNGateway", "VPNGatewayList") + 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.TargetVPNGateway), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TargetVPNGatewayRef, - Selector: mg.Spec.ForProvider.TargetVPNGatewaySelector, - To: reference.To{ - List: &VPNGatewayList{}, - Managed: &VPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TargetVPNGateway), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TargetVPNGatewayRef, + Selector: mg.Spec.ForProvider.TargetVPNGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TargetVPNGateway") } mg.Spec.ForProvider.TargetVPNGateway = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TargetVPNGatewayRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "HaVPNGateway", "HaVPNGatewayList") + 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.VPNGateway), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.VPNGatewayRef, - Selector: mg.Spec.ForProvider.VPNGatewaySelector, - To: reference.To{ - List: &HaVPNGatewayList{}, - Managed: &HaVPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VPNGateway), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.VPNGatewayRef, + Selector: mg.Spec.ForProvider.VPNGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VPNGateway") } mg.Spec.ForProvider.VPNGateway = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.VPNGatewayRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ExternalVPNGateway", "ExternalVPNGatewayList") + 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.PeerExternalGateway), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.PeerExternalGatewayRef, - Selector: mg.Spec.InitProvider.PeerExternalGatewaySelector, - To: reference.To{ - List: &ExternalVPNGatewayList{}, - Managed: &ExternalVPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PeerExternalGateway), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.PeerExternalGatewayRef, + Selector: mg.Spec.InitProvider.PeerExternalGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PeerExternalGateway") } mg.Spec.InitProvider.PeerExternalGateway = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.PeerExternalGatewayRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Router", "RouterList") + 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.Router), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.RouterRef, - Selector: mg.Spec.InitProvider.RouterSelector, - To: reference.To{ - List: &RouterList{}, - Managed: &Router{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Router), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.RouterRef, + Selector: mg.Spec.InitProvider.RouterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Router") } mg.Spec.InitProvider.Router = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.RouterRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "VPNGateway", "VPNGatewayList") + 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.TargetVPNGateway), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TargetVPNGatewayRef, - Selector: mg.Spec.InitProvider.TargetVPNGatewaySelector, - To: reference.To{ - List: &VPNGatewayList{}, - Managed: &VPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TargetVPNGateway), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TargetVPNGatewayRef, + Selector: mg.Spec.InitProvider.TargetVPNGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TargetVPNGateway") } mg.Spec.InitProvider.TargetVPNGateway = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.TargetVPNGatewayRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "HaVPNGateway", "HaVPNGatewayList") + 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.VPNGateway), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.VPNGatewayRef, - Selector: mg.Spec.InitProvider.VPNGatewaySelector, - To: reference.To{ - List: &HaVPNGatewayList{}, - Managed: &HaVPNGateway{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VPNGateway), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.VPNGatewayRef, + Selector: mg.Spec.InitProvider.VPNGatewaySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VPNGateway") } diff --git a/apis/container/v1beta1/zz_generated.resolvers.go b/apis/container/v1beta1/zz_generated.resolvers.go index 6f8d7da6c..7df7237f0 100644 --- a/apis/container/v1beta1/zz_generated.resolvers.go +++ b/apis/container/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,29 +23,36 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" common "github.com/upbound/provider-gcp/config/common" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Cluster. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Cluster. func (mg *Cluster) 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } @@ -52,16 +60,19 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.NodeConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NodeConfig[i3].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountRef, - Selector: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.NodeConfig[i3].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountRef, + Selector: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NodeConfig[i3].ServiceAccount") } @@ -69,32 +80,38 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.SubnetworkRef, - Selector: mg.Spec.ForProvider.SubnetworkSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.SubnetworkRef, + Selector: mg.Spec.ForProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnetwork") } mg.Spec.ForProvider.Subnetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubnetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -102,16 +119,19 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.NodeConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NodeConfig[i3].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountRef, - Selector: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.NodeConfig[i3].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountRef, + Selector: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NodeConfig[i3].ServiceAccount") } @@ -119,16 +139,19 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnetwork), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.SubnetworkRef, - Selector: mg.Spec.InitProvider.SubnetworkSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnetwork), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.SubnetworkRef, + Selector: mg.Spec.InitProvider.SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnetwork") } @@ -140,21 +163,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this NodePool. func (mg *NodePool) 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 + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ClusterRef, - Selector: mg.Spec.ForProvider.ClusterSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ClusterRef, + Selector: mg.Spec.ForProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Cluster") } @@ -162,16 +190,19 @@ func (mg *NodePool) ResolveReferences(ctx context.Context, c client.Reader) erro mg.Spec.ForProvider.ClusterRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.NodeConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NodeConfig[i3].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountRef, - Selector: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.NodeConfig[i3].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountRef, + Selector: mg.Spec.ForProvider.NodeConfig[i3].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NodeConfig[i3].ServiceAccount") } @@ -180,16 +211,19 @@ func (mg *NodePool) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.NodeConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NodeConfig[i3].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountRef, - Selector: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountSelector, - To: reference.To{ - List: &v1beta11.ServiceAccountList{}, - Managed: &v1beta11.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.NodeConfig[i3].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountRef, + Selector: mg.Spec.InitProvider.NodeConfig[i3].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NodeConfig[i3].ServiceAccount") } diff --git a/apis/containeraws/v1beta1/zz_generated.resolvers.go b/apis/containeraws/v1beta1/zz_generated.resolvers.go index 6b31c5367..61d871384 100644 --- a/apis/containeraws/v1beta1/zz_generated.resolvers.go +++ b/apis/containeraws/v1beta1/zz_generated.resolvers.go @@ -14,33 +14,42 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this NodePool. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this NodePool. func (mg *NodePool) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ClusterRef, - Selector: mg.Spec.ForProvider.ClusterSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("containeraws.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ClusterRef, + Selector: mg.Spec.ForProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Cluster") } diff --git a/apis/containerazure/v1beta1/zz_generated.resolvers.go b/apis/containerazure/v1beta1/zz_generated.resolvers.go index 6b31c5367..3b1744e05 100644 --- a/apis/containerazure/v1beta1/zz_generated.resolvers.go +++ b/apis/containerazure/v1beta1/zz_generated.resolvers.go @@ -14,33 +14,42 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this NodePool. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this NodePool. func (mg *NodePool) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ClusterRef, - Selector: mg.Spec.ForProvider.ClusterSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("containerazure.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ClusterRef, + Selector: mg.Spec.ForProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Cluster") } diff --git a/apis/datacatalog/v1beta1/zz_generated.resolvers.go b/apis/datacatalog/v1beta1/zz_generated.resolvers.go index 19946a535..0be2ac881 100644 --- a/apis/datacatalog/v1beta1/zz_generated.resolvers.go +++ b/apis/datacatalog/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,62 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Entry. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Entry. func (mg *Entry) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EntryGroup), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EntryGroupRef, - Selector: mg.Spec.ForProvider.EntryGroupSelector, - To: reference.To{ - List: &EntryGroupList{}, - Managed: &EntryGroup{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "EntryGroup", "EntryGroupList") + 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.EntryGroup), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EntryGroupRef, + Selector: mg.Spec.ForProvider.EntryGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EntryGroup") } mg.Spec.ForProvider.EntryGroup = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.EntryGroupRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EntryGroup), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EntryGroupRef, - Selector: mg.Spec.InitProvider.EntryGroupSelector, - To: reference.To{ - List: &EntryGroupList{}, - Managed: &EntryGroup{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "EntryGroup", "EntryGroupList") + 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.EntryGroup), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EntryGroupRef, + Selector: mg.Spec.InitProvider.EntryGroupSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EntryGroup") } @@ -69,69 +81,83 @@ func (mg *Entry) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this Tag. func (mg *Tag) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &EntryList{}, - Managed: &Entry{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "Entry", "EntryList") + 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.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Template), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TemplateRef, - Selector: mg.Spec.ForProvider.TemplateSelector, - To: reference.To{ - List: &TagTemplateList{}, - Managed: &TagTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "TagTemplate", "TagTemplateList") + 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.Template), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TemplateRef, + Selector: mg.Spec.ForProvider.TemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Template") } mg.Spec.ForProvider.Template = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TemplateRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &EntryList{}, - Managed: &Entry{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "Entry", "EntryList") + 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.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } mg.Spec.InitProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.ParentRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Template), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TemplateRef, - Selector: mg.Spec.InitProvider.TemplateSelector, - To: reference.To{ - List: &TagTemplateList{}, - Managed: &TagTemplate{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datacatalog.gcp.upbound.io", "v1beta1", "TagTemplate", "TagTemplateList") + 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.Template), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TemplateRef, + Selector: mg.Spec.InitProvider.TemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Template") } diff --git a/apis/datafusion/v1beta1/zz_generated.resolvers.go b/apis/datafusion/v1beta1/zz_generated.resolvers.go index 84dd10255..54e1e26bd 100644 --- a/apis/datafusion/v1beta1/zz_generated.resolvers.go +++ b/apis/datafusion/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,29 +23,36 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Instance. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Instance. func (mg *Instance) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.CryptoKeyConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReference), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReferenceRef, - Selector: mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReferenceSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKeyConfig[i3].KeyReference), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReferenceRef, + Selector: mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReferenceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CryptoKeyConfig[i3].KeyReference") } @@ -53,16 +61,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.ForProvider.EventPublishConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventPublishConfig[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EventPublishConfig[i3].TopicRef, - Selector: mg.Spec.ForProvider.EventPublishConfig[i3].TopicSelector, - To: reference.To{ - List: &v1beta11.TopicList{}, - Managed: &v1beta11.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EventPublishConfig[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EventPublishConfig[i3].TopicRef, + Selector: mg.Spec.ForProvider.EventPublishConfig[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EventPublishConfig[i3].Topic") } @@ -71,16 +82,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.CryptoKeyConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReference), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReferenceRef, - Selector: mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReferenceSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKeyConfig[i3].KeyReference), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReferenceRef, + Selector: mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReferenceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CryptoKeyConfig[i3].KeyReference") } @@ -89,16 +103,19 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro } for i3 := 0; i3 < len(mg.Spec.InitProvider.EventPublishConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventPublishConfig[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EventPublishConfig[i3].TopicRef, - Selector: mg.Spec.InitProvider.EventPublishConfig[i3].TopicSelector, - To: reference.To{ - List: &v1beta11.TopicList{}, - Managed: &v1beta11.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EventPublishConfig[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EventPublishConfig[i3].TopicRef, + Selector: mg.Spec.InitProvider.EventPublishConfig[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EventPublishConfig[i3].Topic") } diff --git a/apis/datalossprevention/v1beta1/zz_generated.resolvers.go b/apis/datalossprevention/v1beta1/zz_generated.resolvers.go index c3358cd3f..6dc0dca2a 100644 --- a/apis/datalossprevention/v1beta1/zz_generated.resolvers.go +++ b/apis/datalossprevention/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,12 +22,16 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/bigquery/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this JobTrigger. -func (mg *JobTrigger) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *JobTrigger) ResolveReferences( // ResolveReferences of this JobTrigger. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -37,16 +42,19 @@ func (mg *JobTrigger) ResolveReferences(ctx context.Context, c client.Reader) er for i5 := 0; i5 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig); i6++ { for i7 := 0; i7 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDRef, - Selector: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDSelector, - To: reference.To{ - List: &v1beta1.DatasetList{}, - Managed: &v1beta1.Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDRef, + Selector: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID") } @@ -63,16 +71,19 @@ func (mg *JobTrigger) ResolveReferences(ctx context.Context, c client.Reader) er for i5 := 0; i5 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig); i6++ { for i7 := 0; i7 < len(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDRef, - Selector: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDSelector, - To: reference.To{ - List: &v1beta1.TableList{}, - Managed: &v1beta1.Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDRef, + Selector: mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID") } @@ -89,16 +100,19 @@ func (mg *JobTrigger) ResolveReferences(ctx context.Context, c client.Reader) er for i5 := 0; i5 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig); i6++ { for i7 := 0; i7 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDRef, - Selector: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDSelector, - To: reference.To{ - List: &v1beta1.DatasetList{}, - Managed: &v1beta1.Dataset{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDRef, + Selector: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].DatasetID") } @@ -115,16 +129,19 @@ func (mg *JobTrigger) ResolveReferences(ctx context.Context, c client.Reader) er for i5 := 0; i5 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig); i6++ { for i7 := 0; i7 < len(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table); i7++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDRef, - Selector: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDSelector, - To: reference.To{ - List: &v1beta1.TableList{}, - Managed: &v1beta1.Table{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("bigquery.gcp.upbound.io", "v1beta1", "Table", "TableList") + 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.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDRef, + Selector: mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InspectJob[i3].Actions[i4].Deidentify[i5].TransformationDetailsStorageConfig[i6].Table[i7].TableID") } diff --git a/apis/dataplex/v1beta1/zz_generated.resolvers.go b/apis/dataplex/v1beta1/zz_generated.resolvers.go index f667c72f3..519787349 100644 --- a/apis/dataplex/v1beta1/zz_generated.resolvers.go +++ b/apis/dataplex/v1beta1/zz_generated.resolvers.go @@ -14,49 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Asset. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Asset. func (mg *Asset) 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 + { + m, l, err = apisresolver.GetManagedResource("dataplex.gcp.upbound.io", "v1beta1", "Zone", "ZoneList") + 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.DataplexZone), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DataplexZoneRef, - Selector: mg.Spec.ForProvider.DataplexZoneSelector, - To: reference.To{ - List: &ZoneList{}, - Managed: &Zone{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DataplexZone), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DataplexZoneRef, + Selector: mg.Spec.ForProvider.DataplexZoneSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DataplexZone") } mg.Spec.ForProvider.DataplexZone = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DataplexZoneRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dataplex.gcp.upbound.io", "v1beta1", "Lake", "LakeList") + 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.Lake), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.LakeRef, - Selector: mg.Spec.ForProvider.LakeSelector, - To: reference.To{ - List: &LakeList{}, - Managed: &Lake{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Lake), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.LakeRef, + Selector: mg.Spec.ForProvider.LakeSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Lake") } @@ -68,21 +80,26 @@ func (mg *Asset) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this Zone. func (mg *Zone) 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 + { + m, l, err = apisresolver.GetManagedResource("dataplex.gcp.upbound.io", "v1beta1", "Lake", "LakeList") + 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.Lake), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.LakeRef, - Selector: mg.Spec.ForProvider.LakeSelector, - To: reference.To{ - List: &LakeList{}, - Managed: &Lake{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Lake), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.LakeRef, + Selector: mg.Spec.ForProvider.LakeSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Lake") } diff --git a/apis/dataproc/v1beta1/zz_generated.resolvers.go b/apis/dataproc/v1beta1/zz_generated.resolvers.go index 33f9280c6..ddb943d41 100644 --- a/apis/dataproc/v1beta1/zz_generated.resolvers.go +++ b/apis/dataproc/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,14 +23,17 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta12 "github.com/upbound/provider-gcp/apis/compute/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Cluster. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Cluster. func (mg *Cluster) 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 @@ -37,16 +41,19 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error for i3 := 0; i3 < len(mg.Spec.ForProvider.ClusterConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountRef, - Selector: mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountRef, + Selector: mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount") } @@ -57,16 +64,19 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.ClusterConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountRef, - Selector: mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountRef, + Selector: mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ClusterConfig[i3].GceClusterConfig[i4].ServiceAccount") } @@ -81,22 +91,27 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Job. func (mg *Job) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Placement); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Placement[i3].ClusterName), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.ForProvider.Placement[i3].ClusterNameRef, - Selector: mg.Spec.ForProvider.Placement[i3].ClusterNameSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dataproc.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Placement[i3].ClusterName), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.ForProvider.Placement[i3].ClusterNameRef, + Selector: mg.Spec.ForProvider.Placement[i3].ClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Placement[i3].ClusterName") } @@ -104,16 +119,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.ForProvider.Placement[i3].ClusterNameRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.ForProvider.RegionRef, - Selector: mg.Spec.ForProvider.RegionSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dataproc.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.ForProvider.RegionRef, + Selector: mg.Spec.ForProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Region") } @@ -121,16 +139,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.ForProvider.RegionRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.Placement); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Placement[i3].ClusterName), - Extract: resource.ExtractParamPath("name", false), - Reference: mg.Spec.InitProvider.Placement[i3].ClusterNameRef, - Selector: mg.Spec.InitProvider.Placement[i3].ClusterNameSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dataproc.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Placement[i3].ClusterName), + Extract: resource.ExtractParamPath("name", false), + Reference: mg.Spec.InitProvider.Placement[i3].ClusterNameRef, + Selector: mg.Spec.InitProvider.Placement[i3].ClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Placement[i3].ClusterName") } @@ -138,16 +159,19 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.InitProvider.Placement[i3].ClusterNameRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.InitProvider.RegionRef, - Selector: mg.Spec.InitProvider.RegionSelector, - To: reference.To{ - List: &ClusterList{}, - Managed: &Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dataproc.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.InitProvider.RegionRef, + Selector: mg.Spec.InitProvider.RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Region") } @@ -159,22 +183,27 @@ func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this MetastoreService. func (mg *MetastoreService) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.EncryptionConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EncryptionConfig[i3].KMSKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.EncryptionConfig[i3].KMSKeyRef, - Selector: mg.Spec.ForProvider.EncryptionConfig[i3].KMSKeySelector, - To: reference.To{ - List: &v1beta11.CryptoKeyList{}, - Managed: &v1beta11.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.EncryptionConfig[i3].KMSKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EncryptionConfig[i3].KMSKeyRef, + Selector: mg.Spec.ForProvider.EncryptionConfig[i3].KMSKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.EncryptionConfig[i3].KMSKey") } @@ -184,16 +213,19 @@ func (mg *MetastoreService) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.NetworkConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.NetworkConfig[i3].Consumers); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].Subnetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].SubnetworkRef, - Selector: mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].SubnetworkSelector, - To: reference.To{ - List: &v1beta12.SubnetworkList{}, - Managed: &v1beta12.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkConfig[i3].Consumers[i4].Subnetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].SubnetworkRef, + Selector: mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.NetworkConfig[i3].Consumers[i4].Subnetwork") } @@ -203,16 +235,19 @@ func (mg *MetastoreService) ResolveReferences(ctx context.Context, c client.Read } } for i3 := 0; i3 < len(mg.Spec.InitProvider.EncryptionConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EncryptionConfig[i3].KMSKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.EncryptionConfig[i3].KMSKeyRef, - Selector: mg.Spec.InitProvider.EncryptionConfig[i3].KMSKeySelector, - To: reference.To{ - List: &v1beta11.CryptoKeyList{}, - Managed: &v1beta11.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.EncryptionConfig[i3].KMSKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EncryptionConfig[i3].KMSKeyRef, + Selector: mg.Spec.InitProvider.EncryptionConfig[i3].KMSKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.EncryptionConfig[i3].KMSKey") } @@ -222,16 +257,19 @@ func (mg *MetastoreService) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.NetworkConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.NetworkConfig[i3].Consumers); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].Subnetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].SubnetworkRef, - Selector: mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].SubnetworkSelector, - To: reference.To{ - List: &v1beta12.SubnetworkList{}, - Managed: &v1beta12.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.NetworkConfig[i3].Consumers[i4].Subnetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].SubnetworkRef, + Selector: mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].SubnetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.NetworkConfig[i3].Consumers[i4].Subnetwork") } diff --git a/apis/datastream/v1beta1/zz_generated.resolvers.go b/apis/datastream/v1beta1/zz_generated.resolvers.go index 46217c20c..4737a3a4d 100644 --- a/apis/datastream/v1beta1/zz_generated.resolvers.go +++ b/apis/datastream/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,29 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/compute/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/sql/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this ConnectionProfile. -func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *ConnectionProfile) ResolveReferences( // ResolveReferences of this ConnectionProfile. + 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PostgresqlProfile[i3].Database), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].DatabaseRef, - Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].DatabaseSelector, - To: reference.To{ - List: &v1beta1.DatabaseList{}, - Managed: &v1beta1.Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.PostgresqlProfile[i3].Database), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].DatabaseRef, + Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PostgresqlProfile[i3].Database") } @@ -53,16 +60,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.ForProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PostgresqlProfile[i3].Hostname), - Extract: resource.ExtractParamPath("public_ip_address", true), - Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].HostnameRef, - Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].HostnameSelector, - To: reference.To{ - List: &v1beta1.DatabaseInstanceList{}, - Managed: &v1beta1.DatabaseInstance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.PostgresqlProfile[i3].Hostname), + Extract: resource.ExtractParamPath("public_ip_address", true), + Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].HostnameRef, + Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].HostnameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PostgresqlProfile[i3].Hostname") } @@ -71,16 +81,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.ForProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PostgresqlProfile[i3].Username), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].UsernameRef, - Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].UsernameSelector, - To: reference.To{ - List: &v1beta1.UserList{}, - Managed: &v1beta1.User{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PostgresqlProfile[i3].Username), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PostgresqlProfile[i3].UsernameRef, + Selector: mg.Spec.ForProvider.PostgresqlProfile[i3].UsernameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PostgresqlProfile[i3].Username") } @@ -89,16 +102,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.ForProvider.PrivateConnectivity); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnection), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnectionRef, - Selector: mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnectionSelector, - To: reference.To{ - List: &PrivateConnectionList{}, - Managed: &PrivateConnection{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datastream.gcp.upbound.io", "v1beta1", "PrivateConnection", "PrivateConnectionList") + 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.PrivateConnectivity[i3].PrivateConnection), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnectionRef, + Selector: mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnectionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PrivateConnectivity[i3].PrivateConnection") } @@ -107,16 +123,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PostgresqlProfile[i3].Database), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].DatabaseRef, - Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].DatabaseSelector, - To: reference.To{ - List: &v1beta1.DatabaseList{}, - Managed: &v1beta1.Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.PostgresqlProfile[i3].Database), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].DatabaseRef, + Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PostgresqlProfile[i3].Database") } @@ -125,16 +144,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PostgresqlProfile[i3].Hostname), - Extract: resource.ExtractParamPath("public_ip_address", true), - Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].HostnameRef, - Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].HostnameSelector, - To: reference.To{ - List: &v1beta1.DatabaseInstanceList{}, - Managed: &v1beta1.DatabaseInstance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.PostgresqlProfile[i3].Hostname), + Extract: resource.ExtractParamPath("public_ip_address", true), + Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].HostnameRef, + Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].HostnameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PostgresqlProfile[i3].Hostname") } @@ -143,16 +165,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.PostgresqlProfile); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PostgresqlProfile[i3].Username), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].UsernameRef, - Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].UsernameSelector, - To: reference.To{ - List: &v1beta1.UserList{}, - Managed: &v1beta1.User{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PostgresqlProfile[i3].Username), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.PostgresqlProfile[i3].UsernameRef, + Selector: mg.Spec.InitProvider.PostgresqlProfile[i3].UsernameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PostgresqlProfile[i3].Username") } @@ -161,16 +186,19 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.PrivateConnectivity); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnection), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnectionRef, - Selector: mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnectionSelector, - To: reference.To{ - List: &PrivateConnectionList{}, - Managed: &PrivateConnection{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("datastream.gcp.upbound.io", "v1beta1", "PrivateConnection", "PrivateConnectionList") + 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.PrivateConnectivity[i3].PrivateConnection), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnectionRef, + Selector: mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnectionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PrivateConnectivity[i3].PrivateConnection") } @@ -184,22 +212,27 @@ func (mg *ConnectionProfile) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this PrivateConnection. func (mg *PrivateConnection) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.VPCPeeringConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VPCPeeringConfig[i3].VPC), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.VPCPeeringConfig[i3].VPCRef, - Selector: mg.Spec.ForProvider.VPCPeeringConfig[i3].VPCSelector, - To: reference.To{ - List: &v1beta11.NetworkList{}, - Managed: &v1beta11.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.VPCPeeringConfig[i3].VPC), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.VPCPeeringConfig[i3].VPCRef, + Selector: mg.Spec.ForProvider.VPCPeeringConfig[i3].VPCSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VPCPeeringConfig[i3].VPC") } @@ -208,16 +241,19 @@ func (mg *PrivateConnection) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.VPCPeeringConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VPCPeeringConfig[i3].VPC), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.VPCPeeringConfig[i3].VPCRef, - Selector: mg.Spec.InitProvider.VPCPeeringConfig[i3].VPCSelector, - To: reference.To{ - List: &v1beta11.NetworkList{}, - Managed: &v1beta11.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.VPCPeeringConfig[i3].VPC), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.VPCPeeringConfig[i3].VPCRef, + Selector: mg.Spec.InitProvider.VPCPeeringConfig[i3].VPCSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VPCPeeringConfig[i3].VPC") } diff --git a/apis/dialogflowcx/v1beta1/zz_generated.resolvers.go b/apis/dialogflowcx/v1beta1/zz_generated.resolvers.go index caa9d2661..0f8263096 100644 --- a/apis/dialogflowcx/v1beta1/zz_generated.resolvers.go +++ b/apis/dialogflowcx/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this EntityType. -func (mg *EntityType) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *EntityType) ResolveReferences( // ResolveReferences of this EntityType. + 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -69,21 +80,26 @@ func (mg *EntityType) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this Environment. func (mg *Environment) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } @@ -91,16 +107,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.VersionConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.VersionConfigs[i3].Version), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.VersionConfigs[i3].VersionRef, - Selector: mg.Spec.ForProvider.VersionConfigs[i3].VersionSelector, - To: reference.To{ - List: &VersionList{}, - Managed: &Version{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Version", "VersionList") + 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.VersionConfigs[i3].Version), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.VersionConfigs[i3].VersionRef, + Selector: mg.Spec.ForProvider.VersionConfigs[i3].VersionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.VersionConfigs[i3].Version") } @@ -108,16 +127,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e mg.Spec.ForProvider.VersionConfigs[i3].VersionRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -125,16 +147,19 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e mg.Spec.InitProvider.ParentRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.VersionConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.VersionConfigs[i3].Version), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.VersionConfigs[i3].VersionRef, - Selector: mg.Spec.InitProvider.VersionConfigs[i3].VersionSelector, - To: reference.To{ - List: &VersionList{}, - Managed: &Version{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Version", "VersionList") + 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.VersionConfigs[i3].Version), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.VersionConfigs[i3].VersionRef, + Selector: mg.Spec.InitProvider.VersionConfigs[i3].VersionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.VersionConfigs[i3].Version") } @@ -148,37 +173,45 @@ func (mg *Environment) ResolveReferences(ctx context.Context, c client.Reader) e // ResolveReferences of this Flow. func (mg *Flow) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -190,37 +223,45 @@ func (mg *Flow) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this Intent. func (mg *Intent) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -232,21 +273,26 @@ func (mg *Intent) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Page. func (mg *Page) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractParamPath("start_flow", true), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractParamPath("start_flow", true), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } @@ -254,16 +300,19 @@ func (mg *Page) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.TransitionRoutes); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.TransitionRoutes[i3].TargetPage), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TransitionRoutes[i3].TargetPageRef, - Selector: mg.Spec.ForProvider.TransitionRoutes[i3].TargetPageSelector, - To: reference.To{ - List: &PageList{}, - Managed: &Page{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Page", "PageList") + 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.TransitionRoutes[i3].TargetPage), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TransitionRoutes[i3].TargetPageRef, + Selector: mg.Spec.ForProvider.TransitionRoutes[i3].TargetPageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.TransitionRoutes[i3].TargetPage") } @@ -271,16 +320,19 @@ func (mg *Page) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.ForProvider.TransitionRoutes[i3].TargetPageRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), - Extract: resource.ExtractParamPath("start_flow", true), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), + Extract: resource.ExtractParamPath("start_flow", true), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -288,16 +340,19 @@ func (mg *Page) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.InitProvider.ParentRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.TransitionRoutes); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.TransitionRoutes[i3].TargetPage), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TransitionRoutes[i3].TargetPageRef, - Selector: mg.Spec.InitProvider.TransitionRoutes[i3].TargetPageSelector, - To: reference.To{ - List: &PageList{}, - Managed: &Page{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Page", "PageList") + 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.TransitionRoutes[i3].TargetPage), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TransitionRoutes[i3].TargetPageRef, + Selector: mg.Spec.InitProvider.TransitionRoutes[i3].TargetPageSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.TransitionRoutes[i3].TargetPage") } @@ -311,37 +366,45 @@ func (mg *Page) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this Version. func (mg *Version) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractParamPath("start_flow", true), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractParamPath("start_flow", true), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractParamPath("start_flow", true), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), + Extract: resource.ExtractParamPath("start_flow", true), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } @@ -353,37 +416,45 @@ func (mg *Version) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Webhook. func (mg *Webhook) 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 + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ParentRef, - Selector: mg.Spec.ForProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ParentRef, + Selector: mg.Spec.ForProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Parent") } mg.Spec.ForProvider.Parent = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("dialogflowcx.gcp.upbound.io", "v1beta1", "Agent", "AgentList") + 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.Parent), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ParentRef, - Selector: mg.Spec.InitProvider.ParentSelector, - To: reference.To{ - List: &AgentList{}, - Managed: &Agent{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Parent), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ParentRef, + Selector: mg.Spec.InitProvider.ParentSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Parent") } diff --git a/apis/dns/v1beta1/zz_generated.resolvers.go b/apis/dns/v1beta1/zz_generated.resolvers.go index 9e1208382..326aec1ae 100644 --- a/apis/dns/v1beta1/zz_generated.resolvers.go +++ b/apis/dns/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,14 +23,17 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/container/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" common "github.com/upbound/provider-gcp/config/common" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this ManagedZone. -func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *ManagedZone) ResolveReferences( // ResolveReferences of this ManagedZone. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -37,16 +41,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e for i3 := 0; i3 < len(mg.Spec.ForProvider.PeeringConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURL), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLRef, - Selector: mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PeeringConfig[i3].TargetNetwork[i4].NetworkURL), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLRef, + Selector: mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURL") } @@ -57,16 +64,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.ForProvider.PrivateVisibilityConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameRef, - Selector: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameSelector, - To: reference.To{ - List: &v1beta11.ClusterList{}, - Managed: &v1beta11.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameRef, + Selector: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName") } @@ -77,16 +87,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.ForProvider.PrivateVisibilityConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLRef, - Selector: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLRef, + Selector: mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL") } @@ -97,16 +110,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.InitProvider.PeeringConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURL), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLRef, - Selector: mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PeeringConfig[i3].TargetNetwork[i4].NetworkURL), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLRef, + Selector: mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PeeringConfig[i3].TargetNetwork[i4].NetworkURL") } @@ -117,16 +133,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.InitProvider.PrivateVisibilityConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameRef, - Selector: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameSelector, - To: reference.To{ - List: &v1beta11.ClusterList{}, - Managed: &v1beta11.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameRef, + Selector: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PrivateVisibilityConfig[i3].GkeClusters[i4].GkeClusterName") } @@ -137,16 +156,19 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e } for i3 := 0; i3 < len(mg.Spec.InitProvider.PrivateVisibilityConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL), - Extract: common.SelfLinkExtractor(), - Reference: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLRef, - Selector: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL), + Extract: common.SelfLinkExtractor(), + Reference: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLRef, + Selector: mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PrivateVisibilityConfig[i3].Networks[i4].NetworkURL") } @@ -161,22 +183,27 @@ func (mg *ManagedZone) ResolveReferences(ctx context.Context, c client.Reader) e // ResolveReferences of this Policy. func (mg *Policy) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Networks); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Networks[i3].NetworkURL), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Networks[i3].NetworkRef, - Selector: mg.Spec.ForProvider.Networks[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Networks[i3].NetworkURL), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Networks[i3].NetworkRef, + Selector: mg.Spec.ForProvider.Networks[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Networks[i3].NetworkURL") } @@ -185,16 +212,19 @@ func (mg *Policy) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.Networks); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Networks[i3].NetworkURL), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Networks[i3].NetworkRef, - Selector: mg.Spec.InitProvider.Networks[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Networks[i3].NetworkURL), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Networks[i3].NetworkRef, + Selector: mg.Spec.InitProvider.Networks[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Networks[i3].NetworkURL") } @@ -208,21 +238,26 @@ func (mg *Policy) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this RecordSet. func (mg *RecordSet) 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 + { + m, l, err = apisresolver.GetManagedResource("dns.gcp.upbound.io", "v1beta1", "ManagedZone", "ManagedZoneList") + 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.ManagedZone), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ManagedZoneRef, - Selector: mg.Spec.ForProvider.ManagedZoneSelector, - To: reference.To{ - List: &ManagedZoneList{}, - Managed: &ManagedZone{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ManagedZone), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ManagedZoneRef, + Selector: mg.Spec.ForProvider.ManagedZoneSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ManagedZone") } @@ -233,16 +268,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress), - Extract: resource.ExtractParamPath("ip_address", false), - Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressRef, - Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress), + Extract: resource.ExtractParamPath("ip_address", false), + Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressRef, + Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress") } @@ -257,16 +295,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLRef, - Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLRef, + Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL") } @@ -281,16 +322,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectRef, - Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectRef, + Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project") } @@ -305,16 +349,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionRef, - Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionRef, + Selector: mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region") } @@ -325,16 +372,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err } } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ManagedZone), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ManagedZoneRef, - Selector: mg.Spec.InitProvider.ManagedZoneSelector, - To: reference.To{ - List: &ManagedZoneList{}, - Managed: &ManagedZone{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("dns.gcp.upbound.io", "v1beta1", "ManagedZone", "ManagedZoneList") + 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.ManagedZone), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ManagedZoneRef, + Selector: mg.Spec.InitProvider.ManagedZoneSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ManagedZone") } @@ -345,16 +395,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress), - Extract: resource.ExtractParamPath("ip_address", false), - Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressRef, - Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress), + Extract: resource.ExtractParamPath("ip_address", false), + Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressRef, + Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].IPAddress") } @@ -369,16 +422,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLRef, - Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLRef, + Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURLSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].NetworkURL") } @@ -393,16 +449,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectRef, - Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectRef, + Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Project") } @@ -417,16 +476,19 @@ func (mg *RecordSet) ResolveReferences(ctx context.Context, c client.Reader) err for i4 := 0; i4 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary); i5++ { for i6 := 0; i6 < len(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers); i6++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region), - Extract: resource.ExtractParamPath("region", false), - Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionRef, - Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionSelector, - To: reference.To{ - List: &v1beta1.ForwardingRuleList{}, - Managed: &v1beta1.ForwardingRule{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "ForwardingRule", "ForwardingRuleList") + 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.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region), + Extract: resource.ExtractParamPath("region", false), + Reference: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionRef, + Selector: mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].RegionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RoutingPolicy[i3].PrimaryBackup[i4].Primary[i5].InternalLoadBalancers[i6].Region") } diff --git a/apis/eventarc/v1beta1/zz_generated.resolvers.go b/apis/eventarc/v1beta1/zz_generated.resolvers.go index 55c4b3090..4a3ab76eb 100644 --- a/apis/eventarc/v1beta1/zz_generated.resolvers.go +++ b/apis/eventarc/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,12 +22,17 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudrun/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Trigger. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Trigger. func (mg *Trigger) 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 @@ -34,16 +40,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error for i3 := 0; i3 < len(mg.Spec.ForProvider.Destination); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Destination[i3].CloudRunService); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].ServiceRef, - Selector: mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].ServiceSelector, - To: reference.To{ - List: &v1beta1.ServiceList{}, - Managed: &v1beta1.Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Destination[i3].CloudRunService[i4].Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].ServiceRef, + Selector: mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Destination[i3].CloudRunService[i4].Service") } @@ -54,16 +63,19 @@ func (mg *Trigger) ResolveReferences(ctx context.Context, c client.Reader) error } for i3 := 0; i3 < len(mg.Spec.InitProvider.Destination); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Destination[i3].CloudRunService); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].Service), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].ServiceRef, - Selector: mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].ServiceSelector, - To: reference.To{ - List: &v1beta1.ServiceList{}, - Managed: &v1beta1.Service{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudrun.gcp.upbound.io", "v1beta1", "Service", "ServiceList") + 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.Destination[i3].CloudRunService[i4].Service), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].ServiceRef, + Selector: mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Destination[i3].CloudRunService[i4].Service") } diff --git a/apis/filestore/v1beta1/zz_generated.resolvers.go b/apis/filestore/v1beta1/zz_generated.resolvers.go index 674787072..0808e9a9b 100644 --- a/apis/filestore/v1beta1/zz_generated.resolvers.go +++ b/apis/filestore/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Backup. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Backup. func (mg *Backup) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SourceInstance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SourceInstanceRef, - Selector: mg.Spec.ForProvider.SourceInstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("filestore.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.SourceInstance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SourceInstanceRef, + Selector: mg.Spec.ForProvider.SourceInstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SourceInstance") } mg.Spec.ForProvider.SourceInstance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SourceInstanceRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SourceInstance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SourceInstanceRef, - Selector: mg.Spec.InitProvider.SourceInstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("filestore.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.SourceInstance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SourceInstanceRef, + Selector: mg.Spec.InitProvider.SourceInstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SourceInstance") } @@ -70,37 +82,45 @@ func (mg *Backup) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Instance. func (mg *Instance) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.KMSKeyNameRef, - Selector: mg.Spec.ForProvider.KMSKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.KMSKeyNameRef, + Selector: mg.Spec.ForProvider.KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.KMSKeyName") } mg.Spec.ForProvider.KMSKeyName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.KMSKeyNameRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.KMSKeyNameRef, - Selector: mg.Spec.InitProvider.KMSKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.KMSKeyNameRef, + Selector: mg.Spec.InitProvider.KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.KMSKeyName") } @@ -112,21 +132,26 @@ func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this Snapshot. func (mg *Snapshot) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("filestore.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } diff --git a/apis/firebaserules/v1beta1/zz_generated.resolvers.go b/apis/firebaserules/v1beta1/zz_generated.resolvers.go index 00a1a1d6e..a7cb9de88 100644 --- a/apis/firebaserules/v1beta1/zz_generated.resolvers.go +++ b/apis/firebaserules/v1beta1/zz_generated.resolvers.go @@ -14,49 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Release. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Release. func (mg *Release) 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 + { + m, l, err = apisresolver.GetManagedResource("firebaserules.gcp.upbound.io", "v1beta1", "Ruleset", "RulesetList") + 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.RulesetName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RulesetNameRef, - Selector: mg.Spec.ForProvider.RulesetNameSelector, - To: reference.To{ - List: &RulesetList{}, - Managed: &Ruleset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RulesetName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RulesetNameRef, + Selector: mg.Spec.ForProvider.RulesetNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RulesetName") } mg.Spec.ForProvider.RulesetName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RulesetNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("firebaserules.gcp.upbound.io", "v1beta1", "Ruleset", "RulesetList") + 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.RulesetName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.RulesetNameRef, - Selector: mg.Spec.InitProvider.RulesetNameSelector, - To: reference.To{ - List: &RulesetList{}, - Managed: &Ruleset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RulesetName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.RulesetNameRef, + Selector: mg.Spec.InitProvider.RulesetNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RulesetName") } diff --git a/apis/generate.go b/apis/generate.go index a8e54a915..3e48ce11a 100644 --- a/apis/generate.go +++ b/apis/generate.go @@ -42,6 +42,10 @@ limitations under the License. // Generate crossplane-runtime methodsets (resource.Claim, etc) //go:generate go run -tags generate github.com/crossplane/crossplane-tools/cmd/angryjet generate-methodsets --header-file=../hack/boilerplate.go.txt ./... +// Run upjet's transformer for the generated resolvers to get rid of the cross +// API-group imports and to prevent import cycles +//go:generate go run github.com/crossplane/upjet/cmd/resolver -g gcp.upbound.io -a github.com/upbound/provider-gcp/internal/apis -s + package apis import ( diff --git a/apis/gke/v1beta1/zz_generated.resolvers.go b/apis/gke/v1beta1/zz_generated.resolvers.go index 96fd45d2e..0713ba24e 100644 --- a/apis/gke/v1beta1/zz_generated.resolvers.go +++ b/apis/gke/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,13 +23,16 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/container/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this BackupBackupPlan. -func (mg *BackupBackupPlan) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *BackupBackupPlan) ResolveReferences( // ResolveReferences of this BackupBackupPlan. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -36,16 +40,19 @@ func (mg *BackupBackupPlan) ResolveReferences(ctx context.Context, c client.Read for i3 := 0; i3 < len(mg.Spec.ForProvider.BackupConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeyRef, - Selector: mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeySelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeyRef, + Selector: mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey") } @@ -54,16 +61,19 @@ func (mg *BackupBackupPlan) ResolveReferences(ctx context.Context, c client.Read } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ClusterRef, - Selector: mg.Spec.ForProvider.ClusterSelector, - To: reference.To{ - List: &v1beta11.ClusterList{}, - Managed: &v1beta11.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Cluster), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ClusterRef, + Selector: mg.Spec.ForProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Cluster") } @@ -72,16 +82,19 @@ func (mg *BackupBackupPlan) ResolveReferences(ctx context.Context, c client.Read for i3 := 0; i3 < len(mg.Spec.InitProvider.BackupConfig); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeyRef, - Selector: mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeySelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeyRef, + Selector: mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BackupConfig[i3].EncryptionKey[i4].GCPKMSEncryptionKey") } @@ -90,16 +103,19 @@ func (mg *BackupBackupPlan) ResolveReferences(ctx context.Context, c client.Read } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Cluster), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ClusterRef, - Selector: mg.Spec.InitProvider.ClusterSelector, - To: reference.To{ - List: &v1beta11.ClusterList{}, - Managed: &v1beta11.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Cluster), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ClusterRef, + Selector: mg.Spec.InitProvider.ClusterSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Cluster") } diff --git a/apis/gkehub/v1beta1/zz_generated.resolvers.go b/apis/gkehub/v1beta1/zz_generated.resolvers.go index e643b8688..ce0c00c4e 100644 --- a/apis/gkehub/v1beta1/zz_generated.resolvers.go +++ b/apis/gkehub/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,12 +23,16 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/container/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Membership. -func (mg *Membership) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Membership) ResolveReferences( // ResolveReferences of this Membership. + ctx context.Context, c client.Reader) error { + var m xpresource.Managed + var l xpresource.ManagedList r := reference.NewAPIResolver(c, mg) var rsp reference.ResolutionResponse @@ -35,16 +40,19 @@ func (mg *Membership) ResolveReferences(ctx context.Context, c client.Reader) er for i3 := 0; i3 < len(mg.Spec.ForProvider.Endpoint); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Endpoint[i3].GkeCluster); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLink), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkRef, - Selector: mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkSelector, - To: reference.To{ - List: &v1beta1.ClusterList{}, - Managed: &v1beta1.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLink), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkRef, + Selector: mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Endpoint[i3].GkeCluster[i4].ResourceLink") } @@ -55,16 +63,19 @@ func (mg *Membership) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.Endpoint); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Endpoint[i3].GkeCluster); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLink), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkRef, - Selector: mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkSelector, - To: reference.To{ - List: &v1beta1.ClusterList{}, - Managed: &v1beta1.Cluster{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("container.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLink), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkRef, + Selector: mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLinkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Endpoint[i3].GkeCluster[i4].ResourceLink") } @@ -79,37 +90,45 @@ func (mg *Membership) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this MembershipIAMMember. func (mg *MembershipIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("gkehub.gcp.upbound.io", "v1beta1", "Membership", "MembershipList") + 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.MembershipID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.MembershipIDRef, - Selector: mg.Spec.ForProvider.MembershipIDSelector, - To: reference.To{ - List: &MembershipList{}, - Managed: &Membership{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.MembershipID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.MembershipIDRef, + Selector: mg.Spec.ForProvider.MembershipIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.MembershipID") } mg.Spec.ForProvider.MembershipID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.MembershipIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("gkehub.gcp.upbound.io", "v1beta1", "Membership", "MembershipList") + 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.MembershipID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.MembershipIDRef, - Selector: mg.Spec.InitProvider.MembershipIDSelector, - To: reference.To{ - List: &MembershipList{}, - Managed: &Membership{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.MembershipID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.MembershipIDRef, + Selector: mg.Spec.InitProvider.MembershipIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.MembershipID") } diff --git a/apis/healthcare/v1beta1/zz_generated.resolvers.go b/apis/healthcare/v1beta1/zz_generated.resolvers.go index 1e7ca3840..d42b3903a 100644 --- a/apis/healthcare/v1beta1/zz_generated.resolvers.go +++ b/apis/healthcare/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this ConsentStore. -func (mg *ConsentStore) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *ConsentStore) ResolveReferences( // ResolveReferences of this ConsentStore. + 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 + { + m, l, err = apisresolver.GetManagedResource("healthcare.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Dataset), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DatasetRef, - Selector: mg.Spec.ForProvider.DatasetSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Dataset), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DatasetRef, + Selector: mg.Spec.ForProvider.DatasetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Dataset") } mg.Spec.ForProvider.Dataset = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatasetRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("healthcare.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.Dataset), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DatasetRef, - Selector: mg.Spec.InitProvider.DatasetSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Dataset), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DatasetRef, + Selector: mg.Spec.InitProvider.DatasetSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Dataset") } @@ -69,37 +80,45 @@ func (mg *ConsentStore) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this DatasetIAMMember. func (mg *DatasetIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("healthcare.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.DatasetIDRef, - Selector: mg.Spec.ForProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.DatasetIDRef, + Selector: mg.Spec.ForProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DatasetID") } mg.Spec.ForProvider.DatasetID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatasetIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("healthcare.gcp.upbound.io", "v1beta1", "Dataset", "DatasetList") + 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.DatasetID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.DatasetIDRef, - Selector: mg.Spec.InitProvider.DatasetIDSelector, - To: reference.To{ - List: &DatasetList{}, - Managed: &Dataset{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DatasetID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.DatasetIDRef, + Selector: mg.Spec.InitProvider.DatasetIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DatasetID") } diff --git a/apis/iam/v1beta1/zz_generated.resolvers.go b/apis/iam/v1beta1/zz_generated.resolvers.go index f0e2a7aff..4a1cd12a7 100644 --- a/apis/iam/v1beta1/zz_generated.resolvers.go +++ b/apis/iam/v1beta1/zz_generated.resolvers.go @@ -14,33 +14,41 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this WorkloadIdentityPoolProvider. -func (mg *WorkloadIdentityPoolProvider) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *WorkloadIdentityPoolProvider) ResolveReferences( // ResolveReferences of this WorkloadIdentityPoolProvider. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkloadIdentityPoolID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.WorkloadIdentityPoolIDRef, - Selector: mg.Spec.ForProvider.WorkloadIdentityPoolIDSelector, - To: reference.To{ - List: &WorkloadIdentityPoolList{}, - Managed: &WorkloadIdentityPool{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("iam.gcp.upbound.io", "v1beta1", "WorkloadIdentityPool", "WorkloadIdentityPoolList") + 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.WorkloadIdentityPoolID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.WorkloadIdentityPoolIDRef, + Selector: mg.Spec.ForProvider.WorkloadIdentityPoolIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.WorkloadIdentityPoolID") } diff --git a/apis/iap/v1beta1/zz_generated.resolvers.go b/apis/iap/v1beta1/zz_generated.resolvers.go index 36b036669..5e8051f8d 100644 --- a/apis/iap/v1beta1/zz_generated.resolvers.go +++ b/apis/iap/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,44 +22,53 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta11 "github.com/upbound/provider-gcp/apis/appengine/v1beta1" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this WebBackendServiceIAMMember. -func (mg *WebBackendServiceIAMMember) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *WebBackendServiceIAMMember) ResolveReferences( // ResolveReferences of this WebBackendServiceIAMMember. + 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.WebBackendService), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.WebBackendServiceRef, - Selector: mg.Spec.ForProvider.WebBackendServiceSelector, - To: reference.To{ - List: &v1beta1.BackendServiceList{}, - Managed: &v1beta1.BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WebBackendService), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.WebBackendServiceRef, + Selector: mg.Spec.ForProvider.WebBackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.WebBackendService") } mg.Spec.ForProvider.WebBackendService = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.WebBackendServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "BackendService", "BackendServiceList") + 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.WebBackendService), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.WebBackendServiceRef, - Selector: mg.Spec.InitProvider.WebBackendServiceSelector, - To: reference.To{ - List: &v1beta1.BackendServiceList{}, - Managed: &v1beta1.BackendService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.WebBackendService), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.WebBackendServiceRef, + Selector: mg.Spec.InitProvider.WebBackendServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.WebBackendService") } @@ -70,37 +80,45 @@ func (mg *WebBackendServiceIAMMember) ResolveReferences(ctx context.Context, c c // ResolveReferences of this WebTypeAppEngineIAMMember. func (mg *WebTypeAppEngineIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "Application", "ApplicationList") + 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.AppID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.AppIDRef, - Selector: mg.Spec.ForProvider.AppIDSelector, - To: reference.To{ - List: &v1beta11.ApplicationList{}, - Managed: &v1beta11.Application{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AppID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.AppIDRef, + Selector: mg.Spec.ForProvider.AppIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AppID") } mg.Spec.ForProvider.AppID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AppIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("appengine.gcp.upbound.io", "v1beta1", "Application", "ApplicationList") + 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.AppID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.AppIDRef, - Selector: mg.Spec.InitProvider.AppIDSelector, - To: reference.To{ - List: &v1beta11.ApplicationList{}, - Managed: &v1beta11.Application{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AppID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.AppIDRef, + Selector: mg.Spec.InitProvider.AppIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AppID") } diff --git a/apis/identityplatform/v1beta1/zz_generated.resolvers.go b/apis/identityplatform/v1beta1/zz_generated.resolvers.go index 3a591b27f..13de71635 100644 --- a/apis/identityplatform/v1beta1/zz_generated.resolvers.go +++ b/apis/identityplatform/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this TenantDefaultSupportedIdPConfig. -func (mg *TenantDefaultSupportedIdPConfig) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *TenantDefaultSupportedIdPConfig) ResolveReferences( // ResolveReferences of this TenantDefaultSupportedIdPConfig. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.TenantRef, - Selector: mg.Spec.ForProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.TenantRef, + Selector: mg.Spec.ForProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Tenant") } mg.Spec.ForProvider.Tenant = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TenantRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.TenantRef, - Selector: mg.Spec.InitProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.TenantRef, + Selector: mg.Spec.InitProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Tenant") } @@ -69,37 +80,45 @@ func (mg *TenantDefaultSupportedIdPConfig) ResolveReferences(ctx context.Context // ResolveReferences of this TenantInboundSAMLConfig. func (mg *TenantInboundSAMLConfig) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.TenantRef, - Selector: mg.Spec.ForProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.TenantRef, + Selector: mg.Spec.ForProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Tenant") } mg.Spec.ForProvider.Tenant = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TenantRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.TenantRef, - Selector: mg.Spec.InitProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.TenantRef, + Selector: mg.Spec.InitProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Tenant") } @@ -111,37 +130,45 @@ func (mg *TenantInboundSAMLConfig) ResolveReferences(ctx context.Context, c clie // ResolveReferences of this TenantOAuthIdPConfig. func (mg *TenantOAuthIdPConfig) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.TenantRef, - Selector: mg.Spec.ForProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.TenantRef, + Selector: mg.Spec.ForProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Tenant") } mg.Spec.ForProvider.Tenant = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TenantRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Tenant), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.TenantRef, - Selector: mg.Spec.InitProvider.TenantSelector, - To: reference.To{ - List: &TenantList{}, - Managed: &Tenant{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("identityplatform.gcp.upbound.io", "v1beta1", "Tenant", "TenantList") + 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.Tenant), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.TenantRef, + Selector: mg.Spec.InitProvider.TenantSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Tenant") } diff --git a/apis/kms/v1beta1/zz_generated.resolvers.go b/apis/kms/v1beta1/zz_generated.resolvers.go index 21311350d..10322e2b5 100644 --- a/apis/kms/v1beta1/zz_generated.resolvers.go +++ b/apis/kms/v1beta1/zz_generated.resolvers.go @@ -14,35 +14,43 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" common "github.com/upbound/provider-gcp/config/common" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this CryptoKey. -func (mg *CryptoKey) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *CryptoKey) ResolveReferences( // ResolveReferences of this CryptoKey. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.KeyRing), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.KeyRingRef, - Selector: mg.Spec.ForProvider.KeyRingSelector, - To: reference.To{ - List: &KeyRingList{}, - Managed: &KeyRing{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "KeyRing", "KeyRingList") + 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.KeyRing), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.KeyRingRef, + Selector: mg.Spec.ForProvider.KeyRingSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.KeyRing") } @@ -54,37 +62,45 @@ func (mg *CryptoKey) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this CryptoKeyIAMMember. func (mg *CryptoKeyIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CryptoKeyID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CryptoKeyIDRef, - Selector: mg.Spec.ForProvider.CryptoKeyIDSelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKeyID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CryptoKeyIDRef, + Selector: mg.Spec.ForProvider.CryptoKeyIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CryptoKeyID") } mg.Spec.ForProvider.CryptoKeyID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CryptoKeyIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CryptoKeyID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CryptoKeyIDRef, - Selector: mg.Spec.InitProvider.CryptoKeyIDSelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKeyID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CryptoKeyIDRef, + Selector: mg.Spec.InitProvider.CryptoKeyIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CryptoKeyID") } @@ -96,37 +112,45 @@ func (mg *CryptoKeyIAMMember) ResolveReferences(ctx context.Context, c client.Re // ResolveReferences of this CryptoKeyVersion. func (mg *CryptoKeyVersion) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CryptoKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CryptoKeyRef, - Selector: mg.Spec.ForProvider.CryptoKeySelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CryptoKeyRef, + Selector: mg.Spec.ForProvider.CryptoKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CryptoKey") } mg.Spec.ForProvider.CryptoKey = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CryptoKeyRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CryptoKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CryptoKeyRef, - Selector: mg.Spec.InitProvider.CryptoKeySelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CryptoKeyRef, + Selector: mg.Spec.InitProvider.CryptoKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CryptoKey") } @@ -138,37 +162,45 @@ func (mg *CryptoKeyVersion) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this KeyRingIAMMember. func (mg *KeyRingIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.KeyRingID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.KeyRingIDRef, - Selector: mg.Spec.ForProvider.KeyRingIDSelector, - To: reference.To{ - List: &KeyRingList{}, - Managed: &KeyRing{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "KeyRing", "KeyRingList") + 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.KeyRingID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.KeyRingIDRef, + Selector: mg.Spec.ForProvider.KeyRingIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.KeyRingID") } mg.Spec.ForProvider.KeyRingID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.KeyRingIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.KeyRingID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.KeyRingIDRef, - Selector: mg.Spec.InitProvider.KeyRingIDSelector, - To: reference.To{ - List: &KeyRingList{}, - Managed: &KeyRing{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "KeyRing", "KeyRingList") + 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.KeyRingID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.KeyRingIDRef, + Selector: mg.Spec.InitProvider.KeyRingIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.KeyRingID") } @@ -180,21 +212,26 @@ func (mg *KeyRingIAMMember) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this KeyRingImportJob. func (mg *KeyRingImportJob) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.KeyRing), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.KeyRingRef, - Selector: mg.Spec.ForProvider.KeyRingSelector, - To: reference.To{ - List: &KeyRingList{}, - Managed: &KeyRing{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "KeyRing", "KeyRingList") + 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.KeyRing), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.KeyRingRef, + Selector: mg.Spec.ForProvider.KeyRingSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.KeyRing") } @@ -206,37 +243,45 @@ func (mg *KeyRingImportJob) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this SecretCiphertext. func (mg *SecretCiphertext) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CryptoKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CryptoKeyRef, - Selector: mg.Spec.ForProvider.CryptoKeySelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CryptoKeyRef, + Selector: mg.Spec.ForProvider.CryptoKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CryptoKey") } mg.Spec.ForProvider.CryptoKey = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CryptoKeyRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CryptoKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CryptoKeyRef, - Selector: mg.Spec.InitProvider.CryptoKeySelector, - To: reference.To{ - List: &CryptoKeyList{}, - Managed: &CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CryptoKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CryptoKeyRef, + Selector: mg.Spec.InitProvider.CryptoKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CryptoKey") } diff --git a/apis/logging/v1beta1/zz_generated.resolvers.go b/apis/logging/v1beta1/zz_generated.resolvers.go index 3af4540cc..a159a3d3b 100644 --- a/apis/logging/v1beta1/zz_generated.resolvers.go +++ b/apis/logging/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,29 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" common "github.com/upbound/provider-gcp/config/common" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this FolderBucketConfig. -func (mg *FolderBucketConfig) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *FolderBucketConfig) ResolveReferences( // ResolveReferences of this FolderBucketConfig. + 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Folder), - Extract: common.ExtractFolderID(), - Reference: mg.Spec.ForProvider.FolderRef, - Selector: mg.Spec.ForProvider.FolderSelector, - To: reference.To{ - List: &v1beta1.FolderList{}, - Managed: &v1beta1.Folder{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Folder), + Extract: common.ExtractFolderID(), + Reference: mg.Spec.ForProvider.FolderRef, + Selector: mg.Spec.ForProvider.FolderSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Folder") } @@ -56,21 +63,26 @@ func (mg *FolderBucketConfig) ResolveReferences(ctx context.Context, c client.Re // ResolveReferences of this FolderExclusion. func (mg *FolderExclusion) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Folder), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.FolderRef, - Selector: mg.Spec.ForProvider.FolderSelector, - To: reference.To{ - List: &v1beta1.FolderList{}, - Managed: &v1beta1.Folder{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Folder), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.FolderRef, + Selector: mg.Spec.ForProvider.FolderSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Folder") } @@ -82,21 +94,26 @@ func (mg *FolderExclusion) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this FolderSink. func (mg *FolderSink) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Folder", "FolderList") + 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.Folder), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.FolderRef, - Selector: mg.Spec.ForProvider.FolderSelector, - To: reference.To{ - List: &v1beta1.FolderList{}, - Managed: &v1beta1.Folder{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Folder), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.FolderRef, + Selector: mg.Spec.ForProvider.FolderSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Folder") } @@ -108,21 +125,26 @@ func (mg *FolderSink) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this LogView. func (mg *LogView) 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 + { + m, l, err = apisresolver.GetManagedResource("logging.gcp.upbound.io", "v1beta1", "ProjectBucketConfig", "ProjectBucketConfigList") + 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.Bucket), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &ProjectBucketConfigList{}, - Managed: &ProjectBucketConfig{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } @@ -134,37 +156,45 @@ func (mg *LogView) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this Metric. func (mg *Metric) 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 + { + m, l, err = apisresolver.GetManagedResource("logging.gcp.upbound.io", "v1beta1", "ProjectBucketConfig", "ProjectBucketConfigList") + 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.BucketName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.BucketNameRef, - Selector: mg.Spec.ForProvider.BucketNameSelector, - To: reference.To{ - List: &ProjectBucketConfigList{}, - Managed: &ProjectBucketConfig{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.BucketName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.BucketNameRef, + Selector: mg.Spec.ForProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.BucketName") } mg.Spec.ForProvider.BucketName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("logging.gcp.upbound.io", "v1beta1", "ProjectBucketConfig", "ProjectBucketConfigList") + 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.BucketName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.BucketNameRef, - Selector: mg.Spec.InitProvider.BucketNameSelector, - To: reference.To{ - List: &ProjectBucketConfigList{}, - Managed: &ProjectBucketConfig{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.BucketName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.BucketNameRef, + Selector: mg.Spec.InitProvider.BucketNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.BucketName") } @@ -176,22 +206,27 @@ func (mg *Metric) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this ProjectBucketConfig. func (mg *ProjectBucketConfig) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.CmekSettings); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CmekSettings[i3].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CmekSettings[i3].KMSKeyNameRef, - Selector: mg.Spec.ForProvider.CmekSettings[i3].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta11.CryptoKeyList{}, - Managed: &v1beta11.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CmekSettings[i3].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CmekSettings[i3].KMSKeyNameRef, + Selector: mg.Spec.ForProvider.CmekSettings[i3].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CmekSettings[i3].KMSKeyName") } @@ -199,16 +234,19 @@ func (mg *ProjectBucketConfig) ResolveReferences(ctx context.Context, c client.R mg.Spec.ForProvider.CmekSettings[i3].KMSKeyNameRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Project), - Extract: resource.ExtractParamPath("project_id", false), - Reference: mg.Spec.ForProvider.ProjectRef, - Selector: mg.Spec.ForProvider.ProjectSelector, - To: reference.To{ - List: &v1beta1.ProjectList{}, - Managed: &v1beta1.Project{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "Project", "ProjectList") + 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.Project), + Extract: resource.ExtractParamPath("project_id", false), + Reference: mg.Spec.ForProvider.ProjectRef, + Selector: mg.Spec.ForProvider.ProjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Project") } @@ -216,16 +254,19 @@ func (mg *ProjectBucketConfig) ResolveReferences(ctx context.Context, c client.R mg.Spec.ForProvider.ProjectRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.CmekSettings); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CmekSettings[i3].KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CmekSettings[i3].KMSKeyNameRef, - Selector: mg.Spec.InitProvider.CmekSettings[i3].KMSKeyNameSelector, - To: reference.To{ - List: &v1beta11.CryptoKeyList{}, - Managed: &v1beta11.CryptoKey{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CmekSettings[i3].KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CmekSettings[i3].KMSKeyNameRef, + Selector: mg.Spec.InitProvider.CmekSettings[i3].KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CmekSettings[i3].KMSKeyName") } diff --git a/apis/memcache/v1beta1/zz_generated.resolvers.go b/apis/memcache/v1beta1/zz_generated.resolvers.go index a59ff7dda..df9b39534 100644 --- a/apis/memcache/v1beta1/zz_generated.resolvers.go +++ b/apis/memcache/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/servicenetworking/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Instance. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Instance. func (mg *Instance) 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 + { + m, l, err = apisresolver.GetManagedResource("servicenetworking.gcp.upbound.io", "v1beta1", "Connection", "ConnectionList") + 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.AuthorizedNetwork), - Extract: resource.ExtractParamPath("network", false), - Reference: mg.Spec.ForProvider.AuthorizedNetworkRef, - Selector: mg.Spec.ForProvider.AuthorizedNetworkSelector, - To: reference.To{ - List: &v1beta1.ConnectionList{}, - Managed: &v1beta1.Connection{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.AuthorizedNetwork), + Extract: resource.ExtractParamPath("network", false), + Reference: mg.Spec.ForProvider.AuthorizedNetworkRef, + Selector: mg.Spec.ForProvider.AuthorizedNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.AuthorizedNetwork") } mg.Spec.ForProvider.AuthorizedNetwork = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.AuthorizedNetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("servicenetworking.gcp.upbound.io", "v1beta1", "Connection", "ConnectionList") + 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.AuthorizedNetwork), - Extract: resource.ExtractParamPath("network", false), - Reference: mg.Spec.InitProvider.AuthorizedNetworkRef, - Selector: mg.Spec.InitProvider.AuthorizedNetworkSelector, - To: reference.To{ - List: &v1beta1.ConnectionList{}, - Managed: &v1beta1.Connection{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.AuthorizedNetwork), + Extract: resource.ExtractParamPath("network", false), + Reference: mg.Spec.InitProvider.AuthorizedNetworkRef, + Selector: mg.Spec.InitProvider.AuthorizedNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.AuthorizedNetwork") } diff --git a/apis/monitoring/v1beta1/zz_generated.resolvers.go b/apis/monitoring/v1beta1/zz_generated.resolvers.go index a93c5d309..87c0257a9 100644 --- a/apis/monitoring/v1beta1/zz_generated.resolvers.go +++ b/apis/monitoring/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,62 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Group. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Group. func (mg *Group) 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 + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "Group", "GroupList") + 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.ParentName), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.ParentNameRef, - Selector: mg.Spec.ForProvider.ParentNameSelector, - To: reference.To{ - List: &GroupList{}, - Managed: &Group{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ParentName), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.ParentNameRef, + Selector: mg.Spec.ForProvider.ParentNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ParentName") } mg.Spec.ForProvider.ParentName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ParentNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "Group", "GroupList") + 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.ParentName), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.ParentNameRef, - Selector: mg.Spec.InitProvider.ParentNameSelector, - To: reference.To{ - List: &GroupList{}, - Managed: &Group{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ParentName), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.ParentNameRef, + Selector: mg.Spec.InitProvider.ParentNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ParentName") } @@ -69,37 +81,45 @@ func (mg *Group) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this SLO. func (mg *SLO) 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 + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "CustomService", "CustomServiceList") + 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.Service), - Extract: resource.ExtractParamPath("service_id", false), - Reference: mg.Spec.ForProvider.ServiceRef, - Selector: mg.Spec.ForProvider.ServiceSelector, - To: reference.To{ - List: &CustomServiceList{}, - Managed: &CustomService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Service), + Extract: resource.ExtractParamPath("service_id", false), + Reference: mg.Spec.ForProvider.ServiceRef, + Selector: mg.Spec.ForProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Service") } mg.Spec.ForProvider.Service = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "CustomService", "CustomServiceList") + 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.Service), - Extract: resource.ExtractParamPath("service_id", false), - Reference: mg.Spec.InitProvider.ServiceRef, - Selector: mg.Spec.InitProvider.ServiceSelector, - To: reference.To{ - List: &CustomServiceList{}, - Managed: &CustomService{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Service), + Extract: resource.ExtractParamPath("service_id", false), + Reference: mg.Spec.InitProvider.ServiceRef, + Selector: mg.Spec.InitProvider.ServiceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Service") } @@ -111,22 +131,27 @@ func (mg *SLO) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this UptimeCheckConfig. func (mg *UptimeCheckConfig) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.ResourceGroup); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroup[i3].GroupID), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.ResourceGroup[i3].GroupIDRef, - Selector: mg.Spec.ForProvider.ResourceGroup[i3].GroupIDSelector, - To: reference.To{ - List: &GroupList{}, - Managed: &Group{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "Group", "GroupList") + 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.ResourceGroup[i3].GroupID), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.ResourceGroup[i3].GroupIDRef, + Selector: mg.Spec.ForProvider.ResourceGroup[i3].GroupIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroup[i3].GroupID") } @@ -135,16 +160,19 @@ func (mg *UptimeCheckConfig) ResolveReferences(ctx context.Context, c client.Rea } for i3 := 0; i3 < len(mg.Spec.InitProvider.ResourceGroup); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ResourceGroup[i3].GroupID), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.ResourceGroup[i3].GroupIDRef, - Selector: mg.Spec.InitProvider.ResourceGroup[i3].GroupIDSelector, - To: reference.To{ - List: &GroupList{}, - Managed: &Group{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("monitoring.gcp.upbound.io", "v1beta1", "Group", "GroupList") + 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.ResourceGroup[i3].GroupID), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.ResourceGroup[i3].GroupIDRef, + Selector: mg.Spec.InitProvider.ResourceGroup[i3].GroupIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ResourceGroup[i3].GroupID") } diff --git a/apis/networkconnectivity/v1beta1/zz_generated.resolvers.go b/apis/networkconnectivity/v1beta1/zz_generated.resolvers.go index 58852cd77..789cb5214 100644 --- a/apis/networkconnectivity/v1beta1/zz_generated.resolvers.go +++ b/apis/networkconnectivity/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,27 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Spoke. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Spoke. func (mg *Spoke) 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 + { + m, l, err = apisresolver.GetManagedResource("networkconnectivity.gcp.upbound.io", "v1beta1", "Hub", "HubList") + 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.Hub), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.HubRef, - Selector: mg.Spec.ForProvider.HubSelector, - To: reference.To{ - List: &HubList{}, - Managed: &Hub{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Hub), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.HubRef, + Selector: mg.Spec.ForProvider.HubSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Hub") } @@ -51,16 +60,19 @@ func (mg *Spoke) ResolveReferences(ctx context.Context, c client.Reader) error { for i3 := 0; i3 < len(mg.Spec.ForProvider.LinkedRouterApplianceInstances); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineRef, - Selector: mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineRef, + Selector: mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine") } @@ -69,16 +81,19 @@ func (mg *Spoke) ResolveReferences(ctx context.Context, c client.Reader) error { } } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Hub), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.HubRef, - Selector: mg.Spec.InitProvider.HubSelector, - To: reference.To{ - List: &HubList{}, - Managed: &Hub{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("networkconnectivity.gcp.upbound.io", "v1beta1", "Hub", "HubList") + 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.Hub), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.HubRef, + Selector: mg.Spec.InitProvider.HubSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Hub") } @@ -87,16 +102,19 @@ func (mg *Spoke) ResolveReferences(ctx context.Context, c client.Reader) error { for i3 := 0; i3 < len(mg.Spec.InitProvider.LinkedRouterApplianceInstances); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine), - Extract: resource.ExtractParamPath("self_link", true), - Reference: mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineRef, - Selector: mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine), + Extract: resource.ExtractParamPath("self_link", true), + Reference: mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineRef, + Selector: mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachineSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.LinkedRouterApplianceInstances[i3].Instances[i4].VirtualMachine") } diff --git a/apis/networkmanagement/v1beta1/zz_generated.resolvers.go b/apis/networkmanagement/v1beta1/zz_generated.resolvers.go index 32a68775b..3ee724abc 100644 --- a/apis/networkmanagement/v1beta1/zz_generated.resolvers.go +++ b/apis/networkmanagement/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,28 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this ConnectivityTest. -func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *ConnectivityTest) ResolveReferences( // ResolveReferences of this ConnectivityTest. + 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Destination[i3].IPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.ForProvider.Destination[i3].IPAddressRef, - Selector: mg.Spec.ForProvider.Destination[i3].IPAddressSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Destination[i3].IPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.ForProvider.Destination[i3].IPAddressRef, + Selector: mg.Spec.ForProvider.Destination[i3].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Destination[i3].IPAddress") } @@ -52,16 +60,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Destination[i3].Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Destination[i3].InstanceRef, - Selector: mg.Spec.ForProvider.Destination[i3].InstanceSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Destination[i3].Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Destination[i3].InstanceRef, + Selector: mg.Spec.ForProvider.Destination[i3].InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Destination[i3].Instance") } @@ -70,16 +81,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Destination[i3].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Destination[i3].NetworkRef, - Selector: mg.Spec.ForProvider.Destination[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Destination[i3].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Destination[i3].NetworkRef, + Selector: mg.Spec.ForProvider.Destination[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Destination[i3].Network") } @@ -88,16 +102,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Destination[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.Destination[i3].ProjectIDRef, - Selector: mg.Spec.ForProvider.Destination[i3].ProjectIDSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Destination[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.Destination[i3].ProjectIDRef, + Selector: mg.Spec.ForProvider.Destination[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Destination[i3].ProjectID") } @@ -106,16 +123,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Source[i3].IPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.ForProvider.Source[i3].IPAddressRef, - Selector: mg.Spec.ForProvider.Source[i3].IPAddressSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Source[i3].IPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.ForProvider.Source[i3].IPAddressRef, + Selector: mg.Spec.ForProvider.Source[i3].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Source[i3].IPAddress") } @@ -124,16 +144,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Source[i3].Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Source[i3].InstanceRef, - Selector: mg.Spec.ForProvider.Source[i3].InstanceSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Source[i3].Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Source[i3].InstanceRef, + Selector: mg.Spec.ForProvider.Source[i3].InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Source[i3].Instance") } @@ -142,16 +165,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Source[i3].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Source[i3].NetworkRef, - Selector: mg.Spec.ForProvider.Source[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Source[i3].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Source[i3].NetworkRef, + Selector: mg.Spec.ForProvider.Source[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Source[i3].Network") } @@ -160,16 +186,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.ForProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Source[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.ForProvider.Source[i3].ProjectIDRef, - Selector: mg.Spec.ForProvider.Source[i3].ProjectIDSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Source[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.ForProvider.Source[i3].ProjectIDRef, + Selector: mg.Spec.ForProvider.Source[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Source[i3].ProjectID") } @@ -178,16 +207,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Destination[i3].IPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.InitProvider.Destination[i3].IPAddressRef, - Selector: mg.Spec.InitProvider.Destination[i3].IPAddressSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Destination[i3].IPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.InitProvider.Destination[i3].IPAddressRef, + Selector: mg.Spec.InitProvider.Destination[i3].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Destination[i3].IPAddress") } @@ -196,16 +228,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Destination[i3].Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Destination[i3].InstanceRef, - Selector: mg.Spec.InitProvider.Destination[i3].InstanceSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Destination[i3].Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Destination[i3].InstanceRef, + Selector: mg.Spec.InitProvider.Destination[i3].InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Destination[i3].Instance") } @@ -214,16 +249,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Destination[i3].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Destination[i3].NetworkRef, - Selector: mg.Spec.InitProvider.Destination[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Destination[i3].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Destination[i3].NetworkRef, + Selector: mg.Spec.InitProvider.Destination[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Destination[i3].Network") } @@ -232,16 +270,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Destination); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Destination[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.Destination[i3].ProjectIDRef, - Selector: mg.Spec.InitProvider.Destination[i3].ProjectIDSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Destination[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.Destination[i3].ProjectIDRef, + Selector: mg.Spec.InitProvider.Destination[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Destination[i3].ProjectID") } @@ -250,16 +291,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Source[i3].IPAddress), - Extract: resource.ExtractParamPath("address", false), - Reference: mg.Spec.InitProvider.Source[i3].IPAddressRef, - Selector: mg.Spec.InitProvider.Source[i3].IPAddressSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Source[i3].IPAddress), + Extract: resource.ExtractParamPath("address", false), + Reference: mg.Spec.InitProvider.Source[i3].IPAddressRef, + Selector: mg.Spec.InitProvider.Source[i3].IPAddressSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Source[i3].IPAddress") } @@ -268,16 +312,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Source[i3].Instance), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Source[i3].InstanceRef, - Selector: mg.Spec.InitProvider.Source[i3].InstanceSelector, - To: reference.To{ - List: &v1beta1.InstanceList{}, - Managed: &v1beta1.Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Source[i3].Instance), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Source[i3].InstanceRef, + Selector: mg.Spec.InitProvider.Source[i3].InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Source[i3].Instance") } @@ -286,16 +333,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Source[i3].Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Source[i3].NetworkRef, - Selector: mg.Spec.InitProvider.Source[i3].NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Source[i3].Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Source[i3].NetworkRef, + Selector: mg.Spec.InitProvider.Source[i3].NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Source[i3].Network") } @@ -304,16 +354,19 @@ func (mg *ConnectivityTest) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Source); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Source[i3].ProjectID), - Extract: resource.ExtractParamPath("project", false), - Reference: mg.Spec.InitProvider.Source[i3].ProjectIDRef, - Selector: mg.Spec.InitProvider.Source[i3].ProjectIDSelector, - To: reference.To{ - List: &v1beta1.AddressList{}, - Managed: &v1beta1.Address{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Address", "AddressList") + 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.Source[i3].ProjectID), + Extract: resource.ExtractParamPath("project", false), + Reference: mg.Spec.InitProvider.Source[i3].ProjectIDRef, + Selector: mg.Spec.InitProvider.Source[i3].ProjectIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Source[i3].ProjectID") } diff --git a/apis/notebooks/v1beta1/zz_generated.resolvers.go b/apis/notebooks/v1beta1/zz_generated.resolvers.go index d74f15e5e..4b4a1456b 100644 --- a/apis/notebooks/v1beta1/zz_generated.resolvers.go +++ b/apis/notebooks/v1beta1/zz_generated.resolvers.go @@ -14,49 +14,60 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this InstanceIAMMember. -func (mg *InstanceIAMMember) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *InstanceIAMMember) ResolveReferences( // ResolveReferences of this InstanceIAMMember. + 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 + { + m, l, err = apisresolver.GetManagedResource("notebooks.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceNameRef, - Selector: mg.Spec.ForProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceNameRef, + Selector: mg.Spec.ForProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.InstanceName") } mg.Spec.ForProvider.InstanceName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("notebooks.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.InstanceName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceNameRef, - Selector: mg.Spec.InitProvider.InstanceNameSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InstanceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceNameRef, + Selector: mg.Spec.InitProvider.InstanceNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.InstanceName") } @@ -68,37 +79,45 @@ func (mg *InstanceIAMMember) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this RuntimeIAMMember. func (mg *RuntimeIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("notebooks.gcp.upbound.io", "v1beta1", "Runtime", "RuntimeList") + 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.RuntimeName), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RuntimeNameRef, - Selector: mg.Spec.ForProvider.RuntimeNameSelector, - To: reference.To{ - List: &RuntimeList{}, - Managed: &Runtime{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.RuntimeName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RuntimeNameRef, + Selector: mg.Spec.ForProvider.RuntimeNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RuntimeName") } mg.Spec.ForProvider.RuntimeName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RuntimeNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("notebooks.gcp.upbound.io", "v1beta1", "Runtime", "RuntimeList") + 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.RuntimeName), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.RuntimeNameRef, - Selector: mg.Spec.InitProvider.RuntimeNameSelector, - To: reference.To{ - List: &RuntimeList{}, - Managed: &Runtime{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.RuntimeName), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.RuntimeNameRef, + Selector: mg.Spec.InitProvider.RuntimeNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.RuntimeName") } diff --git a/apis/privateca/v1beta1/zz_generated.resolvers.go b/apis/privateca/v1beta1/zz_generated.resolvers.go index eb00e733d..94babb84b 100644 --- a/apis/privateca/v1beta1/zz_generated.resolvers.go +++ b/apis/privateca/v1beta1/zz_generated.resolvers.go @@ -14,51 +14,62 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" common "github.com/upbound/provider-gcp/config/common" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this CAPoolIAMMember. -func (mg *CAPoolIAMMember) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *CAPoolIAMMember) ResolveReferences( // ResolveReferences of this CAPoolIAMMember. + 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 + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CAPool", "CAPoolList") + 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.CAPool), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CAPoolRef, - Selector: mg.Spec.ForProvider.CAPoolSelector, - To: reference.To{ - List: &CAPoolList{}, - Managed: &CAPool{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CAPool), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CAPoolRef, + Selector: mg.Spec.ForProvider.CAPoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CAPool") } mg.Spec.ForProvider.CAPool = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CAPoolRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CAPool", "CAPoolList") + 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.CAPool), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CAPoolRef, - Selector: mg.Spec.InitProvider.CAPoolSelector, - To: reference.To{ - List: &CAPoolList{}, - Managed: &CAPool{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CAPool), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CAPoolRef, + Selector: mg.Spec.InitProvider.CAPoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CAPool") } @@ -70,85 +81,102 @@ func (mg *CAPoolIAMMember) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this Certificate. func (mg *Certificate) 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 + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateAuthority", "CertificateAuthorityList") + 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.CertificateAuthority), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.CertificateAuthorityRef, - Selector: mg.Spec.ForProvider.CertificateAuthoritySelector, - To: reference.To{ - List: &CertificateAuthorityList{}, - Managed: &CertificateAuthority{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CertificateAuthority), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.CertificateAuthorityRef, + Selector: mg.Spec.ForProvider.CertificateAuthoritySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CertificateAuthority") } mg.Spec.ForProvider.CertificateAuthority = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CertificateAuthorityRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateTemplate", "CertificateTemplateList") + 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.CertificateTemplate), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CertificateTemplateRef, - Selector: mg.Spec.ForProvider.CertificateTemplateSelector, - To: reference.To{ - List: &CertificateTemplateList{}, - Managed: &CertificateTemplate{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CertificateTemplate), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CertificateTemplateRef, + Selector: mg.Spec.ForProvider.CertificateTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CertificateTemplate") } mg.Spec.ForProvider.CertificateTemplate = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CertificateTemplateRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CAPool", "CAPoolList") + 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.Pool), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PoolRef, - Selector: mg.Spec.ForProvider.PoolSelector, - To: reference.To{ - List: &CAPoolList{}, - Managed: &CAPool{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Pool), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PoolRef, + Selector: mg.Spec.ForProvider.PoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Pool") } mg.Spec.ForProvider.Pool = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.PoolRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateAuthority", "CertificateAuthorityList") + 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.CertificateAuthority), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.CertificateAuthorityRef, - Selector: mg.Spec.InitProvider.CertificateAuthoritySelector, - To: reference.To{ - List: &CertificateAuthorityList{}, - Managed: &CertificateAuthority{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CertificateAuthority), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.CertificateAuthorityRef, + Selector: mg.Spec.InitProvider.CertificateAuthoritySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CertificateAuthority") } mg.Spec.InitProvider.CertificateAuthority = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.CertificateAuthorityRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateTemplate", "CertificateTemplateList") + 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.CertificateTemplate), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CertificateTemplateRef, - Selector: mg.Spec.InitProvider.CertificateTemplateSelector, - To: reference.To{ - List: &CertificateTemplateList{}, - Managed: &CertificateTemplate{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CertificateTemplate), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CertificateTemplateRef, + Selector: mg.Spec.InitProvider.CertificateTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CertificateTemplate") } @@ -160,21 +188,26 @@ func (mg *Certificate) ResolveReferences(ctx context.Context, c client.Reader) e // ResolveReferences of this CertificateAuthority. func (mg *CertificateAuthority) 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 + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CAPool", "CAPoolList") + 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.Pool), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.PoolRef, - Selector: mg.Spec.ForProvider.PoolSelector, - To: reference.To{ - List: &CAPoolList{}, - Managed: &CAPool{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Pool), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.PoolRef, + Selector: mg.Spec.ForProvider.PoolSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Pool") } @@ -182,16 +215,19 @@ func (mg *CertificateAuthority) ResolveReferences(ctx context.Context, c client. mg.Spec.ForProvider.PoolRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.SubordinateConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthority), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthorityRef, - Selector: mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthoritySelector, - To: reference.To{ - List: &CertificateAuthorityList{}, - Managed: &CertificateAuthority{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateAuthority", "CertificateAuthorityList") + 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.SubordinateConfig[i3].CertificateAuthority), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthorityRef, + Selector: mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthoritySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SubordinateConfig[i3].CertificateAuthority") } @@ -200,16 +236,19 @@ func (mg *CertificateAuthority) ResolveReferences(ctx context.Context, c client. } for i3 := 0; i3 < len(mg.Spec.InitProvider.SubordinateConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthority), - Extract: resource.ExtractParamPath("name", true), - Reference: mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthorityRef, - Selector: mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthoritySelector, - To: reference.To{ - List: &CertificateAuthorityList{}, - Managed: &CertificateAuthority{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateAuthority", "CertificateAuthorityList") + 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.SubordinateConfig[i3].CertificateAuthority), + Extract: resource.ExtractParamPath("name", true), + Reference: mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthorityRef, + Selector: mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthoritySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SubordinateConfig[i3].CertificateAuthority") } @@ -223,37 +262,45 @@ func (mg *CertificateAuthority) ResolveReferences(ctx context.Context, c client. // ResolveReferences of this CertificateTemplateIAMMember. func (mg *CertificateTemplateIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateTemplate", "CertificateTemplateList") + 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.CertificateTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CertificateTemplateRef, - Selector: mg.Spec.ForProvider.CertificateTemplateSelector, - To: reference.To{ - List: &CertificateTemplateList{}, - Managed: &CertificateTemplate{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CertificateTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CertificateTemplateRef, + Selector: mg.Spec.ForProvider.CertificateTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CertificateTemplate") } mg.Spec.ForProvider.CertificateTemplate = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CertificateTemplateRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("privateca.gcp.upbound.io", "v1beta1", "CertificateTemplate", "CertificateTemplateList") + 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.CertificateTemplate), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CertificateTemplateRef, - Selector: mg.Spec.InitProvider.CertificateTemplateSelector, - To: reference.To{ - List: &CertificateTemplateList{}, - Managed: &CertificateTemplate{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CertificateTemplate), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CertificateTemplateRef, + Selector: mg.Spec.InitProvider.CertificateTemplateSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CertificateTemplate") } diff --git a/apis/pubsub/v1beta1/zz_generated.resolvers.go b/apis/pubsub/v1beta1/zz_generated.resolvers.go index 5ae60a3a4..d31ef943b 100644 --- a/apis/pubsub/v1beta1/zz_generated.resolvers.go +++ b/apis/pubsub/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,53 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this LiteSubscription. -func (mg *LiteSubscription) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *LiteSubscription) ResolveReferences( // ResolveReferences of this LiteSubscription. + 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 + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "LiteTopic", "LiteTopicList") + 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.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TopicRef, - Selector: mg.Spec.ForProvider.TopicSelector, - To: reference.To{ - List: &LiteTopicList{}, - Managed: &LiteTopic{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TopicRef, + Selector: mg.Spec.ForProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Topic") } mg.Spec.ForProvider.Topic = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TopicRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "LiteTopic", "LiteTopicList") + 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.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TopicRef, - Selector: mg.Spec.InitProvider.TopicSelector, - To: reference.To{ - List: &LiteTopicList{}, - Managed: &LiteTopic{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TopicRef, + Selector: mg.Spec.InitProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Topic") } @@ -70,22 +81,27 @@ func (mg *LiteSubscription) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this LiteTopic. func (mg *LiteTopic) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.ReservationConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservation), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservationRef, - Selector: mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservationSelector, - To: reference.To{ - List: &LiteReservationList{}, - Managed: &LiteReservation{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "LiteReservation", "LiteReservationList") + 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.ReservationConfig[i3].ThroughputReservation), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservationRef, + Selector: mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservationSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ReservationConfig[i3].ThroughputReservation") } @@ -94,16 +110,19 @@ func (mg *LiteTopic) ResolveReferences(ctx context.Context, c client.Reader) err } for i3 := 0; i3 < len(mg.Spec.InitProvider.ReservationConfig); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservation), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservationRef, - Selector: mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservationSelector, - To: reference.To{ - List: &LiteReservationList{}, - Managed: &LiteReservation{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "LiteReservation", "LiteReservationList") + 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.ReservationConfig[i3].ThroughputReservation), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservationRef, + Selector: mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservationSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ReservationConfig[i3].ThroughputReservation") } @@ -117,22 +136,27 @@ func (mg *LiteTopic) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this Subscription. func (mg *Subscription) 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.DeadLetterPolicy); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopicRef, - Selector: mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopicRef, + Selector: mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopic") } @@ -140,16 +164,19 @@ func (mg *Subscription) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.DeadLetterPolicy[i3].DeadLetterTopicRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TopicRef, - Selector: mg.Spec.ForProvider.TopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TopicRef, + Selector: mg.Spec.ForProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Topic") } @@ -157,16 +184,19 @@ func (mg *Subscription) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.ForProvider.TopicRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.DeadLetterPolicy); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopicRef, - Selector: mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopicRef, + Selector: mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopic") } @@ -174,16 +204,19 @@ func (mg *Subscription) ResolveReferences(ctx context.Context, c client.Reader) mg.Spec.InitProvider.DeadLetterPolicy[i3].DeadLetterTopicRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TopicRef, - Selector: mg.Spec.InitProvider.TopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TopicRef, + Selector: mg.Spec.InitProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Topic") } @@ -195,37 +228,45 @@ func (mg *Subscription) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this SubscriptionIAMMember. func (mg *SubscriptionIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "Subscription", "SubscriptionList") + 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.Subscription), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.SubscriptionRef, - Selector: mg.Spec.ForProvider.SubscriptionSelector, - To: reference.To{ - List: &SubscriptionList{}, - Managed: &Subscription{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subscription), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.SubscriptionRef, + Selector: mg.Spec.ForProvider.SubscriptionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subscription") } mg.Spec.ForProvider.Subscription = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SubscriptionRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.upbound.io", "v1beta1", "Subscription", "SubscriptionList") + 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.Subscription), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.SubscriptionRef, - Selector: mg.Spec.InitProvider.SubscriptionSelector, - To: reference.To{ - List: &SubscriptionList{}, - Managed: &Subscription{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subscription), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.SubscriptionRef, + Selector: mg.Spec.InitProvider.SubscriptionSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subscription") } @@ -237,37 +278,45 @@ func (mg *SubscriptionIAMMember) ResolveReferences(ctx context.Context, c client // ResolveReferences of this Topic. func (mg *Topic) 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 + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.KMSKeyNameRef, - Selector: mg.Spec.ForProvider.KMSKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.KMSKeyNameRef, + Selector: mg.Spec.ForProvider.KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.KMSKeyName") } mg.Spec.ForProvider.KMSKeyName = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.KMSKeyNameRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.KMSKeyName), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.KMSKeyNameRef, - Selector: mg.Spec.InitProvider.KMSKeyNameSelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.KMSKeyName), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.KMSKeyNameRef, + Selector: mg.Spec.InitProvider.KMSKeyNameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.KMSKeyName") } @@ -279,37 +328,45 @@ func (mg *Topic) ResolveReferences(ctx context.Context, c client.Reader) error { // ResolveReferences of this TopicIAMMember. func (mg *TopicIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.TopicRef, - Selector: mg.Spec.ForProvider.TopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.TopicRef, + Selector: mg.Spec.ForProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Topic") } mg.Spec.ForProvider.Topic = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TopicRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.TopicRef, - Selector: mg.Spec.InitProvider.TopicSelector, - To: reference.To{ - List: &TopicList{}, - Managed: &Topic{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.TopicRef, + Selector: mg.Spec.InitProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Topic") } diff --git a/apis/redis/v1beta1/zz_generated.resolvers.go b/apis/redis/v1beta1/zz_generated.resolvers.go index 66da14313..bcce964ec 100644 --- a/apis/redis/v1beta1/zz_generated.resolvers.go +++ b/apis/redis/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/kms/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Instance. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Instance. func (mg *Instance) 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 + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CustomerManagedKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.CustomerManagedKeyRef, - Selector: mg.Spec.ForProvider.CustomerManagedKeySelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.CustomerManagedKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.CustomerManagedKeyRef, + Selector: mg.Spec.ForProvider.CustomerManagedKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.CustomerManagedKey") } mg.Spec.ForProvider.CustomerManagedKey = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.CustomerManagedKeyRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("kms.gcp.upbound.io", "v1beta1", "CryptoKey", "CryptoKeyList") + 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.CustomerManagedKey), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.CustomerManagedKeyRef, - Selector: mg.Spec.InitProvider.CustomerManagedKeySelector, - To: reference.To{ - List: &v1beta1.CryptoKeyList{}, - Managed: &v1beta1.CryptoKey{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.CustomerManagedKey), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.CustomerManagedKeyRef, + Selector: mg.Spec.InitProvider.CustomerManagedKeySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.CustomerManagedKey") } diff --git a/apis/secretmanager/v1beta1/zz_generated.resolvers.go b/apis/secretmanager/v1beta1/zz_generated.resolvers.go index 8d915a31d..3441a09ed 100644 --- a/apis/secretmanager/v1beta1/zz_generated.resolvers.go +++ b/apis/secretmanager/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" common "github.com/upbound/provider-gcp/config/common" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this SecretIAMMember. -func (mg *SecretIAMMember) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *SecretIAMMember) ResolveReferences( // ResolveReferences of this SecretIAMMember. + 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 + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.SecretID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SecretIDRef, - Selector: mg.Spec.ForProvider.SecretIDSelector, - To: reference.To{ - List: &SecretList{}, - Managed: &Secret{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.SecretID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SecretIDRef, + Selector: mg.Spec.ForProvider.SecretIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.SecretID") } mg.Spec.ForProvider.SecretID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SecretIDRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.SecretID), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SecretIDRef, - Selector: mg.Spec.InitProvider.SecretIDSelector, - To: reference.To{ - List: &SecretList{}, - Managed: &Secret{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.SecretID), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SecretIDRef, + Selector: mg.Spec.InitProvider.SecretIDSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.SecretID") } @@ -69,37 +80,45 @@ func (mg *SecretIAMMember) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this SecretVersion. func (mg *SecretVersion) 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 + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Secret), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.SecretRef, - Selector: mg.Spec.ForProvider.SecretSelector, - To: reference.To{ - List: &SecretList{}, - Managed: &Secret{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Secret), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.SecretRef, + Selector: mg.Spec.ForProvider.SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Secret") } mg.Spec.ForProvider.Secret = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.SecretRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("secretmanager.gcp.upbound.io", "v1beta1", "Secret", "SecretList") + 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.Secret), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.SecretRef, - Selector: mg.Spec.InitProvider.SecretSelector, - To: reference.To{ - List: &SecretList{}, - Managed: &Secret{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Secret), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.SecretRef, + Selector: mg.Spec.InitProvider.SecretSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Secret") } diff --git a/apis/servicenetworking/v1beta1/zz_generated.resolvers.go b/apis/servicenetworking/v1beta1/zz_generated.resolvers.go index 0840378d0..5ea5b290a 100644 --- a/apis/servicenetworking/v1beta1/zz_generated.resolvers.go +++ b/apis/servicenetworking/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,76 +23,92 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Connection. -func (mg *Connection) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Connection) ResolveReferences( // ResolveReferences of this Connection. + 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 mrsp reference.MultiResolutionResponse var err error + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalAddress", "GlobalAddressList") + 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.ReservedPeeringRanges), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.ReservedPeeringRangesRefs, - Selector: mg.Spec.ForProvider.ReservedPeeringRangesSelector, - To: reference.To{ - List: &v1beta1.GlobalAddressList{}, - Managed: &v1beta1.GlobalAddress{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.ReservedPeeringRanges), + Extract: reference.ExternalName(), + References: mg.Spec.ForProvider.ReservedPeeringRangesRefs, + Selector: mg.Spec.ForProvider.ReservedPeeringRangesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ReservedPeeringRanges") } mg.Spec.ForProvider.ReservedPeeringRanges = reference.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.ReservedPeeringRangesRefs = mrsp.ResolvedReferences + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } mg.Spec.InitProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "GlobalAddress", "GlobalAddressList") + 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.ReservedPeeringRanges), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.ReservedPeeringRangesRefs, - Selector: mg.Spec.InitProvider.ReservedPeeringRangesSelector, - To: reference.To{ - List: &v1beta1.GlobalAddressList{}, - Managed: &v1beta1.GlobalAddress{}, - }, - }) + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.ReservedPeeringRanges), + Extract: reference.ExternalName(), + References: mg.Spec.InitProvider.ReservedPeeringRangesRefs, + Selector: mg.Spec.InitProvider.ReservedPeeringRangesSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ReservedPeeringRanges") } diff --git a/apis/sourcerepo/v1beta1/zz_generated.resolvers.go b/apis/sourcerepo/v1beta1/zz_generated.resolvers.go index 54aa7b42d..373c47a59 100644 --- a/apis/sourcerepo/v1beta1/zz_generated.resolvers.go +++ b/apis/sourcerepo/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,29 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" - v1beta11 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Repository. -func (mg *Repository) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Repository) ResolveReferences( // ResolveReferences of this Repository. + 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 for i3 := 0; i3 < len(mg.Spec.ForProvider.PubsubConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmailRef, - Selector: mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.PubsubConfigs[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmailRef, + Selector: mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PubsubConfigs[i3].ServiceAccountEmail") } @@ -53,16 +60,19 @@ func (mg *Repository) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.ForProvider.PubsubConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubConfigs[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.PubsubConfigs[i3].TopicRef, - Selector: mg.Spec.ForProvider.PubsubConfigs[i3].TopicSelector, - To: reference.To{ - List: &v1beta11.TopicList{}, - Managed: &v1beta11.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.PubsubConfigs[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.PubsubConfigs[i3].TopicRef, + Selector: mg.Spec.ForProvider.PubsubConfigs[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.PubsubConfigs[i3].Topic") } @@ -71,16 +81,19 @@ func (mg *Repository) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.PubsubConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmail), - Extract: resource.ExtractParamPath("email", true), - Reference: mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmailRef, - Selector: mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmailSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.PubsubConfigs[i3].ServiceAccountEmail), + Extract: resource.ExtractParamPath("email", true), + Reference: mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmailRef, + Selector: mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmailSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PubsubConfigs[i3].ServiceAccountEmail") } @@ -89,16 +102,19 @@ func (mg *Repository) ResolveReferences(ctx context.Context, c client.Reader) er } for i3 := 0; i3 < len(mg.Spec.InitProvider.PubsubConfigs); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubConfigs[i3].Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.PubsubConfigs[i3].TopicRef, - Selector: mg.Spec.InitProvider.PubsubConfigs[i3].TopicSelector, - To: reference.To{ - List: &v1beta11.TopicList{}, - Managed: &v1beta11.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.PubsubConfigs[i3].Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.PubsubConfigs[i3].TopicRef, + Selector: mg.Spec.InitProvider.PubsubConfigs[i3].TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.PubsubConfigs[i3].Topic") } @@ -112,37 +128,45 @@ func (mg *Repository) ResolveReferences(ctx context.Context, c client.Reader) er // ResolveReferences of this RepositoryIAMMember. func (mg *RepositoryIAMMember) 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 + { + m, l, err = apisresolver.GetManagedResource("sourcerepo.gcp.upbound.io", "v1beta1", "Repository", "RepositoryList") + 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.Repository), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.RepositoryRef, - Selector: mg.Spec.ForProvider.RepositorySelector, - To: reference.To{ - List: &RepositoryList{}, - Managed: &Repository{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Repository), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.RepositoryRef, + Selector: mg.Spec.ForProvider.RepositorySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Repository") } mg.Spec.ForProvider.Repository = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.RepositoryRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("sourcerepo.gcp.upbound.io", "v1beta1", "Repository", "RepositoryList") + 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.Repository), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.RepositoryRef, - Selector: mg.Spec.InitProvider.RepositorySelector, - To: reference.To{ - List: &RepositoryList{}, - Managed: &Repository{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Repository), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.RepositoryRef, + Selector: mg.Spec.InitProvider.RepositorySelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Repository") } diff --git a/apis/spanner/v1beta1/zz_generated.resolvers.go b/apis/spanner/v1beta1/zz_generated.resolvers.go index c69a0fe13..38b844982 100644 --- a/apis/spanner/v1beta1/zz_generated.resolvers.go +++ b/apis/spanner/v1beta1/zz_generated.resolvers.go @@ -14,34 +14,43 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" errors "github.com/pkg/errors" common "github.com/upbound/provider-gcp/config/common" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Database. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Database. func (mg *Database) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } @@ -53,69 +62,83 @@ func (mg *Database) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this DatabaseIAMMember. func (mg *DatabaseIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Database), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.DatabaseRef, - Selector: mg.Spec.ForProvider.DatabaseSelector, - To: reference.To{ - List: &DatabaseList{}, - Managed: &Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.Database), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DatabaseRef, + Selector: mg.Spec.ForProvider.DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Database") } mg.Spec.ForProvider.Database = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.DatabaseRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Database), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.DatabaseRef, - Selector: mg.Spec.InitProvider.DatabaseSelector, - To: reference.To{ - List: &DatabaseList{}, - Managed: &Database{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Database", "DatabaseList") + 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.Database), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.DatabaseRef, + Selector: mg.Spec.InitProvider.DatabaseSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Database") } mg.Spec.InitProvider.Database = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.DatabaseRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } @@ -127,37 +150,45 @@ func (mg *DatabaseIAMMember) ResolveReferences(ctx context.Context, c client.Rea // ResolveReferences of this InstanceIAMMember. func (mg *InstanceIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), - Extract: common.ExtractResourceID(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &InstanceList{}, - Managed: &Instance{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("spanner.gcp.upbound.io", "v1beta1", "Instance", "InstanceList") + 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.Instance), + Extract: common.ExtractResourceID(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } diff --git a/apis/sql/v1beta1/zz_generated.resolvers.go b/apis/sql/v1beta1/zz_generated.resolvers.go index 760126f2b..ffadef0ba 100644 --- a/apis/sql/v1beta1/zz_generated.resolvers.go +++ b/apis/sql/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,27 +23,35 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Database. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Database. func (mg *Database) 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 + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &DatabaseInstanceList{}, - Managed: &DatabaseInstance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } @@ -54,6 +63,8 @@ func (mg *Database) ResolveReferences(ctx context.Context, c client.Reader) erro // ResolveReferences of this DatabaseInstance. func (mg *DatabaseInstance) 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 @@ -61,16 +72,19 @@ func (mg *DatabaseInstance) ResolveReferences(ctx context.Context, c client.Read for i3 := 0; i3 < len(mg.Spec.ForProvider.Settings); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Settings[i3].IPConfiguration); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkRef, - Selector: mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Settings[i3].IPConfiguration[i4].PrivateNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkRef, + Selector: mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Settings[i3].IPConfiguration[i4].PrivateNetwork") } @@ -81,16 +95,19 @@ func (mg *DatabaseInstance) ResolveReferences(ctx context.Context, c client.Read } for i3 := 0; i3 < len(mg.Spec.InitProvider.Settings); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Settings[i3].IPConfiguration); i4++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetwork), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkRef, - Selector: mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Settings[i3].IPConfiguration[i4].PrivateNetwork), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkRef, + Selector: mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Settings[i3].IPConfiguration[i4].PrivateNetwork") } @@ -105,37 +122,45 @@ func (mg *DatabaseInstance) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this SSLCert. func (mg *SSLCert) 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 + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &DatabaseInstanceList{}, - Managed: &DatabaseInstance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &DatabaseInstanceList{}, - Managed: &DatabaseInstance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } @@ -147,37 +172,45 @@ func (mg *SSLCert) ResolveReferences(ctx context.Context, c client.Reader) error // ResolveReferences of this User. func (mg *User) 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 + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.InstanceRef, - Selector: mg.Spec.ForProvider.InstanceSelector, - To: reference.To{ - List: &DatabaseInstanceList{}, - Managed: &DatabaseInstance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.InstanceRef, + Selector: mg.Spec.ForProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Instance") } mg.Spec.ForProvider.Instance = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.InstanceRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("sql.gcp.upbound.io", "v1beta1", "DatabaseInstance", "DatabaseInstanceList") + 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.Instance), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.InstanceRef, - Selector: mg.Spec.InitProvider.InstanceSelector, - To: reference.To{ - List: &DatabaseInstanceList{}, - Managed: &DatabaseInstance{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Instance), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.InstanceRef, + Selector: mg.Spec.InitProvider.InstanceSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Instance") } diff --git a/apis/storage/v1beta1/zz_generated.resolvers.go b/apis/storage/v1beta1/zz_generated.resolvers.go index 44298f343..fd334fba8 100644 --- a/apis/storage/v1beta1/zz_generated.resolvers.go +++ b/apis/storage/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,53 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/pubsub/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this BucketACL. -func (mg *BucketACL) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *BucketACL) ResolveReferences( // ResolveReferences of this BucketACL. + 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -70,37 +81,45 @@ func (mg *BucketACL) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this BucketAccessControl. func (mg *BucketAccessControl) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -112,37 +131,45 @@ func (mg *BucketAccessControl) ResolveReferences(ctx context.Context, c client.R // ResolveReferences of this BucketIAMMember. func (mg *BucketIAMMember) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -154,37 +181,45 @@ func (mg *BucketIAMMember) ResolveReferences(ctx context.Context, c client.Reade // ResolveReferences of this BucketObject. func (mg *BucketObject) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -196,37 +231,45 @@ func (mg *BucketObject) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this DefaultObjectACL. func (mg *DefaultObjectACL) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -238,37 +281,45 @@ func (mg *DefaultObjectACL) ResolveReferences(ctx context.Context, c client.Read // ResolveReferences of this DefaultObjectAccessControl. func (mg *DefaultObjectAccessControl) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } @@ -280,69 +331,83 @@ func (mg *DefaultObjectAccessControl) ResolveReferences(ctx context.Context, c c // ResolveReferences of this Notification. func (mg *Notification) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.TopicRef, - Selector: mg.Spec.ForProvider.TopicSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.TopicRef, + Selector: mg.Spec.ForProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Topic") } mg.Spec.ForProvider.Topic = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.TopicRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } mg.Spec.InitProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.TopicRef, - Selector: mg.Spec.InitProvider.TopicSelector, - To: reference.To{ - List: &v1beta1.TopicList{}, - Managed: &v1beta1.Topic{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("pubsub.gcp.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") + } + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Topic), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.TopicRef, + Selector: mg.Spec.InitProvider.TopicSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Topic") } @@ -354,69 +419,83 @@ func (mg *Notification) ResolveReferences(ctx context.Context, c client.Reader) // ResolveReferences of this ObjectACL. func (mg *ObjectACL) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Object), - Extract: resource.ExtractParamPath("output_name", true), - Reference: mg.Spec.ForProvider.ObjectRef, - Selector: mg.Spec.ForProvider.ObjectSelector, - To: reference.To{ - List: &BucketObjectList{}, - Managed: &BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.Object), + Extract: resource.ExtractParamPath("output_name", true), + Reference: mg.Spec.ForProvider.ObjectRef, + Selector: mg.Spec.ForProvider.ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Object") } mg.Spec.ForProvider.Object = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ObjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } mg.Spec.InitProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Object), - Extract: resource.ExtractParamPath("output_name", true), - Reference: mg.Spec.InitProvider.ObjectRef, - Selector: mg.Spec.InitProvider.ObjectSelector, - To: reference.To{ - List: &BucketObjectList{}, - Managed: &BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.Object), + Extract: resource.ExtractParamPath("output_name", true), + Reference: mg.Spec.InitProvider.ObjectRef, + Selector: mg.Spec.InitProvider.ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Object") } @@ -428,69 +507,83 @@ func (mg *ObjectACL) ResolveReferences(ctx context.Context, c client.Reader) err // ResolveReferences of this ObjectAccessControl. func (mg *ObjectAccessControl) 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 - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.BucketRef, - Selector: mg.Spec.ForProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.BucketRef, + Selector: mg.Spec.ForProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Bucket") } mg.Spec.ForProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Object), - Extract: resource.ExtractParamPath("output_name", true), - Reference: mg.Spec.ForProvider.ObjectRef, - Selector: mg.Spec.ForProvider.ObjectSelector, - To: reference.To{ - List: &BucketObjectList{}, - Managed: &BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.Object), + Extract: resource.ExtractParamPath("output_name", true), + Reference: mg.Spec.ForProvider.ObjectRef, + Selector: mg.Spec.ForProvider.ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Object") } mg.Spec.ForProvider.Object = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ObjectRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Bucket), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.BucketRef, - Selector: mg.Spec.InitProvider.BucketSelector, - To: reference.To{ - List: &BucketList{}, - Managed: &Bucket{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "Bucket", "BucketList") + 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.Bucket), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.BucketRef, + Selector: mg.Spec.InitProvider.BucketSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Bucket") } mg.Spec.InitProvider.Bucket = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.BucketRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Object), - Extract: resource.ExtractParamPath("output_name", true), - Reference: mg.Spec.InitProvider.ObjectRef, - Selector: mg.Spec.InitProvider.ObjectSelector, - To: reference.To{ - List: &BucketObjectList{}, - Managed: &BucketObject{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("storage.gcp.upbound.io", "v1beta1", "BucketObject", "BucketObjectList") + 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.Object), + Extract: resource.ExtractParamPath("output_name", true), + Reference: mg.Spec.InitProvider.ObjectRef, + Selector: mg.Spec.InitProvider.ObjectSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Object") } diff --git a/apis/tpu/v1beta1/zz_generated.resolvers.go b/apis/tpu/v1beta1/zz_generated.resolvers.go index adaaca332..5124909e2 100644 --- a/apis/tpu/v1beta1/zz_generated.resolvers.go +++ b/apis/tpu/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/servicenetworking/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Node. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Node. func (mg *Node) 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 + { + m, l, err = apisresolver.GetManagedResource("servicenetworking.gcp.upbound.io", "v1beta1", "Connection", "ConnectionList") + 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.Network), - Extract: resource.ExtractParamPath("network", false), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.ConnectionList{}, - Managed: &v1beta1.Connection{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: resource.ExtractParamPath("network", false), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } mg.Spec.ForProvider.Network = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("servicenetworking.gcp.upbound.io", "v1beta1", "Connection", "ConnectionList") + 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.Network), - Extract: resource.ExtractParamPath("network", false), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.ConnectionList{}, - Managed: &v1beta1.Connection{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), + Extract: resource.ExtractParamPath("network", false), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } diff --git a/apis/vertexai/v1beta1/zz_generated.resolvers.go b/apis/vertexai/v1beta1/zz_generated.resolvers.go index 326a67791..eea411b3c 100644 --- a/apis/vertexai/v1beta1/zz_generated.resolvers.go +++ b/apis/vertexai/v1beta1/zz_generated.resolvers.go @@ -14,50 +14,61 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this FeaturestoreEntitytype. -func (mg *FeaturestoreEntitytype) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *FeaturestoreEntitytype) ResolveReferences( // ResolveReferences of this FeaturestoreEntitytype. + 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 + { + m, l, err = apisresolver.GetManagedResource("vertexai.gcp.upbound.io", "v1beta1", "Featurestore", "FeaturestoreList") + 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.Featurestore), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.FeaturestoreRef, - Selector: mg.Spec.ForProvider.FeaturestoreSelector, - To: reference.To{ - List: &FeaturestoreList{}, - Managed: &Featurestore{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Featurestore), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.FeaturestoreRef, + Selector: mg.Spec.ForProvider.FeaturestoreSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Featurestore") } mg.Spec.ForProvider.Featurestore = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FeaturestoreRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("vertexai.gcp.upbound.io", "v1beta1", "Featurestore", "FeaturestoreList") + 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.Featurestore), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.FeaturestoreRef, - Selector: mg.Spec.InitProvider.FeaturestoreSelector, - To: reference.To{ - List: &FeaturestoreList{}, - Managed: &Featurestore{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Featurestore), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.FeaturestoreRef, + Selector: mg.Spec.InitProvider.FeaturestoreSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Featurestore") } diff --git a/apis/vpcaccess/v1beta1/zz_generated.resolvers.go b/apis/vpcaccess/v1beta1/zz_generated.resolvers.go index b3c574f91..30a77231b 100644 --- a/apis/vpcaccess/v1beta1/zz_generated.resolvers.go +++ b/apis/vpcaccess/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -21,27 +22,34 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/compute/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + apisresolver "github.com/upbound/provider-gcp/internal/apis" client "sigs.k8s.io/controller-runtime/pkg/client" ) -// ResolveReferences of this Connector. -func (mg *Connector) ResolveReferences(ctx context.Context, c client.Reader) error { +func (mg *Connector) ResolveReferences( // ResolveReferences of this Connector. + 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 + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkRef, - Selector: mg.Spec.ForProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.NetworkRef, + Selector: mg.Spec.ForProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Network") } @@ -49,16 +57,19 @@ func (mg *Connector) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.ForProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.ForProvider.Subnet); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Subnet[i3].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.Subnet[i3].NameRef, - Selector: mg.Spec.ForProvider.Subnet[i3].NameSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnet[i3].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.Subnet[i3].NameRef, + Selector: mg.Spec.ForProvider.Subnet[i3].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.Subnet[i3].Name") } @@ -66,16 +77,19 @@ func (mg *Connector) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.ForProvider.Subnet[i3].NameRef = rsp.ResolvedReference } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Network), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkRef, - Selector: mg.Spec.InitProvider.NetworkSelector, - To: reference.To{ - List: &v1beta1.NetworkList{}, - Managed: &v1beta1.Network{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Network", "NetworkList") + 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.Network), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.NetworkRef, + Selector: mg.Spec.InitProvider.NetworkSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Network") } @@ -83,16 +97,19 @@ func (mg *Connector) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.InitProvider.NetworkRef = rsp.ResolvedReference for i3 := 0; i3 < len(mg.Spec.InitProvider.Subnet); i3++ { - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Subnet[i3].Name), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.Subnet[i3].NameRef, - Selector: mg.Spec.InitProvider.Subnet[i3].NameSelector, - To: reference.To{ - List: &v1beta1.SubnetworkList{}, - Managed: &v1beta1.Subnetwork{}, - }, - }) + { + m, l, err = apisresolver.GetManagedResource("compute.gcp.upbound.io", "v1beta1", "Subnetwork", "SubnetworkList") + 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.Subnet[i3].Name), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.Subnet[i3].NameRef, + Selector: mg.Spec.InitProvider.Subnet[i3].NameSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.Subnet[i3].Name") } diff --git a/apis/workflows/v1beta1/zz_generated.resolvers.go b/apis/workflows/v1beta1/zz_generated.resolvers.go index 45eeb292b..68b9715c0 100644 --- a/apis/workflows/v1beta1/zz_generated.resolvers.go +++ b/apis/workflows/v1beta1/zz_generated.resolvers.go @@ -14,6 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ // Code generated by angryjet. DO NOT EDIT. +// Code transformed by upjet. DO NOT EDIT. package v1beta1 @@ -22,43 +23,54 @@ import ( reference "github.com/crossplane/crossplane-runtime/pkg/reference" resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1" + + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" + + // ResolveReferences of this Workflow. + apisresolver "github.com/upbound/provider-gcp/internal/apis" ) -// ResolveReferences of this Workflow. func (mg *Workflow) 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 + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.ForProvider.ServiceAccountRef, - Selector: mg.Spec.ForProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccount), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ServiceAccountRef, + Selector: mg.Spec.ForProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccount") } mg.Spec.ForProvider.ServiceAccount = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.ServiceAccountRef = rsp.ResolvedReference + { + m, l, err = apisresolver.GetManagedResource("cloudplatform.gcp.upbound.io", "v1beta1", "ServiceAccount", "ServiceAccountList") + 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.ServiceAccount), - Extract: resource.ExtractResourceID(), - Reference: mg.Spec.InitProvider.ServiceAccountRef, - Selector: mg.Spec.InitProvider.ServiceAccountSelector, - To: reference.To{ - List: &v1beta1.ServiceAccountList{}, - Managed: &v1beta1.ServiceAccount{}, - }, - }) + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccount), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ServiceAccountRef, + Selector: mg.Spec.InitProvider.ServiceAccountSelector, + To: reference.To{List: l, Managed: m}, + }) + } if err != nil { return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccount") } diff --git a/cmd/provider/accesscontextmanager/zz_main.go b/cmd/provider/accesscontextmanager/zz_main.go index d2ee89d25..a15678585 100644 --- a/cmd/provider/accesscontextmanager/zz_main.go +++ b/cmd/provider/accesscontextmanager/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/activedirectory/zz_main.go b/cmd/provider/activedirectory/zz_main.go index 1904905ec..7f3bbafb4 100644 --- a/cmd/provider/activedirectory/zz_main.go +++ b/cmd/provider/activedirectory/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/alloydb/zz_main.go b/cmd/provider/alloydb/zz_main.go index 01881b198..c50132f89 100644 --- a/cmd/provider/alloydb/zz_main.go +++ b/cmd/provider/alloydb/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/apigee/zz_main.go b/cmd/provider/apigee/zz_main.go index a234fb1aa..38aef70d1 100644 --- a/cmd/provider/apigee/zz_main.go +++ b/cmd/provider/apigee/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/appengine/zz_main.go b/cmd/provider/appengine/zz_main.go index 6bb8ec9cb..876606ae3 100644 --- a/cmd/provider/appengine/zz_main.go +++ b/cmd/provider/appengine/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/artifact/zz_main.go b/cmd/provider/artifact/zz_main.go index 2f0f487da..c37119b82 100644 --- a/cmd/provider/artifact/zz_main.go +++ b/cmd/provider/artifact/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/beyondcorp/zz_main.go b/cmd/provider/beyondcorp/zz_main.go index e8800c5d4..e29268cfd 100644 --- a/cmd/provider/beyondcorp/zz_main.go +++ b/cmd/provider/beyondcorp/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/bigquery/zz_main.go b/cmd/provider/bigquery/zz_main.go index 1aee44849..7f437921e 100644 --- a/cmd/provider/bigquery/zz_main.go +++ b/cmd/provider/bigquery/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/bigtable/zz_main.go b/cmd/provider/bigtable/zz_main.go index f8c15c55f..234ba8c3d 100644 --- a/cmd/provider/bigtable/zz_main.go +++ b/cmd/provider/bigtable/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/binaryauthorization/zz_main.go b/cmd/provider/binaryauthorization/zz_main.go index 63b0a3bc3..33657dfb6 100644 --- a/cmd/provider/binaryauthorization/zz_main.go +++ b/cmd/provider/binaryauthorization/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/certificatemanager/zz_main.go b/cmd/provider/certificatemanager/zz_main.go index a53692432..bd27fa263 100644 --- a/cmd/provider/certificatemanager/zz_main.go +++ b/cmd/provider/certificatemanager/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloud/zz_main.go b/cmd/provider/cloud/zz_main.go index 9b52ce4a4..42ce925a2 100644 --- a/cmd/provider/cloud/zz_main.go +++ b/cmd/provider/cloud/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudbuild/zz_main.go b/cmd/provider/cloudbuild/zz_main.go index 32efaca61..fbc942907 100644 --- a/cmd/provider/cloudbuild/zz_main.go +++ b/cmd/provider/cloudbuild/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudfunctions/zz_main.go b/cmd/provider/cloudfunctions/zz_main.go index a13d0f3d8..77a4fc774 100644 --- a/cmd/provider/cloudfunctions/zz_main.go +++ b/cmd/provider/cloudfunctions/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudfunctions2/zz_main.go b/cmd/provider/cloudfunctions2/zz_main.go index 210723859..7cf6fbf7a 100644 --- a/cmd/provider/cloudfunctions2/zz_main.go +++ b/cmd/provider/cloudfunctions2/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudiot/zz_main.go b/cmd/provider/cloudiot/zz_main.go index da3662e00..6dd66cda1 100644 --- a/cmd/provider/cloudiot/zz_main.go +++ b/cmd/provider/cloudiot/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudplatform/zz_main.go b/cmd/provider/cloudplatform/zz_main.go index 5228334f8..a1df7d91e 100644 --- a/cmd/provider/cloudplatform/zz_main.go +++ b/cmd/provider/cloudplatform/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudrun/zz_main.go b/cmd/provider/cloudrun/zz_main.go index 64cc428b9..5c51b3cd9 100644 --- a/cmd/provider/cloudrun/zz_main.go +++ b/cmd/provider/cloudrun/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudscheduler/zz_main.go b/cmd/provider/cloudscheduler/zz_main.go index 7130ed6a2..56b1549e4 100644 --- a/cmd/provider/cloudscheduler/zz_main.go +++ b/cmd/provider/cloudscheduler/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/cloudtasks/zz_main.go b/cmd/provider/cloudtasks/zz_main.go index 444d6e25d..bdff313ef 100644 --- a/cmd/provider/cloudtasks/zz_main.go +++ b/cmd/provider/cloudtasks/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/composer/zz_main.go b/cmd/provider/composer/zz_main.go index 8d5465749..23d12eb7e 100644 --- a/cmd/provider/composer/zz_main.go +++ b/cmd/provider/composer/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/compute/zz_main.go b/cmd/provider/compute/zz_main.go index 9c522de9b..f605942eb 100644 --- a/cmd/provider/compute/zz_main.go +++ b/cmd/provider/compute/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/config/zz_main.go b/cmd/provider/config/zz_main.go index 054006b40..ef36b4798 100644 --- a/cmd/provider/config/zz_main.go +++ b/cmd/provider/config/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/container/zz_main.go b/cmd/provider/container/zz_main.go index 5f650a990..75fd67eb0 100644 --- a/cmd/provider/container/zz_main.go +++ b/cmd/provider/container/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/containeranalysis/zz_main.go b/cmd/provider/containeranalysis/zz_main.go index 7a89b87a8..1491fd2c3 100644 --- a/cmd/provider/containeranalysis/zz_main.go +++ b/cmd/provider/containeranalysis/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/containeraws/zz_main.go b/cmd/provider/containeraws/zz_main.go index 35acbc806..79c42e7d7 100644 --- a/cmd/provider/containeraws/zz_main.go +++ b/cmd/provider/containeraws/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/containerazure/zz_main.go b/cmd/provider/containerazure/zz_main.go index 332890099..0232e377a 100644 --- a/cmd/provider/containerazure/zz_main.go +++ b/cmd/provider/containerazure/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/datacatalog/zz_main.go b/cmd/provider/datacatalog/zz_main.go index 4f16d1a87..7e026e8b3 100644 --- a/cmd/provider/datacatalog/zz_main.go +++ b/cmd/provider/datacatalog/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/dataflow/zz_main.go b/cmd/provider/dataflow/zz_main.go index 937ec664b..5353a99e8 100644 --- a/cmd/provider/dataflow/zz_main.go +++ b/cmd/provider/dataflow/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/datafusion/zz_main.go b/cmd/provider/datafusion/zz_main.go index 29f15a4ea..53a9f06f7 100644 --- a/cmd/provider/datafusion/zz_main.go +++ b/cmd/provider/datafusion/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/datalossprevention/zz_main.go b/cmd/provider/datalossprevention/zz_main.go index 764f6af65..26a438279 100644 --- a/cmd/provider/datalossprevention/zz_main.go +++ b/cmd/provider/datalossprevention/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/dataplex/zz_main.go b/cmd/provider/dataplex/zz_main.go index d06d9433c..0cb2b836d 100644 --- a/cmd/provider/dataplex/zz_main.go +++ b/cmd/provider/dataplex/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/dataproc/zz_main.go b/cmd/provider/dataproc/zz_main.go index 9cff0b7a7..a9f29a415 100644 --- a/cmd/provider/dataproc/zz_main.go +++ b/cmd/provider/dataproc/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/datastore/zz_main.go b/cmd/provider/datastore/zz_main.go index aab11a54a..5426f2e7e 100644 --- a/cmd/provider/datastore/zz_main.go +++ b/cmd/provider/datastore/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/datastream/zz_main.go b/cmd/provider/datastream/zz_main.go index 38eb683f7..e5b7ca811 100644 --- a/cmd/provider/datastream/zz_main.go +++ b/cmd/provider/datastream/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/dialogflowcx/zz_main.go b/cmd/provider/dialogflowcx/zz_main.go index 5ec5ac5a9..43ce90b94 100644 --- a/cmd/provider/dialogflowcx/zz_main.go +++ b/cmd/provider/dialogflowcx/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/dns/zz_main.go b/cmd/provider/dns/zz_main.go index d88e35edc..080335e17 100644 --- a/cmd/provider/dns/zz_main.go +++ b/cmd/provider/dns/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/documentai/zz_main.go b/cmd/provider/documentai/zz_main.go index d5d6eb605..25c80dec2 100644 --- a/cmd/provider/documentai/zz_main.go +++ b/cmd/provider/documentai/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/essentialcontacts/zz_main.go b/cmd/provider/essentialcontacts/zz_main.go index ea2d9267b..048330578 100644 --- a/cmd/provider/essentialcontacts/zz_main.go +++ b/cmd/provider/essentialcontacts/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/eventarc/zz_main.go b/cmd/provider/eventarc/zz_main.go index fa075ecc2..141a27de3 100644 --- a/cmd/provider/eventarc/zz_main.go +++ b/cmd/provider/eventarc/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/filestore/zz_main.go b/cmd/provider/filestore/zz_main.go index 0b78ebef8..fc8eeea2b 100644 --- a/cmd/provider/filestore/zz_main.go +++ b/cmd/provider/filestore/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/firebaserules/zz_main.go b/cmd/provider/firebaserules/zz_main.go index b8eb9ce72..104066c37 100644 --- a/cmd/provider/firebaserules/zz_main.go +++ b/cmd/provider/firebaserules/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/gke/zz_main.go b/cmd/provider/gke/zz_main.go index 3ec6b6ba3..df45b607a 100644 --- a/cmd/provider/gke/zz_main.go +++ b/cmd/provider/gke/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/gkehub/zz_main.go b/cmd/provider/gkehub/zz_main.go index f490438c4..bd4b803b1 100644 --- a/cmd/provider/gkehub/zz_main.go +++ b/cmd/provider/gkehub/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/healthcare/zz_main.go b/cmd/provider/healthcare/zz_main.go index bc566701f..1e8236d04 100644 --- a/cmd/provider/healthcare/zz_main.go +++ b/cmd/provider/healthcare/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/iam/zz_main.go b/cmd/provider/iam/zz_main.go index 43f020fe3..dadd2d6f1 100644 --- a/cmd/provider/iam/zz_main.go +++ b/cmd/provider/iam/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/iap/zz_main.go b/cmd/provider/iap/zz_main.go index 95b830993..6769b14bf 100644 --- a/cmd/provider/iap/zz_main.go +++ b/cmd/provider/iap/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/identityplatform/zz_main.go b/cmd/provider/identityplatform/zz_main.go index 790a9d820..b4e3113e9 100644 --- a/cmd/provider/identityplatform/zz_main.go +++ b/cmd/provider/identityplatform/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/kms/zz_main.go b/cmd/provider/kms/zz_main.go index 8f60cdf3e..50d8a3d98 100644 --- a/cmd/provider/kms/zz_main.go +++ b/cmd/provider/kms/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/logging/zz_main.go b/cmd/provider/logging/zz_main.go index 511412939..ef2da9300 100644 --- a/cmd/provider/logging/zz_main.go +++ b/cmd/provider/logging/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/memcache/zz_main.go b/cmd/provider/memcache/zz_main.go index 95d7cc4b6..4440a5881 100644 --- a/cmd/provider/memcache/zz_main.go +++ b/cmd/provider/memcache/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/mlengine/zz_main.go b/cmd/provider/mlengine/zz_main.go index 88e65fe0e..f2c27d85d 100644 --- a/cmd/provider/mlengine/zz_main.go +++ b/cmd/provider/mlengine/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/monitoring/zz_main.go b/cmd/provider/monitoring/zz_main.go index c8d78493e..1a5194ef1 100644 --- a/cmd/provider/monitoring/zz_main.go +++ b/cmd/provider/monitoring/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/monolith/zz_main.go b/cmd/provider/monolith/zz_main.go index 9828772f8..11145843d 100644 --- a/cmd/provider/monolith/zz_main.go +++ b/cmd/provider/monolith/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/networkconnectivity/zz_main.go b/cmd/provider/networkconnectivity/zz_main.go index f59c7efb2..41c6c3825 100644 --- a/cmd/provider/networkconnectivity/zz_main.go +++ b/cmd/provider/networkconnectivity/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/networkmanagement/zz_main.go b/cmd/provider/networkmanagement/zz_main.go index 63203281e..f1ef4b7a5 100644 --- a/cmd/provider/networkmanagement/zz_main.go +++ b/cmd/provider/networkmanagement/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/notebooks/zz_main.go b/cmd/provider/notebooks/zz_main.go index 6e615a66c..147b6b4f7 100644 --- a/cmd/provider/notebooks/zz_main.go +++ b/cmd/provider/notebooks/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/osconfig/zz_main.go b/cmd/provider/osconfig/zz_main.go index 92e295c5c..f70fd9d98 100644 --- a/cmd/provider/osconfig/zz_main.go +++ b/cmd/provider/osconfig/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/oslogin/zz_main.go b/cmd/provider/oslogin/zz_main.go index eee193633..e0efd85e6 100644 --- a/cmd/provider/oslogin/zz_main.go +++ b/cmd/provider/oslogin/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/privateca/zz_main.go b/cmd/provider/privateca/zz_main.go index 631132357..118c7396c 100644 --- a/cmd/provider/privateca/zz_main.go +++ b/cmd/provider/privateca/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/pubsub/zz_main.go b/cmd/provider/pubsub/zz_main.go index 0d1173bcb..945cb2879 100644 --- a/cmd/provider/pubsub/zz_main.go +++ b/cmd/provider/pubsub/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/redis/zz_main.go b/cmd/provider/redis/zz_main.go index 030de7a62..901083fc5 100644 --- a/cmd/provider/redis/zz_main.go +++ b/cmd/provider/redis/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/secretmanager/zz_main.go b/cmd/provider/secretmanager/zz_main.go index fd6b0f429..4f6e49ed7 100644 --- a/cmd/provider/secretmanager/zz_main.go +++ b/cmd/provider/secretmanager/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/servicenetworking/zz_main.go b/cmd/provider/servicenetworking/zz_main.go index 28ce3d602..9f9aae6ac 100644 --- a/cmd/provider/servicenetworking/zz_main.go +++ b/cmd/provider/servicenetworking/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/sourcerepo/zz_main.go b/cmd/provider/sourcerepo/zz_main.go index 684400f07..0ba7dc437 100644 --- a/cmd/provider/sourcerepo/zz_main.go +++ b/cmd/provider/sourcerepo/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/spanner/zz_main.go b/cmd/provider/spanner/zz_main.go index 5c8d3b7c1..59455a0af 100644 --- a/cmd/provider/spanner/zz_main.go +++ b/cmd/provider/spanner/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/sql/zz_main.go b/cmd/provider/sql/zz_main.go index b9b62cab7..1bcd83b13 100644 --- a/cmd/provider/sql/zz_main.go +++ b/cmd/provider/sql/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/storage/zz_main.go b/cmd/provider/storage/zz_main.go index 77a15fa4c..fd034f63e 100644 --- a/cmd/provider/storage/zz_main.go +++ b/cmd/provider/storage/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/storagetransfer/zz_main.go b/cmd/provider/storagetransfer/zz_main.go index 2d6ae48db..233a3f4aa 100644 --- a/cmd/provider/storagetransfer/zz_main.go +++ b/cmd/provider/storagetransfer/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/tpu/zz_main.go b/cmd/provider/tpu/zz_main.go index 5e0fc64d8..cd3305465 100644 --- a/cmd/provider/tpu/zz_main.go +++ b/cmd/provider/tpu/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/vertexai/zz_main.go b/cmd/provider/vertexai/zz_main.go index d2ca62924..a6d49f106 100644 --- a/cmd/provider/vertexai/zz_main.go +++ b/cmd/provider/vertexai/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/vpcaccess/zz_main.go b/cmd/provider/vpcaccess/zz_main.go index 1f1a66c12..2238de905 100644 --- a/cmd/provider/vpcaccess/zz_main.go +++ b/cmd/provider/vpcaccess/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/cmd/provider/workflows/zz_main.go b/cmd/provider/workflows/zz_main.go index aa0c713be..d98f6a00f 100644 --- a/cmd/provider/workflows/zz_main.go +++ b/cmd/provider/workflows/zz_main.go @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/hack/main.go.tmpl b/hack/main.go.tmpl index c883116ac..d05142bea 100644 --- a/hack/main.go.tmpl +++ b/hack/main.go.tmpl @@ -44,6 +44,7 @@ import ( "github.com/upbound/provider-gcp/apis" "github.com/upbound/provider-gcp/apis/v1alpha1" "github.com/upbound/provider-gcp/config" + resolverapis "github.com/upbound/provider-gcp/internal/apis" "github.com/upbound/provider-gcp/internal/clients" "github.com/upbound/provider-gcp/internal/controller" "github.com/upbound/provider-gcp/internal/features" @@ -151,6 +152,7 @@ func main() { }) kingpin.FatalIfError(err, "Cannot create controller manager") kingpin.FatalIfError(apis.AddToScheme(mgr.GetScheme()), "Cannot add GCP APIs to scheme") + kingpin.FatalIfError(resolverapis.BuildScheme(apis.AddToSchemes), "Cannot register the GCP APIs with the API resolver's runtime scheme") ctx := context.Background() provider, err := config.GetProvider(ctx, false) diff --git a/internal/apis/scheme.go b/internal/apis/scheme.go new file mode 100644 index 000000000..98d0dc9b2 --- /dev/null +++ b/internal/apis/scheme.go @@ -0,0 +1,37 @@ +/* +Copyright 2024 Upbound Inc. +*/ + +package apis + +import ( + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + "github.com/pkg/errors" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +var s = runtime.NewScheme() + +func GetManagedResource(group, version, kind, listKind string) (xpresource.Managed, xpresource.ManagedList, error) { + gv := schema.GroupVersion{ + Group: group, + Version: version, + } + kingGVK := gv.WithKind(kind) + m, err := s.New(kingGVK) + if err != nil { + return nil, nil, errors.Wrapf(err, "failed to get a new API object of GVK %q from the runtime scheme", kingGVK) + } + + listGVK := gv.WithKind(listKind) + l, err := s.New(listGVK) + if err != nil { + return nil, nil, errors.Wrapf(err, "failed to get a new API object list of GVK %q from the runtime scheme", listGVK) + } + return m.(xpresource.Managed), l.(xpresource.ManagedList), nil +} + +func BuildScheme(sb runtime.SchemeBuilder) error { + return errors.Wrap(sb.AddToScheme(s), "failed to register the GVKs with the runtime scheme") +} From e2cb5f0bb0cc9445422b75434e7a5fa11a44b290 Mon Sep 17 00:00:00 2001 From: Alper Rifat Ulucinar Date: Tue, 5 Mar 2024 01:15:26 +0300 Subject: [PATCH 3/3] Pin the UXP version to v1.14.6-up.1 Signed-off-by: Alper Rifat Ulucinar --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 5b945ab52..5086a2eeb 100644 --- a/Makefile +++ b/Makefile @@ -69,6 +69,7 @@ UP_CHANNEL = stable UPTEST_VERSION = v0.8.0 KUSTOMIZE_VERSION = v5.3.0 YQ_VERSION = v4.40.5 +UXP_VERSION = 1.14.6-up.1 export UP_VERSION := $(UP_VERSION) export UP_CHANNEL := $(UP_CHANNEL)