diff --git a/google/resource_compute_global_address.go b/google/resource_compute_global_address.go index 49214216..1b867011 100644 --- a/google/resource_compute_global_address.go +++ b/google/resource_compute_global_address.go @@ -46,6 +46,12 @@ func resourceComputeGlobalAddress() *schema.Resource { Required: true, ForceNew: true, }, + "address": { + Type: schema.TypeString, + Computed: true, + Optional: true, + ForceNew: true, + }, "address_type": { Type: schema.TypeString, Optional: true, @@ -66,10 +72,6 @@ func resourceComputeGlobalAddress() *schema.Resource { ValidateFunc: validation.StringInSlice([]string{"IPV4", "IPV6", ""}, false), DiffSuppressFunc: emptyOrDefaultStringSuppress("IPV4"), }, - "address": { - Type: schema.TypeString, - Computed: true, - }, "creation_timestamp": { Type: schema.TypeString, Computed: true, @@ -92,6 +94,12 @@ func resourceComputeGlobalAddressCreate(d *schema.ResourceData, meta interface{} config := meta.(*Config) obj := make(map[string]interface{}) + addressProp, err := expandComputeGlobalAddressAddress(d.Get("address"), d, config) + if err != nil { + return err + } else if v, ok := d.GetOkExists("address"); !isEmptyValue(reflect.ValueOf(addressProp)) && (ok || !reflect.DeepEqual(v, addressProp)) { + obj["address"] = addressProp + } descriptionProp, err := expandComputeGlobalAddressDescription(d.Get("description"), d, config) if err != nil { return err @@ -281,6 +289,10 @@ func flattenComputeGlobalAddressAddressType(v interface{}, d *schema.ResourceDat return v } +func expandComputeGlobalAddressAddress(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { + return v, nil +} + func expandComputeGlobalAddressDescription(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { return v, nil } diff --git a/website/docs/r/compute_global_address.html.markdown b/website/docs/r/compute_global_address.html.markdown index 4cbb85d2..aea6f7de 100644 --- a/website/docs/r/compute_global_address.html.markdown +++ b/website/docs/r/compute_global_address.html.markdown @@ -64,6 +64,10 @@ The following arguments are supported: - - - +* `address` - + (Optional) + The static external IP address represented by this resource. + * `description` - (Optional) An optional description of this resource. @@ -88,9 +92,6 @@ The following arguments are supported: In addition to the arguments listed above, the following computed attributes are exported: -* `address` - - The static external IP address represented by this resource. - * `creation_timestamp` - Creation timestamp in RFC3339 text format. * `self_link` - The URI of the created resource.