terraform-provider-google/google/data_source_google_compute_backend_service.go
Benjamin Pineau f65127585a Datasource for Backend Services (#1150)
Exposes existing `google_compute_backend_service` as data sources.
This addresses #149 .

This allows, for instance, to collect a backend service's self_link and
use it from an other workspace/tfstate, sharing most of the
loadbalancers definition.
2018-03-12 15:09:30 -07:00

29 lines
700 B
Go

package google
import (
"github.com/hashicorp/terraform/helper/schema"
)
func dataSourceGoogleComputeBackendService() *schema.Resource {
dsSchema := datasourceSchemaFromResourceSchema(resourceComputeBackendService().Schema)
// Set 'Required' schema elements
addRequiredFieldsToSchema(dsSchema, "name")
// Set 'Optional' schema elements
addOptionalFieldsToSchema(dsSchema, "project")
return &schema.Resource{
Read: dataSourceComputeBackendServiceRead,
Schema: dsSchema,
}
}
func dataSourceComputeBackendServiceRead(d *schema.ResourceData, meta interface{}) error {
serviceName := d.Get("name").(string)
d.SetId(serviceName)
return resourceComputeBackendServiceRead(d, meta)
}