Since we now try to get tags for all roles in the account, we may encounter roles we are not allowed to get e.g if there is an SCP or similar with explicit deny.
* 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>
More changes for do vpc
some more minor updates
Fix PrivateIP check
Bazel fixes
Minor changes for vpc listing
Minor fixes for DO VPC
Add delete vpc logic
More fixes for vpc usage with gossip based clusters
Fix minor comments in code
Fix mock DO interface to use missing functions
Another fix for mock cloud do for missing interface function
incorporate review comments
incorporate review comments
Because the control-plane can recreate routes, there's a race between
deleting instances and deleting routes. Add a dependency so we don't
try to delete routes until after we've deleted all the instances.
GCE "classic" networking sets up routes to each instance. The route
name looks like `<cluster-name>-<uuid>`.
If the cluster name is long enough, it will be truncated. This was
confusing the route cleanup logic.
Subnets are created & owned for IPAlias mode. We weren't deleting
them because of a bug deleting when there is a hyphen in the name (and
by default they are named after the region, which has a hyphen).
They should be deleted as they will presumably be running shortly.
Also, this function is used from `kops dump cluster` where presumably
instances are more likely to be pending.
Supporting IPv6 values where they can be set by the user, and ensuring
that IPv4 and IPv6 firewall rules are split because on GCP they cannot
be in the same rule.
Add create-args parameter only once with spaces separating multiple arguments
Add kops state store
Another fix to check if environment variable are used correctly
Add state store for digital ocean
Add env variables for do related job
check if env is empty
tmp check 1
Revert changes
Use a smaller droplet size
Update make file
Add SSH key for DO
Add private key path
update ssh user
Another fix
try with v1.18
use 1.20
Rebase with master
Fix merge issues
Add DO droplet dump support
I'm hoping this allows our e2e tests to dump system logs into the job artifacts for easier troubleshooting
Use root ssh user
use 2 nodes to reduce cost
another minor fix
Skip services test
Increase master size
Skip flaky tests
Remove pod status test that belongs to v1.20
Add do test file and revert changes to make file
Update make file
Include DigitalOcean in the supported provider flags
incorporate review comments
Update tests/e2e/pkg/tester/tester.go
Co-authored-by: Peter Rifel <rifelpet@users.noreply.github.com>
Fix formatting
Add higher resource master and nodes for running e2e tests
Revert back to use lower size masters