oci_core_instance_configuration

This resource provides the Instance Configuration resource in Oracle Cloud Infrastructure Core service.

Creates an instance configuration. An instance configuration is a template that defines the settings to use when creating Compute instances.

Example Usage

resource "oci_core_instance_configuration" "test_instance_configuration" {
	#Required
	compartment_id = var.compartment_id

	#Optional
	defined_tags = {"Operations.CostCenter"= "42"}
	display_name = var.instance_configuration_display_name
	freeform_tags = {"Department"= "Finance"}
	instance_details {
		#Required
		instance_type = var.instance_configuration_instance_details_instance_type

		#Optional
		block_volumes {

			#Optional
			attach_details {
				#Required
				type = var.instance_configuration_instance_details_block_volumes_attach_details_type

				#Optional
				device = var.instance_configuration_instance_details_block_volumes_attach_details_device
				display_name = var.instance_configuration_instance_details_block_volumes_attach_details_display_name
				is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_block_volumes_attach_details_is_pv_encryption_in_transit_enabled
				is_read_only = var.instance_configuration_instance_details_block_volumes_attach_details_is_read_only
				is_shareable = var.instance_configuration_instance_details_block_volumes_attach_details_is_shareable
				use_chap = var.instance_configuration_instance_details_block_volumes_attach_details_use_chap
			}
			create_details {

				#Optional
				autotune_policies {
					#Required
					autotune_type = var.instance_configuration_instance_details_block_volumes_create_details_autotune_policies_autotune_type

					#Optional
					max_vpus_per_gb = var.instance_configuration_instance_details_block_volumes_create_details_autotune_policies_max_vpus_per_gb
				}
				availability_domain = var.instance_configuration_instance_details_block_volumes_create_details_availability_domain
				backup_policy_id = data.oci_core_volume_backup_policies.test_volume_backup_policies.volume_backup_policies.0.id
				block_volume_replicas {
					#Required
					availability_domain = var.instance_configuration_instance_details_block_volumes_create_details_block_volume_replicas_availability_domain

					#Optional
					display_name = var.instance_configuration_instance_details_block_volumes_create_details_block_volume_replicas_display_name
				}
				cluster_placement_group_id = var.cluster_placement_group_id
				compartment_id = var.compartment_id
				defined_tags = {"Operations.CostCenter"= "42"}
				display_name = var.instance_configuration_instance_details_block_volumes_create_details_display_name
				freeform_tags = {"Department"= "Finance"}
				is_auto_tune_enabled = var.instance_configuration_instance_details_block_volumes_create_details_is_auto_tune_enabled
				kms_key_id = oci_kms_key.test_key.id
				size_in_gbs = var.instance_configuration_instance_details_block_volumes_create_details_size_in_gbs
				source_details {
					#Required
					type = var.instance_configuration_instance_details_block_volumes_create_details_source_details_type

					#Optional
					id = var.instance_configuration_instance_details_block_volumes_create_details_source_details_id
				}
				vpus_per_gb = var.instance_configuration_instance_details_block_volumes_create_details_vpus_per_gb
				xrc_kms_key_id = oci_kms_key.test_key.id
			}
			volume_id = oci_core_volume.test_volume.id
		}
		launch_details {

			#Optional
			agent_config {

				#Optional
				are_all_plugins_disabled = var.instance_configuration_instance_details_launch_details_agent_config_are_all_plugins_disabled
				is_management_disabled = var.instance_configuration_instance_details_launch_details_agent_config_is_management_disabled
				is_monitoring_disabled = var.instance_configuration_instance_details_launch_details_agent_config_is_monitoring_disabled
				plugins_config {

					#Optional
					desired_state = var.instance_configuration_instance_details_launch_details_agent_config_plugins_config_desired_state
					name = var.instance_configuration_instance_details_launch_details_agent_config_plugins_config_name
				}
			}
			availability_config {

				#Optional
				is_live_migration_preferred = var.instance_configuration_instance_details_launch_details_availability_config_is_live_migration_preferred
				recovery_action = var.instance_configuration_instance_details_launch_details_availability_config_recovery_action
			}
			availability_domain = var.instance_configuration_instance_details_launch_details_availability_domain
			capacity_reservation_id = oci_core_capacity_reservation.test_capacity_reservation.id
			cluster_placement_group_id = oci_identity_group.test_group.id
			compartment_id = var.compartment_id
			create_vnic_details {

				#Optional
				assign_ipv6ip = var.instance_configuration_instance_details_launch_details_create_vnic_details_assign_ipv6ip
				assign_private_dns_record = var.instance_configuration_instance_details_launch_details_create_vnic_details_assign_private_dns_record
				assign_public_ip = var.instance_configuration_instance_details_launch_details_create_vnic_details_assign_public_ip
				defined_tags = {"Operations.CostCenter"= "42"}
				display_name = var.instance_configuration_instance_details_launch_details_create_vnic_details_display_name
				freeform_tags = {"Department"= "Finance"}
				hostname_label = var.instance_configuration_instance_details_launch_details_create_vnic_details_hostname_label
				ipv6address_ipv6subnet_cidr_pair_details {

					#Optional
					ipv6address = var.instance_configuration_instance_details_launch_details_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6address
					ipv6subnet_cidr = var.instance_configuration_instance_details_launch_details_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6subnet_cidr
				}				
				nsg_ids = var.instance_configuration_instance_details_launch_details_create_vnic_details_nsg_ids
				private_ip = var.instance_configuration_instance_details_launch_details_create_vnic_details_private_ip
				security_attributes = var.instance_configuration_instance_details_launch_details_create_vnic_details_security_attributes
				skip_source_dest_check = var.instance_configuration_instance_details_launch_details_create_vnic_details_skip_source_dest_check
				subnet_id = oci_core_subnet.test_subnet.id
			}
			dedicated_vm_host_id = oci_core_dedicated_vm_host.test_dedicated_vm_host.id
			defined_tags = {"Operations.CostCenter"= "42"}
			display_name = var.instance_configuration_instance_details_launch_details_display_name
			extended_metadata = var.instance_configuration_instance_details_launch_details_extended_metadata
			fault_domain = var.instance_configuration_instance_details_launch_details_fault_domain
			freeform_tags = {"Department"= "Finance"}
			instance_options {

				#Optional
				are_legacy_imds_endpoints_disabled = var.instance_configuration_instance_details_launch_details_instance_options_are_legacy_imds_endpoints_disabled
			}
			ipxe_script = var.instance_configuration_instance_details_launch_details_ipxe_script
			is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_launch_details_is_pv_encryption_in_transit_enabled
			launch_mode = var.instance_configuration_instance_details_launch_details_launch_mode
			launch_options {

				#Optional
				boot_volume_type = var.instance_configuration_instance_details_launch_details_launch_options_boot_volume_type
				firmware = var.instance_configuration_instance_details_launch_details_launch_options_firmware
				is_consistent_volume_naming_enabled = var.instance_configuration_instance_details_launch_details_launch_options_is_consistent_volume_naming_enabled
				is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_launch_details_launch_options_is_pv_encryption_in_transit_enabled
				network_type = var.instance_configuration_instance_details_launch_details_launch_options_network_type
				remote_data_volume_type = var.instance_configuration_instance_details_launch_details_launch_options_remote_data_volume_type
			}
			metadata = var.instance_configuration_instance_details_launch_details_metadata
			platform_config {
				#Required
				type = var.instance_configuration_instance_details_launch_details_platform_config_type

				#Optional
				are_virtual_instructions_enabled = var.instance_configuration_instance_details_launch_details_platform_config_are_virtual_instructions_enabled
				config_map = var.instance_configuration_instance_details_launch_details_platform_config_config_map
				is_access_control_service_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_access_control_service_enabled
				is_input_output_memory_management_unit_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_input_output_memory_management_unit_enabled
				is_measured_boot_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_measured_boot_enabled
				is_memory_encryption_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_memory_encryption_enabled
				is_secure_boot_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_secure_boot_enabled
				is_symmetric_multi_threading_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_symmetric_multi_threading_enabled
				is_trusted_platform_module_enabled = var.instance_configuration_instance_details_launch_details_platform_config_is_trusted_platform_module_enabled
				numa_nodes_per_socket = var.instance_configuration_instance_details_launch_details_platform_config_numa_nodes_per_socket
				percentage_of_cores_enabled = var.instance_configuration_instance_details_launch_details_platform_config_percentage_of_cores_enabled
			}
			preemptible_instance_config {

				#Optional
				preemption_action {
					#Required
					type = var.instance_configuration_instance_details_launch_details_preemptible_instance_config_preemption_action_type

					#Optional
					preserve_boot_volume = var.instance_configuration_instance_details_launch_details_preemptible_instance_config_preemption_action_preserve_boot_volume
				}
			}
			preferred_maintenance_action = var.instance_configuration_instance_details_launch_details_preferred_maintenance_action
			security_attributes = var.instance_configuration_instance_details_launch_details_security_attributes
			shape = var.instance_configuration_instance_details_launch_details_shape
			shape_config {

				#Optional
				baseline_ocpu_utilization = var.instance_configuration_instance_details_launch_details_shape_config_baseline_ocpu_utilization
				memory_in_gbs = var.instance_configuration_instance_details_launch_details_shape_config_memory_in_gbs
				nvmes = var.instance_configuration_instance_details_launch_details_shape_config_nvmes
				ocpus = var.instance_configuration_instance_details_launch_details_shape_config_ocpus
				vcpus = var.instance_configuration_instance_details_launch_details_shape_config_vcpus
			}
			source_details {
				#Required
				source_type = var.instance_configuration_instance_details_launch_details_source_details_source_type

				#Optional
				boot_volume_id = oci_core_boot_volume.test_boot_volume.id
				boot_volume_size_in_gbs = var.instance_configuration_instance_details_launch_details_source_details_boot_volume_size_in_gbs
				boot_volume_vpus_per_gb = var.instance_configuration_instance_details_launch_details_source_details_boot_volume_vpus_per_gb
				image_id = oci_core_image.test_image.id
				kms_key_id = oci_kms_key.test_key.id
				instance_source_image_filter_details {

					#Optional
					compartment_id = var.compartment_id
					defined_tags_filter = var.instance_configuration_instance_details_launch_details_source_details_instance_source_image_filter_details_defined_tags_filter
					operating_system = var.instance_configuration_instance_details_launch_details_source_details_instance_source_image_filter_details_operating_system
					operating_system_version = var.instance_configuration_instance_details_launch_details_source_details_instance_source_image_filter_details_operating_system_version
				}
			}
		}
		options {

			#Optional
			block_volumes {

				#Optional
				attach_details {
					#Required
					type = var.instance_configuration_instance_details_options_block_volumes_attach_details_type

					#Optional
					device = var.instance_configuration_instance_details_options_block_volumes_attach_details_device
					display_name = var.instance_configuration_instance_details_options_block_volumes_attach_details_display_name
					is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_options_block_volumes_attach_details_is_pv_encryption_in_transit_enabled
					is_read_only = var.instance_configuration_instance_details_options_block_volumes_attach_details_is_read_only
					is_shareable = var.instance_configuration_instance_details_options_block_volumes_attach_details_is_shareable
					use_chap = var.instance_configuration_instance_details_options_block_volumes_attach_details_use_chap
				}
				create_details {

					#Optional
					autotune_policies {
						#Required
						autotune_type = var.instance_configuration_instance_details_options_block_volumes_create_details_autotune_policies_autotune_type

						#Optional
						max_vpus_per_gb = var.instance_configuration_instance_details_options_block_volumes_create_details_autotune_policies_max_vpus_per_gb
					}
					availability_domain = var.instance_configuration_instance_details_options_block_volumes_create_details_availability_domain
					backup_policy_id = data.oci_core_volume_backup_policies.test_volume_backup_policies.volume_backup_policies.0.id
					cluster_placement_group_id = var.cluster_placement_group_id
					compartment_id = var.compartment_id
					defined_tags = {"Operations.CostCenter"= "42"}
					display_name = var.instance_configuration_instance_details_options_block_volumes_create_details_display_name
					freeform_tags = {"Department"= "Finance"}
					kms_key_id = oci_kms_key.test_key.id
					size_in_gbs = var.instance_configuration_instance_details_options_block_volumes_create_details_size_in_gbs
					source_details {
						#Required
						type = var.instance_configuration_instance_details_options_block_volumes_create_details_source_details_type

						#Optional
						id = var.instance_configuration_instance_details_options_block_volumes_create_details_source_details_id
					}
					vpus_per_gb = var.instance_configuration_instance_details_options_block_volumes_create_details_vpus_per_gb
					xrc_kms_key_id = oci_kms_key.test_key.id
				}
				volume_id = oci_core_volume.test_volume.id
			}
			launch_details {

				#Optional
				agent_config {

					#Optional
					are_all_plugins_disabled = var.instance_configuration_instance_details_options_launch_details_agent_config_are_all_plugins_disabled
					is_management_disabled = var.instance_configuration_instance_details_options_launch_details_agent_config_is_management_disabled
					is_monitoring_disabled = var.instance_configuration_instance_details_options_launch_details_agent_config_is_monitoring_disabled
					plugins_config {

						#Optional
						desired_state = var.instance_configuration_instance_details_options_launch_details_agent_config_plugins_config_desired_state
						name = var.instance_configuration_instance_details_options_launch_details_agent_config_plugins_config_name
					}
				}
				availability_config {

					#Optional
					recovery_action = var.instance_configuration_instance_details_options_launch_details_availability_config_recovery_action
				}
				availability_domain = var.instance_configuration_instance_details_options_launch_details_availability_domain
				capacity_reservation_id = oci_core_capacity_reservation.test_capacity_reservation.id
				cluster_placement_group_id = oci_identity_group.test_group.id
				compartment_id = var.compartment_id
				create_vnic_details {

					#Optional
					assign_ipv6ip = var.instance_configuration_instance_details_launch_details_create_vnic_details_assign_ipv6ip
					assign_private_dns_record = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_assign_private_dns_record
					assign_public_ip = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_assign_public_ip
					defined_tags = {"Operations.CostCenter"= "42"}
					display_name = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_display_name
					freeform_tags = {"Department"= "Finance"}
					hostname_label = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_hostname_label
					ipv6address_ipv6subnet_cidr_pair_details {

						#Optional
						ipv6address = var.instance_configuration_instance_details_launch_details_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6address
						ipv6subnet_cidr = var.instance_configuration_instance_details_launch_details_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6subnet_cidr
					}
					nsg_ids = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_nsg_ids
					private_ip = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_private_ip
					security_attributes = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_security_attributes
					skip_source_dest_check = var.instance_configuration_instance_details_options_launch_details_create_vnic_details_skip_source_dest_check
					subnet_id = oci_core_subnet.test_subnet.id
				}
				dedicated_vm_host_id = oci_core_dedicated_vm_host.test_dedicated_vm_host.id
				defined_tags = {"Operations.CostCenter"= "42"}
				display_name = var.instance_configuration_instance_details_options_launch_details_display_name
				extended_metadata = var.instance_configuration_instance_details_options_launch_details_extended_metadata
				fault_domain = var.instance_configuration_instance_details_options_launch_details_fault_domain
				freeform_tags = {"Department"= "Finance"}
				instance_options {

					#Optional
					are_legacy_imds_endpoints_disabled = var.instance_configuration_instance_details_options_launch_details_instance_options_are_legacy_imds_endpoints_disabled
				}
				ipxe_script = var.instance_configuration_instance_details_options_launch_details_ipxe_script
				is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_options_launch_details_is_pv_encryption_in_transit_enabled
				launch_mode = var.instance_configuration_instance_details_options_launch_details_launch_mode
				launch_options {

					#Optional
					boot_volume_type = var.instance_configuration_instance_details_options_launch_details_launch_options_boot_volume_type
					firmware = var.instance_configuration_instance_details_options_launch_details_launch_options_firmware
					is_consistent_volume_naming_enabled = var.instance_configuration_instance_details_options_launch_details_launch_options_is_consistent_volume_naming_enabled
					is_pv_encryption_in_transit_enabled = var.instance_configuration_instance_details_options_launch_details_launch_options_is_pv_encryption_in_transit_enabled
					network_type = var.instance_configuration_instance_details_options_launch_details_launch_options_network_type
					remote_data_volume_type = var.instance_configuration_instance_details_options_launch_details_launch_options_remote_data_volume_type
				}
				metadata = var.instance_configuration_instance_details_options_launch_details_metadata
				platform_config {
					#Required
					type = var.instance_configuration_instance_details_options_launch_details_platform_config_type

					#Optional
					are_virtual_instructions_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_are_virtual_instructions_enabled
					is_access_control_service_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_access_control_service_enabled
					is_input_output_memory_management_unit_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_input_output_memory_management_unit_enabled
					is_measured_boot_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_measured_boot_enabled
					is_memory_encryption_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_memory_encryption_enabled
					is_secure_boot_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_secure_boot_enabled
					is_symmetric_multi_threading_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_symmetric_multi_threading_enabled
					is_trusted_platform_module_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_is_trusted_platform_module_enabled
					numa_nodes_per_socket = var.instance_configuration_instance_details_options_launch_details_platform_config_numa_nodes_per_socket
					percentage_of_cores_enabled = var.instance_configuration_instance_details_options_launch_details_platform_config_percentage_of_cores_enabled
				}
				preemptible_instance_config {

					#Optional
					preemption_action {
						#Required
						type = var.instance_configuration_instance_details_options_launch_details_preemptible_instance_config_preemption_action_type

						#Optional
						preserve_boot_volume = var.instance_configuration_instance_details_options_launch_details_preemptible_instance_config_preemption_action_preserve_boot_volume
					}
				}
				preferred_maintenance_action = var.instance_configuration_instance_details_options_launch_details_preferred_maintenance_action
				security_attributes = var.instance_configuration_instance_details_options_launch_details_security_attributes
				shape = var.instance_configuration_instance_details_options_launch_details_shape
				shape_config {

					#Optional
					baseline_ocpu_utilization = var.instance_configuration_instance_details_options_launch_details_shape_config_baseline_ocpu_utilization
					memory_in_gbs = var.instance_configuration_instance_details_options_launch_details_shape_config_memory_in_gbs
					nvmes = var.instance_configuration_instance_details_options_launch_details_shape_config_nvmes
					ocpus = var.instance_configuration_instance_details_options_launch_details_shape_config_ocpus
					vcpus = var.instance_configuration_instance_details_options_launch_details_shape_config_vcpus
				}
				source_details {
					#Required
					source_type = var.instance_configuration_instance_details_options_launch_details_source_details_source_type

					#Optional
					boot_volume_id = oci_core_boot_volume.test_boot_volume.id
					boot_volume_size_in_gbs = var.instance_configuration_instance_details_options_launch_details_source_details_boot_volume_size_in_gbs
					boot_volume_vpus_per_gb = var.instance_configuration_instance_details_options_launch_details_source_details_boot_volume_vpus_per_gb
					image_id = oci_core_image.test_image.id
					instance_source_image_filter_details {

						#Optional
						compartment_id = var.compartment_id
						defined_tags_filter = var.instance_configuration_instance_details_options_launch_details_source_details_instance_source_image_filter_details_defined_tags_filter
						operating_system = var.instance_configuration_instance_details_options_launch_details_source_details_instance_source_image_filter_details_operating_system
						operating_system_version = var.instance_configuration_instance_details_options_launch_details_source_details_instance_source_image_filter_details_operating_system_version
					}
				}
			}
			secondary_vnics {

				#Optional
				create_vnic_details {

					#Optional
					assign_ipv6ip = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_assign_ipv6ip
					assign_private_dns_record = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_assign_private_dns_record
					assign_public_ip = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_assign_public_ip
					defined_tags = {"Operations.CostCenter"= "42"}
					display_name = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_display_name
					freeform_tags = {"Department"= "Finance"}
					hostname_label = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_hostname_label
					ipv6address_ipv6subnet_cidr_pair_details {

						#Optional
						ipv6address = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6address
						ipv6subnet_cidr = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_ipv6address_ipv6subnet_cidr_pair_details_ipv6subnet_cidr
					}
					nsg_ids = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_nsg_ids
					private_ip = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_private_ip
					security_attributes = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_security_attributes
					skip_source_dest_check = var.instance_configuration_instance_details_options_secondary_vnics_create_vnic_details_skip_source_dest_check
					subnet_id = oci_core_subnet.test_subnet.id
				}
				display_name = var.instance_configuration_instance_details_options_secondary_vnics_display_name
				nic_index = var.instance_configuration_instance_details_options_secondary_vnics_nic_index
			}
		}
		secondary_vnics {

			#Optional
			create_vnic_details {

				#Optional
				assign_private_dns_record = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_assign_private_dns_record
				assign_public_ip = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_assign_public_ip
				defined_tags = {"Operations.CostCenter"= "42"}
				display_name = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_display_name
				freeform_tags = {"Department"= "Finance"}
				hostname_label = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_hostname_label
				nsg_ids = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_nsg_ids
				private_ip = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_private_ip
				security_attributes = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_security_attributes
				skip_source_dest_check = var.instance_configuration_instance_details_secondary_vnics_create_vnic_details_skip_source_dest_check
				subnet_id = oci_core_subnet.test_subnet.id
			}
			display_name = var.instance_configuration_instance_details_secondary_vnics_display_name
			nic_index = var.instance_configuration_instance_details_secondary_vnics_nic_index
		}
	}
	instance_id = oci_core_instance.test_instance.id
	source = var.instance_configuration_source
}

