oci_cloud_bridge_asset

This resource provides the Asset resource in Oracle Cloud Infrastructure Cloud Bridge service. Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/OCB/latest/Asset

Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/cloudBridge

Creates an asset.

Example Usage

resource "oci_cloud_bridge_asset" "test_asset" {
	#Required
	asset_type = var.asset_asset_type
	compartment_id = var.compartment_id
	external_asset_key = var.asset_external_asset_key
	inventory_id = oci_cloud_bridge_inventory.test_inventory.id
	source_key = var.asset_source_key

	#Optional
	asset_class_name = var.asset_asset_class_name
	asset_class_version = var.asset_asset_class_version
	asset_details = var.asset_asset_details
	asset_source_ids = var.asset_asset_source_ids
	attached_ebs_volumes_cost {

		#Optional
		amount = var.asset_attached_ebs_volumes_cost_amount
		currency_code = var.asset_attached_ebs_volumes_cost_currency_code
	}
	aws_ebs {

		#Optional
		attachments {

			#Optional
			device = var.asset_aws_ebs_attachments_device
			instance_key = var.asset_aws_ebs_attachments_instance_key
			is_delete_on_termination = var.asset_aws_ebs_attachments_is_delete_on_termination
			status = var.asset_aws_ebs_attachments_status
			volume_key = var.asset_aws_ebs_attachments_volume_key
		}
		availability_zone = var.asset_aws_ebs_availability_zone
		iops = var.asset_aws_ebs_iops
		is_encrypted = var.asset_aws_ebs_is_encrypted
		is_multi_attach_enabled = var.asset_aws_ebs_is_multi_attach_enabled
		size_in_gi_bs = var.asset_aws_ebs_size_in_gi_bs
		status = var.asset_aws_ebs_status
		tags {

			#Optional
			key = var.asset_aws_ebs_tags_key
			value = var.asset_aws_ebs_tags_value
		}
		throughput = var.asset_aws_ebs_throughput
		volume_key = var.asset_aws_ebs_volume_key
		volume_type = var.asset_aws_ebs_volume_type
	}
	aws_ec2 {

		#Optional
		architecture = var.asset_aws_ec2_architecture
		are_elastic_inference_accelerators_present = var.asset_aws_ec2_are_elastic_inference_accelerators_present
		boot_mode = var.asset_aws_ec2_boot_mode
		capacity_reservation_key = var.asset_aws_ec2_capacity_reservation_key
		image_key = var.asset_aws_ec2_image_key
		instance_key = var.asset_aws_ec2_instance_key
		instance_lifecycle = var.asset_aws_ec2_instance_lifecycle
		instance_type = var.asset_aws_ec2_instance_type
		ip_address = var.asset_aws_ec2_ip_address
		ipv6address = var.asset_aws_ec2_ipv6address
		is_enclave_options = var.asset_aws_ec2_is_enclave_options
		is_hibernation_options = var.asset_aws_ec2_is_hibernation_options
		is_source_dest_check = var.asset_aws_ec2_is_source_dest_check
		is_spot_instance = var.asset_aws_ec2_is_spot_instance
		kernel_key = var.asset_aws_ec2_kernel_key
		licenses = var.asset_aws_ec2_licenses
		maintenance_options = var.asset_aws_ec2_maintenance_options
		monitoring = var.asset_aws_ec2_monitoring
		network_interfaces {

			#Optional
			association {

				#Optional
				carrier_ip = var.asset_aws_ec2_network_interfaces_association_carrier_ip
				customer_owned_ip = var.asset_aws_ec2_network_interfaces_association_customer_owned_ip
				ip_owner_key = var.asset_aws_ec2_network_interfaces_association_ip_owner_key
				public_dns_name = var.asset_aws_ec2_network_interfaces_association_public_dns_name
				public_ip = var.asset_aws_ec2_network_interfaces_association_public_ip
			}
			attachment {

				#Optional
				attachment_key = var.asset_aws_ec2_network_interfaces_attachment_attachment_key
				device_index = var.asset_aws_ec2_network_interfaces_attachment_device_index
				is_delete_on_termination = var.asset_aws_ec2_network_interfaces_attachment_is_delete_on_termination
				network_card_index = var.asset_aws_ec2_network_interfaces_attachment_network_card_index
				status = var.asset_aws_ec2_network_interfaces_attachment_status
				time_attach = var.asset_aws_ec2_network_interfaces_attachment_time_attach
			}
			description = var.asset_aws_ec2_network_interfaces_description
			interface_type = var.asset_aws_ec2_network_interfaces_interface_type
			ipv4prefixes = var.asset_aws_ec2_network_interfaces_ipv4prefixes
			ipv6addresses = var.asset_aws_ec2_network_interfaces_ipv6addresses
			ipv6prefixes = var.asset_aws_ec2_network_interfaces_ipv6prefixes
			is_source_dest_check = var.asset_aws_ec2_network_interfaces_is_source_dest_check
			mac_address = var.asset_aws_ec2_network_interfaces_mac_address
			network_interface_key = var.asset_aws_ec2_network_interfaces_network_interface_key
			owner_key = var.asset_aws_ec2_network_interfaces_owner_key
			private_ip_addresses {

				#Optional
				association {

					#Optional
					carrier_ip = var.asset_aws_ec2_network_interfaces_private_ip_addresses_association_carrier_ip
					customer_owned_ip = var.asset_aws_ec2_network_interfaces_private_ip_addresses_association_customer_owned_ip
					ip_owner_key = var.asset_aws_ec2_network_interfaces_private_ip_addresses_association_ip_owner_key
					public_dns_name = var.asset_aws_ec2_network_interfaces_private_ip_addresses_association_public_dns_name
					public_ip = var.asset_aws_ec2_network_interfaces_private_ip_addresses_association_public_ip
				}
				is_primary = var.asset_aws_ec2_network_interfaces_private_ip_addresses_is_primary
				private_dns_name = var.asset_aws_ec2_network_interfaces_private_ip_addresses_private_dns_name
				private_ip_address = var.asset_aws_ec2_network_interfaces_private_ip_addresses_private_ip_address
			}
			security_groups {

				#Optional
				group_key = var.asset_aws_ec2_network_interfaces_security_groups_group_key
				group_name = oci_identity_group.test_group.name
			}
			status = var.asset_aws_ec2_network_interfaces_status
			subnet_key = var.asset_aws_ec2_network_interfaces_subnet_key
		}
		placement {

			#Optional
			affinity = var.asset_aws_ec2_placement_affinity
			availability_zone = var.asset_aws_ec2_placement_availability_zone
			group_name = oci_identity_group.test_group.name
			host_key = var.asset_aws_ec2_placement_host_key
			host_resource_group_arn = var.asset_aws_ec2_placement_host_resource_group_arn
			partition_number = var.asset_aws_ec2_placement_partition_number
			spread_domain = var.asset_aws_ec2_placement_spread_domain
			tenancy = var.asset_aws_ec2_placement_tenancy
		}
		private_dns_name = var.asset_aws_ec2_private_dns_name
		private_ip_address = var.asset_aws_ec2_private_ip_address
		root_device_name = var.asset_aws_ec2_root_device_name
		root_device_type = var.asset_aws_ec2_root_device_type
		security_groups {

			#Optional
			group_key = var.asset_aws_ec2_security_groups_group_key
			group_name = oci_identity_group.test_group.name
		}
		sriov_net_support = var.asset_aws_ec2_sriov_net_support
		state {

			#Optional
			code = var.asset_aws_ec2_state_code
			name = var.asset_aws_ec2_state_name
		}
		subnet_key = var.asset_aws_ec2_subnet_key
		tags {

			#Optional
			key = var.asset_aws_ec2_tags_key
			value = var.asset_aws_ec2_tags_value
		}
		time_launch = var.asset_aws_ec2_time_launch
		tpm_support = var.asset_aws_ec2_tpm_support
		virtualization_type = var.asset_aws_ec2_virtualization_type
		vpc_key = var.asset_aws_ec2_vpc_key
	}
	aws_ec2cost {

		#Optional
		amount = var.asset_aws_ec2cost_amount
		currency_code = var.asset_aws_ec2cost_currency_code
	}
	compute {

		#Optional
		connected_networks = var.asset_compute_connected_networks
		cores_count = var.asset_compute_cores_count
		cpu_model = var.asset_compute_cpu_model
		description = var.asset_compute_description
		disks {

			#Optional
			boot_order = var.asset_compute_disks_boot_order
			is_cbt_enabled = var.asset_compute_disks_is_cbt_enabled
			location = var.asset_compute_disks_location
			name = var.asset_compute_disks_name
			persistent_mode = var.asset_compute_disks_persistent_mode
			size_in_mbs = var.asset_compute_disks_size_in_mbs
			uuid = var.asset_compute_disks_uuid
			uuid_lun = var.asset_compute_disks_uuid_lun
		}
		disks_count = var.asset_compute_disks_count
		dns_name = var.asset_compute_dns_name
		firmware = var.asset_compute_firmware
		gpu_devices {

			#Optional
			cores_count = var.asset_compute_gpu_devices_cores_count
			description = var.asset_compute_gpu_devices_description
			manufacturer = var.asset_compute_gpu_devices_manufacturer
			memory_in_mbs = var.asset_compute_gpu_devices_memory_in_mbs
			name = var.asset_compute_gpu_devices_name
		}
		gpu_devices_count = var.asset_compute_gpu_devices_count
		guest_state = var.asset_compute_guest_state
		hardware_version = var.asset_compute_hardware_version
		host_name = var.asset_compute_host_name
		is_pmem_enabled = var.asset_compute_is_pmem_enabled
		is_tpm_enabled = var.asset_compute_is_tpm_enabled
		latency_sensitivity = var.asset_compute_latency_sensitivity
		memory_in_mbs = var.asset_compute_memory_in_mbs
		nics {

			#Optional
			ip_addresses = var.asset_compute_nics_ip_addresses
			label = var.asset_compute_nics_label
			mac_address = var.asset_compute_nics_mac_address
			mac_address_type = var.asset_compute_nics_mac_address_type
			network_name = var.asset_compute_nics_network_name
			switch_name = var.asset_compute_nics_switch_name
		}
		nics_count = var.asset_compute_nics_count
		nvdimm_controller {

			#Optional
			bus_number = var.asset_compute_nvdimm_controller_bus_number
			label = var.asset_compute_nvdimm_controller_label
		}
		nvdimms {

			#Optional
			controller_key = var.asset_compute_nvdimms_controller_key
			label = var.asset_compute_nvdimms_label
			unit_number = var.asset_compute_nvdimms_unit_number
		}
		operating_system = var.asset_compute_operating_system
		operating_system_version = var.asset_compute_operating_system_version
		pmem_in_mbs = var.asset_compute_pmem_in_mbs
		power_state = var.asset_compute_power_state
		primary_ip = var.asset_compute_primary_ip
		scsi_controller {

			#Optional
			label = var.asset_compute_scsi_controller_label
			shared_bus = var.asset_compute_scsi_controller_shared_bus
			unit_number = var.asset_compute_scsi_controller_unit_number
		}
		storage_provisioned_in_mbs = var.asset_compute_storage_provisioned_in_mbs
		threads_per_core_count = var.asset_compute_threads_per_core_count
	}
	defined_tags = {"Operations.CostCenter"= "42"}
	display_name = var.asset_display_name
	environment_type = var.asset_environment_type
	freeform_tags = {"Department"= "Finance"}
	vm {

		#Optional
		hypervisor_host = var.asset_vm_hypervisor_host
		hypervisor_vendor = var.asset_vm_hypervisor_vendor
		hypervisor_version = var.asset_vm_hypervisor_version
	}
	vmware_vcenter {

		#Optional
		data_center = var.asset_vmware_vcenter_data_center
		vcenter_key = var.asset_vmware_vcenter_vcenter_key
		vcenter_version = var.asset_vmware_vcenter_vcenter_version
	}
	vmware_vm {

		#Optional
		cluster = var.asset_vmware_vm_cluster
		customer_fields = var.asset_vmware_vm_customer_fields
		customer_tags {

			#Optional
			description = var.asset_vmware_vm_customer_tags_description
			name = var.asset_vmware_vm_customer_tags_name
		}
		fault_tolerance_bandwidth = var.asset_vmware_vm_fault_tolerance_bandwidth
		fault_tolerance_secondary_latency = var.asset_vmware_vm_fault_tolerance_secondary_latency
		fault_tolerance_state = var.asset_vmware_vm_fault_tolerance_state
		instance_uuid = var.asset_vmware_vm_instance_uuid
		is_disks_cbt_enabled = var.asset_vmware_vm_is_disks_cbt_enabled
		is_disks_uuid_enabled = var.asset_vmware_vm_is_disks_uuid_enabled
		path = var.asset_vmware_vm_path
		vmware_tools_status = var.asset_vmware_vm_vmware_tools_status
	}
}

Argument Reference

The following arguments are supported:

** 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 Asset * update - (Defaults to 20 minutes), when updating the Asset * delete - (Defaults to 20 minutes), when destroying the Asset

Import

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

$ terraform import oci_cloud_bridge_asset.test_asset "id"