Commit Graph

580 Commits

Author SHA1 Message Date
Dana Hoffman b7d0140aaf provider/google: Move 404 checking into a function in provider.go, call it from instance and IGM (#14190) 2017-05-04 16:15:36 -07:00
Daniel Schierbeck 7a2f002f56 Handle `google_storage_bucket_object` not being found (#14203)
Mark the resource as no longer available.
2017-05-04 20:57:49 +03:00
stack72 b35f004047
provider/google: Minor formatting issues on import of compute route test 2017-05-04 19:17:25 +03:00
stack72 1025748ce0
Merge branch 'g-route-import' of https://github.com/skalle/terraform into skalle-g-route-import 2017-05-04 19:13:58 +03:00
Paddy 8e69d75936 Merge branch 'master' into cloud_router 2017-05-03 16:00:13 -07:00
Paddy 7a73c21c11 Merge pull request #13824 from JDiPierro/import_google_dns_managed_zone
Importability for Google DNS Managed Zone
2017-05-03 15:54:43 -07:00
Paddy dc63d8c42b Merge pull request #12482 from tpoindessous/gcp_compute_disk_snapshot
provider/google : add a new resource : google_compute_snapshot
2017-05-03 15:47:07 -07:00
Dana Hoffman 39e25ca925 provider/google: fix compute instance panic with bad disk config (#14169) 2017-05-03 14:30:36 -07:00
Dana Hoffman 1aba71b556 update list of services in ignoreUnenablableServices test (#14168) 2017-05-03 14:29:48 -07:00
Roberto Jung Drebes 4dddca3ace wip: review changes:
- config.clientCompute.Routers
- peer fields renamed
- more consistent logging
- better handling of SetId for error handling
- function for router locks
- test configs as functions
- simplify exists logic
- use getProject, getRegion logic on acceptance tests
- CheckDestroy for peers an interfaces
- dynamic router name for tunnel test
- extra fields for BgpPeer
- resource documentation
2017-05-03 21:22:33 +02:00
Christoph Tavan 69681b0a86
provider/google: Improve error messages in backend_service test 2017-05-02 23:18:41 +02:00
Christoph Tavan 08b9a11b42
provider/google: Improve backend service error handling
Unset id in case the backend service cannot be created. This basically
updates these lines of code to match the more modern style which is
being used e.g. for the google_compute_instance resource.
2017-05-02 23:18:41 +02:00
Christoph Tavan 9b9144ba95
provider/google: Add support for backend buckets
Adds a new resource google_compute_backend_bucket according to
https://cloud.google.com/compute/docs/reference/latest/backendBuckets

Fixes hashicorp/terraform#12505
2017-05-02 23:18:40 +02:00
Christoph Tavan c9640e40df
provider/google: Update Google Compute godep 2017-05-02 23:08:23 +02:00
Justin DiPierro d80885f746 Importability for Google DNS Managed Zone 2017-05-01 20:28:28 -04:00
Dana Hoffman cfbe11850d provider/google: add support for networkIP in compute instance templates (#13515) 2017-05-01 17:16:05 -07:00
Dana Hoffman 8ae5ad46e0 provider/google: Add pagination for reading project services (#13758) 2017-05-01 16:33:51 -07:00
Ola Karlsson b88098b511 Messed up the CheckDestroy attributes. 2017-04-28 05:37:12 +00:00
Ola Karlsson 106c023a29 Adding import for the compute_route resource 2017-04-28 04:44:37 +00:00
Dana Hoffman 2b911dcc58 provider/google: ignore certain project services that can't be enabled directly via the api (#13730) 2017-04-27 13:00:54 -07:00
Paddy 973eda94c7 Merge pull request #14045 from hashicorp/paddy_project_metadata_tests
provider/google: fix project metadata tests
2017-04-27 11:52:26 -07:00
Paddy 9f3afb4ea7 Fix both Radek & Dana's comments.
Style nits, but clean code is happy code.
2017-04-27 11:39:13 -07:00
Paddy 8aadf6ecdd provider/google: fix project metadata tests
Update our project metadata tests to stand up their own projects, so
they don't trample all over each other anymore.

The fixes for this were more invasive than I had hoped they would be,
but the tests all pass now (when run sequentially) and there's no reason
for them not to pass when run in parallel.
2017-04-27 10:28:31 -07:00
Paddy ece9f85983 provider/google: randomize network data source test name.
We have tests failing because we hard-coded the network name in our
network data source test. By randomizing it, we don't fix the dangling
resource problem, but do make the tests pass again.
2017-04-27 08:52:02 -07:00
Paddy ec7869c6a8 Merge pull request #14012 from danawillow/tests
provider/google: a few quick test fixes
2017-04-26 14:38:01 -07:00
Dana Hoffman 9942c157ac provider/google: a few quick test fixes 2017-04-26 13:24:40 -07:00
Roberto Jung Drebes 55d5f99ca4 providers/google: cloud_router 2017-04-26 21:32:40 +02:00
Dana Hoffman 6ff114a178 provider/google: fix panic in GKE provisioning with addons (#13954) 2017-04-26 11:35:19 +01:00
Jake Champlin 1e9593fa61 Merge pull request #13952 from danawillow/is-13823
provider/google: documentation and validation fixes for forwarding rules
2017-04-25 18:51:14 -04:00
Dana Hoffman e7c3575499 provider/google: add attached_disk field to google_compute_instance (#13443) 2017-04-25 13:20:02 -07:00
Dana Hoffman 6d3251b08d provider/google: documentation and validation fixes for forwarding rules 2017-04-25 13:03:36 -07:00
Dana Hoffman 4f00fa6474 provider/google: Make ports in resource_compute_forwarding_rule ForceNew (#13833) 2017-04-21 20:47:02 +03:00
stack72 1913d72212
Merge branch 'olakar_g-network-import' of https://github.com/skalle/terraform into skalle-olakar_g-network-import 2017-04-21 12:41:09 +03:00
Ola Karlsson 3af9aa283d Adding Import to the Google network resource 2017-04-21 01:58:22 +00:00
Paddy 600a117301 Merge pull request #13671 from JDiPierro/google_address_name_fix
provider/google: Set name field when reading addresses
2017-04-20 13:14:57 -07:00
Alexander 9bd50a1219 provider/google: BigQuery Dataset (#13436)
* Vendor BigQuery

* Add resource

* Add tests

* Add documentation

* Remove named import

* Remove `retain_on_delete`

* Fix formatting
2017-04-20 09:47:38 -07:00
Thomas Poindessous 1fa91dfb4d merge upstream/master 2017-04-20 12:37:18 +02:00
Thomas Poindessous 1b22200c44 Corrected test for snapshot. Simplified tests. Added a new test for source_disk_link 2017-04-20 12:13:17 +02:00
Thomas Poindessous 573da4d729 Added a new attribute : source_disk_link 2017-04-20 12:12:43 +02:00
Justin DiPierro 046cc9b9aa Google Addresses: Set name field on read 2017-04-14 15:03:31 -04:00
Dana Hoffman ae5332b42c provider/google: Unset the id for resource_google_project if the create operation fails (#13644) 2017-04-13 16:16:47 -07:00
Mathieu Herbert 25cbbdea8a provider/google: datasource subnetwork and network (#12442)
* first version of this datasource

* add network and subnetwork datasource and documentation

* modify sidebar reference in documentation

* fix elements after review on network and subnetwork datasources

* fix fmt on Google provider.go

* modify code with the review

* modify documentation layout order

* fix alphabetic order in provider.go

* fix rebase issue and documentation datasource => data
2017-04-13 13:25:29 -07:00
Paddy a00dafd2c6 Merge pull request #13635 from hashicorp/paddy_fix_node_version
provider/google: bump container cluster version in tests.
2017-04-13 13:23:47 -07:00
Paddy d34006bbbf Merge pull request #13270 from JDiPierro/google_address_importability
Google address importability
2017-04-12 15:46:08 -07:00
Dana Hoffman 11a20ddb53 provider/google: Add node_pool field in resource_container_cluster. (#13402) 2017-04-12 12:57:53 -07:00
Paddy dea8b267a9 provider/google: bump container cluster version in tests.
The version we were using has been deprecated and is no longer
available, making the withVersion test no longer pass. I've bumped it to
the latest available version.
2017-04-12 12:38:45 -07:00
Justin DiPierro 8092d90f25 Importability for Google Compute Global Address 2017-04-01 13:25:34 -04:00
Justin DiPierro 8d8d3a728a Google Compute Address Importability 2017-04-01 13:22:39 -04:00
Radek Simko 9e7839b0ed provider/google: Mark GKE pass as sensitive (#13148) 2017-03-29 11:22:33 +01:00
Thomas Poindessous 5fcc6593cd Review by @paddyforan: corrected documentation. Replaced disk by source_disk. Deleted sourcedisk_id 2017-03-27 10:36:39 +02:00
Thomas Poindessous 6e76b907c7 Review by @paddyforan: better test possible network error 2017-03-23 12:05:14 +01:00
Thomas Poindessous 3d08cd07dd Review by @paddyforan: Set attributes returned by API 2017-03-23 10:38:57 +01:00
Dana Hoffman 82608ca54b provider/google: turn compute_instance_group.instances into a set (#12790) 2017-03-22 17:47:41 -07:00
Dana Hoffman a208c08630 provider/google: replace instance group manager urls with instance group urls in container cluster tests 2017-03-22 16:33:11 -07:00
Thomas Poindessous 731fceaae5 Merge remote-tracking branch 'upstream/master' into gcp_compute_disk_snapshot 2017-03-22 16:38:40 +01:00
Thomas Poindessous 00c3553f11 Review by @paddyforan: Add a resourceComputeSnapshotExists function 2017-03-22 15:01:45 +01:00
Thomas Poindessous 84dc163089 Review by @paddyforan: Rename sourcedisk to source_disk 2017-03-22 12:09:25 +01:00
Marc Rooding ab699db458 Support the container cluster local ssd count property 2017-03-22 09:39:36 +01:00
Dana Hoffman 596f0a28cf Merge pull request #12743 from danawillow/gke-nodeconfig
provider/google: add support for a few more fields in NodeConfig
2017-03-21 15:24:14 -07:00
Dana Hoffman d187df75e8 provider/google: add support for a few more fields in NodeConfig 2017-03-15 15:11:09 -07:00
Paddy 97b40a2005 provider/google: drop the account file.
This was already marked as removed, but the way the provider handled it,
people were still being prompted for input anyways. This removes it from
the provider entirely, so people won't be prompted for input.
2017-03-15 11:00:54 -07:00
Dana Hoffman 2cf70fce98 provider/google: Check all fields in GKE tests instead of just that the resource exists (#12147) 2017-03-14 17:50:58 -07:00
Paddy 3940ae5ee7 Merge pull request #12659 from hashicorp/paddy_remove_deprecated_gcp_project_fields
provider/google: Remove deprecated project fields.
2017-03-14 16:52:40 -07:00
Paddy c14fc480ba Prune dead function.
This function isn't called anymore, so let's get rid of it.
2017-03-14 16:38:40 -07:00
Paddy 93196f3907 Merge pull request #12668 from hashicorp/paddy_deprecate_google_credentials_file
provider/google: remove deprecated account_file field.
2017-03-14 13:23:59 -07:00
Paddy 216cf76196 Merge pull request #12663 from hashicorp/paddy_deprecate_backend_region
provider/google: remove the backend region field
2017-03-14 13:00:07 -07:00
Paddy 5c53828bd5 Remove validateAccountFile function.
As @danawillow noticed, if the field is removed, we don't need to
validate it. Which means more deleting code!
2017-03-14 12:56:02 -07:00
Paddy 7a06d3f089 Merge pull request #12662 from hashicorp/paddy_9051_forwarding_rule_cycle
provider/google: fix single port diff cycle
2017-03-14 12:49:47 -07:00
Paddy 4f235c870d Merge pull request #12387 from hashicorp/paddy_11763_gcp_iam_diff
provider/google: ignore expanded v collapsed policies in diff
2017-03-14 12:48:05 -07:00
Paddy 014983dc42 Merge pull request #12223 from hashicorp/paddy_10984_better_image_resolution
provider/google: upgrade our image resolution logic
2017-03-13 23:45:12 -07:00
Paddy 47e5547ce7 Fix variable indents.
Tabs vs spaces is the worst. I really need a way to run terraform fmt on
these inline configs.
2017-03-13 23:23:32 -07:00
Paddy 6ca92fbbc1 Refactored into helpers.
Refactored some helpers out that help with retrieving the policies from
state and comparing them, hopefully leading to less code duplication.
2017-03-13 23:20:27 -07:00
Paddy 72bfc435ad Update typo.
We never updated the error to use the expectation, not hardcode it to 2.
2017-03-13 22:04:08 -07:00
Paddy 17a92b65c2 provider/google: remove deprecated account_file field.
Remove the shims for the long-deprecated account_file field in the
Google provider.
2017-03-13 21:58:39 -07:00
Paddy 3b71036877 provider/google: remove the backend region field
Remove the field region on compute_backend_service as it has been
deprecated a while now and was never used to begin with.
2017-03-13 17:25:32 -07:00
Paddy 023ede0c26 provider/google: fix single port diff cycle
When specifying a single port in port_range, the API would accept it as
input, but would return it as {PORT}-{PORT}. Terraform would then see
this as different, even though (semantically) it's the same.

This commit adds a test that exposes the diff cycle created by this, and
an inline DiffSuppressFunc to resolve it.

Fixes #9051.
2017-03-13 17:03:20 -07:00
Paddy 4c41729f98 Update with @danawillow's feedback.
* Make our regexes more permissive (though still separated out for
  readability, despite being identical)
* Add a helper that will improve readability while sanity testing our
  regex results.
2017-03-13 16:39:42 -07:00
Paddy 630b245770 provider/google: Remove deprecated project fields.
Remove the deprecated fields from google_project, and drop all the logic
that went into supporting them. Tests still pass after one minor change.
2017-03-13 16:19:53 -07:00
Paddy 1a55aecc79 Merge pull request #12486 from hashicorp/paddy_4336_instance_manager_api_bug
provider/google: fix container instance group URLs
2017-03-13 11:15:17 -07:00
Thomas Poindessous 2d1e1741bb Test encrypted snapshot of a encrypted disk 2017-03-13 12:27:39 +01:00
Thomas Poindessous 1dbedf26ef Use a new image type 2017-03-13 12:27:22 +01:00
Thomas Poindessous 89a3073f0f Use a new image type 2017-03-13 12:26:46 +01:00
Thomas Poindessous d8e6b2ba8f Snapshot operations are global by project 2017-03-13 12:26:12 +01:00
Thomas Poindessous 64b67436ab Provided sourcedisk_encryption_key_raw when creating a snapshot of a customer's self encrypted disk 2017-03-13 12:25:11 +01:00
tpoindessous 9a2e9914de providers/google : google_compute_disk.go : Minor correction : "Deleting disk" message in Delete method (#12521)
* WIP: added a new resource type : google_compute_snapshot

* [WIP]: added a test acceptance for google_compute_snapshot

* Cleanup

* Minor correction : "Deleting disk" message in Delete method

* Error in merge action

* Error in merge action
2017-03-08 17:34:49 +02:00
Thomas Poindessous b62f978f1b Cleanup 2017-03-08 12:21:30 +01:00
Thomas Poindessous a19849cd5d [WIP]: added a test acceptance for google_compute_snapshot 2017-03-07 10:49:02 +01:00
Paddy 6cce8d6c1a provider/google: fix container instance group URLs
Google Container Engine's cluster API returned instance group manager
URLs when it meant to return instance group URLs. See #4336 for details
about the bug.

While this is undeniably an upstream problem, this PR:

* detects the error, meaning it will work as expected when the API is
  fixed.
* corrects the error by requesting the instance group manager, then
  retrieving its instance group URL, and using that instead.
* adds a test that exercises the error and the solution, to ensure it is
  functioning properly.
2017-03-06 21:14:32 -08:00
Thomas Poindessous 758259b495 WIP: added a new resource type : google_compute_snapshot 2017-03-07 00:26:38 +01:00
Dana Hoffman 322044695b provider/google: initial commit for node pool resource (#11802)
provider/google: initial commit for node pool resource
2017-03-06 14:59:24 -08:00
Paddy 6de8e25b16 Merge pull request #12434 from hashicorp/paddy_fix_gcp_storage_region_test
provider/google: add location to storage tests.
2017-03-03 16:58:18 -08:00
Paddy 6531ef57e1 provider/google: log the op name in sql op errors.
To aid in tracking down the error that's causing
TestAccGoogleSqlDatabaseInstance_basic to fail (it's claiming an op
can't be found?) I've added the op name (which is unique) to the error
output for op errors.
2017-03-03 16:45:25 -08:00
Paddy a318cd9d61 provider/google: add location to storage tests.
Add location to storage tests that need it, which fixes the failing
TestAccStorageStorageClass test.
2017-03-03 15:51:36 -08:00
Paddy 3cb5107bd2 provider/google: retry storage creation/deletion on rate limiting
Our GCP storage tests are really flaky right now due to rate limiting.
In theory, this could also impact Terraform users that are
deleting/creating large numbers of Google Cloud Storage buckets at once.

To fix, I'm detecting the specific error code that GCP returns when it's
a rate limit error, and using that with resource.Retry to try the
request again.
2017-03-02 16:42:28 -08:00
Paddy 9b1da31ca4 provider/google: ignore expanded v collapsed policies in diff
When comparing the config and state for google_project_iam_policy,
always merge the bindings down to a common representation, to avoid a
perpetual diff.

Fixes #11763.
2017-03-02 14:00:45 -08:00
Dana Hoffman 75eb9209b7 provider/google: fix url map test and update logic (#12317) 2017-03-01 09:47:12 +00:00
Paddy 6868ba72c7 Update the docs for resolveImage.
Update the explanation of the logic being followed in resolveImage.
2017-02-23 22:09:07 -08:00
Paddy 90254b9451 provider/google: update image resolution code.
Add tests that ensure that image syntax resolves to API input the way we
want it to.

Add a lot of different input forms for images, to more closely map to
what the API accepts, so anything that's valid input to the API should
also be valid input in a config.

Stop resolving image families to specific image URLs, allowing things
like instance templates to evolve over time as new images are pushed.
2017-02-23 21:55:30 -08:00
Paddy 73565af503 Merge branch 'master' into paddy_10984_better_image_resolution 2017-02-23 15:12:47 -08:00
Evan Brown facc50d308 providers/google: google_project supports billing account (#11653)
* Vendor google.golang.org/api/cloudbilling/v1

* providers/google: Add cloudbilling client

* providers/google: google_project supports billing account

This change allows a Terraform user to set and update the billing
account associated with their project.

* providers/google: Testing project billing account

This change adds optional acceptance tests for project billing accounts.
GOOGLE_PROJECT_BILLING_ACCOUNT and GOOGLE_PROJECT_BILLING_ACCOUNT_2
must be set in the environment for the tests to run; otherwise, they
will be skipped.

Also includes a few code cleanups per review.

* providers/google: Improve project billing error message
2017-02-20 19:32:24 +02:00