Argument Reference

The following arguments are supported:

When you create an instance configuration using an existing instance as a template, the instance configuration does not include any information from the source instance’s boot volume, such as installed applications, binaries, and files on the instance. It also does not include the contents of any block volumes that are attached to the instance.

To create an instance configuration that includes the custom setup from an instance’s boot volume, you must first create a custom image from the instance (see CreateImage). Then, use the custom image to launch a new instance (see LaunchInstance). Finally, create the instance configuration based on the instance that you created from the custom image.

To include block volume contents with an instance configuration, first create a backup of the attached block volumes (see CreateVolumeBackup). Then, create the instance configuration by specifying the list of settings, using InstanceConfigurationVolumeSourceFromVolumeBackupDetails to include the block volume backups in the list of settings.

The following values are supported: * NONE: Creates an instance configuration using the list of settings that you specify. * INSTANCE: Creates an instance configuration using an existing instance as a template.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

Attributes Reference

The following attributes are exported:

Timeouts

The timeouts block allows you to specify timeouts for certain operations: * create - (Defaults to 20 minutes), when creating the Instance Configuration * update - (Defaults to 20 minutes), when updating the Instance Configuration * delete - (Defaults to 20 minutes), when destroying the Instance Configuration

Import

InstanceConfigurations can be imported using the id, e.g.

$ terraform import oci_core_instance_configuration.test_instance_configuration "id"