tfplan2cai/converters/google/resources/services/resourcemanager3/resourcemanager3_capability.go (47 lines of code) (raw):
// ----------------------------------------------------------------------------
//
// *** AUTO GENERATED CODE *** Type: MMv1 ***
//
// ----------------------------------------------------------------------------
//
// This code is generated by Magic Modules using the following:
//
// Configuration: https://github.com/GoogleCloudPlatform/magic-modules/tree/main/mmv1/products/resourcemanager3/Capability.yaml
// Template: https://github.com/GoogleCloudPlatform/magic-modules/tree/main/mmv1/templates/tgc/resource_converter.go.tmpl
//
// DO NOT EDIT this file directly. Any changes made to this file will be
// overwritten during the next generation cycle.
//
// ----------------------------------------------------------------------------
package resourcemanager3
import (
"reflect"
"github.com/GoogleCloudPlatform/terraform-google-conversion/v6/tfplan2cai/converters/google/resources/cai"
"github.com/hashicorp/terraform-provider-google-beta/google-beta/tpgresource"
transport_tpg "github.com/hashicorp/terraform-provider-google-beta/google-beta/transport"
)
const ResourceManager3CapabilityAssetType string = "cloudresourcemanager.googleapis.com/Capability"
func ResourceConverterResourceManager3Capability() cai.ResourceConverter {
return cai.ResourceConverter{
AssetType: ResourceManager3CapabilityAssetType,
Convert: GetResourceManager3CapabilityCaiObject,
}
}
func GetResourceManager3CapabilityCaiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) ([]cai.Asset, error) {
name, err := cai.AssetName(d, config, "//cloudresourcemanager.googleapis.com/{{parent}}/capabilities/{{capability_name}}")
if err != nil {
return []cai.Asset{}, err
}
if obj, err := GetResourceManager3CapabilityApiObject(d, config); err == nil {
return []cai.Asset{{
Name: name,
Type: ResourceManager3CapabilityAssetType,
Resource: &cai.AssetResource{
Version: "v3",
DiscoveryDocumentURI: "https://www.googleapis.com/discovery/v1/apis/cloudresourcemanager/v3/rest",
DiscoveryName: "Capability",
Data: obj,
},
}}, nil
} else {
return []cai.Asset{}, err
}
}
func GetResourceManager3CapabilityApiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]interface{}, error) {
obj := make(map[string]interface{})
valueProp, err := expandResourceManager3CapabilityValue(d.Get("value"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("value"); !tpgresource.IsEmptyValue(reflect.ValueOf(valueProp)) && (ok || !reflect.DeepEqual(v, valueProp)) {
obj["value"] = valueProp
}
return obj, nil
}
func expandResourceManager3CapabilityValue(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}