Commit Graph

109 Commits

Author SHA1 Message Date
Paddy
37df58296b Merge pull request #171 from terraform-providers/paddy_iam
Add google_project_iam_binding and google_project_iam_member resources.
2017-07-28 12:22:33 -07:00
Joe Selman
50c10d4e7d Revert "Revert metadata item changes (#225)" (#257)
* Revert "Revert metadata item changes (#225)"

This reverts commit 884158d891.

* Use computeOperationWait instead of computeOperationWaitGlobal
2017-07-28 10:49:02 -07:00
Vincent Roseberry
3eaf4751db Add new resource google_compute_network_peering (#259) 2017-07-28 09:51:29 -07:00
Paddy
6f98217d66 Fix embarrassing typo in log message. 2017-07-27 14:37:39 -07:00
Paddy
d3426d5bc6 Don't set IDs in RMW loops.
We don't need to set the ID to "" in read-modify-write helpers, because
once they're done, we read anyways to update state based on the changes.
And that read checks if the binding/member still exists, and does the
SetId("") if it doesn't.

This way, we stick with state only getting set based on the API state,
not by what we think the state will be.
2017-07-27 14:29:25 -07:00
Paddy
ac5df40896 Return a type that was needed, rename a test function.
Tests need to have unique names. Whoooops.

Also, the Elem property accepts an interface I guess, which means we
actually need the struct type repetition there.
2017-07-27 14:11:52 -07:00
Paddy
f88e0429c7 Test adding multiple bindings at once. 2017-07-27 14:06:15 -07:00
Paddy
78545359bd Add logging statements, update : to / in IDs.
Update member IDs to use / instead of :.

Make sure we're logging any time we remove something from state.
2017-07-27 14:01:47 -07:00
Paddy
f94c3872af Switch to / as separator.
Switch to using / as a separator for IDs, instead of :.
2017-07-27 13:50:31 -07:00
Paddy
adc206a02d Add test case for updating to remove member.
Add a test case that updates a binding to remove a member.
2017-07-27 13:50:06 -07:00
Paddy
199ff5d1f1 Excise unnecessary type declarations.
Some struct types can be inferred instead of being repeated, so let's
take advantage of that.
2017-07-27 13:39:23 -07:00
Riley Karson
50069050c1 Removed the Compute Operation Wait Zone and migrated to universal wait. (#251)
* Removed the Compute Operation Wait Zone and migrated to universal wait.

* Removed unused var.
2017-07-27 08:48:25 -07:00
Riley Karson
01eecebac6 Remove the Compute Operation Wait Region methods, migrating to the universal wait. (#246) 2017-07-26 15:24:03 -07:00
Riley Karson
232cb87c7a Add versioned Beta support to google_compute_instance_group_manager (#234)
* Vendor GCP Compute Beta client library.

* Refactor resource_compute_instance_group_manager for multi version support (#129)

* Refactor resource_compute_instance_group_manager for multi version support.
* Minor changes based on review.
* Removed type-specific API version conversion functions.

* Add support for Beta operations.

* Add v0beta support to google_compute_instance_group_manager.

* Renamed Key to Feature, added comments & updated some parameter names.

* Fix code and tests for version finder to match fields that don't have a change.

* Store non-v1 resources' self links as v1 so that dependent single-version resources don't see diffs.

* Fix weird change to vendor.json from merge.

* Add a note that Convert loses ForceSendFields, fix failing test.

* Moved nil type to a switch case in compute_shared_operation.go.

* Move base api version declaration above schema.
2017-07-26 13:37:59 -07:00
Dana Hoffman
42a898dbd0 Add support for node pool autoscaling (#157)
* add node pool autoscaling

* docs for node pool autoscaling

* remove enabled attribute

* remove enabled from docs
2017-07-26 13:21:51 -07:00
Riley Karson
1f8254f260 Migrate all occurrences of WaitGlobal/WaitGlobal time to universal wait. (#243) 2017-07-26 09:40:06 -07:00
Vincent Roseberry
01ef451a94 Support import for google_compute_subnetwork (#227) 2017-07-26 09:30:59 -07:00
jimmy-btn
12ed8d8dd9 Update expected type of expiration time (#209) 2017-07-25 16:58:35 -07:00
Riley Karson
ec162c666c Refactor Compute Operations to work identically & introduce a scope-less API (#191)
* Refactor compute_operation.go to duplicate less code.

* Determine what scope type an Operation is from it's Operation object.

* Inlined operation type switch statement into if/else methods.
2017-07-25 16:22:27 -07:00
Paddy
775d931476 Merge pull request #6 from pdecat/f-google-storage-bucket-lifecycle
Add provider/google/google_storage_bucket lifecycle interface
2017-07-25 16:11:59 -07:00
Paddy
655435f940 Terraform fmt on our test configs. 2017-07-25 12:17:20 -07:00
Paddy
91d227cdb0 id => project_id
For clarity and explicitness(? is that a word?) use the project_id
instead of Terraform's internal id in our test configs.
2017-07-25 12:15:28 -07:00
Paddy
b0e3790b61 Use the policy r/m/w helper and handle edge case.
Use the new projectIamPolicyReadModifyWrite helper to manage the RMW
loop for our policy member resource.

Handle the case of having a binding server-side that doesn't have the
member we expect more elegantly.
2017-07-25 12:14:05 -07:00
Paddy
52d552d740 id => project_id in test configs.
Helps keep things explicit.
2017-07-25 12:00:03 -07:00
Paddy
f9eeb36657 terraform fmt test configs. 2017-07-25 11:56:27 -07:00
Paddy
5282ad7b12 Use string slice conversion helper. 2017-07-25 11:52:38 -07:00
Paddy
729e9fc501 Create an iam policy read/modify/write helper.
We were repeating that logic a lot, so this helper just reads a policy,
calls the passed modify function on the policy, then writes the policy
back and takes care of the optimistic concurrency logic for the caller.
So now all the caller has to do is the unique part, which is the modify
function.
2017-07-25 11:43:49 -07:00
Paddy
9c1c0bbc52 Just remove deleted bindings not present in the API.
We can just set the ID of bindings that are scheduled to be deleted but
don't exist in the API, we don't need an entire separate read request.
2017-07-25 11:12:15 -07:00
Paddy
d3f901bfc3 Refactor binding update loop for clarity.
Rewrite the structure of our if statement to make the conditions under
which each portion executes a bit more clear.
2017-07-25 11:08:34 -07:00
Renaud Chaput
15ddd678e6 google_compute_ssl_certificate: mark private_key as sensitive (#220) 2017-07-24 16:24:36 -07:00
Dana Hoffman
884158d891 Revert metadata item changes (#225)
* Revert "Add additional fingerprint error to check for when updating metadata (#221)"

This reverts commit 4c8f62edf6.

* Revert "Fix bug where range variable is improperly dereferenced (#217)"

This reverts commit 8f75c1c9a5.

* Revert "Add support for google_compute_project_metadata_item (#176)"

This reverts commit 236c0f5d24.
2017-07-20 09:54:59 -07:00
Vincent Roseberry
076d31dd69 Support import for google_compute_instance_group (#201) 2017-07-20 09:21:18 -07:00
Joe Selman
4c8f62edf6 Add additional fingerprint error to check for when updating metadata (#221) 2017-07-19 15:33:07 -07:00
Vincent Roseberry
d9abcd8a9f Support path-only when referencing ssl certificate in compute_target_https_proxy (#210) 2017-07-19 13:49:14 -07:00
Joe Selman
8f75c1c9a5 Fix bug where range variable is improperly dereferenced (#217)
* Fix bug where range variable is improperly dereferenced

* Add comment explaining why a value is copied
2017-07-19 13:19:27 -07:00
Vincent Roseberry
f4db3fd1aa Support import for google_compute_https_health_check (#213) 2017-07-18 11:35:24 -07:00
Joe Selman
236c0f5d24 Add support for google_compute_project_metadata_item (#176)
* Add support for google_compute_project_metadata_item

This allows terraform users to manage single key/value items within the
project metadata map, rather than the entire map itself.

* Update CHANGELOG.md

* Add details about import
2017-07-17 16:28:51 -07:00
Stefan Schmidt
9e5aa27677 Add charset and collation to google_sql_database. (#183)
* Add charset and collation to google_sql_database.

* Add documentation for charset, collation attributes.

* Extend the existing acceptance test to also cover charset and collation.

* Charset and collation always have a value present. Also inline.

* Move charset and collation to optional arguments.

* Add charset and collection to the example.

* Document charset and collation defaults.

* Keep TestAccGoogleSqlDatabase_basic as is, add TestAccGoogleSqlDatabase_update.
2017-07-17 08:32:29 -07:00
Patrick Decat
a0ba61a5ce Add checks on actions and conditions lists lengths 2017-07-17 11:46:24 +02:00
Patrick Decat
c43b8b441e Action and condition blocks of a lifecycle_rule block are both required, use MinItems in schema to enforce 2017-07-17 11:46:24 +02:00
Patrick Decat
40fad4beb5 Implement limit on lifecycle_rules using MaxItems in schema 2017-07-17 11:46:24 +02:00
Patrick Decat
8bf132db0c Avoid shadowing lifecycle_rule variable, rename unconverted one to raw_lifecycle_rule 2017-07-17 11:46:24 +02:00
Patrick Decat
da1c67395d Fix acceptance tests 2017-07-17 11:46:24 +02:00
Patrick Decat
28219ef7d3 Simplify minimum condition elements assertion 2017-07-17 11:46:24 +02:00
Patrick Decat
ec145fe48f Print number of lifecycle rules passed if there are too many (> 100) 2017-07-17 11:46:24 +02:00
Patrick Decat
dfd3bde193 Remove useless update param 2017-07-17 11:46:24 +02:00
Patrick Decat
accb665914 Rename number_of_newer_versions as num_newer_versions 2017-07-17 11:46:24 +02:00
Patrick Decat
7dc4c9d5e0 [WIP] Add provider/google/google_storage_bucket lifecycle interface 2017-07-17 11:46:24 +02:00
Vincent Roseberry
af69c8cead Change description field to not be Computed (#199) 2017-07-14 15:45:06 -07:00
Vincent Roseberry
a5281c6e7c Add import support for google_compute_image. (#194)
* Add import support for google_compute_image.

* Added comment explaning why we set the create_timeout in the import state method

* Don't ForceNew for create_timeout field

* Update image name in import documentation
2017-07-14 13:32:25 -07:00