Commit Graph

1922 Commits

Author SHA1 Message Date
Vincent Roseberry
1ee386b33b
Fix service_account_id field validation in service account key (#795) 2017-11-28 14:37:46 -08:00
Dana Hoffman
3ec37d2864
Update CHANGELOG.md 2017-11-28 10:01:50 -08:00
Nic Cope
94a405d179 Add Alias IP and Guest Accelerator support to Instance Templates (#639)
* Move AliasIpRange helpers into utils

To reflect the fact they'll be used by multiple resources.

* Pass Config to build helpers, not meta

It's the only thing meta is used for.

* Refactor getNetwork util methods to return early for the happy path.

* Update compute APIs

compute.Instance.MinCpuPlatform is now GA.

* Fix panic in TestComputeInstanceMigrateState

This seemed to be a pre-existing issue, i.e. I could repro it in master.

--- FAIL: TestComputeInstanceMigrateState (0.00s)
panic: interface conversion: interface {} is nil, not *google.Config [recovered]
        panic: interface conversion: interface {} is nil, not *google.Config

goroutine 85 [running]:
testing.tRunner.func1(0xc4205d60f0)
        /usr/local/Cellar/go/1.9.1/libexec/src/testing/testing.go:711 +0x2d2
panic(0x203acc0, 0xc4205d2080)
        /usr/local/Cellar/go/1.9.1/libexec/src/runtime/panic.go:491 +0x283
github.com/terraform-providers/terraform-provider-google/google.migrateStateV3toV4(0xc4205f2000, 0x0, 0x0, 0x0, 0x48, 0xc4205f2000)
        /Users/negz/control/go/src/github.com/terraform-providers/terraform-provider-google/google/resource_compute_instance_migrate.go:182 +0x2405
github.com/terraform-providers/terraform-provider-google/google.resourceComputeInstanceMigrateState(0x2, 0xc4205f2000, 0x0, 0x0, 0x0, 0x0, 0xe0000000000)
        /Users/negz/control/go/src/github.com/terraform-providers/terraform-provider-google/google/resource_compute_instance_migrate.go:48 +0x21a
github.com/terraform-providers/terraform-provider-google/google.runInstanceMigrateTest(0xc4205d60f0, 0x2260816, 0x8, 0x227d23a, 0x20, 0x2, 0xc4205ec0f0, 0xc4205ec120, 0x0,
 0x0)
        /Users/negz/control/go/src/github.com/terraform-providers/terraform-provider-google/google/resource_compute_instance_migrate_test.go:803 +0xc1
github.com/terraform-providers/terraform-provider-google/google.TestComputeInstanceMigrateState(0xc4205d60f0)
        /Users/negz/control/go/src/github.com/terraform-providers/terraform-provider-google/google/resource_compute_instance_migrate_test.go:71 +0xc84
testing.tRunner(0xc4205d60f0, 0x22d81c0)
        /usr/local/Cellar/go/1.9.1/libexec/src/testing/testing.go:746 +0xd0
created by testing.(*T).Run
        /usr/local/Cellar/go/1.9.1/libexec/src/testing/testing.go:789 +0x2de
FAIL    github.com/terraform-providers/terraform-provider-google/google 0.035s

* Use only the v1 API for resource_compute_instance

Alias IP ranges, Accelerators, and min CPU platform are now GA.

* Move common instance code into utils.go

Methods used by both resource_compute_instance and
resource_compute_instance_template are currently spread between their respective
files, and utils.go.

This commit moves them all into utils.go for the sake of consistency. It may be
worth considering an instance_common.go file or similar.

* Unify compute_instance and compute_instance_template network_interface and service_account code

This has the side effect of enabling Alias IP range support for
compute_instance_templates.

* Add tests for compute instance template Alias IP ranges

* Mark instance template region as computed

We compute it from the subnet its network interfaces are in. Note this
is not new behaviour - I believe it was erroneously missing the computed
flag.

* Support guest accelerators for instance templates

Since most of the code is already there.

* Add a test for using 'address' rather than 'network_ip' for instance templates

* Don't mark assigned_nat_ip as deprecated

* Remove network_interface schema fields that don't make sense for a compute instance template

* Add newline after count in instance template docs

* Don't try to dedupe guest accelerator expansion code

The API calls to Google to create guest accelerators take different values
for instances and instance templates. Instance templates don't have a zone
and can thus *only* be passed a guest accelerator name.

* Use ParseNetworkFieldValue instead of getNetworkLink

* Add support for parsing regional fields, and subnetworks specifically

Currently unused because subnetworks may have a separate project from that
of the instance using them, which complicates looking up the project field.

* Fall back to provider region when parsing regional field values

Also slightly refactors getXFromSchema field helper functions for readability.

* Revert to assigned_nat_ip in compute instance docs

* Add beta scaffolding to compute instance and compute instance template

Note these resources don't currently use beta features - this is futureproofing.

* Fix indentation in comment about instance template alias IP ranges

* Consolidate metadata helper functions in metadata.go

* Move compute instance (and template) related helpers into their own file
2017-11-28 10:01:27 -08:00
Vincent Roseberry
c30fdf702d
Update CHANGELOG.md 2017-11-27 18:00:55 -08:00
Vincent Roseberry
d4c5a718a5
Validate account_id length in google_service_account (#793)
* Add validation method for RFC1035 names
2017-11-27 17:58:11 -08:00
Vincent Roseberry
f441685699
Update CHANGELOG.md 2017-11-27 16:32:51 -08:00
Vincent Roseberry
6c5d6b72e0
Store project and region in state (#784)
* Store project and region in state

* Delete unused project in runtimeconfig_variable
2017-11-27 16:32:20 -08:00
Vincent Roseberry
9930daa2af
Always use a function to create a test config (#785) 2017-11-27 16:32:00 -08:00
Vincent Roseberry
9791dad88e
Update CHANGELOG.md 2017-11-27 16:25:37 -08:00
Vincent Roseberry
a9fd5fddcb
Detect changes to cloud storage object when using source field. (#789)
* Detect server or local changes to bucket object when using source field

* Improve tests by removing global err and tf vars

* Address Dana's comments
2017-11-27 16:25:32 -08:00
Dana Hoffman
4794245a1e
Update CHANGELOG.md 2017-11-27 15:15:26 -08:00
David Quarles
d57db91143 add support for ip aliasing in google_container_cluster (#654)
* add support for ip aliasing in `google_container_cluster`

* [review] cleanup galore, infer feature enablement from `ip_allocation_policy`

* [review] cleanup, round 2

* add nil check back (when reading ip allocation policy from API)
2017-11-27 18:15:03 -05:00
Vincent Roseberry
96726bdc48
Update CHANGELOG.md 2017-11-27 14:53:55 -08:00
Vincent Roseberry
10f764aa9b
Add new resource google_folder_organization_policy (#747)
* Add new resource google_folder_organization_policy
* Add documentation
2017-11-27 14:53:01 -08:00
Dana Hoffman
c69fc07a6d
Update CHANGELOG.md 2017-11-27 12:40:41 -08:00
Sébastien GLON
39f22ef924 [WIP] Add container cluster network policy addon (#630)
* replalce TypeList by TypeSet

* Add network policy

* test improvement

* correct test

* Add cluster network polocy enabled

* Replalce network_policy addons by global network_policy enabled

* Update node_config.go

* Update resource_container_cluster.go

* clean

* clean

* Correct PR

* COrrect PR

* pr

* fix test to use same name

* add more documentation
2017-11-27 15:40:07 -05:00
Vincent Roseberry
40c20047b1
Revert "Added support for updating a cloud storage object using source field (#362)" (#787)
This reverts commit 5ba87f3d9e.
2017-11-24 11:10:58 -08:00
Rodrigue Cloutier
5ba87f3d9e Added support for updating a cloud storage object using source field (#362) 2017-11-24 10:25:53 -08:00
Vincent Roseberry
e15e7742bf
Update CHANGELOG.md 2017-11-23 11:28:21 -08:00
James Turley
6f4a7926ba IAM resources for KMS KeyRIng and CryptoKey (#781)
* Add IAM bindings and member resources for KMS KeyRings

* Add IAM bindings and member resources for KMS CryptoKeys

* Docs for key ring and crypto key IAM resources

* Exctract KMS policy conversions to helper functions

* Split iam_binding and iam_member tests for KMS

* Docs for kms IAM member resources

* Run KMS IAM tests in own project
2017-11-23 11:26:43 -08:00
Dana Hoffman
7a080b83b4
Update CHANGELOG.md 2017-11-21 15:07:26 -08:00
James McGill
ca545e2171 Set UseLegacySql to true for compatibility with the BigQuery API (#724)
* Set UseLegacySql to true for compatibility with the BigQuery API

* make gofmt happy
2017-11-21 15:06:59 -08:00
Vincent Roseberry
ac0948e7d6
Refactored authoritative IAM policy logic to be reusable (#776) 2017-11-21 14:58:02 -08:00
Vincent Roseberry
db4273652d
Update CHANGELOG.md 2017-11-21 14:32:34 -08:00
Vincent Roseberry
e70d1fc44b
Add IAM binding and member support for organizations (#775) 2017-11-21 14:30:48 -08:00
Vincent Roseberry
fdfa9a5eb0
Fix Iam Binding to not rely on project specific code (#774) 2017-11-21 13:00:05 -08:00
Dana Hoffman
a2a0c304ec
Update CHANGELOG.md 2017-11-21 12:57:02 -08:00
David Quarles
34297fe478 Add support for google_container_node_pool management (#669)
* add support for `google_container_node_pool` management (sans-tests)

* [review] add tests, docs, general cleanup

* add docs

* [review] amend test to check updates and terraform fmt

* test updates, make nested management fields non-computed
2017-11-21 12:56:29 -08:00
Dana Hoffman
9aeb58ecaf
add docs for bigquery views (#771) 2017-11-21 09:53:03 -08:00
Dana Hoffman
7a8bfe9218
Update CHANGELOG.md 2017-11-21 09:38:01 -08:00
Vincent Roseberry
0c0caee7ba
Standardize on test env var for region, creds and project (#770) 2017-11-21 09:34:32 -08:00
Nicki Watt
68f7d775c3 Add google_dataproc_job resource (#253)
* Add google_dataproc_job resource

* Correct state ref in docs

* make tests parallel

* cleanup, mostly whitespace related

* docs fmt
2017-11-21 09:32:43 -08:00
Vincent Roseberry
1859c558fe
Refactor project iam binding and member resources to improve reusability (#744)
* Refactor project iam binding and member resources to improve reusability
* Use default mask when updating project iam policy
* Add a doc comment for the ResourceIamUpdater interface
2017-11-20 17:01:39 -08:00
Vincent Roseberry
75a633cf28
Mention support for all protocols in firewall (#769)
Fixes #750
2017-11-20 16:39:37 -08:00
Vincent Roseberry
3a945770e5
Get test org and billing account in a consistent way (#766) 2017-11-20 15:45:51 -08:00
Vincent Roseberry
6dbe1f3313
Update CHANGELOG.md 2017-11-20 15:39:00 -08:00
Vincent Roseberry
454384fc70
All beta fields in compute firewall are GA (#768)
* Upgrade compute v1 client
* Upgrade gensupport
* Use v1 API now that all beta features are in GA for `google_compute_firewall`
2017-11-20 15:38:47 -08:00
Vincent Roseberry
7e0da698d9
Update CHANGELOG.md 2017-11-17 11:23:21 -08:00
thomas
8ee14c4424 Add the "google_compute_global_address" datasource (#759)
* Add the "compute_global_address" datasource

* Add a basic test for the "compute_global_address" datasource

* Include the "compute_global_address" in the provider

* Add docs for the "compute_global_address" datasource
2017-11-17 11:22:37 -08:00
thomas
ecdb1de297 the XPN_* env. variable is no longer mandatory (#760)
Since this variable is only used for 3 tests, it doesn't make sense
to declare it as mandatory in the test config. Therefore, concerned tests
are now skipped if the variable is absent.
2017-11-17 10:32:46 -08:00
Vincent Roseberry
aa63af1fc3
Add documentation for import in google_folder_organization_policy (#746)
* Remove import support for org policy

* Add ForceNew to org_id field

* Revert "Remove import support for org policy"

This reverts commit f65d9fb347d6b0998be55ef823c5726e876c53ae.

* Add import documentation for google_organization_policy
2017-11-17 09:24:48 -08:00
Dana Hoffman
17ea5ea970
Update CHANGELOG.md 2017-11-16 17:39:10 -08:00
Johannes Brüderl
7a9582ac00 allow node pools with size 0 (#752) 2017-11-16 17:38:42 -08:00
Dana Hoffman
451b9cb6b6
fix target pool import test (#755) 2017-11-16 15:07:14 -08:00
Vincent Roseberry
5bcd7cb921
Push expiration time values in acc test farther in the future (#754) 2017-11-16 11:01:05 -08:00
Dana Hoffman
8fa1178814
compare next hop by self link (#753) 2017-11-16 10:53:49 -08:00
Dana Hoffman
b7177e04c8
Delete encryptor-pod.yml (#749)
Somehow this snuck in to #692 but it doesn't look like it's actually used anywhere.
2017-11-16 09:50:58 -08:00
Vincent Roseberry
c1ca4eae24
Update CHANGELOG.md 2017-11-16 09:17:39 -08:00
thomas
06140c553a Add the "google_compute_address" datasource (#748)
* Add the "compute_address" datasource

* Add a basic test for the "compute_address" datasource

* Include the "compute_address" datasource in the provider

* Add the documentation for the "compute_address" datasource
2017-11-16 09:16:52 -08:00
Vincent Roseberry
fcc5a1cd77
Add menu link to datasource google_active_folder (#745) 2017-11-15 16:00:15 -08:00