terraform-provider-google/website/docs/r/compute_instance_from_template.html.markdown
The Magician 5c925718d1 012 instance from template (#3434)
Signed-off-by: Modular Magician <magic-modules@google.com>
2019-04-15 14:21:24 -07:00

2.5 KiB

layout page_title sidebar_current description
google Google: google_compute_instance_from_template docs-google-compute-instance-from-template Manages a VM instance resource within GCE.

google_compute_instance_from_template

Manages a VM instance resource within GCE. For more information see the official documentation and API.

This resource is specifically to create a compute instance from a given source_instance_template. To create an instance without a template, use the google_compute_instance resource.

Example Usage

resource "google_compute_instance_template" "tpl" {
  name = "template"
  machine_type = "n1-standard-1"

  disk {
    source_image = "debian-cloud/debian-9"
    auto_delete = true
    disk_size_gb = 100
    boot = true
  }

  network_interface {
    network = "default"
  }

  metadata = {
    foo = "bar"
  }

  can_ip_forward = true
}

resource "google_compute_instance_from_template" "tpl" {
  name           = "instance-from-template"
  zone           = "us-central1-a"

  source_instance_template = "${google_compute_instance_template.tpl.self_link}"

  // Override fields from instance template
  can_ip_forward = false
  labels = {
    my_key       = "my_value"
  }
}

Argument Reference

The following arguments are supported:

  • name - (Required) A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

  • source_instance_template - (Required) Name or self link of an instance template to create the instance based on.


  • zone - (Optional) The zone that the machine should be created in. If not set, the provider zone is used.

In addition to these, all arguments from google_compute_instance are supported as a way to override the properties in the template. All exported attributes from google_compute_instance are likewise exported here.

To support removal of Optional/Computed fields in Terraform 0.12 the following fields are marked Attributes as Blocks:

  • attached_disk
  • guest_accelerator
  • service_account
  • scratch_disk
  • network_interface.alias_ip_range
  • network_interface.access_config

Timeouts

This resource provides the following Timeouts configuration options:

  • create - Default is 6 minutes.
  • update - Default is 6 minutes.
  • delete - Default is 6 minutes.