Commit Graph

392 Commits

Author SHA1 Message Date
Paddy 95e01ad35b Merge branch 'master' into paddy_10984_better_image_resolution 2017-01-29 23:56:00 -08:00
Evan Brown b9e9e777c8 providers/google: Support managing projects
Add support for creating, updating, and deleting projects, as well as
their enabled services and their IAM policies.

Various concessions were made for backwards compatibility, and will be
removed in 0.9 or 0.10.
2017-01-25 14:59:50 -08:00
Paddy 59e632435e Start adding tests for image resolution.
Add tests that show what we want image input strings to resolve to, so
we can test that behaviour.
2017-01-23 16:45:06 -08:00
Zach Gershman df027d9e3c removes region param from google_compute_backend_service (#10903)
* removes region param from backend_service

- this param was not being used in this service
- you need a regional_backend_service if you want to pass this

* deprecated region instead of outright removing

* put session affinity formatting back
2017-01-18 23:10:43 +00:00
Dana Hoffman 6558224de1 Merge pull request #11018 from unguiculus/feature/additional_zones
provider/google: [GKE] Allow additional zones to be configured
2017-01-18 10:10:13 -08:00
Dana Hoffman 006e9b1b3c Merge pull request #11228 from cblecker/rbs-sessionaffinity
provider/google: Add support for session_affinity to google_compute_region_backend_service
2017-01-18 10:06:02 -08:00
Dana Hoffman 449a98a398 providers/google: Add support for encrypting a disk (#11167)
* providers/google: add support for encrypting a disk

* providers/google: Add docs for encrypting disks

* providers/google: CSEK small fixes: sensitive params and mismatched state files
2017-01-18 13:49:48 +00:00
Christoph Blecker 73bd728fe5 Add support for session_affinity to google_compute_region_backend_service 2017-01-17 16:32:58 -08:00
Reinhard Nägele 69316a8726 Add 'ForceNew: true' to additional_zones 2017-01-13 19:39:35 +01:00
Reinhard Nägele 17e8e94fb8 Fix if condition in test 2017-01-13 19:37:59 +01:00
Reinhard Nägele 722fad6d94 Add test for additional zones existance 2017-01-13 17:03:28 +01:00
Reinhard Nägele 776bc47df3 Merge remote-tracking branch 'upstream' into feature/additional_zones 2017-01-13 16:44:09 +01:00
zbikmarc 77037bed2c providers/google: Add subnetwork_project field to enable cross-project networking in instance templates (#11110)
* Add subnetwork_project field to allow for XPN in GCE instance templates

* Missing os import

* Removing unneeded check

* fix formatting

* Add subnetwork_project to read
2017-01-12 16:05:13 +02:00
Paddy 690db74d4a Read update_strategy before overwriting it. (#11013)
As brought up in #10174, our update_strategy property for instance group
managers in GCP would always be set to "RESTART" on read, even if the
user asked for them to be "NONE" in the config.

This adds a test to ensure that the user wishes were respected, which
fails until we check for update_strategy in the ResourceData before we
update it within the Read function. Because the update_strategy property
doesn't map to anything in the API, we never need to read it from
anywhere but the config, which means the ResourceData should be
considered authoritative by the time we get to the Read function.

The fix for this was provided by @JDiPierro in #10198 originally, but
was missing tests, so it got squashed into this.
2017-01-09 23:15:50 +00:00
Reinhard Nägele 038d330365 [GKE] Allow additional zones to be configured 2017-01-04 07:37:57 +01:00
Paddy e6349aee4f Remove create_timeout backwards incompatibilities.
A new create_timeout attribute was added that had some backwards
incompatibilities, and as per discussion in #10823, it was determined we
could make upgrading to 0.8.x easier by fixing them, without really
losing any functionality.

Because create_timeout is not something stored or transmitted to the
API, it's not something we need a ForceNew on. Also, because an update
wouldn't result in an API call, we can add a state migration to avoid a
false positive diff that requires people to plan and apply but doesn't
actually make an API call.
2016-12-19 23:49:53 -08:00
Christoph Blecker b7faae4bac Use node_version during google_container_cluster creation (#10817) 2016-12-18 13:50:46 +00:00
stack72 9aebe3344a
provider/google: Moving the XPN EnvVar check into provider_test.go to stop failed build 2016-12-13 19:29:23 +00:00
stack72 4f256a54db
Merge branch 'google-xpn' of https://github.com/danawillow/terraform 2016-12-13 19:15:54 +00:00
Christoph Blecker fa8921f8f4 Add support for name_prefix to google_compute_ssl_certificate 2016-12-12 15:57:58 -08:00
James Bardin 5b0bc3b25e wrong printf verb 2016-12-12 15:03:21 -05:00
Paddy 8d046c766c Merge pull request #10453 from danawillow/google-ilb
providers/google: Add support for Internal Load Balancing
2016-12-12 09:47:20 -08:00
Dana Hoffman 2ad3042877 fix tests 2016-12-08 19:59:03 -08:00
Dana Hoffman 985b4e2b66 use conflictswith for health check instead of separate type field 2016-12-08 13:35:57 -08:00
Dana Hoffman 35664ff0e1 log id of health check that still exists on destroy 2016-12-08 10:40:09 -08:00
Paddy e1a5805833 Fix instance/template metadata support
Update our instance template to include metadata_startup_script, to
match our instance resource. Also, we've resolved the diff errors around
metadata.startup-script, and people want to use that to create startup
scripts that don't force a restart when they're changed, so let's stop
disallowing it.

Also, we had a bunch of calls to `schema.ResourceData.Set` that ignored
the errors, so I added error handling for those calls. It's mostly
bundled with this code because I couldn't be sure whether it was the
root of bugs or not, so I took care of it while addressing the startup
script issue.
2016-12-05 02:45:28 -08:00
Dana Hoffman 0e03f59e4a remove loadBalancingScheme as an option in RegionBackendService since it can only be INTERNAL 2016-12-01 12:27:36 -08:00
Dana Hoffman fd2b1fcbd6 add one more test for updating a health check 2016-12-01 12:27:35 -08:00
Dana Hoffman 77f0ef4fc1 fix bugs in health check and its tests 2016-12-01 12:27:35 -08:00
Dana Hoffman 20ee56be07 Add the other HealthCheck types 2016-12-01 12:27:34 -08:00
Dana Hoffman adafa722e7 clean up RegionBackendService and tests 2016-12-01 12:27:34 -08:00
Dana Hoffman 39809fca76 use v1 apis instead of beta 2016-12-01 12:27:33 -08:00
Dana Hoffman a04ed894d1 First set of changes to enable internal load balancing using beta apis 2016-12-01 11:14:21 -08:00
Paddy 7054fdfa13 providers/google: make projects importable.
This change doesn't make much sense now, as projects are read-only
anyways, so there's not a lot that importing really does for you--you
can already reference pre-existing projects just by defining them in
your config.

But as we discussed #10425, this change made more and more sense. In a
world where projects can be created, we can no longer reference
pre-existing projects just by defining them in config. We get that
ability back by making projects importable.
2016-12-01 10:38:27 -08:00
Benjamin Pineau f2a3c5da82 provider/google: allow session affinity for compute_backend_service
Google's Backend Services gives users control over the session affinity modes.
Let's allow Terraform users to leverage this option.
We don't change the default value ("NONE", as provided by Google).
2016-11-30 23:50:50 +01:00
Evan Brown d357e75201 Merge pull request #10117 from cblecker/f-gke-node-scopes
provider/google: Add support for scope aliases to google_container_cluster
2016-11-18 20:19:26 -08:00
Evan Brown 3920460220 Merge pull request #10081 from aditya87/google_compute_image_timeout
Added create timeout for compute images and instances
2016-11-17 12:56:02 -08:00
Evan Brown a32fe2d47f Resolve review feedback 2016-11-17 09:49:22 -08:00
Christoph Blecker 190f167bb2
Add support for scope aliases to google_container_cluster 2016-11-14 15:50:24 -08:00
Evan Brown 4bdf65c36f Fix spacing inconsistencies 2016-11-14 11:12:55 -08:00
Evan Brown 1612d6a78f Fix go vet issue 2016-11-14 09:59:44 -08:00
Evan Brown 9a188049a7 providers/google: random resource names in SA test 2016-11-14 09:42:11 -08:00
Evan Brown 5423349b68 providers/google: Create and delete Service Accounts 2016-11-13 20:47:20 -08:00
Aditya Anchuri 49c7d272a3 Added create timeout for compute images and instances
- Prevents the corresponding terraform resource from timing out when the
  images or instances take longer than the default of 4 minutes to be
  created
2016-11-12 18:30:02 -08:00
Paddy 8ba6ed708a provider/google: throw an error for invalid disks
When configuring an instance's attached disk, if the attached disk has
both the disk and type attributes set, it would previously cause
terraform to crash with a nil pointer exception. The root cause was that
we only instantiate the InitializeParams property of the disk if its
disk attribute isn't set, and we try to write to the InitializeParams
property when the type attribute is set. So setting both caused the
InitializeParams property to not be initialized, then written to.

Now we throw an error explaining that the configuration can't have both
the disk and the type set.

Fixes #6495.
2016-11-07 16:11:00 -08:00
Christoph Blecker af7cd57a4a Search configured project image families (#9243)
* Search configured project image families

* Clarify documentation around google_compute_instance image families

* Acceptance test for private instance family creation
2016-11-01 21:00:12 +00:00
Christoph Blecker 45f441fdb4 Add support for default-internet-gateway alias for google_compute_route (#9676) 2016-11-01 13:45:36 +00:00
Christoph Blecker ca8cd4b1f0 Add support for using source_disk to google_compute_image (#9614) 2016-11-01 10:32:47 +00:00
Dan Wendorf 781725348e provider/google Support MySQL 5.7 instances (#9673)
* provider/google Document MySQL versions for second generation instances

Google Cloud SQL has first-gen and second-gen instances with different
supported versions of MySQL.

* provider/google Increase SQL Admin operation timeout to 10 minutes

Creating SQL instances for MySQL 5.7 can take over 7 minutes,
so the timeout needs to be increased to allow the
google_sql_database_instance resource to successfully create.
2016-10-28 14:41:03 +02:00
Dan Wendorf 407af92c21 provider/google Change default MySQL instance version to 5.6 (#9674)
The Google Cloud SQL API defaults to 5.6, and 5.6 is the only version avaiable
to both first- and second-generation Cloud SQL instances.
2016-10-28 00:11:08 +01:00