Skip to content
This repository has been archived by the owner on May 15, 2023. It is now read-only.

Commit

Permalink
Add support for google_compute_ssl_policy (#5486) (#407)
Browse files Browse the repository at this point in the history
* Add a resource mapping for google_compute_ssl_policy

* add test data files

Signed-off-by: Modular Magician <magic-modules@google.com>
  • Loading branch information
modular-magician authored Nov 24, 2021
1 parent 4e2b4d5 commit 4d31a15
Show file tree
Hide file tree
Showing 6 changed files with 183 additions and 0 deletions.
1 change: 1 addition & 0 deletions converters/google/resources/resource_converters.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ func ResourceConverters() map[string][]ResourceConverter {
"google_compute_network": {resourceConverterComputeNetwork()},
"google_compute_snapshot": {resourceConverterComputeSnapshot()},
"google_compute_subnetwork": {resourceConverterComputeSubnetwork()},
"google_compute_ssl_policy": {resourceConverterComputeSslPolicy()},
"google_dns_managed_zone": {resourceConverterDNSManagedZone()},
"google_storage_bucket": {resourceConverterStorageBucket()},
"google_sql_database_instance": {resourceConverterSQLDatabaseInstance()},
Expand Down
1 change: 1 addition & 0 deletions test/cli_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ func TestCLI(t *testing.T) {
{name: "example_compute_global_forwarding_rule"},
{name: "example_compute_network"},
{name: "example_compute_snapshot"},
{name: "example_compute_ssl_policy"},
{name: "example_compute_subnetwork"},
{name: "example_container_cluster"},
{name: "example_dns_managed_zone"},
Expand Down
1 change: 1 addition & 0 deletions test/read_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ func TestReadPlannedAssetsCoverage(t *testing.T) {
{name: "example_compute_global_forwarding_rule"},
{name: "example_compute_network"},
{name: "example_compute_snapshot"},
{name: "example_compute_ssl_policy"},
{name: "example_compute_subnetwork"},
{name: "example_container_cluster"},
{name: "example_dns_managed_zone"},
Expand Down
22 changes: 22 additions & 0 deletions testdata/templates/example_compute_ssl_policy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
[
{
"name": "//compute.googleapis.com/projects/{{.Provider.project}}/global/sslPolicies/custom-ssl-policy",
"asset_type": "compute.googleapis.com/SslPolicy",
"ancestry_path": "{{.Ancestry}}/project/{{.Provider.project}}",
"resource": {
"version": "v1",
"discovery_document_uri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest",
"discovery_name": "SslPolicy",
"parent": "//cloudresourcemanager.googleapis.com/projects/{{.Provider.project}}",
"data": {
"customFeatures": [
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
],
"minTlsVersion": "TLS_1_2",
"name": "custom-ssl-policy",
"profile": "CUSTOM"
}
}
}
]
35 changes: 35 additions & 0 deletions testdata/templates/example_compute_ssl_policy.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
/**
* Copyright 2021 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

terraform {
required_providers {
google = {
source = "hashicorp/google"
version = "~> {{.Provider.version}}"
}
}
}

provider "google" {
{{if .Provider.credentials }}credentials = "{{.Provider.credentials}}"{{end}}
}

resource "google_compute_ssl_policy" "custom-ssl-policy" {
name = "custom-ssl-policy"
min_tls_version = "TLS_1_2"
profile = "CUSTOM"
custom_features = ["TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"]
}
123 changes: 123 additions & 0 deletions testdata/templates/example_compute_ssl_policy.tfplan.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
{
"format_version": "0.2",
"terraform_version": "1.0.10",
"planned_values": {
"root_module": {
"resources": [
{
"address": "google_compute_ssl_policy.custom-ssl-policy",
"mode": "managed",
"type": "google_compute_ssl_policy",
"name": "custom-ssl-policy",
"provider_name": "registry.terraform.io/hashicorp/google",
"schema_version": 0,
"values": {
"custom_features": [
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
],
"description": null,
"min_tls_version": "TLS_1_2",
"name": "custom-ssl-policy",
"profile": "CUSTOM",
"timeouts": null
},
"sensitive_values": {
"custom_features": [
false,
false
],
"enabled_features": []
}
}
]
}
},
"resource_changes": [
{
"address": "google_compute_ssl_policy.custom-ssl-policy",
"mode": "managed",
"type": "google_compute_ssl_policy",
"name": "custom-ssl-policy",
"provider_name": "registry.terraform.io/hashicorp/google",
"change": {
"actions": [
"create"
],
"before": null,
"after": {
"custom_features": [
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
],
"description": null,
"min_tls_version": "TLS_1_2",
"name": "custom-ssl-policy",
"profile": "CUSTOM",
"timeouts": null
},
"after_unknown": {
"creation_timestamp": true,
"custom_features": [
false,
false
],
"enabled_features": true,
"fingerprint": true,
"id": true,
"project": true,
"self_link": true
},
"before_sensitive": false,
"after_sensitive": {
"custom_features": [
false,
false
],
"enabled_features": []
}
}
}
],
"configuration": {
"provider_config": {
"google": {
"name": "google",
"expressions": {
"project": {
"constant_value": "{{.Provider.project}}"
}
}
}
},
"root_module": {
"resources": [
{
"address": "google_compute_ssl_policy.custom-ssl-policy",
"mode": "managed",
"type": "google_compute_ssl_policy",
"name": "custom-ssl-policy",
"provider_config_key": "google",
"expressions": {
"custom_features": {
"constant_value": [
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
]
},
"min_tls_version": {
"constant_value": "TLS_1_2"
},
"name": {
"constant_value": "custom-ssl-policy"
},
"profile": {
"constant_value": "CUSTOM"
}
},
"schema_version": 0
}
]
}
}
}

0 comments on commit 4d31a15

Please sign in to comment.