crossplane-contrib / provider-upjet-gcp

Official GCP Provider for Crossplane by Upbound.
Apache License 2.0
63 stars 68 forks source link

Test resources with schema changes for v4.22.0 -> v4.48.0 version bump #137

Closed ulucinar closed 1 year ago

ulucinar commented 1 year ago

In the context of #63, we would like to test the following resources with Terraform state schema changes:

google_cloudbuild_trigger:1-2

And the following CRDs with breaking API changes:

cloudrun.gcp.upbound.io_services.yaml
compute.gcp.upbound.io_networkendpoints.yaml
container.gcp.upbound.io_clusters.yaml
container.gcp.upbound.io_nodepools.yaml
dns.gcp.upbound.io_recordsets.yaml

Known customer related resources: storage.Bucket, redis.Cloudmemorystoreinstance (redis.Instance), sql.Cloudsqlinstance (sql.DatabaseInstance)

turkenf commented 1 year ago
NAME                                                 READY   SYNCED   EXTERNAL-NAME
                          AGE
trigger.cloudbuild.gcp.upbound.io/filename-trigger   True    True     projects/official-provider-testing/triggers/59c2d013-22aa
-464b-9cee-2662498b1a89   20m
NAME                                               READY   SYNCED   EXTERNAL-NAME      AGE
service.cloudrun.gcp.upbound.io/cloudrun-service   True    True     cloudrun-service   3m57s
NAME                                                 READY   SYNCED   EXTERNAL-NAME      AGE
subnetwork.compute.gcp.upbound.io/network-endpoint   True    True     network-endpoint   5m24s

NAME                                                      READY   SYNCED   EXTERNAL-NAME
                                     AGE
networkendpoint.compute.gcp.upbound.io/network-endpoint   True    True     official-provider-testing/us-central1-a/network-endp
oint/network-endpoint/10.2.0.21/90   5m24s

NAME                                                           READY   SYNCED   EXTERNAL-NAME      AGE
networkendpointgroup.compute.gcp.upbound.io/network-endpoint   True    True     network-endpoint   5m24s

NAME                                               READY   SYNCED   EXTERNAL-NAME      AGE
instance.compute.gcp.upbound.io/network-endpoint   True    True     network-endpoint   5m24s

NAME                                              READY   SYNCED   EXTERNAL-NAME      AGE
network.compute.gcp.upbound.io/network-endpoint   True    True     network-endpoint   5m24s
NAME                                       READY   SYNCED   EXTERNAL-NAME   AGE
cluster.container.gcp.upbound.io/cluster   True    True     cluster         9m59s

NAME READY SYNCED EXTERNAL-NAME AGE nodepool.container.gcp.upbound.io/nodepool True True nodepool 14m

NAME READY SYNCED EXTERNAL-NAME AGE cluster.container.gcp.upbound.io/nodepool True True nodepool 14m


- `dns.gcp.upbound.io_recordsets.yaml`

```shell
NAME                                        READY   SYNCED   EXTERNAL-NAME
                               AGE
recordset.dns.gcp.upbound.io/managed-zone   True    True     projects/official-provider-testing/managedZones/managed-zone/rrset
s/test.example-281496.com./A   56m

NAME                                          READY   SYNCED   EXTERNAL-NAME   AGE
managedzone.dns.gcp.upbound.io/managed-zone   True    True     managed-zone    56m
AaronME commented 1 year ago

@ulucinar I believe @turkenh raised the issue of using uptest for our internal resources. He was even kind enough to create a demo PR.

The effort is stalled because most of our composites are written to specifically support configuration within the "upbound cloud" ecosystem. We considered creating a "catch-all" composition that just contained one of each resource we use, however have not had time to devote to that effort.

(We are also still running terrajet providers, fwiw. Provider development is moving an impressive rate.)

turkenf commented 1 year ago
NAME                                                    READY   SYNCED   EXTERNAL-NAME             AGE
bucket.storage.gcp.upbound.io/bucket-fatih55deneme123   True    True     bucket-fatih55deneme123   27m
NAME                                           READY   SYNCED   EXTERNAL-NAME    AGE
instance.redis.gcp.upbound.io/redis-instance   True    True     redis-instance   18m
NAME                                                           READY   SYNCED   EXTERNAL-NAME              AGE
databaseinstance.sql.gcp.upbound.io/example-instance-fatih55   True    True     example-instance-fatih55   18m
turkenf commented 1 year ago

We have successfully tested the above resources without making any changes to the example manifests and external name configurations.

ulucinar commented 1 year ago

Hi @AaronME, Thanks for the pointer to the platform-composites repo. I think we can extract some list from there to extend the test coverage. cc. @turkenf