kops/cloudmock/gce
Nat Henderson 9b08c4bb51 Enable internal load balancers when running on GCP
* Add ILBs, broadly following the AWS model.  The following new
capabilities are added for clusters in GCP:
  * Cluster's spec.api.loadBalancer can be set to 'type: internal' on
    GCP.
    * Therefore, GCP can now create:
        * regional backend services
        * regional (non-legacy) healthchecks
        * firewall rules with "internal" load-balancing scheme
        * firewall rules with dot-notation-specified IP addresses
  * Cluster's spec.api.loadBalancer's 'subnets' field functions
    as in the AWS model.

A few incidental changes are included, either because this change
touched the relevant code or because my use case happened to trigger the
issues that are fixed here.

* Cluster's spec.networkID field can be prefixed by project to use
  GCP's common cross-project networking model.
    * The presumption is that all specified subnets belong to this
      network and therefore this project.

* Add missing operation wait on forwarding rule creation.

* Some Terraform output improvements:
    * Permit no-ACL files in GCS buckets in Terraform output.
    * Enable marginally better cross-resource reference in Terraform outputs
    * Add project to network + subnetwork literals in Terraform output.
    * Add terraform output to backend services and health checks.

Testing:
  * Add mocks for backend services and health checks.
  * Add minimal integration test - copied from gce_private and ilb added.
  * Add update cluster goldens.

Co-authored-by: Travis Reid <travis_reid@apple.com>
2022-04-25 13:31:47 -07:00
..
gcphttp Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
mockcloudresourcemanager Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
mockcompute Enable internal load balancers when running on GCP 2022-04-25 13:31:47 -07:00
mockdns Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
mockiam Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
mockstorage Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
mock_gce_cloud.go remove GCE Cluster Service Accounts 2022-02-04 16:46:27 +02:00