ec2

package
v4.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 9, 2021 License: Apache-2.0 Imports: 7 Imported by: 25

Documentation

Index

Constants

View Source
const (
	InstancePlatformLinuxUnix                      = InstancePlatform("Linux/UNIX")
	InstancePlatformRedHatEnterpriseLinux          = InstancePlatform("Red Hat Enterprise Linux")
	InstancePlatformSuseLinux                      = InstancePlatform("SUSE Linux")
	InstancePlatformWindows                        = InstancePlatform("Windows")
	InstancePlatformWindowsWithSqlServer           = InstancePlatform("Windows with SQL Server")
	InstancePlatformWindowsWithSqlServerEnterprise = InstancePlatform("Windows with SQL Server Enterprise")
	InstancePlatformWindowsWithSqlServerStandard   = InstancePlatform("Windows with SQL Server Standard")
	InstancePlatformWindowsWithSqlServerWeb        = InstancePlatform("Windows with SQL Server Web")
)
View Source
const (
	InstanceType_A1_2XLarge    = InstanceType("a1.2xlarge")
	InstanceType_A1_4XLarge    = InstanceType("a1.4xlarge")
	InstanceType_A1_Large      = InstanceType("a1.large")
	InstanceType_A1_Medium     = InstanceType("a1.medium")
	InstanceType_A1_Metal      = InstanceType("a1.metal")
	InstanceType_A1_XLarge     = InstanceType("a1.xlarge")
	InstanceType_C1_Medium     = InstanceType("c1.medium")
	InstanceType_C1_XLarge     = InstanceType("c1.xlarge")
	InstanceType_C3_2XLarge    = InstanceType("c3.2xlarge")
	InstanceType_C3_4XLarge    = InstanceType("c3.4xlarge")
	InstanceType_C3_8XLarge    = InstanceType("c3.8xlarge")
	InstanceType_C3_Large      = InstanceType("c3.large")
	InstanceType_C3_XLarge     = InstanceType("c3.xlarge")
	InstanceType_C4_2XLarge    = InstanceType("c4.2xlarge")
	InstanceType_C4_4XLarge    = InstanceType("c4.4xlarge")
	InstanceType_C4_8XLarge    = InstanceType("c4.8xlarge")
	InstanceType_C4_Large      = InstanceType("c4.large")
	InstanceType_C4_XLarge     = InstanceType("c4.xlarge")
	InstanceType_C5_12XLarge   = InstanceType("c5.12xlarge")
	InstanceType_C5_18XLarge   = InstanceType("c5.18xlarge")
	InstanceType_C5_24XLarge   = InstanceType("c5.24xlarge")
	InstanceType_C5_2XLarge    = InstanceType("c5.2xlarge")
	InstanceType_C5_4XLarge    = InstanceType("c5.4xlarge")
	InstanceType_C5_9XLarge    = InstanceType("c5.9xlarge")
	InstanceType_C5_Large      = InstanceType("c5.large")
	InstanceType_C5_Metal      = InstanceType("c5.metal")
	InstanceType_C5_XLarge     = InstanceType("c5.xlarge")
	InstanceType_C5a_12XLarge  = InstanceType("c5a.12xlarge")
	InstanceType_C5a_16XLarge  = InstanceType("c5a.16xlarge")
	InstanceType_C5a_24XLarge  = InstanceType("c5a.24xlarge")
	InstanceType_C5a_2XLarge   = InstanceType("c5a.2xlarge")
	InstanceType_C5a_4XLarge   = InstanceType("c5a.4xlarge")
	InstanceType_C5a_8XLarge   = InstanceType("c5a.8xlarge")
	InstanceType_C5a_Large     = InstanceType("c5a.large")
	InstanceType_C5a_XLarge    = InstanceType("c5a.xlarge")
	InstanceType_C5ad_12XLarge = InstanceType("c5ad.12xlarge")
	InstanceType_C5ad_16XLarge = InstanceType("c5ad.16xlarge")
	InstanceType_C5ad_24XLarge = InstanceType("c5ad.24xlarge")
	InstanceType_C5ad_2XLarge  = InstanceType("c5ad.2xlarge")
	InstanceType_C5ad_4XLarge  = InstanceType("c5ad.4xlarge")
	InstanceType_C5ad_8XLarge  = InstanceType("c5ad.8xlarge")
	InstanceType_C5ad_Large    = InstanceType("c5ad.large")
	InstanceType_C5ad_XLarge   = InstanceType("c5ad.xlarge")
	InstanceType_C5d_12XLarge  = InstanceType("c5d.12xlarge")
	InstanceType_C5d_18XLarge  = InstanceType("c5d.18xlarge")
	InstanceType_C5d_24XLarge  = InstanceType("c5d.24xlarge")
	InstanceType_C5d_2XLarge   = InstanceType("c5d.2xlarge")
	InstanceType_C5d_4XLarge   = InstanceType("c5d.4xlarge")
	InstanceType_C5d_9XLarge   = InstanceType("c5d.9xlarge")
	InstanceType_C5d_Large     = InstanceType("c5d.large")
	InstanceType_C5d_Metal     = InstanceType("c5d.metal")
	InstanceType_C5d_XLarge    = InstanceType("c5d.xlarge")
	InstanceType_C5n_18XLarge  = InstanceType("c5n.18xlarge")
	InstanceType_C5n_2XLarge   = InstanceType("c5n.2xlarge")
	InstanceType_C5n_4XLarge   = InstanceType("c5n.4xlarge")
	InstanceType_C5n_9XLarge   = InstanceType("c5n.9xlarge")
	InstanceType_C5n_Large     = InstanceType("c5n.large")
	InstanceType_C5n_Metal     = InstanceType("c5n.metal")
	InstanceType_C5n_XLarge    = InstanceType("c5n.xlarge")
	InstanceType_C6g_12XLarge  = InstanceType("c6g.12xlarge")
	InstanceType_C6g_16XLarge  = InstanceType("c6g.16xlarge")
	InstanceType_C6g_2XLarge   = InstanceType("c6g.2xlarge")
	InstanceType_C6g_4XLarge   = InstanceType("c6g.4xlarge")
	InstanceType_C6g_8XLarge   = InstanceType("c6g.8xlarge")
	InstanceType_C6g_Large     = InstanceType("c6g.large")
	InstanceType_C6g_Medium    = InstanceType("c6g.medium")
	InstanceType_C6g_Metal     = InstanceType("c6g.metal")
	InstanceType_C6g_XLarge    = InstanceType("c6g.xlarge")
	InstanceType_C6gd_12XLarge = InstanceType("c6gd.12xlarge")
	InstanceType_C6gd_16XLarge = InstanceType("c6gd.16xlarge")
	InstanceType_C6gd_2XLarge  = InstanceType("c6gd.2xlarge")
	InstanceType_C6gd_4XLarge  = InstanceType("c6gd.4xlarge")
	InstanceType_C6gd_8XLarge  = InstanceType("c6gd.8xlarge")
	InstanceType_C6gd_Large    = InstanceType("c6gd.large")
	InstanceType_C6gd_Medium   = InstanceType("c6gd.medium")
	InstanceType_C6gd_Metal    = InstanceType("c6gd.metal")
	InstanceType_C6gd_XLarge   = InstanceType("c6gd.xlarge")
	InstanceType_Cc2_8XLarge   = InstanceType("cc2.8xlarge")
	InstanceType_D2_2XLarge    = InstanceType("d2.2xlarge")
	InstanceType_D2_4XLarge    = InstanceType("d2.4xlarge")
	InstanceType_D2_8XLarge    = InstanceType("d2.8xlarge")
	InstanceType_D2_XLarge     = InstanceType("d2.xlarge")
	InstanceType_D3_2XLarge    = InstanceType("d3.2xlarge")
	InstanceType_D3_4XLarge    = InstanceType("d3.4xlarge")
	InstanceType_D3_8XLarge    = InstanceType("d3.8xlarge")
	InstanceType_D3_XLarge     = InstanceType("d3.xlarge")
	InstanceType_D3en_12XLarge = InstanceType("d3en.12xlarge")
	InstanceType_D3en_2XLarge  = InstanceType("d3en.2xlarge")
	InstanceType_D3en_4XLarge  = InstanceType("d3en.4xlarge")
	InstanceType_D3en_6XLarge  = InstanceType("d3en.6xlarge")
	InstanceType_D3en_8XLarge  = InstanceType("d3en.8xlarge")
	InstanceType_D3en_XLarge   = InstanceType("d3en.xlarge")
	InstanceType_F1_16XLarge   = InstanceType("f1.16xlarge")
	InstanceType_F1_2XLarge    = InstanceType("f1.2xlarge")
	InstanceType_F1_4XLarge    = InstanceType("f1.4xlarge")
	InstanceType_G2_2XLarge    = InstanceType("g2.2xlarge")
	InstanceType_G2_8XLarge    = InstanceType("g2.8xlarge")
	InstanceType_G3_16XLarge   = InstanceType("g3.16xlarge")
	InstanceType_G3_4XLarge    = InstanceType("g3.4xlarge")
	InstanceType_G3_8XLarge    = InstanceType("g3.8xlarge")
	InstanceType_G3s_XLarge    = InstanceType("g3s.xlarge")
	InstanceType_G4ad_16XLarge = InstanceType("g4ad.16xlarge")
	InstanceType_G4ad_4XLarge  = InstanceType("g4ad.4xlarge")
	InstanceType_G4ad_8XLarge  = InstanceType("g4ad.8xlarge")
	InstanceType_G4dn_12XLarge = InstanceType("g4dn.12xlarge")
	InstanceType_G4dn_16XLarge = InstanceType("g4dn.16xlarge")
	InstanceType_G4dn_2XLarge  = InstanceType("g4dn.2xlarge")
	InstanceType_G4dn_4XLarge  = InstanceType("g4dn.4xlarge")
	InstanceType_G4dn_8XLarge  = InstanceType("g4dn.8xlarge")
	InstanceType_G4dn_Metal    = InstanceType("g4dn.metal")
	InstanceType_G4dn_XLarge   = InstanceType("g4dn.xlarge")
	InstanceType_H1_16XLarge   = InstanceType("h1.16xlarge")
	InstanceType_H1_2XLarge    = InstanceType("h1.2xlarge")
	InstanceType_H1_4XLarge    = InstanceType("h1.4xlarge")
	InstanceType_H1_8XLarge    = InstanceType("h1.8xlarge")
	InstanceType_I2_2XLarge    = InstanceType("i2.2xlarge")
	InstanceType_I2_4XLarge    = InstanceType("i2.4xlarge")
	InstanceType_I2_8XLarge    = InstanceType("i2.8xlarge")
	InstanceType_I2_XLarge     = InstanceType("i2.xlarge")
	InstanceType_I3_16XLarge   = InstanceType("i3.16xlarge")
	InstanceType_I3_2XLarge    = InstanceType("i3.2xlarge")
	InstanceType_I3_4XLarge    = InstanceType("i3.4xlarge")
	InstanceType_I3_8XLarge    = InstanceType("i3.8xlarge")
	InstanceType_I3_Large      = InstanceType("i3.large")
	InstanceType_I3_XLarge     = InstanceType("i3.xlarge")
	InstanceType_I3_Metal      = InstanceType("i3.metal")
	InstanceType_I3en_12XLarge = InstanceType("i3en.12xlarge")
	InstanceType_I3en_24XLarge = InstanceType("i3en.24xlarge")
	InstanceType_I3en_2XLarge  = InstanceType("i3en.2xlarge")
	InstanceType_I3en_3XLarge  = InstanceType("i3en.3xlarge")
	InstanceType_I3en_6XLarge  = InstanceType("i3en.6xlarge")
	InstanceType_I3en_Large    = InstanceType("i3en.large")
	InstanceType_I3en_Metal    = InstanceType("i3en.metal")
	InstanceType_I3en_XLarge   = InstanceType("i3en.xlarge")
	InstanceType_Inf1_24XLarge = InstanceType("inf1.24xlarge")
	InstanceType_Inf1_2XLarge  = InstanceType("inf1.2xlarge")
	InstanceType_Inf1_6XLarge  = InstanceType("inf1.6xlarge")
	InstanceType_Inf1_XLarge   = InstanceType("inf1.xlarge")
	InstanceType_M1_Large      = InstanceType("m1.large")
	InstanceType_M1_Medium     = InstanceType("m1.medium")
	InstanceType_M1_Small      = InstanceType("m1.small")
	InstanceType_M1_XLarge     = InstanceType("m1.xlarge")
	InstanceType_M2_2XLarge    = InstanceType("m2.2xlarge")
	InstanceType_M2_4XLarge    = InstanceType("m2.4xlarge")
	InstanceType_M2_XLarge     = InstanceType("m2.xlarge")
	InstanceType_M3_2XLarge    = InstanceType("m3.2xlarge")
	InstanceType_M3_Large      = InstanceType("m3.large")
	InstanceType_M3_Medium     = InstanceType("m3.medium")
	InstanceType_M3_XLarge     = InstanceType("m3.xlarge")
	InstanceType_M4_10XLarge   = InstanceType("m4.10xlarge")
	InstanceType_M4_16XLarge   = InstanceType("m4.16xlarge")
	InstanceType_M4_2XLarge    = InstanceType("m4.2xlarge")
	InstanceType_M4_4XLarge    = InstanceType("m4.4xlarge")
	InstanceType_M4_Large      = InstanceType("m4.large")
	InstanceType_M4_XLarge     = InstanceType("m4.xlarge")
	InstanceType_M5_12XLarge   = InstanceType("m5.12xlarge")
	InstanceType_M5_16XLarge   = InstanceType("m5.16xlarge")
	InstanceType_M5_24XLarge   = InstanceType("m5.24xlarge")
	InstanceType_M5_2XLarge    = InstanceType("m5.2xlarge")
	InstanceType_M5_4XLarge    = InstanceType("m5.4xlarge")
	InstanceType_M5_8XLarge    = InstanceType("m5.8xlarge")
	InstanceType_M5_Large      = InstanceType("m5.large")
	InstanceType_M5_Metal      = InstanceType("m5.metal")
	InstanceType_M5_XLarge     = InstanceType("m5.xlarge")
	InstanceType_M5a_12XLarge  = InstanceType("m5a.12xlarge")
	InstanceType_M5a_16XLarge  = InstanceType("m5a.16xlarge")
	InstanceType_M5a_24XLarge  = InstanceType("m5a.24xlarge")
	InstanceType_M5a_2XLarge   = InstanceType("m5a.2xlarge")
	InstanceType_M5a_4XLarge   = InstanceType("m5a.4xlarge")
	InstanceType_M5a_8XLarge   = InstanceType("m5a.8xlarge")
	InstanceType_M5a_Large     = InstanceType("m5a.large")
	InstanceType_M5a_XLarge    = InstanceType("m5a.xlarge")
	InstanceType_M5ad_12XLarge = InstanceType("m5ad.12xlarge")
	InstanceType_M5ad_16XLarge = InstanceType("m5ad.16xlarge")
	InstanceType_M5ad_24XLarge = InstanceType("m5ad.24xlarge")
	InstanceType_M5ad_2XLarge  = InstanceType("m5ad.2xlarge")
	InstanceType_M5ad_4XLarge  = InstanceType("m5ad.4xlarge")
	InstanceType_M5ad_8XLarge  = InstanceType("m5ad.8xlarge")
	InstanceType_M5ad_Large    = InstanceType("m5ad.large")
	InstanceType_M5as_XLarge   = InstanceType("m5ad.xlarge")
	InstanceType_M5d_12XLarge  = InstanceType("m5d.12xlarge")
	InstanceType_M5d_16XLarge  = InstanceType("m5d.16xlarge")
	InstanceType_M5d_24XLarge  = InstanceType("m5d.24xlarge")
	InstanceType_M5d_2XLarge   = InstanceType("m5d.2xlarge")
	InstanceType_M5d_4XLarge   = InstanceType("m5d.4xlarge")
	InstanceType_M5d_8XLarge   = InstanceType("m5d.8xlarge")
	InstanceType_M5d_Large     = InstanceType("m5d.large")
	InstanceType_M5d_Metal     = InstanceType("m5d.metal")
	InstanceType_M5d_XLarge    = InstanceType("m5d.xlarge")
	InstanceType_M5dn_12XLarge = InstanceType("m5dn.12xlarge")
	InstanceType_M5dn_16XLarge = InstanceType("m5dn.16xlarge")
	InstanceType_M5dn_24XLarge = InstanceType("m5dn.24xlarge")
	InstanceType_M5dn_2XLarge  = InstanceType("m5dn.2xlarge")
	InstanceType_M5dn_4XLarge  = InstanceType("m5dn.4xlarge")
	InstanceType_M5dn_8XLarge  = InstanceType("m5dn.8xlarge")
	InstanceType_M5dn_Large    = InstanceType("m5dn.large")
	InstanceType_M5dn_XLarge   = InstanceType("m5dn.xlarge")
	InstanceType_M5n_12XLarge  = InstanceType("m5n.12xlarge")
	InstanceType_M5n_16XLarge  = InstanceType("m5n.16xlarge")
	InstanceType_M5n_24XLarge  = InstanceType("m5n.24xlarge")
	InstanceType_M5n_2XLarge   = InstanceType("m5n.2xlarge")
	InstanceType_M5n_4XLarge   = InstanceType("m5n.4xlarge")
	InstanceType_M5n_8XLarge   = InstanceType("m5n.8xlarge")
	InstanceType_M5n_Large     = InstanceType("m5n.large")
	InstanceType_M5n_XLarge    = InstanceType("m5n.xlarge")
	InstanceType_M5zn_12XLarge = InstanceType("m5zn.12xlarge")
	InstanceType_M5zn_2XLarge  = InstanceType("m5zn.2xlarge")
	InstanceType_M5zn_3XLarge  = InstanceType("m5zn.3xlarge")
	InstanceType_M5zn_6XLarge  = InstanceType("m5zn.6xlarge")
	InstanceType_M5zn_Large    = InstanceType("m5zn.large")
	InstanceType_M5zn_Metal    = InstanceType("m5zn.metal")
	InstanceType_M5zn_XLarge   = InstanceType("m5zn.xlarge")
	InstanceType_M6g_12XLarge  = InstanceType("m6g.12xlarge")
	InstanceType_M6g_16XLarge  = InstanceType("m6g.16xlarge")
	InstanceType_M6g_2XLarge   = InstanceType("m6g.2xlarge")
	InstanceType_M6g_4XLarge   = InstanceType("m6g.4xlarge")
	InstanceType_M6g_8XLarge   = InstanceType("m6g.8xlarge")
	InstanceType_M6g_Large     = InstanceType("m6g.large")
	InstanceType_M6g_Medium    = InstanceType("m6g.medium")
	InstanceType_M6g_Metal     = InstanceType("m6g.metal")
	InstanceType_M6g_XLarge    = InstanceType("m6g.xlarge")
	InstanceType_M6gd_12XLarge = InstanceType("m6gd.12xlarge")
	InstanceType_M6gd_16XLarge = InstanceType("m6gd.16xlarge")
	InstanceType_M6gd_2XLarge  = InstanceType("m6gd.2xlarge")
	InstanceType_M6gd_4XLarge  = InstanceType("m6gd.4xlarge")
	InstanceType_M6gd_8XLarge  = InstanceType("m6gd.8xlarge")
	InstanceType_M6gd_Large    = InstanceType("m6gd.large")
	InstanceType_M6gd_Medium   = InstanceType("m6gd.medium")
	InstanceType_M6gd_Metal    = InstanceType("m6gd.metal")
	InstanceType_M6gd_XLarge   = InstanceType("m6gd.xlarge")
	InstanceType_Mac1_Metal    = InstanceType("mac1.metal")
	InstanceType_P2_16XLarge   = InstanceType("p2.16xlarge")
	InstanceType_P2_8XLarge    = InstanceType("p2.8xlarge")
	InstanceType_P2_XLarge     = InstanceType("p2.xlarge")
	InstanceType_P3_16XLarge   = InstanceType("p3.16xlarge")
	InstanceType_P3_2XLarge    = InstanceType("p3.2xlarge")
	InstanceType_P3_8XLarge    = InstanceType("p3.8xlarge")
	InstanceType_P3dn_24XLarge = InstanceType("p3dn.24xlarge")
	InstanceType_P4d_24XLarge  = InstanceType("p4d.24xlarge")
	InstanceType_R3_2XLarge    = InstanceType("r3.2xlarge")
	InstanceType_R3_4XLarge    = InstanceType("r3.4xlarge")
	InstanceType_R3_8XLarge    = InstanceType("r3.8xlarge")
	InstanceType_R3_Large      = InstanceType("r3.large")
	InstanceType_R3_XLarge     = InstanceType("r3.xlarge")
	InstanceType_R4_16XLarge   = InstanceType("r4.16xlarge")
	InstanceType_R4_2XLarge    = InstanceType("r4.2xlarge")
	InstanceType_R4_4XLarge    = InstanceType("r4.4xlarge")
	InstanceType_R4_8XLarge    = InstanceType("r4.8xlarge")
	InstanceType_R4_Large      = InstanceType("r4.large")
	InstanceType_R4_XLarge     = InstanceType("r4.xlarge")
	InstanceType_R5_12XLarge   = InstanceType("r5.12xlarge")
	InstanceType_R5_16XLarge   = InstanceType("r5.16xlarge")
	InstanceType_R5_24XLarge   = InstanceType("r5.24xlarge")
	InstanceType_R5_2XLarge    = InstanceType("r5.2xlarge")
	InstanceType_R5_4XLarge    = InstanceType("r5.4xlarge")
	InstanceType_R5_8XLarge    = InstanceType("r5.8xlarge")
	InstanceType_R5_Large      = InstanceType("r5.large")
	InstanceType_R5_Metal      = InstanceType("r5.metal")
	InstanceType_R5_XLarge     = InstanceType("r5.xlarge")
	InstanceType_R5a_12XLarge  = InstanceType("r5a.12xlarge")
	InstanceType_R5a_16XLarge  = InstanceType("r5a.16xlarge")
	InstanceType_R5a_24XLarge  = InstanceType("r5a.24xlarge")
	InstanceType_R5a_2XLarge   = InstanceType("r5a.2xlarge")
	InstanceType_R5a_4XLarge   = InstanceType("r5a.4xlarge")
	InstanceType_R5a_8XLarge   = InstanceType("r5a.8xlarge")
	InstanceType_R5a_Large     = InstanceType("r5a.large")
	InstanceType_R5a_XLarge    = InstanceType("r5a.xlarge")
	InstanceType_R5ad_12XLarge = InstanceType("r5ad.12xlarge")
	InstanceType_R5ad_16XLarge = InstanceType("r5ad.16xlarge")
	InstanceType_R5ad_24XLarge = InstanceType("r5ad.24xlarge")
	InstanceType_R5ad_2XLarge  = InstanceType("r5ad.2xlarge")
	InstanceType_R5ad_4XLarge  = InstanceType("r5ad.4xlarge")
	InstanceType_R5ad_8XLarge  = InstanceType("r5ad.8xlarge")
	InstanceType_R5ad_Large    = InstanceType("r5ad.large")
	InstanceType_R5ad_XLarge   = InstanceType("r5ad.xlarge")
	InstanceType_R5b_12XLarge  = InstanceType("r5b.12xlarge")
	InstanceType_R5b_16XLarge  = InstanceType("r5b.16xlarge")
	InstanceType_R5b_24XLarge  = InstanceType("r5b.24xlarge")
	InstanceType_R5b_2XLarge   = InstanceType("r5b.2xlarge")
	InstanceType_R5b_4XLarge   = InstanceType("r5b.4xlarge")
	InstanceType_R5b_8XLarge   = InstanceType("r5b.8xlarge")
	InstanceType_R5b_Large     = InstanceType("r5b.large")
	InstanceType_R5b_Metal     = InstanceType("r5b.metal")
	InstanceType_R5b_XLarge    = InstanceType("r5b.xlarge")
	InstanceType_R5d_12XLarge  = InstanceType("r5d.12xlarge")
	InstanceType_R5d_16XLarge  = InstanceType("r5d.16xlarge")
	InstanceType_R5d_24XLarge  = InstanceType("r5d.24xlarge")
	InstanceType_R5d_2XLarge   = InstanceType("r5d.2xlarge")
	InstanceType_R5d_4XLarge   = InstanceType("r5d.4xlarge")
	InstanceType_R5d_8XLarge   = InstanceType("r5d.8xlarge")
	InstanceType_R5d_Large     = InstanceType("r5d.large")
	InstanceType_R5d_Metal     = InstanceType("r5d.metal")
	InstanceType_R5d_XLarge    = InstanceType("r5d.xlarge")
	InstanceType_R5dn_12XLarge = InstanceType("r5dn.12xlarge")
	InstanceType_R5dn_16XLarge = InstanceType("r5dn.16xlarge")
	InstanceType_R5dn_24XLarge = InstanceType("r5dn.24xlarge")
	InstanceType_R5dn_2XLarge  = InstanceType("r5dn.2xlarge")
	InstanceType_R5dn_4XLarge  = InstanceType("r5dn.4xlarge")
	InstanceType_R5dn_8XLarge  = InstanceType("r5dn.8xlarge")
	InstanceType_R5dn_Large    = InstanceType("r5dn.large")
	InstanceType_R5dn_XLarge   = InstanceType("r5dn.xlarge")
	InstanceType_R5n_12XLarge  = InstanceType("r5n.12xlarge")
	InstanceType_R5n_16XLarge  = InstanceType("r5n.16xlarge")
	InstanceType_R5n_24XLarge  = InstanceType("r5n.24xlarge")
	InstanceType_R5n_2XLarge   = InstanceType("r5n.2xlarge")
	InstanceType_R5n_4XLarge   = InstanceType("r5n.4xlarge")
	InstanceType_R5n_8XLarge   = InstanceType("r5n.8xlarge")
	InstanceType_R5n_Large     = InstanceType("r5n.large")
	InstanceType_R5n_XLarge    = InstanceType("r5n.xlarge")
	InstanceType_R6g_12XLarge  = InstanceType("r6g.12xlarge")
	InstanceType_R6g_16XLarge  = InstanceType("r6g.16xlarge")
	InstanceType_R6g_2XLarge   = InstanceType("r6g.2xlarge")
	InstanceType_R6g_4XLarge   = InstanceType("r6g.4xlarge")
	InstanceType_R6g_8XLarge   = InstanceType("r6g.8xlarge")
	InstanceType_R6g_Large     = InstanceType("r6g.large")
	InstanceType_R6g_Medium    = InstanceType("r6g.medium")
	InstanceType_R6g_Metal     = InstanceType("r6g.metal")
	InstanceType_R6g_XLarge    = InstanceType("r6g.xlarge")
	InstanceType_R6gd_12XLarge = InstanceType("r6gd.12xlarge")
	InstanceType_R6gd_16XLarge = InstanceType("r6gd.16xlarge")
	InstanceType_R6gd_2XLarge  = InstanceType("r6gd.2xlarge")
	InstanceType_R6gd_4XLarge  = InstanceType("r6gd.4xlarge")
	InstanceType_R6gd_8XLarge  = InstanceType("r6gd.8xlarge")
	InstanceType_R6gd_Large    = InstanceType("r6gd.large")
	InstanceType_R6gd_Medium   = InstanceType("r6gd.medium")
	InstanceType_R6gd_Metal    = InstanceType("r6gd.metal")
	InstanceType_R6gd_XLarge   = InstanceType("r6gd.xlarge")
	InstanceType_T1_Micro      = InstanceType("t1.micro")
	InstanceType_T2_2XLarge    = InstanceType("t2.2xlarge")
	InstanceType_T2_Large      = InstanceType("t2.large")
	InstanceType_T2_Medium     = InstanceType("t2.medium")
	InstanceType_T2_Micro      = InstanceType("t2.micro")
	InstanceType_T2_Nano       = InstanceType("t2.nano")
	InstanceType_T2_Small      = InstanceType("t2.small")
	InstanceType_T2_XLarge     = InstanceType("t2.xlarge")
	InstanceType_T3_2XLarge    = InstanceType("t3.2xlarge")
	InstanceType_T3_Large      = InstanceType("t3.large")
	InstanceType_T3_Medium     = InstanceType("t3.medium")
	InstanceType_T3_Micro      = InstanceType("t3.micro")
	InstanceType_T3_Nano       = InstanceType("t3.nano")
	InstanceType_T3_Small      = InstanceType("t3.small")
	InstanceType_T3_XLarge     = InstanceType("t3.xlarge")
	InstanceType_T3a_2XLarge   = InstanceType("t3a.2xlarge")
	InstanceType_T3a_Large     = InstanceType("t3a.large")
	InstanceType_T3a_Medium    = InstanceType("t3a.medium")
	InstanceType_T3a_Micro     = InstanceType("t3a.micro")
	InstanceType_T3a_Nano      = InstanceType("t3a.nano")
	InstanceType_T3a_Small     = InstanceType("t3a.small")
	InstanceType_T3a_XLarge    = InstanceType("t3a.xlarge")
	InstanceType_T4g_2XLarge   = InstanceType("t4g.2xlarge")
	InstanceType_T4g_Large     = InstanceType("t4g.large")
	InstanceType_T4g_Medium    = InstanceType("t4g.medium")
	InstanceType_T4g_Micro     = InstanceType("t4g.micro")
	InstanceType_T4g_Nano      = InstanceType("t4g.nano")
	InstanceType_T4g_Small     = InstanceType("t4g.small")
	InstanceType_T4g_XLarge    = InstanceType("t4g.xlarge")
	InstanceType_X1_16XLarge   = InstanceType("x1.16xlarge")
	InstanceType_X1_32XLarge   = InstanceType("x1.32xlarge")
	InstanceType_X1e_16XLarge  = InstanceType("x1e.16xlarge")
	InstanceType_X1e_2XLarge   = InstanceType("x1e.2xlarge")
	InstanceType_X1e_32XLarge  = InstanceType("x1e.32xlarge")
	InstanceType_X1e_4XLarge   = InstanceType("x1e.4xlarge")
	InstanceType_X1e_8XLarge   = InstanceType("x1e.8xlarge")
	InstanceType_X1e_XLarge    = InstanceType("x1e.xlarge")
	InstanceType_Z1d_12XLarge  = InstanceType("z1d.12xlarge")
	InstanceType_Z1d_2XLarge   = InstanceType("z1d.2xlarge")
	InstanceType_Z1d_3XLarge   = InstanceType("z1d.3xlarge")
	InstanceType_Z1d_6XLarge   = InstanceType("z1d.6xlarge")
	InstanceType_Z1d_Large     = InstanceType("z1d.large")
	InstanceType_Z1d_Metal     = InstanceType("z1d.metal")
	InstanceType_Z1d_XLarge    = InstanceType("z1d.xlarge")
	// Deprecated: This instancetype has been deprecated
	InstanceType_U_12tb1Metal = InstanceType("u-12tb1.metal")
	// Deprecated: This instancetype has been deprecated
	InstanceType_U_6tb1Metal = InstanceType("u-6tb1.metal")
	// Deprecated: This instancetype has been deprecated
	InstanceType_U_9tb1Metal = InstanceType("u-9tb1.metal")
	// Deprecated: This instancetype has been deprecated
	InstanceType_Hs1_8XLarge = InstanceType("hs1.8xlarge")
)
View Source
const (
	// A `spread` placement group places instances on distinct hardware.
	PlacementStrategySpread = PlacementStrategy("spread")
	// A `cluster` placement group is a logical grouping of instances within a single
	// Availability Zone that benefit from low network latency, high network throughput.
	PlacementStrategyCluster = PlacementStrategy("cluster")
)
View Source
const (
	ProtocolTypeAll  = ProtocolType("all")
	ProtocolTypeTCP  = ProtocolType("tcp")
	ProtocolTypeUDP  = ProtocolType("udp")
	ProtocolTypeICMP = ProtocolType("icmp")
)
View Source
const (
	TenancyDefault   = Tenancy("default")
	TenancyDedicated = Tenancy("dedicated")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Ami

type Ami struct {
	pulumi.CustomResourceState

	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringPtrOutput `pulumi:"architecture"`
	// The ARN of the AMI.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolPtrOutput `pulumi:"enaSupport"`
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	// The hypervisor type of the image.
	Hypervisor pulumi.StringOutput `pulumi:"hypervisor"`
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation pulumi.StringOutput `pulumi:"imageLocation"`
	// The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
	ImageOwnerAlias pulumi.StringOutput `pulumi:"imageOwnerAlias"`
	// The type of image.
	ImageType pulumi.StringOutput `pulumi:"imageType"`
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId           pulumi.StringPtrOutput `pulumi:"kernelId"`
	ManageEbsSnapshots pulumi.BoolOutput      `pulumi:"manageEbsSnapshots"`
	// A region-unique name for the AMI.
	Name pulumi.StringOutput `pulumi:"name"`
	// The AWS account ID of the image owner.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// This value is set to windows for Windows AMIs; otherwise, it is blank.
	Platform pulumi.StringOutput `pulumi:"platform"`
	// The platform details associated with the billing code of the AMI.
	PlatformDetails pulumi.StringOutput `pulumi:"platformDetails"`
	// Indicates whether the image has public launch permissions.
	Public pulumi.BoolOutput `pulumi:"public"`
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringPtrOutput `pulumi:"ramdiskId"`
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringPtrOutput `pulumi:"rootDeviceName"`
	// The Snapshot ID for the root volume (for EBS-backed AMIs)
	RootSnapshotId pulumi.StringOutput `pulumi:"rootSnapshotId"`
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringPtrOutput `pulumi:"sriovNetSupport"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
	UsageOperation pulumi.StringOutput `pulumi:"usageOperation"`
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringPtrOutput `pulumi:"virtualizationType"`
}

The AMI resource allows the creation and management of a completely-custom *Amazon Machine Image* (AMI).

If you just want to duplicate an existing AMI, possibly copying it to another region, it's better to use `ec2.AmiCopy` instead.

If you just want to share an existing AMI with another AWS account, it's better to use `ec2.AmiLaunchPermission` instead.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAmi(ctx, "example", &ec2.AmiArgs{
			EbsBlockDevices: ec2.AmiEbsBlockDeviceArray{
				&ec2.AmiEbsBlockDeviceArgs{
					DeviceName: pulumi.String("/dev/xvda"),
					SnapshotId: pulumi.String("snap-xxxxxxxx"),
					VolumeSize: pulumi.Int(8),
				},
			},
			RootDeviceName:     pulumi.String("/dev/xvda"),
			VirtualizationType: pulumi.String("hvm"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ami` can be imported using the ID of the AMI, e.g.

```sh

$ pulumi import aws:ec2/ami:Ami example ami-12345678

```

func GetAmi

func GetAmi(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AmiState, opts ...pulumi.ResourceOption) (*Ami, error)

GetAmi gets an existing Ami resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAmi

func NewAmi(ctx *pulumi.Context,
	name string, args *AmiArgs, opts ...pulumi.ResourceOption) (*Ami, error)

NewAmi registers a new resource with the given unique name, arguments, and options.

func (*Ami) ElementType

func (*Ami) ElementType() reflect.Type

func (*Ami) ToAmiOutput

func (i *Ami) ToAmiOutput() AmiOutput

func (*Ami) ToAmiOutputWithContext

func (i *Ami) ToAmiOutputWithContext(ctx context.Context) AmiOutput

func (*Ami) ToAmiPtrOutput

func (i *Ami) ToAmiPtrOutput() AmiPtrOutput

func (*Ami) ToAmiPtrOutputWithContext

func (i *Ami) ToAmiPtrOutputWithContext(ctx context.Context) AmiPtrOutput

type AmiArgs

type AmiArgs struct {
	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringPtrInput
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiEbsBlockDeviceArrayInput
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolPtrInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiEphemeralBlockDeviceArrayInput
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation pulumi.StringPtrInput
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId pulumi.StringPtrInput
	// A region-unique name for the AMI.
	Name pulumi.StringPtrInput
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringPtrInput
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringPtrInput
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringPtrInput
}

The set of arguments for constructing a Ami resource.

func (AmiArgs) ElementType

func (AmiArgs) ElementType() reflect.Type

type AmiArray

type AmiArray []AmiInput

func (AmiArray) ElementType

func (AmiArray) ElementType() reflect.Type

func (AmiArray) ToAmiArrayOutput

func (i AmiArray) ToAmiArrayOutput() AmiArrayOutput

func (AmiArray) ToAmiArrayOutputWithContext

func (i AmiArray) ToAmiArrayOutputWithContext(ctx context.Context) AmiArrayOutput

type AmiArrayInput

type AmiArrayInput interface {
	pulumi.Input

	ToAmiArrayOutput() AmiArrayOutput
	ToAmiArrayOutputWithContext(context.Context) AmiArrayOutput
}

AmiArrayInput is an input type that accepts AmiArray and AmiArrayOutput values. You can construct a concrete instance of `AmiArrayInput` via:

AmiArray{ AmiArgs{...} }

type AmiArrayOutput

type AmiArrayOutput struct{ *pulumi.OutputState }

func (AmiArrayOutput) ElementType

func (AmiArrayOutput) ElementType() reflect.Type

func (AmiArrayOutput) Index

func (AmiArrayOutput) ToAmiArrayOutput

func (o AmiArrayOutput) ToAmiArrayOutput() AmiArrayOutput

func (AmiArrayOutput) ToAmiArrayOutputWithContext

func (o AmiArrayOutput) ToAmiArrayOutputWithContext(ctx context.Context) AmiArrayOutput

type AmiCopy

type AmiCopy struct {
	pulumi.CustomResourceState

	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringOutput `pulumi:"architecture"`
	// The ARN of the AMI.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ARN of the Outpost to which to copy the AMI.
	// Only specify this parameter when copying an AMI from an AWS Region to an Outpost. The AMI must be in the Region of the destination Outpost.
	DestinationOutpostArn pulumi.StringPtrOutput `pulumi:"destinationOutpostArn"`
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiCopyEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolOutput `pulumi:"enaSupport"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiCopyEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	Hypervisor            pulumi.StringOutput                    `pulumi:"hypervisor"`
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation   pulumi.StringOutput `pulumi:"imageLocation"`
	ImageOwnerAlias pulumi.StringOutput `pulumi:"imageOwnerAlias"`
	ImageType       pulumi.StringOutput `pulumi:"imageType"`
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId pulumi.StringOutput `pulumi:"kernelId"`
	// The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of
	// an image during a copy operation. This parameter is only required if you want to use a non-default CMK;
	// if this parameter is not specified, the default CMK for EBS is used
	KmsKeyId           pulumi.StringOutput `pulumi:"kmsKeyId"`
	ManageEbsSnapshots pulumi.BoolOutput   `pulumi:"manageEbsSnapshots"`
	// A region-unique name for the AMI.
	Name            pulumi.StringOutput `pulumi:"name"`
	OwnerId         pulumi.StringOutput `pulumi:"ownerId"`
	Platform        pulumi.StringOutput `pulumi:"platform"`
	PlatformDetails pulumi.StringOutput `pulumi:"platformDetails"`
	Public          pulumi.BoolOutput   `pulumi:"public"`
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringOutput `pulumi:"ramdiskId"`
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringOutput `pulumi:"rootDeviceName"`
	RootSnapshotId pulumi.StringOutput `pulumi:"rootSnapshotId"`
	// The id of the AMI to copy. This id must be valid in the region
	// given by `sourceAmiRegion`.
	SourceAmiId pulumi.StringOutput `pulumi:"sourceAmiId"`
	// The region from which the AMI will be copied. This may be the
	// same as the AWS provider region in order to create a copy within the same region.
	SourceAmiRegion pulumi.StringOutput `pulumi:"sourceAmiRegion"`
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringOutput `pulumi:"sriovNetSupport"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags           pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll        pulumi.StringMapOutput `pulumi:"tagsAll"`
	UsageOperation pulumi.StringOutput    `pulumi:"usageOperation"`
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringOutput `pulumi:"virtualizationType"`
}

The "AMI copy" resource allows duplication of an Amazon Machine Image (AMI), including cross-region copies.

If the source AMI has associated EBS snapshots, those will also be duplicated along with the AMI.

This is useful for taking a single AMI provisioned in one region and making it available in another for a multi-region deployment.

Copying an AMI can take several minutes. The creation of this resource will block until the new AMI is available for use on new instances.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAmiCopy(ctx, "example", &ec2.AmiCopyArgs{
			Description:     pulumi.String("A copy of ami-xxxxxxxx"),
			SourceAmiId:     pulumi.String("ami-xxxxxxxx"),
			SourceAmiRegion: pulumi.String("us-west-1"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAmiCopy

func GetAmiCopy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AmiCopyState, opts ...pulumi.ResourceOption) (*AmiCopy, error)

GetAmiCopy gets an existing AmiCopy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAmiCopy

func NewAmiCopy(ctx *pulumi.Context,
	name string, args *AmiCopyArgs, opts ...pulumi.ResourceOption) (*AmiCopy, error)

NewAmiCopy registers a new resource with the given unique name, arguments, and options.

func (*AmiCopy) ElementType

func (*AmiCopy) ElementType() reflect.Type

func (*AmiCopy) ToAmiCopyOutput

func (i *AmiCopy) ToAmiCopyOutput() AmiCopyOutput

func (*AmiCopy) ToAmiCopyOutputWithContext

func (i *AmiCopy) ToAmiCopyOutputWithContext(ctx context.Context) AmiCopyOutput

func (*AmiCopy) ToAmiCopyPtrOutput

func (i *AmiCopy) ToAmiCopyPtrOutput() AmiCopyPtrOutput

func (*AmiCopy) ToAmiCopyPtrOutputWithContext

func (i *AmiCopy) ToAmiCopyPtrOutputWithContext(ctx context.Context) AmiCopyPtrOutput

type AmiCopyArgs

type AmiCopyArgs struct {
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// The ARN of the Outpost to which to copy the AMI.
	// Only specify this parameter when copying an AMI from an AWS Region to an Outpost. The AMI must be in the Region of the destination Outpost.
	DestinationOutpostArn pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiCopyEbsBlockDeviceArrayInput
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiCopyEphemeralBlockDeviceArrayInput
	// The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of
	// an image during a copy operation. This parameter is only required if you want to use a non-default CMK;
	// if this parameter is not specified, the default CMK for EBS is used
	KmsKeyId pulumi.StringPtrInput
	// A region-unique name for the AMI.
	Name pulumi.StringPtrInput
	// The id of the AMI to copy. This id must be valid in the region
	// given by `sourceAmiRegion`.
	SourceAmiId pulumi.StringInput
	// The region from which the AMI will be copied. This may be the
	// same as the AWS provider region in order to create a copy within the same region.
	SourceAmiRegion pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a AmiCopy resource.

func (AmiCopyArgs) ElementType

func (AmiCopyArgs) ElementType() reflect.Type

type AmiCopyArray

type AmiCopyArray []AmiCopyInput

func (AmiCopyArray) ElementType

func (AmiCopyArray) ElementType() reflect.Type

func (AmiCopyArray) ToAmiCopyArrayOutput

func (i AmiCopyArray) ToAmiCopyArrayOutput() AmiCopyArrayOutput

func (AmiCopyArray) ToAmiCopyArrayOutputWithContext

func (i AmiCopyArray) ToAmiCopyArrayOutputWithContext(ctx context.Context) AmiCopyArrayOutput

type AmiCopyArrayInput

type AmiCopyArrayInput interface {
	pulumi.Input

	ToAmiCopyArrayOutput() AmiCopyArrayOutput
	ToAmiCopyArrayOutputWithContext(context.Context) AmiCopyArrayOutput
}

AmiCopyArrayInput is an input type that accepts AmiCopyArray and AmiCopyArrayOutput values. You can construct a concrete instance of `AmiCopyArrayInput` via:

AmiCopyArray{ AmiCopyArgs{...} }

type AmiCopyArrayOutput

type AmiCopyArrayOutput struct{ *pulumi.OutputState }

func (AmiCopyArrayOutput) ElementType

func (AmiCopyArrayOutput) ElementType() reflect.Type

func (AmiCopyArrayOutput) Index

func (AmiCopyArrayOutput) ToAmiCopyArrayOutput

func (o AmiCopyArrayOutput) ToAmiCopyArrayOutput() AmiCopyArrayOutput

func (AmiCopyArrayOutput) ToAmiCopyArrayOutputWithContext

func (o AmiCopyArrayOutput) ToAmiCopyArrayOutputWithContext(ctx context.Context) AmiCopyArrayOutput

type AmiCopyEbsBlockDevice

type AmiCopyEbsBlockDevice struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName *string `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted *bool `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops *int `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId *string `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput *int `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize *int `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType *string `pulumi:"volumeType"`
}

type AmiCopyEbsBlockDeviceArgs

type AmiCopyEbsBlockDeviceArgs struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (AmiCopyEbsBlockDeviceArgs) ElementType

func (AmiCopyEbsBlockDeviceArgs) ElementType() reflect.Type

func (AmiCopyEbsBlockDeviceArgs) ToAmiCopyEbsBlockDeviceOutput

func (i AmiCopyEbsBlockDeviceArgs) ToAmiCopyEbsBlockDeviceOutput() AmiCopyEbsBlockDeviceOutput

func (AmiCopyEbsBlockDeviceArgs) ToAmiCopyEbsBlockDeviceOutputWithContext

func (i AmiCopyEbsBlockDeviceArgs) ToAmiCopyEbsBlockDeviceOutputWithContext(ctx context.Context) AmiCopyEbsBlockDeviceOutput

type AmiCopyEbsBlockDeviceArray

type AmiCopyEbsBlockDeviceArray []AmiCopyEbsBlockDeviceInput

func (AmiCopyEbsBlockDeviceArray) ElementType

func (AmiCopyEbsBlockDeviceArray) ElementType() reflect.Type

func (AmiCopyEbsBlockDeviceArray) ToAmiCopyEbsBlockDeviceArrayOutput

func (i AmiCopyEbsBlockDeviceArray) ToAmiCopyEbsBlockDeviceArrayOutput() AmiCopyEbsBlockDeviceArrayOutput

func (AmiCopyEbsBlockDeviceArray) ToAmiCopyEbsBlockDeviceArrayOutputWithContext

func (i AmiCopyEbsBlockDeviceArray) ToAmiCopyEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiCopyEbsBlockDeviceArrayOutput

type AmiCopyEbsBlockDeviceArrayInput

type AmiCopyEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiCopyEbsBlockDeviceArrayOutput() AmiCopyEbsBlockDeviceArrayOutput
	ToAmiCopyEbsBlockDeviceArrayOutputWithContext(context.Context) AmiCopyEbsBlockDeviceArrayOutput
}

AmiCopyEbsBlockDeviceArrayInput is an input type that accepts AmiCopyEbsBlockDeviceArray and AmiCopyEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiCopyEbsBlockDeviceArrayInput` via:

AmiCopyEbsBlockDeviceArray{ AmiCopyEbsBlockDeviceArgs{...} }

type AmiCopyEbsBlockDeviceArrayOutput

type AmiCopyEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiCopyEbsBlockDeviceArrayOutput) ElementType

func (AmiCopyEbsBlockDeviceArrayOutput) Index

func (AmiCopyEbsBlockDeviceArrayOutput) ToAmiCopyEbsBlockDeviceArrayOutput

func (o AmiCopyEbsBlockDeviceArrayOutput) ToAmiCopyEbsBlockDeviceArrayOutput() AmiCopyEbsBlockDeviceArrayOutput

func (AmiCopyEbsBlockDeviceArrayOutput) ToAmiCopyEbsBlockDeviceArrayOutputWithContext

func (o AmiCopyEbsBlockDeviceArrayOutput) ToAmiCopyEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiCopyEbsBlockDeviceArrayOutput

type AmiCopyEbsBlockDeviceInput

type AmiCopyEbsBlockDeviceInput interface {
	pulumi.Input

	ToAmiCopyEbsBlockDeviceOutput() AmiCopyEbsBlockDeviceOutput
	ToAmiCopyEbsBlockDeviceOutputWithContext(context.Context) AmiCopyEbsBlockDeviceOutput
}

AmiCopyEbsBlockDeviceInput is an input type that accepts AmiCopyEbsBlockDeviceArgs and AmiCopyEbsBlockDeviceOutput values. You can construct a concrete instance of `AmiCopyEbsBlockDeviceInput` via:

AmiCopyEbsBlockDeviceArgs{...}

type AmiCopyEbsBlockDeviceOutput

type AmiCopyEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiCopyEbsBlockDeviceOutput) DeleteOnTermination

func (o AmiCopyEbsBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.

func (AmiCopyEbsBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiCopyEbsBlockDeviceOutput) ElementType

func (AmiCopyEbsBlockDeviceOutput) Encrypted

Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.

func (AmiCopyEbsBlockDeviceOutput) Iops

Number of I/O operations per second the created volumes will support.

func (AmiCopyEbsBlockDeviceOutput) SnapshotId

The id of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced snapshot.

func (AmiCopyEbsBlockDeviceOutput) Throughput

The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.

func (AmiCopyEbsBlockDeviceOutput) ToAmiCopyEbsBlockDeviceOutput

func (o AmiCopyEbsBlockDeviceOutput) ToAmiCopyEbsBlockDeviceOutput() AmiCopyEbsBlockDeviceOutput

func (AmiCopyEbsBlockDeviceOutput) ToAmiCopyEbsBlockDeviceOutputWithContext

func (o AmiCopyEbsBlockDeviceOutput) ToAmiCopyEbsBlockDeviceOutputWithContext(ctx context.Context) AmiCopyEbsBlockDeviceOutput

func (AmiCopyEbsBlockDeviceOutput) VolumeSize

The size of created volumes in GiB. If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size as the selected snapshot.

func (AmiCopyEbsBlockDeviceOutput) VolumeType

The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).

type AmiCopyEphemeralBlockDevice

type AmiCopyEphemeralBlockDevice struct {
	// The path at which the device is exposed to created instances.
	DeviceName *string `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName *string `pulumi:"virtualName"`
}

type AmiCopyEphemeralBlockDeviceArgs

type AmiCopyEphemeralBlockDeviceArgs struct {
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (AmiCopyEphemeralBlockDeviceArgs) ElementType

func (AmiCopyEphemeralBlockDeviceArgs) ToAmiCopyEphemeralBlockDeviceOutput

func (i AmiCopyEphemeralBlockDeviceArgs) ToAmiCopyEphemeralBlockDeviceOutput() AmiCopyEphemeralBlockDeviceOutput

func (AmiCopyEphemeralBlockDeviceArgs) ToAmiCopyEphemeralBlockDeviceOutputWithContext

func (i AmiCopyEphemeralBlockDeviceArgs) ToAmiCopyEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiCopyEphemeralBlockDeviceOutput

type AmiCopyEphemeralBlockDeviceArray

type AmiCopyEphemeralBlockDeviceArray []AmiCopyEphemeralBlockDeviceInput

func (AmiCopyEphemeralBlockDeviceArray) ElementType

func (AmiCopyEphemeralBlockDeviceArray) ToAmiCopyEphemeralBlockDeviceArrayOutput

func (i AmiCopyEphemeralBlockDeviceArray) ToAmiCopyEphemeralBlockDeviceArrayOutput() AmiCopyEphemeralBlockDeviceArrayOutput

func (AmiCopyEphemeralBlockDeviceArray) ToAmiCopyEphemeralBlockDeviceArrayOutputWithContext

func (i AmiCopyEphemeralBlockDeviceArray) ToAmiCopyEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiCopyEphemeralBlockDeviceArrayOutput

type AmiCopyEphemeralBlockDeviceArrayInput

type AmiCopyEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiCopyEphemeralBlockDeviceArrayOutput() AmiCopyEphemeralBlockDeviceArrayOutput
	ToAmiCopyEphemeralBlockDeviceArrayOutputWithContext(context.Context) AmiCopyEphemeralBlockDeviceArrayOutput
}

AmiCopyEphemeralBlockDeviceArrayInput is an input type that accepts AmiCopyEphemeralBlockDeviceArray and AmiCopyEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiCopyEphemeralBlockDeviceArrayInput` via:

AmiCopyEphemeralBlockDeviceArray{ AmiCopyEphemeralBlockDeviceArgs{...} }

type AmiCopyEphemeralBlockDeviceArrayOutput

type AmiCopyEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiCopyEphemeralBlockDeviceArrayOutput) ElementType

func (AmiCopyEphemeralBlockDeviceArrayOutput) Index

func (AmiCopyEphemeralBlockDeviceArrayOutput) ToAmiCopyEphemeralBlockDeviceArrayOutput

func (o AmiCopyEphemeralBlockDeviceArrayOutput) ToAmiCopyEphemeralBlockDeviceArrayOutput() AmiCopyEphemeralBlockDeviceArrayOutput

func (AmiCopyEphemeralBlockDeviceArrayOutput) ToAmiCopyEphemeralBlockDeviceArrayOutputWithContext

func (o AmiCopyEphemeralBlockDeviceArrayOutput) ToAmiCopyEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiCopyEphemeralBlockDeviceArrayOutput

type AmiCopyEphemeralBlockDeviceInput

type AmiCopyEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToAmiCopyEphemeralBlockDeviceOutput() AmiCopyEphemeralBlockDeviceOutput
	ToAmiCopyEphemeralBlockDeviceOutputWithContext(context.Context) AmiCopyEphemeralBlockDeviceOutput
}

AmiCopyEphemeralBlockDeviceInput is an input type that accepts AmiCopyEphemeralBlockDeviceArgs and AmiCopyEphemeralBlockDeviceOutput values. You can construct a concrete instance of `AmiCopyEphemeralBlockDeviceInput` via:

AmiCopyEphemeralBlockDeviceArgs{...}

type AmiCopyEphemeralBlockDeviceOutput

type AmiCopyEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiCopyEphemeralBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiCopyEphemeralBlockDeviceOutput) ElementType

func (AmiCopyEphemeralBlockDeviceOutput) ToAmiCopyEphemeralBlockDeviceOutput

func (o AmiCopyEphemeralBlockDeviceOutput) ToAmiCopyEphemeralBlockDeviceOutput() AmiCopyEphemeralBlockDeviceOutput

func (AmiCopyEphemeralBlockDeviceOutput) ToAmiCopyEphemeralBlockDeviceOutputWithContext

func (o AmiCopyEphemeralBlockDeviceOutput) ToAmiCopyEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiCopyEphemeralBlockDeviceOutput

func (AmiCopyEphemeralBlockDeviceOutput) VirtualName

A name for the ephemeral device, of the form "ephemeralN" where *N* is a volume number starting from zero.

type AmiCopyInput

type AmiCopyInput interface {
	pulumi.Input

	ToAmiCopyOutput() AmiCopyOutput
	ToAmiCopyOutputWithContext(ctx context.Context) AmiCopyOutput
}

type AmiCopyMap

type AmiCopyMap map[string]AmiCopyInput

func (AmiCopyMap) ElementType

func (AmiCopyMap) ElementType() reflect.Type

func (AmiCopyMap) ToAmiCopyMapOutput

func (i AmiCopyMap) ToAmiCopyMapOutput() AmiCopyMapOutput

func (AmiCopyMap) ToAmiCopyMapOutputWithContext

func (i AmiCopyMap) ToAmiCopyMapOutputWithContext(ctx context.Context) AmiCopyMapOutput

type AmiCopyMapInput

type AmiCopyMapInput interface {
	pulumi.Input

	ToAmiCopyMapOutput() AmiCopyMapOutput
	ToAmiCopyMapOutputWithContext(context.Context) AmiCopyMapOutput
}

AmiCopyMapInput is an input type that accepts AmiCopyMap and AmiCopyMapOutput values. You can construct a concrete instance of `AmiCopyMapInput` via:

AmiCopyMap{ "key": AmiCopyArgs{...} }

type AmiCopyMapOutput

type AmiCopyMapOutput struct{ *pulumi.OutputState }

func (AmiCopyMapOutput) ElementType

func (AmiCopyMapOutput) ElementType() reflect.Type

func (AmiCopyMapOutput) MapIndex

func (AmiCopyMapOutput) ToAmiCopyMapOutput

func (o AmiCopyMapOutput) ToAmiCopyMapOutput() AmiCopyMapOutput

func (AmiCopyMapOutput) ToAmiCopyMapOutputWithContext

func (o AmiCopyMapOutput) ToAmiCopyMapOutputWithContext(ctx context.Context) AmiCopyMapOutput

type AmiCopyOutput

type AmiCopyOutput struct{ *pulumi.OutputState }

func (AmiCopyOutput) ElementType

func (AmiCopyOutput) ElementType() reflect.Type

func (AmiCopyOutput) ToAmiCopyOutput

func (o AmiCopyOutput) ToAmiCopyOutput() AmiCopyOutput

func (AmiCopyOutput) ToAmiCopyOutputWithContext

func (o AmiCopyOutput) ToAmiCopyOutputWithContext(ctx context.Context) AmiCopyOutput

func (AmiCopyOutput) ToAmiCopyPtrOutput

func (o AmiCopyOutput) ToAmiCopyPtrOutput() AmiCopyPtrOutput

func (AmiCopyOutput) ToAmiCopyPtrOutputWithContext

func (o AmiCopyOutput) ToAmiCopyPtrOutputWithContext(ctx context.Context) AmiCopyPtrOutput

type AmiCopyPtrInput

type AmiCopyPtrInput interface {
	pulumi.Input

	ToAmiCopyPtrOutput() AmiCopyPtrOutput
	ToAmiCopyPtrOutputWithContext(ctx context.Context) AmiCopyPtrOutput
}

type AmiCopyPtrOutput

type AmiCopyPtrOutput struct{ *pulumi.OutputState }

func (AmiCopyPtrOutput) Elem added in v4.15.0

func (AmiCopyPtrOutput) ElementType

func (AmiCopyPtrOutput) ElementType() reflect.Type

func (AmiCopyPtrOutput) ToAmiCopyPtrOutput

func (o AmiCopyPtrOutput) ToAmiCopyPtrOutput() AmiCopyPtrOutput

func (AmiCopyPtrOutput) ToAmiCopyPtrOutputWithContext

func (o AmiCopyPtrOutput) ToAmiCopyPtrOutputWithContext(ctx context.Context) AmiCopyPtrOutput

type AmiCopyState

type AmiCopyState struct {
	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringPtrInput
	// The ARN of the AMI.
	Arn pulumi.StringPtrInput
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// The ARN of the Outpost to which to copy the AMI.
	// Only specify this parameter when copying an AMI from an AWS Region to an Outpost. The AMI must be in the Region of the destination Outpost.
	DestinationOutpostArn pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiCopyEbsBlockDeviceArrayInput
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolPtrInput
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiCopyEphemeralBlockDeviceArrayInput
	Hypervisor            pulumi.StringPtrInput
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation   pulumi.StringPtrInput
	ImageOwnerAlias pulumi.StringPtrInput
	ImageType       pulumi.StringPtrInput
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId pulumi.StringPtrInput
	// The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of
	// an image during a copy operation. This parameter is only required if you want to use a non-default CMK;
	// if this parameter is not specified, the default CMK for EBS is used
	KmsKeyId           pulumi.StringPtrInput
	ManageEbsSnapshots pulumi.BoolPtrInput
	// A region-unique name for the AMI.
	Name            pulumi.StringPtrInput
	OwnerId         pulumi.StringPtrInput
	Platform        pulumi.StringPtrInput
	PlatformDetails pulumi.StringPtrInput
	Public          pulumi.BoolPtrInput
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringPtrInput
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringPtrInput
	RootSnapshotId pulumi.StringPtrInput
	// The id of the AMI to copy. This id must be valid in the region
	// given by `sourceAmiRegion`.
	SourceAmiId pulumi.StringPtrInput
	// The region from which the AMI will be copied. This may be the
	// same as the AWS provider region in order to create a copy within the same region.
	SourceAmiRegion pulumi.StringPtrInput
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags           pulumi.StringMapInput
	TagsAll        pulumi.StringMapInput
	UsageOperation pulumi.StringPtrInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringPtrInput
}

func (AmiCopyState) ElementType

func (AmiCopyState) ElementType() reflect.Type

type AmiEbsBlockDevice

type AmiEbsBlockDevice struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName string `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted *bool `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops *int `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId *string `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput *int `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize *int `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType *string `pulumi:"volumeType"`
}

type AmiEbsBlockDeviceArgs

type AmiEbsBlockDeviceArgs struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (AmiEbsBlockDeviceArgs) ElementType

func (AmiEbsBlockDeviceArgs) ElementType() reflect.Type

func (AmiEbsBlockDeviceArgs) ToAmiEbsBlockDeviceOutput

func (i AmiEbsBlockDeviceArgs) ToAmiEbsBlockDeviceOutput() AmiEbsBlockDeviceOutput

func (AmiEbsBlockDeviceArgs) ToAmiEbsBlockDeviceOutputWithContext

func (i AmiEbsBlockDeviceArgs) ToAmiEbsBlockDeviceOutputWithContext(ctx context.Context) AmiEbsBlockDeviceOutput

type AmiEbsBlockDeviceArray

type AmiEbsBlockDeviceArray []AmiEbsBlockDeviceInput

func (AmiEbsBlockDeviceArray) ElementType

func (AmiEbsBlockDeviceArray) ElementType() reflect.Type

func (AmiEbsBlockDeviceArray) ToAmiEbsBlockDeviceArrayOutput

func (i AmiEbsBlockDeviceArray) ToAmiEbsBlockDeviceArrayOutput() AmiEbsBlockDeviceArrayOutput

func (AmiEbsBlockDeviceArray) ToAmiEbsBlockDeviceArrayOutputWithContext

func (i AmiEbsBlockDeviceArray) ToAmiEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiEbsBlockDeviceArrayOutput

type AmiEbsBlockDeviceArrayInput

type AmiEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiEbsBlockDeviceArrayOutput() AmiEbsBlockDeviceArrayOutput
	ToAmiEbsBlockDeviceArrayOutputWithContext(context.Context) AmiEbsBlockDeviceArrayOutput
}

AmiEbsBlockDeviceArrayInput is an input type that accepts AmiEbsBlockDeviceArray and AmiEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiEbsBlockDeviceArrayInput` via:

AmiEbsBlockDeviceArray{ AmiEbsBlockDeviceArgs{...} }

type AmiEbsBlockDeviceArrayOutput

type AmiEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiEbsBlockDeviceArrayOutput) ElementType

func (AmiEbsBlockDeviceArrayOutput) Index

func (AmiEbsBlockDeviceArrayOutput) ToAmiEbsBlockDeviceArrayOutput

func (o AmiEbsBlockDeviceArrayOutput) ToAmiEbsBlockDeviceArrayOutput() AmiEbsBlockDeviceArrayOutput

func (AmiEbsBlockDeviceArrayOutput) ToAmiEbsBlockDeviceArrayOutputWithContext

func (o AmiEbsBlockDeviceArrayOutput) ToAmiEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiEbsBlockDeviceArrayOutput

type AmiEbsBlockDeviceInput

type AmiEbsBlockDeviceInput interface {
	pulumi.Input

	ToAmiEbsBlockDeviceOutput() AmiEbsBlockDeviceOutput
	ToAmiEbsBlockDeviceOutputWithContext(context.Context) AmiEbsBlockDeviceOutput
}

AmiEbsBlockDeviceInput is an input type that accepts AmiEbsBlockDeviceArgs and AmiEbsBlockDeviceOutput values. You can construct a concrete instance of `AmiEbsBlockDeviceInput` via:

AmiEbsBlockDeviceArgs{...}

type AmiEbsBlockDeviceOutput

type AmiEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiEbsBlockDeviceOutput) DeleteOnTermination

func (o AmiEbsBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.

func (AmiEbsBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiEbsBlockDeviceOutput) ElementType

func (AmiEbsBlockDeviceOutput) ElementType() reflect.Type

func (AmiEbsBlockDeviceOutput) Encrypted

Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.

func (AmiEbsBlockDeviceOutput) Iops

Number of I/O operations per second the created volumes will support.

func (AmiEbsBlockDeviceOutput) SnapshotId

The id of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced snapshot.

func (AmiEbsBlockDeviceOutput) Throughput

The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.

func (AmiEbsBlockDeviceOutput) ToAmiEbsBlockDeviceOutput

func (o AmiEbsBlockDeviceOutput) ToAmiEbsBlockDeviceOutput() AmiEbsBlockDeviceOutput

func (AmiEbsBlockDeviceOutput) ToAmiEbsBlockDeviceOutputWithContext

func (o AmiEbsBlockDeviceOutput) ToAmiEbsBlockDeviceOutputWithContext(ctx context.Context) AmiEbsBlockDeviceOutput

func (AmiEbsBlockDeviceOutput) VolumeSize

The size of created volumes in GiB. If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size as the selected snapshot.

func (AmiEbsBlockDeviceOutput) VolumeType

The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).

type AmiEphemeralBlockDevice

type AmiEphemeralBlockDevice struct {
	// The path at which the device is exposed to created instances.
	DeviceName string `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName string `pulumi:"virtualName"`
}

type AmiEphemeralBlockDeviceArgs

type AmiEphemeralBlockDeviceArgs struct {
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (AmiEphemeralBlockDeviceArgs) ElementType

func (AmiEphemeralBlockDeviceArgs) ToAmiEphemeralBlockDeviceOutput

func (i AmiEphemeralBlockDeviceArgs) ToAmiEphemeralBlockDeviceOutput() AmiEphemeralBlockDeviceOutput

func (AmiEphemeralBlockDeviceArgs) ToAmiEphemeralBlockDeviceOutputWithContext

func (i AmiEphemeralBlockDeviceArgs) ToAmiEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiEphemeralBlockDeviceOutput

type AmiEphemeralBlockDeviceArray

type AmiEphemeralBlockDeviceArray []AmiEphemeralBlockDeviceInput

func (AmiEphemeralBlockDeviceArray) ElementType

func (AmiEphemeralBlockDeviceArray) ToAmiEphemeralBlockDeviceArrayOutput

func (i AmiEphemeralBlockDeviceArray) ToAmiEphemeralBlockDeviceArrayOutput() AmiEphemeralBlockDeviceArrayOutput

func (AmiEphemeralBlockDeviceArray) ToAmiEphemeralBlockDeviceArrayOutputWithContext

func (i AmiEphemeralBlockDeviceArray) ToAmiEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiEphemeralBlockDeviceArrayOutput

type AmiEphemeralBlockDeviceArrayInput

type AmiEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiEphemeralBlockDeviceArrayOutput() AmiEphemeralBlockDeviceArrayOutput
	ToAmiEphemeralBlockDeviceArrayOutputWithContext(context.Context) AmiEphemeralBlockDeviceArrayOutput
}

AmiEphemeralBlockDeviceArrayInput is an input type that accepts AmiEphemeralBlockDeviceArray and AmiEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiEphemeralBlockDeviceArrayInput` via:

AmiEphemeralBlockDeviceArray{ AmiEphemeralBlockDeviceArgs{...} }

type AmiEphemeralBlockDeviceArrayOutput

type AmiEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiEphemeralBlockDeviceArrayOutput) ElementType

func (AmiEphemeralBlockDeviceArrayOutput) Index

func (AmiEphemeralBlockDeviceArrayOutput) ToAmiEphemeralBlockDeviceArrayOutput

func (o AmiEphemeralBlockDeviceArrayOutput) ToAmiEphemeralBlockDeviceArrayOutput() AmiEphemeralBlockDeviceArrayOutput

func (AmiEphemeralBlockDeviceArrayOutput) ToAmiEphemeralBlockDeviceArrayOutputWithContext

func (o AmiEphemeralBlockDeviceArrayOutput) ToAmiEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiEphemeralBlockDeviceArrayOutput

type AmiEphemeralBlockDeviceInput

type AmiEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToAmiEphemeralBlockDeviceOutput() AmiEphemeralBlockDeviceOutput
	ToAmiEphemeralBlockDeviceOutputWithContext(context.Context) AmiEphemeralBlockDeviceOutput
}

AmiEphemeralBlockDeviceInput is an input type that accepts AmiEphemeralBlockDeviceArgs and AmiEphemeralBlockDeviceOutput values. You can construct a concrete instance of `AmiEphemeralBlockDeviceInput` via:

AmiEphemeralBlockDeviceArgs{...}

type AmiEphemeralBlockDeviceOutput

type AmiEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiEphemeralBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiEphemeralBlockDeviceOutput) ElementType

func (AmiEphemeralBlockDeviceOutput) ToAmiEphemeralBlockDeviceOutput

func (o AmiEphemeralBlockDeviceOutput) ToAmiEphemeralBlockDeviceOutput() AmiEphemeralBlockDeviceOutput

func (AmiEphemeralBlockDeviceOutput) ToAmiEphemeralBlockDeviceOutputWithContext

func (o AmiEphemeralBlockDeviceOutput) ToAmiEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiEphemeralBlockDeviceOutput

func (AmiEphemeralBlockDeviceOutput) VirtualName

A name for the ephemeral device, of the form "ephemeralN" where *N* is a volume number starting from zero.

type AmiFromInstance

type AmiFromInstance struct {
	pulumi.CustomResourceState

	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringOutput `pulumi:"architecture"`
	// The ARN of the AMI.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiFromInstanceEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolOutput `pulumi:"enaSupport"`
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiFromInstanceEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	Hypervisor            pulumi.StringOutput                            `pulumi:"hypervisor"`
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation   pulumi.StringOutput `pulumi:"imageLocation"`
	ImageOwnerAlias pulumi.StringOutput `pulumi:"imageOwnerAlias"`
	ImageType       pulumi.StringOutput `pulumi:"imageType"`
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId           pulumi.StringOutput `pulumi:"kernelId"`
	ManageEbsSnapshots pulumi.BoolOutput   `pulumi:"manageEbsSnapshots"`
	// A region-unique name for the AMI.
	Name            pulumi.StringOutput `pulumi:"name"`
	OwnerId         pulumi.StringOutput `pulumi:"ownerId"`
	Platform        pulumi.StringOutput `pulumi:"platform"`
	PlatformDetails pulumi.StringOutput `pulumi:"platformDetails"`
	Public          pulumi.BoolOutput   `pulumi:"public"`
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringOutput `pulumi:"ramdiskId"`
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringOutput `pulumi:"rootDeviceName"`
	RootSnapshotId pulumi.StringOutput `pulumi:"rootSnapshotId"`
	// Boolean that overrides the behavior of stopping
	// the instance before snapshotting. This is risky since it may cause a snapshot of an
	// inconsistent filesystem state, but can be used to avoid downtime if the user otherwise
	// guarantees that no filesystem writes will be underway at the time of snapshot.
	SnapshotWithoutReboot pulumi.BoolPtrOutput `pulumi:"snapshotWithoutReboot"`
	// The id of the instance to use as the basis of the AMI.
	SourceInstanceId pulumi.StringOutput `pulumi:"sourceInstanceId"`
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringOutput `pulumi:"sriovNetSupport"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags           pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll        pulumi.StringMapOutput `pulumi:"tagsAll"`
	UsageOperation pulumi.StringOutput    `pulumi:"usageOperation"`
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringOutput `pulumi:"virtualizationType"`
}

The "AMI from instance" resource allows the creation of an Amazon Machine Image (AMI) modelled after an existing EBS-backed EC2 instance.

The created AMI will refer to implicitly-created snapshots of the instance's EBS volumes and mimick its assigned block device configuration at the time the resource is created.

This resource is best applied to an instance that is stopped when this instance is created, so that the contents of the created image are predictable. When applied to an instance that is running, *the instance will be stopped before taking the snapshots and then started back up again*, resulting in a period of downtime.

Note that the source instance is inspected only at the initial creation of this resource. Ongoing updates to the referenced instance will not be propagated into the generated AMI. Users may taint or otherwise recreate the resource in order to produce a fresh snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAmiFromInstance(ctx, "example", &ec2.AmiFromInstanceArgs{
			SourceInstanceId: pulumi.String("i-xxxxxxxx"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAmiFromInstance

func GetAmiFromInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AmiFromInstanceState, opts ...pulumi.ResourceOption) (*AmiFromInstance, error)

GetAmiFromInstance gets an existing AmiFromInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAmiFromInstance

func NewAmiFromInstance(ctx *pulumi.Context,
	name string, args *AmiFromInstanceArgs, opts ...pulumi.ResourceOption) (*AmiFromInstance, error)

NewAmiFromInstance registers a new resource with the given unique name, arguments, and options.

func (*AmiFromInstance) ElementType

func (*AmiFromInstance) ElementType() reflect.Type

func (*AmiFromInstance) ToAmiFromInstanceOutput

func (i *AmiFromInstance) ToAmiFromInstanceOutput() AmiFromInstanceOutput

func (*AmiFromInstance) ToAmiFromInstanceOutputWithContext

func (i *AmiFromInstance) ToAmiFromInstanceOutputWithContext(ctx context.Context) AmiFromInstanceOutput

func (*AmiFromInstance) ToAmiFromInstancePtrOutput

func (i *AmiFromInstance) ToAmiFromInstancePtrOutput() AmiFromInstancePtrOutput

func (*AmiFromInstance) ToAmiFromInstancePtrOutputWithContext

func (i *AmiFromInstance) ToAmiFromInstancePtrOutputWithContext(ctx context.Context) AmiFromInstancePtrOutput

type AmiFromInstanceArgs

type AmiFromInstanceArgs struct {
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiFromInstanceEbsBlockDeviceArrayInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiFromInstanceEphemeralBlockDeviceArrayInput
	// A region-unique name for the AMI.
	Name pulumi.StringPtrInput
	// Boolean that overrides the behavior of stopping
	// the instance before snapshotting. This is risky since it may cause a snapshot of an
	// inconsistent filesystem state, but can be used to avoid downtime if the user otherwise
	// guarantees that no filesystem writes will be underway at the time of snapshot.
	SnapshotWithoutReboot pulumi.BoolPtrInput
	// The id of the instance to use as the basis of the AMI.
	SourceInstanceId pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a AmiFromInstance resource.

func (AmiFromInstanceArgs) ElementType

func (AmiFromInstanceArgs) ElementType() reflect.Type

type AmiFromInstanceArray

type AmiFromInstanceArray []AmiFromInstanceInput

func (AmiFromInstanceArray) ElementType

func (AmiFromInstanceArray) ElementType() reflect.Type

func (AmiFromInstanceArray) ToAmiFromInstanceArrayOutput

func (i AmiFromInstanceArray) ToAmiFromInstanceArrayOutput() AmiFromInstanceArrayOutput

func (AmiFromInstanceArray) ToAmiFromInstanceArrayOutputWithContext

func (i AmiFromInstanceArray) ToAmiFromInstanceArrayOutputWithContext(ctx context.Context) AmiFromInstanceArrayOutput

type AmiFromInstanceArrayInput

type AmiFromInstanceArrayInput interface {
	pulumi.Input

	ToAmiFromInstanceArrayOutput() AmiFromInstanceArrayOutput
	ToAmiFromInstanceArrayOutputWithContext(context.Context) AmiFromInstanceArrayOutput
}

AmiFromInstanceArrayInput is an input type that accepts AmiFromInstanceArray and AmiFromInstanceArrayOutput values. You can construct a concrete instance of `AmiFromInstanceArrayInput` via:

AmiFromInstanceArray{ AmiFromInstanceArgs{...} }

type AmiFromInstanceArrayOutput

type AmiFromInstanceArrayOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceArrayOutput) ElementType

func (AmiFromInstanceArrayOutput) ElementType() reflect.Type

func (AmiFromInstanceArrayOutput) Index

func (AmiFromInstanceArrayOutput) ToAmiFromInstanceArrayOutput

func (o AmiFromInstanceArrayOutput) ToAmiFromInstanceArrayOutput() AmiFromInstanceArrayOutput

func (AmiFromInstanceArrayOutput) ToAmiFromInstanceArrayOutputWithContext

func (o AmiFromInstanceArrayOutput) ToAmiFromInstanceArrayOutputWithContext(ctx context.Context) AmiFromInstanceArrayOutput

type AmiFromInstanceEbsBlockDevice

type AmiFromInstanceEbsBlockDevice struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName *string `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted *bool `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops *int `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId *string `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput *int `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize *int `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType *string `pulumi:"volumeType"`
}

type AmiFromInstanceEbsBlockDeviceArgs

type AmiFromInstanceEbsBlockDeviceArgs struct {
	// Boolean controlling whether the EBS volumes created to
	// support each created instance will be deleted once that instance is terminated.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Number of I/O operations per second the
	// created volumes will support.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The id of an EBS snapshot that will be used to initialize the created
	// EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced
	// snapshot.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// The size of created volumes in GiB.
	// If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size
	// as the selected snapshot.
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (AmiFromInstanceEbsBlockDeviceArgs) ElementType

func (AmiFromInstanceEbsBlockDeviceArgs) ToAmiFromInstanceEbsBlockDeviceOutput

func (i AmiFromInstanceEbsBlockDeviceArgs) ToAmiFromInstanceEbsBlockDeviceOutput() AmiFromInstanceEbsBlockDeviceOutput

func (AmiFromInstanceEbsBlockDeviceArgs) ToAmiFromInstanceEbsBlockDeviceOutputWithContext

func (i AmiFromInstanceEbsBlockDeviceArgs) ToAmiFromInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) AmiFromInstanceEbsBlockDeviceOutput

type AmiFromInstanceEbsBlockDeviceArray

type AmiFromInstanceEbsBlockDeviceArray []AmiFromInstanceEbsBlockDeviceInput

func (AmiFromInstanceEbsBlockDeviceArray) ElementType

func (AmiFromInstanceEbsBlockDeviceArray) ToAmiFromInstanceEbsBlockDeviceArrayOutput

func (i AmiFromInstanceEbsBlockDeviceArray) ToAmiFromInstanceEbsBlockDeviceArrayOutput() AmiFromInstanceEbsBlockDeviceArrayOutput

func (AmiFromInstanceEbsBlockDeviceArray) ToAmiFromInstanceEbsBlockDeviceArrayOutputWithContext

func (i AmiFromInstanceEbsBlockDeviceArray) ToAmiFromInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiFromInstanceEbsBlockDeviceArrayOutput

type AmiFromInstanceEbsBlockDeviceArrayInput

type AmiFromInstanceEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiFromInstanceEbsBlockDeviceArrayOutput() AmiFromInstanceEbsBlockDeviceArrayOutput
	ToAmiFromInstanceEbsBlockDeviceArrayOutputWithContext(context.Context) AmiFromInstanceEbsBlockDeviceArrayOutput
}

AmiFromInstanceEbsBlockDeviceArrayInput is an input type that accepts AmiFromInstanceEbsBlockDeviceArray and AmiFromInstanceEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiFromInstanceEbsBlockDeviceArrayInput` via:

AmiFromInstanceEbsBlockDeviceArray{ AmiFromInstanceEbsBlockDeviceArgs{...} }

type AmiFromInstanceEbsBlockDeviceArrayOutput

type AmiFromInstanceEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceEbsBlockDeviceArrayOutput) ElementType

func (AmiFromInstanceEbsBlockDeviceArrayOutput) Index

func (AmiFromInstanceEbsBlockDeviceArrayOutput) ToAmiFromInstanceEbsBlockDeviceArrayOutput

func (o AmiFromInstanceEbsBlockDeviceArrayOutput) ToAmiFromInstanceEbsBlockDeviceArrayOutput() AmiFromInstanceEbsBlockDeviceArrayOutput

func (AmiFromInstanceEbsBlockDeviceArrayOutput) ToAmiFromInstanceEbsBlockDeviceArrayOutputWithContext

func (o AmiFromInstanceEbsBlockDeviceArrayOutput) ToAmiFromInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) AmiFromInstanceEbsBlockDeviceArrayOutput

type AmiFromInstanceEbsBlockDeviceInput

type AmiFromInstanceEbsBlockDeviceInput interface {
	pulumi.Input

	ToAmiFromInstanceEbsBlockDeviceOutput() AmiFromInstanceEbsBlockDeviceOutput
	ToAmiFromInstanceEbsBlockDeviceOutputWithContext(context.Context) AmiFromInstanceEbsBlockDeviceOutput
}

AmiFromInstanceEbsBlockDeviceInput is an input type that accepts AmiFromInstanceEbsBlockDeviceArgs and AmiFromInstanceEbsBlockDeviceOutput values. You can construct a concrete instance of `AmiFromInstanceEbsBlockDeviceInput` via:

AmiFromInstanceEbsBlockDeviceArgs{...}

type AmiFromInstanceEbsBlockDeviceOutput

type AmiFromInstanceEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceEbsBlockDeviceOutput) DeleteOnTermination

Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.

func (AmiFromInstanceEbsBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiFromInstanceEbsBlockDeviceOutput) ElementType

func (AmiFromInstanceEbsBlockDeviceOutput) Encrypted

Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with `snapshotId`.

func (AmiFromInstanceEbsBlockDeviceOutput) Iops

Number of I/O operations per second the created volumes will support.

func (AmiFromInstanceEbsBlockDeviceOutput) SnapshotId

The id of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the `volumeSize` attribute must be at least as large as the referenced snapshot.

func (AmiFromInstanceEbsBlockDeviceOutput) Throughput

The throughput that the EBS volume supports, in MiB/s. Only valid for `volumeType` of `gp3`.

func (AmiFromInstanceEbsBlockDeviceOutput) ToAmiFromInstanceEbsBlockDeviceOutput

func (o AmiFromInstanceEbsBlockDeviceOutput) ToAmiFromInstanceEbsBlockDeviceOutput() AmiFromInstanceEbsBlockDeviceOutput

func (AmiFromInstanceEbsBlockDeviceOutput) ToAmiFromInstanceEbsBlockDeviceOutputWithContext

func (o AmiFromInstanceEbsBlockDeviceOutput) ToAmiFromInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) AmiFromInstanceEbsBlockDeviceOutput

func (AmiFromInstanceEbsBlockDeviceOutput) VolumeSize

The size of created volumes in GiB. If `snapshotId` is set and `volumeSize` is omitted then the volume will have the same size as the selected snapshot.

func (AmiFromInstanceEbsBlockDeviceOutput) VolumeType

The type of EBS volume to create. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `standard`).

type AmiFromInstanceEphemeralBlockDevice

type AmiFromInstanceEphemeralBlockDevice struct {
	// The path at which the device is exposed to created instances.
	DeviceName *string `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName *string `pulumi:"virtualName"`
}

type AmiFromInstanceEphemeralBlockDeviceArgs

type AmiFromInstanceEphemeralBlockDeviceArgs struct {
	// The path at which the device is exposed to created instances.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// A name for the ephemeral device, of the form "ephemeralN" where
	// *N* is a volume number starting from zero.
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (AmiFromInstanceEphemeralBlockDeviceArgs) ElementType

func (AmiFromInstanceEphemeralBlockDeviceArgs) ToAmiFromInstanceEphemeralBlockDeviceOutput

func (i AmiFromInstanceEphemeralBlockDeviceArgs) ToAmiFromInstanceEphemeralBlockDeviceOutput() AmiFromInstanceEphemeralBlockDeviceOutput

func (AmiFromInstanceEphemeralBlockDeviceArgs) ToAmiFromInstanceEphemeralBlockDeviceOutputWithContext

func (i AmiFromInstanceEphemeralBlockDeviceArgs) ToAmiFromInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiFromInstanceEphemeralBlockDeviceOutput

type AmiFromInstanceEphemeralBlockDeviceArray

type AmiFromInstanceEphemeralBlockDeviceArray []AmiFromInstanceEphemeralBlockDeviceInput

func (AmiFromInstanceEphemeralBlockDeviceArray) ElementType

func (AmiFromInstanceEphemeralBlockDeviceArray) ToAmiFromInstanceEphemeralBlockDeviceArrayOutput

func (i AmiFromInstanceEphemeralBlockDeviceArray) ToAmiFromInstanceEphemeralBlockDeviceArrayOutput() AmiFromInstanceEphemeralBlockDeviceArrayOutput

func (AmiFromInstanceEphemeralBlockDeviceArray) ToAmiFromInstanceEphemeralBlockDeviceArrayOutputWithContext

func (i AmiFromInstanceEphemeralBlockDeviceArray) ToAmiFromInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiFromInstanceEphemeralBlockDeviceArrayOutput

type AmiFromInstanceEphemeralBlockDeviceArrayInput

type AmiFromInstanceEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToAmiFromInstanceEphemeralBlockDeviceArrayOutput() AmiFromInstanceEphemeralBlockDeviceArrayOutput
	ToAmiFromInstanceEphemeralBlockDeviceArrayOutputWithContext(context.Context) AmiFromInstanceEphemeralBlockDeviceArrayOutput
}

AmiFromInstanceEphemeralBlockDeviceArrayInput is an input type that accepts AmiFromInstanceEphemeralBlockDeviceArray and AmiFromInstanceEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `AmiFromInstanceEphemeralBlockDeviceArrayInput` via:

AmiFromInstanceEphemeralBlockDeviceArray{ AmiFromInstanceEphemeralBlockDeviceArgs{...} }

type AmiFromInstanceEphemeralBlockDeviceArrayOutput

type AmiFromInstanceEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceEphemeralBlockDeviceArrayOutput) ElementType

func (AmiFromInstanceEphemeralBlockDeviceArrayOutput) Index

func (AmiFromInstanceEphemeralBlockDeviceArrayOutput) ToAmiFromInstanceEphemeralBlockDeviceArrayOutput

func (o AmiFromInstanceEphemeralBlockDeviceArrayOutput) ToAmiFromInstanceEphemeralBlockDeviceArrayOutput() AmiFromInstanceEphemeralBlockDeviceArrayOutput

func (AmiFromInstanceEphemeralBlockDeviceArrayOutput) ToAmiFromInstanceEphemeralBlockDeviceArrayOutputWithContext

func (o AmiFromInstanceEphemeralBlockDeviceArrayOutput) ToAmiFromInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) AmiFromInstanceEphemeralBlockDeviceArrayOutput

type AmiFromInstanceEphemeralBlockDeviceInput

type AmiFromInstanceEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToAmiFromInstanceEphemeralBlockDeviceOutput() AmiFromInstanceEphemeralBlockDeviceOutput
	ToAmiFromInstanceEphemeralBlockDeviceOutputWithContext(context.Context) AmiFromInstanceEphemeralBlockDeviceOutput
}

AmiFromInstanceEphemeralBlockDeviceInput is an input type that accepts AmiFromInstanceEphemeralBlockDeviceArgs and AmiFromInstanceEphemeralBlockDeviceOutput values. You can construct a concrete instance of `AmiFromInstanceEphemeralBlockDeviceInput` via:

AmiFromInstanceEphemeralBlockDeviceArgs{...}

type AmiFromInstanceEphemeralBlockDeviceOutput

type AmiFromInstanceEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceEphemeralBlockDeviceOutput) DeviceName

The path at which the device is exposed to created instances.

func (AmiFromInstanceEphemeralBlockDeviceOutput) ElementType

func (AmiFromInstanceEphemeralBlockDeviceOutput) ToAmiFromInstanceEphemeralBlockDeviceOutput

func (o AmiFromInstanceEphemeralBlockDeviceOutput) ToAmiFromInstanceEphemeralBlockDeviceOutput() AmiFromInstanceEphemeralBlockDeviceOutput

func (AmiFromInstanceEphemeralBlockDeviceOutput) ToAmiFromInstanceEphemeralBlockDeviceOutputWithContext

func (o AmiFromInstanceEphemeralBlockDeviceOutput) ToAmiFromInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) AmiFromInstanceEphemeralBlockDeviceOutput

func (AmiFromInstanceEphemeralBlockDeviceOutput) VirtualName

A name for the ephemeral device, of the form "ephemeralN" where *N* is a volume number starting from zero.

type AmiFromInstanceInput

type AmiFromInstanceInput interface {
	pulumi.Input

	ToAmiFromInstanceOutput() AmiFromInstanceOutput
	ToAmiFromInstanceOutputWithContext(ctx context.Context) AmiFromInstanceOutput
}

type AmiFromInstanceMap

type AmiFromInstanceMap map[string]AmiFromInstanceInput

func (AmiFromInstanceMap) ElementType

func (AmiFromInstanceMap) ElementType() reflect.Type

func (AmiFromInstanceMap) ToAmiFromInstanceMapOutput

func (i AmiFromInstanceMap) ToAmiFromInstanceMapOutput() AmiFromInstanceMapOutput

func (AmiFromInstanceMap) ToAmiFromInstanceMapOutputWithContext

func (i AmiFromInstanceMap) ToAmiFromInstanceMapOutputWithContext(ctx context.Context) AmiFromInstanceMapOutput

type AmiFromInstanceMapInput

type AmiFromInstanceMapInput interface {
	pulumi.Input

	ToAmiFromInstanceMapOutput() AmiFromInstanceMapOutput
	ToAmiFromInstanceMapOutputWithContext(context.Context) AmiFromInstanceMapOutput
}

AmiFromInstanceMapInput is an input type that accepts AmiFromInstanceMap and AmiFromInstanceMapOutput values. You can construct a concrete instance of `AmiFromInstanceMapInput` via:

AmiFromInstanceMap{ "key": AmiFromInstanceArgs{...} }

type AmiFromInstanceMapOutput

type AmiFromInstanceMapOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceMapOutput) ElementType

func (AmiFromInstanceMapOutput) ElementType() reflect.Type

func (AmiFromInstanceMapOutput) MapIndex

func (AmiFromInstanceMapOutput) ToAmiFromInstanceMapOutput

func (o AmiFromInstanceMapOutput) ToAmiFromInstanceMapOutput() AmiFromInstanceMapOutput

func (AmiFromInstanceMapOutput) ToAmiFromInstanceMapOutputWithContext

func (o AmiFromInstanceMapOutput) ToAmiFromInstanceMapOutputWithContext(ctx context.Context) AmiFromInstanceMapOutput

type AmiFromInstanceOutput

type AmiFromInstanceOutput struct{ *pulumi.OutputState }

func (AmiFromInstanceOutput) ElementType

func (AmiFromInstanceOutput) ElementType() reflect.Type

func (AmiFromInstanceOutput) ToAmiFromInstanceOutput

func (o AmiFromInstanceOutput) ToAmiFromInstanceOutput() AmiFromInstanceOutput

func (AmiFromInstanceOutput) ToAmiFromInstanceOutputWithContext

func (o AmiFromInstanceOutput) ToAmiFromInstanceOutputWithContext(ctx context.Context) AmiFromInstanceOutput

func (AmiFromInstanceOutput) ToAmiFromInstancePtrOutput

func (o AmiFromInstanceOutput) ToAmiFromInstancePtrOutput() AmiFromInstancePtrOutput

func (AmiFromInstanceOutput) ToAmiFromInstancePtrOutputWithContext

func (o AmiFromInstanceOutput) ToAmiFromInstancePtrOutputWithContext(ctx context.Context) AmiFromInstancePtrOutput

type AmiFromInstancePtrInput

type AmiFromInstancePtrInput interface {
	pulumi.Input

	ToAmiFromInstancePtrOutput() AmiFromInstancePtrOutput
	ToAmiFromInstancePtrOutputWithContext(ctx context.Context) AmiFromInstancePtrOutput
}

type AmiFromInstancePtrOutput

type AmiFromInstancePtrOutput struct{ *pulumi.OutputState }

func (AmiFromInstancePtrOutput) Elem added in v4.15.0

func (AmiFromInstancePtrOutput) ElementType

func (AmiFromInstancePtrOutput) ElementType() reflect.Type

func (AmiFromInstancePtrOutput) ToAmiFromInstancePtrOutput

func (o AmiFromInstancePtrOutput) ToAmiFromInstancePtrOutput() AmiFromInstancePtrOutput

func (AmiFromInstancePtrOutput) ToAmiFromInstancePtrOutputWithContext

func (o AmiFromInstancePtrOutput) ToAmiFromInstancePtrOutputWithContext(ctx context.Context) AmiFromInstancePtrOutput

type AmiFromInstanceState

type AmiFromInstanceState struct {
	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringPtrInput
	// The ARN of the AMI.
	Arn pulumi.StringPtrInput
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiFromInstanceEbsBlockDeviceArrayInput
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolPtrInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiFromInstanceEphemeralBlockDeviceArrayInput
	Hypervisor            pulumi.StringPtrInput
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation   pulumi.StringPtrInput
	ImageOwnerAlias pulumi.StringPtrInput
	ImageType       pulumi.StringPtrInput
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId           pulumi.StringPtrInput
	ManageEbsSnapshots pulumi.BoolPtrInput
	// A region-unique name for the AMI.
	Name            pulumi.StringPtrInput
	OwnerId         pulumi.StringPtrInput
	Platform        pulumi.StringPtrInput
	PlatformDetails pulumi.StringPtrInput
	Public          pulumi.BoolPtrInput
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringPtrInput
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringPtrInput
	RootSnapshotId pulumi.StringPtrInput
	// Boolean that overrides the behavior of stopping
	// the instance before snapshotting. This is risky since it may cause a snapshot of an
	// inconsistent filesystem state, but can be used to avoid downtime if the user otherwise
	// guarantees that no filesystem writes will be underway at the time of snapshot.
	SnapshotWithoutReboot pulumi.BoolPtrInput
	// The id of the instance to use as the basis of the AMI.
	SourceInstanceId pulumi.StringPtrInput
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags           pulumi.StringMapInput
	TagsAll        pulumi.StringMapInput
	UsageOperation pulumi.StringPtrInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringPtrInput
}

func (AmiFromInstanceState) ElementType

func (AmiFromInstanceState) ElementType() reflect.Type

type AmiInput

type AmiInput interface {
	pulumi.Input

	ToAmiOutput() AmiOutput
	ToAmiOutputWithContext(ctx context.Context) AmiOutput
}

type AmiLaunchPermission

type AmiLaunchPermission struct {
	pulumi.CustomResourceState

	// An AWS Account ID to add launch permissions.
	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// A region-unique name for the AMI.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
}

Adds launch permission to Amazon Machine Image (AMI) from another AWS account.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAmiLaunchPermission(ctx, "example", &ec2.AmiLaunchPermissionArgs{
			AccountId: pulumi.String("123456789012"),
			ImageId:   pulumi.String("ami-12345678"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AWS AMI Launch Permission can be imported using the `ACCOUNT-ID/IMAGE-ID`, e.g.

```sh

$ pulumi import aws:ec2/amiLaunchPermission:AmiLaunchPermission example 123456789012/ami-12345678

```

func GetAmiLaunchPermission

func GetAmiLaunchPermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AmiLaunchPermissionState, opts ...pulumi.ResourceOption) (*AmiLaunchPermission, error)

GetAmiLaunchPermission gets an existing AmiLaunchPermission resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAmiLaunchPermission

func NewAmiLaunchPermission(ctx *pulumi.Context,
	name string, args *AmiLaunchPermissionArgs, opts ...pulumi.ResourceOption) (*AmiLaunchPermission, error)

NewAmiLaunchPermission registers a new resource with the given unique name, arguments, and options.

func (*AmiLaunchPermission) ElementType

func (*AmiLaunchPermission) ElementType() reflect.Type

func (*AmiLaunchPermission) ToAmiLaunchPermissionOutput

func (i *AmiLaunchPermission) ToAmiLaunchPermissionOutput() AmiLaunchPermissionOutput

func (*AmiLaunchPermission) ToAmiLaunchPermissionOutputWithContext

func (i *AmiLaunchPermission) ToAmiLaunchPermissionOutputWithContext(ctx context.Context) AmiLaunchPermissionOutput

func (*AmiLaunchPermission) ToAmiLaunchPermissionPtrOutput

func (i *AmiLaunchPermission) ToAmiLaunchPermissionPtrOutput() AmiLaunchPermissionPtrOutput

func (*AmiLaunchPermission) ToAmiLaunchPermissionPtrOutputWithContext

func (i *AmiLaunchPermission) ToAmiLaunchPermissionPtrOutputWithContext(ctx context.Context) AmiLaunchPermissionPtrOutput

type AmiLaunchPermissionArgs

type AmiLaunchPermissionArgs struct {
	// An AWS Account ID to add launch permissions.
	AccountId pulumi.StringInput
	// A region-unique name for the AMI.
	ImageId pulumi.StringInput
}

The set of arguments for constructing a AmiLaunchPermission resource.

func (AmiLaunchPermissionArgs) ElementType

func (AmiLaunchPermissionArgs) ElementType() reflect.Type

type AmiLaunchPermissionArray

type AmiLaunchPermissionArray []AmiLaunchPermissionInput

func (AmiLaunchPermissionArray) ElementType

func (AmiLaunchPermissionArray) ElementType() reflect.Type

func (AmiLaunchPermissionArray) ToAmiLaunchPermissionArrayOutput

func (i AmiLaunchPermissionArray) ToAmiLaunchPermissionArrayOutput() AmiLaunchPermissionArrayOutput

func (AmiLaunchPermissionArray) ToAmiLaunchPermissionArrayOutputWithContext

func (i AmiLaunchPermissionArray) ToAmiLaunchPermissionArrayOutputWithContext(ctx context.Context) AmiLaunchPermissionArrayOutput

type AmiLaunchPermissionArrayInput

type AmiLaunchPermissionArrayInput interface {
	pulumi.Input

	ToAmiLaunchPermissionArrayOutput() AmiLaunchPermissionArrayOutput
	ToAmiLaunchPermissionArrayOutputWithContext(context.Context) AmiLaunchPermissionArrayOutput
}

AmiLaunchPermissionArrayInput is an input type that accepts AmiLaunchPermissionArray and AmiLaunchPermissionArrayOutput values. You can construct a concrete instance of `AmiLaunchPermissionArrayInput` via:

AmiLaunchPermissionArray{ AmiLaunchPermissionArgs{...} }

type AmiLaunchPermissionArrayOutput

type AmiLaunchPermissionArrayOutput struct{ *pulumi.OutputState }

func (AmiLaunchPermissionArrayOutput) ElementType

func (AmiLaunchPermissionArrayOutput) Index

func (AmiLaunchPermissionArrayOutput) ToAmiLaunchPermissionArrayOutput

func (o AmiLaunchPermissionArrayOutput) ToAmiLaunchPermissionArrayOutput() AmiLaunchPermissionArrayOutput

func (AmiLaunchPermissionArrayOutput) ToAmiLaunchPermissionArrayOutputWithContext

func (o AmiLaunchPermissionArrayOutput) ToAmiLaunchPermissionArrayOutputWithContext(ctx context.Context) AmiLaunchPermissionArrayOutput

type AmiLaunchPermissionInput

type AmiLaunchPermissionInput interface {
	pulumi.Input

	ToAmiLaunchPermissionOutput() AmiLaunchPermissionOutput
	ToAmiLaunchPermissionOutputWithContext(ctx context.Context) AmiLaunchPermissionOutput
}

type AmiLaunchPermissionMap

type AmiLaunchPermissionMap map[string]AmiLaunchPermissionInput

func (AmiLaunchPermissionMap) ElementType

func (AmiLaunchPermissionMap) ElementType() reflect.Type

func (AmiLaunchPermissionMap) ToAmiLaunchPermissionMapOutput

func (i AmiLaunchPermissionMap) ToAmiLaunchPermissionMapOutput() AmiLaunchPermissionMapOutput

func (AmiLaunchPermissionMap) ToAmiLaunchPermissionMapOutputWithContext

func (i AmiLaunchPermissionMap) ToAmiLaunchPermissionMapOutputWithContext(ctx context.Context) AmiLaunchPermissionMapOutput

type AmiLaunchPermissionMapInput

type AmiLaunchPermissionMapInput interface {
	pulumi.Input

	ToAmiLaunchPermissionMapOutput() AmiLaunchPermissionMapOutput
	ToAmiLaunchPermissionMapOutputWithContext(context.Context) AmiLaunchPermissionMapOutput
}

AmiLaunchPermissionMapInput is an input type that accepts AmiLaunchPermissionMap and AmiLaunchPermissionMapOutput values. You can construct a concrete instance of `AmiLaunchPermissionMapInput` via:

AmiLaunchPermissionMap{ "key": AmiLaunchPermissionArgs{...} }

type AmiLaunchPermissionMapOutput

type AmiLaunchPermissionMapOutput struct{ *pulumi.OutputState }

func (AmiLaunchPermissionMapOutput) ElementType

func (AmiLaunchPermissionMapOutput) MapIndex

func (AmiLaunchPermissionMapOutput) ToAmiLaunchPermissionMapOutput

func (o AmiLaunchPermissionMapOutput) ToAmiLaunchPermissionMapOutput() AmiLaunchPermissionMapOutput

func (AmiLaunchPermissionMapOutput) ToAmiLaunchPermissionMapOutputWithContext

func (o AmiLaunchPermissionMapOutput) ToAmiLaunchPermissionMapOutputWithContext(ctx context.Context) AmiLaunchPermissionMapOutput

type AmiLaunchPermissionOutput

type AmiLaunchPermissionOutput struct{ *pulumi.OutputState }

func (AmiLaunchPermissionOutput) ElementType

func (AmiLaunchPermissionOutput) ElementType() reflect.Type

func (AmiLaunchPermissionOutput) ToAmiLaunchPermissionOutput

func (o AmiLaunchPermissionOutput) ToAmiLaunchPermissionOutput() AmiLaunchPermissionOutput

func (AmiLaunchPermissionOutput) ToAmiLaunchPermissionOutputWithContext

func (o AmiLaunchPermissionOutput) ToAmiLaunchPermissionOutputWithContext(ctx context.Context) AmiLaunchPermissionOutput

func (AmiLaunchPermissionOutput) ToAmiLaunchPermissionPtrOutput

func (o AmiLaunchPermissionOutput) ToAmiLaunchPermissionPtrOutput() AmiLaunchPermissionPtrOutput

func (AmiLaunchPermissionOutput) ToAmiLaunchPermissionPtrOutputWithContext

func (o AmiLaunchPermissionOutput) ToAmiLaunchPermissionPtrOutputWithContext(ctx context.Context) AmiLaunchPermissionPtrOutput

type AmiLaunchPermissionPtrInput

type AmiLaunchPermissionPtrInput interface {
	pulumi.Input

	ToAmiLaunchPermissionPtrOutput() AmiLaunchPermissionPtrOutput
	ToAmiLaunchPermissionPtrOutputWithContext(ctx context.Context) AmiLaunchPermissionPtrOutput
}

type AmiLaunchPermissionPtrOutput

type AmiLaunchPermissionPtrOutput struct{ *pulumi.OutputState }

func (AmiLaunchPermissionPtrOutput) Elem added in v4.15.0

func (AmiLaunchPermissionPtrOutput) ElementType

func (AmiLaunchPermissionPtrOutput) ToAmiLaunchPermissionPtrOutput

func (o AmiLaunchPermissionPtrOutput) ToAmiLaunchPermissionPtrOutput() AmiLaunchPermissionPtrOutput

func (AmiLaunchPermissionPtrOutput) ToAmiLaunchPermissionPtrOutputWithContext

func (o AmiLaunchPermissionPtrOutput) ToAmiLaunchPermissionPtrOutputWithContext(ctx context.Context) AmiLaunchPermissionPtrOutput

type AmiLaunchPermissionState

type AmiLaunchPermissionState struct {
	// An AWS Account ID to add launch permissions.
	AccountId pulumi.StringPtrInput
	// A region-unique name for the AMI.
	ImageId pulumi.StringPtrInput
}

func (AmiLaunchPermissionState) ElementType

func (AmiLaunchPermissionState) ElementType() reflect.Type

type AmiMap

type AmiMap map[string]AmiInput

func (AmiMap) ElementType

func (AmiMap) ElementType() reflect.Type

func (AmiMap) ToAmiMapOutput

func (i AmiMap) ToAmiMapOutput() AmiMapOutput

func (AmiMap) ToAmiMapOutputWithContext

func (i AmiMap) ToAmiMapOutputWithContext(ctx context.Context) AmiMapOutput

type AmiMapInput

type AmiMapInput interface {
	pulumi.Input

	ToAmiMapOutput() AmiMapOutput
	ToAmiMapOutputWithContext(context.Context) AmiMapOutput
}

AmiMapInput is an input type that accepts AmiMap and AmiMapOutput values. You can construct a concrete instance of `AmiMapInput` via:

AmiMap{ "key": AmiArgs{...} }

type AmiMapOutput

type AmiMapOutput struct{ *pulumi.OutputState }

func (AmiMapOutput) ElementType

func (AmiMapOutput) ElementType() reflect.Type

func (AmiMapOutput) MapIndex

func (o AmiMapOutput) MapIndex(k pulumi.StringInput) AmiOutput

func (AmiMapOutput) ToAmiMapOutput

func (o AmiMapOutput) ToAmiMapOutput() AmiMapOutput

func (AmiMapOutput) ToAmiMapOutputWithContext

func (o AmiMapOutput) ToAmiMapOutputWithContext(ctx context.Context) AmiMapOutput

type AmiOutput

type AmiOutput struct{ *pulumi.OutputState }

func (AmiOutput) ElementType

func (AmiOutput) ElementType() reflect.Type

func (AmiOutput) ToAmiOutput

func (o AmiOutput) ToAmiOutput() AmiOutput

func (AmiOutput) ToAmiOutputWithContext

func (o AmiOutput) ToAmiOutputWithContext(ctx context.Context) AmiOutput

func (AmiOutput) ToAmiPtrOutput

func (o AmiOutput) ToAmiPtrOutput() AmiPtrOutput

func (AmiOutput) ToAmiPtrOutputWithContext

func (o AmiOutput) ToAmiPtrOutputWithContext(ctx context.Context) AmiPtrOutput

type AmiPtrInput

type AmiPtrInput interface {
	pulumi.Input

	ToAmiPtrOutput() AmiPtrOutput
	ToAmiPtrOutputWithContext(ctx context.Context) AmiPtrOutput
}

type AmiPtrOutput

type AmiPtrOutput struct{ *pulumi.OutputState }

func (AmiPtrOutput) Elem added in v4.15.0

func (o AmiPtrOutput) Elem() AmiOutput

func (AmiPtrOutput) ElementType

func (AmiPtrOutput) ElementType() reflect.Type

func (AmiPtrOutput) ToAmiPtrOutput

func (o AmiPtrOutput) ToAmiPtrOutput() AmiPtrOutput

func (AmiPtrOutput) ToAmiPtrOutputWithContext

func (o AmiPtrOutput) ToAmiPtrOutputWithContext(ctx context.Context) AmiPtrOutput

type AmiState

type AmiState struct {
	// Machine architecture for created instances. Defaults to "x8664".
	Architecture pulumi.StringPtrInput
	// The ARN of the AMI.
	Arn pulumi.StringPtrInput
	// A longer, human-readable description for the AMI.
	Description pulumi.StringPtrInput
	// Nested block describing an EBS block device that should be
	// attached to created instances. The structure of this block is described below.
	EbsBlockDevices AmiEbsBlockDeviceArrayInput
	// Specifies whether enhanced networking with ENA is enabled. Defaults to `false`.
	EnaSupport pulumi.BoolPtrInput
	// Nested block describing an ephemeral block device that
	// should be attached to created instances. The structure of this block is described below.
	EphemeralBlockDevices AmiEphemeralBlockDeviceArrayInput
	// The hypervisor type of the image.
	Hypervisor pulumi.StringPtrInput
	// Path to an S3 object containing an image manifest, e.g. created
	// by the `ec2-upload-bundle` command in the EC2 command line tools.
	ImageLocation pulumi.StringPtrInput
	// The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
	ImageOwnerAlias pulumi.StringPtrInput
	// The type of image.
	ImageType pulumi.StringPtrInput
	// The id of the kernel image (AKI) that will be used as the paravirtual
	// kernel in created instances.
	KernelId           pulumi.StringPtrInput
	ManageEbsSnapshots pulumi.BoolPtrInput
	// A region-unique name for the AMI.
	Name pulumi.StringPtrInput
	// The AWS account ID of the image owner.
	OwnerId pulumi.StringPtrInput
	// This value is set to windows for Windows AMIs; otherwise, it is blank.
	Platform pulumi.StringPtrInput
	// The platform details associated with the billing code of the AMI.
	PlatformDetails pulumi.StringPtrInput
	// Indicates whether the image has public launch permissions.
	Public pulumi.BoolPtrInput
	// The id of an initrd image (ARI) that will be used when booting the
	// created instances.
	RamdiskId pulumi.StringPtrInput
	// The name of the root device (for example, `/dev/sda1`, or `/dev/xvda`).
	RootDeviceName pulumi.StringPtrInput
	// The Snapshot ID for the root volume (for EBS-backed AMIs)
	RootSnapshotId pulumi.StringPtrInput
	// When set to "simple" (the default), enables enhanced networking
	// for created instances. No other value is supported at this time.
	SriovNetSupport pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
	UsageOperation pulumi.StringPtrInput
	// Keyword to choose what virtualization mode created instances
	// will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type
	// changes the set of further arguments that are required, as described below.
	VirtualizationType pulumi.StringPtrInput
}

func (AmiState) ElementType

func (AmiState) ElementType() reflect.Type

type AvailabilityZoneGroup

type AvailabilityZoneGroup struct {
	pulumi.CustomResourceState

	// Name of the Availability Zone Group.
	GroupName pulumi.StringOutput `pulumi:"groupName"`
	// Indicates whether to enable or disable Availability Zone Group. Valid values: `opted-in` or `not-opted-in`.
	OptInStatus pulumi.StringOutput `pulumi:"optInStatus"`
}

Manages an EC2 Availability Zone Group, such as updating its opt-in status.

> **NOTE:** This is an advanced resource. The provider will automatically assume management of the EC2 Availability Zone Group without import and perform no actions on removal from configuration.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAvailabilityZoneGroup(ctx, "example", &ec2.AvailabilityZoneGroupArgs{
			GroupName:   pulumi.String("us-west-2-lax-1"),
			OptInStatus: pulumi.String("opted-in"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EC2 Availability Zone Groups can be imported using the group name, e.g.

```sh

$ pulumi import aws:ec2/availabilityZoneGroup:AvailabilityZoneGroup example us-west-2-lax-1

```

func GetAvailabilityZoneGroup

func GetAvailabilityZoneGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AvailabilityZoneGroupState, opts ...pulumi.ResourceOption) (*AvailabilityZoneGroup, error)

GetAvailabilityZoneGroup gets an existing AvailabilityZoneGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAvailabilityZoneGroup

func NewAvailabilityZoneGroup(ctx *pulumi.Context,
	name string, args *AvailabilityZoneGroupArgs, opts ...pulumi.ResourceOption) (*AvailabilityZoneGroup, error)

NewAvailabilityZoneGroup registers a new resource with the given unique name, arguments, and options.

func (*AvailabilityZoneGroup) ElementType

func (*AvailabilityZoneGroup) ElementType() reflect.Type

func (*AvailabilityZoneGroup) ToAvailabilityZoneGroupOutput

func (i *AvailabilityZoneGroup) ToAvailabilityZoneGroupOutput() AvailabilityZoneGroupOutput

func (*AvailabilityZoneGroup) ToAvailabilityZoneGroupOutputWithContext

func (i *AvailabilityZoneGroup) ToAvailabilityZoneGroupOutputWithContext(ctx context.Context) AvailabilityZoneGroupOutput

func (*AvailabilityZoneGroup) ToAvailabilityZoneGroupPtrOutput

func (i *AvailabilityZoneGroup) ToAvailabilityZoneGroupPtrOutput() AvailabilityZoneGroupPtrOutput

func (*AvailabilityZoneGroup) ToAvailabilityZoneGroupPtrOutputWithContext

func (i *AvailabilityZoneGroup) ToAvailabilityZoneGroupPtrOutputWithContext(ctx context.Context) AvailabilityZoneGroupPtrOutput

type AvailabilityZoneGroupArgs

type AvailabilityZoneGroupArgs struct {
	// Name of the Availability Zone Group.
	GroupName pulumi.StringInput
	// Indicates whether to enable or disable Availability Zone Group. Valid values: `opted-in` or `not-opted-in`.
	OptInStatus pulumi.StringInput
}

The set of arguments for constructing a AvailabilityZoneGroup resource.

func (AvailabilityZoneGroupArgs) ElementType

func (AvailabilityZoneGroupArgs) ElementType() reflect.Type

type AvailabilityZoneGroupArray

type AvailabilityZoneGroupArray []AvailabilityZoneGroupInput

func (AvailabilityZoneGroupArray) ElementType

func (AvailabilityZoneGroupArray) ElementType() reflect.Type

func (AvailabilityZoneGroupArray) ToAvailabilityZoneGroupArrayOutput

func (i AvailabilityZoneGroupArray) ToAvailabilityZoneGroupArrayOutput() AvailabilityZoneGroupArrayOutput

func (AvailabilityZoneGroupArray) ToAvailabilityZoneGroupArrayOutputWithContext

func (i AvailabilityZoneGroupArray) ToAvailabilityZoneGroupArrayOutputWithContext(ctx context.Context) AvailabilityZoneGroupArrayOutput

type AvailabilityZoneGroupArrayInput

type AvailabilityZoneGroupArrayInput interface {
	pulumi.Input

	ToAvailabilityZoneGroupArrayOutput() AvailabilityZoneGroupArrayOutput
	ToAvailabilityZoneGroupArrayOutputWithContext(context.Context) AvailabilityZoneGroupArrayOutput
}

AvailabilityZoneGroupArrayInput is an input type that accepts AvailabilityZoneGroupArray and AvailabilityZoneGroupArrayOutput values. You can construct a concrete instance of `AvailabilityZoneGroupArrayInput` via:

AvailabilityZoneGroupArray{ AvailabilityZoneGroupArgs{...} }

type AvailabilityZoneGroupArrayOutput

type AvailabilityZoneGroupArrayOutput struct{ *pulumi.OutputState }

func (AvailabilityZoneGroupArrayOutput) ElementType

func (AvailabilityZoneGroupArrayOutput) Index

func (AvailabilityZoneGroupArrayOutput) ToAvailabilityZoneGroupArrayOutput

func (o AvailabilityZoneGroupArrayOutput) ToAvailabilityZoneGroupArrayOutput() AvailabilityZoneGroupArrayOutput

func (AvailabilityZoneGroupArrayOutput) ToAvailabilityZoneGroupArrayOutputWithContext

func (o AvailabilityZoneGroupArrayOutput) ToAvailabilityZoneGroupArrayOutputWithContext(ctx context.Context) AvailabilityZoneGroupArrayOutput

type AvailabilityZoneGroupInput

type AvailabilityZoneGroupInput interface {
	pulumi.Input

	ToAvailabilityZoneGroupOutput() AvailabilityZoneGroupOutput
	ToAvailabilityZoneGroupOutputWithContext(ctx context.Context) AvailabilityZoneGroupOutput
}

type AvailabilityZoneGroupMap

type AvailabilityZoneGroupMap map[string]AvailabilityZoneGroupInput

func (AvailabilityZoneGroupMap) ElementType

func (AvailabilityZoneGroupMap) ElementType() reflect.Type

func (AvailabilityZoneGroupMap) ToAvailabilityZoneGroupMapOutput

func (i AvailabilityZoneGroupMap) ToAvailabilityZoneGroupMapOutput() AvailabilityZoneGroupMapOutput

func (AvailabilityZoneGroupMap) ToAvailabilityZoneGroupMapOutputWithContext

func (i AvailabilityZoneGroupMap) ToAvailabilityZoneGroupMapOutputWithContext(ctx context.Context) AvailabilityZoneGroupMapOutput

type AvailabilityZoneGroupMapInput

type AvailabilityZoneGroupMapInput interface {
	pulumi.Input

	ToAvailabilityZoneGroupMapOutput() AvailabilityZoneGroupMapOutput
	ToAvailabilityZoneGroupMapOutputWithContext(context.Context) AvailabilityZoneGroupMapOutput
}

AvailabilityZoneGroupMapInput is an input type that accepts AvailabilityZoneGroupMap and AvailabilityZoneGroupMapOutput values. You can construct a concrete instance of `AvailabilityZoneGroupMapInput` via:

AvailabilityZoneGroupMap{ "key": AvailabilityZoneGroupArgs{...} }

type AvailabilityZoneGroupMapOutput

type AvailabilityZoneGroupMapOutput struct{ *pulumi.OutputState }

func (AvailabilityZoneGroupMapOutput) ElementType

func (AvailabilityZoneGroupMapOutput) MapIndex

func (AvailabilityZoneGroupMapOutput) ToAvailabilityZoneGroupMapOutput

func (o AvailabilityZoneGroupMapOutput) ToAvailabilityZoneGroupMapOutput() AvailabilityZoneGroupMapOutput

func (AvailabilityZoneGroupMapOutput) ToAvailabilityZoneGroupMapOutputWithContext

func (o AvailabilityZoneGroupMapOutput) ToAvailabilityZoneGroupMapOutputWithContext(ctx context.Context) AvailabilityZoneGroupMapOutput

type AvailabilityZoneGroupOutput

type AvailabilityZoneGroupOutput struct{ *pulumi.OutputState }

func (AvailabilityZoneGroupOutput) ElementType

func (AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupOutput

func (o AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupOutput() AvailabilityZoneGroupOutput

func (AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupOutputWithContext

func (o AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupOutputWithContext(ctx context.Context) AvailabilityZoneGroupOutput

func (AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupPtrOutput

func (o AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupPtrOutput() AvailabilityZoneGroupPtrOutput

func (AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupPtrOutputWithContext

func (o AvailabilityZoneGroupOutput) ToAvailabilityZoneGroupPtrOutputWithContext(ctx context.Context) AvailabilityZoneGroupPtrOutput

type AvailabilityZoneGroupPtrInput

type AvailabilityZoneGroupPtrInput interface {
	pulumi.Input

	ToAvailabilityZoneGroupPtrOutput() AvailabilityZoneGroupPtrOutput
	ToAvailabilityZoneGroupPtrOutputWithContext(ctx context.Context) AvailabilityZoneGroupPtrOutput
}

type AvailabilityZoneGroupPtrOutput

type AvailabilityZoneGroupPtrOutput struct{ *pulumi.OutputState }

func (AvailabilityZoneGroupPtrOutput) Elem added in v4.15.0

func (AvailabilityZoneGroupPtrOutput) ElementType

func (AvailabilityZoneGroupPtrOutput) ToAvailabilityZoneGroupPtrOutput

func (o AvailabilityZoneGroupPtrOutput) ToAvailabilityZoneGroupPtrOutput() AvailabilityZoneGroupPtrOutput

func (AvailabilityZoneGroupPtrOutput) ToAvailabilityZoneGroupPtrOutputWithContext

func (o AvailabilityZoneGroupPtrOutput) ToAvailabilityZoneGroupPtrOutputWithContext(ctx context.Context) AvailabilityZoneGroupPtrOutput

type AvailabilityZoneGroupState

type AvailabilityZoneGroupState struct {
	// Name of the Availability Zone Group.
	GroupName pulumi.StringPtrInput
	// Indicates whether to enable or disable Availability Zone Group. Valid values: `opted-in` or `not-opted-in`.
	OptInStatus pulumi.StringPtrInput
}

func (AvailabilityZoneGroupState) ElementType

func (AvailabilityZoneGroupState) ElementType() reflect.Type

type CapacityReservation

type CapacityReservation struct {
	pulumi.CustomResourceState

	// The ARN of the Capacity Reservation.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The Availability Zone in which to create the Capacity Reservation.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Indicates whether the Capacity Reservation supports EBS-optimized instances.
	EbsOptimized pulumi.BoolPtrOutput `pulumi:"ebsOptimized"`
	// The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: [RFC3339 time string](https://tools.ietf.org/html/rfc3339#section-5.8) (`YYYY-MM-DDTHH:MM:SSZ`)
	EndDate pulumi.StringPtrOutput `pulumi:"endDate"`
	// Indicates the way in which the Capacity Reservation ends. Specify either `unlimited` or `limited`.
	EndDateType pulumi.StringPtrOutput `pulumi:"endDateType"`
	// Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
	EphemeralStorage pulumi.BoolPtrOutput `pulumi:"ephemeralStorage"`
	// The number of instances for which to reserve capacity.
	InstanceCount pulumi.IntOutput `pulumi:"instanceCount"`
	// Indicates the type of instance launches that the Capacity Reservation accepts. Specify either `open` or `targeted`.
	InstanceMatchCriteria pulumi.StringPtrOutput `pulumi:"instanceMatchCriteria"`
	// The type of operating system for which to reserve capacity. Valid options are `Linux/UNIX`, `Red Hat Enterprise Linux`, `SUSE Linux`, `Windows`, `Windows with SQL Server`, `Windows with SQL Server Enterprise`, `Windows with SQL Server Standard` or `Windows with SQL Server Web`.
	InstancePlatform pulumi.StringOutput `pulumi:"instancePlatform"`
	// The instance type for which to reserve capacity.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.
	OutpostArn pulumi.StringPtrOutput `pulumi:"outpostArn"`
	// The ID of the AWS account that owns the Capacity Reservation.
	OwnerId pulumi.StringOutput    `pulumi:"ownerId"`
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Indicates the tenancy of the Capacity Reservation. Specify either `default` or `dedicated`.
	Tenancy pulumi.StringPtrOutput `pulumi:"tenancy"`
}

Provides an EC2 Capacity Reservation. This allows you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewCapacityReservation(ctx, "_default", &ec2.CapacityReservationArgs{
			AvailabilityZone: pulumi.String("eu-west-1a"),
			InstanceCount:    pulumi.Int(1),
			InstancePlatform: pulumi.String("Linux/UNIX"),
			InstanceType:     pulumi.String("t2.micro"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Capacity Reservations can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/capacityReservation:CapacityReservation web cr-0123456789abcdef0

```

func GetCapacityReservation

func GetCapacityReservation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CapacityReservationState, opts ...pulumi.ResourceOption) (*CapacityReservation, error)

GetCapacityReservation gets an existing CapacityReservation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCapacityReservation

func NewCapacityReservation(ctx *pulumi.Context,
	name string, args *CapacityReservationArgs, opts ...pulumi.ResourceOption) (*CapacityReservation, error)

NewCapacityReservation registers a new resource with the given unique name, arguments, and options.

func (*CapacityReservation) ElementType

func (*CapacityReservation) ElementType() reflect.Type

func (*CapacityReservation) ToCapacityReservationOutput

func (i *CapacityReservation) ToCapacityReservationOutput() CapacityReservationOutput

func (*CapacityReservation) ToCapacityReservationOutputWithContext

func (i *CapacityReservation) ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput

func (*CapacityReservation) ToCapacityReservationPtrOutput

func (i *CapacityReservation) ToCapacityReservationPtrOutput() CapacityReservationPtrOutput

func (*CapacityReservation) ToCapacityReservationPtrOutputWithContext

func (i *CapacityReservation) ToCapacityReservationPtrOutputWithContext(ctx context.Context) CapacityReservationPtrOutput

type CapacityReservationArgs

type CapacityReservationArgs struct {
	// The Availability Zone in which to create the Capacity Reservation.
	AvailabilityZone pulumi.StringInput
	// Indicates whether the Capacity Reservation supports EBS-optimized instances.
	EbsOptimized pulumi.BoolPtrInput
	// The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: [RFC3339 time string](https://tools.ietf.org/html/rfc3339#section-5.8) (`YYYY-MM-DDTHH:MM:SSZ`)
	EndDate pulumi.StringPtrInput
	// Indicates the way in which the Capacity Reservation ends. Specify either `unlimited` or `limited`.
	EndDateType pulumi.StringPtrInput
	// Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
	EphemeralStorage pulumi.BoolPtrInput
	// The number of instances for which to reserve capacity.
	InstanceCount pulumi.IntInput
	// Indicates the type of instance launches that the Capacity Reservation accepts. Specify either `open` or `targeted`.
	InstanceMatchCriteria pulumi.StringPtrInput
	// The type of operating system for which to reserve capacity. Valid options are `Linux/UNIX`, `Red Hat Enterprise Linux`, `SUSE Linux`, `Windows`, `Windows with SQL Server`, `Windows with SQL Server Enterprise`, `Windows with SQL Server Standard` or `Windows with SQL Server Web`.
	InstancePlatform pulumi.StringInput
	// The instance type for which to reserve capacity.
	InstanceType pulumi.StringInput
	// The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.
	OutpostArn pulumi.StringPtrInput
	Tags       pulumi.StringMapInput
	TagsAll    pulumi.StringMapInput
	// Indicates the tenancy of the Capacity Reservation. Specify either `default` or `dedicated`.
	Tenancy pulumi.StringPtrInput
}

The set of arguments for constructing a CapacityReservation resource.

func (CapacityReservationArgs) ElementType

func (CapacityReservationArgs) ElementType() reflect.Type

type CapacityReservationArray

type CapacityReservationArray []CapacityReservationInput

func (CapacityReservationArray) ElementType

func (CapacityReservationArray) ElementType() reflect.Type

func (CapacityReservationArray) ToCapacityReservationArrayOutput

func (i CapacityReservationArray) ToCapacityReservationArrayOutput() CapacityReservationArrayOutput

func (CapacityReservationArray) ToCapacityReservationArrayOutputWithContext

func (i CapacityReservationArray) ToCapacityReservationArrayOutputWithContext(ctx context.Context) CapacityReservationArrayOutput

type CapacityReservationArrayInput

type CapacityReservationArrayInput interface {
	pulumi.Input

	ToCapacityReservationArrayOutput() CapacityReservationArrayOutput
	ToCapacityReservationArrayOutputWithContext(context.Context) CapacityReservationArrayOutput
}

CapacityReservationArrayInput is an input type that accepts CapacityReservationArray and CapacityReservationArrayOutput values. You can construct a concrete instance of `CapacityReservationArrayInput` via:

CapacityReservationArray{ CapacityReservationArgs{...} }

type CapacityReservationArrayOutput

type CapacityReservationArrayOutput struct{ *pulumi.OutputState }

func (CapacityReservationArrayOutput) ElementType

func (CapacityReservationArrayOutput) Index

func (CapacityReservationArrayOutput) ToCapacityReservationArrayOutput

func (o CapacityReservationArrayOutput) ToCapacityReservationArrayOutput() CapacityReservationArrayOutput

func (CapacityReservationArrayOutput) ToCapacityReservationArrayOutputWithContext

func (o CapacityReservationArrayOutput) ToCapacityReservationArrayOutputWithContext(ctx context.Context) CapacityReservationArrayOutput

type CapacityReservationInput

type CapacityReservationInput interface {
	pulumi.Input

	ToCapacityReservationOutput() CapacityReservationOutput
	ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput
}

type CapacityReservationMap

type CapacityReservationMap map[string]CapacityReservationInput

func (CapacityReservationMap) ElementType

func (CapacityReservationMap) ElementType() reflect.Type

func (CapacityReservationMap) ToCapacityReservationMapOutput

func (i CapacityReservationMap) ToCapacityReservationMapOutput() CapacityReservationMapOutput

func (CapacityReservationMap) ToCapacityReservationMapOutputWithContext

func (i CapacityReservationMap) ToCapacityReservationMapOutputWithContext(ctx context.Context) CapacityReservationMapOutput

type CapacityReservationMapInput

type CapacityReservationMapInput interface {
	pulumi.Input

	ToCapacityReservationMapOutput() CapacityReservationMapOutput
	ToCapacityReservationMapOutputWithContext(context.Context) CapacityReservationMapOutput
}

CapacityReservationMapInput is an input type that accepts CapacityReservationMap and CapacityReservationMapOutput values. You can construct a concrete instance of `CapacityReservationMapInput` via:

CapacityReservationMap{ "key": CapacityReservationArgs{...} }

type CapacityReservationMapOutput

type CapacityReservationMapOutput struct{ *pulumi.OutputState }

func (CapacityReservationMapOutput) ElementType

func (CapacityReservationMapOutput) MapIndex

func (CapacityReservationMapOutput) ToCapacityReservationMapOutput

func (o CapacityReservationMapOutput) ToCapacityReservationMapOutput() CapacityReservationMapOutput

func (CapacityReservationMapOutput) ToCapacityReservationMapOutputWithContext

func (o CapacityReservationMapOutput) ToCapacityReservationMapOutputWithContext(ctx context.Context) CapacityReservationMapOutput

type CapacityReservationOutput

type CapacityReservationOutput struct{ *pulumi.OutputState }

func (CapacityReservationOutput) ElementType

func (CapacityReservationOutput) ElementType() reflect.Type

func (CapacityReservationOutput) ToCapacityReservationOutput

func (o CapacityReservationOutput) ToCapacityReservationOutput() CapacityReservationOutput

func (CapacityReservationOutput) ToCapacityReservationOutputWithContext

func (o CapacityReservationOutput) ToCapacityReservationOutputWithContext(ctx context.Context) CapacityReservationOutput

func (CapacityReservationOutput) ToCapacityReservationPtrOutput

func (o CapacityReservationOutput) ToCapacityReservationPtrOutput() CapacityReservationPtrOutput

func (CapacityReservationOutput) ToCapacityReservationPtrOutputWithContext

func (o CapacityReservationOutput) ToCapacityReservationPtrOutputWithContext(ctx context.Context) CapacityReservationPtrOutput

type CapacityReservationPtrInput

type CapacityReservationPtrInput interface {
	pulumi.Input

	ToCapacityReservationPtrOutput() CapacityReservationPtrOutput
	ToCapacityReservationPtrOutputWithContext(ctx context.Context) CapacityReservationPtrOutput
}

type CapacityReservationPtrOutput

type CapacityReservationPtrOutput struct{ *pulumi.OutputState }

func (CapacityReservationPtrOutput) Elem added in v4.15.0

func (CapacityReservationPtrOutput) ElementType

func (CapacityReservationPtrOutput) ToCapacityReservationPtrOutput

func (o CapacityReservationPtrOutput) ToCapacityReservationPtrOutput() CapacityReservationPtrOutput

func (CapacityReservationPtrOutput) ToCapacityReservationPtrOutputWithContext

func (o CapacityReservationPtrOutput) ToCapacityReservationPtrOutputWithContext(ctx context.Context) CapacityReservationPtrOutput

type CapacityReservationState

type CapacityReservationState struct {
	// The ARN of the Capacity Reservation.
	Arn pulumi.StringPtrInput
	// The Availability Zone in which to create the Capacity Reservation.
	AvailabilityZone pulumi.StringPtrInput
	// Indicates whether the Capacity Reservation supports EBS-optimized instances.
	EbsOptimized pulumi.BoolPtrInput
	// The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: [RFC3339 time string](https://tools.ietf.org/html/rfc3339#section-5.8) (`YYYY-MM-DDTHH:MM:SSZ`)
	EndDate pulumi.StringPtrInput
	// Indicates the way in which the Capacity Reservation ends. Specify either `unlimited` or `limited`.
	EndDateType pulumi.StringPtrInput
	// Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
	EphemeralStorage pulumi.BoolPtrInput
	// The number of instances for which to reserve capacity.
	InstanceCount pulumi.IntPtrInput
	// Indicates the type of instance launches that the Capacity Reservation accepts. Specify either `open` or `targeted`.
	InstanceMatchCriteria pulumi.StringPtrInput
	// The type of operating system for which to reserve capacity. Valid options are `Linux/UNIX`, `Red Hat Enterprise Linux`, `SUSE Linux`, `Windows`, `Windows with SQL Server`, `Windows with SQL Server Enterprise`, `Windows with SQL Server Standard` or `Windows with SQL Server Web`.
	InstancePlatform pulumi.StringPtrInput
	// The instance type for which to reserve capacity.
	InstanceType pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.
	OutpostArn pulumi.StringPtrInput
	// The ID of the AWS account that owns the Capacity Reservation.
	OwnerId pulumi.StringPtrInput
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// Indicates the tenancy of the Capacity Reservation. Specify either `default` or `dedicated`.
	Tenancy pulumi.StringPtrInput
}

func (CapacityReservationState) ElementType

func (CapacityReservationState) ElementType() reflect.Type

type CarrierGateway

type CarrierGateway struct {
	pulumi.CustomResourceState

	// The ARN of the carrier gateway.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The AWS account ID of the owner of the carrier gateway.
	OwnerId pulumi.StringOutput    `pulumi:"ownerId"`
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The ID of the VPC to associate with the carrier gateway.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages an EC2 Carrier Gateway. See the AWS [documentation](https://docs.aws.amazon.com/vpc/latest/userguide/Carrier_Gateway.html) for more information.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewCarrierGateway(ctx, "example", &ec2.CarrierGatewayArgs{
			VpcId: pulumi.Any(aws_vpc.Example.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example-carrier-gateway"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_carrier_gateway` can be imported using the carrier gateway's ID, e.g.

```sh

$ pulumi import aws:ec2/carrierGateway:CarrierGateway example cgw-12345

```

func GetCarrierGateway

func GetCarrierGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CarrierGatewayState, opts ...pulumi.ResourceOption) (*CarrierGateway, error)

GetCarrierGateway gets an existing CarrierGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCarrierGateway

func NewCarrierGateway(ctx *pulumi.Context,
	name string, args *CarrierGatewayArgs, opts ...pulumi.ResourceOption) (*CarrierGateway, error)

NewCarrierGateway registers a new resource with the given unique name, arguments, and options.

func (*CarrierGateway) ElementType

func (*CarrierGateway) ElementType() reflect.Type

func (*CarrierGateway) ToCarrierGatewayOutput

func (i *CarrierGateway) ToCarrierGatewayOutput() CarrierGatewayOutput

func (*CarrierGateway) ToCarrierGatewayOutputWithContext

func (i *CarrierGateway) ToCarrierGatewayOutputWithContext(ctx context.Context) CarrierGatewayOutput

func (*CarrierGateway) ToCarrierGatewayPtrOutput

func (i *CarrierGateway) ToCarrierGatewayPtrOutput() CarrierGatewayPtrOutput

func (*CarrierGateway) ToCarrierGatewayPtrOutputWithContext

func (i *CarrierGateway) ToCarrierGatewayPtrOutputWithContext(ctx context.Context) CarrierGatewayPtrOutput

type CarrierGatewayArgs

type CarrierGatewayArgs struct {
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The ID of the VPC to associate with the carrier gateway.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a CarrierGateway resource.

func (CarrierGatewayArgs) ElementType

func (CarrierGatewayArgs) ElementType() reflect.Type

type CarrierGatewayArray

type CarrierGatewayArray []CarrierGatewayInput

func (CarrierGatewayArray) ElementType

func (CarrierGatewayArray) ElementType() reflect.Type

func (CarrierGatewayArray) ToCarrierGatewayArrayOutput

func (i CarrierGatewayArray) ToCarrierGatewayArrayOutput() CarrierGatewayArrayOutput

func (CarrierGatewayArray) ToCarrierGatewayArrayOutputWithContext

func (i CarrierGatewayArray) ToCarrierGatewayArrayOutputWithContext(ctx context.Context) CarrierGatewayArrayOutput

type CarrierGatewayArrayInput

type CarrierGatewayArrayInput interface {
	pulumi.Input

	ToCarrierGatewayArrayOutput() CarrierGatewayArrayOutput
	ToCarrierGatewayArrayOutputWithContext(context.Context) CarrierGatewayArrayOutput
}

CarrierGatewayArrayInput is an input type that accepts CarrierGatewayArray and CarrierGatewayArrayOutput values. You can construct a concrete instance of `CarrierGatewayArrayInput` via:

CarrierGatewayArray{ CarrierGatewayArgs{...} }

type CarrierGatewayArrayOutput

type CarrierGatewayArrayOutput struct{ *pulumi.OutputState }

func (CarrierGatewayArrayOutput) ElementType

func (CarrierGatewayArrayOutput) ElementType() reflect.Type

func (CarrierGatewayArrayOutput) Index

func (CarrierGatewayArrayOutput) ToCarrierGatewayArrayOutput

func (o CarrierGatewayArrayOutput) ToCarrierGatewayArrayOutput() CarrierGatewayArrayOutput

func (CarrierGatewayArrayOutput) ToCarrierGatewayArrayOutputWithContext

func (o CarrierGatewayArrayOutput) ToCarrierGatewayArrayOutputWithContext(ctx context.Context) CarrierGatewayArrayOutput

type CarrierGatewayInput

type CarrierGatewayInput interface {
	pulumi.Input

	ToCarrierGatewayOutput() CarrierGatewayOutput
	ToCarrierGatewayOutputWithContext(ctx context.Context) CarrierGatewayOutput
}

type CarrierGatewayMap

type CarrierGatewayMap map[string]CarrierGatewayInput

func (CarrierGatewayMap) ElementType

func (CarrierGatewayMap) ElementType() reflect.Type

func (CarrierGatewayMap) ToCarrierGatewayMapOutput

func (i CarrierGatewayMap) ToCarrierGatewayMapOutput() CarrierGatewayMapOutput

func (CarrierGatewayMap) ToCarrierGatewayMapOutputWithContext

func (i CarrierGatewayMap) ToCarrierGatewayMapOutputWithContext(ctx context.Context) CarrierGatewayMapOutput

type CarrierGatewayMapInput

type CarrierGatewayMapInput interface {
	pulumi.Input

	ToCarrierGatewayMapOutput() CarrierGatewayMapOutput
	ToCarrierGatewayMapOutputWithContext(context.Context) CarrierGatewayMapOutput
}

CarrierGatewayMapInput is an input type that accepts CarrierGatewayMap and CarrierGatewayMapOutput values. You can construct a concrete instance of `CarrierGatewayMapInput` via:

CarrierGatewayMap{ "key": CarrierGatewayArgs{...} }

type CarrierGatewayMapOutput

type CarrierGatewayMapOutput struct{ *pulumi.OutputState }

func (CarrierGatewayMapOutput) ElementType

func (CarrierGatewayMapOutput) ElementType() reflect.Type

func (CarrierGatewayMapOutput) MapIndex

func (CarrierGatewayMapOutput) ToCarrierGatewayMapOutput

func (o CarrierGatewayMapOutput) ToCarrierGatewayMapOutput() CarrierGatewayMapOutput

func (CarrierGatewayMapOutput) ToCarrierGatewayMapOutputWithContext

func (o CarrierGatewayMapOutput) ToCarrierGatewayMapOutputWithContext(ctx context.Context) CarrierGatewayMapOutput

type CarrierGatewayOutput

type CarrierGatewayOutput struct{ *pulumi.OutputState }

func (CarrierGatewayOutput) ElementType

func (CarrierGatewayOutput) ElementType() reflect.Type

func (CarrierGatewayOutput) ToCarrierGatewayOutput

func (o CarrierGatewayOutput) ToCarrierGatewayOutput() CarrierGatewayOutput

func (CarrierGatewayOutput) ToCarrierGatewayOutputWithContext

func (o CarrierGatewayOutput) ToCarrierGatewayOutputWithContext(ctx context.Context) CarrierGatewayOutput

func (CarrierGatewayOutput) ToCarrierGatewayPtrOutput

func (o CarrierGatewayOutput) ToCarrierGatewayPtrOutput() CarrierGatewayPtrOutput

func (CarrierGatewayOutput) ToCarrierGatewayPtrOutputWithContext

func (o CarrierGatewayOutput) ToCarrierGatewayPtrOutputWithContext(ctx context.Context) CarrierGatewayPtrOutput

type CarrierGatewayPtrInput

type CarrierGatewayPtrInput interface {
	pulumi.Input

	ToCarrierGatewayPtrOutput() CarrierGatewayPtrOutput
	ToCarrierGatewayPtrOutputWithContext(ctx context.Context) CarrierGatewayPtrOutput
}

type CarrierGatewayPtrOutput

type CarrierGatewayPtrOutput struct{ *pulumi.OutputState }

func (CarrierGatewayPtrOutput) Elem added in v4.15.0

func (CarrierGatewayPtrOutput) ElementType

func (CarrierGatewayPtrOutput) ElementType() reflect.Type

func (CarrierGatewayPtrOutput) ToCarrierGatewayPtrOutput

func (o CarrierGatewayPtrOutput) ToCarrierGatewayPtrOutput() CarrierGatewayPtrOutput

func (CarrierGatewayPtrOutput) ToCarrierGatewayPtrOutputWithContext

func (o CarrierGatewayPtrOutput) ToCarrierGatewayPtrOutputWithContext(ctx context.Context) CarrierGatewayPtrOutput

type CarrierGatewayState

type CarrierGatewayState struct {
	// The ARN of the carrier gateway.
	Arn pulumi.StringPtrInput
	// The AWS account ID of the owner of the carrier gateway.
	OwnerId pulumi.StringPtrInput
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The ID of the VPC to associate with the carrier gateway.
	VpcId pulumi.StringPtrInput
}

func (CarrierGatewayState) ElementType

func (CarrierGatewayState) ElementType() reflect.Type

type CustomerGateway

type CustomerGateway struct {
	pulumi.CustomResourceState

	// The ARN of the customer gateway.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
	BgpAsn pulumi.StringOutput `pulumi:"bgpAsn"`
	// A name for the customer gateway device.
	DeviceName pulumi.StringPtrOutput `pulumi:"deviceName"`
	// The IP address of the gateway's Internet-routable external interface.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// Tags to apply to the gateway. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The type of customer gateway. The only type AWS
	// supports at this time is "ipsec.1".
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a customer gateway inside a VPC. These objects can be connected to VPN gateways via VPN connections, and allow you to establish tunnels between your network and the VPC.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewCustomerGateway(ctx, "main", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.83.124.10"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main-customer-gateway"),
			},
			Type: pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Customer Gateways can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/customerGateway:CustomerGateway main cgw-b4dc3961

```

func GetCustomerGateway

func GetCustomerGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomerGatewayState, opts ...pulumi.ResourceOption) (*CustomerGateway, error)

GetCustomerGateway gets an existing CustomerGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCustomerGateway

func NewCustomerGateway(ctx *pulumi.Context,
	name string, args *CustomerGatewayArgs, opts ...pulumi.ResourceOption) (*CustomerGateway, error)

NewCustomerGateway registers a new resource with the given unique name, arguments, and options.

func (*CustomerGateway) ElementType

func (*CustomerGateway) ElementType() reflect.Type

func (*CustomerGateway) ToCustomerGatewayOutput

func (i *CustomerGateway) ToCustomerGatewayOutput() CustomerGatewayOutput

func (*CustomerGateway) ToCustomerGatewayOutputWithContext

func (i *CustomerGateway) ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput

func (*CustomerGateway) ToCustomerGatewayPtrOutput

func (i *CustomerGateway) ToCustomerGatewayPtrOutput() CustomerGatewayPtrOutput

func (*CustomerGateway) ToCustomerGatewayPtrOutputWithContext

func (i *CustomerGateway) ToCustomerGatewayPtrOutputWithContext(ctx context.Context) CustomerGatewayPtrOutput

type CustomerGatewayArgs

type CustomerGatewayArgs struct {
	// The gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
	BgpAsn pulumi.StringInput
	// A name for the customer gateway device.
	DeviceName pulumi.StringPtrInput
	// The IP address of the gateway's Internet-routable external interface.
	IpAddress pulumi.StringInput
	// Tags to apply to the gateway. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The type of customer gateway. The only type AWS
	// supports at this time is "ipsec.1".
	Type pulumi.StringInput
}

The set of arguments for constructing a CustomerGateway resource.

func (CustomerGatewayArgs) ElementType

func (CustomerGatewayArgs) ElementType() reflect.Type

type CustomerGatewayArray

type CustomerGatewayArray []CustomerGatewayInput

func (CustomerGatewayArray) ElementType

func (CustomerGatewayArray) ElementType() reflect.Type

func (CustomerGatewayArray) ToCustomerGatewayArrayOutput

func (i CustomerGatewayArray) ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput

func (CustomerGatewayArray) ToCustomerGatewayArrayOutputWithContext

func (i CustomerGatewayArray) ToCustomerGatewayArrayOutputWithContext(ctx context.Context) CustomerGatewayArrayOutput

type CustomerGatewayArrayInput

type CustomerGatewayArrayInput interface {
	pulumi.Input

	ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput
	ToCustomerGatewayArrayOutputWithContext(context.Context) CustomerGatewayArrayOutput
}

CustomerGatewayArrayInput is an input type that accepts CustomerGatewayArray and CustomerGatewayArrayOutput values. You can construct a concrete instance of `CustomerGatewayArrayInput` via:

CustomerGatewayArray{ CustomerGatewayArgs{...} }

type CustomerGatewayArrayOutput

type CustomerGatewayArrayOutput struct{ *pulumi.OutputState }

func (CustomerGatewayArrayOutput) ElementType

func (CustomerGatewayArrayOutput) ElementType() reflect.Type

func (CustomerGatewayArrayOutput) Index

func (CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutput

func (o CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput

func (CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutputWithContext

func (o CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutputWithContext(ctx context.Context) CustomerGatewayArrayOutput

type CustomerGatewayInput

type CustomerGatewayInput interface {
	pulumi.Input

	ToCustomerGatewayOutput() CustomerGatewayOutput
	ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput
}

type CustomerGatewayMap

type CustomerGatewayMap map[string]CustomerGatewayInput

func (CustomerGatewayMap) ElementType

func (CustomerGatewayMap) ElementType() reflect.Type

func (CustomerGatewayMap) ToCustomerGatewayMapOutput

func (i CustomerGatewayMap) ToCustomerGatewayMapOutput() CustomerGatewayMapOutput

func (CustomerGatewayMap) ToCustomerGatewayMapOutputWithContext

func (i CustomerGatewayMap) ToCustomerGatewayMapOutputWithContext(ctx context.Context) CustomerGatewayMapOutput

type CustomerGatewayMapInput

type CustomerGatewayMapInput interface {
	pulumi.Input

	ToCustomerGatewayMapOutput() CustomerGatewayMapOutput
	ToCustomerGatewayMapOutputWithContext(context.Context) CustomerGatewayMapOutput
}

CustomerGatewayMapInput is an input type that accepts CustomerGatewayMap and CustomerGatewayMapOutput values. You can construct a concrete instance of `CustomerGatewayMapInput` via:

CustomerGatewayMap{ "key": CustomerGatewayArgs{...} }

type CustomerGatewayMapOutput

type CustomerGatewayMapOutput struct{ *pulumi.OutputState }

func (CustomerGatewayMapOutput) ElementType

func (CustomerGatewayMapOutput) ElementType() reflect.Type

func (CustomerGatewayMapOutput) MapIndex

func (CustomerGatewayMapOutput) ToCustomerGatewayMapOutput

func (o CustomerGatewayMapOutput) ToCustomerGatewayMapOutput() CustomerGatewayMapOutput

func (CustomerGatewayMapOutput) ToCustomerGatewayMapOutputWithContext

func (o CustomerGatewayMapOutput) ToCustomerGatewayMapOutputWithContext(ctx context.Context) CustomerGatewayMapOutput

type CustomerGatewayOutput

type CustomerGatewayOutput struct{ *pulumi.OutputState }

func (CustomerGatewayOutput) ElementType

func (CustomerGatewayOutput) ElementType() reflect.Type

func (CustomerGatewayOutput) ToCustomerGatewayOutput

func (o CustomerGatewayOutput) ToCustomerGatewayOutput() CustomerGatewayOutput

func (CustomerGatewayOutput) ToCustomerGatewayOutputWithContext

func (o CustomerGatewayOutput) ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput

func (CustomerGatewayOutput) ToCustomerGatewayPtrOutput

func (o CustomerGatewayOutput) ToCustomerGatewayPtrOutput() CustomerGatewayPtrOutput

func (CustomerGatewayOutput) ToCustomerGatewayPtrOutputWithContext

func (o CustomerGatewayOutput) ToCustomerGatewayPtrOutputWithContext(ctx context.Context) CustomerGatewayPtrOutput

type CustomerGatewayPtrInput

type CustomerGatewayPtrInput interface {
	pulumi.Input

	ToCustomerGatewayPtrOutput() CustomerGatewayPtrOutput
	ToCustomerGatewayPtrOutputWithContext(ctx context.Context) CustomerGatewayPtrOutput
}

type CustomerGatewayPtrOutput

type CustomerGatewayPtrOutput struct{ *pulumi.OutputState }

func (CustomerGatewayPtrOutput) Elem added in v4.15.0

func (CustomerGatewayPtrOutput) ElementType

func (CustomerGatewayPtrOutput) ElementType() reflect.Type

func (CustomerGatewayPtrOutput) ToCustomerGatewayPtrOutput

func (o CustomerGatewayPtrOutput) ToCustomerGatewayPtrOutput() CustomerGatewayPtrOutput

func (CustomerGatewayPtrOutput) ToCustomerGatewayPtrOutputWithContext

func (o CustomerGatewayPtrOutput) ToCustomerGatewayPtrOutputWithContext(ctx context.Context) CustomerGatewayPtrOutput

type CustomerGatewayState

type CustomerGatewayState struct {
	// The ARN of the customer gateway.
	Arn pulumi.StringPtrInput
	// The gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
	BgpAsn pulumi.StringPtrInput
	// A name for the customer gateway device.
	DeviceName pulumi.StringPtrInput
	// The IP address of the gateway's Internet-routable external interface.
	IpAddress pulumi.StringPtrInput
	// Tags to apply to the gateway. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The type of customer gateway. The only type AWS
	// supports at this time is "ipsec.1".
	Type pulumi.StringPtrInput
}

func (CustomerGatewayState) ElementType

func (CustomerGatewayState) ElementType() reflect.Type

type DedicatedHost

type DedicatedHost struct {
	pulumi.CustomResourceState

	// Indicates whether the host accepts any untargeted instance launches that match its instance type configuration, or if it only accepts Host tenancy instance launches that specify its unique host ID.
	AutoPlacement pulumi.StringOutput `pulumi:"autoPlacement"`
	// The AZ to start the host in.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Indicates whether to enable or disable host recovery for the Dedicated Host. Host recovery is disabled by default.
	HostRecovery pulumi.StringOutput `pulumi:"hostRecovery"`
	// Specifies the instance family for which to configure your Dedicated Host. Mutually exclusive with `instanceType`.
	InstanceFamily pulumi.StringPtrOutput `pulumi:"instanceFamily"`
	// Specifies the instance type for which to configure your Dedicated Host. When you specify the instance type, that is the only instance type that you can launch onto that host. Mutually exclusive with `instanceFamily`.
	InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"`
	Tags         pulumi.StringMapOutput `pulumi:"tags"`
}

Provides an EC2 host resource. This allows hosts to be created, updated, and deleted.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := ec2.NewDedicatedHost(ctx, "test", &ec2.DedicatedHostArgs{
			AutoPlacement:    pulumi.String("on"),
			AvailabilityZone: pulumi.String("us-west-1a"),
			HostRecovery:     pulumi.String("on"),
			InstanceType:     pulumi.String("c5.18xlarge"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

hosts can be imported using the `host_id`, e.g.

```sh

$ pulumi import aws:ec2/dedicatedHost:DedicatedHost host_id h-0385a99d0e4b20cbb

```

func GetDedicatedHost

func GetDedicatedHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DedicatedHostState, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

GetDedicatedHost gets an existing DedicatedHost resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDedicatedHost

func NewDedicatedHost(ctx *pulumi.Context,
	name string, args *DedicatedHostArgs, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

NewDedicatedHost registers a new resource with the given unique name, arguments, and options.

func (*DedicatedHost) ElementType

func (*DedicatedHost) ElementType() reflect.Type

func (*DedicatedHost) ToDedicatedHostOutput

func (i *DedicatedHost) ToDedicatedHostOutput() DedicatedHostOutput

func (*DedicatedHost) ToDedicatedHostOutputWithContext

func (i *DedicatedHost) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

func (*DedicatedHost) ToDedicatedHostPtrOutput

func (i *DedicatedHost) ToDedicatedHostPtrOutput() DedicatedHostPtrOutput

func (*DedicatedHost) ToDedicatedHostPtrOutputWithContext

func (i *DedicatedHost) ToDedicatedHostPtrOutputWithContext(ctx context.Context) DedicatedHostPtrOutput

type DedicatedHostArgs

type DedicatedHostArgs struct {
	// Indicates whether the host accepts any untargeted instance launches that match its instance type configuration, or if it only accepts Host tenancy instance launches that specify its unique host ID.
	AutoPlacement pulumi.StringPtrInput
	// The AZ to start the host in.
	AvailabilityZone pulumi.StringInput
	// Indicates whether to enable or disable host recovery for the Dedicated Host. Host recovery is disabled by default.
	HostRecovery pulumi.StringPtrInput
	// Specifies the instance family for which to configure your Dedicated Host. Mutually exclusive with `instanceType`.
	InstanceFamily pulumi.StringPtrInput
	// Specifies the instance type for which to configure your Dedicated Host. When you specify the instance type, that is the only instance type that you can launch onto that host. Mutually exclusive with `instanceFamily`.
	InstanceType pulumi.StringPtrInput
	Tags         pulumi.StringMapInput
}

The set of arguments for constructing a DedicatedHost resource.

func (DedicatedHostArgs) ElementType

func (DedicatedHostArgs) ElementType() reflect.Type

type DedicatedHostArray

type DedicatedHostArray []DedicatedHostInput

func (DedicatedHostArray) ElementType

func (DedicatedHostArray) ElementType() reflect.Type

func (DedicatedHostArray) ToDedicatedHostArrayOutput

func (i DedicatedHostArray) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArray) ToDedicatedHostArrayOutputWithContext

func (i DedicatedHostArray) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostArrayInput

type DedicatedHostArrayInput interface {
	pulumi.Input

	ToDedicatedHostArrayOutput() DedicatedHostArrayOutput
	ToDedicatedHostArrayOutputWithContext(context.Context) DedicatedHostArrayOutput
}

DedicatedHostArrayInput is an input type that accepts DedicatedHostArray and DedicatedHostArrayOutput values. You can construct a concrete instance of `DedicatedHostArrayInput` via:

DedicatedHostArray{ DedicatedHostArgs{...} }

type DedicatedHostArrayOutput

type DedicatedHostArrayOutput struct{ *pulumi.OutputState }

func (DedicatedHostArrayOutput) ElementType

func (DedicatedHostArrayOutput) ElementType() reflect.Type

func (DedicatedHostArrayOutput) Index

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutput

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostInput

type DedicatedHostInput interface {
	pulumi.Input

	ToDedicatedHostOutput() DedicatedHostOutput
	ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput
}

type DedicatedHostMap

type DedicatedHostMap map[string]DedicatedHostInput

func (DedicatedHostMap) ElementType

func (DedicatedHostMap) ElementType() reflect.Type

func (DedicatedHostMap) ToDedicatedHostMapOutput

func (i DedicatedHostMap) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMap) ToDedicatedHostMapOutputWithContext

func (i DedicatedHostMap) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostMapInput

type DedicatedHostMapInput interface {
	pulumi.Input

	ToDedicatedHostMapOutput() DedicatedHostMapOutput
	ToDedicatedHostMapOutputWithContext(context.Context) DedicatedHostMapOutput
}

DedicatedHostMapInput is an input type that accepts DedicatedHostMap and DedicatedHostMapOutput values. You can construct a concrete instance of `DedicatedHostMapInput` via:

DedicatedHostMap{ "key": DedicatedHostArgs{...} }

type DedicatedHostMapOutput

type DedicatedHostMapOutput struct{ *pulumi.OutputState }

func (DedicatedHostMapOutput) ElementType

func (DedicatedHostMapOutput) ElementType() reflect.Type

func (DedicatedHostMapOutput) MapIndex

func (DedicatedHostMapOutput) ToDedicatedHostMapOutput

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostOutput

type DedicatedHostOutput struct{ *pulumi.OutputState }

func (DedicatedHostOutput) ElementType

func (DedicatedHostOutput) ElementType() reflect.Type

func (DedicatedHostOutput) ToDedicatedHostOutput

func (o DedicatedHostOutput) ToDedicatedHostOutput() DedicatedHostOutput

func (DedicatedHostOutput) ToDedicatedHostOutputWithContext

func (o DedicatedHostOutput) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

func (DedicatedHostOutput) ToDedicatedHostPtrOutput

func (o DedicatedHostOutput) ToDedicatedHostPtrOutput() DedicatedHostPtrOutput

func (DedicatedHostOutput) ToDedicatedHostPtrOutputWithContext

func (o DedicatedHostOutput) ToDedicatedHostPtrOutputWithContext(ctx context.Context) DedicatedHostPtrOutput

type DedicatedHostPtrInput

type DedicatedHostPtrInput interface {
	pulumi.Input

	ToDedicatedHostPtrOutput() DedicatedHostPtrOutput
	ToDedicatedHostPtrOutputWithContext(ctx context.Context) DedicatedHostPtrOutput
}

type DedicatedHostPtrOutput

type DedicatedHostPtrOutput struct{ *pulumi.OutputState }

func (DedicatedHostPtrOutput) Elem added in v4.15.0

func (DedicatedHostPtrOutput) ElementType

func (DedicatedHostPtrOutput) ElementType() reflect.Type

func (DedicatedHostPtrOutput) ToDedicatedHostPtrOutput

func (o DedicatedHostPtrOutput) ToDedicatedHostPtrOutput() DedicatedHostPtrOutput

func (DedicatedHostPtrOutput) ToDedicatedHostPtrOutputWithContext

func (o DedicatedHostPtrOutput) ToDedicatedHostPtrOutputWithContext(ctx context.Context) DedicatedHostPtrOutput

type DedicatedHostState

type DedicatedHostState struct {
	// Indicates whether the host accepts any untargeted instance launches that match its instance type configuration, or if it only accepts Host tenancy instance launches that specify its unique host ID.
	AutoPlacement pulumi.StringPtrInput
	// The AZ to start the host in.
	AvailabilityZone pulumi.StringPtrInput
	// Indicates whether to enable or disable host recovery for the Dedicated Host. Host recovery is disabled by default.
	HostRecovery pulumi.StringPtrInput
	// Specifies the instance family for which to configure your Dedicated Host. Mutually exclusive with `instanceType`.
	InstanceFamily pulumi.StringPtrInput
	// Specifies the instance type for which to configure your Dedicated Host. When you specify the instance type, that is the only instance type that you can launch onto that host. Mutually exclusive with `instanceFamily`.
	InstanceType pulumi.StringPtrInput
	Tags         pulumi.StringMapInput
}

func (DedicatedHostState) ElementType

func (DedicatedHostState) ElementType() reflect.Type

type DefaultNetworkAcl

type DefaultNetworkAcl struct {
	pulumi.CustomResourceState

	// ARN of the Default Network ACL
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Network ACL ID to manage. This attribute is exported from `ec2.Vpc`, or manually found via the AWS Console.
	DefaultNetworkAclId pulumi.StringOutput `pulumi:"defaultNetworkAclId"`
	// Configuration block for an egress rule. Detailed below.
	Egress DefaultNetworkAclEgressArrayOutput `pulumi:"egress"`
	// Configuration block for an ingress rule. Detailed below.
	Ingress DefaultNetworkAclIngressArrayOutput `pulumi:"ingress"`
	// ID of the AWS account that owns the Default Network ACL
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// List of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ID of the associated VPC
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to manage a VPC's default network ACL. This resource can manage the default network ACL of the default or a non-default VPC.

> **NOTE:** This is an advanced resource with special caveats. Please read this document in its entirety before using this resource. The `ec2.DefaultNetworkAcl` behaves differently from normal resources. This provider does not _create_ this resource but instead attempts to "adopt" it into management.

Every VPC has a default network ACL that can be managed but not destroyed. When the provider first adopts the Default Network ACL, it **immediately removes all rules in the ACL**. It then proceeds to create any rules specified in the configuration. This step is required so that only the rules specified in the configuration are created.

This resource treats its inline rules as absolute; only the rules defined inline are created, and any additions/removals external to this resource will result in diffs being shown. For these reasons, this resource is incompatible with the `ec2.NetworkAclRule` resource.

For more information about Network ACLs, see the AWS Documentation on [Network ACLs][aws-network-acls].

## Example Usage ### Basic Example

The following config gives the Default Network ACL the same rules that AWS includes but pulls the resource under management by this provider. This means that any ACL rules added or changed will be detected as drift.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainvpc, err := ec2.NewVpc(ctx, "mainvpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewDefaultNetworkAcl(ctx, "_default", &ec2.DefaultNetworkAclArgs{
			DefaultNetworkAclId: mainvpc.DefaultNetworkAclId,
			Ingress: ec2.DefaultNetworkAclIngressArray{
				&ec2.DefaultNetworkAclIngressArgs{
					Protocol:  pulumi.String("-1"),
					RuleNo:    pulumi.Int(100),
					Action:    pulumi.String("allow"),
					CidrBlock: mainvpc.CidrBlock,
					FromPort:  pulumi.Int(0),
					ToPort:    pulumi.Int(0),
				},
			},
			Egress: ec2.DefaultNetworkAclEgressArray{
				&ec2.DefaultNetworkAclEgressArgs{
					Protocol:  pulumi.String("-1"),
					RuleNo:    pulumi.Int(100),
					Action:    pulumi.String("allow"),
					CidrBlock: pulumi.String("0.0.0.0/0"),
					FromPort:  pulumi.Int(0),
					ToPort:    pulumi.Int(0),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example: Deny All Egress Traffic, Allow Ingress

The following denies all Egress traffic by omitting any `egress` rules, while including the default `ingress` rule to allow all traffic.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainvpc, err := ec2.NewVpc(ctx, "mainvpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewDefaultNetworkAcl(ctx, "_default", &ec2.DefaultNetworkAclArgs{
			DefaultNetworkAclId: mainvpc.DefaultNetworkAclId,
			Ingress: ec2.DefaultNetworkAclIngressArray{
				&ec2.DefaultNetworkAclIngressArgs{
					Protocol:  pulumi.String("-1"),
					RuleNo:    pulumi.Int(100),
					Action:    pulumi.String("allow"),
					CidrBlock: pulumi.Any(aws_default_vpc.Mainvpc.Cidr_block),
					FromPort:  pulumi.Int(0),
					ToPort:    pulumi.Int(0),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example: Deny All Traffic To Any Subnet In The Default Network ACL

This config denies all traffic in the Default ACL. This can be useful if you want to lock down the VPC to force all resources to assign a non-default ACL.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainvpc, err := ec2.NewVpc(ctx, "mainvpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewDefaultNetworkAcl(ctx, "_default", &ec2.DefaultNetworkAclArgs{
			DefaultNetworkAclId: mainvpc.DefaultNetworkAclId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Managing Subnets In A Default Network ACL

Within a VPC, all Subnets must be associated with a Network ACL. In order to "delete" the association between a Subnet and a non-default Network ACL, the association is destroyed by replacing it with an association between the Subnet and the Default ACL instead.

When managing the Default Network ACL, you cannot "remove" Subnets. Instead, they must be reassigned to another Network ACL, or the Subnet itself must be destroyed. Because of these requirements, removing the `subnetIds` attribute from the configuration of a `ec2.DefaultNetworkAcl` resource may result in a reoccurring plan, until the Subnets are reassigned to another Network ACL or are destroyed.

Because Subnets are by default associated with the Default Network ACL, any non-explicit association will show up as a plan to remove the Subnet. For example: if you have a custom `ec2.NetworkAcl` with two subnets attached, and you remove the `ec2.NetworkAcl` resource, after successfully destroying this resource future plans will show a diff on the managed `ec2.DefaultNetworkAcl`, as those two Subnets have been orphaned by the now destroyed network acl and thus adopted by the Default Network ACL. In order to avoid a reoccurring plan, they will need to be reassigned, destroyed, or added to the `subnetIds` attribute of the `ec2.DefaultNetworkAcl` entry.

As an alternative to the above, you can also specify the following lifecycle configuration in your `ec2.DefaultNetworkAcl` resource:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultNetworkAcl(ctx, "_default", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Removing `ec2.DefaultNetworkAcl` From Your Configuration

Each AWS VPC comes with a Default Network ACL that cannot be deleted. The `ec2.DefaultNetworkAcl` allows you to manage this Network ACL, but the provider cannot destroy it. Removing this resource from your configuration will remove it from your statefile and management, **but will not destroy the Network ACL.** All Subnets associations and ingress or egress rules will be left as they are at the time of removal. You can resume managing them via the AWS Console.

## Import

Default Network ACLs can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/defaultNetworkAcl:DefaultNetworkAcl sample acl-7aaabd18

```

func GetDefaultNetworkAcl

func GetDefaultNetworkAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultNetworkAclState, opts ...pulumi.ResourceOption) (*DefaultNetworkAcl, error)

GetDefaultNetworkAcl gets an existing DefaultNetworkAcl resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultNetworkAcl

func NewDefaultNetworkAcl(ctx *pulumi.Context,
	name string, args *DefaultNetworkAclArgs, opts ...pulumi.ResourceOption) (*DefaultNetworkAcl, error)

NewDefaultNetworkAcl registers a new resource with the given unique name, arguments, and options.

func (*DefaultNetworkAcl) ElementType

func (*DefaultNetworkAcl) ElementType() reflect.Type

func (*DefaultNetworkAcl) ToDefaultNetworkAclOutput

func (i *DefaultNetworkAcl) ToDefaultNetworkAclOutput() DefaultNetworkAclOutput

func (*DefaultNetworkAcl) ToDefaultNetworkAclOutputWithContext

func (i *DefaultNetworkAcl) ToDefaultNetworkAclOutputWithContext(ctx context.Context) DefaultNetworkAclOutput

func (*DefaultNetworkAcl) ToDefaultNetworkAclPtrOutput

func (i *DefaultNetworkAcl) ToDefaultNetworkAclPtrOutput() DefaultNetworkAclPtrOutput

func (*DefaultNetworkAcl) ToDefaultNetworkAclPtrOutputWithContext

func (i *DefaultNetworkAcl) ToDefaultNetworkAclPtrOutputWithContext(ctx context.Context) DefaultNetworkAclPtrOutput

type DefaultNetworkAclArgs

type DefaultNetworkAclArgs struct {
	// Network ACL ID to manage. This attribute is exported from `ec2.Vpc`, or manually found via the AWS Console.
	DefaultNetworkAclId pulumi.StringInput
	// Configuration block for an egress rule. Detailed below.
	Egress DefaultNetworkAclEgressArrayInput
	// Configuration block for an ingress rule. Detailed below.
	Ingress DefaultNetworkAclIngressArrayInput
	// List of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL
	SubnetIds pulumi.StringArrayInput
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a DefaultNetworkAcl resource.

func (DefaultNetworkAclArgs) ElementType

func (DefaultNetworkAclArgs) ElementType() reflect.Type

type DefaultNetworkAclArray

type DefaultNetworkAclArray []DefaultNetworkAclInput

func (DefaultNetworkAclArray) ElementType

func (DefaultNetworkAclArray) ElementType() reflect.Type

func (DefaultNetworkAclArray) ToDefaultNetworkAclArrayOutput

func (i DefaultNetworkAclArray) ToDefaultNetworkAclArrayOutput() DefaultNetworkAclArrayOutput

func (DefaultNetworkAclArray) ToDefaultNetworkAclArrayOutputWithContext

func (i DefaultNetworkAclArray) ToDefaultNetworkAclArrayOutputWithContext(ctx context.Context) DefaultNetworkAclArrayOutput

type DefaultNetworkAclArrayInput

type DefaultNetworkAclArrayInput interface {
	pulumi.Input

	ToDefaultNetworkAclArrayOutput() DefaultNetworkAclArrayOutput
	ToDefaultNetworkAclArrayOutputWithContext(context.Context) DefaultNetworkAclArrayOutput
}

DefaultNetworkAclArrayInput is an input type that accepts DefaultNetworkAclArray and DefaultNetworkAclArrayOutput values. You can construct a concrete instance of `DefaultNetworkAclArrayInput` via:

DefaultNetworkAclArray{ DefaultNetworkAclArgs{...} }

type DefaultNetworkAclArrayOutput

type DefaultNetworkAclArrayOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclArrayOutput) ElementType

func (DefaultNetworkAclArrayOutput) Index

func (DefaultNetworkAclArrayOutput) ToDefaultNetworkAclArrayOutput

func (o DefaultNetworkAclArrayOutput) ToDefaultNetworkAclArrayOutput() DefaultNetworkAclArrayOutput

func (DefaultNetworkAclArrayOutput) ToDefaultNetworkAclArrayOutputWithContext

func (o DefaultNetworkAclArrayOutput) ToDefaultNetworkAclArrayOutputWithContext(ctx context.Context) DefaultNetworkAclArrayOutput

type DefaultNetworkAclEgress

type DefaultNetworkAclEgress struct {
	// The action to take.
	Action string `pulumi:"action"`
	// The CIDR block to match. This must be a valid network mask.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort int `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode *int `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType *int `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.
	Protocol string `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo int `pulumi:"ruleNo"`
	// The to port to match.
	ToPort int `pulumi:"toPort"`
}

type DefaultNetworkAclEgressArgs

type DefaultNetworkAclEgressArgs struct {
	// The action to take.
	Action pulumi.StringInput `pulumi:"action"`
	// The CIDR block to match. This must be a valid network mask.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode pulumi.IntPtrInput `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType pulumi.IntPtrInput `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo pulumi.IntInput `pulumi:"ruleNo"`
	// The to port to match.
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (DefaultNetworkAclEgressArgs) ElementType

func (DefaultNetworkAclEgressArgs) ToDefaultNetworkAclEgressOutput

func (i DefaultNetworkAclEgressArgs) ToDefaultNetworkAclEgressOutput() DefaultNetworkAclEgressOutput

func (DefaultNetworkAclEgressArgs) ToDefaultNetworkAclEgressOutputWithContext

func (i DefaultNetworkAclEgressArgs) ToDefaultNetworkAclEgressOutputWithContext(ctx context.Context) DefaultNetworkAclEgressOutput

type DefaultNetworkAclEgressArray

type DefaultNetworkAclEgressArray []DefaultNetworkAclEgressInput

func (DefaultNetworkAclEgressArray) ElementType

func (DefaultNetworkAclEgressArray) ToDefaultNetworkAclEgressArrayOutput

func (i DefaultNetworkAclEgressArray) ToDefaultNetworkAclEgressArrayOutput() DefaultNetworkAclEgressArrayOutput

func (DefaultNetworkAclEgressArray) ToDefaultNetworkAclEgressArrayOutputWithContext

func (i DefaultNetworkAclEgressArray) ToDefaultNetworkAclEgressArrayOutputWithContext(ctx context.Context) DefaultNetworkAclEgressArrayOutput

type DefaultNetworkAclEgressArrayInput

type DefaultNetworkAclEgressArrayInput interface {
	pulumi.Input

	ToDefaultNetworkAclEgressArrayOutput() DefaultNetworkAclEgressArrayOutput
	ToDefaultNetworkAclEgressArrayOutputWithContext(context.Context) DefaultNetworkAclEgressArrayOutput
}

DefaultNetworkAclEgressArrayInput is an input type that accepts DefaultNetworkAclEgressArray and DefaultNetworkAclEgressArrayOutput values. You can construct a concrete instance of `DefaultNetworkAclEgressArrayInput` via:

DefaultNetworkAclEgressArray{ DefaultNetworkAclEgressArgs{...} }

type DefaultNetworkAclEgressArrayOutput

type DefaultNetworkAclEgressArrayOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclEgressArrayOutput) ElementType

func (DefaultNetworkAclEgressArrayOutput) Index

func (DefaultNetworkAclEgressArrayOutput) ToDefaultNetworkAclEgressArrayOutput

func (o DefaultNetworkAclEgressArrayOutput) ToDefaultNetworkAclEgressArrayOutput() DefaultNetworkAclEgressArrayOutput

func (DefaultNetworkAclEgressArrayOutput) ToDefaultNetworkAclEgressArrayOutputWithContext

func (o DefaultNetworkAclEgressArrayOutput) ToDefaultNetworkAclEgressArrayOutputWithContext(ctx context.Context) DefaultNetworkAclEgressArrayOutput

type DefaultNetworkAclEgressInput

type DefaultNetworkAclEgressInput interface {
	pulumi.Input

	ToDefaultNetworkAclEgressOutput() DefaultNetworkAclEgressOutput
	ToDefaultNetworkAclEgressOutputWithContext(context.Context) DefaultNetworkAclEgressOutput
}

DefaultNetworkAclEgressInput is an input type that accepts DefaultNetworkAclEgressArgs and DefaultNetworkAclEgressOutput values. You can construct a concrete instance of `DefaultNetworkAclEgressInput` via:

DefaultNetworkAclEgressArgs{...}

type DefaultNetworkAclEgressOutput

type DefaultNetworkAclEgressOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclEgressOutput) Action

The action to take.

func (DefaultNetworkAclEgressOutput) CidrBlock

The CIDR block to match. This must be a valid network mask.

func (DefaultNetworkAclEgressOutput) ElementType

func (DefaultNetworkAclEgressOutput) FromPort

The from port to match.

func (DefaultNetworkAclEgressOutput) IcmpCode

The ICMP type code to be used. Default 0.

func (DefaultNetworkAclEgressOutput) IcmpType

The ICMP type to be used. Default 0.

func (DefaultNetworkAclEgressOutput) Ipv6CidrBlock

The IPv6 CIDR block.

func (DefaultNetworkAclEgressOutput) Protocol

The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.

func (DefaultNetworkAclEgressOutput) RuleNo

The rule number. Used for ordering.

func (DefaultNetworkAclEgressOutput) ToDefaultNetworkAclEgressOutput

func (o DefaultNetworkAclEgressOutput) ToDefaultNetworkAclEgressOutput() DefaultNetworkAclEgressOutput

func (DefaultNetworkAclEgressOutput) ToDefaultNetworkAclEgressOutputWithContext

func (o DefaultNetworkAclEgressOutput) ToDefaultNetworkAclEgressOutputWithContext(ctx context.Context) DefaultNetworkAclEgressOutput

func (DefaultNetworkAclEgressOutput) ToPort

The to port to match.

type DefaultNetworkAclIngress

type DefaultNetworkAclIngress struct {
	// The action to take.
	Action string `pulumi:"action"`
	// The CIDR block to match. This must be a valid network mask.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort int `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode *int `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType *int `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.
	Protocol string `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo int `pulumi:"ruleNo"`
	// The to port to match.
	ToPort int `pulumi:"toPort"`
}

type DefaultNetworkAclIngressArgs

type DefaultNetworkAclIngressArgs struct {
	// The action to take.
	Action pulumi.StringInput `pulumi:"action"`
	// The CIDR block to match. This must be a valid network mask.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode pulumi.IntPtrInput `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType pulumi.IntPtrInput `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo pulumi.IntInput `pulumi:"ruleNo"`
	// The to port to match.
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (DefaultNetworkAclIngressArgs) ElementType

func (DefaultNetworkAclIngressArgs) ToDefaultNetworkAclIngressOutput

func (i DefaultNetworkAclIngressArgs) ToDefaultNetworkAclIngressOutput() DefaultNetworkAclIngressOutput

func (DefaultNetworkAclIngressArgs) ToDefaultNetworkAclIngressOutputWithContext

func (i DefaultNetworkAclIngressArgs) ToDefaultNetworkAclIngressOutputWithContext(ctx context.Context) DefaultNetworkAclIngressOutput

type DefaultNetworkAclIngressArray

type DefaultNetworkAclIngressArray []DefaultNetworkAclIngressInput

func (DefaultNetworkAclIngressArray) ElementType

func (DefaultNetworkAclIngressArray) ToDefaultNetworkAclIngressArrayOutput

func (i DefaultNetworkAclIngressArray) ToDefaultNetworkAclIngressArrayOutput() DefaultNetworkAclIngressArrayOutput

func (DefaultNetworkAclIngressArray) ToDefaultNetworkAclIngressArrayOutputWithContext

func (i DefaultNetworkAclIngressArray) ToDefaultNetworkAclIngressArrayOutputWithContext(ctx context.Context) DefaultNetworkAclIngressArrayOutput

type DefaultNetworkAclIngressArrayInput

type DefaultNetworkAclIngressArrayInput interface {
	pulumi.Input

	ToDefaultNetworkAclIngressArrayOutput() DefaultNetworkAclIngressArrayOutput
	ToDefaultNetworkAclIngressArrayOutputWithContext(context.Context) DefaultNetworkAclIngressArrayOutput
}

DefaultNetworkAclIngressArrayInput is an input type that accepts DefaultNetworkAclIngressArray and DefaultNetworkAclIngressArrayOutput values. You can construct a concrete instance of `DefaultNetworkAclIngressArrayInput` via:

DefaultNetworkAclIngressArray{ DefaultNetworkAclIngressArgs{...} }

type DefaultNetworkAclIngressArrayOutput

type DefaultNetworkAclIngressArrayOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclIngressArrayOutput) ElementType

func (DefaultNetworkAclIngressArrayOutput) Index

func (DefaultNetworkAclIngressArrayOutput) ToDefaultNetworkAclIngressArrayOutput

func (o DefaultNetworkAclIngressArrayOutput) ToDefaultNetworkAclIngressArrayOutput() DefaultNetworkAclIngressArrayOutput

func (DefaultNetworkAclIngressArrayOutput) ToDefaultNetworkAclIngressArrayOutputWithContext

func (o DefaultNetworkAclIngressArrayOutput) ToDefaultNetworkAclIngressArrayOutputWithContext(ctx context.Context) DefaultNetworkAclIngressArrayOutput

type DefaultNetworkAclIngressInput

type DefaultNetworkAclIngressInput interface {
	pulumi.Input

	ToDefaultNetworkAclIngressOutput() DefaultNetworkAclIngressOutput
	ToDefaultNetworkAclIngressOutputWithContext(context.Context) DefaultNetworkAclIngressOutput
}

DefaultNetworkAclIngressInput is an input type that accepts DefaultNetworkAclIngressArgs and DefaultNetworkAclIngressOutput values. You can construct a concrete instance of `DefaultNetworkAclIngressInput` via:

DefaultNetworkAclIngressArgs{...}

type DefaultNetworkAclIngressOutput

type DefaultNetworkAclIngressOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclIngressOutput) Action

The action to take.

func (DefaultNetworkAclIngressOutput) CidrBlock

The CIDR block to match. This must be a valid network mask.

func (DefaultNetworkAclIngressOutput) ElementType

func (DefaultNetworkAclIngressOutput) FromPort

The from port to match.

func (DefaultNetworkAclIngressOutput) IcmpCode

The ICMP type code to be used. Default 0.

func (DefaultNetworkAclIngressOutput) IcmpType

The ICMP type to be used. Default 0.

func (DefaultNetworkAclIngressOutput) Ipv6CidrBlock

The IPv6 CIDR block.

func (DefaultNetworkAclIngressOutput) Protocol

The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.

func (DefaultNetworkAclIngressOutput) RuleNo

The rule number. Used for ordering.

func (DefaultNetworkAclIngressOutput) ToDefaultNetworkAclIngressOutput

func (o DefaultNetworkAclIngressOutput) ToDefaultNetworkAclIngressOutput() DefaultNetworkAclIngressOutput

func (DefaultNetworkAclIngressOutput) ToDefaultNetworkAclIngressOutputWithContext

func (o DefaultNetworkAclIngressOutput) ToDefaultNetworkAclIngressOutputWithContext(ctx context.Context) DefaultNetworkAclIngressOutput

func (DefaultNetworkAclIngressOutput) ToPort

The to port to match.

type DefaultNetworkAclInput

type DefaultNetworkAclInput interface {
	pulumi.Input

	ToDefaultNetworkAclOutput() DefaultNetworkAclOutput
	ToDefaultNetworkAclOutputWithContext(ctx context.Context) DefaultNetworkAclOutput
}

type DefaultNetworkAclMap

type DefaultNetworkAclMap map[string]DefaultNetworkAclInput

func (DefaultNetworkAclMap) ElementType

func (DefaultNetworkAclMap) ElementType() reflect.Type

func (DefaultNetworkAclMap) ToDefaultNetworkAclMapOutput

func (i DefaultNetworkAclMap) ToDefaultNetworkAclMapOutput() DefaultNetworkAclMapOutput

func (DefaultNetworkAclMap) ToDefaultNetworkAclMapOutputWithContext

func (i DefaultNetworkAclMap) ToDefaultNetworkAclMapOutputWithContext(ctx context.Context) DefaultNetworkAclMapOutput

type DefaultNetworkAclMapInput

type DefaultNetworkAclMapInput interface {
	pulumi.Input

	ToDefaultNetworkAclMapOutput() DefaultNetworkAclMapOutput
	ToDefaultNetworkAclMapOutputWithContext(context.Context) DefaultNetworkAclMapOutput
}

DefaultNetworkAclMapInput is an input type that accepts DefaultNetworkAclMap and DefaultNetworkAclMapOutput values. You can construct a concrete instance of `DefaultNetworkAclMapInput` via:

DefaultNetworkAclMap{ "key": DefaultNetworkAclArgs{...} }

type DefaultNetworkAclMapOutput

type DefaultNetworkAclMapOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclMapOutput) ElementType

func (DefaultNetworkAclMapOutput) ElementType() reflect.Type

func (DefaultNetworkAclMapOutput) MapIndex

func (DefaultNetworkAclMapOutput) ToDefaultNetworkAclMapOutput

func (o DefaultNetworkAclMapOutput) ToDefaultNetworkAclMapOutput() DefaultNetworkAclMapOutput

func (DefaultNetworkAclMapOutput) ToDefaultNetworkAclMapOutputWithContext

func (o DefaultNetworkAclMapOutput) ToDefaultNetworkAclMapOutputWithContext(ctx context.Context) DefaultNetworkAclMapOutput

type DefaultNetworkAclOutput

type DefaultNetworkAclOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclOutput) ElementType

func (DefaultNetworkAclOutput) ElementType() reflect.Type

func (DefaultNetworkAclOutput) ToDefaultNetworkAclOutput

func (o DefaultNetworkAclOutput) ToDefaultNetworkAclOutput() DefaultNetworkAclOutput

func (DefaultNetworkAclOutput) ToDefaultNetworkAclOutputWithContext

func (o DefaultNetworkAclOutput) ToDefaultNetworkAclOutputWithContext(ctx context.Context) DefaultNetworkAclOutput

func (DefaultNetworkAclOutput) ToDefaultNetworkAclPtrOutput

func (o DefaultNetworkAclOutput) ToDefaultNetworkAclPtrOutput() DefaultNetworkAclPtrOutput

func (DefaultNetworkAclOutput) ToDefaultNetworkAclPtrOutputWithContext

func (o DefaultNetworkAclOutput) ToDefaultNetworkAclPtrOutputWithContext(ctx context.Context) DefaultNetworkAclPtrOutput

type DefaultNetworkAclPtrInput

type DefaultNetworkAclPtrInput interface {
	pulumi.Input

	ToDefaultNetworkAclPtrOutput() DefaultNetworkAclPtrOutput
	ToDefaultNetworkAclPtrOutputWithContext(ctx context.Context) DefaultNetworkAclPtrOutput
}

type DefaultNetworkAclPtrOutput

type DefaultNetworkAclPtrOutput struct{ *pulumi.OutputState }

func (DefaultNetworkAclPtrOutput) Elem added in v4.15.0

func (DefaultNetworkAclPtrOutput) ElementType

func (DefaultNetworkAclPtrOutput) ElementType() reflect.Type

func (DefaultNetworkAclPtrOutput) ToDefaultNetworkAclPtrOutput

func (o DefaultNetworkAclPtrOutput) ToDefaultNetworkAclPtrOutput() DefaultNetworkAclPtrOutput

func (DefaultNetworkAclPtrOutput) ToDefaultNetworkAclPtrOutputWithContext

func (o DefaultNetworkAclPtrOutput) ToDefaultNetworkAclPtrOutputWithContext(ctx context.Context) DefaultNetworkAclPtrOutput

type DefaultNetworkAclState

type DefaultNetworkAclState struct {
	// ARN of the Default Network ACL
	Arn pulumi.StringPtrInput
	// Network ACL ID to manage. This attribute is exported from `ec2.Vpc`, or manually found via the AWS Console.
	DefaultNetworkAclId pulumi.StringPtrInput
	// Configuration block for an egress rule. Detailed below.
	Egress DefaultNetworkAclEgressArrayInput
	// Configuration block for an ingress rule. Detailed below.
	Ingress DefaultNetworkAclIngressArrayInput
	// ID of the AWS account that owns the Default Network ACL
	OwnerId pulumi.StringPtrInput
	// List of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL
	SubnetIds pulumi.StringArrayInput
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// ID of the associated VPC
	VpcId pulumi.StringPtrInput
}

func (DefaultNetworkAclState) ElementType

func (DefaultNetworkAclState) ElementType() reflect.Type

type DefaultRouteTable

type DefaultRouteTable struct {
	pulumi.CustomResourceState

	// The ARN of the route table.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// ID of the default route table.
	DefaultRouteTableId pulumi.StringOutput `pulumi:"defaultRouteTableId"`
	// ID of the AWS account that owns the route table.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// List of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayOutput `pulumi:"propagatingVgws"`
	// Set of objects. Detailed below
	Routes DefaultRouteTableRouteArrayOutput `pulumi:"routes"`
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ID of the VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to manage a default route table of a VPC. This resource can manage the default route table of the default or a non-default VPC.

> **NOTE:** This is an advanced resource with special caveats. Please read this document in its entirety before using this resource. The `ec2.DefaultRouteTable` resource behaves differently from normal resources. This provider does not _create_ this resource but instead attempts to "adopt" it into management. **Do not** use both `ec2.DefaultRouteTable` to manage a default route table **and** `ec2.MainRouteTableAssociation` with the same VPC due to possible route conflicts. See ec2.MainRouteTableAssociation documentation for more details.

Every VPC has a default route table that can be managed but not destroyed. When the provider first adopts a default route table, it **immediately removes all defined routes**. It then proceeds to create any routes specified in the configuration. This step is required so that only the routes specified in the configuration exist in the default route table.

For more information, see the Amazon VPC User Guide on [Route Tables](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html). For information about managing normal route tables in this provider, see `ec2.RouteTable`.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultRouteTable(ctx, "example", &ec2.DefaultRouteTableArgs{
			DefaultRouteTableId: pulumi.Any(aws_vpc.Example.Default_route_table_id),
			Routes: ec2.DefaultRouteTableRouteArray{
				&ec2.DefaultRouteTableRouteArgs{
					CidrBlock: pulumi.String("10.0.1.0/24"),
					GatewayId: pulumi.Any(aws_internet_gateway.Example.Id),
				},
				&ec2.DefaultRouteTableRouteArgs{
					Ipv6CidrBlock:       pulumi.String("::/0"),
					EgressOnlyGatewayId: pulumi.Any(aws_egress_only_internet_gateway.Example.Id),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To subsequently remove all managed routes:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultRouteTable(ctx, "example", &ec2.DefaultRouteTableArgs{
			DefaultRouteTableId: pulumi.Any(aws_vpc.Example.Default_route_table_id),
			Routes:              ec2.DefaultRouteTableRouteArray{},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Default VPC route tables can be imported using the `vpc_id`, e.g.

```sh

$ pulumi import aws:ec2/defaultRouteTable:DefaultRouteTable example vpc-33cc44dd

```

[aws-route-tables]http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html#Route_Replacing_Main_Table [tf-route-tables]/docs/providers/aws/r/route_table.html [tf-main-route-table-association]/docs/providers/aws/r/main_route_table_association.html

func GetDefaultRouteTable

func GetDefaultRouteTable(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultRouteTableState, opts ...pulumi.ResourceOption) (*DefaultRouteTable, error)

GetDefaultRouteTable gets an existing DefaultRouteTable resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultRouteTable

func NewDefaultRouteTable(ctx *pulumi.Context,
	name string, args *DefaultRouteTableArgs, opts ...pulumi.ResourceOption) (*DefaultRouteTable, error)

NewDefaultRouteTable registers a new resource with the given unique name, arguments, and options.

func (*DefaultRouteTable) ElementType

func (*DefaultRouteTable) ElementType() reflect.Type

func (*DefaultRouteTable) ToDefaultRouteTableOutput

func (i *DefaultRouteTable) ToDefaultRouteTableOutput() DefaultRouteTableOutput

func (*DefaultRouteTable) ToDefaultRouteTableOutputWithContext

func (i *DefaultRouteTable) ToDefaultRouteTableOutputWithContext(ctx context.Context) DefaultRouteTableOutput

func (*DefaultRouteTable) ToDefaultRouteTablePtrOutput

func (i *DefaultRouteTable) ToDefaultRouteTablePtrOutput() DefaultRouteTablePtrOutput

func (*DefaultRouteTable) ToDefaultRouteTablePtrOutputWithContext

func (i *DefaultRouteTable) ToDefaultRouteTablePtrOutputWithContext(ctx context.Context) DefaultRouteTablePtrOutput

type DefaultRouteTableArgs

type DefaultRouteTableArgs struct {
	// ID of the default route table.
	DefaultRouteTableId pulumi.StringInput
	// List of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayInput
	// Set of objects. Detailed below
	Routes DefaultRouteTableRouteArrayInput
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a DefaultRouteTable resource.

func (DefaultRouteTableArgs) ElementType

func (DefaultRouteTableArgs) ElementType() reflect.Type

type DefaultRouteTableArray

type DefaultRouteTableArray []DefaultRouteTableInput

func (DefaultRouteTableArray) ElementType

func (DefaultRouteTableArray) ElementType() reflect.Type

func (DefaultRouteTableArray) ToDefaultRouteTableArrayOutput

func (i DefaultRouteTableArray) ToDefaultRouteTableArrayOutput() DefaultRouteTableArrayOutput

func (DefaultRouteTableArray) ToDefaultRouteTableArrayOutputWithContext

func (i DefaultRouteTableArray) ToDefaultRouteTableArrayOutputWithContext(ctx context.Context) DefaultRouteTableArrayOutput

type DefaultRouteTableArrayInput

type DefaultRouteTableArrayInput interface {
	pulumi.Input

	ToDefaultRouteTableArrayOutput() DefaultRouteTableArrayOutput
	ToDefaultRouteTableArrayOutputWithContext(context.Context) DefaultRouteTableArrayOutput
}

DefaultRouteTableArrayInput is an input type that accepts DefaultRouteTableArray and DefaultRouteTableArrayOutput values. You can construct a concrete instance of `DefaultRouteTableArrayInput` via:

DefaultRouteTableArray{ DefaultRouteTableArgs{...} }

type DefaultRouteTableArrayOutput

type DefaultRouteTableArrayOutput struct{ *pulumi.OutputState }

func (DefaultRouteTableArrayOutput) ElementType

func (DefaultRouteTableArrayOutput) Index

func (DefaultRouteTableArrayOutput) ToDefaultRouteTableArrayOutput

func (o DefaultRouteTableArrayOutput) ToDefaultRouteTableArrayOutput() DefaultRouteTableArrayOutput

func (DefaultRouteTableArrayOutput) ToDefaultRouteTableArrayOutputWithContext

func (o DefaultRouteTableArrayOutput) ToDefaultRouteTableArrayOutputWithContext(ctx context.Context) DefaultRouteTableArrayOutput

type DefaultRouteTableInput

type DefaultRouteTableInput interface {
	pulumi.Input

	ToDefaultRouteTableOutput() DefaultRouteTableOutput
	ToDefaultRouteTableOutputWithContext(ctx context.Context) DefaultRouteTableOutput
}

type DefaultRouteTableMap

type DefaultRouteTableMap map[string]DefaultRouteTableInput

func (DefaultRouteTableMap) ElementType

func (DefaultRouteTableMap) ElementType() reflect.Type

func (DefaultRouteTableMap) ToDefaultRouteTableMapOutput

func (i DefaultRouteTableMap) ToDefaultRouteTableMapOutput() DefaultRouteTableMapOutput

func (DefaultRouteTableMap) ToDefaultRouteTableMapOutputWithContext

func (i DefaultRouteTableMap) ToDefaultRouteTableMapOutputWithContext(ctx context.Context) DefaultRouteTableMapOutput

type DefaultRouteTableMapInput

type DefaultRouteTableMapInput interface {
	pulumi.Input

	ToDefaultRouteTableMapOutput() DefaultRouteTableMapOutput
	ToDefaultRouteTableMapOutputWithContext(context.Context) DefaultRouteTableMapOutput
}

DefaultRouteTableMapInput is an input type that accepts DefaultRouteTableMap and DefaultRouteTableMapOutput values. You can construct a concrete instance of `DefaultRouteTableMapInput` via:

DefaultRouteTableMap{ "key": DefaultRouteTableArgs{...} }

type DefaultRouteTableMapOutput

type DefaultRouteTableMapOutput struct{ *pulumi.OutputState }

func (DefaultRouteTableMapOutput) ElementType

func (DefaultRouteTableMapOutput) ElementType() reflect.Type

func (DefaultRouteTableMapOutput) MapIndex

func (DefaultRouteTableMapOutput) ToDefaultRouteTableMapOutput

func (o DefaultRouteTableMapOutput) ToDefaultRouteTableMapOutput() DefaultRouteTableMapOutput

func (DefaultRouteTableMapOutput) ToDefaultRouteTableMapOutputWithContext

func (o DefaultRouteTableMapOutput) ToDefaultRouteTableMapOutputWithContext(ctx context.Context) DefaultRouteTableMapOutput

type DefaultRouteTableOutput

type DefaultRouteTableOutput struct{ *pulumi.OutputState }

func (DefaultRouteTableOutput) ElementType

func (DefaultRouteTableOutput) ElementType() reflect.Type

func (DefaultRouteTableOutput) ToDefaultRouteTableOutput

func (o DefaultRouteTableOutput) ToDefaultRouteTableOutput() DefaultRouteTableOutput

func (DefaultRouteTableOutput) ToDefaultRouteTableOutputWithContext

func (o DefaultRouteTableOutput) ToDefaultRouteTableOutputWithContext(ctx context.Context) DefaultRouteTableOutput

func (DefaultRouteTableOutput) ToDefaultRouteTablePtrOutput

func (o DefaultRouteTableOutput) ToDefaultRouteTablePtrOutput() DefaultRouteTablePtrOutput

func (DefaultRouteTableOutput) ToDefaultRouteTablePtrOutputWithContext

func (o DefaultRouteTableOutput) ToDefaultRouteTablePtrOutputWithContext(ctx context.Context) DefaultRouteTablePtrOutput

type DefaultRouteTablePtrInput

type DefaultRouteTablePtrInput interface {
	pulumi.Input

	ToDefaultRouteTablePtrOutput() DefaultRouteTablePtrOutput
	ToDefaultRouteTablePtrOutputWithContext(ctx context.Context) DefaultRouteTablePtrOutput
}

type DefaultRouteTablePtrOutput

type DefaultRouteTablePtrOutput struct{ *pulumi.OutputState }

func (DefaultRouteTablePtrOutput) Elem added in v4.15.0

func (DefaultRouteTablePtrOutput) ElementType

func (DefaultRouteTablePtrOutput) ElementType() reflect.Type

func (DefaultRouteTablePtrOutput) ToDefaultRouteTablePtrOutput

func (o DefaultRouteTablePtrOutput) ToDefaultRouteTablePtrOutput() DefaultRouteTablePtrOutput

func (DefaultRouteTablePtrOutput) ToDefaultRouteTablePtrOutputWithContext

func (o DefaultRouteTablePtrOutput) ToDefaultRouteTablePtrOutputWithContext(ctx context.Context) DefaultRouteTablePtrOutput

type DefaultRouteTableRoute

type DefaultRouteTableRoute struct {
	// The CIDR block of the route.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId *string `pulumi:"destinationPrefixListId"`
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId *string `pulumi:"egressOnlyGatewayId"`
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId *string `pulumi:"gatewayId"`
	// Identifier of an EC2 instance.
	InstanceId *string `pulumi:"instanceId"`
	// The Ipv6 CIDR block of the route
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// Identifier of a VPC NAT gateway.
	NatGatewayId *string `pulumi:"natGatewayId"`
	// Identifier of an EC2 network interface.
	NetworkInterfaceId *string `pulumi:"networkInterfaceId"`
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId *string `pulumi:"transitGatewayId"`
	// Identifier of a VPC Endpoint. This route must be removed prior to VPC Endpoint deletion.
	VpcEndpointId *string `pulumi:"vpcEndpointId"`
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId *string `pulumi:"vpcPeeringConnectionId"`
}

type DefaultRouteTableRouteArgs

type DefaultRouteTableRouteArgs struct {
	// The CIDR block of the route.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId pulumi.StringPtrInput `pulumi:"destinationPrefixListId"`
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringPtrInput `pulumi:"egressOnlyGatewayId"`
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId pulumi.StringPtrInput `pulumi:"gatewayId"`
	// Identifier of an EC2 instance.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// The Ipv6 CIDR block of the route
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// Identifier of a VPC NAT gateway.
	NatGatewayId pulumi.StringPtrInput `pulumi:"natGatewayId"`
	// Identifier of an EC2 network interface.
	NetworkInterfaceId pulumi.StringPtrInput `pulumi:"networkInterfaceId"`
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput `pulumi:"transitGatewayId"`
	// Identifier of a VPC Endpoint. This route must be removed prior to VPC Endpoint deletion.
	VpcEndpointId pulumi.StringPtrInput `pulumi:"vpcEndpointId"`
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrInput `pulumi:"vpcPeeringConnectionId"`
}

func (DefaultRouteTableRouteArgs) ElementType

func (DefaultRouteTableRouteArgs) ElementType() reflect.Type

func (DefaultRouteTableRouteArgs) ToDefaultRouteTableRouteOutput

func (i DefaultRouteTableRouteArgs) ToDefaultRouteTableRouteOutput() DefaultRouteTableRouteOutput

func (DefaultRouteTableRouteArgs) ToDefaultRouteTableRouteOutputWithContext

func (i DefaultRouteTableRouteArgs) ToDefaultRouteTableRouteOutputWithContext(ctx context.Context) DefaultRouteTableRouteOutput

type DefaultRouteTableRouteArray

type DefaultRouteTableRouteArray []DefaultRouteTableRouteInput

func (DefaultRouteTableRouteArray) ElementType

func (DefaultRouteTableRouteArray) ToDefaultRouteTableRouteArrayOutput

func (i DefaultRouteTableRouteArray) ToDefaultRouteTableRouteArrayOutput() DefaultRouteTableRouteArrayOutput

func (DefaultRouteTableRouteArray) ToDefaultRouteTableRouteArrayOutputWithContext

func (i DefaultRouteTableRouteArray) ToDefaultRouteTableRouteArrayOutputWithContext(ctx context.Context) DefaultRouteTableRouteArrayOutput

type DefaultRouteTableRouteArrayInput

type DefaultRouteTableRouteArrayInput interface {
	pulumi.Input

	ToDefaultRouteTableRouteArrayOutput() DefaultRouteTableRouteArrayOutput
	ToDefaultRouteTableRouteArrayOutputWithContext(context.Context) DefaultRouteTableRouteArrayOutput
}

DefaultRouteTableRouteArrayInput is an input type that accepts DefaultRouteTableRouteArray and DefaultRouteTableRouteArrayOutput values. You can construct a concrete instance of `DefaultRouteTableRouteArrayInput` via:

DefaultRouteTableRouteArray{ DefaultRouteTableRouteArgs{...} }

type DefaultRouteTableRouteArrayOutput

type DefaultRouteTableRouteArrayOutput struct{ *pulumi.OutputState }

func (DefaultRouteTableRouteArrayOutput) ElementType

func (DefaultRouteTableRouteArrayOutput) Index

func (DefaultRouteTableRouteArrayOutput) ToDefaultRouteTableRouteArrayOutput

func (o DefaultRouteTableRouteArrayOutput) ToDefaultRouteTableRouteArrayOutput() DefaultRouteTableRouteArrayOutput

func (DefaultRouteTableRouteArrayOutput) ToDefaultRouteTableRouteArrayOutputWithContext

func (o DefaultRouteTableRouteArrayOutput) ToDefaultRouteTableRouteArrayOutputWithContext(ctx context.Context) DefaultRouteTableRouteArrayOutput

type DefaultRouteTableRouteInput

type DefaultRouteTableRouteInput interface {
	pulumi.Input

	ToDefaultRouteTableRouteOutput() DefaultRouteTableRouteOutput
	ToDefaultRouteTableRouteOutputWithContext(context.Context) DefaultRouteTableRouteOutput
}

DefaultRouteTableRouteInput is an input type that accepts DefaultRouteTableRouteArgs and DefaultRouteTableRouteOutput values. You can construct a concrete instance of `DefaultRouteTableRouteInput` via:

DefaultRouteTableRouteArgs{...}

type DefaultRouteTableRouteOutput

type DefaultRouteTableRouteOutput struct{ *pulumi.OutputState }

func (DefaultRouteTableRouteOutput) CidrBlock

The CIDR block of the route.

func (DefaultRouteTableRouteOutput) DestinationPrefixListId

func (o DefaultRouteTableRouteOutput) DestinationPrefixListId() pulumi.StringPtrOutput

The ID of a managed prefix list destination of the route.

func (DefaultRouteTableRouteOutput) EgressOnlyGatewayId

func (o DefaultRouteTableRouteOutput) EgressOnlyGatewayId() pulumi.StringPtrOutput

Identifier of a VPC Egress Only Internet Gateway.

func (DefaultRouteTableRouteOutput) ElementType

func (DefaultRouteTableRouteOutput) GatewayId

Identifier of a VPC internet gateway or a virtual private gateway.

func (DefaultRouteTableRouteOutput) InstanceId

Identifier of an EC2 instance.

func (DefaultRouteTableRouteOutput) Ipv6CidrBlock

The Ipv6 CIDR block of the route

func (DefaultRouteTableRouteOutput) NatGatewayId

Identifier of a VPC NAT gateway.

func (DefaultRouteTableRouteOutput) NetworkInterfaceId

func (o DefaultRouteTableRouteOutput) NetworkInterfaceId() pulumi.StringPtrOutput

Identifier of an EC2 network interface.

func (DefaultRouteTableRouteOutput) ToDefaultRouteTableRouteOutput

func (o DefaultRouteTableRouteOutput) ToDefaultRouteTableRouteOutput() DefaultRouteTableRouteOutput

func (DefaultRouteTableRouteOutput) ToDefaultRouteTableRouteOutputWithContext

func (o DefaultRouteTableRouteOutput) ToDefaultRouteTableRouteOutputWithContext(ctx context.Context) DefaultRouteTableRouteOutput

func (DefaultRouteTableRouteOutput) TransitGatewayId

Identifier of an EC2 Transit Gateway.

func (DefaultRouteTableRouteOutput) VpcEndpointId

Identifier of a VPC Endpoint. This route must be removed prior to VPC Endpoint deletion.

func (DefaultRouteTableRouteOutput) VpcPeeringConnectionId

func (o DefaultRouteTableRouteOutput) VpcPeeringConnectionId() pulumi.StringPtrOutput

Identifier of a VPC peering connection.

type DefaultRouteTableState

type DefaultRouteTableState struct {
	// The ARN of the route table.
	Arn pulumi.StringPtrInput
	// ID of the default route table.
	DefaultRouteTableId pulumi.StringPtrInput
	// ID of the AWS account that owns the route table.
	OwnerId pulumi.StringPtrInput
	// List of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayInput
	// Set of objects. Detailed below
	Routes DefaultRouteTableRouteArrayInput
	// Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// ID of the VPC.
	VpcId pulumi.StringPtrInput
}

func (DefaultRouteTableState) ElementType

func (DefaultRouteTableState) ElementType() reflect.Type

type DefaultSecurityGroup

type DefaultSecurityGroup struct {
	pulumi.CustomResourceState

	// ARN of the security group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Description of this rule.
	Description pulumi.StringOutput `pulumi:"description"`
	// Configuration block. Detailed below.
	Egress DefaultSecurityGroupEgressArrayOutput `pulumi:"egress"`
	// Configuration block. Detailed below.
	Ingress DefaultSecurityGroupIngressArrayOutput `pulumi:"ingress"`
	// Name of the security group.
	Name pulumi.StringOutput `pulumi:"name"`
	// Owner ID.
	OwnerId             pulumi.StringOutput  `pulumi:"ownerId"`
	RevokeRulesOnDelete pulumi.BoolPtrOutput `pulumi:"revokeRulesOnDelete"`
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// VPC ID. **Note that changing the `vpcId` will _not_ restore any default security group rules that were modified, added, or removed.** It will be left in its current state.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to manage a default security group. This resource can manage the default security group of the default or a non-default VPC.

> **NOTE:** This is an advanced resource with special caveats. Please read this document in its entirety before using this resource. The `ec2.DefaultSecurityGroup` resource behaves differently from normal resources. This provider does not _create_ this resource but instead attempts to "adopt" it into management.

For EC2 Classic accounts, each region comes with a default security group. Additionally, each VPC created in AWS comes with a default security group that can be managed but not destroyed.

When the provider first adopts the default security group, it **immediately removes all ingress and egress rules in the Security Group**. It then creates any rules specified in the configuration. This way only the rules specified in the configuration are created.

This resource treats its inline rules as absolute; only the rules defined inline are created, and any additions/removals external to this resource will result in diff shown. For these reasons, this resource is incompatible with the `ec2.SecurityGroupRule` resource.

For more information about default security groups, see the AWS documentation on [Default Security Groups][aws-default-security-groups]. To manage normal security groups, see the `ec2.SecurityGroup` resource.

## Example Usage

The following config gives the default security group the same rules that AWS provides by default but under management by this provider. This means that any ingress or egress rules added or changed will be detected as drift.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainvpc, err := ec2.NewVpc(ctx, "mainvpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewDefaultSecurityGroup(ctx, "_default", &ec2.DefaultSecurityGroupArgs{
			VpcId: mainvpc.ID(),
			Ingress: ec2.DefaultSecurityGroupIngressArray{
				&ec2.DefaultSecurityGroupIngressArgs{
					Protocol: pulumi.String("-1"),
					Self:     pulumi.Bool(true),
					FromPort: pulumi.Int(0),
					ToPort:   pulumi.Int(0),
				},
			},
			Egress: ec2.DefaultSecurityGroupEgressArray{
				&ec2.DefaultSecurityGroupEgressArgs{
					FromPort: pulumi.Int(0),
					ToPort:   pulumi.Int(0),
					Protocol: pulumi.String("-1"),
					CidrBlocks: pulumi.StringArray{
						pulumi.String("0.0.0.0/0"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example Config To Deny All Egress Traffic, Allowing Ingress

The following denies all Egress traffic by omitting any `egress` rules, while including the default `ingress` rule to allow all traffic.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainvpc, err := ec2.NewVpc(ctx, "mainvpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewDefaultSecurityGroup(ctx, "_default", &ec2.DefaultSecurityGroupArgs{
			VpcId: mainvpc.ID(),
			Ingress: ec2.DefaultSecurityGroupIngressArray{
				&ec2.DefaultSecurityGroupIngressArgs{
					Protocol: pulumi.String("-1"),
					Self:     pulumi.Bool(true),
					FromPort: pulumi.Int(0),
					ToPort:   pulumi.Int(0),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Removing `ec2.DefaultSecurityGroup` From Your Configuration

Removing this resource from your configuration will remove it from your statefile and management, but will not destroy the Security Group. All ingress or egress rules will be left as they are at the time of removal. You can resume managing them via the AWS Console.

## Import

Security Groups can be imported using the `security group id`, e.g.

```sh

$ pulumi import aws:ec2/defaultSecurityGroup:DefaultSecurityGroup default_sg sg-903004f8

```

func GetDefaultSecurityGroup

func GetDefaultSecurityGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultSecurityGroupState, opts ...pulumi.ResourceOption) (*DefaultSecurityGroup, error)

GetDefaultSecurityGroup gets an existing DefaultSecurityGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultSecurityGroup

func NewDefaultSecurityGroup(ctx *pulumi.Context,
	name string, args *DefaultSecurityGroupArgs, opts ...pulumi.ResourceOption) (*DefaultSecurityGroup, error)

NewDefaultSecurityGroup registers a new resource with the given unique name, arguments, and options.

func (*DefaultSecurityGroup) ElementType

func (*DefaultSecurityGroup) ElementType() reflect.Type

func (*DefaultSecurityGroup) ToDefaultSecurityGroupOutput

func (i *DefaultSecurityGroup) ToDefaultSecurityGroupOutput() DefaultSecurityGroupOutput

func (*DefaultSecurityGroup) ToDefaultSecurityGroupOutputWithContext

func (i *DefaultSecurityGroup) ToDefaultSecurityGroupOutputWithContext(ctx context.Context) DefaultSecurityGroupOutput

func (*DefaultSecurityGroup) ToDefaultSecurityGroupPtrOutput

func (i *DefaultSecurityGroup) ToDefaultSecurityGroupPtrOutput() DefaultSecurityGroupPtrOutput

func (*DefaultSecurityGroup) ToDefaultSecurityGroupPtrOutputWithContext

func (i *DefaultSecurityGroup) ToDefaultSecurityGroupPtrOutputWithContext(ctx context.Context) DefaultSecurityGroupPtrOutput

type DefaultSecurityGroupArgs

type DefaultSecurityGroupArgs struct {
	// Configuration block. Detailed below.
	Egress DefaultSecurityGroupEgressArrayInput
	// Configuration block. Detailed below.
	Ingress             DefaultSecurityGroupIngressArrayInput
	RevokeRulesOnDelete pulumi.BoolPtrInput
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// VPC ID. **Note that changing the `vpcId` will _not_ restore any default security group rules that were modified, added, or removed.** It will be left in its current state.
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a DefaultSecurityGroup resource.

func (DefaultSecurityGroupArgs) ElementType

func (DefaultSecurityGroupArgs) ElementType() reflect.Type

type DefaultSecurityGroupArray

type DefaultSecurityGroupArray []DefaultSecurityGroupInput

func (DefaultSecurityGroupArray) ElementType

func (DefaultSecurityGroupArray) ElementType() reflect.Type

func (DefaultSecurityGroupArray) ToDefaultSecurityGroupArrayOutput

func (i DefaultSecurityGroupArray) ToDefaultSecurityGroupArrayOutput() DefaultSecurityGroupArrayOutput

func (DefaultSecurityGroupArray) ToDefaultSecurityGroupArrayOutputWithContext

func (i DefaultSecurityGroupArray) ToDefaultSecurityGroupArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupArrayOutput

type DefaultSecurityGroupArrayInput

type DefaultSecurityGroupArrayInput interface {
	pulumi.Input

	ToDefaultSecurityGroupArrayOutput() DefaultSecurityGroupArrayOutput
	ToDefaultSecurityGroupArrayOutputWithContext(context.Context) DefaultSecurityGroupArrayOutput
}

DefaultSecurityGroupArrayInput is an input type that accepts DefaultSecurityGroupArray and DefaultSecurityGroupArrayOutput values. You can construct a concrete instance of `DefaultSecurityGroupArrayInput` via:

DefaultSecurityGroupArray{ DefaultSecurityGroupArgs{...} }

type DefaultSecurityGroupArrayOutput

type DefaultSecurityGroupArrayOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupArrayOutput) ElementType

func (DefaultSecurityGroupArrayOutput) Index

func (DefaultSecurityGroupArrayOutput) ToDefaultSecurityGroupArrayOutput

func (o DefaultSecurityGroupArrayOutput) ToDefaultSecurityGroupArrayOutput() DefaultSecurityGroupArrayOutput

func (DefaultSecurityGroupArrayOutput) ToDefaultSecurityGroupArrayOutputWithContext

func (o DefaultSecurityGroupArrayOutput) ToDefaultSecurityGroupArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupArrayOutput

type DefaultSecurityGroupEgress

type DefaultSecurityGroupEgress struct {
	// List of CIDR blocks.
	CidrBlocks []string `pulumi:"cidrBlocks"`
	// Description of this rule.
	Description *string `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort int `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"`
	// List of prefix list IDs (for allowing access to VPC endpoints)
	PrefixListIds []string `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	Protocol string `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self *bool `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort int `pulumi:"toPort"`
}

type DefaultSecurityGroupEgressArgs

type DefaultSecurityGroupEgressArgs struct {
	// List of CIDR blocks.
	CidrBlocks pulumi.StringArrayInput `pulumi:"cidrBlocks"`
	// Description of this rule.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks pulumi.StringArrayInput `pulumi:"ipv6CidrBlocks"`
	// List of prefix list IDs (for allowing access to VPC endpoints)
	PrefixListIds pulumi.StringArrayInput `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self pulumi.BoolPtrInput `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (DefaultSecurityGroupEgressArgs) ElementType

func (DefaultSecurityGroupEgressArgs) ToDefaultSecurityGroupEgressOutput

func (i DefaultSecurityGroupEgressArgs) ToDefaultSecurityGroupEgressOutput() DefaultSecurityGroupEgressOutput

func (DefaultSecurityGroupEgressArgs) ToDefaultSecurityGroupEgressOutputWithContext

func (i DefaultSecurityGroupEgressArgs) ToDefaultSecurityGroupEgressOutputWithContext(ctx context.Context) DefaultSecurityGroupEgressOutput

type DefaultSecurityGroupEgressArray

type DefaultSecurityGroupEgressArray []DefaultSecurityGroupEgressInput

func (DefaultSecurityGroupEgressArray) ElementType

func (DefaultSecurityGroupEgressArray) ToDefaultSecurityGroupEgressArrayOutput

func (i DefaultSecurityGroupEgressArray) ToDefaultSecurityGroupEgressArrayOutput() DefaultSecurityGroupEgressArrayOutput

func (DefaultSecurityGroupEgressArray) ToDefaultSecurityGroupEgressArrayOutputWithContext

func (i DefaultSecurityGroupEgressArray) ToDefaultSecurityGroupEgressArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupEgressArrayOutput

type DefaultSecurityGroupEgressArrayInput

type DefaultSecurityGroupEgressArrayInput interface {
	pulumi.Input

	ToDefaultSecurityGroupEgressArrayOutput() DefaultSecurityGroupEgressArrayOutput
	ToDefaultSecurityGroupEgressArrayOutputWithContext(context.Context) DefaultSecurityGroupEgressArrayOutput
}

DefaultSecurityGroupEgressArrayInput is an input type that accepts DefaultSecurityGroupEgressArray and DefaultSecurityGroupEgressArrayOutput values. You can construct a concrete instance of `DefaultSecurityGroupEgressArrayInput` via:

DefaultSecurityGroupEgressArray{ DefaultSecurityGroupEgressArgs{...} }

type DefaultSecurityGroupEgressArrayOutput

type DefaultSecurityGroupEgressArrayOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupEgressArrayOutput) ElementType

func (DefaultSecurityGroupEgressArrayOutput) Index

func (DefaultSecurityGroupEgressArrayOutput) ToDefaultSecurityGroupEgressArrayOutput

func (o DefaultSecurityGroupEgressArrayOutput) ToDefaultSecurityGroupEgressArrayOutput() DefaultSecurityGroupEgressArrayOutput

func (DefaultSecurityGroupEgressArrayOutput) ToDefaultSecurityGroupEgressArrayOutputWithContext

func (o DefaultSecurityGroupEgressArrayOutput) ToDefaultSecurityGroupEgressArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupEgressArrayOutput

type DefaultSecurityGroupEgressInput

type DefaultSecurityGroupEgressInput interface {
	pulumi.Input

	ToDefaultSecurityGroupEgressOutput() DefaultSecurityGroupEgressOutput
	ToDefaultSecurityGroupEgressOutputWithContext(context.Context) DefaultSecurityGroupEgressOutput
}

DefaultSecurityGroupEgressInput is an input type that accepts DefaultSecurityGroupEgressArgs and DefaultSecurityGroupEgressOutput values. You can construct a concrete instance of `DefaultSecurityGroupEgressInput` via:

DefaultSecurityGroupEgressArgs{...}

type DefaultSecurityGroupEgressOutput

type DefaultSecurityGroupEgressOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupEgressOutput) CidrBlocks

List of CIDR blocks.

func (DefaultSecurityGroupEgressOutput) Description

Description of this rule.

func (DefaultSecurityGroupEgressOutput) ElementType

func (DefaultSecurityGroupEgressOutput) FromPort

Start port (or ICMP type number if protocol is `icmp`)

func (DefaultSecurityGroupEgressOutput) Ipv6CidrBlocks

List of IPv6 CIDR blocks.

func (DefaultSecurityGroupEgressOutput) PrefixListIds

List of prefix list IDs (for allowing access to VPC endpoints)

func (DefaultSecurityGroupEgressOutput) Protocol

Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).

func (DefaultSecurityGroupEgressOutput) SecurityGroups

List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.

func (DefaultSecurityGroupEgressOutput) Self

Whether the security group itself will be added as a source to this egress rule.

func (DefaultSecurityGroupEgressOutput) ToDefaultSecurityGroupEgressOutput

func (o DefaultSecurityGroupEgressOutput) ToDefaultSecurityGroupEgressOutput() DefaultSecurityGroupEgressOutput

func (DefaultSecurityGroupEgressOutput) ToDefaultSecurityGroupEgressOutputWithContext

func (o DefaultSecurityGroupEgressOutput) ToDefaultSecurityGroupEgressOutputWithContext(ctx context.Context) DefaultSecurityGroupEgressOutput

func (DefaultSecurityGroupEgressOutput) ToPort

End range port (or ICMP code if protocol is `icmp`).

type DefaultSecurityGroupIngress

type DefaultSecurityGroupIngress struct {
	// List of CIDR blocks.
	CidrBlocks []string `pulumi:"cidrBlocks"`
	// Description of this rule.
	Description *string `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort int `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"`
	// List of prefix list IDs (for allowing access to VPC endpoints)
	PrefixListIds []string `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	Protocol string `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self *bool `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort int `pulumi:"toPort"`
}

type DefaultSecurityGroupIngressArgs

type DefaultSecurityGroupIngressArgs struct {
	// List of CIDR blocks.
	CidrBlocks pulumi.StringArrayInput `pulumi:"cidrBlocks"`
	// Description of this rule.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks pulumi.StringArrayInput `pulumi:"ipv6CidrBlocks"`
	// List of prefix list IDs (for allowing access to VPC endpoints)
	PrefixListIds pulumi.StringArrayInput `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self pulumi.BoolPtrInput `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (DefaultSecurityGroupIngressArgs) ElementType

func (DefaultSecurityGroupIngressArgs) ToDefaultSecurityGroupIngressOutput

func (i DefaultSecurityGroupIngressArgs) ToDefaultSecurityGroupIngressOutput() DefaultSecurityGroupIngressOutput

func (DefaultSecurityGroupIngressArgs) ToDefaultSecurityGroupIngressOutputWithContext

func (i DefaultSecurityGroupIngressArgs) ToDefaultSecurityGroupIngressOutputWithContext(ctx context.Context) DefaultSecurityGroupIngressOutput

type DefaultSecurityGroupIngressArray

type DefaultSecurityGroupIngressArray []DefaultSecurityGroupIngressInput

func (DefaultSecurityGroupIngressArray) ElementType

func (DefaultSecurityGroupIngressArray) ToDefaultSecurityGroupIngressArrayOutput

func (i DefaultSecurityGroupIngressArray) ToDefaultSecurityGroupIngressArrayOutput() DefaultSecurityGroupIngressArrayOutput

func (DefaultSecurityGroupIngressArray) ToDefaultSecurityGroupIngressArrayOutputWithContext

func (i DefaultSecurityGroupIngressArray) ToDefaultSecurityGroupIngressArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupIngressArrayOutput

type DefaultSecurityGroupIngressArrayInput

type DefaultSecurityGroupIngressArrayInput interface {
	pulumi.Input

	ToDefaultSecurityGroupIngressArrayOutput() DefaultSecurityGroupIngressArrayOutput
	ToDefaultSecurityGroupIngressArrayOutputWithContext(context.Context) DefaultSecurityGroupIngressArrayOutput
}

DefaultSecurityGroupIngressArrayInput is an input type that accepts DefaultSecurityGroupIngressArray and DefaultSecurityGroupIngressArrayOutput values. You can construct a concrete instance of `DefaultSecurityGroupIngressArrayInput` via:

DefaultSecurityGroupIngressArray{ DefaultSecurityGroupIngressArgs{...} }

type DefaultSecurityGroupIngressArrayOutput

type DefaultSecurityGroupIngressArrayOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupIngressArrayOutput) ElementType

func (DefaultSecurityGroupIngressArrayOutput) Index

func (DefaultSecurityGroupIngressArrayOutput) ToDefaultSecurityGroupIngressArrayOutput

func (o DefaultSecurityGroupIngressArrayOutput) ToDefaultSecurityGroupIngressArrayOutput() DefaultSecurityGroupIngressArrayOutput

func (DefaultSecurityGroupIngressArrayOutput) ToDefaultSecurityGroupIngressArrayOutputWithContext

func (o DefaultSecurityGroupIngressArrayOutput) ToDefaultSecurityGroupIngressArrayOutputWithContext(ctx context.Context) DefaultSecurityGroupIngressArrayOutput

type DefaultSecurityGroupIngressInput

type DefaultSecurityGroupIngressInput interface {
	pulumi.Input

	ToDefaultSecurityGroupIngressOutput() DefaultSecurityGroupIngressOutput
	ToDefaultSecurityGroupIngressOutputWithContext(context.Context) DefaultSecurityGroupIngressOutput
}

DefaultSecurityGroupIngressInput is an input type that accepts DefaultSecurityGroupIngressArgs and DefaultSecurityGroupIngressOutput values. You can construct a concrete instance of `DefaultSecurityGroupIngressInput` via:

DefaultSecurityGroupIngressArgs{...}

type DefaultSecurityGroupIngressOutput

type DefaultSecurityGroupIngressOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupIngressOutput) CidrBlocks

List of CIDR blocks.

func (DefaultSecurityGroupIngressOutput) Description

Description of this rule.

func (DefaultSecurityGroupIngressOutput) ElementType

func (DefaultSecurityGroupIngressOutput) FromPort

Start port (or ICMP type number if protocol is `icmp`)

func (DefaultSecurityGroupIngressOutput) Ipv6CidrBlocks

List of IPv6 CIDR blocks.

func (DefaultSecurityGroupIngressOutput) PrefixListIds

List of prefix list IDs (for allowing access to VPC endpoints)

func (DefaultSecurityGroupIngressOutput) Protocol

Protocol. If you select a protocol of "-1" (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to `0`. If not `icmp`, `tcp`, `udp`, or `-1` use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).

func (DefaultSecurityGroupIngressOutput) SecurityGroups

List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.

func (DefaultSecurityGroupIngressOutput) Self

Whether the security group itself will be added as a source to this egress rule.

func (DefaultSecurityGroupIngressOutput) ToDefaultSecurityGroupIngressOutput

func (o DefaultSecurityGroupIngressOutput) ToDefaultSecurityGroupIngressOutput() DefaultSecurityGroupIngressOutput

func (DefaultSecurityGroupIngressOutput) ToDefaultSecurityGroupIngressOutputWithContext

func (o DefaultSecurityGroupIngressOutput) ToDefaultSecurityGroupIngressOutputWithContext(ctx context.Context) DefaultSecurityGroupIngressOutput

func (DefaultSecurityGroupIngressOutput) ToPort

End range port (or ICMP code if protocol is `icmp`).

type DefaultSecurityGroupInput

type DefaultSecurityGroupInput interface {
	pulumi.Input

	ToDefaultSecurityGroupOutput() DefaultSecurityGroupOutput
	ToDefaultSecurityGroupOutputWithContext(ctx context.Context) DefaultSecurityGroupOutput
}

type DefaultSecurityGroupMap

type DefaultSecurityGroupMap map[string]DefaultSecurityGroupInput

func (DefaultSecurityGroupMap) ElementType

func (DefaultSecurityGroupMap) ElementType() reflect.Type

func (DefaultSecurityGroupMap) ToDefaultSecurityGroupMapOutput

func (i DefaultSecurityGroupMap) ToDefaultSecurityGroupMapOutput() DefaultSecurityGroupMapOutput

func (DefaultSecurityGroupMap) ToDefaultSecurityGroupMapOutputWithContext

func (i DefaultSecurityGroupMap) ToDefaultSecurityGroupMapOutputWithContext(ctx context.Context) DefaultSecurityGroupMapOutput

type DefaultSecurityGroupMapInput

type DefaultSecurityGroupMapInput interface {
	pulumi.Input

	ToDefaultSecurityGroupMapOutput() DefaultSecurityGroupMapOutput
	ToDefaultSecurityGroupMapOutputWithContext(context.Context) DefaultSecurityGroupMapOutput
}

DefaultSecurityGroupMapInput is an input type that accepts DefaultSecurityGroupMap and DefaultSecurityGroupMapOutput values. You can construct a concrete instance of `DefaultSecurityGroupMapInput` via:

DefaultSecurityGroupMap{ "key": DefaultSecurityGroupArgs{...} }

type DefaultSecurityGroupMapOutput

type DefaultSecurityGroupMapOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupMapOutput) ElementType

func (DefaultSecurityGroupMapOutput) MapIndex

func (DefaultSecurityGroupMapOutput) ToDefaultSecurityGroupMapOutput

func (o DefaultSecurityGroupMapOutput) ToDefaultSecurityGroupMapOutput() DefaultSecurityGroupMapOutput

func (DefaultSecurityGroupMapOutput) ToDefaultSecurityGroupMapOutputWithContext

func (o DefaultSecurityGroupMapOutput) ToDefaultSecurityGroupMapOutputWithContext(ctx context.Context) DefaultSecurityGroupMapOutput

type DefaultSecurityGroupOutput

type DefaultSecurityGroupOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupOutput) ElementType

func (DefaultSecurityGroupOutput) ElementType() reflect.Type

func (DefaultSecurityGroupOutput) ToDefaultSecurityGroupOutput

func (o DefaultSecurityGroupOutput) ToDefaultSecurityGroupOutput() DefaultSecurityGroupOutput

func (DefaultSecurityGroupOutput) ToDefaultSecurityGroupOutputWithContext

func (o DefaultSecurityGroupOutput) ToDefaultSecurityGroupOutputWithContext(ctx context.Context) DefaultSecurityGroupOutput

func (DefaultSecurityGroupOutput) ToDefaultSecurityGroupPtrOutput

func (o DefaultSecurityGroupOutput) ToDefaultSecurityGroupPtrOutput() DefaultSecurityGroupPtrOutput

func (DefaultSecurityGroupOutput) ToDefaultSecurityGroupPtrOutputWithContext

func (o DefaultSecurityGroupOutput) ToDefaultSecurityGroupPtrOutputWithContext(ctx context.Context) DefaultSecurityGroupPtrOutput

type DefaultSecurityGroupPtrInput

type DefaultSecurityGroupPtrInput interface {
	pulumi.Input

	ToDefaultSecurityGroupPtrOutput() DefaultSecurityGroupPtrOutput
	ToDefaultSecurityGroupPtrOutputWithContext(ctx context.Context) DefaultSecurityGroupPtrOutput
}

type DefaultSecurityGroupPtrOutput

type DefaultSecurityGroupPtrOutput struct{ *pulumi.OutputState }

func (DefaultSecurityGroupPtrOutput) Elem added in v4.15.0

func (DefaultSecurityGroupPtrOutput) ElementType

func (DefaultSecurityGroupPtrOutput) ToDefaultSecurityGroupPtrOutput

func (o DefaultSecurityGroupPtrOutput) ToDefaultSecurityGroupPtrOutput() DefaultSecurityGroupPtrOutput

func (DefaultSecurityGroupPtrOutput) ToDefaultSecurityGroupPtrOutputWithContext

func (o DefaultSecurityGroupPtrOutput) ToDefaultSecurityGroupPtrOutputWithContext(ctx context.Context) DefaultSecurityGroupPtrOutput

type DefaultSecurityGroupState

type DefaultSecurityGroupState struct {
	// ARN of the security group.
	Arn pulumi.StringPtrInput
	// Description of this rule.
	Description pulumi.StringPtrInput
	// Configuration block. Detailed below.
	Egress DefaultSecurityGroupEgressArrayInput
	// Configuration block. Detailed below.
	Ingress DefaultSecurityGroupIngressArrayInput
	// Name of the security group.
	Name pulumi.StringPtrInput
	// Owner ID.
	OwnerId             pulumi.StringPtrInput
	RevokeRulesOnDelete pulumi.BoolPtrInput
	// Map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// VPC ID. **Note that changing the `vpcId` will _not_ restore any default security group rules that were modified, added, or removed.** It will be left in its current state.
	VpcId pulumi.StringPtrInput
}

func (DefaultSecurityGroupState) ElementType

func (DefaultSecurityGroupState) ElementType() reflect.Type

type DefaultSubnet

type DefaultSubnet struct {
	pulumi.CustomResourceState

	// ARN for the subnet.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether IPv6 addresses are assigned on creation.
	// * `availabilityZoneId`- AZ ID of the subnet.
	AssignIpv6AddressOnCreation pulumi.BoolOutput `pulumi:"assignIpv6AddressOnCreation"`
	// AZ for the subnet.
	AvailabilityZone   pulumi.StringOutput `pulumi:"availabilityZone"`
	AvailabilityZoneId pulumi.StringOutput `pulumi:"availabilityZoneId"`
	// CIDR block for the subnet.
	CidrBlock             pulumi.StringOutput    `pulumi:"cidrBlock"`
	CustomerOwnedIpv4Pool pulumi.StringPtrOutput `pulumi:"customerOwnedIpv4Pool"`
	// IPv6 CIDR block.
	Ipv6CidrBlock              pulumi.StringOutput  `pulumi:"ipv6CidrBlock"`
	Ipv6CidrBlockAssociationId pulumi.StringOutput  `pulumi:"ipv6CidrBlockAssociationId"`
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrOutput `pulumi:"mapCustomerOwnedIpOnLaunch"`
	// Whether instances launched into the subnet should be assigned a public IP address.
	MapPublicIpOnLaunch pulumi.BoolOutput      `pulumi:"mapPublicIpOnLaunch"`
	OutpostArn          pulumi.StringPtrOutput `pulumi:"outpostArn"`
	// ID of the AWS account that owns the subnet.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// Map of tags to assign to the resource.
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to manage a [default AWS VPC subnet](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html#default-vpc-basics) in the current region.

The `ec2.DefaultSubnet` behaves differently from normal resources, in that this provider does not _create_ this resource but instead "adopts" it into management.

The `ec2.DefaultSubnet` resource allows you to manage a region's default VPC subnet but this provider cannot destroy it. Removing this resource from your configuration will remove it from your statefile and the provider management.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultSubnet(ctx, "defaultAz1", &ec2.DefaultSubnetArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Default subnet for us-west-2a"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Subnets can be imported using the `subnet id`, e.g.

```sh

$ pulumi import aws:ec2/defaultSubnet:DefaultSubnet public_subnet subnet-9d4a7b6c

```

func GetDefaultSubnet

func GetDefaultSubnet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultSubnetState, opts ...pulumi.ResourceOption) (*DefaultSubnet, error)

GetDefaultSubnet gets an existing DefaultSubnet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultSubnet

func NewDefaultSubnet(ctx *pulumi.Context,
	name string, args *DefaultSubnetArgs, opts ...pulumi.ResourceOption) (*DefaultSubnet, error)

NewDefaultSubnet registers a new resource with the given unique name, arguments, and options.

func (*DefaultSubnet) ElementType

func (*DefaultSubnet) ElementType() reflect.Type

func (*DefaultSubnet) ToDefaultSubnetOutput

func (i *DefaultSubnet) ToDefaultSubnetOutput() DefaultSubnetOutput

func (*DefaultSubnet) ToDefaultSubnetOutputWithContext

func (i *DefaultSubnet) ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput

func (*DefaultSubnet) ToDefaultSubnetPtrOutput

func (i *DefaultSubnet) ToDefaultSubnetPtrOutput() DefaultSubnetPtrOutput

func (*DefaultSubnet) ToDefaultSubnetPtrOutputWithContext

func (i *DefaultSubnet) ToDefaultSubnetPtrOutputWithContext(ctx context.Context) DefaultSubnetPtrOutput

type DefaultSubnetArgs

type DefaultSubnetArgs struct {
	// AZ for the subnet.
	AvailabilityZone           pulumi.StringInput
	CustomerOwnedIpv4Pool      pulumi.StringPtrInput
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrInput
	// Whether instances launched into the subnet should be assigned a public IP address.
	MapPublicIpOnLaunch pulumi.BoolPtrInput
	OutpostArn          pulumi.StringPtrInput
	// Map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a DefaultSubnet resource.

func (DefaultSubnetArgs) ElementType

func (DefaultSubnetArgs) ElementType() reflect.Type

type DefaultSubnetArray

type DefaultSubnetArray []DefaultSubnetInput

func (DefaultSubnetArray) ElementType

func (DefaultSubnetArray) ElementType() reflect.Type

func (DefaultSubnetArray) ToDefaultSubnetArrayOutput

func (i DefaultSubnetArray) ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput

func (DefaultSubnetArray) ToDefaultSubnetArrayOutputWithContext

func (i DefaultSubnetArray) ToDefaultSubnetArrayOutputWithContext(ctx context.Context) DefaultSubnetArrayOutput

type DefaultSubnetArrayInput

type DefaultSubnetArrayInput interface {
	pulumi.Input

	ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput
	ToDefaultSubnetArrayOutputWithContext(context.Context) DefaultSubnetArrayOutput
}

DefaultSubnetArrayInput is an input type that accepts DefaultSubnetArray and DefaultSubnetArrayOutput values. You can construct a concrete instance of `DefaultSubnetArrayInput` via:

DefaultSubnetArray{ DefaultSubnetArgs{...} }

type DefaultSubnetArrayOutput

type DefaultSubnetArrayOutput struct{ *pulumi.OutputState }

func (DefaultSubnetArrayOutput) ElementType

func (DefaultSubnetArrayOutput) ElementType() reflect.Type

func (DefaultSubnetArrayOutput) Index

func (DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutput

func (o DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput

func (DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutputWithContext

func (o DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutputWithContext(ctx context.Context) DefaultSubnetArrayOutput

type DefaultSubnetInput

type DefaultSubnetInput interface {
	pulumi.Input

	ToDefaultSubnetOutput() DefaultSubnetOutput
	ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput
}

type DefaultSubnetMap

type DefaultSubnetMap map[string]DefaultSubnetInput

func (DefaultSubnetMap) ElementType

func (DefaultSubnetMap) ElementType() reflect.Type

func (DefaultSubnetMap) ToDefaultSubnetMapOutput

func (i DefaultSubnetMap) ToDefaultSubnetMapOutput() DefaultSubnetMapOutput

func (DefaultSubnetMap) ToDefaultSubnetMapOutputWithContext

func (i DefaultSubnetMap) ToDefaultSubnetMapOutputWithContext(ctx context.Context) DefaultSubnetMapOutput

type DefaultSubnetMapInput

type DefaultSubnetMapInput interface {
	pulumi.Input

	ToDefaultSubnetMapOutput() DefaultSubnetMapOutput
	ToDefaultSubnetMapOutputWithContext(context.Context) DefaultSubnetMapOutput
}

DefaultSubnetMapInput is an input type that accepts DefaultSubnetMap and DefaultSubnetMapOutput values. You can construct a concrete instance of `DefaultSubnetMapInput` via:

DefaultSubnetMap{ "key": DefaultSubnetArgs{...} }

type DefaultSubnetMapOutput

type DefaultSubnetMapOutput struct{ *pulumi.OutputState }

func (DefaultSubnetMapOutput) ElementType

func (DefaultSubnetMapOutput) ElementType() reflect.Type

func (DefaultSubnetMapOutput) MapIndex

func (DefaultSubnetMapOutput) ToDefaultSubnetMapOutput

func (o DefaultSubnetMapOutput) ToDefaultSubnetMapOutput() DefaultSubnetMapOutput

func (DefaultSubnetMapOutput) ToDefaultSubnetMapOutputWithContext

func (o DefaultSubnetMapOutput) ToDefaultSubnetMapOutputWithContext(ctx context.Context) DefaultSubnetMapOutput

type DefaultSubnetOutput

type DefaultSubnetOutput struct{ *pulumi.OutputState }

func (DefaultSubnetOutput) ElementType

func (DefaultSubnetOutput) ElementType() reflect.Type

func (DefaultSubnetOutput) ToDefaultSubnetOutput

func (o DefaultSubnetOutput) ToDefaultSubnetOutput() DefaultSubnetOutput

func (DefaultSubnetOutput) ToDefaultSubnetOutputWithContext

func (o DefaultSubnetOutput) ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput

func (DefaultSubnetOutput) ToDefaultSubnetPtrOutput

func (o DefaultSubnetOutput) ToDefaultSubnetPtrOutput() DefaultSubnetPtrOutput

func (DefaultSubnetOutput) ToDefaultSubnetPtrOutputWithContext

func (o DefaultSubnetOutput) ToDefaultSubnetPtrOutputWithContext(ctx context.Context) DefaultSubnetPtrOutput

type DefaultSubnetPtrInput

type DefaultSubnetPtrInput interface {
	pulumi.Input

	ToDefaultSubnetPtrOutput() DefaultSubnetPtrOutput
	ToDefaultSubnetPtrOutputWithContext(ctx context.Context) DefaultSubnetPtrOutput
}

type DefaultSubnetPtrOutput

type DefaultSubnetPtrOutput struct{ *pulumi.OutputState }

func (DefaultSubnetPtrOutput) Elem added in v4.15.0

func (DefaultSubnetPtrOutput) ElementType

func (DefaultSubnetPtrOutput) ElementType() reflect.Type

func (DefaultSubnetPtrOutput) ToDefaultSubnetPtrOutput

func (o DefaultSubnetPtrOutput) ToDefaultSubnetPtrOutput() DefaultSubnetPtrOutput

func (DefaultSubnetPtrOutput) ToDefaultSubnetPtrOutputWithContext

func (o DefaultSubnetPtrOutput) ToDefaultSubnetPtrOutputWithContext(ctx context.Context) DefaultSubnetPtrOutput

type DefaultSubnetState

type DefaultSubnetState struct {
	// ARN for the subnet.
	Arn pulumi.StringPtrInput
	// Whether IPv6 addresses are assigned on creation.
	// * `availabilityZoneId`- AZ ID of the subnet.
	AssignIpv6AddressOnCreation pulumi.BoolPtrInput
	// AZ for the subnet.
	AvailabilityZone   pulumi.StringPtrInput
	AvailabilityZoneId pulumi.StringPtrInput
	// CIDR block for the subnet.
	CidrBlock             pulumi.StringPtrInput
	CustomerOwnedIpv4Pool pulumi.StringPtrInput
	// IPv6 CIDR block.
	Ipv6CidrBlock              pulumi.StringPtrInput
	Ipv6CidrBlockAssociationId pulumi.StringPtrInput
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrInput
	// Whether instances launched into the subnet should be assigned a public IP address.
	MapPublicIpOnLaunch pulumi.BoolPtrInput
	OutpostArn          pulumi.StringPtrInput
	// ID of the AWS account that owns the subnet.
	OwnerId pulumi.StringPtrInput
	// Map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// VPC ID.
	VpcId pulumi.StringPtrInput
}

func (DefaultSubnetState) ElementType

func (DefaultSubnetState) ElementType() reflect.Type

type DefaultVpc

type DefaultVpc struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of VPC
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether or not an Amazon-provided IPv6 CIDR
	// block with a /56 prefix length for the VPC was assigned
	AssignGeneratedIpv6CidrBlock pulumi.BoolOutput `pulumi:"assignGeneratedIpv6CidrBlock"`
	// The CIDR block of the VPC
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The ID of the network ACL created by default on VPC creation
	DefaultNetworkAclId pulumi.StringOutput `pulumi:"defaultNetworkAclId"`
	// The ID of the route table created by default on VPC creation
	DefaultRouteTableId pulumi.StringOutput `pulumi:"defaultRouteTableId"`
	// The ID of the security group created by default on VPC creation
	DefaultSecurityGroupId pulumi.StringOutput `pulumi:"defaultSecurityGroupId"`
	DhcpOptionsId          pulumi.StringOutput `pulumi:"dhcpOptionsId"`
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink           pulumi.BoolOutput `pulumi:"enableClassiclink"`
	EnableClassiclinkDnsSupport pulumi.BoolOutput `pulumi:"enableClassiclinkDnsSupport"`
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolOutput `pulumi:"enableDnsHostnames"`
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrOutput `pulumi:"enableDnsSupport"`
	// Tenancy of instances spin up within VPC.
	InstanceTenancy pulumi.StringOutput `pulumi:"instanceTenancy"`
	// The association ID for the IPv6 CIDR block of the VPC
	Ipv6AssociationId pulumi.StringOutput `pulumi:"ipv6AssociationId"`
	// The IPv6 CIDR block of the VPC
	Ipv6CidrBlock pulumi.StringOutput `pulumi:"ipv6CidrBlock"`
	// The ID of the main route table associated with
	// this VPC. Note that you can change a VPC's main route table by using an
	// `ec2.MainRouteTableAssociation`
	MainRouteTableId pulumi.StringOutput `pulumi:"mainRouteTableId"`
	// The ID of the AWS account that owns the VPC.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a resource to manage the [default AWS VPC](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html) in the current region.

For AWS accounts created after 2013-12-04, each region comes with a Default VPC. **This is an advanced resource**, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The `ec2.DefaultVpc` behaves differently from normal resources, in that this provider does not _create_ this resource, but instead "adopts" it into management.

## Example Usage

Basic usage with tags:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultVpc(ctx, "_default", &ec2.DefaultVpcArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Default VPC"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Default VPCs can be imported using the `vpc id`, e.g.

```sh

$ pulumi import aws:ec2/defaultVpc:DefaultVpc default vpc-a01106c2

```

func GetDefaultVpc

func GetDefaultVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultVpcState, opts ...pulumi.ResourceOption) (*DefaultVpc, error)

GetDefaultVpc gets an existing DefaultVpc resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultVpc

func NewDefaultVpc(ctx *pulumi.Context,
	name string, args *DefaultVpcArgs, opts ...pulumi.ResourceOption) (*DefaultVpc, error)

NewDefaultVpc registers a new resource with the given unique name, arguments, and options.

func (*DefaultVpc) ElementType

func (*DefaultVpc) ElementType() reflect.Type

func (*DefaultVpc) ToDefaultVpcOutput

func (i *DefaultVpc) ToDefaultVpcOutput() DefaultVpcOutput

func (*DefaultVpc) ToDefaultVpcOutputWithContext

func (i *DefaultVpc) ToDefaultVpcOutputWithContext(ctx context.Context) DefaultVpcOutput

func (*DefaultVpc) ToDefaultVpcPtrOutput

func (i *DefaultVpc) ToDefaultVpcPtrOutput() DefaultVpcPtrOutput

func (*DefaultVpc) ToDefaultVpcPtrOutputWithContext

func (i *DefaultVpc) ToDefaultVpcPtrOutputWithContext(ctx context.Context) DefaultVpcPtrOutput

type DefaultVpcArgs

type DefaultVpcArgs struct {
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink           pulumi.BoolPtrInput
	EnableClassiclinkDnsSupport pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrInput
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a DefaultVpc resource.

func (DefaultVpcArgs) ElementType

func (DefaultVpcArgs) ElementType() reflect.Type

type DefaultVpcArray

type DefaultVpcArray []DefaultVpcInput

func (DefaultVpcArray) ElementType

func (DefaultVpcArray) ElementType() reflect.Type

func (DefaultVpcArray) ToDefaultVpcArrayOutput

func (i DefaultVpcArray) ToDefaultVpcArrayOutput() DefaultVpcArrayOutput

func (DefaultVpcArray) ToDefaultVpcArrayOutputWithContext

func (i DefaultVpcArray) ToDefaultVpcArrayOutputWithContext(ctx context.Context) DefaultVpcArrayOutput

type DefaultVpcArrayInput

type DefaultVpcArrayInput interface {
	pulumi.Input

	ToDefaultVpcArrayOutput() DefaultVpcArrayOutput
	ToDefaultVpcArrayOutputWithContext(context.Context) DefaultVpcArrayOutput
}

DefaultVpcArrayInput is an input type that accepts DefaultVpcArray and DefaultVpcArrayOutput values. You can construct a concrete instance of `DefaultVpcArrayInput` via:

DefaultVpcArray{ DefaultVpcArgs{...} }

type DefaultVpcArrayOutput

type DefaultVpcArrayOutput struct{ *pulumi.OutputState }

func (DefaultVpcArrayOutput) ElementType

func (DefaultVpcArrayOutput) ElementType() reflect.Type

func (DefaultVpcArrayOutput) Index

func (DefaultVpcArrayOutput) ToDefaultVpcArrayOutput

func (o DefaultVpcArrayOutput) ToDefaultVpcArrayOutput() DefaultVpcArrayOutput

func (DefaultVpcArrayOutput) ToDefaultVpcArrayOutputWithContext

func (o DefaultVpcArrayOutput) ToDefaultVpcArrayOutputWithContext(ctx context.Context) DefaultVpcArrayOutput

type DefaultVpcDhcpOptions

type DefaultVpcDhcpOptions struct {
	pulumi.CustomResourceState

	// The ARN of the DHCP Options Set.
	Arn               pulumi.StringOutput `pulumi:"arn"`
	DomainName        pulumi.StringOutput `pulumi:"domainName"`
	DomainNameServers pulumi.StringOutput `pulumi:"domainNameServers"`
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayOutput `pulumi:"netbiosNameServers"`
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrOutput `pulumi:"netbiosNodeType"`
	NtpServers      pulumi.StringOutput    `pulumi:"ntpServers"`
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a resource to manage the [default AWS DHCP Options Set](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html#AmazonDNS) in the current region.

Each AWS region comes with a default set of DHCP options. **This is an advanced resource**, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The `ec2.DefaultVpcDhcpOptions` behaves differently from normal resources, in that this provider does not _create_ this resource, but instead "adopts" it into management.

## Example Usage

Basic usage with tags:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewDefaultVpcDhcpOptions(ctx, "_default", &ec2.DefaultVpcDhcpOptionsArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Default DHCP Option Set"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC DHCP Options can be imported using the `dhcp options id`, e.g.

```sh

$ pulumi import aws:ec2/defaultVpcDhcpOptions:DefaultVpcDhcpOptions default_options dopt-d9070ebb

```

func GetDefaultVpcDhcpOptions

func GetDefaultVpcDhcpOptions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultVpcDhcpOptionsState, opts ...pulumi.ResourceOption) (*DefaultVpcDhcpOptions, error)

GetDefaultVpcDhcpOptions gets an existing DefaultVpcDhcpOptions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefaultVpcDhcpOptions

func NewDefaultVpcDhcpOptions(ctx *pulumi.Context,
	name string, args *DefaultVpcDhcpOptionsArgs, opts ...pulumi.ResourceOption) (*DefaultVpcDhcpOptions, error)

NewDefaultVpcDhcpOptions registers a new resource with the given unique name, arguments, and options.

func (*DefaultVpcDhcpOptions) ElementType

func (*DefaultVpcDhcpOptions) ElementType() reflect.Type

func (*DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsOutput

func (i *DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsOutput() DefaultVpcDhcpOptionsOutput

func (*DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsOutputWithContext

func (i *DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsOutput

func (*DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsPtrOutput

func (i *DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsPtrOutput() DefaultVpcDhcpOptionsPtrOutput

func (*DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsPtrOutputWithContext

func (i *DefaultVpcDhcpOptions) ToDefaultVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsPtrOutput

type DefaultVpcDhcpOptionsArgs

type DefaultVpcDhcpOptionsArgs struct {
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayInput
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrInput
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a DefaultVpcDhcpOptions resource.

func (DefaultVpcDhcpOptionsArgs) ElementType

func (DefaultVpcDhcpOptionsArgs) ElementType() reflect.Type

type DefaultVpcDhcpOptionsArray

type DefaultVpcDhcpOptionsArray []DefaultVpcDhcpOptionsInput

func (DefaultVpcDhcpOptionsArray) ElementType

func (DefaultVpcDhcpOptionsArray) ElementType() reflect.Type

func (DefaultVpcDhcpOptionsArray) ToDefaultVpcDhcpOptionsArrayOutput

func (i DefaultVpcDhcpOptionsArray) ToDefaultVpcDhcpOptionsArrayOutput() DefaultVpcDhcpOptionsArrayOutput

func (DefaultVpcDhcpOptionsArray) ToDefaultVpcDhcpOptionsArrayOutputWithContext

func (i DefaultVpcDhcpOptionsArray) ToDefaultVpcDhcpOptionsArrayOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsArrayOutput

type DefaultVpcDhcpOptionsArrayInput

type DefaultVpcDhcpOptionsArrayInput interface {
	pulumi.Input

	ToDefaultVpcDhcpOptionsArrayOutput() DefaultVpcDhcpOptionsArrayOutput
	ToDefaultVpcDhcpOptionsArrayOutputWithContext(context.Context) DefaultVpcDhcpOptionsArrayOutput
}

DefaultVpcDhcpOptionsArrayInput is an input type that accepts DefaultVpcDhcpOptionsArray and DefaultVpcDhcpOptionsArrayOutput values. You can construct a concrete instance of `DefaultVpcDhcpOptionsArrayInput` via:

DefaultVpcDhcpOptionsArray{ DefaultVpcDhcpOptionsArgs{...} }

type DefaultVpcDhcpOptionsArrayOutput

type DefaultVpcDhcpOptionsArrayOutput struct{ *pulumi.OutputState }

func (DefaultVpcDhcpOptionsArrayOutput) ElementType

func (DefaultVpcDhcpOptionsArrayOutput) Index

func (DefaultVpcDhcpOptionsArrayOutput) ToDefaultVpcDhcpOptionsArrayOutput

func (o DefaultVpcDhcpOptionsArrayOutput) ToDefaultVpcDhcpOptionsArrayOutput() DefaultVpcDhcpOptionsArrayOutput

func (DefaultVpcDhcpOptionsArrayOutput) ToDefaultVpcDhcpOptionsArrayOutputWithContext

func (o DefaultVpcDhcpOptionsArrayOutput) ToDefaultVpcDhcpOptionsArrayOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsArrayOutput

type DefaultVpcDhcpOptionsInput

type DefaultVpcDhcpOptionsInput interface {
	pulumi.Input

	ToDefaultVpcDhcpOptionsOutput() DefaultVpcDhcpOptionsOutput
	ToDefaultVpcDhcpOptionsOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsOutput
}

type DefaultVpcDhcpOptionsMap

type DefaultVpcDhcpOptionsMap map[string]DefaultVpcDhcpOptionsInput

func (DefaultVpcDhcpOptionsMap) ElementType

func (DefaultVpcDhcpOptionsMap) ElementType() reflect.Type

func (DefaultVpcDhcpOptionsMap) ToDefaultVpcDhcpOptionsMapOutput

func (i DefaultVpcDhcpOptionsMap) ToDefaultVpcDhcpOptionsMapOutput() DefaultVpcDhcpOptionsMapOutput

func (DefaultVpcDhcpOptionsMap) ToDefaultVpcDhcpOptionsMapOutputWithContext

func (i DefaultVpcDhcpOptionsMap) ToDefaultVpcDhcpOptionsMapOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsMapOutput

type DefaultVpcDhcpOptionsMapInput

type DefaultVpcDhcpOptionsMapInput interface {
	pulumi.Input

	ToDefaultVpcDhcpOptionsMapOutput() DefaultVpcDhcpOptionsMapOutput
	ToDefaultVpcDhcpOptionsMapOutputWithContext(context.Context) DefaultVpcDhcpOptionsMapOutput
}

DefaultVpcDhcpOptionsMapInput is an input type that accepts DefaultVpcDhcpOptionsMap and DefaultVpcDhcpOptionsMapOutput values. You can construct a concrete instance of `DefaultVpcDhcpOptionsMapInput` via:

DefaultVpcDhcpOptionsMap{ "key": DefaultVpcDhcpOptionsArgs{...} }

type DefaultVpcDhcpOptionsMapOutput

type DefaultVpcDhcpOptionsMapOutput struct{ *pulumi.OutputState }

func (DefaultVpcDhcpOptionsMapOutput) ElementType

func (DefaultVpcDhcpOptionsMapOutput) MapIndex

func (DefaultVpcDhcpOptionsMapOutput) ToDefaultVpcDhcpOptionsMapOutput

func (o DefaultVpcDhcpOptionsMapOutput) ToDefaultVpcDhcpOptionsMapOutput() DefaultVpcDhcpOptionsMapOutput

func (DefaultVpcDhcpOptionsMapOutput) ToDefaultVpcDhcpOptionsMapOutputWithContext

func (o DefaultVpcDhcpOptionsMapOutput) ToDefaultVpcDhcpOptionsMapOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsMapOutput

type DefaultVpcDhcpOptionsOutput

type DefaultVpcDhcpOptionsOutput struct{ *pulumi.OutputState }

func (DefaultVpcDhcpOptionsOutput) ElementType

func (DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsOutput

func (o DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsOutput() DefaultVpcDhcpOptionsOutput

func (DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsOutputWithContext

func (o DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsOutput

func (DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsPtrOutput

func (o DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsPtrOutput() DefaultVpcDhcpOptionsPtrOutput

func (DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsPtrOutputWithContext

func (o DefaultVpcDhcpOptionsOutput) ToDefaultVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsPtrOutput

type DefaultVpcDhcpOptionsPtrInput

type DefaultVpcDhcpOptionsPtrInput interface {
	pulumi.Input

	ToDefaultVpcDhcpOptionsPtrOutput() DefaultVpcDhcpOptionsPtrOutput
	ToDefaultVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsPtrOutput
}

type DefaultVpcDhcpOptionsPtrOutput

type DefaultVpcDhcpOptionsPtrOutput struct{ *pulumi.OutputState }

func (DefaultVpcDhcpOptionsPtrOutput) Elem added in v4.15.0

func (DefaultVpcDhcpOptionsPtrOutput) ElementType

func (DefaultVpcDhcpOptionsPtrOutput) ToDefaultVpcDhcpOptionsPtrOutput

func (o DefaultVpcDhcpOptionsPtrOutput) ToDefaultVpcDhcpOptionsPtrOutput() DefaultVpcDhcpOptionsPtrOutput

func (DefaultVpcDhcpOptionsPtrOutput) ToDefaultVpcDhcpOptionsPtrOutputWithContext

func (o DefaultVpcDhcpOptionsPtrOutput) ToDefaultVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) DefaultVpcDhcpOptionsPtrOutput

type DefaultVpcDhcpOptionsState

type DefaultVpcDhcpOptionsState struct {
	// The ARN of the DHCP Options Set.
	Arn               pulumi.StringPtrInput
	DomainName        pulumi.StringPtrInput
	DomainNameServers pulumi.StringPtrInput
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayInput
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrInput
	NtpServers      pulumi.StringPtrInput
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

func (DefaultVpcDhcpOptionsState) ElementType

func (DefaultVpcDhcpOptionsState) ElementType() reflect.Type

type DefaultVpcInput

type DefaultVpcInput interface {
	pulumi.Input

	ToDefaultVpcOutput() DefaultVpcOutput
	ToDefaultVpcOutputWithContext(ctx context.Context) DefaultVpcOutput
}

type DefaultVpcMap

type DefaultVpcMap map[string]DefaultVpcInput

func (DefaultVpcMap) ElementType

func (DefaultVpcMap) ElementType() reflect.Type

func (DefaultVpcMap) ToDefaultVpcMapOutput

func (i DefaultVpcMap) ToDefaultVpcMapOutput() DefaultVpcMapOutput

func (DefaultVpcMap) ToDefaultVpcMapOutputWithContext

func (i DefaultVpcMap) ToDefaultVpcMapOutputWithContext(ctx context.Context) DefaultVpcMapOutput

type DefaultVpcMapInput

type DefaultVpcMapInput interface {
	pulumi.Input

	ToDefaultVpcMapOutput() DefaultVpcMapOutput
	ToDefaultVpcMapOutputWithContext(context.Context) DefaultVpcMapOutput
}

DefaultVpcMapInput is an input type that accepts DefaultVpcMap and DefaultVpcMapOutput values. You can construct a concrete instance of `DefaultVpcMapInput` via:

DefaultVpcMap{ "key": DefaultVpcArgs{...} }

type DefaultVpcMapOutput

type DefaultVpcMapOutput struct{ *pulumi.OutputState }

func (DefaultVpcMapOutput) ElementType

func (DefaultVpcMapOutput) ElementType() reflect.Type

func (DefaultVpcMapOutput) MapIndex

func (DefaultVpcMapOutput) ToDefaultVpcMapOutput

func (o DefaultVpcMapOutput) ToDefaultVpcMapOutput() DefaultVpcMapOutput

func (DefaultVpcMapOutput) ToDefaultVpcMapOutputWithContext

func (o DefaultVpcMapOutput) ToDefaultVpcMapOutputWithContext(ctx context.Context) DefaultVpcMapOutput

type DefaultVpcOutput

type DefaultVpcOutput struct{ *pulumi.OutputState }

func (DefaultVpcOutput) ElementType

func (DefaultVpcOutput) ElementType() reflect.Type

func (DefaultVpcOutput) ToDefaultVpcOutput

func (o DefaultVpcOutput) ToDefaultVpcOutput() DefaultVpcOutput

func (DefaultVpcOutput) ToDefaultVpcOutputWithContext

func (o DefaultVpcOutput) ToDefaultVpcOutputWithContext(ctx context.Context) DefaultVpcOutput

func (DefaultVpcOutput) ToDefaultVpcPtrOutput

func (o DefaultVpcOutput) ToDefaultVpcPtrOutput() DefaultVpcPtrOutput

func (DefaultVpcOutput) ToDefaultVpcPtrOutputWithContext

func (o DefaultVpcOutput) ToDefaultVpcPtrOutputWithContext(ctx context.Context) DefaultVpcPtrOutput

type DefaultVpcPtrInput

type DefaultVpcPtrInput interface {
	pulumi.Input

	ToDefaultVpcPtrOutput() DefaultVpcPtrOutput
	ToDefaultVpcPtrOutputWithContext(ctx context.Context) DefaultVpcPtrOutput
}

type DefaultVpcPtrOutput

type DefaultVpcPtrOutput struct{ *pulumi.OutputState }

func (DefaultVpcPtrOutput) Elem added in v4.15.0

func (DefaultVpcPtrOutput) ElementType

func (DefaultVpcPtrOutput) ElementType() reflect.Type

func (DefaultVpcPtrOutput) ToDefaultVpcPtrOutput

func (o DefaultVpcPtrOutput) ToDefaultVpcPtrOutput() DefaultVpcPtrOutput

func (DefaultVpcPtrOutput) ToDefaultVpcPtrOutputWithContext

func (o DefaultVpcPtrOutput) ToDefaultVpcPtrOutputWithContext(ctx context.Context) DefaultVpcPtrOutput

type DefaultVpcState

type DefaultVpcState struct {
	// Amazon Resource Name (ARN) of VPC
	Arn pulumi.StringPtrInput
	// Whether or not an Amazon-provided IPv6 CIDR
	// block with a /56 prefix length for the VPC was assigned
	AssignGeneratedIpv6CidrBlock pulumi.BoolPtrInput
	// The CIDR block of the VPC
	CidrBlock pulumi.StringPtrInput
	// The ID of the network ACL created by default on VPC creation
	DefaultNetworkAclId pulumi.StringPtrInput
	// The ID of the route table created by default on VPC creation
	DefaultRouteTableId pulumi.StringPtrInput
	// The ID of the security group created by default on VPC creation
	DefaultSecurityGroupId pulumi.StringPtrInput
	DhcpOptionsId          pulumi.StringPtrInput
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink           pulumi.BoolPtrInput
	EnableClassiclinkDnsSupport pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrInput
	// Tenancy of instances spin up within VPC.
	InstanceTenancy pulumi.StringPtrInput
	// The association ID for the IPv6 CIDR block of the VPC
	Ipv6AssociationId pulumi.StringPtrInput
	// The IPv6 CIDR block of the VPC
	Ipv6CidrBlock pulumi.StringPtrInput
	// The ID of the main route table associated with
	// this VPC. Note that you can change a VPC's main route table by using an
	// `ec2.MainRouteTableAssociation`
	MainRouteTableId pulumi.StringPtrInput
	// The ID of the AWS account that owns the VPC.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

func (DefaultVpcState) ElementType

func (DefaultVpcState) ElementType() reflect.Type

type EgressOnlyInternetGateway

type EgressOnlyInternetGateway struct {
	pulumi.CustomResourceState

	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC ID to create in.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

[IPv6 only] Creates an egress-only Internet gateway for your VPC. An egress-only Internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the Internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVpc, err := ec2.NewVpc(ctx, "exampleVpc", &ec2.VpcArgs{
			CidrBlock:                    pulumi.String("10.1.0.0/16"),
			AssignGeneratedIpv6CidrBlock: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewEgressOnlyInternetGateway(ctx, "exampleEgressOnlyInternetGateway", &ec2.EgressOnlyInternetGatewayArgs{
			VpcId: exampleVpc.ID(),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Egress-only Internet gateways can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/egressOnlyInternetGateway:EgressOnlyInternetGateway example eigw-015e0e244e24dfe8a

```

func GetEgressOnlyInternetGateway

func GetEgressOnlyInternetGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EgressOnlyInternetGatewayState, opts ...pulumi.ResourceOption) (*EgressOnlyInternetGateway, error)

GetEgressOnlyInternetGateway gets an existing EgressOnlyInternetGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEgressOnlyInternetGateway

func NewEgressOnlyInternetGateway(ctx *pulumi.Context,
	name string, args *EgressOnlyInternetGatewayArgs, opts ...pulumi.ResourceOption) (*EgressOnlyInternetGateway, error)

NewEgressOnlyInternetGateway registers a new resource with the given unique name, arguments, and options.

func (*EgressOnlyInternetGateway) ElementType

func (*EgressOnlyInternetGateway) ElementType() reflect.Type

func (*EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayOutput

func (i *EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayOutput() EgressOnlyInternetGatewayOutput

func (*EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayOutputWithContext

func (i *EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayOutput

func (*EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayPtrOutput

func (i *EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayPtrOutput() EgressOnlyInternetGatewayPtrOutput

func (*EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayPtrOutputWithContext

func (i *EgressOnlyInternetGateway) ToEgressOnlyInternetGatewayPtrOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayPtrOutput

type EgressOnlyInternetGatewayArgs

type EgressOnlyInternetGatewayArgs struct {
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a EgressOnlyInternetGateway resource.

func (EgressOnlyInternetGatewayArgs) ElementType

type EgressOnlyInternetGatewayArray

type EgressOnlyInternetGatewayArray []EgressOnlyInternetGatewayInput

func (EgressOnlyInternetGatewayArray) ElementType

func (EgressOnlyInternetGatewayArray) ToEgressOnlyInternetGatewayArrayOutput

func (i EgressOnlyInternetGatewayArray) ToEgressOnlyInternetGatewayArrayOutput() EgressOnlyInternetGatewayArrayOutput

func (EgressOnlyInternetGatewayArray) ToEgressOnlyInternetGatewayArrayOutputWithContext

func (i EgressOnlyInternetGatewayArray) ToEgressOnlyInternetGatewayArrayOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayArrayOutput

type EgressOnlyInternetGatewayArrayInput

type EgressOnlyInternetGatewayArrayInput interface {
	pulumi.Input

	ToEgressOnlyInternetGatewayArrayOutput() EgressOnlyInternetGatewayArrayOutput
	ToEgressOnlyInternetGatewayArrayOutputWithContext(context.Context) EgressOnlyInternetGatewayArrayOutput
}

EgressOnlyInternetGatewayArrayInput is an input type that accepts EgressOnlyInternetGatewayArray and EgressOnlyInternetGatewayArrayOutput values. You can construct a concrete instance of `EgressOnlyInternetGatewayArrayInput` via:

EgressOnlyInternetGatewayArray{ EgressOnlyInternetGatewayArgs{...} }

type EgressOnlyInternetGatewayArrayOutput

type EgressOnlyInternetGatewayArrayOutput struct{ *pulumi.OutputState }

func (EgressOnlyInternetGatewayArrayOutput) ElementType

func (EgressOnlyInternetGatewayArrayOutput) Index

func (EgressOnlyInternetGatewayArrayOutput) ToEgressOnlyInternetGatewayArrayOutput

func (o EgressOnlyInternetGatewayArrayOutput) ToEgressOnlyInternetGatewayArrayOutput() EgressOnlyInternetGatewayArrayOutput

func (EgressOnlyInternetGatewayArrayOutput) ToEgressOnlyInternetGatewayArrayOutputWithContext

func (o EgressOnlyInternetGatewayArrayOutput) ToEgressOnlyInternetGatewayArrayOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayArrayOutput

type EgressOnlyInternetGatewayInput

type EgressOnlyInternetGatewayInput interface {
	pulumi.Input

	ToEgressOnlyInternetGatewayOutput() EgressOnlyInternetGatewayOutput
	ToEgressOnlyInternetGatewayOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayOutput
}

type EgressOnlyInternetGatewayMap

type EgressOnlyInternetGatewayMap map[string]EgressOnlyInternetGatewayInput

func (EgressOnlyInternetGatewayMap) ElementType

func (EgressOnlyInternetGatewayMap) ToEgressOnlyInternetGatewayMapOutput

func (i EgressOnlyInternetGatewayMap) ToEgressOnlyInternetGatewayMapOutput() EgressOnlyInternetGatewayMapOutput

func (EgressOnlyInternetGatewayMap) ToEgressOnlyInternetGatewayMapOutputWithContext

func (i EgressOnlyInternetGatewayMap) ToEgressOnlyInternetGatewayMapOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayMapOutput

type EgressOnlyInternetGatewayMapInput

type EgressOnlyInternetGatewayMapInput interface {
	pulumi.Input

	ToEgressOnlyInternetGatewayMapOutput() EgressOnlyInternetGatewayMapOutput
	ToEgressOnlyInternetGatewayMapOutputWithContext(context.Context) EgressOnlyInternetGatewayMapOutput
}

EgressOnlyInternetGatewayMapInput is an input type that accepts EgressOnlyInternetGatewayMap and EgressOnlyInternetGatewayMapOutput values. You can construct a concrete instance of `EgressOnlyInternetGatewayMapInput` via:

EgressOnlyInternetGatewayMap{ "key": EgressOnlyInternetGatewayArgs{...} }

type EgressOnlyInternetGatewayMapOutput

type EgressOnlyInternetGatewayMapOutput struct{ *pulumi.OutputState }

func (EgressOnlyInternetGatewayMapOutput) ElementType

func (EgressOnlyInternetGatewayMapOutput) MapIndex

func (EgressOnlyInternetGatewayMapOutput) ToEgressOnlyInternetGatewayMapOutput

func (o EgressOnlyInternetGatewayMapOutput) ToEgressOnlyInternetGatewayMapOutput() EgressOnlyInternetGatewayMapOutput

func (EgressOnlyInternetGatewayMapOutput) ToEgressOnlyInternetGatewayMapOutputWithContext

func (o EgressOnlyInternetGatewayMapOutput) ToEgressOnlyInternetGatewayMapOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayMapOutput

type EgressOnlyInternetGatewayOutput

type EgressOnlyInternetGatewayOutput struct{ *pulumi.OutputState }

func (EgressOnlyInternetGatewayOutput) ElementType

func (EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayOutput

func (o EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayOutput() EgressOnlyInternetGatewayOutput

func (EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayOutputWithContext

func (o EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayOutput

func (EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayPtrOutput

func (o EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayPtrOutput() EgressOnlyInternetGatewayPtrOutput

func (EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayPtrOutputWithContext

func (o EgressOnlyInternetGatewayOutput) ToEgressOnlyInternetGatewayPtrOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayPtrOutput

type EgressOnlyInternetGatewayPtrInput

type EgressOnlyInternetGatewayPtrInput interface {
	pulumi.Input

	ToEgressOnlyInternetGatewayPtrOutput() EgressOnlyInternetGatewayPtrOutput
	ToEgressOnlyInternetGatewayPtrOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayPtrOutput
}

type EgressOnlyInternetGatewayPtrOutput

type EgressOnlyInternetGatewayPtrOutput struct{ *pulumi.OutputState }

func (EgressOnlyInternetGatewayPtrOutput) Elem added in v4.15.0

func (EgressOnlyInternetGatewayPtrOutput) ElementType

func (EgressOnlyInternetGatewayPtrOutput) ToEgressOnlyInternetGatewayPtrOutput

func (o EgressOnlyInternetGatewayPtrOutput) ToEgressOnlyInternetGatewayPtrOutput() EgressOnlyInternetGatewayPtrOutput

func (EgressOnlyInternetGatewayPtrOutput) ToEgressOnlyInternetGatewayPtrOutputWithContext

func (o EgressOnlyInternetGatewayPtrOutput) ToEgressOnlyInternetGatewayPtrOutputWithContext(ctx context.Context) EgressOnlyInternetGatewayPtrOutput

type EgressOnlyInternetGatewayState

type EgressOnlyInternetGatewayState struct {
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringPtrInput
}

func (EgressOnlyInternetGatewayState) ElementType

type Eip

type Eip struct {
	pulumi.CustomResourceState

	// IP address from an EC2 BYOIP pool. This option is only available for VPC EIPs.
	Address pulumi.StringPtrOutput `pulumi:"address"`
	// ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
	AllocationId pulumi.StringOutput `pulumi:"allocationId"`
	// User-specified primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
	AssociateWithPrivateIp pulumi.StringPtrOutput `pulumi:"associateWithPrivateIp"`
	// ID representing the association of the address with an instance in a VPC.
	AssociationId pulumi.StringOutput `pulumi:"associationId"`
	// Carrier IP address.
	CarrierIp pulumi.StringOutput `pulumi:"carrierIp"`
	// Customer owned IP.
	CustomerOwnedIp pulumi.StringOutput `pulumi:"customerOwnedIp"`
	// ID  of a customer-owned address pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing).
	CustomerOwnedIpv4Pool pulumi.StringPtrOutput `pulumi:"customerOwnedIpv4Pool"`
	// Indicates if this EIP is for use in VPC (`vpc`) or EC2 Classic (`standard`).
	Domain pulumi.StringOutput `pulumi:"domain"`
	// EC2 instance ID.
	Instance pulumi.StringOutput `pulumi:"instance"`
	// Location from which the IP address is advertised. Use this parameter to limit the address to this location.
	NetworkBorderGroup pulumi.StringOutput `pulumi:"networkBorderGroup"`
	// Network interface ID to associate with.
	NetworkInterface pulumi.StringOutput `pulumi:"networkInterface"`
	// The Private DNS associated with the Elastic IP address (if in VPC).
	PrivateDns pulumi.StringOutput `pulumi:"privateDns"`
	// Contains the private IP address (if in VPC).
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// Public DNS associated with the Elastic IP address.
	PublicDns pulumi.StringOutput `pulumi:"publicDns"`
	// Contains the public IP address.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs.
	PublicIpv4Pool pulumi.StringOutput    `pulumi:"publicIpv4Pool"`
	Tags           pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll        pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Boolean if the EIP is in a VPC or not.
	Vpc pulumi.BoolOutput `pulumi:"vpc"`
}

Provides an Elastic IP resource.

> **Note:** EIP may require IGW to exist prior to association. Use `dependsOn` to set an explicit dependency on the IGW.

> **Note:** Do not use `networkInterface` to associate the EIP to `lb.LoadBalancer` or `ec2.NatGateway` resources. Instead use the `allocationId` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors.

## Example Usage ### Single EIP associated with an instance

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewEip(ctx, "lb", &ec2.EipArgs{
			Instance: pulumi.Any(aws_instance.Web.Id),
			Vpc:      pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Multiple EIPs associated with a single network interface

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNetworkInterface(ctx, "multi_ip", &ec2.NetworkInterfaceArgs{
			SubnetId: pulumi.Any(aws_subnet.Main.Id),
			PrivateIps: pulumi.StringArray{
				pulumi.String("10.0.0.10"),
				pulumi.String("10.0.0.11"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewEip(ctx, "one", &ec2.EipArgs{
			Vpc:                    pulumi.Bool(true),
			NetworkInterface:       multi_ip.ID(),
			AssociateWithPrivateIp: pulumi.String("10.0.0.10"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewEip(ctx, "two", &ec2.EipArgs{
			Vpc:                    pulumi.Bool(true),
			NetworkInterface:       multi_ip.ID(),
			AssociateWithPrivateIp: pulumi.String("10.0.0.11"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Attaching an EIP to an Instance with a pre-assigned private ip (VPC Only)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpc(ctx, "_default", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.0.0.0/16"),
			EnableDnsHostnames: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		gw, err := ec2.NewInternetGateway(ctx, "gw", &ec2.InternetGatewayArgs{
			VpcId: _default.ID(),
		})
		if err != nil {
			return err
		}
		tfTestSubnet, err := ec2.NewSubnet(ctx, "tfTestSubnet", &ec2.SubnetArgs{
			VpcId:               _default.ID(),
			CidrBlock:           pulumi.String("10.0.0.0/24"),
			MapPublicIpOnLaunch: pulumi.Bool(true),
		}, pulumi.DependsOn([]pulumi.Resource{
			gw,
		}))
		if err != nil {
			return err
		}
		foo, err := ec2.NewInstance(ctx, "foo", &ec2.InstanceArgs{
			Ami:          pulumi.String("ami-5189a661"),
			InstanceType: pulumi.String("t2.micro"),
			PrivateIp:    pulumi.String("10.0.0.12"),
			SubnetId:     tfTestSubnet.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewEip(ctx, "bar", &ec2.EipArgs{
			Vpc:                    pulumi.Bool(true),
			Instance:               foo.ID(),
			AssociateWithPrivateIp: pulumi.String("10.0.0.12"),
		}, pulumi.DependsOn([]pulumi.Resource{
			gw,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Allocating EIP from the BYOIP pool

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewEip(ctx, "byoip_ip", &ec2.EipArgs{
			PublicIpv4Pool: pulumi.String("ipv4pool-ec2-012345"),
			Vpc:            pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EIPs in a VPC can be imported using their Allocation ID, e.g.

```sh

$ pulumi import aws:ec2/eip:Eip bar eipalloc-00a10e96

```

EIPs in EC2 Classic can be imported using their Public IP, e.g.

```sh

$ pulumi import aws:ec2/eip:Eip bar 52.0.0.0

```

[1]https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateAddress.html

func GetEip

func GetEip(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipState, opts ...pulumi.ResourceOption) (*Eip, error)

GetEip gets an existing Eip resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEip

func NewEip(ctx *pulumi.Context,
	name string, args *EipArgs, opts ...pulumi.ResourceOption) (*Eip, error)

NewEip registers a new resource with the given unique name, arguments, and options.

func (*Eip) ElementType

func (*Eip) ElementType() reflect.Type

func (*Eip) ToEipOutput

func (i *Eip) ToEipOutput() EipOutput

func (*Eip) ToEipOutputWithContext

func (i *Eip) ToEipOutputWithContext(ctx context.Context) EipOutput

func (*Eip) ToEipPtrOutput

func (i *Eip) ToEipPtrOutput() EipPtrOutput

func (*Eip) ToEipPtrOutputWithContext

func (i *Eip) ToEipPtrOutputWithContext(ctx context.Context) EipPtrOutput

type EipArgs

type EipArgs struct {
	// IP address from an EC2 BYOIP pool. This option is only available for VPC EIPs.
	Address pulumi.StringPtrInput
	// User-specified primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
	AssociateWithPrivateIp pulumi.StringPtrInput
	// ID  of a customer-owned address pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing).
	CustomerOwnedIpv4Pool pulumi.StringPtrInput
	// EC2 instance ID.
	Instance pulumi.StringPtrInput
	// Location from which the IP address is advertised. Use this parameter to limit the address to this location.
	NetworkBorderGroup pulumi.StringPtrInput
	// Network interface ID to associate with.
	NetworkInterface pulumi.StringPtrInput
	// EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs.
	PublicIpv4Pool pulumi.StringPtrInput
	Tags           pulumi.StringMapInput
	TagsAll        pulumi.StringMapInput
	// Boolean if the EIP is in a VPC or not.
	Vpc pulumi.BoolPtrInput
}

The set of arguments for constructing a Eip resource.

func (EipArgs) ElementType

func (EipArgs) ElementType() reflect.Type

type EipArray

type EipArray []EipInput

func (EipArray) ElementType

func (EipArray) ElementType() reflect.Type

func (EipArray) ToEipArrayOutput

func (i EipArray) ToEipArrayOutput() EipArrayOutput

func (EipArray) ToEipArrayOutputWithContext

func (i EipArray) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipArrayInput

type EipArrayInput interface {
	pulumi.Input

	ToEipArrayOutput() EipArrayOutput
	ToEipArrayOutputWithContext(context.Context) EipArrayOutput
}

EipArrayInput is an input type that accepts EipArray and EipArrayOutput values. You can construct a concrete instance of `EipArrayInput` via:

EipArray{ EipArgs{...} }

type EipArrayOutput

type EipArrayOutput struct{ *pulumi.OutputState }

func (EipArrayOutput) ElementType

func (EipArrayOutput) ElementType() reflect.Type

func (EipArrayOutput) Index

func (EipArrayOutput) ToEipArrayOutput

func (o EipArrayOutput) ToEipArrayOutput() EipArrayOutput

func (EipArrayOutput) ToEipArrayOutputWithContext

func (o EipArrayOutput) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipAssociation

type EipAssociation struct {
	pulumi.CustomResourceState

	// The allocation ID. This is required for EC2-VPC.
	AllocationId pulumi.StringOutput `pulumi:"allocationId"`
	// Whether to allow an Elastic IP to
	// be re-associated. Defaults to `true` in VPC.
	AllowReassociation pulumi.BoolPtrOutput `pulumi:"allowReassociation"`
	// The ID of the instance. This is required for
	// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the
	// network interface ID, but not both. The operation fails if you specify an
	// instance ID unless exactly one network interface is attached.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ID of the network interface. If the
	// instance has more than one network interface, you must specify a network
	// interface ID.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The primary or secondary private IP address
	// to associate with the Elastic IP address. If no private IP address is
	// specified, the Elastic IP address is associated with the primary private IP
	// address.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// The Elastic IP address. This is required for EC2-Classic.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
}

Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces.

> **NOTE:** Do not use this resource to associate an EIP to `lb.LoadBalancer` or `ec2.NatGateway` resources. Instead use the `allocationId` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors.

> **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		web, err := ec2.NewInstance(ctx, "web", &ec2.InstanceArgs{
			Ami:              pulumi.String("ami-21f78e11"),
			AvailabilityZone: pulumi.String("us-west-2a"),
			InstanceType:     pulumi.String("t2.micro"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		example, err := ec2.NewEip(ctx, "example", &ec2.EipArgs{
			Vpc: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewEipAssociation(ctx, "eipAssoc", &ec2.EipAssociationArgs{
			InstanceId:   web.ID(),
			AllocationId: example.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EIP Assocations can be imported using their association ID.

```sh

$ pulumi import aws:ec2/eipAssociation:EipAssociation test eipassoc-ab12c345

```

func GetEipAssociation

func GetEipAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipAssociationState, opts ...pulumi.ResourceOption) (*EipAssociation, error)

GetEipAssociation gets an existing EipAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEipAssociation

func NewEipAssociation(ctx *pulumi.Context,
	name string, args *EipAssociationArgs, opts ...pulumi.ResourceOption) (*EipAssociation, error)

NewEipAssociation registers a new resource with the given unique name, arguments, and options.

func (*EipAssociation) ElementType

func (*EipAssociation) ElementType() reflect.Type

func (*EipAssociation) ToEipAssociationOutput

func (i *EipAssociation) ToEipAssociationOutput() EipAssociationOutput

func (*EipAssociation) ToEipAssociationOutputWithContext

func (i *EipAssociation) ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput

func (*EipAssociation) ToEipAssociationPtrOutput

func (i *EipAssociation) ToEipAssociationPtrOutput() EipAssociationPtrOutput

func (*EipAssociation) ToEipAssociationPtrOutputWithContext

func (i *EipAssociation) ToEipAssociationPtrOutputWithContext(ctx context.Context) EipAssociationPtrOutput

type EipAssociationArgs

type EipAssociationArgs struct {
	// The allocation ID. This is required for EC2-VPC.
	AllocationId pulumi.StringPtrInput
	// Whether to allow an Elastic IP to
	// be re-associated. Defaults to `true` in VPC.
	AllowReassociation pulumi.BoolPtrInput
	// The ID of the instance. This is required for
	// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the
	// network interface ID, but not both. The operation fails if you specify an
	// instance ID unless exactly one network interface is attached.
	InstanceId pulumi.StringPtrInput
	// The ID of the network interface. If the
	// instance has more than one network interface, you must specify a network
	// interface ID.
	NetworkInterfaceId pulumi.StringPtrInput
	// The primary or secondary private IP address
	// to associate with the Elastic IP address. If no private IP address is
	// specified, the Elastic IP address is associated with the primary private IP
	// address.
	PrivateIpAddress pulumi.StringPtrInput
	// The Elastic IP address. This is required for EC2-Classic.
	PublicIp pulumi.StringPtrInput
}

The set of arguments for constructing a EipAssociation resource.

func (EipAssociationArgs) ElementType

func (EipAssociationArgs) ElementType() reflect.Type

type EipAssociationArray

type EipAssociationArray []EipAssociationInput

func (EipAssociationArray) ElementType

func (EipAssociationArray) ElementType() reflect.Type

func (EipAssociationArray) ToEipAssociationArrayOutput

func (i EipAssociationArray) ToEipAssociationArrayOutput() EipAssociationArrayOutput

func (EipAssociationArray) ToEipAssociationArrayOutputWithContext

func (i EipAssociationArray) ToEipAssociationArrayOutputWithContext(ctx context.Context) EipAssociationArrayOutput

type EipAssociationArrayInput

type EipAssociationArrayInput interface {
	pulumi.Input

	ToEipAssociationArrayOutput() EipAssociationArrayOutput
	ToEipAssociationArrayOutputWithContext(context.Context) EipAssociationArrayOutput
}

EipAssociationArrayInput is an input type that accepts EipAssociationArray and EipAssociationArrayOutput values. You can construct a concrete instance of `EipAssociationArrayInput` via:

EipAssociationArray{ EipAssociationArgs{...} }

type EipAssociationArrayOutput

type EipAssociationArrayOutput struct{ *pulumi.OutputState }

func (EipAssociationArrayOutput) ElementType

func (EipAssociationArrayOutput) ElementType() reflect.Type

func (EipAssociationArrayOutput) Index

func (EipAssociationArrayOutput) ToEipAssociationArrayOutput

func (o EipAssociationArrayOutput) ToEipAssociationArrayOutput() EipAssociationArrayOutput

func (EipAssociationArrayOutput) ToEipAssociationArrayOutputWithContext

func (o EipAssociationArrayOutput) ToEipAssociationArrayOutputWithContext(ctx context.Context) EipAssociationArrayOutput

type EipAssociationInput

type EipAssociationInput interface {
	pulumi.Input

	ToEipAssociationOutput() EipAssociationOutput
	ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput
}

type EipAssociationMap

type EipAssociationMap map[string]EipAssociationInput

func (EipAssociationMap) ElementType

func (EipAssociationMap) ElementType() reflect.Type

func (EipAssociationMap) ToEipAssociationMapOutput

func (i EipAssociationMap) ToEipAssociationMapOutput() EipAssociationMapOutput

func (EipAssociationMap) ToEipAssociationMapOutputWithContext

func (i EipAssociationMap) ToEipAssociationMapOutputWithContext(ctx context.Context) EipAssociationMapOutput

type EipAssociationMapInput

type EipAssociationMapInput interface {
	pulumi.Input

	ToEipAssociationMapOutput() EipAssociationMapOutput
	ToEipAssociationMapOutputWithContext(context.Context) EipAssociationMapOutput
}

EipAssociationMapInput is an input type that accepts EipAssociationMap and EipAssociationMapOutput values. You can construct a concrete instance of `EipAssociationMapInput` via:

EipAssociationMap{ "key": EipAssociationArgs{...} }

type EipAssociationMapOutput

type EipAssociationMapOutput struct{ *pulumi.OutputState }

func (EipAssociationMapOutput) ElementType

func (EipAssociationMapOutput) ElementType() reflect.Type

func (EipAssociationMapOutput) MapIndex

func (EipAssociationMapOutput) ToEipAssociationMapOutput

func (o EipAssociationMapOutput) ToEipAssociationMapOutput() EipAssociationMapOutput

func (EipAssociationMapOutput) ToEipAssociationMapOutputWithContext

func (o EipAssociationMapOutput) ToEipAssociationMapOutputWithContext(ctx context.Context) EipAssociationMapOutput

type EipAssociationOutput

type EipAssociationOutput struct{ *pulumi.OutputState }

func (EipAssociationOutput) ElementType

func (EipAssociationOutput) ElementType() reflect.Type

func (EipAssociationOutput) ToEipAssociationOutput

func (o EipAssociationOutput) ToEipAssociationOutput() EipAssociationOutput

func (EipAssociationOutput) ToEipAssociationOutputWithContext

func (o EipAssociationOutput) ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput

func (EipAssociationOutput) ToEipAssociationPtrOutput

func (o EipAssociationOutput) ToEipAssociationPtrOutput() EipAssociationPtrOutput

func (EipAssociationOutput) ToEipAssociationPtrOutputWithContext

func (o EipAssociationOutput) ToEipAssociationPtrOutputWithContext(ctx context.Context) EipAssociationPtrOutput

type EipAssociationPtrInput

type EipAssociationPtrInput interface {
	pulumi.Input

	ToEipAssociationPtrOutput() EipAssociationPtrOutput
	ToEipAssociationPtrOutputWithContext(ctx context.Context) EipAssociationPtrOutput
}

type EipAssociationPtrOutput

type EipAssociationPtrOutput struct{ *pulumi.OutputState }

func (EipAssociationPtrOutput) Elem added in v4.15.0

func (EipAssociationPtrOutput) ElementType

func (EipAssociationPtrOutput) ElementType() reflect.Type

func (EipAssociationPtrOutput) ToEipAssociationPtrOutput

func (o EipAssociationPtrOutput) ToEipAssociationPtrOutput() EipAssociationPtrOutput

func (EipAssociationPtrOutput) ToEipAssociationPtrOutputWithContext

func (o EipAssociationPtrOutput) ToEipAssociationPtrOutputWithContext(ctx context.Context) EipAssociationPtrOutput

type EipAssociationState

type EipAssociationState struct {
	// The allocation ID. This is required for EC2-VPC.
	AllocationId pulumi.StringPtrInput
	// Whether to allow an Elastic IP to
	// be re-associated. Defaults to `true` in VPC.
	AllowReassociation pulumi.BoolPtrInput
	// The ID of the instance. This is required for
	// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the
	// network interface ID, but not both. The operation fails if you specify an
	// instance ID unless exactly one network interface is attached.
	InstanceId pulumi.StringPtrInput
	// The ID of the network interface. If the
	// instance has more than one network interface, you must specify a network
	// interface ID.
	NetworkInterfaceId pulumi.StringPtrInput
	// The primary or secondary private IP address
	// to associate with the Elastic IP address. If no private IP address is
	// specified, the Elastic IP address is associated with the primary private IP
	// address.
	PrivateIpAddress pulumi.StringPtrInput
	// The Elastic IP address. This is required for EC2-Classic.
	PublicIp pulumi.StringPtrInput
}

func (EipAssociationState) ElementType

func (EipAssociationState) ElementType() reflect.Type

type EipInput

type EipInput interface {
	pulumi.Input

	ToEipOutput() EipOutput
	ToEipOutputWithContext(ctx context.Context) EipOutput
}

type EipMap

type EipMap map[string]EipInput

func (EipMap) ElementType

func (EipMap) ElementType() reflect.Type

func (EipMap) ToEipMapOutput

func (i EipMap) ToEipMapOutput() EipMapOutput

func (EipMap) ToEipMapOutputWithContext

func (i EipMap) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipMapInput

type EipMapInput interface {
	pulumi.Input

	ToEipMapOutput() EipMapOutput
	ToEipMapOutputWithContext(context.Context) EipMapOutput
}

EipMapInput is an input type that accepts EipMap and EipMapOutput values. You can construct a concrete instance of `EipMapInput` via:

EipMap{ "key": EipArgs{...} }

type EipMapOutput

type EipMapOutput struct{ *pulumi.OutputState }

func (EipMapOutput) ElementType

func (EipMapOutput) ElementType() reflect.Type

func (EipMapOutput) MapIndex

func (o EipMapOutput) MapIndex(k pulumi.StringInput) EipOutput

func (EipMapOutput) ToEipMapOutput

func (o EipMapOutput) ToEipMapOutput() EipMapOutput

func (EipMapOutput) ToEipMapOutputWithContext

func (o EipMapOutput) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipOutput

type EipOutput struct{ *pulumi.OutputState }

func (EipOutput) ElementType

func (EipOutput) ElementType() reflect.Type

func (EipOutput) ToEipOutput

func (o EipOutput) ToEipOutput() EipOutput

func (EipOutput) ToEipOutputWithContext

func (o EipOutput) ToEipOutputWithContext(ctx context.Context) EipOutput

func (EipOutput) ToEipPtrOutput

func (o EipOutput) ToEipPtrOutput() EipPtrOutput

func (EipOutput) ToEipPtrOutputWithContext

func (o EipOutput) ToEipPtrOutputWithContext(ctx context.Context) EipPtrOutput

type EipPtrInput

type EipPtrInput interface {
	pulumi.Input

	ToEipPtrOutput() EipPtrOutput
	ToEipPtrOutputWithContext(ctx context.Context) EipPtrOutput
}

type EipPtrOutput

type EipPtrOutput struct{ *pulumi.OutputState }

func (EipPtrOutput) Elem added in v4.15.0

func (o EipPtrOutput) Elem() EipOutput

func (EipPtrOutput) ElementType

func (EipPtrOutput) ElementType() reflect.Type

func (EipPtrOutput) ToEipPtrOutput

func (o EipPtrOutput) ToEipPtrOutput() EipPtrOutput

func (EipPtrOutput) ToEipPtrOutputWithContext

func (o EipPtrOutput) ToEipPtrOutputWithContext(ctx context.Context) EipPtrOutput

type EipState

type EipState struct {
	// IP address from an EC2 BYOIP pool. This option is only available for VPC EIPs.
	Address pulumi.StringPtrInput
	// ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
	AllocationId pulumi.StringPtrInput
	// User-specified primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
	AssociateWithPrivateIp pulumi.StringPtrInput
	// ID representing the association of the address with an instance in a VPC.
	AssociationId pulumi.StringPtrInput
	// Carrier IP address.
	CarrierIp pulumi.StringPtrInput
	// Customer owned IP.
	CustomerOwnedIp pulumi.StringPtrInput
	// ID  of a customer-owned address pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing).
	CustomerOwnedIpv4Pool pulumi.StringPtrInput
	// Indicates if this EIP is for use in VPC (`vpc`) or EC2 Classic (`standard`).
	Domain pulumi.StringPtrInput
	// EC2 instance ID.
	Instance pulumi.StringPtrInput
	// Location from which the IP address is advertised. Use this parameter to limit the address to this location.
	NetworkBorderGroup pulumi.StringPtrInput
	// Network interface ID to associate with.
	NetworkInterface pulumi.StringPtrInput
	// The Private DNS associated with the Elastic IP address (if in VPC).
	PrivateDns pulumi.StringPtrInput
	// Contains the private IP address (if in VPC).
	PrivateIp pulumi.StringPtrInput
	// Public DNS associated with the Elastic IP address.
	PublicDns pulumi.StringPtrInput
	// Contains the public IP address.
	PublicIp pulumi.StringPtrInput
	// EC2 IPv4 address pool identifier or `amazon`. This option is only available for VPC EIPs.
	PublicIpv4Pool pulumi.StringPtrInput
	Tags           pulumi.StringMapInput
	TagsAll        pulumi.StringMapInput
	// Boolean if the EIP is in a VPC or not.
	Vpc pulumi.BoolPtrInput
}

func (EipState) ElementType

func (EipState) ElementType() reflect.Type

type Fleet

type Fleet struct {
	pulumi.CustomResourceState

	// Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: `no-termination`, `termination`. Defaults to `termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrOutput `pulumi:"excessCapacityTerminationPolicy"`
	// Nested argument containing EC2 Launch Template configurations. Defined below.
	LaunchTemplateConfig FleetLaunchTemplateConfigOutput `pulumi:"launchTemplateConfig"`
	// Nested argument containing On-Demand configurations. Defined below.
	OnDemandOptions FleetOnDemandOptionsPtrOutput `pulumi:"onDemandOptions"`
	// Whether EC2 Fleet should replace unhealthy instances. Defaults to `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrOutput `pulumi:"replaceUnhealthyInstances"`
	// Nested argument containing Spot configurations. Defined below.
	SpotOptions FleetSpotOptionsPtrOutput `pulumi:"spotOptions"`
	Tags        pulumi.StringMapOutput    `pulumi:"tags"`
	TagsAll     pulumi.StringMapOutput    `pulumi:"tagsAll"`
	// Nested argument containing target capacity configurations. Defined below.
	TargetCapacitySpecification FleetTargetCapacitySpecificationOutput `pulumi:"targetCapacitySpecification"`
	// Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to `false`.
	TerminateInstances pulumi.BoolPtrOutput `pulumi:"terminateInstances"`
	// Whether running instances should be terminated when the EC2 Fleet expires. Defaults to `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrOutput `pulumi:"terminateInstancesWithExpiration"`
	// The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: `maintain`, `request`. Defaults to `maintain`.
	Type pulumi.StringPtrOutput `pulumi:"type"`
}

Provides a resource to manage EC2 Fleets.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewFleet(ctx, "example", &ec2.FleetArgs{
			LaunchTemplateConfig: &ec2.FleetLaunchTemplateConfigArgs{
				LaunchTemplateSpecification: &ec2.FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs{
					LaunchTemplateId: pulumi.Any(aws_launch_template.Example.Id),
					Version:          pulumi.Any(aws_launch_template.Example.Latest_version),
				},
			},
			TargetCapacitySpecification: &ec2.FleetTargetCapacitySpecificationArgs{
				DefaultTargetCapacityType: pulumi.String("spot"),
				TotalTargetCapacity:       pulumi.Int(5),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_fleet` can be imported by using the Fleet identifier, e.g.

```sh

$ pulumi import aws:ec2/fleet:Fleet example fleet-b9b55d27-c5fc-41ac-a6f3-48fcc91f080c

```

func GetFleet

func GetFleet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FleetState, opts ...pulumi.ResourceOption) (*Fleet, error)

GetFleet gets an existing Fleet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFleet

func NewFleet(ctx *pulumi.Context,
	name string, args *FleetArgs, opts ...pulumi.ResourceOption) (*Fleet, error)

NewFleet registers a new resource with the given unique name, arguments, and options.

func (*Fleet) ElementType

func (*Fleet) ElementType() reflect.Type

func (*Fleet) ToFleetOutput

func (i *Fleet) ToFleetOutput() FleetOutput

func (*Fleet) ToFleetOutputWithContext

func (i *Fleet) ToFleetOutputWithContext(ctx context.Context) FleetOutput

func (*Fleet) ToFleetPtrOutput

func (i *Fleet) ToFleetPtrOutput() FleetPtrOutput

func (*Fleet) ToFleetPtrOutputWithContext

func (i *Fleet) ToFleetPtrOutputWithContext(ctx context.Context) FleetPtrOutput

type FleetArgs

type FleetArgs struct {
	// Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: `no-termination`, `termination`. Defaults to `termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// Nested argument containing EC2 Launch Template configurations. Defined below.
	LaunchTemplateConfig FleetLaunchTemplateConfigInput
	// Nested argument containing On-Demand configurations. Defined below.
	OnDemandOptions FleetOnDemandOptionsPtrInput
	// Whether EC2 Fleet should replace unhealthy instances. Defaults to `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrInput
	// Nested argument containing Spot configurations. Defined below.
	SpotOptions FleetSpotOptionsPtrInput
	Tags        pulumi.StringMapInput
	TagsAll     pulumi.StringMapInput
	// Nested argument containing target capacity configurations. Defined below.
	TargetCapacitySpecification FleetTargetCapacitySpecificationInput
	// Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to `false`.
	TerminateInstances pulumi.BoolPtrInput
	// Whether running instances should be terminated when the EC2 Fleet expires. Defaults to `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: `maintain`, `request`. Defaults to `maintain`.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a Fleet resource.

func (FleetArgs) ElementType

func (FleetArgs) ElementType() reflect.Type

type FleetArray

type FleetArray []FleetInput

func (FleetArray) ElementType

func (FleetArray) ElementType() reflect.Type

func (FleetArray) ToFleetArrayOutput

func (i FleetArray) ToFleetArrayOutput() FleetArrayOutput

func (FleetArray) ToFleetArrayOutputWithContext

func (i FleetArray) ToFleetArrayOutputWithContext(ctx context.Context) FleetArrayOutput

type FleetArrayInput

type FleetArrayInput interface {
	pulumi.Input

	ToFleetArrayOutput() FleetArrayOutput
	ToFleetArrayOutputWithContext(context.Context) FleetArrayOutput
}

FleetArrayInput is an input type that accepts FleetArray and FleetArrayOutput values. You can construct a concrete instance of `FleetArrayInput` via:

FleetArray{ FleetArgs{...} }

type FleetArrayOutput

type FleetArrayOutput struct{ *pulumi.OutputState }

func (FleetArrayOutput) ElementType

func (FleetArrayOutput) ElementType() reflect.Type

func (FleetArrayOutput) Index

func (FleetArrayOutput) ToFleetArrayOutput

func (o FleetArrayOutput) ToFleetArrayOutput() FleetArrayOutput

func (FleetArrayOutput) ToFleetArrayOutputWithContext

func (o FleetArrayOutput) ToFleetArrayOutputWithContext(ctx context.Context) FleetArrayOutput

type FleetInput

type FleetInput interface {
	pulumi.Input

	ToFleetOutput() FleetOutput
	ToFleetOutputWithContext(ctx context.Context) FleetOutput
}

type FleetLaunchTemplateConfig

type FleetLaunchTemplateConfig struct {
	// Nested argument containing EC2 Launch Template to use. Defined below.
	LaunchTemplateSpecification FleetLaunchTemplateConfigLaunchTemplateSpecification `pulumi:"launchTemplateSpecification"`
	// Nested argument(s) containing parameters to override the same parameters in the Launch Template. Defined below.
	Overrides []FleetLaunchTemplateConfigOverride `pulumi:"overrides"`
}

type FleetLaunchTemplateConfigArgs

type FleetLaunchTemplateConfigArgs struct {
	// Nested argument containing EC2 Launch Template to use. Defined below.
	LaunchTemplateSpecification FleetLaunchTemplateConfigLaunchTemplateSpecificationInput `pulumi:"launchTemplateSpecification"`
	// Nested argument(s) containing parameters to override the same parameters in the Launch Template. Defined below.
	Overrides FleetLaunchTemplateConfigOverrideArrayInput `pulumi:"overrides"`
}

func (FleetLaunchTemplateConfigArgs) ElementType

func (FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigOutput

func (i FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigOutput() FleetLaunchTemplateConfigOutput

func (FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigOutputWithContext

func (i FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOutput

func (FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigPtrOutput

func (i FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigPtrOutput() FleetLaunchTemplateConfigPtrOutput

func (FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigPtrOutputWithContext

func (i FleetLaunchTemplateConfigArgs) ToFleetLaunchTemplateConfigPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigPtrOutput

type FleetLaunchTemplateConfigInput

type FleetLaunchTemplateConfigInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigOutput() FleetLaunchTemplateConfigOutput
	ToFleetLaunchTemplateConfigOutputWithContext(context.Context) FleetLaunchTemplateConfigOutput
}

FleetLaunchTemplateConfigInput is an input type that accepts FleetLaunchTemplateConfigArgs and FleetLaunchTemplateConfigOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigInput` via:

FleetLaunchTemplateConfigArgs{...}

type FleetLaunchTemplateConfigLaunchTemplateSpecification

type FleetLaunchTemplateConfigLaunchTemplateSpecification struct {
	// ID of the launch template.
	LaunchTemplateId *string `pulumi:"launchTemplateId"`
	// Name of the launch template.
	LaunchTemplateName *string `pulumi:"launchTemplateName"`
	// Version number of the launch template.
	Version string `pulumi:"version"`
}

type FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs

type FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs struct {
	// ID of the launch template.
	LaunchTemplateId pulumi.StringPtrInput `pulumi:"launchTemplateId"`
	// Name of the launch template.
	LaunchTemplateName pulumi.StringPtrInput `pulumi:"launchTemplateName"`
	// Version number of the launch template.
	Version pulumi.StringInput `pulumi:"version"`
}

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ElementType

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext

func (i FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (i FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput() FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext

func (i FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

type FleetLaunchTemplateConfigLaunchTemplateSpecificationInput

type FleetLaunchTemplateConfigLaunchTemplateSpecificationInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutput() FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput
	ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput
}

FleetLaunchTemplateConfigLaunchTemplateSpecificationInput is an input type that accepts FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs and FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigLaunchTemplateSpecificationInput` via:

FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs{...}

type FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput

type FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ElementType

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) LaunchTemplateId

ID of the launch template.

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) LaunchTemplateName

Name of the launch template.

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext

func (o FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext

func (o FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationOutput) Version

Version number of the launch template.

type FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrInput

type FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput() FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput
	ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext(context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput
}

FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrInput is an input type that accepts FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs, FleetLaunchTemplateConfigLaunchTemplateSpecificationPtr and FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrInput` via:

        FleetLaunchTemplateConfigLaunchTemplateSpecificationArgs{...}

or:

        nil

type FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

type FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) Elem

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) ElementType

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) LaunchTemplateId

ID of the launch template.

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) LaunchTemplateName

Name of the launch template.

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext

func (o FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) ToFleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput

func (FleetLaunchTemplateConfigLaunchTemplateSpecificationPtrOutput) Version

Version number of the launch template.

type FleetLaunchTemplateConfigOutput

type FleetLaunchTemplateConfigOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigOutput) ElementType

func (FleetLaunchTemplateConfigOutput) LaunchTemplateSpecification

Nested argument containing EC2 Launch Template to use. Defined below.

func (FleetLaunchTemplateConfigOutput) Overrides

Nested argument(s) containing parameters to override the same parameters in the Launch Template. Defined below.

func (FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigOutput

func (o FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigOutput() FleetLaunchTemplateConfigOutput

func (FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigOutputWithContext

func (o FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOutput

func (FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigPtrOutput

func (o FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigPtrOutput() FleetLaunchTemplateConfigPtrOutput

func (FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigPtrOutputWithContext

func (o FleetLaunchTemplateConfigOutput) ToFleetLaunchTemplateConfigPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigPtrOutput

type FleetLaunchTemplateConfigOverride

type FleetLaunchTemplateConfigOverride struct {
	// Availability Zone in which to launch the instances.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Instance type.
	InstanceType *string `pulumi:"instanceType"`
	// Maximum price per unit hour that you are willing to pay for a Spot Instance.
	MaxPrice *string `pulumi:"maxPrice"`
	// Priority for the launch template override. If `onDemandOptions` `allocationStrategy` is set to `prioritized`, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. Valid values are whole numbers starting at 0.
	Priority *float64 `pulumi:"priority"`
	// ID of the subnet in which to launch the instances.
	SubnetId *string `pulumi:"subnetId"`
	// Number of units provided by the specified instance type.
	WeightedCapacity *float64 `pulumi:"weightedCapacity"`
}

type FleetLaunchTemplateConfigOverrideArgs

type FleetLaunchTemplateConfigOverrideArgs struct {
	// Availability Zone in which to launch the instances.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// Instance type.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// Maximum price per unit hour that you are willing to pay for a Spot Instance.
	MaxPrice pulumi.StringPtrInput `pulumi:"maxPrice"`
	// Priority for the launch template override. If `onDemandOptions` `allocationStrategy` is set to `prioritized`, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. Valid values are whole numbers starting at 0.
	Priority pulumi.Float64PtrInput `pulumi:"priority"`
	// ID of the subnet in which to launch the instances.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// Number of units provided by the specified instance type.
	WeightedCapacity pulumi.Float64PtrInput `pulumi:"weightedCapacity"`
}

func (FleetLaunchTemplateConfigOverrideArgs) ElementType

func (FleetLaunchTemplateConfigOverrideArgs) ToFleetLaunchTemplateConfigOverrideOutput

func (i FleetLaunchTemplateConfigOverrideArgs) ToFleetLaunchTemplateConfigOverrideOutput() FleetLaunchTemplateConfigOverrideOutput

func (FleetLaunchTemplateConfigOverrideArgs) ToFleetLaunchTemplateConfigOverrideOutputWithContext

func (i FleetLaunchTemplateConfigOverrideArgs) ToFleetLaunchTemplateConfigOverrideOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOverrideOutput

type FleetLaunchTemplateConfigOverrideArray

type FleetLaunchTemplateConfigOverrideArray []FleetLaunchTemplateConfigOverrideInput

func (FleetLaunchTemplateConfigOverrideArray) ElementType

func (FleetLaunchTemplateConfigOverrideArray) ToFleetLaunchTemplateConfigOverrideArrayOutput

func (i FleetLaunchTemplateConfigOverrideArray) ToFleetLaunchTemplateConfigOverrideArrayOutput() FleetLaunchTemplateConfigOverrideArrayOutput

func (FleetLaunchTemplateConfigOverrideArray) ToFleetLaunchTemplateConfigOverrideArrayOutputWithContext

func (i FleetLaunchTemplateConfigOverrideArray) ToFleetLaunchTemplateConfigOverrideArrayOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOverrideArrayOutput

type FleetLaunchTemplateConfigOverrideArrayInput

type FleetLaunchTemplateConfigOverrideArrayInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigOverrideArrayOutput() FleetLaunchTemplateConfigOverrideArrayOutput
	ToFleetLaunchTemplateConfigOverrideArrayOutputWithContext(context.Context) FleetLaunchTemplateConfigOverrideArrayOutput
}

FleetLaunchTemplateConfigOverrideArrayInput is an input type that accepts FleetLaunchTemplateConfigOverrideArray and FleetLaunchTemplateConfigOverrideArrayOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigOverrideArrayInput` via:

FleetLaunchTemplateConfigOverrideArray{ FleetLaunchTemplateConfigOverrideArgs{...} }

type FleetLaunchTemplateConfigOverrideArrayOutput

type FleetLaunchTemplateConfigOverrideArrayOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigOverrideArrayOutput) ElementType

func (FleetLaunchTemplateConfigOverrideArrayOutput) Index

func (FleetLaunchTemplateConfigOverrideArrayOutput) ToFleetLaunchTemplateConfigOverrideArrayOutput

func (o FleetLaunchTemplateConfigOverrideArrayOutput) ToFleetLaunchTemplateConfigOverrideArrayOutput() FleetLaunchTemplateConfigOverrideArrayOutput

func (FleetLaunchTemplateConfigOverrideArrayOutput) ToFleetLaunchTemplateConfigOverrideArrayOutputWithContext

func (o FleetLaunchTemplateConfigOverrideArrayOutput) ToFleetLaunchTemplateConfigOverrideArrayOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOverrideArrayOutput

type FleetLaunchTemplateConfigOverrideInput

type FleetLaunchTemplateConfigOverrideInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigOverrideOutput() FleetLaunchTemplateConfigOverrideOutput
	ToFleetLaunchTemplateConfigOverrideOutputWithContext(context.Context) FleetLaunchTemplateConfigOverrideOutput
}

FleetLaunchTemplateConfigOverrideInput is an input type that accepts FleetLaunchTemplateConfigOverrideArgs and FleetLaunchTemplateConfigOverrideOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigOverrideInput` via:

FleetLaunchTemplateConfigOverrideArgs{...}

type FleetLaunchTemplateConfigOverrideOutput

type FleetLaunchTemplateConfigOverrideOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigOverrideOutput) AvailabilityZone

Availability Zone in which to launch the instances.

func (FleetLaunchTemplateConfigOverrideOutput) ElementType

func (FleetLaunchTemplateConfigOverrideOutput) InstanceType

Instance type.

func (FleetLaunchTemplateConfigOverrideOutput) MaxPrice

Maximum price per unit hour that you are willing to pay for a Spot Instance.

func (FleetLaunchTemplateConfigOverrideOutput) Priority

Priority for the launch template override. If `onDemandOptions` `allocationStrategy` is set to `prioritized`, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. Valid values are whole numbers starting at 0.

func (FleetLaunchTemplateConfigOverrideOutput) SubnetId

ID of the subnet in which to launch the instances.

func (FleetLaunchTemplateConfigOverrideOutput) ToFleetLaunchTemplateConfigOverrideOutput

func (o FleetLaunchTemplateConfigOverrideOutput) ToFleetLaunchTemplateConfigOverrideOutput() FleetLaunchTemplateConfigOverrideOutput

func (FleetLaunchTemplateConfigOverrideOutput) ToFleetLaunchTemplateConfigOverrideOutputWithContext

func (o FleetLaunchTemplateConfigOverrideOutput) ToFleetLaunchTemplateConfigOverrideOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigOverrideOutput

func (FleetLaunchTemplateConfigOverrideOutput) WeightedCapacity

Number of units provided by the specified instance type.

type FleetLaunchTemplateConfigPtrInput

type FleetLaunchTemplateConfigPtrInput interface {
	pulumi.Input

	ToFleetLaunchTemplateConfigPtrOutput() FleetLaunchTemplateConfigPtrOutput
	ToFleetLaunchTemplateConfigPtrOutputWithContext(context.Context) FleetLaunchTemplateConfigPtrOutput
}

FleetLaunchTemplateConfigPtrInput is an input type that accepts FleetLaunchTemplateConfigArgs, FleetLaunchTemplateConfigPtr and FleetLaunchTemplateConfigPtrOutput values. You can construct a concrete instance of `FleetLaunchTemplateConfigPtrInput` via:

        FleetLaunchTemplateConfigArgs{...}

or:

        nil

type FleetLaunchTemplateConfigPtrOutput

type FleetLaunchTemplateConfigPtrOutput struct{ *pulumi.OutputState }

func (FleetLaunchTemplateConfigPtrOutput) Elem

func (FleetLaunchTemplateConfigPtrOutput) ElementType

func (FleetLaunchTemplateConfigPtrOutput) LaunchTemplateSpecification

Nested argument containing EC2 Launch Template to use. Defined below.

func (FleetLaunchTemplateConfigPtrOutput) Overrides

Nested argument(s) containing parameters to override the same parameters in the Launch Template. Defined below.

func (FleetLaunchTemplateConfigPtrOutput) ToFleetLaunchTemplateConfigPtrOutput

func (o FleetLaunchTemplateConfigPtrOutput) ToFleetLaunchTemplateConfigPtrOutput() FleetLaunchTemplateConfigPtrOutput

func (FleetLaunchTemplateConfigPtrOutput) ToFleetLaunchTemplateConfigPtrOutputWithContext

func (o FleetLaunchTemplateConfigPtrOutput) ToFleetLaunchTemplateConfigPtrOutputWithContext(ctx context.Context) FleetLaunchTemplateConfigPtrOutput

type FleetMap

type FleetMap map[string]FleetInput

func (FleetMap) ElementType

func (FleetMap) ElementType() reflect.Type

func (FleetMap) ToFleetMapOutput

func (i FleetMap) ToFleetMapOutput() FleetMapOutput

func (FleetMap) ToFleetMapOutputWithContext

func (i FleetMap) ToFleetMapOutputWithContext(ctx context.Context) FleetMapOutput

type FleetMapInput

type FleetMapInput interface {
	pulumi.Input

	ToFleetMapOutput() FleetMapOutput
	ToFleetMapOutputWithContext(context.Context) FleetMapOutput
}

FleetMapInput is an input type that accepts FleetMap and FleetMapOutput values. You can construct a concrete instance of `FleetMapInput` via:

FleetMap{ "key": FleetArgs{...} }

type FleetMapOutput

type FleetMapOutput struct{ *pulumi.OutputState }

func (FleetMapOutput) ElementType

func (FleetMapOutput) ElementType() reflect.Type

func (FleetMapOutput) MapIndex

func (FleetMapOutput) ToFleetMapOutput

func (o FleetMapOutput) ToFleetMapOutput() FleetMapOutput

func (FleetMapOutput) ToFleetMapOutputWithContext

func (o FleetMapOutput) ToFleetMapOutputWithContext(ctx context.Context) FleetMapOutput

type FleetOnDemandOptions

type FleetOnDemandOptions struct {
	// How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.
	AllocationStrategy *string `pulumi:"allocationStrategy"`
}

type FleetOnDemandOptionsArgs

type FleetOnDemandOptionsArgs struct {
	// How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.
	AllocationStrategy pulumi.StringPtrInput `pulumi:"allocationStrategy"`
}

func (FleetOnDemandOptionsArgs) ElementType

func (FleetOnDemandOptionsArgs) ElementType() reflect.Type

func (FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsOutput

func (i FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsOutput() FleetOnDemandOptionsOutput

func (FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsOutputWithContext

func (i FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsOutputWithContext(ctx context.Context) FleetOnDemandOptionsOutput

func (FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsPtrOutput

func (i FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsPtrOutput() FleetOnDemandOptionsPtrOutput

func (FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsPtrOutputWithContext

func (i FleetOnDemandOptionsArgs) ToFleetOnDemandOptionsPtrOutputWithContext(ctx context.Context) FleetOnDemandOptionsPtrOutput

type FleetOnDemandOptionsInput

type FleetOnDemandOptionsInput interface {
	pulumi.Input

	ToFleetOnDemandOptionsOutput() FleetOnDemandOptionsOutput
	ToFleetOnDemandOptionsOutputWithContext(context.Context) FleetOnDemandOptionsOutput
}

FleetOnDemandOptionsInput is an input type that accepts FleetOnDemandOptionsArgs and FleetOnDemandOptionsOutput values. You can construct a concrete instance of `FleetOnDemandOptionsInput` via:

FleetOnDemandOptionsArgs{...}

type FleetOnDemandOptionsOutput

type FleetOnDemandOptionsOutput struct{ *pulumi.OutputState }

func (FleetOnDemandOptionsOutput) AllocationStrategy

func (o FleetOnDemandOptionsOutput) AllocationStrategy() pulumi.StringPtrOutput

How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.

func (FleetOnDemandOptionsOutput) ElementType

func (FleetOnDemandOptionsOutput) ElementType() reflect.Type

func (FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsOutput

func (o FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsOutput() FleetOnDemandOptionsOutput

func (FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsOutputWithContext

func (o FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsOutputWithContext(ctx context.Context) FleetOnDemandOptionsOutput

func (FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsPtrOutput

func (o FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsPtrOutput() FleetOnDemandOptionsPtrOutput

func (FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsPtrOutputWithContext

func (o FleetOnDemandOptionsOutput) ToFleetOnDemandOptionsPtrOutputWithContext(ctx context.Context) FleetOnDemandOptionsPtrOutput

type FleetOnDemandOptionsPtrInput

type FleetOnDemandOptionsPtrInput interface {
	pulumi.Input

	ToFleetOnDemandOptionsPtrOutput() FleetOnDemandOptionsPtrOutput
	ToFleetOnDemandOptionsPtrOutputWithContext(context.Context) FleetOnDemandOptionsPtrOutput
}

FleetOnDemandOptionsPtrInput is an input type that accepts FleetOnDemandOptionsArgs, FleetOnDemandOptionsPtr and FleetOnDemandOptionsPtrOutput values. You can construct a concrete instance of `FleetOnDemandOptionsPtrInput` via:

        FleetOnDemandOptionsArgs{...}

or:

        nil

type FleetOnDemandOptionsPtrOutput

type FleetOnDemandOptionsPtrOutput struct{ *pulumi.OutputState }

func (FleetOnDemandOptionsPtrOutput) AllocationStrategy

func (o FleetOnDemandOptionsPtrOutput) AllocationStrategy() pulumi.StringPtrOutput

How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.

func (FleetOnDemandOptionsPtrOutput) Elem

func (FleetOnDemandOptionsPtrOutput) ElementType

func (FleetOnDemandOptionsPtrOutput) ToFleetOnDemandOptionsPtrOutput

func (o FleetOnDemandOptionsPtrOutput) ToFleetOnDemandOptionsPtrOutput() FleetOnDemandOptionsPtrOutput

func (FleetOnDemandOptionsPtrOutput) ToFleetOnDemandOptionsPtrOutputWithContext

func (o FleetOnDemandOptionsPtrOutput) ToFleetOnDemandOptionsPtrOutputWithContext(ctx context.Context) FleetOnDemandOptionsPtrOutput

type FleetOutput

type FleetOutput struct{ *pulumi.OutputState }

func (FleetOutput) ElementType

func (FleetOutput) ElementType() reflect.Type

func (FleetOutput) ToFleetOutput

func (o FleetOutput) ToFleetOutput() FleetOutput

func (FleetOutput) ToFleetOutputWithContext

func (o FleetOutput) ToFleetOutputWithContext(ctx context.Context) FleetOutput

func (FleetOutput) ToFleetPtrOutput

func (o FleetOutput) ToFleetPtrOutput() FleetPtrOutput

func (FleetOutput) ToFleetPtrOutputWithContext

func (o FleetOutput) ToFleetPtrOutputWithContext(ctx context.Context) FleetPtrOutput

type FleetPtrInput

type FleetPtrInput interface {
	pulumi.Input

	ToFleetPtrOutput() FleetPtrOutput
	ToFleetPtrOutputWithContext(ctx context.Context) FleetPtrOutput
}

type FleetPtrOutput

type FleetPtrOutput struct{ *pulumi.OutputState }

func (FleetPtrOutput) Elem added in v4.15.0

func (o FleetPtrOutput) Elem() FleetOutput

func (FleetPtrOutput) ElementType

func (FleetPtrOutput) ElementType() reflect.Type

func (FleetPtrOutput) ToFleetPtrOutput

func (o FleetPtrOutput) ToFleetPtrOutput() FleetPtrOutput

func (FleetPtrOutput) ToFleetPtrOutputWithContext

func (o FleetPtrOutput) ToFleetPtrOutputWithContext(ctx context.Context) FleetPtrOutput

type FleetSpotOptions

type FleetSpotOptions struct {
	// How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.
	AllocationStrategy *string `pulumi:"allocationStrategy"`
	// Behavior when a Spot Instance is interrupted. Valid values: `hibernate`, `stop`, `terminate`. Default: `terminate`.
	InstanceInterruptionBehavior *string `pulumi:"instanceInterruptionBehavior"`
	// Number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot `allocationStrategy` is set to `lowestPrice`. Default: `1`.
	InstancePoolsToUseCount *int `pulumi:"instancePoolsToUseCount"`
	// Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
	MaintenanceStrategies *FleetSpotOptionsMaintenanceStrategies `pulumi:"maintenanceStrategies"`
}

type FleetSpotOptionsArgs

type FleetSpotOptionsArgs struct {
	// How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.
	AllocationStrategy pulumi.StringPtrInput `pulumi:"allocationStrategy"`
	// Behavior when a Spot Instance is interrupted. Valid values: `hibernate`, `stop`, `terminate`. Default: `terminate`.
	InstanceInterruptionBehavior pulumi.StringPtrInput `pulumi:"instanceInterruptionBehavior"`
	// Number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot `allocationStrategy` is set to `lowestPrice`. Default: `1`.
	InstancePoolsToUseCount pulumi.IntPtrInput `pulumi:"instancePoolsToUseCount"`
	// Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
	MaintenanceStrategies FleetSpotOptionsMaintenanceStrategiesPtrInput `pulumi:"maintenanceStrategies"`
}

func (FleetSpotOptionsArgs) ElementType

func (FleetSpotOptionsArgs) ElementType() reflect.Type

func (FleetSpotOptionsArgs) ToFleetSpotOptionsOutput

func (i FleetSpotOptionsArgs) ToFleetSpotOptionsOutput() FleetSpotOptionsOutput

func (FleetSpotOptionsArgs) ToFleetSpotOptionsOutputWithContext

func (i FleetSpotOptionsArgs) ToFleetSpotOptionsOutputWithContext(ctx context.Context) FleetSpotOptionsOutput

func (FleetSpotOptionsArgs) ToFleetSpotOptionsPtrOutput

func (i FleetSpotOptionsArgs) ToFleetSpotOptionsPtrOutput() FleetSpotOptionsPtrOutput

func (FleetSpotOptionsArgs) ToFleetSpotOptionsPtrOutputWithContext

func (i FleetSpotOptionsArgs) ToFleetSpotOptionsPtrOutputWithContext(ctx context.Context) FleetSpotOptionsPtrOutput

type FleetSpotOptionsInput

type FleetSpotOptionsInput interface {
	pulumi.Input

	ToFleetSpotOptionsOutput() FleetSpotOptionsOutput
	ToFleetSpotOptionsOutputWithContext(context.Context) FleetSpotOptionsOutput
}

FleetSpotOptionsInput is an input type that accepts FleetSpotOptionsArgs and FleetSpotOptionsOutput values. You can construct a concrete instance of `FleetSpotOptionsInput` via:

FleetSpotOptionsArgs{...}

type FleetSpotOptionsMaintenanceStrategies

type FleetSpotOptionsMaintenanceStrategies struct {
	// Nested argument containing the capacity rebalance for your fleet request. Defined below.
	CapacityRebalance *FleetSpotOptionsMaintenanceStrategiesCapacityRebalance `pulumi:"capacityRebalance"`
}

type FleetSpotOptionsMaintenanceStrategiesArgs

type FleetSpotOptionsMaintenanceStrategiesArgs struct {
	// Nested argument containing the capacity rebalance for your fleet request. Defined below.
	CapacityRebalance FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrInput `pulumi:"capacityRebalance"`
}

func (FleetSpotOptionsMaintenanceStrategiesArgs) ElementType

func (FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesOutput

func (i FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesOutput() FleetSpotOptionsMaintenanceStrategiesOutput

func (FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesOutputWithContext

func (i FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesOutput

func (FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput

func (i FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput() FleetSpotOptionsMaintenanceStrategiesPtrOutput

func (FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext

func (i FleetSpotOptionsMaintenanceStrategiesArgs) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesPtrOutput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalance

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalance struct {
	// The replacement strategy to use. Only available for fleets of `type` set to `maintain`. Valid values: `launch`.
	ReplacementStrategy *string `pulumi:"replacementStrategy"`
}

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs struct {
	// The replacement strategy to use. Only available for fleets of `type` set to `maintain`. Valid values: `launch`.
	ReplacementStrategy pulumi.StringPtrInput `pulumi:"replacementStrategy"`
}

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ElementType

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutputWithContext

func (i FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (i FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceInput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceInput interface {
	pulumi.Input

	ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput() FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput
	ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutputWithContext(context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput
}

FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceInput is an input type that accepts FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs and FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput values. You can construct a concrete instance of `FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceInput` via:

FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs{...}

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ElementType

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ReplacementStrategy

The replacement strategy to use. Only available for fleets of `type` set to `maintain`. Valid values: `launch`.

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrInput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrInput interface {
	pulumi.Input

	ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput() FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput
	ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput
}

FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrInput is an input type that accepts FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs, FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtr and FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput values. You can construct a concrete instance of `FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrInput` via:

        FleetSpotOptionsMaintenanceStrategiesCapacityRebalanceArgs{...}

or:

        nil

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

type FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) Elem

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) ElementType

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) ReplacementStrategy

The replacement strategy to use. Only available for fleets of `type` set to `maintain`. Valid values: `launch`.

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

func (FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput) ToFleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesCapacityRebalancePtrOutput

type FleetSpotOptionsMaintenanceStrategiesInput

type FleetSpotOptionsMaintenanceStrategiesInput interface {
	pulumi.Input

	ToFleetSpotOptionsMaintenanceStrategiesOutput() FleetSpotOptionsMaintenanceStrategiesOutput
	ToFleetSpotOptionsMaintenanceStrategiesOutputWithContext(context.Context) FleetSpotOptionsMaintenanceStrategiesOutput
}

FleetSpotOptionsMaintenanceStrategiesInput is an input type that accepts FleetSpotOptionsMaintenanceStrategiesArgs and FleetSpotOptionsMaintenanceStrategiesOutput values. You can construct a concrete instance of `FleetSpotOptionsMaintenanceStrategiesInput` via:

FleetSpotOptionsMaintenanceStrategiesArgs{...}

type FleetSpotOptionsMaintenanceStrategiesOutput

type FleetSpotOptionsMaintenanceStrategiesOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsMaintenanceStrategiesOutput) CapacityRebalance

Nested argument containing the capacity rebalance for your fleet request. Defined below.

func (FleetSpotOptionsMaintenanceStrategiesOutput) ElementType

func (FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesOutput

func (o FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesOutput() FleetSpotOptionsMaintenanceStrategiesOutput

func (FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesOutput

func (FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput

func (o FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput() FleetSpotOptionsMaintenanceStrategiesPtrOutput

func (FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesPtrOutput

type FleetSpotOptionsMaintenanceStrategiesPtrInput

type FleetSpotOptionsMaintenanceStrategiesPtrInput interface {
	pulumi.Input

	ToFleetSpotOptionsMaintenanceStrategiesPtrOutput() FleetSpotOptionsMaintenanceStrategiesPtrOutput
	ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext(context.Context) FleetSpotOptionsMaintenanceStrategiesPtrOutput
}

FleetSpotOptionsMaintenanceStrategiesPtrInput is an input type that accepts FleetSpotOptionsMaintenanceStrategiesArgs, FleetSpotOptionsMaintenanceStrategiesPtr and FleetSpotOptionsMaintenanceStrategiesPtrOutput values. You can construct a concrete instance of `FleetSpotOptionsMaintenanceStrategiesPtrInput` via:

        FleetSpotOptionsMaintenanceStrategiesArgs{...}

or:

        nil

type FleetSpotOptionsMaintenanceStrategiesPtrOutput

type FleetSpotOptionsMaintenanceStrategiesPtrOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsMaintenanceStrategiesPtrOutput) CapacityRebalance

Nested argument containing the capacity rebalance for your fleet request. Defined below.

func (FleetSpotOptionsMaintenanceStrategiesPtrOutput) Elem

func (FleetSpotOptionsMaintenanceStrategiesPtrOutput) ElementType

func (FleetSpotOptionsMaintenanceStrategiesPtrOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput

func (o FleetSpotOptionsMaintenanceStrategiesPtrOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutput() FleetSpotOptionsMaintenanceStrategiesPtrOutput

func (FleetSpotOptionsMaintenanceStrategiesPtrOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext

func (o FleetSpotOptionsMaintenanceStrategiesPtrOutput) ToFleetSpotOptionsMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) FleetSpotOptionsMaintenanceStrategiesPtrOutput

type FleetSpotOptionsOutput

type FleetSpotOptionsOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsOutput) AllocationStrategy

func (o FleetSpotOptionsOutput) AllocationStrategy() pulumi.StringPtrOutput

How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.

func (FleetSpotOptionsOutput) ElementType

func (FleetSpotOptionsOutput) ElementType() reflect.Type

func (FleetSpotOptionsOutput) InstanceInterruptionBehavior

func (o FleetSpotOptionsOutput) InstanceInterruptionBehavior() pulumi.StringPtrOutput

Behavior when a Spot Instance is interrupted. Valid values: `hibernate`, `stop`, `terminate`. Default: `terminate`.

func (FleetSpotOptionsOutput) InstancePoolsToUseCount

func (o FleetSpotOptionsOutput) InstancePoolsToUseCount() pulumi.IntPtrOutput

Number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot `allocationStrategy` is set to `lowestPrice`. Default: `1`.

func (FleetSpotOptionsOutput) MaintenanceStrategies

Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.

func (FleetSpotOptionsOutput) ToFleetSpotOptionsOutput

func (o FleetSpotOptionsOutput) ToFleetSpotOptionsOutput() FleetSpotOptionsOutput

func (FleetSpotOptionsOutput) ToFleetSpotOptionsOutputWithContext

func (o FleetSpotOptionsOutput) ToFleetSpotOptionsOutputWithContext(ctx context.Context) FleetSpotOptionsOutput

func (FleetSpotOptionsOutput) ToFleetSpotOptionsPtrOutput

func (o FleetSpotOptionsOutput) ToFleetSpotOptionsPtrOutput() FleetSpotOptionsPtrOutput

func (FleetSpotOptionsOutput) ToFleetSpotOptionsPtrOutputWithContext

func (o FleetSpotOptionsOutput) ToFleetSpotOptionsPtrOutputWithContext(ctx context.Context) FleetSpotOptionsPtrOutput

type FleetSpotOptionsPtrInput

type FleetSpotOptionsPtrInput interface {
	pulumi.Input

	ToFleetSpotOptionsPtrOutput() FleetSpotOptionsPtrOutput
	ToFleetSpotOptionsPtrOutputWithContext(context.Context) FleetSpotOptionsPtrOutput
}

FleetSpotOptionsPtrInput is an input type that accepts FleetSpotOptionsArgs, FleetSpotOptionsPtr and FleetSpotOptionsPtrOutput values. You can construct a concrete instance of `FleetSpotOptionsPtrInput` via:

        FleetSpotOptionsArgs{...}

or:

        nil

type FleetSpotOptionsPtrOutput

type FleetSpotOptionsPtrOutput struct{ *pulumi.OutputState }

func (FleetSpotOptionsPtrOutput) AllocationStrategy

func (o FleetSpotOptionsPtrOutput) AllocationStrategy() pulumi.StringPtrOutput

How to allocate the target capacity across the Spot pools. Valid values: `diversified`, `lowestPrice`. Default: `lowestPrice`.

func (FleetSpotOptionsPtrOutput) Elem

func (FleetSpotOptionsPtrOutput) ElementType

func (FleetSpotOptionsPtrOutput) ElementType() reflect.Type

func (FleetSpotOptionsPtrOutput) InstanceInterruptionBehavior

func (o FleetSpotOptionsPtrOutput) InstanceInterruptionBehavior() pulumi.StringPtrOutput

Behavior when a Spot Instance is interrupted. Valid values: `hibernate`, `stop`, `terminate`. Default: `terminate`.

func (FleetSpotOptionsPtrOutput) InstancePoolsToUseCount

func (o FleetSpotOptionsPtrOutput) InstancePoolsToUseCount() pulumi.IntPtrOutput

Number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot `allocationStrategy` is set to `lowestPrice`. Default: `1`.

func (FleetSpotOptionsPtrOutput) MaintenanceStrategies

Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.

func (FleetSpotOptionsPtrOutput) ToFleetSpotOptionsPtrOutput

func (o FleetSpotOptionsPtrOutput) ToFleetSpotOptionsPtrOutput() FleetSpotOptionsPtrOutput

func (FleetSpotOptionsPtrOutput) ToFleetSpotOptionsPtrOutputWithContext

func (o FleetSpotOptionsPtrOutput) ToFleetSpotOptionsPtrOutputWithContext(ctx context.Context) FleetSpotOptionsPtrOutput

type FleetState

type FleetState struct {
	// Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: `no-termination`, `termination`. Defaults to `termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// Nested argument containing EC2 Launch Template configurations. Defined below.
	LaunchTemplateConfig FleetLaunchTemplateConfigPtrInput
	// Nested argument containing On-Demand configurations. Defined below.
	OnDemandOptions FleetOnDemandOptionsPtrInput
	// Whether EC2 Fleet should replace unhealthy instances. Defaults to `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrInput
	// Nested argument containing Spot configurations. Defined below.
	SpotOptions FleetSpotOptionsPtrInput
	Tags        pulumi.StringMapInput
	TagsAll     pulumi.StringMapInput
	// Nested argument containing target capacity configurations. Defined below.
	TargetCapacitySpecification FleetTargetCapacitySpecificationPtrInput
	// Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to `false`.
	TerminateInstances pulumi.BoolPtrInput
	// Whether running instances should be terminated when the EC2 Fleet expires. Defaults to `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: `maintain`, `request`. Defaults to `maintain`.
	Type pulumi.StringPtrInput
}

func (FleetState) ElementType

func (FleetState) ElementType() reflect.Type

type FleetTargetCapacitySpecification

type FleetTargetCapacitySpecification struct {
	// Default target capacity type. Valid values: `on-demand`, `spot`.
	DefaultTargetCapacityType string `pulumi:"defaultTargetCapacityType"`
	// The number of On-Demand units to request.
	OnDemandTargetCapacity *int `pulumi:"onDemandTargetCapacity"`
	// The number of Spot units to request.
	SpotTargetCapacity *int `pulumi:"spotTargetCapacity"`
	// The number of units to request, filled using `defaultTargetCapacityType`.
	TotalTargetCapacity int `pulumi:"totalTargetCapacity"`
}

type FleetTargetCapacitySpecificationArgs

type FleetTargetCapacitySpecificationArgs struct {
	// Default target capacity type. Valid values: `on-demand`, `spot`.
	DefaultTargetCapacityType pulumi.StringInput `pulumi:"defaultTargetCapacityType"`
	// The number of On-Demand units to request.
	OnDemandTargetCapacity pulumi.IntPtrInput `pulumi:"onDemandTargetCapacity"`
	// The number of Spot units to request.
	SpotTargetCapacity pulumi.IntPtrInput `pulumi:"spotTargetCapacity"`
	// The number of units to request, filled using `defaultTargetCapacityType`.
	TotalTargetCapacity pulumi.IntInput `pulumi:"totalTargetCapacity"`
}

func (FleetTargetCapacitySpecificationArgs) ElementType

func (FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationOutput

func (i FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationOutput() FleetTargetCapacitySpecificationOutput

func (FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationOutputWithContext

func (i FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationOutputWithContext(ctx context.Context) FleetTargetCapacitySpecificationOutput

func (FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationPtrOutput

func (i FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationPtrOutput() FleetTargetCapacitySpecificationPtrOutput

func (FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationPtrOutputWithContext

func (i FleetTargetCapacitySpecificationArgs) ToFleetTargetCapacitySpecificationPtrOutputWithContext(ctx context.Context) FleetTargetCapacitySpecificationPtrOutput

type FleetTargetCapacitySpecificationInput

type FleetTargetCapacitySpecificationInput interface {
	pulumi.Input

	ToFleetTargetCapacitySpecificationOutput() FleetTargetCapacitySpecificationOutput
	ToFleetTargetCapacitySpecificationOutputWithContext(context.Context) FleetTargetCapacitySpecificationOutput
}

FleetTargetCapacitySpecificationInput is an input type that accepts FleetTargetCapacitySpecificationArgs and FleetTargetCapacitySpecificationOutput values. You can construct a concrete instance of `FleetTargetCapacitySpecificationInput` via:

FleetTargetCapacitySpecificationArgs{...}

type FleetTargetCapacitySpecificationOutput

type FleetTargetCapacitySpecificationOutput struct{ *pulumi.OutputState }

func (FleetTargetCapacitySpecificationOutput) DefaultTargetCapacityType

func (o FleetTargetCapacitySpecificationOutput) DefaultTargetCapacityType() pulumi.StringOutput

Default target capacity type. Valid values: `on-demand`, `spot`.

func (FleetTargetCapacitySpecificationOutput) ElementType

func (FleetTargetCapacitySpecificationOutput) OnDemandTargetCapacity

func (o FleetTargetCapacitySpecificationOutput) OnDemandTargetCapacity() pulumi.IntPtrOutput

The number of On-Demand units to request.

func (FleetTargetCapacitySpecificationOutput) SpotTargetCapacity

The number of Spot units to request.

func (FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationOutput

func (o FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationOutput() FleetTargetCapacitySpecificationOutput

func (FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationOutputWithContext

func (o FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationOutputWithContext(ctx context.Context) FleetTargetCapacitySpecificationOutput

func (FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationPtrOutput

func (o FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationPtrOutput() FleetTargetCapacitySpecificationPtrOutput

func (FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationPtrOutputWithContext

func (o FleetTargetCapacitySpecificationOutput) ToFleetTargetCapacitySpecificationPtrOutputWithContext(ctx context.Context) FleetTargetCapacitySpecificationPtrOutput

func (FleetTargetCapacitySpecificationOutput) TotalTargetCapacity

The number of units to request, filled using `defaultTargetCapacityType`.

type FleetTargetCapacitySpecificationPtrInput

type FleetTargetCapacitySpecificationPtrInput interface {
	pulumi.Input

	ToFleetTargetCapacitySpecificationPtrOutput() FleetTargetCapacitySpecificationPtrOutput
	ToFleetTargetCapacitySpecificationPtrOutputWithContext(context.Context) FleetTargetCapacitySpecificationPtrOutput
}

FleetTargetCapacitySpecificationPtrInput is an input type that accepts FleetTargetCapacitySpecificationArgs, FleetTargetCapacitySpecificationPtr and FleetTargetCapacitySpecificationPtrOutput values. You can construct a concrete instance of `FleetTargetCapacitySpecificationPtrInput` via:

        FleetTargetCapacitySpecificationArgs{...}

or:

        nil

type FleetTargetCapacitySpecificationPtrOutput

type FleetTargetCapacitySpecificationPtrOutput struct{ *pulumi.OutputState }

func (FleetTargetCapacitySpecificationPtrOutput) DefaultTargetCapacityType

Default target capacity type. Valid values: `on-demand`, `spot`.

func (FleetTargetCapacitySpecificationPtrOutput) Elem

func (FleetTargetCapacitySpecificationPtrOutput) ElementType

func (FleetTargetCapacitySpecificationPtrOutput) OnDemandTargetCapacity

The number of On-Demand units to request.

func (FleetTargetCapacitySpecificationPtrOutput) SpotTargetCapacity

The number of Spot units to request.

func (FleetTargetCapacitySpecificationPtrOutput) ToFleetTargetCapacitySpecificationPtrOutput

func (o FleetTargetCapacitySpecificationPtrOutput) ToFleetTargetCapacitySpecificationPtrOutput() FleetTargetCapacitySpecificationPtrOutput

func (FleetTargetCapacitySpecificationPtrOutput) ToFleetTargetCapacitySpecificationPtrOutputWithContext

func (o FleetTargetCapacitySpecificationPtrOutput) ToFleetTargetCapacitySpecificationPtrOutputWithContext(ctx context.Context) FleetTargetCapacitySpecificationPtrOutput

func (FleetTargetCapacitySpecificationPtrOutput) TotalTargetCapacity

The number of units to request, filled using `defaultTargetCapacityType`.

type FlowLog

type FlowLog struct {
	pulumi.CustomResourceState

	// The ARN of the Flow Log.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Elastic Network Interface ID to attach to
	EniId pulumi.StringPtrOutput `pulumi:"eniId"`
	// The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group
	IamRoleArn pulumi.StringPtrOutput `pulumi:"iamRoleArn"`
	// The ARN of the logging destination.
	LogDestination pulumi.StringOutput `pulumi:"logDestination"`
	// The type of the logging destination. Valid values: `cloud-watch-logs`, `s3`. Default: `cloud-watch-logs`.
	LogDestinationType pulumi.StringPtrOutput `pulumi:"logDestinationType"`
	// The fields to include in the flow log record, in the order in which they should appear.
	LogFormat pulumi.StringOutput `pulumi:"logFormat"`
	// *Deprecated:* Use `logDestination` instead. The name of the CloudWatch log group.
	//
	// Deprecated: use 'log_destination' argument instead
	LogGroupName pulumi.StringOutput `pulumi:"logGroupName"`
	// The maximum interval of time
	// during which a flow of packets is captured and aggregated into a flow
	// log record. Valid Values: `60` seconds (1 minute) or `600` seconds (10
	// minutes). Default: `600`.
	MaxAggregationInterval pulumi.IntPtrOutput `pulumi:"maxAggregationInterval"`
	// Subnet ID to attach to
	SubnetId pulumi.StringPtrOutput `pulumi:"subnetId"`
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The type of traffic to capture. Valid values: `ACCEPT`,`REJECT`, `ALL`.
	TrafficType pulumi.StringOutput `pulumi:"trafficType"`
	// VPC ID to attach to
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
}

Provides a VPC/Subnet/ENI Flow Log to capture IP traffic for a specific network interface, subnet, or VPC. Logs are sent to a CloudWatch Log Group or a S3 Bucket.

## Example Usage ### CloudWatch Logging

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/cloudwatch"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleLogGroup, err := cloudwatch.NewLogGroup(ctx, "exampleLogGroup", nil)
		if err != nil {
			return err
		}
		exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.Any(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"Version\": \"2012-10-17\",\n", "  \"Statement\": [\n", "    {\n", "      \"Sid\": \"\",\n", "      \"Effect\": \"Allow\",\n", "      \"Principal\": {\n", "        \"Service\": \"vpc-flow-logs.amazonaws.com\"\n", "      },\n", "      \"Action\": \"sts:AssumeRole\"\n", "    }\n", "  ]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewFlowLog(ctx, "exampleFlowLog", &ec2.FlowLogArgs{
			IamRoleArn:     exampleRole.Arn,
			LogDestination: exampleLogGroup.Arn,
			TrafficType:    pulumi.String("ALL"),
			VpcId:          pulumi.Any(aws_vpc.Example.Id),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicy(ctx, "exampleRolePolicy", &iam.RolePolicyArgs{
			Role:   exampleRole.ID(),
			Policy: pulumi.Any(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"Version\": \"2012-10-17\",\n", "  \"Statement\": [\n", "    {\n", "      \"Action\": [\n", "        \"logs:CreateLogGroup\",\n", "        \"logs:CreateLogStream\",\n", "        \"logs:PutLogEvents\",\n", "        \"logs:DescribeLogGroups\",\n", "        \"logs:DescribeLogStreams\"\n", "      ],\n", "      \"Effect\": \"Allow\",\n", "      \"Resource\": \"*\"\n", "    }\n", "  ]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### S3 Logging

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleBucket, err := s3.NewBucket(ctx, "exampleBucket", nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewFlowLog(ctx, "exampleFlowLog", &ec2.FlowLogArgs{
			LogDestination:     exampleBucket.Arn,
			LogDestinationType: pulumi.String("s3"),
			TrafficType:        pulumi.String("ALL"),
			VpcId:              pulumi.Any(aws_vpc.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Flow Logs can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/flowLog:FlowLog test_flow_log fl-1a2b3c4d

```

func GetFlowLog

func GetFlowLog(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FlowLogState, opts ...pulumi.ResourceOption) (*FlowLog, error)

GetFlowLog gets an existing FlowLog resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFlowLog

func NewFlowLog(ctx *pulumi.Context,
	name string, args *FlowLogArgs, opts ...pulumi.ResourceOption) (*FlowLog, error)

NewFlowLog registers a new resource with the given unique name, arguments, and options.

func (*FlowLog) ElementType

func (*FlowLog) ElementType() reflect.Type

func (*FlowLog) ToFlowLogOutput

func (i *FlowLog) ToFlowLogOutput() FlowLogOutput

func (*FlowLog) ToFlowLogOutputWithContext

func (i *FlowLog) ToFlowLogOutputWithContext(ctx context.Context) FlowLogOutput

func (*FlowLog) ToFlowLogPtrOutput

func (i *FlowLog) ToFlowLogPtrOutput() FlowLogPtrOutput

func (*FlowLog) ToFlowLogPtrOutputWithContext

func (i *FlowLog) ToFlowLogPtrOutputWithContext(ctx context.Context) FlowLogPtrOutput

type FlowLogArgs

type FlowLogArgs struct {
	// Elastic Network Interface ID to attach to
	EniId pulumi.StringPtrInput
	// The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group
	IamRoleArn pulumi.StringPtrInput
	// The ARN of the logging destination.
	LogDestination pulumi.StringPtrInput
	// The type of the logging destination. Valid values: `cloud-watch-logs`, `s3`. Default: `cloud-watch-logs`.
	LogDestinationType pulumi.StringPtrInput
	// The fields to include in the flow log record, in the order in which they should appear.
	LogFormat pulumi.StringPtrInput
	// *Deprecated:* Use `logDestination` instead. The name of the CloudWatch log group.
	//
	// Deprecated: use 'log_destination' argument instead
	LogGroupName pulumi.StringPtrInput
	// The maximum interval of time
	// during which a flow of packets is captured and aggregated into a flow
	// log record. Valid Values: `60` seconds (1 minute) or `600` seconds (10
	// minutes). Default: `600`.
	MaxAggregationInterval pulumi.IntPtrInput
	// Subnet ID to attach to
	SubnetId pulumi.StringPtrInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The type of traffic to capture. Valid values: `ACCEPT`,`REJECT`, `ALL`.
	TrafficType pulumi.StringInput
	// VPC ID to attach to
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a FlowLog resource.

func (FlowLogArgs) ElementType

func (FlowLogArgs) ElementType() reflect.Type

type FlowLogArray

type FlowLogArray []FlowLogInput

func (FlowLogArray) ElementType

func (FlowLogArray) ElementType() reflect.Type

func (FlowLogArray) ToFlowLogArrayOutput

func (i FlowLogArray) ToFlowLogArrayOutput() FlowLogArrayOutput

func (FlowLogArray) ToFlowLogArrayOutputWithContext

func (i FlowLogArray) ToFlowLogArrayOutputWithContext(ctx context.Context) FlowLogArrayOutput

type FlowLogArrayInput

type FlowLogArrayInput interface {
	pulumi.Input

	ToFlowLogArrayOutput() FlowLogArrayOutput
	ToFlowLogArrayOutputWithContext(context.Context) FlowLogArrayOutput
}

FlowLogArrayInput is an input type that accepts FlowLogArray and FlowLogArrayOutput values. You can construct a concrete instance of `FlowLogArrayInput` via:

FlowLogArray{ FlowLogArgs{...} }

type FlowLogArrayOutput

type FlowLogArrayOutput struct{ *pulumi.OutputState }

func (FlowLogArrayOutput) ElementType

func (FlowLogArrayOutput) ElementType() reflect.Type

func (FlowLogArrayOutput) Index

func (FlowLogArrayOutput) ToFlowLogArrayOutput

func (o FlowLogArrayOutput) ToFlowLogArrayOutput() FlowLogArrayOutput

func (FlowLogArrayOutput) ToFlowLogArrayOutputWithContext

func (o FlowLogArrayOutput) ToFlowLogArrayOutputWithContext(ctx context.Context) FlowLogArrayOutput

type FlowLogInput

type FlowLogInput interface {
	pulumi.Input

	ToFlowLogOutput() FlowLogOutput
	ToFlowLogOutputWithContext(ctx context.Context) FlowLogOutput
}

type FlowLogMap

type FlowLogMap map[string]FlowLogInput

func (FlowLogMap) ElementType

func (FlowLogMap) ElementType() reflect.Type

func (FlowLogMap) ToFlowLogMapOutput

func (i FlowLogMap) ToFlowLogMapOutput() FlowLogMapOutput

func (FlowLogMap) ToFlowLogMapOutputWithContext

func (i FlowLogMap) ToFlowLogMapOutputWithContext(ctx context.Context) FlowLogMapOutput

type FlowLogMapInput

type FlowLogMapInput interface {
	pulumi.Input

	ToFlowLogMapOutput() FlowLogMapOutput
	ToFlowLogMapOutputWithContext(context.Context) FlowLogMapOutput
}

FlowLogMapInput is an input type that accepts FlowLogMap and FlowLogMapOutput values. You can construct a concrete instance of `FlowLogMapInput` via:

FlowLogMap{ "key": FlowLogArgs{...} }

type FlowLogMapOutput

type FlowLogMapOutput struct{ *pulumi.OutputState }

func (FlowLogMapOutput) ElementType

func (FlowLogMapOutput) ElementType() reflect.Type

func (FlowLogMapOutput) MapIndex

func (FlowLogMapOutput) ToFlowLogMapOutput

func (o FlowLogMapOutput) ToFlowLogMapOutput() FlowLogMapOutput

func (FlowLogMapOutput) ToFlowLogMapOutputWithContext

func (o FlowLogMapOutput) ToFlowLogMapOutputWithContext(ctx context.Context) FlowLogMapOutput

type FlowLogOutput

type FlowLogOutput struct{ *pulumi.OutputState }

func (FlowLogOutput) ElementType

func (FlowLogOutput) ElementType() reflect.Type

func (FlowLogOutput) ToFlowLogOutput

func (o FlowLogOutput) ToFlowLogOutput() FlowLogOutput

func (FlowLogOutput) ToFlowLogOutputWithContext

func (o FlowLogOutput) ToFlowLogOutputWithContext(ctx context.Context) FlowLogOutput

func (FlowLogOutput) ToFlowLogPtrOutput

func (o FlowLogOutput) ToFlowLogPtrOutput() FlowLogPtrOutput

func (FlowLogOutput) ToFlowLogPtrOutputWithContext

func (o FlowLogOutput) ToFlowLogPtrOutputWithContext(ctx context.Context) FlowLogPtrOutput

type FlowLogPtrInput

type FlowLogPtrInput interface {
	pulumi.Input

	ToFlowLogPtrOutput() FlowLogPtrOutput
	ToFlowLogPtrOutputWithContext(ctx context.Context) FlowLogPtrOutput
}

type FlowLogPtrOutput

type FlowLogPtrOutput struct{ *pulumi.OutputState }

func (FlowLogPtrOutput) Elem added in v4.15.0

func (FlowLogPtrOutput) ElementType

func (FlowLogPtrOutput) ElementType() reflect.Type

func (FlowLogPtrOutput) ToFlowLogPtrOutput

func (o FlowLogPtrOutput) ToFlowLogPtrOutput() FlowLogPtrOutput

func (FlowLogPtrOutput) ToFlowLogPtrOutputWithContext

func (o FlowLogPtrOutput) ToFlowLogPtrOutputWithContext(ctx context.Context) FlowLogPtrOutput

type FlowLogState

type FlowLogState struct {
	// The ARN of the Flow Log.
	Arn pulumi.StringPtrInput
	// Elastic Network Interface ID to attach to
	EniId pulumi.StringPtrInput
	// The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group
	IamRoleArn pulumi.StringPtrInput
	// The ARN of the logging destination.
	LogDestination pulumi.StringPtrInput
	// The type of the logging destination. Valid values: `cloud-watch-logs`, `s3`. Default: `cloud-watch-logs`.
	LogDestinationType pulumi.StringPtrInput
	// The fields to include in the flow log record, in the order in which they should appear.
	LogFormat pulumi.StringPtrInput
	// *Deprecated:* Use `logDestination` instead. The name of the CloudWatch log group.
	//
	// Deprecated: use 'log_destination' argument instead
	LogGroupName pulumi.StringPtrInput
	// The maximum interval of time
	// during which a flow of packets is captured and aggregated into a flow
	// log record. Valid Values: `60` seconds (1 minute) or `600` seconds (10
	// minutes). Default: `600`.
	MaxAggregationInterval pulumi.IntPtrInput
	// Subnet ID to attach to
	SubnetId pulumi.StringPtrInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The type of traffic to capture. Valid values: `ACCEPT`,`REJECT`, `ALL`.
	TrafficType pulumi.StringPtrInput
	// VPC ID to attach to
	VpcId pulumi.StringPtrInput
}

func (FlowLogState) ElementType

func (FlowLogState) ElementType() reflect.Type

type GetAmiBlockDeviceMapping

type GetAmiBlockDeviceMapping struct {
	// The physical name of the device.
	DeviceName string `pulumi:"deviceName"`
	// Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g. `ebs.volume_size` or `ebs["volumeSize"]`) rather than accessed through the first element of a list (e.g. `ebs[0].volume_size`).
	Ebs map[string]string `pulumi:"ebs"`
	// Suppresses the specified device included in the block device mapping of the AMI.
	NoDevice string `pulumi:"noDevice"`
	// The virtual device name (for instance stores).
	VirtualName string `pulumi:"virtualName"`
}

type GetAmiBlockDeviceMappingArgs

type GetAmiBlockDeviceMappingArgs struct {
	// The physical name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g. `ebs.volume_size` or `ebs["volumeSize"]`) rather than accessed through the first element of a list (e.g. `ebs[0].volume_size`).
	Ebs pulumi.StringMapInput `pulumi:"ebs"`
	// Suppresses the specified device included in the block device mapping of the AMI.
	NoDevice pulumi.StringInput `pulumi:"noDevice"`
	// The virtual device name (for instance stores).
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (GetAmiBlockDeviceMappingArgs) ElementType

func (GetAmiBlockDeviceMappingArgs) ToGetAmiBlockDeviceMappingOutput

func (i GetAmiBlockDeviceMappingArgs) ToGetAmiBlockDeviceMappingOutput() GetAmiBlockDeviceMappingOutput

func (GetAmiBlockDeviceMappingArgs) ToGetAmiBlockDeviceMappingOutputWithContext

func (i GetAmiBlockDeviceMappingArgs) ToGetAmiBlockDeviceMappingOutputWithContext(ctx context.Context) GetAmiBlockDeviceMappingOutput

type GetAmiBlockDeviceMappingArray

type GetAmiBlockDeviceMappingArray []GetAmiBlockDeviceMappingInput

func (GetAmiBlockDeviceMappingArray) ElementType

func (GetAmiBlockDeviceMappingArray) ToGetAmiBlockDeviceMappingArrayOutput

func (i GetAmiBlockDeviceMappingArray) ToGetAmiBlockDeviceMappingArrayOutput() GetAmiBlockDeviceMappingArrayOutput

func (GetAmiBlockDeviceMappingArray) ToGetAmiBlockDeviceMappingArrayOutputWithContext

func (i GetAmiBlockDeviceMappingArray) ToGetAmiBlockDeviceMappingArrayOutputWithContext(ctx context.Context) GetAmiBlockDeviceMappingArrayOutput

type GetAmiBlockDeviceMappingArrayInput

type GetAmiBlockDeviceMappingArrayInput interface {
	pulumi.Input

	ToGetAmiBlockDeviceMappingArrayOutput() GetAmiBlockDeviceMappingArrayOutput
	ToGetAmiBlockDeviceMappingArrayOutputWithContext(context.Context) GetAmiBlockDeviceMappingArrayOutput
}

GetAmiBlockDeviceMappingArrayInput is an input type that accepts GetAmiBlockDeviceMappingArray and GetAmiBlockDeviceMappingArrayOutput values. You can construct a concrete instance of `GetAmiBlockDeviceMappingArrayInput` via:

GetAmiBlockDeviceMappingArray{ GetAmiBlockDeviceMappingArgs{...} }

type GetAmiBlockDeviceMappingArrayOutput

type GetAmiBlockDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (GetAmiBlockDeviceMappingArrayOutput) ElementType

func (GetAmiBlockDeviceMappingArrayOutput) Index

func (GetAmiBlockDeviceMappingArrayOutput) ToGetAmiBlockDeviceMappingArrayOutput

func (o GetAmiBlockDeviceMappingArrayOutput) ToGetAmiBlockDeviceMappingArrayOutput() GetAmiBlockDeviceMappingArrayOutput

func (GetAmiBlockDeviceMappingArrayOutput) ToGetAmiBlockDeviceMappingArrayOutputWithContext

func (o GetAmiBlockDeviceMappingArrayOutput) ToGetAmiBlockDeviceMappingArrayOutputWithContext(ctx context.Context) GetAmiBlockDeviceMappingArrayOutput

type GetAmiBlockDeviceMappingInput

type GetAmiBlockDeviceMappingInput interface {
	pulumi.Input

	ToGetAmiBlockDeviceMappingOutput() GetAmiBlockDeviceMappingOutput
	ToGetAmiBlockDeviceMappingOutputWithContext(context.Context) GetAmiBlockDeviceMappingOutput
}

GetAmiBlockDeviceMappingInput is an input type that accepts GetAmiBlockDeviceMappingArgs and GetAmiBlockDeviceMappingOutput values. You can construct a concrete instance of `GetAmiBlockDeviceMappingInput` via:

GetAmiBlockDeviceMappingArgs{...}

type GetAmiBlockDeviceMappingOutput

type GetAmiBlockDeviceMappingOutput struct{ *pulumi.OutputState }

func (GetAmiBlockDeviceMappingOutput) DeviceName

The physical name of the device.

func (GetAmiBlockDeviceMappingOutput) Ebs

Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g. `ebs.volume_size` or `ebs["volumeSize"]`) rather than accessed through the first element of a list (e.g. `ebs[0].volume_size`).

func (GetAmiBlockDeviceMappingOutput) ElementType

func (GetAmiBlockDeviceMappingOutput) NoDevice

Suppresses the specified device included in the block device mapping of the AMI.

func (GetAmiBlockDeviceMappingOutput) ToGetAmiBlockDeviceMappingOutput

func (o GetAmiBlockDeviceMappingOutput) ToGetAmiBlockDeviceMappingOutput() GetAmiBlockDeviceMappingOutput

func (GetAmiBlockDeviceMappingOutput) ToGetAmiBlockDeviceMappingOutputWithContext

func (o GetAmiBlockDeviceMappingOutput) ToGetAmiBlockDeviceMappingOutputWithContext(ctx context.Context) GetAmiBlockDeviceMappingOutput

func (GetAmiBlockDeviceMappingOutput) VirtualName

The virtual device name (for instance stores).

type GetAmiFilter

type GetAmiFilter struct {
	// The name of the AMI that was provided during image creation.
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetAmiFilterArgs

type GetAmiFilterArgs struct {
	// The name of the AMI that was provided during image creation.
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetAmiFilterArgs) ElementType

func (GetAmiFilterArgs) ElementType() reflect.Type

func (GetAmiFilterArgs) ToGetAmiFilterOutput

func (i GetAmiFilterArgs) ToGetAmiFilterOutput() GetAmiFilterOutput

func (GetAmiFilterArgs) ToGetAmiFilterOutputWithContext

func (i GetAmiFilterArgs) ToGetAmiFilterOutputWithContext(ctx context.Context) GetAmiFilterOutput

type GetAmiFilterArray

type GetAmiFilterArray []GetAmiFilterInput

func (GetAmiFilterArray) ElementType

func (GetAmiFilterArray) ElementType() reflect.Type

func (GetAmiFilterArray) ToGetAmiFilterArrayOutput

func (i GetAmiFilterArray) ToGetAmiFilterArrayOutput() GetAmiFilterArrayOutput

func (GetAmiFilterArray) ToGetAmiFilterArrayOutputWithContext

func (i GetAmiFilterArray) ToGetAmiFilterArrayOutputWithContext(ctx context.Context) GetAmiFilterArrayOutput

type GetAmiFilterArrayInput

type GetAmiFilterArrayInput interface {
	pulumi.Input

	ToGetAmiFilterArrayOutput() GetAmiFilterArrayOutput
	ToGetAmiFilterArrayOutputWithContext(context.Context) GetAmiFilterArrayOutput
}

GetAmiFilterArrayInput is an input type that accepts GetAmiFilterArray and GetAmiFilterArrayOutput values. You can construct a concrete instance of `GetAmiFilterArrayInput` via:

GetAmiFilterArray{ GetAmiFilterArgs{...} }

type GetAmiFilterArrayOutput

type GetAmiFilterArrayOutput struct{ *pulumi.OutputState }

func (GetAmiFilterArrayOutput) ElementType

func (GetAmiFilterArrayOutput) ElementType() reflect.Type

func (GetAmiFilterArrayOutput) Index

func (GetAmiFilterArrayOutput) ToGetAmiFilterArrayOutput

func (o GetAmiFilterArrayOutput) ToGetAmiFilterArrayOutput() GetAmiFilterArrayOutput

func (GetAmiFilterArrayOutput) ToGetAmiFilterArrayOutputWithContext

func (o GetAmiFilterArrayOutput) ToGetAmiFilterArrayOutputWithContext(ctx context.Context) GetAmiFilterArrayOutput

type GetAmiFilterInput

type GetAmiFilterInput interface {
	pulumi.Input

	ToGetAmiFilterOutput() GetAmiFilterOutput
	ToGetAmiFilterOutputWithContext(context.Context) GetAmiFilterOutput
}

GetAmiFilterInput is an input type that accepts GetAmiFilterArgs and GetAmiFilterOutput values. You can construct a concrete instance of `GetAmiFilterInput` via:

GetAmiFilterArgs{...}

type GetAmiFilterOutput

type GetAmiFilterOutput struct{ *pulumi.OutputState }

func (GetAmiFilterOutput) ElementType

func (GetAmiFilterOutput) ElementType() reflect.Type

func (GetAmiFilterOutput) Name

The name of the AMI that was provided during image creation.

func (GetAmiFilterOutput) ToGetAmiFilterOutput

func (o GetAmiFilterOutput) ToGetAmiFilterOutput() GetAmiFilterOutput

func (GetAmiFilterOutput) ToGetAmiFilterOutputWithContext

func (o GetAmiFilterOutput) ToGetAmiFilterOutputWithContext(ctx context.Context) GetAmiFilterOutput

func (GetAmiFilterOutput) Values

type GetAmiIdsArgs

type GetAmiIdsArgs struct {
	// Limit search to users with *explicit* launch
	// permission on  the image. Valid items are the numeric account ID or `self`.
	ExecutableUsers []string `pulumi:"executableUsers"`
	// One or more name/value pairs to filter off of. There
	// are several valid keys, for a full reference, check out
	// [describe-images in the AWS CLI reference][1].
	Filters []GetAmiIdsFilter `pulumi:"filters"`
	// A regex string to apply to the AMI list returned
	// by AWS. This allows more advanced filtering not supported from the AWS API.
	// This filtering is done locally on what AWS returns, and could have a performance
	// impact if the result is large. It is recommended to combine this with other
	// options to narrow down the list AWS returns.
	NameRegex *string `pulumi:"nameRegex"`
	// List of AMI owners to limit search. At least 1 value must be specified. Valid values: an AWS account ID, `self` (the current account), or an AWS owner alias (e.g. `amazon`, `aws-marketplace`, `microsoft`).
	Owners []string `pulumi:"owners"`
	// Used to sort AMIs by creation time.
	SortAscending *bool `pulumi:"sortAscending"`
}

A collection of arguments for invoking getAmiIds.

type GetAmiIdsFilter

type GetAmiIdsFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetAmiIdsFilterArgs

type GetAmiIdsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetAmiIdsFilterArgs) ElementType

func (GetAmiIdsFilterArgs) ElementType() reflect.Type

func (GetAmiIdsFilterArgs) ToGetAmiIdsFilterOutput

func (i GetAmiIdsFilterArgs) ToGetAmiIdsFilterOutput() GetAmiIdsFilterOutput

func (GetAmiIdsFilterArgs) ToGetAmiIdsFilterOutputWithContext

func (i GetAmiIdsFilterArgs) ToGetAmiIdsFilterOutputWithContext(ctx context.Context) GetAmiIdsFilterOutput

type GetAmiIdsFilterArray

type GetAmiIdsFilterArray []GetAmiIdsFilterInput

func (GetAmiIdsFilterArray) ElementType

func (GetAmiIdsFilterArray) ElementType() reflect.Type

func (GetAmiIdsFilterArray) ToGetAmiIdsFilterArrayOutput

func (i GetAmiIdsFilterArray) ToGetAmiIdsFilterArrayOutput() GetAmiIdsFilterArrayOutput

func (GetAmiIdsFilterArray) ToGetAmiIdsFilterArrayOutputWithContext

func (i GetAmiIdsFilterArray) ToGetAmiIdsFilterArrayOutputWithContext(ctx context.Context) GetAmiIdsFilterArrayOutput

type GetAmiIdsFilterArrayInput

type GetAmiIdsFilterArrayInput interface {
	pulumi.Input

	ToGetAmiIdsFilterArrayOutput() GetAmiIdsFilterArrayOutput
	ToGetAmiIdsFilterArrayOutputWithContext(context.Context) GetAmiIdsFilterArrayOutput
}

GetAmiIdsFilterArrayInput is an input type that accepts GetAmiIdsFilterArray and GetAmiIdsFilterArrayOutput values. You can construct a concrete instance of `GetAmiIdsFilterArrayInput` via:

GetAmiIdsFilterArray{ GetAmiIdsFilterArgs{...} }

type GetAmiIdsFilterArrayOutput

type GetAmiIdsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetAmiIdsFilterArrayOutput) ElementType

func (GetAmiIdsFilterArrayOutput) ElementType() reflect.Type

func (GetAmiIdsFilterArrayOutput) Index

func (GetAmiIdsFilterArrayOutput) ToGetAmiIdsFilterArrayOutput

func (o GetAmiIdsFilterArrayOutput) ToGetAmiIdsFilterArrayOutput() GetAmiIdsFilterArrayOutput

func (GetAmiIdsFilterArrayOutput) ToGetAmiIdsFilterArrayOutputWithContext

func (o GetAmiIdsFilterArrayOutput) ToGetAmiIdsFilterArrayOutputWithContext(ctx context.Context) GetAmiIdsFilterArrayOutput

type GetAmiIdsFilterInput

type GetAmiIdsFilterInput interface {
	pulumi.Input

	ToGetAmiIdsFilterOutput() GetAmiIdsFilterOutput
	ToGetAmiIdsFilterOutputWithContext(context.Context) GetAmiIdsFilterOutput
}

GetAmiIdsFilterInput is an input type that accepts GetAmiIdsFilterArgs and GetAmiIdsFilterOutput values. You can construct a concrete instance of `GetAmiIdsFilterInput` via:

GetAmiIdsFilterArgs{...}

type GetAmiIdsFilterOutput

type GetAmiIdsFilterOutput struct{ *pulumi.OutputState }

func (GetAmiIdsFilterOutput) ElementType

func (GetAmiIdsFilterOutput) ElementType() reflect.Type

func (GetAmiIdsFilterOutput) Name

func (GetAmiIdsFilterOutput) ToGetAmiIdsFilterOutput

func (o GetAmiIdsFilterOutput) ToGetAmiIdsFilterOutput() GetAmiIdsFilterOutput

func (GetAmiIdsFilterOutput) ToGetAmiIdsFilterOutputWithContext

func (o GetAmiIdsFilterOutput) ToGetAmiIdsFilterOutputWithContext(ctx context.Context) GetAmiIdsFilterOutput

func (GetAmiIdsFilterOutput) Values

type GetAmiIdsResult

type GetAmiIdsResult struct {
	ExecutableUsers []string          `pulumi:"executableUsers"`
	Filters         []GetAmiIdsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id            string   `pulumi:"id"`
	Ids           []string `pulumi:"ids"`
	NameRegex     *string  `pulumi:"nameRegex"`
	Owners        []string `pulumi:"owners"`
	SortAscending *bool    `pulumi:"sortAscending"`
}

A collection of values returned by getAmiIds.

func GetAmiIds

func GetAmiIds(ctx *pulumi.Context, args *GetAmiIdsArgs, opts ...pulumi.InvokeOption) (*GetAmiIdsResult, error)

Use this data source to get a list of AMI IDs matching the specified criteria.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetAmiIds(ctx, &ec2.GetAmiIdsArgs{
			Filters: []ec2.GetAmiIdsFilter{
				ec2.GetAmiIdsFilter{
					Name: "name",
					Values: []string{
						"ubuntu/images/ubuntu-*-*-amd64-server-*",
					},
				},
			},
			Owners: []string{
				"099720109477",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAmiProductCode

type GetAmiProductCode struct {
	ProductCodeId   string `pulumi:"productCodeId"`
	ProductCodeType string `pulumi:"productCodeType"`
}

type GetAmiProductCodeArgs

type GetAmiProductCodeArgs struct {
	ProductCodeId   pulumi.StringInput `pulumi:"productCodeId"`
	ProductCodeType pulumi.StringInput `pulumi:"productCodeType"`
}

func (GetAmiProductCodeArgs) ElementType

func (GetAmiProductCodeArgs) ElementType() reflect.Type

func (GetAmiProductCodeArgs) ToGetAmiProductCodeOutput

func (i GetAmiProductCodeArgs) ToGetAmiProductCodeOutput() GetAmiProductCodeOutput

func (GetAmiProductCodeArgs) ToGetAmiProductCodeOutputWithContext

func (i GetAmiProductCodeArgs) ToGetAmiProductCodeOutputWithContext(ctx context.Context) GetAmiProductCodeOutput

type GetAmiProductCodeArray

type GetAmiProductCodeArray []GetAmiProductCodeInput

func (GetAmiProductCodeArray) ElementType

func (GetAmiProductCodeArray) ElementType() reflect.Type

func (GetAmiProductCodeArray) ToGetAmiProductCodeArrayOutput

func (i GetAmiProductCodeArray) ToGetAmiProductCodeArrayOutput() GetAmiProductCodeArrayOutput

func (GetAmiProductCodeArray) ToGetAmiProductCodeArrayOutputWithContext

func (i GetAmiProductCodeArray) ToGetAmiProductCodeArrayOutputWithContext(ctx context.Context) GetAmiProductCodeArrayOutput

type GetAmiProductCodeArrayInput

type GetAmiProductCodeArrayInput interface {
	pulumi.Input

	ToGetAmiProductCodeArrayOutput() GetAmiProductCodeArrayOutput
	ToGetAmiProductCodeArrayOutputWithContext(context.Context) GetAmiProductCodeArrayOutput
}

GetAmiProductCodeArrayInput is an input type that accepts GetAmiProductCodeArray and GetAmiProductCodeArrayOutput values. You can construct a concrete instance of `GetAmiProductCodeArrayInput` via:

GetAmiProductCodeArray{ GetAmiProductCodeArgs{...} }

type GetAmiProductCodeArrayOutput

type GetAmiProductCodeArrayOutput struct{ *pulumi.OutputState }

func (GetAmiProductCodeArrayOutput) ElementType

func (GetAmiProductCodeArrayOutput) Index

func (GetAmiProductCodeArrayOutput) ToGetAmiProductCodeArrayOutput

func (o GetAmiProductCodeArrayOutput) ToGetAmiProductCodeArrayOutput() GetAmiProductCodeArrayOutput

func (GetAmiProductCodeArrayOutput) ToGetAmiProductCodeArrayOutputWithContext

func (o GetAmiProductCodeArrayOutput) ToGetAmiProductCodeArrayOutputWithContext(ctx context.Context) GetAmiProductCodeArrayOutput

type GetAmiProductCodeInput

type GetAmiProductCodeInput interface {
	pulumi.Input

	ToGetAmiProductCodeOutput() GetAmiProductCodeOutput
	ToGetAmiProductCodeOutputWithContext(context.Context) GetAmiProductCodeOutput
}

GetAmiProductCodeInput is an input type that accepts GetAmiProductCodeArgs and GetAmiProductCodeOutput values. You can construct a concrete instance of `GetAmiProductCodeInput` via:

GetAmiProductCodeArgs{...}

type GetAmiProductCodeOutput

type GetAmiProductCodeOutput struct{ *pulumi.OutputState }

func (GetAmiProductCodeOutput) ElementType

func (GetAmiProductCodeOutput) ElementType() reflect.Type

func (GetAmiProductCodeOutput) ProductCodeId

func (o GetAmiProductCodeOutput) ProductCodeId() pulumi.StringOutput

func (GetAmiProductCodeOutput) ProductCodeType

func (o GetAmiProductCodeOutput) ProductCodeType() pulumi.StringOutput

func (GetAmiProductCodeOutput) ToGetAmiProductCodeOutput

func (o GetAmiProductCodeOutput) ToGetAmiProductCodeOutput() GetAmiProductCodeOutput

func (GetAmiProductCodeOutput) ToGetAmiProductCodeOutputWithContext

func (o GetAmiProductCodeOutput) ToGetAmiProductCodeOutputWithContext(ctx context.Context) GetAmiProductCodeOutput

type GetCoipPoolArgs

type GetCoipPoolArgs struct {
	Filters []GetCoipPoolFilter `pulumi:"filters"`
	// Local Gateway Route Table Id assigned to desired COIP Pool
	LocalGatewayRouteTableId *string `pulumi:"localGatewayRouteTableId"`
	// The id of the specific COIP Pool to retrieve.
	PoolId *string `pulumi:"poolId"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired COIP Pool.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getCoipPool.

type GetCoipPoolFilter

type GetCoipPoolFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A COIP Pool will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetCoipPoolFilterArgs

type GetCoipPoolFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A COIP Pool will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetCoipPoolFilterArgs) ElementType

func (GetCoipPoolFilterArgs) ElementType() reflect.Type

func (GetCoipPoolFilterArgs) ToGetCoipPoolFilterOutput

func (i GetCoipPoolFilterArgs) ToGetCoipPoolFilterOutput() GetCoipPoolFilterOutput

func (GetCoipPoolFilterArgs) ToGetCoipPoolFilterOutputWithContext

func (i GetCoipPoolFilterArgs) ToGetCoipPoolFilterOutputWithContext(ctx context.Context) GetCoipPoolFilterOutput

type GetCoipPoolFilterArray

type GetCoipPoolFilterArray []GetCoipPoolFilterInput

func (GetCoipPoolFilterArray) ElementType

func (GetCoipPoolFilterArray) ElementType() reflect.Type

func (GetCoipPoolFilterArray) ToGetCoipPoolFilterArrayOutput

func (i GetCoipPoolFilterArray) ToGetCoipPoolFilterArrayOutput() GetCoipPoolFilterArrayOutput

func (GetCoipPoolFilterArray) ToGetCoipPoolFilterArrayOutputWithContext

func (i GetCoipPoolFilterArray) ToGetCoipPoolFilterArrayOutputWithContext(ctx context.Context) GetCoipPoolFilterArrayOutput

type GetCoipPoolFilterArrayInput

type GetCoipPoolFilterArrayInput interface {
	pulumi.Input

	ToGetCoipPoolFilterArrayOutput() GetCoipPoolFilterArrayOutput
	ToGetCoipPoolFilterArrayOutputWithContext(context.Context) GetCoipPoolFilterArrayOutput
}

GetCoipPoolFilterArrayInput is an input type that accepts GetCoipPoolFilterArray and GetCoipPoolFilterArrayOutput values. You can construct a concrete instance of `GetCoipPoolFilterArrayInput` via:

GetCoipPoolFilterArray{ GetCoipPoolFilterArgs{...} }

type GetCoipPoolFilterArrayOutput

type GetCoipPoolFilterArrayOutput struct{ *pulumi.OutputState }

func (GetCoipPoolFilterArrayOutput) ElementType

func (GetCoipPoolFilterArrayOutput) Index

func (GetCoipPoolFilterArrayOutput) ToGetCoipPoolFilterArrayOutput

func (o GetCoipPoolFilterArrayOutput) ToGetCoipPoolFilterArrayOutput() GetCoipPoolFilterArrayOutput

func (GetCoipPoolFilterArrayOutput) ToGetCoipPoolFilterArrayOutputWithContext

func (o GetCoipPoolFilterArrayOutput) ToGetCoipPoolFilterArrayOutputWithContext(ctx context.Context) GetCoipPoolFilterArrayOutput

type GetCoipPoolFilterInput

type GetCoipPoolFilterInput interface {
	pulumi.Input

	ToGetCoipPoolFilterOutput() GetCoipPoolFilterOutput
	ToGetCoipPoolFilterOutputWithContext(context.Context) GetCoipPoolFilterOutput
}

GetCoipPoolFilterInput is an input type that accepts GetCoipPoolFilterArgs and GetCoipPoolFilterOutput values. You can construct a concrete instance of `GetCoipPoolFilterInput` via:

GetCoipPoolFilterArgs{...}

type GetCoipPoolFilterOutput

type GetCoipPoolFilterOutput struct{ *pulumi.OutputState }

func (GetCoipPoolFilterOutput) ElementType

func (GetCoipPoolFilterOutput) ElementType() reflect.Type

func (GetCoipPoolFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).

func (GetCoipPoolFilterOutput) ToGetCoipPoolFilterOutput

func (o GetCoipPoolFilterOutput) ToGetCoipPoolFilterOutput() GetCoipPoolFilterOutput

func (GetCoipPoolFilterOutput) ToGetCoipPoolFilterOutputWithContext

func (o GetCoipPoolFilterOutput) ToGetCoipPoolFilterOutputWithContext(ctx context.Context) GetCoipPoolFilterOutput

func (GetCoipPoolFilterOutput) Values

Set of values that are accepted for the given field. A COIP Pool will be selected if any one of the given values matches.

type GetCoipPoolResult

type GetCoipPoolResult struct {
	// ARN of the COIP pool
	Arn     string              `pulumi:"arn"`
	Filters []GetCoipPoolFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                       string `pulumi:"id"`
	LocalGatewayRouteTableId string `pulumi:"localGatewayRouteTableId"`
	// Set of CIDR blocks in pool
	PoolCidrs []string          `pulumi:"poolCidrs"`
	PoolId    string            `pulumi:"poolId"`
	Tags      map[string]string `pulumi:"tags"`
}

A collection of values returned by getCoipPool.

func GetCoipPool

func GetCoipPool(ctx *pulumi.Context, args *GetCoipPoolArgs, opts ...pulumi.InvokeOption) (*GetCoipPoolResult, error)

Provides details about a specific EC2 Customer-Owned IP Pool.

This data source can prove useful when a module accepts a coip pool id as an input variable and needs to, for example, determine the CIDR block of that COIP Pool.

## Example Usage

The following example returns a specific coip pool ID

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		coipPoolId := cfg.RequireObject("coipPoolId")
		_, err := ec2.GetCoipPool(ctx, &ec2.GetCoipPoolArgs{
			Id: coipPoolId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetCoipPoolsArgs

type GetCoipPoolsArgs struct {
	// Custom filter block as described below.
	Filters []GetCoipPoolsFilter `pulumi:"filters"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired aws_ec2_coip_pools.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getCoipPools.

type GetCoipPoolsFilter

type GetCoipPoolsFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A COIP Pool will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetCoipPoolsFilterArgs

type GetCoipPoolsFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A COIP Pool will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetCoipPoolsFilterArgs) ElementType

func (GetCoipPoolsFilterArgs) ElementType() reflect.Type

func (GetCoipPoolsFilterArgs) ToGetCoipPoolsFilterOutput

func (i GetCoipPoolsFilterArgs) ToGetCoipPoolsFilterOutput() GetCoipPoolsFilterOutput

func (GetCoipPoolsFilterArgs) ToGetCoipPoolsFilterOutputWithContext

func (i GetCoipPoolsFilterArgs) ToGetCoipPoolsFilterOutputWithContext(ctx context.Context) GetCoipPoolsFilterOutput

type GetCoipPoolsFilterArray

type GetCoipPoolsFilterArray []GetCoipPoolsFilterInput

func (GetCoipPoolsFilterArray) ElementType

func (GetCoipPoolsFilterArray) ElementType() reflect.Type

func (GetCoipPoolsFilterArray) ToGetCoipPoolsFilterArrayOutput

func (i GetCoipPoolsFilterArray) ToGetCoipPoolsFilterArrayOutput() GetCoipPoolsFilterArrayOutput

func (GetCoipPoolsFilterArray) ToGetCoipPoolsFilterArrayOutputWithContext

func (i GetCoipPoolsFilterArray) ToGetCoipPoolsFilterArrayOutputWithContext(ctx context.Context) GetCoipPoolsFilterArrayOutput

type GetCoipPoolsFilterArrayInput

type GetCoipPoolsFilterArrayInput interface {
	pulumi.Input

	ToGetCoipPoolsFilterArrayOutput() GetCoipPoolsFilterArrayOutput
	ToGetCoipPoolsFilterArrayOutputWithContext(context.Context) GetCoipPoolsFilterArrayOutput
}

GetCoipPoolsFilterArrayInput is an input type that accepts GetCoipPoolsFilterArray and GetCoipPoolsFilterArrayOutput values. You can construct a concrete instance of `GetCoipPoolsFilterArrayInput` via:

GetCoipPoolsFilterArray{ GetCoipPoolsFilterArgs{...} }

type GetCoipPoolsFilterArrayOutput

type GetCoipPoolsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetCoipPoolsFilterArrayOutput) ElementType

func (GetCoipPoolsFilterArrayOutput) Index

func (GetCoipPoolsFilterArrayOutput) ToGetCoipPoolsFilterArrayOutput

func (o GetCoipPoolsFilterArrayOutput) ToGetCoipPoolsFilterArrayOutput() GetCoipPoolsFilterArrayOutput

func (GetCoipPoolsFilterArrayOutput) ToGetCoipPoolsFilterArrayOutputWithContext

func (o GetCoipPoolsFilterArrayOutput) ToGetCoipPoolsFilterArrayOutputWithContext(ctx context.Context) GetCoipPoolsFilterArrayOutput

type GetCoipPoolsFilterInput

type GetCoipPoolsFilterInput interface {
	pulumi.Input

	ToGetCoipPoolsFilterOutput() GetCoipPoolsFilterOutput
	ToGetCoipPoolsFilterOutputWithContext(context.Context) GetCoipPoolsFilterOutput
}

GetCoipPoolsFilterInput is an input type that accepts GetCoipPoolsFilterArgs and GetCoipPoolsFilterOutput values. You can construct a concrete instance of `GetCoipPoolsFilterInput` via:

GetCoipPoolsFilterArgs{...}

type GetCoipPoolsFilterOutput

type GetCoipPoolsFilterOutput struct{ *pulumi.OutputState }

func (GetCoipPoolsFilterOutput) ElementType

func (GetCoipPoolsFilterOutput) ElementType() reflect.Type

func (GetCoipPoolsFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCoipPools.html).

func (GetCoipPoolsFilterOutput) ToGetCoipPoolsFilterOutput

func (o GetCoipPoolsFilterOutput) ToGetCoipPoolsFilterOutput() GetCoipPoolsFilterOutput

func (GetCoipPoolsFilterOutput) ToGetCoipPoolsFilterOutputWithContext

func (o GetCoipPoolsFilterOutput) ToGetCoipPoolsFilterOutputWithContext(ctx context.Context) GetCoipPoolsFilterOutput

func (GetCoipPoolsFilterOutput) Values

Set of values that are accepted for the given field. A COIP Pool will be selected if any one of the given values matches.

type GetCoipPoolsResult

type GetCoipPoolsResult struct {
	Filters []GetCoipPoolsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of COIP Pool Identifiers
	PoolIds []string          `pulumi:"poolIds"`
	Tags    map[string]string `pulumi:"tags"`
}

A collection of values returned by getCoipPools.

func GetCoipPools

func GetCoipPools(ctx *pulumi.Context, args *GetCoipPoolsArgs, opts ...pulumi.InvokeOption) (*GetCoipPoolsResult, error)

Provides information for multiple EC2 Customer-Owned IP Pools, such as their identifiers.

type GetCustomerGatewayFilter

type GetCustomerGatewayFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetCustomerGatewayFilterArgs

type GetCustomerGatewayFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetCustomerGatewayFilterArgs) ElementType

func (GetCustomerGatewayFilterArgs) ToGetCustomerGatewayFilterOutput

func (i GetCustomerGatewayFilterArgs) ToGetCustomerGatewayFilterOutput() GetCustomerGatewayFilterOutput

func (GetCustomerGatewayFilterArgs) ToGetCustomerGatewayFilterOutputWithContext

func (i GetCustomerGatewayFilterArgs) ToGetCustomerGatewayFilterOutputWithContext(ctx context.Context) GetCustomerGatewayFilterOutput

type GetCustomerGatewayFilterArray

type GetCustomerGatewayFilterArray []GetCustomerGatewayFilterInput

func (GetCustomerGatewayFilterArray) ElementType

func (GetCustomerGatewayFilterArray) ToGetCustomerGatewayFilterArrayOutput

func (i GetCustomerGatewayFilterArray) ToGetCustomerGatewayFilterArrayOutput() GetCustomerGatewayFilterArrayOutput

func (GetCustomerGatewayFilterArray) ToGetCustomerGatewayFilterArrayOutputWithContext

func (i GetCustomerGatewayFilterArray) ToGetCustomerGatewayFilterArrayOutputWithContext(ctx context.Context) GetCustomerGatewayFilterArrayOutput

type GetCustomerGatewayFilterArrayInput

type GetCustomerGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetCustomerGatewayFilterArrayOutput() GetCustomerGatewayFilterArrayOutput
	ToGetCustomerGatewayFilterArrayOutputWithContext(context.Context) GetCustomerGatewayFilterArrayOutput
}

GetCustomerGatewayFilterArrayInput is an input type that accepts GetCustomerGatewayFilterArray and GetCustomerGatewayFilterArrayOutput values. You can construct a concrete instance of `GetCustomerGatewayFilterArrayInput` via:

GetCustomerGatewayFilterArray{ GetCustomerGatewayFilterArgs{...} }

type GetCustomerGatewayFilterArrayOutput

type GetCustomerGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetCustomerGatewayFilterArrayOutput) ElementType

func (GetCustomerGatewayFilterArrayOutput) Index

func (GetCustomerGatewayFilterArrayOutput) ToGetCustomerGatewayFilterArrayOutput

func (o GetCustomerGatewayFilterArrayOutput) ToGetCustomerGatewayFilterArrayOutput() GetCustomerGatewayFilterArrayOutput

func (GetCustomerGatewayFilterArrayOutput) ToGetCustomerGatewayFilterArrayOutputWithContext

func (o GetCustomerGatewayFilterArrayOutput) ToGetCustomerGatewayFilterArrayOutputWithContext(ctx context.Context) GetCustomerGatewayFilterArrayOutput

type GetCustomerGatewayFilterInput

type GetCustomerGatewayFilterInput interface {
	pulumi.Input

	ToGetCustomerGatewayFilterOutput() GetCustomerGatewayFilterOutput
	ToGetCustomerGatewayFilterOutputWithContext(context.Context) GetCustomerGatewayFilterOutput
}

GetCustomerGatewayFilterInput is an input type that accepts GetCustomerGatewayFilterArgs and GetCustomerGatewayFilterOutput values. You can construct a concrete instance of `GetCustomerGatewayFilterInput` via:

GetCustomerGatewayFilterArgs{...}

type GetCustomerGatewayFilterOutput

type GetCustomerGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetCustomerGatewayFilterOutput) ElementType

func (GetCustomerGatewayFilterOutput) Name

func (GetCustomerGatewayFilterOutput) ToGetCustomerGatewayFilterOutput

func (o GetCustomerGatewayFilterOutput) ToGetCustomerGatewayFilterOutput() GetCustomerGatewayFilterOutput

func (GetCustomerGatewayFilterOutput) ToGetCustomerGatewayFilterOutputWithContext

func (o GetCustomerGatewayFilterOutput) ToGetCustomerGatewayFilterOutputWithContext(ctx context.Context) GetCustomerGatewayFilterOutput

func (GetCustomerGatewayFilterOutput) Values

type GetElasticIpArgs

type GetElasticIpArgs struct {
	// One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAddresses.html).
	Filters []GetElasticIpFilter `pulumi:"filters"`
	// The allocation id of the specific VPC EIP to retrieve. If a classic EIP is required, do NOT set `id`, only set `publicIp`
	Id *string `pulumi:"id"`
	// The public IP of the specific EIP to retrieve.
	PublicIp *string `pulumi:"publicIp"`
	// A map of tags, each pair of which must exactly match a pair on the desired Elastic IP
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getElasticIp.

type GetElasticIpFilter

type GetElasticIpFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetElasticIpFilterArgs

type GetElasticIpFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetElasticIpFilterArgs) ElementType

func (GetElasticIpFilterArgs) ElementType() reflect.Type

func (GetElasticIpFilterArgs) ToGetElasticIpFilterOutput

func (i GetElasticIpFilterArgs) ToGetElasticIpFilterOutput() GetElasticIpFilterOutput

func (GetElasticIpFilterArgs) ToGetElasticIpFilterOutputWithContext

func (i GetElasticIpFilterArgs) ToGetElasticIpFilterOutputWithContext(ctx context.Context) GetElasticIpFilterOutput

type GetElasticIpFilterArray

type GetElasticIpFilterArray []GetElasticIpFilterInput

func (GetElasticIpFilterArray) ElementType

func (GetElasticIpFilterArray) ElementType() reflect.Type

func (GetElasticIpFilterArray) ToGetElasticIpFilterArrayOutput

func (i GetElasticIpFilterArray) ToGetElasticIpFilterArrayOutput() GetElasticIpFilterArrayOutput

func (GetElasticIpFilterArray) ToGetElasticIpFilterArrayOutputWithContext

func (i GetElasticIpFilterArray) ToGetElasticIpFilterArrayOutputWithContext(ctx context.Context) GetElasticIpFilterArrayOutput

type GetElasticIpFilterArrayInput

type GetElasticIpFilterArrayInput interface {
	pulumi.Input

	ToGetElasticIpFilterArrayOutput() GetElasticIpFilterArrayOutput
	ToGetElasticIpFilterArrayOutputWithContext(context.Context) GetElasticIpFilterArrayOutput
}

GetElasticIpFilterArrayInput is an input type that accepts GetElasticIpFilterArray and GetElasticIpFilterArrayOutput values. You can construct a concrete instance of `GetElasticIpFilterArrayInput` via:

GetElasticIpFilterArray{ GetElasticIpFilterArgs{...} }

type GetElasticIpFilterArrayOutput

type GetElasticIpFilterArrayOutput struct{ *pulumi.OutputState }

func (GetElasticIpFilterArrayOutput) ElementType

func (GetElasticIpFilterArrayOutput) Index

func (GetElasticIpFilterArrayOutput) ToGetElasticIpFilterArrayOutput

func (o GetElasticIpFilterArrayOutput) ToGetElasticIpFilterArrayOutput() GetElasticIpFilterArrayOutput

func (GetElasticIpFilterArrayOutput) ToGetElasticIpFilterArrayOutputWithContext

func (o GetElasticIpFilterArrayOutput) ToGetElasticIpFilterArrayOutputWithContext(ctx context.Context) GetElasticIpFilterArrayOutput

type GetElasticIpFilterInput

type GetElasticIpFilterInput interface {
	pulumi.Input

	ToGetElasticIpFilterOutput() GetElasticIpFilterOutput
	ToGetElasticIpFilterOutputWithContext(context.Context) GetElasticIpFilterOutput
}

GetElasticIpFilterInput is an input type that accepts GetElasticIpFilterArgs and GetElasticIpFilterOutput values. You can construct a concrete instance of `GetElasticIpFilterInput` via:

GetElasticIpFilterArgs{...}

type GetElasticIpFilterOutput

type GetElasticIpFilterOutput struct{ *pulumi.OutputState }

func (GetElasticIpFilterOutput) ElementType

func (GetElasticIpFilterOutput) ElementType() reflect.Type

func (GetElasticIpFilterOutput) Name

func (GetElasticIpFilterOutput) ToGetElasticIpFilterOutput

func (o GetElasticIpFilterOutput) ToGetElasticIpFilterOutput() GetElasticIpFilterOutput

func (GetElasticIpFilterOutput) ToGetElasticIpFilterOutputWithContext

func (o GetElasticIpFilterOutput) ToGetElasticIpFilterOutputWithContext(ctx context.Context) GetElasticIpFilterOutput

func (GetElasticIpFilterOutput) Values

type GetElasticIpResult

type GetElasticIpResult struct {
	// The ID representing the association of the address with an instance in a VPC.
	AssociationId string `pulumi:"associationId"`
	// The carrier IP address.
	CarrierIp string `pulumi:"carrierIp"`
	// Customer Owned IP.
	CustomerOwnedIp string `pulumi:"customerOwnedIp"`
	// The ID of a Customer Owned IP Pool. For more on customer owned IP addressed check out [Customer-owned IP addresses guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#ip-addressing)
	CustomerOwnedIpv4Pool string `pulumi:"customerOwnedIpv4Pool"`
	// Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc).
	Domain  string               `pulumi:"domain"`
	Filters []GetElasticIpFilter `pulumi:"filters"`
	// If VPC Elastic IP, the allocation identifier. If EC2-Classic Elastic IP, the public IP address.
	Id string `pulumi:"id"`
	// The ID of the instance that the address is associated with (if any).
	InstanceId string `pulumi:"instanceId"`
	// The ID of the network interface.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// The ID of the AWS account that owns the network interface.
	NetworkInterfaceOwnerId string `pulumi:"networkInterfaceOwnerId"`
	// The Private DNS associated with the Elastic IP address.
	PrivateDns string `pulumi:"privateDns"`
	// The private IP address associated with the Elastic IP address.
	PrivateIp string `pulumi:"privateIp"`
	// Public DNS associated with the Elastic IP address.
	PublicDns string `pulumi:"publicDns"`
	// Public IP address of Elastic IP.
	PublicIp string `pulumi:"publicIp"`
	// The ID of an address pool.
	PublicIpv4Pool string `pulumi:"publicIpv4Pool"`
	// Key-value map of tags associated with Elastic IP.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getElasticIp.

func GetElasticIp

func GetElasticIp(ctx *pulumi.Context, args *GetElasticIpArgs, opts ...pulumi.InvokeOption) (*GetElasticIpResult, error)

`ec2.Eip` provides details about a specific Elastic IP.

## Example Usage ### Search By Allocation ID (VPC only)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "eipalloc-12345678"
		_, err := ec2.GetElasticIp(ctx, &ec2.GetElasticIpArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Search By Filters (EC2-Classic or VPC)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetElasticIp(ctx, &ec2.GetElasticIpArgs{
			Filters: []ec2.GetElasticIpFilter{
				ec2.GetElasticIpFilter{
					Name: "tag:Name",
					Values: []string{
						"exampleNameTagValue",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Search By Public IP (EC2-Classic or VPC)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "1.2.3.4"
		_, err := ec2.GetElasticIp(ctx, &ec2.GetElasticIpArgs{
			PublicIp: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Search By Tags (EC2-Classic or VPC)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetElasticIp(ctx, &ec2.GetElasticIpArgs{
			Tags: map[string]interface{}{
				"Name": "exampleNameTagValue",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstanceCreditSpecification

type GetInstanceCreditSpecification struct {
	CpuCredits string `pulumi:"cpuCredits"`
}

type GetInstanceCreditSpecificationArgs

type GetInstanceCreditSpecificationArgs struct {
	CpuCredits pulumi.StringInput `pulumi:"cpuCredits"`
}

func (GetInstanceCreditSpecificationArgs) ElementType

func (GetInstanceCreditSpecificationArgs) ToGetInstanceCreditSpecificationOutput

func (i GetInstanceCreditSpecificationArgs) ToGetInstanceCreditSpecificationOutput() GetInstanceCreditSpecificationOutput

func (GetInstanceCreditSpecificationArgs) ToGetInstanceCreditSpecificationOutputWithContext

func (i GetInstanceCreditSpecificationArgs) ToGetInstanceCreditSpecificationOutputWithContext(ctx context.Context) GetInstanceCreditSpecificationOutput

type GetInstanceCreditSpecificationArray

type GetInstanceCreditSpecificationArray []GetInstanceCreditSpecificationInput

func (GetInstanceCreditSpecificationArray) ElementType

func (GetInstanceCreditSpecificationArray) ToGetInstanceCreditSpecificationArrayOutput

func (i GetInstanceCreditSpecificationArray) ToGetInstanceCreditSpecificationArrayOutput() GetInstanceCreditSpecificationArrayOutput

func (GetInstanceCreditSpecificationArray) ToGetInstanceCreditSpecificationArrayOutputWithContext

func (i GetInstanceCreditSpecificationArray) ToGetInstanceCreditSpecificationArrayOutputWithContext(ctx context.Context) GetInstanceCreditSpecificationArrayOutput

type GetInstanceCreditSpecificationArrayInput

type GetInstanceCreditSpecificationArrayInput interface {
	pulumi.Input

	ToGetInstanceCreditSpecificationArrayOutput() GetInstanceCreditSpecificationArrayOutput
	ToGetInstanceCreditSpecificationArrayOutputWithContext(context.Context) GetInstanceCreditSpecificationArrayOutput
}

GetInstanceCreditSpecificationArrayInput is an input type that accepts GetInstanceCreditSpecificationArray and GetInstanceCreditSpecificationArrayOutput values. You can construct a concrete instance of `GetInstanceCreditSpecificationArrayInput` via:

GetInstanceCreditSpecificationArray{ GetInstanceCreditSpecificationArgs{...} }

type GetInstanceCreditSpecificationArrayOutput

type GetInstanceCreditSpecificationArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceCreditSpecificationArrayOutput) ElementType

func (GetInstanceCreditSpecificationArrayOutput) Index

func (GetInstanceCreditSpecificationArrayOutput) ToGetInstanceCreditSpecificationArrayOutput

func (o GetInstanceCreditSpecificationArrayOutput) ToGetInstanceCreditSpecificationArrayOutput() GetInstanceCreditSpecificationArrayOutput

func (GetInstanceCreditSpecificationArrayOutput) ToGetInstanceCreditSpecificationArrayOutputWithContext

func (o GetInstanceCreditSpecificationArrayOutput) ToGetInstanceCreditSpecificationArrayOutputWithContext(ctx context.Context) GetInstanceCreditSpecificationArrayOutput

type GetInstanceCreditSpecificationInput

type GetInstanceCreditSpecificationInput interface {
	pulumi.Input

	ToGetInstanceCreditSpecificationOutput() GetInstanceCreditSpecificationOutput
	ToGetInstanceCreditSpecificationOutputWithContext(context.Context) GetInstanceCreditSpecificationOutput
}

GetInstanceCreditSpecificationInput is an input type that accepts GetInstanceCreditSpecificationArgs and GetInstanceCreditSpecificationOutput values. You can construct a concrete instance of `GetInstanceCreditSpecificationInput` via:

GetInstanceCreditSpecificationArgs{...}

type GetInstanceCreditSpecificationOutput

type GetInstanceCreditSpecificationOutput struct{ *pulumi.OutputState }

func (GetInstanceCreditSpecificationOutput) CpuCredits

func (GetInstanceCreditSpecificationOutput) ElementType

func (GetInstanceCreditSpecificationOutput) ToGetInstanceCreditSpecificationOutput

func (o GetInstanceCreditSpecificationOutput) ToGetInstanceCreditSpecificationOutput() GetInstanceCreditSpecificationOutput

func (GetInstanceCreditSpecificationOutput) ToGetInstanceCreditSpecificationOutputWithContext

func (o GetInstanceCreditSpecificationOutput) ToGetInstanceCreditSpecificationOutputWithContext(ctx context.Context) GetInstanceCreditSpecificationOutput

type GetInstanceEbsBlockDevice

type GetInstanceEbsBlockDevice struct {
	// If the root block device will be deleted on termination.
	DeleteOnTermination bool `pulumi:"deleteOnTermination"`
	// The physical name of the device.
	DeviceName string `pulumi:"deviceName"`
	// If the EBS volume is encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// `0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.
	Iops     int    `pulumi:"iops"`
	KmsKeyId string `pulumi:"kmsKeyId"`
	// The ID of the snapshot.
	SnapshotId string `pulumi:"snapshotId"`
	// A map of tags assigned to the Instance.
	Tags map[string]string `pulumi:"tags"`
	// The throughput of the volume, in MiB/s.
	Throughput int    `pulumi:"throughput"`
	VolumeId   string `pulumi:"volumeId"`
	// The size of the volume, in GiB.
	VolumeSize int `pulumi:"volumeSize"`
	// The type of the volume.
	VolumeType string `pulumi:"volumeType"`
}

type GetInstanceEbsBlockDeviceArgs

type GetInstanceEbsBlockDeviceArgs struct {
	// If the root block device will be deleted on termination.
	DeleteOnTermination pulumi.BoolInput `pulumi:"deleteOnTermination"`
	// The physical name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// If the EBS volume is encrypted.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// `0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.
	Iops     pulumi.IntInput    `pulumi:"iops"`
	KmsKeyId pulumi.StringInput `pulumi:"kmsKeyId"`
	// The ID of the snapshot.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
	// A map of tags assigned to the Instance.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The throughput of the volume, in MiB/s.
	Throughput pulumi.IntInput    `pulumi:"throughput"`
	VolumeId   pulumi.StringInput `pulumi:"volumeId"`
	// The size of the volume, in GiB.
	VolumeSize pulumi.IntInput `pulumi:"volumeSize"`
	// The type of the volume.
	VolumeType pulumi.StringInput `pulumi:"volumeType"`
}

func (GetInstanceEbsBlockDeviceArgs) ElementType

func (GetInstanceEbsBlockDeviceArgs) ToGetInstanceEbsBlockDeviceOutput

func (i GetInstanceEbsBlockDeviceArgs) ToGetInstanceEbsBlockDeviceOutput() GetInstanceEbsBlockDeviceOutput

func (GetInstanceEbsBlockDeviceArgs) ToGetInstanceEbsBlockDeviceOutputWithContext

func (i GetInstanceEbsBlockDeviceArgs) ToGetInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) GetInstanceEbsBlockDeviceOutput

type GetInstanceEbsBlockDeviceArray

type GetInstanceEbsBlockDeviceArray []GetInstanceEbsBlockDeviceInput

func (GetInstanceEbsBlockDeviceArray) ElementType

func (GetInstanceEbsBlockDeviceArray) ToGetInstanceEbsBlockDeviceArrayOutput

func (i GetInstanceEbsBlockDeviceArray) ToGetInstanceEbsBlockDeviceArrayOutput() GetInstanceEbsBlockDeviceArrayOutput

func (GetInstanceEbsBlockDeviceArray) ToGetInstanceEbsBlockDeviceArrayOutputWithContext

func (i GetInstanceEbsBlockDeviceArray) ToGetInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceEbsBlockDeviceArrayOutput

type GetInstanceEbsBlockDeviceArrayInput

type GetInstanceEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetInstanceEbsBlockDeviceArrayOutput() GetInstanceEbsBlockDeviceArrayOutput
	ToGetInstanceEbsBlockDeviceArrayOutputWithContext(context.Context) GetInstanceEbsBlockDeviceArrayOutput
}

GetInstanceEbsBlockDeviceArrayInput is an input type that accepts GetInstanceEbsBlockDeviceArray and GetInstanceEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `GetInstanceEbsBlockDeviceArrayInput` via:

GetInstanceEbsBlockDeviceArray{ GetInstanceEbsBlockDeviceArgs{...} }

type GetInstanceEbsBlockDeviceArrayOutput

type GetInstanceEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceEbsBlockDeviceArrayOutput) ElementType

func (GetInstanceEbsBlockDeviceArrayOutput) Index

func (GetInstanceEbsBlockDeviceArrayOutput) ToGetInstanceEbsBlockDeviceArrayOutput

func (o GetInstanceEbsBlockDeviceArrayOutput) ToGetInstanceEbsBlockDeviceArrayOutput() GetInstanceEbsBlockDeviceArrayOutput

func (GetInstanceEbsBlockDeviceArrayOutput) ToGetInstanceEbsBlockDeviceArrayOutputWithContext

func (o GetInstanceEbsBlockDeviceArrayOutput) ToGetInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceEbsBlockDeviceArrayOutput

type GetInstanceEbsBlockDeviceInput

type GetInstanceEbsBlockDeviceInput interface {
	pulumi.Input

	ToGetInstanceEbsBlockDeviceOutput() GetInstanceEbsBlockDeviceOutput
	ToGetInstanceEbsBlockDeviceOutputWithContext(context.Context) GetInstanceEbsBlockDeviceOutput
}

GetInstanceEbsBlockDeviceInput is an input type that accepts GetInstanceEbsBlockDeviceArgs and GetInstanceEbsBlockDeviceOutput values. You can construct a concrete instance of `GetInstanceEbsBlockDeviceInput` via:

GetInstanceEbsBlockDeviceArgs{...}

type GetInstanceEbsBlockDeviceOutput

type GetInstanceEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetInstanceEbsBlockDeviceOutput) DeleteOnTermination

func (o GetInstanceEbsBlockDeviceOutput) DeleteOnTermination() pulumi.BoolOutput

If the root block device will be deleted on termination.

func (GetInstanceEbsBlockDeviceOutput) DeviceName

The physical name of the device.

func (GetInstanceEbsBlockDeviceOutput) ElementType

func (GetInstanceEbsBlockDeviceOutput) Encrypted

If the EBS volume is encrypted.

func (GetInstanceEbsBlockDeviceOutput) Iops

`0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.

func (GetInstanceEbsBlockDeviceOutput) KmsKeyId

func (GetInstanceEbsBlockDeviceOutput) SnapshotId

The ID of the snapshot.

func (GetInstanceEbsBlockDeviceOutput) Tags

A map of tags assigned to the Instance.

func (GetInstanceEbsBlockDeviceOutput) Throughput

The throughput of the volume, in MiB/s.

func (GetInstanceEbsBlockDeviceOutput) ToGetInstanceEbsBlockDeviceOutput

func (o GetInstanceEbsBlockDeviceOutput) ToGetInstanceEbsBlockDeviceOutput() GetInstanceEbsBlockDeviceOutput

func (GetInstanceEbsBlockDeviceOutput) ToGetInstanceEbsBlockDeviceOutputWithContext

func (o GetInstanceEbsBlockDeviceOutput) ToGetInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) GetInstanceEbsBlockDeviceOutput

func (GetInstanceEbsBlockDeviceOutput) VolumeId

func (GetInstanceEbsBlockDeviceOutput) VolumeSize

The size of the volume, in GiB.

func (GetInstanceEbsBlockDeviceOutput) VolumeType

The type of the volume.

type GetInstanceEnclaveOption

type GetInstanceEnclaveOption struct {
	// Whether Nitro Enclaves are enabled.
	Enabled bool `pulumi:"enabled"`
}

type GetInstanceEnclaveOptionArgs

type GetInstanceEnclaveOptionArgs struct {
	// Whether Nitro Enclaves are enabled.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
}

func (GetInstanceEnclaveOptionArgs) ElementType

func (GetInstanceEnclaveOptionArgs) ToGetInstanceEnclaveOptionOutput

func (i GetInstanceEnclaveOptionArgs) ToGetInstanceEnclaveOptionOutput() GetInstanceEnclaveOptionOutput

func (GetInstanceEnclaveOptionArgs) ToGetInstanceEnclaveOptionOutputWithContext

func (i GetInstanceEnclaveOptionArgs) ToGetInstanceEnclaveOptionOutputWithContext(ctx context.Context) GetInstanceEnclaveOptionOutput

type GetInstanceEnclaveOptionArray

type GetInstanceEnclaveOptionArray []GetInstanceEnclaveOptionInput

func (GetInstanceEnclaveOptionArray) ElementType

func (GetInstanceEnclaveOptionArray) ToGetInstanceEnclaveOptionArrayOutput

func (i GetInstanceEnclaveOptionArray) ToGetInstanceEnclaveOptionArrayOutput() GetInstanceEnclaveOptionArrayOutput

func (GetInstanceEnclaveOptionArray) ToGetInstanceEnclaveOptionArrayOutputWithContext

func (i GetInstanceEnclaveOptionArray) ToGetInstanceEnclaveOptionArrayOutputWithContext(ctx context.Context) GetInstanceEnclaveOptionArrayOutput

type GetInstanceEnclaveOptionArrayInput

type GetInstanceEnclaveOptionArrayInput interface {
	pulumi.Input

	ToGetInstanceEnclaveOptionArrayOutput() GetInstanceEnclaveOptionArrayOutput
	ToGetInstanceEnclaveOptionArrayOutputWithContext(context.Context) GetInstanceEnclaveOptionArrayOutput
}

GetInstanceEnclaveOptionArrayInput is an input type that accepts GetInstanceEnclaveOptionArray and GetInstanceEnclaveOptionArrayOutput values. You can construct a concrete instance of `GetInstanceEnclaveOptionArrayInput` via:

GetInstanceEnclaveOptionArray{ GetInstanceEnclaveOptionArgs{...} }

type GetInstanceEnclaveOptionArrayOutput

type GetInstanceEnclaveOptionArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceEnclaveOptionArrayOutput) ElementType

func (GetInstanceEnclaveOptionArrayOutput) Index

func (GetInstanceEnclaveOptionArrayOutput) ToGetInstanceEnclaveOptionArrayOutput

func (o GetInstanceEnclaveOptionArrayOutput) ToGetInstanceEnclaveOptionArrayOutput() GetInstanceEnclaveOptionArrayOutput

func (GetInstanceEnclaveOptionArrayOutput) ToGetInstanceEnclaveOptionArrayOutputWithContext

func (o GetInstanceEnclaveOptionArrayOutput) ToGetInstanceEnclaveOptionArrayOutputWithContext(ctx context.Context) GetInstanceEnclaveOptionArrayOutput

type GetInstanceEnclaveOptionInput

type GetInstanceEnclaveOptionInput interface {
	pulumi.Input

	ToGetInstanceEnclaveOptionOutput() GetInstanceEnclaveOptionOutput
	ToGetInstanceEnclaveOptionOutputWithContext(context.Context) GetInstanceEnclaveOptionOutput
}

GetInstanceEnclaveOptionInput is an input type that accepts GetInstanceEnclaveOptionArgs and GetInstanceEnclaveOptionOutput values. You can construct a concrete instance of `GetInstanceEnclaveOptionInput` via:

GetInstanceEnclaveOptionArgs{...}

type GetInstanceEnclaveOptionOutput

type GetInstanceEnclaveOptionOutput struct{ *pulumi.OutputState }

func (GetInstanceEnclaveOptionOutput) ElementType

func (GetInstanceEnclaveOptionOutput) Enabled

Whether Nitro Enclaves are enabled.

func (GetInstanceEnclaveOptionOutput) ToGetInstanceEnclaveOptionOutput

func (o GetInstanceEnclaveOptionOutput) ToGetInstanceEnclaveOptionOutput() GetInstanceEnclaveOptionOutput

func (GetInstanceEnclaveOptionOutput) ToGetInstanceEnclaveOptionOutputWithContext

func (o GetInstanceEnclaveOptionOutput) ToGetInstanceEnclaveOptionOutputWithContext(ctx context.Context) GetInstanceEnclaveOptionOutput

type GetInstanceEphemeralBlockDevice

type GetInstanceEphemeralBlockDevice struct {
	// The physical name of the device.
	DeviceName string `pulumi:"deviceName"`
	// Whether the specified device included in the device mapping was suppressed or not (Boolean).
	NoDevice *bool `pulumi:"noDevice"`
	// The virtual device name.
	VirtualName *string `pulumi:"virtualName"`
}

type GetInstanceEphemeralBlockDeviceArgs

type GetInstanceEphemeralBlockDeviceArgs struct {
	// The physical name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Whether the specified device included in the device mapping was suppressed or not (Boolean).
	NoDevice pulumi.BoolPtrInput `pulumi:"noDevice"`
	// The virtual device name.
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (GetInstanceEphemeralBlockDeviceArgs) ElementType

func (GetInstanceEphemeralBlockDeviceArgs) ToGetInstanceEphemeralBlockDeviceOutput

func (i GetInstanceEphemeralBlockDeviceArgs) ToGetInstanceEphemeralBlockDeviceOutput() GetInstanceEphemeralBlockDeviceOutput

func (GetInstanceEphemeralBlockDeviceArgs) ToGetInstanceEphemeralBlockDeviceOutputWithContext

func (i GetInstanceEphemeralBlockDeviceArgs) ToGetInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) GetInstanceEphemeralBlockDeviceOutput

type GetInstanceEphemeralBlockDeviceArray

type GetInstanceEphemeralBlockDeviceArray []GetInstanceEphemeralBlockDeviceInput

func (GetInstanceEphemeralBlockDeviceArray) ElementType

func (GetInstanceEphemeralBlockDeviceArray) ToGetInstanceEphemeralBlockDeviceArrayOutput

func (i GetInstanceEphemeralBlockDeviceArray) ToGetInstanceEphemeralBlockDeviceArrayOutput() GetInstanceEphemeralBlockDeviceArrayOutput

func (GetInstanceEphemeralBlockDeviceArray) ToGetInstanceEphemeralBlockDeviceArrayOutputWithContext

func (i GetInstanceEphemeralBlockDeviceArray) ToGetInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceEphemeralBlockDeviceArrayOutput

type GetInstanceEphemeralBlockDeviceArrayInput

type GetInstanceEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetInstanceEphemeralBlockDeviceArrayOutput() GetInstanceEphemeralBlockDeviceArrayOutput
	ToGetInstanceEphemeralBlockDeviceArrayOutputWithContext(context.Context) GetInstanceEphemeralBlockDeviceArrayOutput
}

GetInstanceEphemeralBlockDeviceArrayInput is an input type that accepts GetInstanceEphemeralBlockDeviceArray and GetInstanceEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `GetInstanceEphemeralBlockDeviceArrayInput` via:

GetInstanceEphemeralBlockDeviceArray{ GetInstanceEphemeralBlockDeviceArgs{...} }

type GetInstanceEphemeralBlockDeviceArrayOutput

type GetInstanceEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceEphemeralBlockDeviceArrayOutput) ElementType

func (GetInstanceEphemeralBlockDeviceArrayOutput) Index

func (GetInstanceEphemeralBlockDeviceArrayOutput) ToGetInstanceEphemeralBlockDeviceArrayOutput

func (o GetInstanceEphemeralBlockDeviceArrayOutput) ToGetInstanceEphemeralBlockDeviceArrayOutput() GetInstanceEphemeralBlockDeviceArrayOutput

func (GetInstanceEphemeralBlockDeviceArrayOutput) ToGetInstanceEphemeralBlockDeviceArrayOutputWithContext

func (o GetInstanceEphemeralBlockDeviceArrayOutput) ToGetInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceEphemeralBlockDeviceArrayOutput

type GetInstanceEphemeralBlockDeviceInput

type GetInstanceEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToGetInstanceEphemeralBlockDeviceOutput() GetInstanceEphemeralBlockDeviceOutput
	ToGetInstanceEphemeralBlockDeviceOutputWithContext(context.Context) GetInstanceEphemeralBlockDeviceOutput
}

GetInstanceEphemeralBlockDeviceInput is an input type that accepts GetInstanceEphemeralBlockDeviceArgs and GetInstanceEphemeralBlockDeviceOutput values. You can construct a concrete instance of `GetInstanceEphemeralBlockDeviceInput` via:

GetInstanceEphemeralBlockDeviceArgs{...}

type GetInstanceEphemeralBlockDeviceOutput

type GetInstanceEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetInstanceEphemeralBlockDeviceOutput) DeviceName

The physical name of the device.

func (GetInstanceEphemeralBlockDeviceOutput) ElementType

func (GetInstanceEphemeralBlockDeviceOutput) NoDevice

Whether the specified device included in the device mapping was suppressed or not (Boolean).

func (GetInstanceEphemeralBlockDeviceOutput) ToGetInstanceEphemeralBlockDeviceOutput

func (o GetInstanceEphemeralBlockDeviceOutput) ToGetInstanceEphemeralBlockDeviceOutput() GetInstanceEphemeralBlockDeviceOutput

func (GetInstanceEphemeralBlockDeviceOutput) ToGetInstanceEphemeralBlockDeviceOutputWithContext

func (o GetInstanceEphemeralBlockDeviceOutput) ToGetInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) GetInstanceEphemeralBlockDeviceOutput

func (GetInstanceEphemeralBlockDeviceOutput) VirtualName

The virtual device name.

type GetInstanceFilter

type GetInstanceFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetInstanceFilterArgs

type GetInstanceFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInstanceFilterArgs) ElementType

func (GetInstanceFilterArgs) ElementType() reflect.Type

func (GetInstanceFilterArgs) ToGetInstanceFilterOutput

func (i GetInstanceFilterArgs) ToGetInstanceFilterOutput() GetInstanceFilterOutput

func (GetInstanceFilterArgs) ToGetInstanceFilterOutputWithContext

func (i GetInstanceFilterArgs) ToGetInstanceFilterOutputWithContext(ctx context.Context) GetInstanceFilterOutput

type GetInstanceFilterArray

type GetInstanceFilterArray []GetInstanceFilterInput

func (GetInstanceFilterArray) ElementType

func (GetInstanceFilterArray) ElementType() reflect.Type

func (GetInstanceFilterArray) ToGetInstanceFilterArrayOutput

func (i GetInstanceFilterArray) ToGetInstanceFilterArrayOutput() GetInstanceFilterArrayOutput

func (GetInstanceFilterArray) ToGetInstanceFilterArrayOutputWithContext

func (i GetInstanceFilterArray) ToGetInstanceFilterArrayOutputWithContext(ctx context.Context) GetInstanceFilterArrayOutput

type GetInstanceFilterArrayInput

type GetInstanceFilterArrayInput interface {
	pulumi.Input

	ToGetInstanceFilterArrayOutput() GetInstanceFilterArrayOutput
	ToGetInstanceFilterArrayOutputWithContext(context.Context) GetInstanceFilterArrayOutput
}

GetInstanceFilterArrayInput is an input type that accepts GetInstanceFilterArray and GetInstanceFilterArrayOutput values. You can construct a concrete instance of `GetInstanceFilterArrayInput` via:

GetInstanceFilterArray{ GetInstanceFilterArgs{...} }

type GetInstanceFilterArrayOutput

type GetInstanceFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceFilterArrayOutput) ElementType

func (GetInstanceFilterArrayOutput) Index

func (GetInstanceFilterArrayOutput) ToGetInstanceFilterArrayOutput

func (o GetInstanceFilterArrayOutput) ToGetInstanceFilterArrayOutput() GetInstanceFilterArrayOutput

func (GetInstanceFilterArrayOutput) ToGetInstanceFilterArrayOutputWithContext

func (o GetInstanceFilterArrayOutput) ToGetInstanceFilterArrayOutputWithContext(ctx context.Context) GetInstanceFilterArrayOutput

type GetInstanceFilterInput

type GetInstanceFilterInput interface {
	pulumi.Input

	ToGetInstanceFilterOutput() GetInstanceFilterOutput
	ToGetInstanceFilterOutputWithContext(context.Context) GetInstanceFilterOutput
}

GetInstanceFilterInput is an input type that accepts GetInstanceFilterArgs and GetInstanceFilterOutput values. You can construct a concrete instance of `GetInstanceFilterInput` via:

GetInstanceFilterArgs{...}

type GetInstanceFilterOutput

type GetInstanceFilterOutput struct{ *pulumi.OutputState }

func (GetInstanceFilterOutput) ElementType

func (GetInstanceFilterOutput) ElementType() reflect.Type

func (GetInstanceFilterOutput) Name

func (GetInstanceFilterOutput) ToGetInstanceFilterOutput

func (o GetInstanceFilterOutput) ToGetInstanceFilterOutput() GetInstanceFilterOutput

func (GetInstanceFilterOutput) ToGetInstanceFilterOutputWithContext

func (o GetInstanceFilterOutput) ToGetInstanceFilterOutputWithContext(ctx context.Context) GetInstanceFilterOutput

func (GetInstanceFilterOutput) Values

type GetInstanceMetadataOption

type GetInstanceMetadataOption struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit int `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens string `pulumi:"httpTokens"`
}

type GetInstanceMetadataOptionArgs

type GetInstanceMetadataOptionArgs struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint pulumi.StringInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit pulumi.IntInput `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens pulumi.StringInput `pulumi:"httpTokens"`
}

func (GetInstanceMetadataOptionArgs) ElementType

func (GetInstanceMetadataOptionArgs) ToGetInstanceMetadataOptionOutput

func (i GetInstanceMetadataOptionArgs) ToGetInstanceMetadataOptionOutput() GetInstanceMetadataOptionOutput

func (GetInstanceMetadataOptionArgs) ToGetInstanceMetadataOptionOutputWithContext

func (i GetInstanceMetadataOptionArgs) ToGetInstanceMetadataOptionOutputWithContext(ctx context.Context) GetInstanceMetadataOptionOutput

type GetInstanceMetadataOptionArray

type GetInstanceMetadataOptionArray []GetInstanceMetadataOptionInput

func (GetInstanceMetadataOptionArray) ElementType

func (GetInstanceMetadataOptionArray) ToGetInstanceMetadataOptionArrayOutput

func (i GetInstanceMetadataOptionArray) ToGetInstanceMetadataOptionArrayOutput() GetInstanceMetadataOptionArrayOutput

func (GetInstanceMetadataOptionArray) ToGetInstanceMetadataOptionArrayOutputWithContext

func (i GetInstanceMetadataOptionArray) ToGetInstanceMetadataOptionArrayOutputWithContext(ctx context.Context) GetInstanceMetadataOptionArrayOutput

type GetInstanceMetadataOptionArrayInput

type GetInstanceMetadataOptionArrayInput interface {
	pulumi.Input

	ToGetInstanceMetadataOptionArrayOutput() GetInstanceMetadataOptionArrayOutput
	ToGetInstanceMetadataOptionArrayOutputWithContext(context.Context) GetInstanceMetadataOptionArrayOutput
}

GetInstanceMetadataOptionArrayInput is an input type that accepts GetInstanceMetadataOptionArray and GetInstanceMetadataOptionArrayOutput values. You can construct a concrete instance of `GetInstanceMetadataOptionArrayInput` via:

GetInstanceMetadataOptionArray{ GetInstanceMetadataOptionArgs{...} }

type GetInstanceMetadataOptionArrayOutput

type GetInstanceMetadataOptionArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceMetadataOptionArrayOutput) ElementType

func (GetInstanceMetadataOptionArrayOutput) Index

func (GetInstanceMetadataOptionArrayOutput) ToGetInstanceMetadataOptionArrayOutput

func (o GetInstanceMetadataOptionArrayOutput) ToGetInstanceMetadataOptionArrayOutput() GetInstanceMetadataOptionArrayOutput

func (GetInstanceMetadataOptionArrayOutput) ToGetInstanceMetadataOptionArrayOutputWithContext

func (o GetInstanceMetadataOptionArrayOutput) ToGetInstanceMetadataOptionArrayOutputWithContext(ctx context.Context) GetInstanceMetadataOptionArrayOutput

type GetInstanceMetadataOptionInput

type GetInstanceMetadataOptionInput interface {
	pulumi.Input

	ToGetInstanceMetadataOptionOutput() GetInstanceMetadataOptionOutput
	ToGetInstanceMetadataOptionOutputWithContext(context.Context) GetInstanceMetadataOptionOutput
}

GetInstanceMetadataOptionInput is an input type that accepts GetInstanceMetadataOptionArgs and GetInstanceMetadataOptionOutput values. You can construct a concrete instance of `GetInstanceMetadataOptionInput` via:

GetInstanceMetadataOptionArgs{...}

type GetInstanceMetadataOptionOutput

type GetInstanceMetadataOptionOutput struct{ *pulumi.OutputState }

func (GetInstanceMetadataOptionOutput) ElementType

func (GetInstanceMetadataOptionOutput) HttpEndpoint

The state of the metadata service: `enabled`, `disabled`.

func (GetInstanceMetadataOptionOutput) HttpPutResponseHopLimit

func (o GetInstanceMetadataOptionOutput) HttpPutResponseHopLimit() pulumi.IntOutput

The desired HTTP PUT response hop limit for instance metadata requests.

func (GetInstanceMetadataOptionOutput) HttpTokens

If session tokens are required: `optional`, `required`.

func (GetInstanceMetadataOptionOutput) ToGetInstanceMetadataOptionOutput

func (o GetInstanceMetadataOptionOutput) ToGetInstanceMetadataOptionOutput() GetInstanceMetadataOptionOutput

func (GetInstanceMetadataOptionOutput) ToGetInstanceMetadataOptionOutputWithContext

func (o GetInstanceMetadataOptionOutput) ToGetInstanceMetadataOptionOutputWithContext(ctx context.Context) GetInstanceMetadataOptionOutput

type GetInstanceRootBlockDevice

type GetInstanceRootBlockDevice struct {
	// If the root block device will be deleted on termination.
	DeleteOnTermination bool `pulumi:"deleteOnTermination"`
	// The physical name of the device.
	DeviceName string `pulumi:"deviceName"`
	// If the EBS volume is encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// `0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.
	Iops     int    `pulumi:"iops"`
	KmsKeyId string `pulumi:"kmsKeyId"`
	// A map of tags assigned to the Instance.
	Tags map[string]string `pulumi:"tags"`
	// The throughput of the volume, in MiB/s.
	Throughput int    `pulumi:"throughput"`
	VolumeId   string `pulumi:"volumeId"`
	// The size of the volume, in GiB.
	VolumeSize int `pulumi:"volumeSize"`
	// The type of the volume.
	VolumeType string `pulumi:"volumeType"`
}

type GetInstanceRootBlockDeviceArgs

type GetInstanceRootBlockDeviceArgs struct {
	// If the root block device will be deleted on termination.
	DeleteOnTermination pulumi.BoolInput `pulumi:"deleteOnTermination"`
	// The physical name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// If the EBS volume is encrypted.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// `0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.
	Iops     pulumi.IntInput    `pulumi:"iops"`
	KmsKeyId pulumi.StringInput `pulumi:"kmsKeyId"`
	// A map of tags assigned to the Instance.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The throughput of the volume, in MiB/s.
	Throughput pulumi.IntInput    `pulumi:"throughput"`
	VolumeId   pulumi.StringInput `pulumi:"volumeId"`
	// The size of the volume, in GiB.
	VolumeSize pulumi.IntInput `pulumi:"volumeSize"`
	// The type of the volume.
	VolumeType pulumi.StringInput `pulumi:"volumeType"`
}

func (GetInstanceRootBlockDeviceArgs) ElementType

func (GetInstanceRootBlockDeviceArgs) ToGetInstanceRootBlockDeviceOutput

func (i GetInstanceRootBlockDeviceArgs) ToGetInstanceRootBlockDeviceOutput() GetInstanceRootBlockDeviceOutput

func (GetInstanceRootBlockDeviceArgs) ToGetInstanceRootBlockDeviceOutputWithContext

func (i GetInstanceRootBlockDeviceArgs) ToGetInstanceRootBlockDeviceOutputWithContext(ctx context.Context) GetInstanceRootBlockDeviceOutput

type GetInstanceRootBlockDeviceArray

type GetInstanceRootBlockDeviceArray []GetInstanceRootBlockDeviceInput

func (GetInstanceRootBlockDeviceArray) ElementType

func (GetInstanceRootBlockDeviceArray) ToGetInstanceRootBlockDeviceArrayOutput

func (i GetInstanceRootBlockDeviceArray) ToGetInstanceRootBlockDeviceArrayOutput() GetInstanceRootBlockDeviceArrayOutput

func (GetInstanceRootBlockDeviceArray) ToGetInstanceRootBlockDeviceArrayOutputWithContext

func (i GetInstanceRootBlockDeviceArray) ToGetInstanceRootBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceRootBlockDeviceArrayOutput

type GetInstanceRootBlockDeviceArrayInput

type GetInstanceRootBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetInstanceRootBlockDeviceArrayOutput() GetInstanceRootBlockDeviceArrayOutput
	ToGetInstanceRootBlockDeviceArrayOutputWithContext(context.Context) GetInstanceRootBlockDeviceArrayOutput
}

GetInstanceRootBlockDeviceArrayInput is an input type that accepts GetInstanceRootBlockDeviceArray and GetInstanceRootBlockDeviceArrayOutput values. You can construct a concrete instance of `GetInstanceRootBlockDeviceArrayInput` via:

GetInstanceRootBlockDeviceArray{ GetInstanceRootBlockDeviceArgs{...} }

type GetInstanceRootBlockDeviceArrayOutput

type GetInstanceRootBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceRootBlockDeviceArrayOutput) ElementType

func (GetInstanceRootBlockDeviceArrayOutput) Index

func (GetInstanceRootBlockDeviceArrayOutput) ToGetInstanceRootBlockDeviceArrayOutput

func (o GetInstanceRootBlockDeviceArrayOutput) ToGetInstanceRootBlockDeviceArrayOutput() GetInstanceRootBlockDeviceArrayOutput

func (GetInstanceRootBlockDeviceArrayOutput) ToGetInstanceRootBlockDeviceArrayOutputWithContext

func (o GetInstanceRootBlockDeviceArrayOutput) ToGetInstanceRootBlockDeviceArrayOutputWithContext(ctx context.Context) GetInstanceRootBlockDeviceArrayOutput

type GetInstanceRootBlockDeviceInput

type GetInstanceRootBlockDeviceInput interface {
	pulumi.Input

	ToGetInstanceRootBlockDeviceOutput() GetInstanceRootBlockDeviceOutput
	ToGetInstanceRootBlockDeviceOutputWithContext(context.Context) GetInstanceRootBlockDeviceOutput
}

GetInstanceRootBlockDeviceInput is an input type that accepts GetInstanceRootBlockDeviceArgs and GetInstanceRootBlockDeviceOutput values. You can construct a concrete instance of `GetInstanceRootBlockDeviceInput` via:

GetInstanceRootBlockDeviceArgs{...}

type GetInstanceRootBlockDeviceOutput

type GetInstanceRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetInstanceRootBlockDeviceOutput) DeleteOnTermination

func (o GetInstanceRootBlockDeviceOutput) DeleteOnTermination() pulumi.BoolOutput

If the root block device will be deleted on termination.

func (GetInstanceRootBlockDeviceOutput) DeviceName

The physical name of the device.

func (GetInstanceRootBlockDeviceOutput) ElementType

func (GetInstanceRootBlockDeviceOutput) Encrypted

If the EBS volume is encrypted.

func (GetInstanceRootBlockDeviceOutput) Iops

`0` If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.

func (GetInstanceRootBlockDeviceOutput) KmsKeyId

func (GetInstanceRootBlockDeviceOutput) Tags

A map of tags assigned to the Instance.

func (GetInstanceRootBlockDeviceOutput) Throughput

The throughput of the volume, in MiB/s.

func (GetInstanceRootBlockDeviceOutput) ToGetInstanceRootBlockDeviceOutput

func (o GetInstanceRootBlockDeviceOutput) ToGetInstanceRootBlockDeviceOutput() GetInstanceRootBlockDeviceOutput

func (GetInstanceRootBlockDeviceOutput) ToGetInstanceRootBlockDeviceOutputWithContext

func (o GetInstanceRootBlockDeviceOutput) ToGetInstanceRootBlockDeviceOutputWithContext(ctx context.Context) GetInstanceRootBlockDeviceOutput

func (GetInstanceRootBlockDeviceOutput) VolumeId

func (GetInstanceRootBlockDeviceOutput) VolumeSize

The size of the volume, in GiB.

func (GetInstanceRootBlockDeviceOutput) VolumeType

The type of the volume.

type GetInstanceTypeArgs

type GetInstanceTypeArgs struct {
	// The default number of cores for the instance type.
	DefaultCores *int `pulumi:"defaultCores"`
	// The  default  number of threads per core for the instance type.
	DefaultThreadsPerCore *int `pulumi:"defaultThreadsPerCore"`
	// Describes the FPGA accelerator settings for the instance type.
	// * `fpgas.#.count` - The count of FPGA accelerators for the instance type.
	// * `fpgas.#.manufacturer` - The manufacturer of the FPGA accelerator.
	// * `fpgas.#.memory_size` - The size (in MiB) for the memory available to the FPGA accelerator.
	// * `fpgas.#.name` - The name of the FPGA accelerator.
	Fpgas []GetInstanceTypeFpga `pulumi:"fpgas"`
	// Describes the GPU accelerators for the instance type.
	// * `gpus.#.count` - The number of GPUs for the instance type.
	// * `gpus.#.manufacturer` - The manufacturer of the GPU accelerator.
	// * `gpus.#.memory_size` - The size (in MiB) for the memory available to the GPU accelerator.
	// * `gpus.#.name` - The name of the GPU accelerator.
	Gpuses []GetInstanceTypeGpus `pulumi:"gpuses"`
	// Indicates the hypervisor used for the instance type.
	// * `inferenceAccelerators` Describes the Inference accelerators for the instance type.
	// * `inference_accelerators.#.count` - The number of Inference accelerators for the instance type.
	// * `inference_accelerators.#.manufacturer` - The manufacturer of the Inference accelerator.
	// * `inference_accelerators.#.name` - The name of the Inference accelerator.
	Hypervisor            *string                               `pulumi:"hypervisor"`
	InferenceAccelerators []GetInstanceTypeInferenceAccelerator `pulumi:"inferenceAccelerators"`
	// Describes the disks for the instance type.
	// * `instance_disks.#.count` - The number of disks with this configuration.
	// * `instance_disks.#.size` - The size of the disk in GB.
	// * `instance_disks.#.type` - The type of disk.
	InstanceDisks []GetInstanceTypeInstanceDisk `pulumi:"instanceDisks"`
	// Instance
	InstanceType string `pulumi:"instanceType"`
	// The maximum number of IPv6 addresses per network interface.
	MaximumIpv6AddressesPerInterface *int `pulumi:"maximumIpv6AddressesPerInterface"`
	// The total memory of all FPGA accelerators for the instance type (in MiB).
	TotalFpgaMemory *int `pulumi:"totalFpgaMemory"`
	// The total size of the memory for the GPU accelerators for the instance type (in MiB).
	TotalGpuMemory *int `pulumi:"totalGpuMemory"`
	// The total size of the instance disks, in GB.
	TotalInstanceStorage *int `pulumi:"totalInstanceStorage"`
}

A collection of arguments for invoking getInstanceType.

type GetInstanceTypeFpga

type GetInstanceTypeFpga struct {
	Count        int    `pulumi:"count"`
	Manufacturer string `pulumi:"manufacturer"`
	// Size of the instance memory, in MiB.
	MemorySize int    `pulumi:"memorySize"`
	Name       string `pulumi:"name"`
}

type GetInstanceTypeFpgaArgs

type GetInstanceTypeFpgaArgs struct {
	Count        pulumi.IntInput    `pulumi:"count"`
	Manufacturer pulumi.StringInput `pulumi:"manufacturer"`
	// Size of the instance memory, in MiB.
	MemorySize pulumi.IntInput    `pulumi:"memorySize"`
	Name       pulumi.StringInput `pulumi:"name"`
}

func (GetInstanceTypeFpgaArgs) ElementType

func (GetInstanceTypeFpgaArgs) ElementType() reflect.Type

func (GetInstanceTypeFpgaArgs) ToGetInstanceTypeFpgaOutput

func (i GetInstanceTypeFpgaArgs) ToGetInstanceTypeFpgaOutput() GetInstanceTypeFpgaOutput

func (GetInstanceTypeFpgaArgs) ToGetInstanceTypeFpgaOutputWithContext

func (i GetInstanceTypeFpgaArgs) ToGetInstanceTypeFpgaOutputWithContext(ctx context.Context) GetInstanceTypeFpgaOutput

type GetInstanceTypeFpgaArray

type GetInstanceTypeFpgaArray []GetInstanceTypeFpgaInput

func (GetInstanceTypeFpgaArray) ElementType

func (GetInstanceTypeFpgaArray) ElementType() reflect.Type

func (GetInstanceTypeFpgaArray) ToGetInstanceTypeFpgaArrayOutput

func (i GetInstanceTypeFpgaArray) ToGetInstanceTypeFpgaArrayOutput() GetInstanceTypeFpgaArrayOutput

func (GetInstanceTypeFpgaArray) ToGetInstanceTypeFpgaArrayOutputWithContext

func (i GetInstanceTypeFpgaArray) ToGetInstanceTypeFpgaArrayOutputWithContext(ctx context.Context) GetInstanceTypeFpgaArrayOutput

type GetInstanceTypeFpgaArrayInput

type GetInstanceTypeFpgaArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeFpgaArrayOutput() GetInstanceTypeFpgaArrayOutput
	ToGetInstanceTypeFpgaArrayOutputWithContext(context.Context) GetInstanceTypeFpgaArrayOutput
}

GetInstanceTypeFpgaArrayInput is an input type that accepts GetInstanceTypeFpgaArray and GetInstanceTypeFpgaArrayOutput values. You can construct a concrete instance of `GetInstanceTypeFpgaArrayInput` via:

GetInstanceTypeFpgaArray{ GetInstanceTypeFpgaArgs{...} }

type GetInstanceTypeFpgaArrayOutput

type GetInstanceTypeFpgaArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeFpgaArrayOutput) ElementType

func (GetInstanceTypeFpgaArrayOutput) Index

func (GetInstanceTypeFpgaArrayOutput) ToGetInstanceTypeFpgaArrayOutput

func (o GetInstanceTypeFpgaArrayOutput) ToGetInstanceTypeFpgaArrayOutput() GetInstanceTypeFpgaArrayOutput

func (GetInstanceTypeFpgaArrayOutput) ToGetInstanceTypeFpgaArrayOutputWithContext

func (o GetInstanceTypeFpgaArrayOutput) ToGetInstanceTypeFpgaArrayOutputWithContext(ctx context.Context) GetInstanceTypeFpgaArrayOutput

type GetInstanceTypeFpgaInput

type GetInstanceTypeFpgaInput interface {
	pulumi.Input

	ToGetInstanceTypeFpgaOutput() GetInstanceTypeFpgaOutput
	ToGetInstanceTypeFpgaOutputWithContext(context.Context) GetInstanceTypeFpgaOutput
}

GetInstanceTypeFpgaInput is an input type that accepts GetInstanceTypeFpgaArgs and GetInstanceTypeFpgaOutput values. You can construct a concrete instance of `GetInstanceTypeFpgaInput` via:

GetInstanceTypeFpgaArgs{...}

type GetInstanceTypeFpgaOutput

type GetInstanceTypeFpgaOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeFpgaOutput) Count

func (GetInstanceTypeFpgaOutput) ElementType

func (GetInstanceTypeFpgaOutput) ElementType() reflect.Type

func (GetInstanceTypeFpgaOutput) Manufacturer

func (GetInstanceTypeFpgaOutput) MemorySize

Size of the instance memory, in MiB.

func (GetInstanceTypeFpgaOutput) Name

func (GetInstanceTypeFpgaOutput) ToGetInstanceTypeFpgaOutput

func (o GetInstanceTypeFpgaOutput) ToGetInstanceTypeFpgaOutput() GetInstanceTypeFpgaOutput

func (GetInstanceTypeFpgaOutput) ToGetInstanceTypeFpgaOutputWithContext

func (o GetInstanceTypeFpgaOutput) ToGetInstanceTypeFpgaOutputWithContext(ctx context.Context) GetInstanceTypeFpgaOutput

type GetInstanceTypeGpus

type GetInstanceTypeGpus struct {
	Count        int    `pulumi:"count"`
	Manufacturer string `pulumi:"manufacturer"`
	// Size of the instance memory, in MiB.
	MemorySize int    `pulumi:"memorySize"`
	Name       string `pulumi:"name"`
}

type GetInstanceTypeGpusArgs

type GetInstanceTypeGpusArgs struct {
	Count        pulumi.IntInput    `pulumi:"count"`
	Manufacturer pulumi.StringInput `pulumi:"manufacturer"`
	// Size of the instance memory, in MiB.
	MemorySize pulumi.IntInput    `pulumi:"memorySize"`
	Name       pulumi.StringInput `pulumi:"name"`
}

func (GetInstanceTypeGpusArgs) ElementType

func (GetInstanceTypeGpusArgs) ElementType() reflect.Type

func (GetInstanceTypeGpusArgs) ToGetInstanceTypeGpusOutput

func (i GetInstanceTypeGpusArgs) ToGetInstanceTypeGpusOutput() GetInstanceTypeGpusOutput

func (GetInstanceTypeGpusArgs) ToGetInstanceTypeGpusOutputWithContext

func (i GetInstanceTypeGpusArgs) ToGetInstanceTypeGpusOutputWithContext(ctx context.Context) GetInstanceTypeGpusOutput

type GetInstanceTypeGpusArray

type GetInstanceTypeGpusArray []GetInstanceTypeGpusInput

func (GetInstanceTypeGpusArray) ElementType

func (GetInstanceTypeGpusArray) ElementType() reflect.Type

func (GetInstanceTypeGpusArray) ToGetInstanceTypeGpusArrayOutput

func (i GetInstanceTypeGpusArray) ToGetInstanceTypeGpusArrayOutput() GetInstanceTypeGpusArrayOutput

func (GetInstanceTypeGpusArray) ToGetInstanceTypeGpusArrayOutputWithContext

func (i GetInstanceTypeGpusArray) ToGetInstanceTypeGpusArrayOutputWithContext(ctx context.Context) GetInstanceTypeGpusArrayOutput

type GetInstanceTypeGpusArrayInput

type GetInstanceTypeGpusArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeGpusArrayOutput() GetInstanceTypeGpusArrayOutput
	ToGetInstanceTypeGpusArrayOutputWithContext(context.Context) GetInstanceTypeGpusArrayOutput
}

GetInstanceTypeGpusArrayInput is an input type that accepts GetInstanceTypeGpusArray and GetInstanceTypeGpusArrayOutput values. You can construct a concrete instance of `GetInstanceTypeGpusArrayInput` via:

GetInstanceTypeGpusArray{ GetInstanceTypeGpusArgs{...} }

type GetInstanceTypeGpusArrayOutput

type GetInstanceTypeGpusArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeGpusArrayOutput) ElementType

func (GetInstanceTypeGpusArrayOutput) Index

func (GetInstanceTypeGpusArrayOutput) ToGetInstanceTypeGpusArrayOutput

func (o GetInstanceTypeGpusArrayOutput) ToGetInstanceTypeGpusArrayOutput() GetInstanceTypeGpusArrayOutput

func (GetInstanceTypeGpusArrayOutput) ToGetInstanceTypeGpusArrayOutputWithContext

func (o GetInstanceTypeGpusArrayOutput) ToGetInstanceTypeGpusArrayOutputWithContext(ctx context.Context) GetInstanceTypeGpusArrayOutput

type GetInstanceTypeGpusInput

type GetInstanceTypeGpusInput interface {
	pulumi.Input

	ToGetInstanceTypeGpusOutput() GetInstanceTypeGpusOutput
	ToGetInstanceTypeGpusOutputWithContext(context.Context) GetInstanceTypeGpusOutput
}

GetInstanceTypeGpusInput is an input type that accepts GetInstanceTypeGpusArgs and GetInstanceTypeGpusOutput values. You can construct a concrete instance of `GetInstanceTypeGpusInput` via:

GetInstanceTypeGpusArgs{...}

type GetInstanceTypeGpusOutput

type GetInstanceTypeGpusOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeGpusOutput) Count

func (GetInstanceTypeGpusOutput) ElementType

func (GetInstanceTypeGpusOutput) ElementType() reflect.Type

func (GetInstanceTypeGpusOutput) Manufacturer

func (GetInstanceTypeGpusOutput) MemorySize

Size of the instance memory, in MiB.

func (GetInstanceTypeGpusOutput) Name

func (GetInstanceTypeGpusOutput) ToGetInstanceTypeGpusOutput

func (o GetInstanceTypeGpusOutput) ToGetInstanceTypeGpusOutput() GetInstanceTypeGpusOutput

func (GetInstanceTypeGpusOutput) ToGetInstanceTypeGpusOutputWithContext

func (o GetInstanceTypeGpusOutput) ToGetInstanceTypeGpusOutputWithContext(ctx context.Context) GetInstanceTypeGpusOutput

type GetInstanceTypeInferenceAccelerator

type GetInstanceTypeInferenceAccelerator struct {
	Count        int    `pulumi:"count"`
	Manufacturer string `pulumi:"manufacturer"`
	Name         string `pulumi:"name"`
}

type GetInstanceTypeInferenceAcceleratorArgs

type GetInstanceTypeInferenceAcceleratorArgs struct {
	Count        pulumi.IntInput    `pulumi:"count"`
	Manufacturer pulumi.StringInput `pulumi:"manufacturer"`
	Name         pulumi.StringInput `pulumi:"name"`
}

func (GetInstanceTypeInferenceAcceleratorArgs) ElementType

func (GetInstanceTypeInferenceAcceleratorArgs) ToGetInstanceTypeInferenceAcceleratorOutput

func (i GetInstanceTypeInferenceAcceleratorArgs) ToGetInstanceTypeInferenceAcceleratorOutput() GetInstanceTypeInferenceAcceleratorOutput

func (GetInstanceTypeInferenceAcceleratorArgs) ToGetInstanceTypeInferenceAcceleratorOutputWithContext

func (i GetInstanceTypeInferenceAcceleratorArgs) ToGetInstanceTypeInferenceAcceleratorOutputWithContext(ctx context.Context) GetInstanceTypeInferenceAcceleratorOutput

type GetInstanceTypeInferenceAcceleratorArray

type GetInstanceTypeInferenceAcceleratorArray []GetInstanceTypeInferenceAcceleratorInput

func (GetInstanceTypeInferenceAcceleratorArray) ElementType

func (GetInstanceTypeInferenceAcceleratorArray) ToGetInstanceTypeInferenceAcceleratorArrayOutput

func (i GetInstanceTypeInferenceAcceleratorArray) ToGetInstanceTypeInferenceAcceleratorArrayOutput() GetInstanceTypeInferenceAcceleratorArrayOutput

func (GetInstanceTypeInferenceAcceleratorArray) ToGetInstanceTypeInferenceAcceleratorArrayOutputWithContext

func (i GetInstanceTypeInferenceAcceleratorArray) ToGetInstanceTypeInferenceAcceleratorArrayOutputWithContext(ctx context.Context) GetInstanceTypeInferenceAcceleratorArrayOutput

type GetInstanceTypeInferenceAcceleratorArrayInput

type GetInstanceTypeInferenceAcceleratorArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeInferenceAcceleratorArrayOutput() GetInstanceTypeInferenceAcceleratorArrayOutput
	ToGetInstanceTypeInferenceAcceleratorArrayOutputWithContext(context.Context) GetInstanceTypeInferenceAcceleratorArrayOutput
}

GetInstanceTypeInferenceAcceleratorArrayInput is an input type that accepts GetInstanceTypeInferenceAcceleratorArray and GetInstanceTypeInferenceAcceleratorArrayOutput values. You can construct a concrete instance of `GetInstanceTypeInferenceAcceleratorArrayInput` via:

GetInstanceTypeInferenceAcceleratorArray{ GetInstanceTypeInferenceAcceleratorArgs{...} }

type GetInstanceTypeInferenceAcceleratorArrayOutput

type GetInstanceTypeInferenceAcceleratorArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeInferenceAcceleratorArrayOutput) ElementType

func (GetInstanceTypeInferenceAcceleratorArrayOutput) Index

func (GetInstanceTypeInferenceAcceleratorArrayOutput) ToGetInstanceTypeInferenceAcceleratorArrayOutput

func (o GetInstanceTypeInferenceAcceleratorArrayOutput) ToGetInstanceTypeInferenceAcceleratorArrayOutput() GetInstanceTypeInferenceAcceleratorArrayOutput

func (GetInstanceTypeInferenceAcceleratorArrayOutput) ToGetInstanceTypeInferenceAcceleratorArrayOutputWithContext

func (o GetInstanceTypeInferenceAcceleratorArrayOutput) ToGetInstanceTypeInferenceAcceleratorArrayOutputWithContext(ctx context.Context) GetInstanceTypeInferenceAcceleratorArrayOutput

type GetInstanceTypeInferenceAcceleratorInput

type GetInstanceTypeInferenceAcceleratorInput interface {
	pulumi.Input

	ToGetInstanceTypeInferenceAcceleratorOutput() GetInstanceTypeInferenceAcceleratorOutput
	ToGetInstanceTypeInferenceAcceleratorOutputWithContext(context.Context) GetInstanceTypeInferenceAcceleratorOutput
}

GetInstanceTypeInferenceAcceleratorInput is an input type that accepts GetInstanceTypeInferenceAcceleratorArgs and GetInstanceTypeInferenceAcceleratorOutput values. You can construct a concrete instance of `GetInstanceTypeInferenceAcceleratorInput` via:

GetInstanceTypeInferenceAcceleratorArgs{...}

type GetInstanceTypeInferenceAcceleratorOutput

type GetInstanceTypeInferenceAcceleratorOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeInferenceAcceleratorOutput) Count

func (GetInstanceTypeInferenceAcceleratorOutput) ElementType

func (GetInstanceTypeInferenceAcceleratorOutput) Manufacturer

func (GetInstanceTypeInferenceAcceleratorOutput) Name

func (GetInstanceTypeInferenceAcceleratorOutput) ToGetInstanceTypeInferenceAcceleratorOutput

func (o GetInstanceTypeInferenceAcceleratorOutput) ToGetInstanceTypeInferenceAcceleratorOutput() GetInstanceTypeInferenceAcceleratorOutput

func (GetInstanceTypeInferenceAcceleratorOutput) ToGetInstanceTypeInferenceAcceleratorOutputWithContext

func (o GetInstanceTypeInferenceAcceleratorOutput) ToGetInstanceTypeInferenceAcceleratorOutputWithContext(ctx context.Context) GetInstanceTypeInferenceAcceleratorOutput

type GetInstanceTypeInstanceDisk

type GetInstanceTypeInstanceDisk struct {
	Count int    `pulumi:"count"`
	Size  int    `pulumi:"size"`
	Type  string `pulumi:"type"`
}

type GetInstanceTypeInstanceDiskArgs

type GetInstanceTypeInstanceDiskArgs struct {
	Count pulumi.IntInput    `pulumi:"count"`
	Size  pulumi.IntInput    `pulumi:"size"`
	Type  pulumi.StringInput `pulumi:"type"`
}

func (GetInstanceTypeInstanceDiskArgs) ElementType

func (GetInstanceTypeInstanceDiskArgs) ToGetInstanceTypeInstanceDiskOutput

func (i GetInstanceTypeInstanceDiskArgs) ToGetInstanceTypeInstanceDiskOutput() GetInstanceTypeInstanceDiskOutput

func (GetInstanceTypeInstanceDiskArgs) ToGetInstanceTypeInstanceDiskOutputWithContext

func (i GetInstanceTypeInstanceDiskArgs) ToGetInstanceTypeInstanceDiskOutputWithContext(ctx context.Context) GetInstanceTypeInstanceDiskOutput

type GetInstanceTypeInstanceDiskArray

type GetInstanceTypeInstanceDiskArray []GetInstanceTypeInstanceDiskInput

func (GetInstanceTypeInstanceDiskArray) ElementType

func (GetInstanceTypeInstanceDiskArray) ToGetInstanceTypeInstanceDiskArrayOutput

func (i GetInstanceTypeInstanceDiskArray) ToGetInstanceTypeInstanceDiskArrayOutput() GetInstanceTypeInstanceDiskArrayOutput

func (GetInstanceTypeInstanceDiskArray) ToGetInstanceTypeInstanceDiskArrayOutputWithContext

func (i GetInstanceTypeInstanceDiskArray) ToGetInstanceTypeInstanceDiskArrayOutputWithContext(ctx context.Context) GetInstanceTypeInstanceDiskArrayOutput

type GetInstanceTypeInstanceDiskArrayInput

type GetInstanceTypeInstanceDiskArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeInstanceDiskArrayOutput() GetInstanceTypeInstanceDiskArrayOutput
	ToGetInstanceTypeInstanceDiskArrayOutputWithContext(context.Context) GetInstanceTypeInstanceDiskArrayOutput
}

GetInstanceTypeInstanceDiskArrayInput is an input type that accepts GetInstanceTypeInstanceDiskArray and GetInstanceTypeInstanceDiskArrayOutput values. You can construct a concrete instance of `GetInstanceTypeInstanceDiskArrayInput` via:

GetInstanceTypeInstanceDiskArray{ GetInstanceTypeInstanceDiskArgs{...} }

type GetInstanceTypeInstanceDiskArrayOutput

type GetInstanceTypeInstanceDiskArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeInstanceDiskArrayOutput) ElementType

func (GetInstanceTypeInstanceDiskArrayOutput) Index

func (GetInstanceTypeInstanceDiskArrayOutput) ToGetInstanceTypeInstanceDiskArrayOutput

func (o GetInstanceTypeInstanceDiskArrayOutput) ToGetInstanceTypeInstanceDiskArrayOutput() GetInstanceTypeInstanceDiskArrayOutput

func (GetInstanceTypeInstanceDiskArrayOutput) ToGetInstanceTypeInstanceDiskArrayOutputWithContext

func (o GetInstanceTypeInstanceDiskArrayOutput) ToGetInstanceTypeInstanceDiskArrayOutputWithContext(ctx context.Context) GetInstanceTypeInstanceDiskArrayOutput

type GetInstanceTypeInstanceDiskInput

type GetInstanceTypeInstanceDiskInput interface {
	pulumi.Input

	ToGetInstanceTypeInstanceDiskOutput() GetInstanceTypeInstanceDiskOutput
	ToGetInstanceTypeInstanceDiskOutputWithContext(context.Context) GetInstanceTypeInstanceDiskOutput
}

GetInstanceTypeInstanceDiskInput is an input type that accepts GetInstanceTypeInstanceDiskArgs and GetInstanceTypeInstanceDiskOutput values. You can construct a concrete instance of `GetInstanceTypeInstanceDiskInput` via:

GetInstanceTypeInstanceDiskArgs{...}

type GetInstanceTypeInstanceDiskOutput

type GetInstanceTypeInstanceDiskOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeInstanceDiskOutput) Count

func (GetInstanceTypeInstanceDiskOutput) ElementType

func (GetInstanceTypeInstanceDiskOutput) Size

func (GetInstanceTypeInstanceDiskOutput) ToGetInstanceTypeInstanceDiskOutput

func (o GetInstanceTypeInstanceDiskOutput) ToGetInstanceTypeInstanceDiskOutput() GetInstanceTypeInstanceDiskOutput

func (GetInstanceTypeInstanceDiskOutput) ToGetInstanceTypeInstanceDiskOutputWithContext

func (o GetInstanceTypeInstanceDiskOutput) ToGetInstanceTypeInstanceDiskOutputWithContext(ctx context.Context) GetInstanceTypeInstanceDiskOutput

func (GetInstanceTypeInstanceDiskOutput) Type

type GetInstanceTypeOfferingArgs

type GetInstanceTypeOfferingArgs struct {
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstanceTypeOfferings.html) for supported filters. Detailed below.
	Filters []GetInstanceTypeOfferingFilter `pulumi:"filters"`
	// Location type. Defaults to `region`. Valid values: `availability-zone`, `availability-zone-id`, and `region`.
	LocationType *string `pulumi:"locationType"`
	// Ordered list of preferred EC2 Instance Types. The first match in this list will be returned. If no preferred matches are found and the original search returned more than one result, an error is returned.
	PreferredInstanceTypes []string `pulumi:"preferredInstanceTypes"`
}

A collection of arguments for invoking getInstanceTypeOffering.

type GetInstanceTypeOfferingFilter

type GetInstanceTypeOfferingFilter struct {
	// Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetInstanceTypeOfferingFilterArgs

type GetInstanceTypeOfferingFilterArgs struct {
	// Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInstanceTypeOfferingFilterArgs) ElementType

func (GetInstanceTypeOfferingFilterArgs) ToGetInstanceTypeOfferingFilterOutput

func (i GetInstanceTypeOfferingFilterArgs) ToGetInstanceTypeOfferingFilterOutput() GetInstanceTypeOfferingFilterOutput

func (GetInstanceTypeOfferingFilterArgs) ToGetInstanceTypeOfferingFilterOutputWithContext

func (i GetInstanceTypeOfferingFilterArgs) ToGetInstanceTypeOfferingFilterOutputWithContext(ctx context.Context) GetInstanceTypeOfferingFilterOutput

type GetInstanceTypeOfferingFilterArray

type GetInstanceTypeOfferingFilterArray []GetInstanceTypeOfferingFilterInput

func (GetInstanceTypeOfferingFilterArray) ElementType

func (GetInstanceTypeOfferingFilterArray) ToGetInstanceTypeOfferingFilterArrayOutput

func (i GetInstanceTypeOfferingFilterArray) ToGetInstanceTypeOfferingFilterArrayOutput() GetInstanceTypeOfferingFilterArrayOutput

func (GetInstanceTypeOfferingFilterArray) ToGetInstanceTypeOfferingFilterArrayOutputWithContext

func (i GetInstanceTypeOfferingFilterArray) ToGetInstanceTypeOfferingFilterArrayOutputWithContext(ctx context.Context) GetInstanceTypeOfferingFilterArrayOutput

type GetInstanceTypeOfferingFilterArrayInput

type GetInstanceTypeOfferingFilterArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeOfferingFilterArrayOutput() GetInstanceTypeOfferingFilterArrayOutput
	ToGetInstanceTypeOfferingFilterArrayOutputWithContext(context.Context) GetInstanceTypeOfferingFilterArrayOutput
}

GetInstanceTypeOfferingFilterArrayInput is an input type that accepts GetInstanceTypeOfferingFilterArray and GetInstanceTypeOfferingFilterArrayOutput values. You can construct a concrete instance of `GetInstanceTypeOfferingFilterArrayInput` via:

GetInstanceTypeOfferingFilterArray{ GetInstanceTypeOfferingFilterArgs{...} }

type GetInstanceTypeOfferingFilterArrayOutput

type GetInstanceTypeOfferingFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeOfferingFilterArrayOutput) ElementType

func (GetInstanceTypeOfferingFilterArrayOutput) Index

func (GetInstanceTypeOfferingFilterArrayOutput) ToGetInstanceTypeOfferingFilterArrayOutput

func (o GetInstanceTypeOfferingFilterArrayOutput) ToGetInstanceTypeOfferingFilterArrayOutput() GetInstanceTypeOfferingFilterArrayOutput

func (GetInstanceTypeOfferingFilterArrayOutput) ToGetInstanceTypeOfferingFilterArrayOutputWithContext

func (o GetInstanceTypeOfferingFilterArrayOutput) ToGetInstanceTypeOfferingFilterArrayOutputWithContext(ctx context.Context) GetInstanceTypeOfferingFilterArrayOutput

type GetInstanceTypeOfferingFilterInput

type GetInstanceTypeOfferingFilterInput interface {
	pulumi.Input

	ToGetInstanceTypeOfferingFilterOutput() GetInstanceTypeOfferingFilterOutput
	ToGetInstanceTypeOfferingFilterOutputWithContext(context.Context) GetInstanceTypeOfferingFilterOutput
}

GetInstanceTypeOfferingFilterInput is an input type that accepts GetInstanceTypeOfferingFilterArgs and GetInstanceTypeOfferingFilterOutput values. You can construct a concrete instance of `GetInstanceTypeOfferingFilterInput` via:

GetInstanceTypeOfferingFilterArgs{...}

type GetInstanceTypeOfferingFilterOutput

type GetInstanceTypeOfferingFilterOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeOfferingFilterOutput) ElementType

func (GetInstanceTypeOfferingFilterOutput) Name

Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.

func (GetInstanceTypeOfferingFilterOutput) ToGetInstanceTypeOfferingFilterOutput

func (o GetInstanceTypeOfferingFilterOutput) ToGetInstanceTypeOfferingFilterOutput() GetInstanceTypeOfferingFilterOutput

func (GetInstanceTypeOfferingFilterOutput) ToGetInstanceTypeOfferingFilterOutputWithContext

func (o GetInstanceTypeOfferingFilterOutput) ToGetInstanceTypeOfferingFilterOutputWithContext(ctx context.Context) GetInstanceTypeOfferingFilterOutput

func (GetInstanceTypeOfferingFilterOutput) Values

List of one or more values for the filter.

type GetInstanceTypeOfferingResult

type GetInstanceTypeOfferingResult struct {
	Filters []GetInstanceTypeOfferingFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// EC2 Instance Type.
	InstanceType           string   `pulumi:"instanceType"`
	LocationType           *string  `pulumi:"locationType"`
	PreferredInstanceTypes []string `pulumi:"preferredInstanceTypes"`
}

A collection of values returned by getInstanceTypeOffering.

func GetInstanceTypeOffering

func GetInstanceTypeOffering(ctx *pulumi.Context, args *GetInstanceTypeOfferingArgs, opts ...pulumi.InvokeOption) (*GetInstanceTypeOfferingResult, error)

Information about single EC2 Instance Type Offering.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetInstanceTypeOffering(ctx, &ec2.GetInstanceTypeOfferingArgs{
			Filters: []ec2.GetInstanceTypeOfferingFilter{
				ec2.GetInstanceTypeOfferingFilter{
					Name: "instance-type",
					Values: []string{
						"t2.micro",
						"t3.micro",
					},
				},
			},
			PreferredInstanceTypes: []string{
				"t3.micro",
				"t2.micro",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstanceTypeOfferingsArgs

type GetInstanceTypeOfferingsArgs struct {
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstanceTypeOfferings.html) for supported filters. Detailed below.
	Filters []GetInstanceTypeOfferingsFilter `pulumi:"filters"`
	// Location type. Defaults to `region`. Valid values: `availability-zone`, `availability-zone-id`, and `region`.
	LocationType *string `pulumi:"locationType"`
}

A collection of arguments for invoking getInstanceTypeOfferings.

type GetInstanceTypeOfferingsFilter

type GetInstanceTypeOfferingsFilter struct {
	// Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetInstanceTypeOfferingsFilterArgs

type GetInstanceTypeOfferingsFilterArgs struct {
	// Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInstanceTypeOfferingsFilterArgs) ElementType

func (GetInstanceTypeOfferingsFilterArgs) ToGetInstanceTypeOfferingsFilterOutput

func (i GetInstanceTypeOfferingsFilterArgs) ToGetInstanceTypeOfferingsFilterOutput() GetInstanceTypeOfferingsFilterOutput

func (GetInstanceTypeOfferingsFilterArgs) ToGetInstanceTypeOfferingsFilterOutputWithContext

func (i GetInstanceTypeOfferingsFilterArgs) ToGetInstanceTypeOfferingsFilterOutputWithContext(ctx context.Context) GetInstanceTypeOfferingsFilterOutput

type GetInstanceTypeOfferingsFilterArray

type GetInstanceTypeOfferingsFilterArray []GetInstanceTypeOfferingsFilterInput

func (GetInstanceTypeOfferingsFilterArray) ElementType

func (GetInstanceTypeOfferingsFilterArray) ToGetInstanceTypeOfferingsFilterArrayOutput

func (i GetInstanceTypeOfferingsFilterArray) ToGetInstanceTypeOfferingsFilterArrayOutput() GetInstanceTypeOfferingsFilterArrayOutput

func (GetInstanceTypeOfferingsFilterArray) ToGetInstanceTypeOfferingsFilterArrayOutputWithContext

func (i GetInstanceTypeOfferingsFilterArray) ToGetInstanceTypeOfferingsFilterArrayOutputWithContext(ctx context.Context) GetInstanceTypeOfferingsFilterArrayOutput

type GetInstanceTypeOfferingsFilterArrayInput

type GetInstanceTypeOfferingsFilterArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeOfferingsFilterArrayOutput() GetInstanceTypeOfferingsFilterArrayOutput
	ToGetInstanceTypeOfferingsFilterArrayOutputWithContext(context.Context) GetInstanceTypeOfferingsFilterArrayOutput
}

GetInstanceTypeOfferingsFilterArrayInput is an input type that accepts GetInstanceTypeOfferingsFilterArray and GetInstanceTypeOfferingsFilterArrayOutput values. You can construct a concrete instance of `GetInstanceTypeOfferingsFilterArrayInput` via:

GetInstanceTypeOfferingsFilterArray{ GetInstanceTypeOfferingsFilterArgs{...} }

type GetInstanceTypeOfferingsFilterArrayOutput

type GetInstanceTypeOfferingsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeOfferingsFilterArrayOutput) ElementType

func (GetInstanceTypeOfferingsFilterArrayOutput) Index

func (GetInstanceTypeOfferingsFilterArrayOutput) ToGetInstanceTypeOfferingsFilterArrayOutput

func (o GetInstanceTypeOfferingsFilterArrayOutput) ToGetInstanceTypeOfferingsFilterArrayOutput() GetInstanceTypeOfferingsFilterArrayOutput

func (GetInstanceTypeOfferingsFilterArrayOutput) ToGetInstanceTypeOfferingsFilterArrayOutputWithContext

func (o GetInstanceTypeOfferingsFilterArrayOutput) ToGetInstanceTypeOfferingsFilterArrayOutputWithContext(ctx context.Context) GetInstanceTypeOfferingsFilterArrayOutput

type GetInstanceTypeOfferingsFilterInput

type GetInstanceTypeOfferingsFilterInput interface {
	pulumi.Input

	ToGetInstanceTypeOfferingsFilterOutput() GetInstanceTypeOfferingsFilterOutput
	ToGetInstanceTypeOfferingsFilterOutputWithContext(context.Context) GetInstanceTypeOfferingsFilterOutput
}

GetInstanceTypeOfferingsFilterInput is an input type that accepts GetInstanceTypeOfferingsFilterArgs and GetInstanceTypeOfferingsFilterOutput values. You can construct a concrete instance of `GetInstanceTypeOfferingsFilterInput` via:

GetInstanceTypeOfferingsFilterArgs{...}

type GetInstanceTypeOfferingsFilterOutput

type GetInstanceTypeOfferingsFilterOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeOfferingsFilterOutput) ElementType

func (GetInstanceTypeOfferingsFilterOutput) Name

Name of the filter. The `location` filter depends on the top-level `locationType` argument and if not specified, defaults to the current region.

func (GetInstanceTypeOfferingsFilterOutput) ToGetInstanceTypeOfferingsFilterOutput

func (o GetInstanceTypeOfferingsFilterOutput) ToGetInstanceTypeOfferingsFilterOutput() GetInstanceTypeOfferingsFilterOutput

func (GetInstanceTypeOfferingsFilterOutput) ToGetInstanceTypeOfferingsFilterOutputWithContext

func (o GetInstanceTypeOfferingsFilterOutput) ToGetInstanceTypeOfferingsFilterOutputWithContext(ctx context.Context) GetInstanceTypeOfferingsFilterOutput

func (GetInstanceTypeOfferingsFilterOutput) Values

List of one or more values for the filter.

type GetInstanceTypeOfferingsResult

type GetInstanceTypeOfferingsResult struct {
	Filters []GetInstanceTypeOfferingsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of EC2 Instance Types.
	InstanceTypes []string `pulumi:"instanceTypes"`
	LocationType  *string  `pulumi:"locationType"`
	// List of location types.
	LocationTypes []string `pulumi:"locationTypes"`
	// List of locations.
	Locations []string `pulumi:"locations"`
}

A collection of values returned by getInstanceTypeOfferings.

func GetInstanceTypeOfferings

func GetInstanceTypeOfferings(ctx *pulumi.Context, args *GetInstanceTypeOfferingsArgs, opts ...pulumi.InvokeOption) (*GetInstanceTypeOfferingsResult, error)

Information about EC2 Instance Type Offerings.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "availability-zone-id"
		_, err := ec2.GetInstanceTypeOfferings(ctx, &ec2.GetInstanceTypeOfferingsArgs{
			Filters: []ec2.GetInstanceTypeOfferingsFilter{
				ec2.GetInstanceTypeOfferingsFilter{
					Name: "instance-type",
					Values: []string{
						"t2.micro",
						"t3.micro",
					},
				},
				ec2.GetInstanceTypeOfferingsFilter{
					Name: "location",
					Values: []string{
						"usw2-az4",
					},
				},
			},
			LocationType: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstanceTypeResult

type GetInstanceTypeResult struct {
	// `true` if auto recovery is supported.
	AutoRecoverySupported bool `pulumi:"autoRecoverySupported"`
	// `true` if it is a bare metal instance type.
	BareMetal bool `pulumi:"bareMetal"`
	// `true` if the instance type is a burstable performance instance type.
	BurstablePerformanceSupported bool `pulumi:"burstablePerformanceSupported"`
	// `true`  if the instance type is a current generation.
	CurrentGeneration bool `pulumi:"currentGeneration"`
	// `true` if Dedicated Hosts are supported on the instance type.
	DedicatedHostsSupported bool `pulumi:"dedicatedHostsSupported"`
	// The default number of cores for the instance type.
	DefaultCores int `pulumi:"defaultCores"`
	// The  default  number of threads per core for the instance type.
	DefaultThreadsPerCore int `pulumi:"defaultThreadsPerCore"`
	// The default number of vCPUs for the instance type.
	DefaultVcpus int `pulumi:"defaultVcpus"`
	// Indicates whether Amazon EBS encryption is supported.
	EbsEncryptionSupport string `pulumi:"ebsEncryptionSupport"`
	// Indicates whether non-volatile memory express (NVMe) is supported.
	EbsNvmeSupport string `pulumi:"ebsNvmeSupport"`
	// Indicates that the instance type is Amazon EBS-optimized.
	EbsOptimizedSupport string `pulumi:"ebsOptimizedSupport"`
	// The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
	EbsPerformanceBaselineBandwidth int `pulumi:"ebsPerformanceBaselineBandwidth"`
	// The baseline input/output storage operations per seconds for an EBS-optimized instance type.
	EbsPerformanceBaselineIops int `pulumi:"ebsPerformanceBaselineIops"`
	// The baseline throughput performance for an EBS-optimized instance type, in MBps.
	EbsPerformanceBaselineThroughput float64 `pulumi:"ebsPerformanceBaselineThroughput"`
	// The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
	EbsPerformanceMaximumBandwidth int `pulumi:"ebsPerformanceMaximumBandwidth"`
	// The maximum input/output storage operations per second for an EBS-optimized instance type.
	EbsPerformanceMaximumIops int `pulumi:"ebsPerformanceMaximumIops"`
	// The maximum throughput performance for an EBS-optimized instance type, in MBps.
	EbsPerformanceMaximumThroughput float64 `pulumi:"ebsPerformanceMaximumThroughput"`
	// Indicates whether Elastic Fabric Adapter (EFA) is supported.
	EfaSupported bool `pulumi:"efaSupported"`
	// Indicates whether Elastic Network Adapter (ENA) is supported.
	EnaSupport string `pulumi:"enaSupport"`
	// Describes the FPGA accelerator settings for the instance type.
	// * `fpgas.#.count` - The count of FPGA accelerators for the instance type.
	// * `fpgas.#.manufacturer` - The manufacturer of the FPGA accelerator.
	// * `fpgas.#.memory_size` - The size (in MiB) for the memory available to the FPGA accelerator.
	// * `fpgas.#.name` - The name of the FPGA accelerator.
	Fpgas []GetInstanceTypeFpga `pulumi:"fpgas"`
	// `true` if the instance type is eligible for the free tier.
	FreeTierEligible bool `pulumi:"freeTierEligible"`
	// Describes the GPU accelerators for the instance type.
	// * `gpus.#.count` - The number of GPUs for the instance type.
	// * `gpus.#.manufacturer` - The manufacturer of the GPU accelerator.
	// * `gpus.#.memory_size` - The size (in MiB) for the memory available to the GPU accelerator.
	// * `gpus.#.name` - The name of the GPU accelerator.
	Gpuses []GetInstanceTypeGpus `pulumi:"gpuses"`
	// `true` if On-Demand hibernation is supported.
	HibernationSupported bool `pulumi:"hibernationSupported"`
	// Indicates the hypervisor used for the instance type.
	// * `inferenceAccelerators` Describes the Inference accelerators for the instance type.
	// * `inference_accelerators.#.count` - The number of Inference accelerators for the instance type.
	// * `inference_accelerators.#.manufacturer` - The manufacturer of the Inference accelerator.
	// * `inference_accelerators.#.name` - The name of the Inference accelerator.
	Hypervisor string `pulumi:"hypervisor"`
	// The provider-assigned unique ID for this managed resource.
	Id                    string                                `pulumi:"id"`
	InferenceAccelerators []GetInstanceTypeInferenceAccelerator `pulumi:"inferenceAccelerators"`
	// Describes the disks for the instance type.
	// * `instance_disks.#.count` - The number of disks with this configuration.
	// * `instance_disks.#.size` - The size of the disk in GB.
	// * `instance_disks.#.type` - The type of disk.
	InstanceDisks []GetInstanceTypeInstanceDisk `pulumi:"instanceDisks"`
	// `true` if instance storage is supported.
	InstanceStorageSupported bool   `pulumi:"instanceStorageSupported"`
	InstanceType             string `pulumi:"instanceType"`
	// `true` if IPv6 is supported.
	Ipv6Supported bool `pulumi:"ipv6Supported"`
	// The maximum number of IPv4 addresses per network interface.
	MaximumIpv4AddressesPerInterface int `pulumi:"maximumIpv4AddressesPerInterface"`
	// The maximum number of IPv6 addresses per network interface.
	MaximumIpv6AddressesPerInterface int `pulumi:"maximumIpv6AddressesPerInterface"`
	// The maximum number of network interfaces for the instance type.
	MaximumNetworkInterfaces int `pulumi:"maximumNetworkInterfaces"`
	// Size of the instance memory, in MiB.
	MemorySize int `pulumi:"memorySize"`
	// Describes the network performance.
	NetworkPerformance string `pulumi:"networkPerformance"`
	// A list of architectures supported by the instance type.
	SupportedArchitectures []string `pulumi:"supportedArchitectures"`
	// A list of supported placement groups types.
	SupportedPlacementStrategies []string `pulumi:"supportedPlacementStrategies"`
	// Indicates the supported root device types.
	SupportedRootDeviceTypes []string `pulumi:"supportedRootDeviceTypes"`
	// Indicates whether the instance type is offered for spot or On-Demand.
	SupportedUsagesClasses []string `pulumi:"supportedUsagesClasses"`
	// The supported virtualization types.
	SupportedVirtualizationTypes []string `pulumi:"supportedVirtualizationTypes"`
	// The speed of the processor, in GHz.
	SustainedClockSpeed float64 `pulumi:"sustainedClockSpeed"`
	// The total memory of all FPGA accelerators for the instance type (in MiB).
	TotalFpgaMemory int `pulumi:"totalFpgaMemory"`
	// The total size of the memory for the GPU accelerators for the instance type (in MiB).
	TotalGpuMemory int `pulumi:"totalGpuMemory"`
	// The total size of the instance disks, in GB.
	TotalInstanceStorage int `pulumi:"totalInstanceStorage"`
	// List of the valid number of cores that can be configured for the instance type.
	ValidCores []int `pulumi:"validCores"`
	// List of the valid number of threads per core that can be configured for the instance type.
	ValidThreadsPerCores []int `pulumi:"validThreadsPerCores"`
}

A collection of values returned by getInstanceType.

func GetInstanceType

func GetInstanceType(ctx *pulumi.Context, args *GetInstanceTypeArgs, opts ...pulumi.InvokeOption) (*GetInstanceTypeResult, error)

Get characteristics for a single EC2 Instance Type.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetInstanceType(ctx, &ec2.GetInstanceTypeArgs{
			InstanceType: "t2.micro",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstancesArgs

type GetInstancesArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [describe-instances in the AWS CLI reference][1].
	Filters []GetInstancesFilter `pulumi:"filters"`
	// A list of instance states that should be applicable to the desired instances. The permitted values are: `pending, running, shutting-down, stopped, stopping, terminated`. The default value is `running`.
	InstanceStateNames []string `pulumi:"instanceStateNames"`
	// A map of tags, each pair of which must
	// exactly match a pair on desired instances.
	InstanceTags map[string]string `pulumi:"instanceTags"`
}

A collection of arguments for invoking getInstances.

type GetInstancesFilter

type GetInstancesFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetInstancesFilterArgs

type GetInstancesFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInstancesFilterArgs) ElementType

func (GetInstancesFilterArgs) ElementType() reflect.Type

func (GetInstancesFilterArgs) ToGetInstancesFilterOutput

func (i GetInstancesFilterArgs) ToGetInstancesFilterOutput() GetInstancesFilterOutput

func (GetInstancesFilterArgs) ToGetInstancesFilterOutputWithContext

func (i GetInstancesFilterArgs) ToGetInstancesFilterOutputWithContext(ctx context.Context) GetInstancesFilterOutput

type GetInstancesFilterArray

type GetInstancesFilterArray []GetInstancesFilterInput

func (GetInstancesFilterArray) ElementType

func (GetInstancesFilterArray) ElementType() reflect.Type

func (GetInstancesFilterArray) ToGetInstancesFilterArrayOutput

func (i GetInstancesFilterArray) ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput

func (GetInstancesFilterArray) ToGetInstancesFilterArrayOutputWithContext

func (i GetInstancesFilterArray) ToGetInstancesFilterArrayOutputWithContext(ctx context.Context) GetInstancesFilterArrayOutput

type GetInstancesFilterArrayInput

type GetInstancesFilterArrayInput interface {
	pulumi.Input

	ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput
	ToGetInstancesFilterArrayOutputWithContext(context.Context) GetInstancesFilterArrayOutput
}

GetInstancesFilterArrayInput is an input type that accepts GetInstancesFilterArray and GetInstancesFilterArrayOutput values. You can construct a concrete instance of `GetInstancesFilterArrayInput` via:

GetInstancesFilterArray{ GetInstancesFilterArgs{...} }

type GetInstancesFilterArrayOutput

type GetInstancesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesFilterArrayOutput) ElementType

func (GetInstancesFilterArrayOutput) Index

func (GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutput

func (o GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutput() GetInstancesFilterArrayOutput

func (GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutputWithContext

func (o GetInstancesFilterArrayOutput) ToGetInstancesFilterArrayOutputWithContext(ctx context.Context) GetInstancesFilterArrayOutput

type GetInstancesFilterInput

type GetInstancesFilterInput interface {
	pulumi.Input

	ToGetInstancesFilterOutput() GetInstancesFilterOutput
	ToGetInstancesFilterOutputWithContext(context.Context) GetInstancesFilterOutput
}

GetInstancesFilterInput is an input type that accepts GetInstancesFilterArgs and GetInstancesFilterOutput values. You can construct a concrete instance of `GetInstancesFilterInput` via:

GetInstancesFilterArgs{...}

type GetInstancesFilterOutput

type GetInstancesFilterOutput struct{ *pulumi.OutputState }

func (GetInstancesFilterOutput) ElementType

func (GetInstancesFilterOutput) ElementType() reflect.Type

func (GetInstancesFilterOutput) Name

func (GetInstancesFilterOutput) ToGetInstancesFilterOutput

func (o GetInstancesFilterOutput) ToGetInstancesFilterOutput() GetInstancesFilterOutput

func (GetInstancesFilterOutput) ToGetInstancesFilterOutputWithContext

func (o GetInstancesFilterOutput) ToGetInstancesFilterOutputWithContext(ctx context.Context) GetInstancesFilterOutput

func (GetInstancesFilterOutput) Values

type GetInstancesResult

type GetInstancesResult struct {
	Filters []GetInstancesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of instances found through the filter
	Ids                []string          `pulumi:"ids"`
	InstanceStateNames []string          `pulumi:"instanceStateNames"`
	InstanceTags       map[string]string `pulumi:"instanceTags"`
	// Private IP addresses of instances found through the filter
	PrivateIps []string `pulumi:"privateIps"`
	// Public IP addresses of instances found through the filter
	PublicIps []string `pulumi:"publicIps"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

Use this data source to get IDs or IPs of Amazon EC2 instances to be referenced elsewhere, e.g. to allow easier migration from another management solution or to make it easier for an operator to connect through bastion host(s).

> **Note:** It's strongly discouraged to use this data source for querying ephemeral instances (e.g. managed via autoscaling group), as the output may change at any time and you'd need to re-run `apply` every time an instance comes up or dies.

type GetInternetGatewayAttachment

type GetInternetGatewayAttachment struct {
	// The current state of the attachment between the gateway and the VPC. Present only if a VPC is attached
	State string `pulumi:"state"`
	// The ID of an attached VPC.
	VpcId string `pulumi:"vpcId"`
}

type GetInternetGatewayAttachmentArgs

type GetInternetGatewayAttachmentArgs struct {
	// The current state of the attachment between the gateway and the VPC. Present only if a VPC is attached
	State pulumi.StringInput `pulumi:"state"`
	// The ID of an attached VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetInternetGatewayAttachmentArgs) ElementType

func (GetInternetGatewayAttachmentArgs) ToGetInternetGatewayAttachmentOutput

func (i GetInternetGatewayAttachmentArgs) ToGetInternetGatewayAttachmentOutput() GetInternetGatewayAttachmentOutput

func (GetInternetGatewayAttachmentArgs) ToGetInternetGatewayAttachmentOutputWithContext

func (i GetInternetGatewayAttachmentArgs) ToGetInternetGatewayAttachmentOutputWithContext(ctx context.Context) GetInternetGatewayAttachmentOutput

type GetInternetGatewayAttachmentArray

type GetInternetGatewayAttachmentArray []GetInternetGatewayAttachmentInput

func (GetInternetGatewayAttachmentArray) ElementType

func (GetInternetGatewayAttachmentArray) ToGetInternetGatewayAttachmentArrayOutput

func (i GetInternetGatewayAttachmentArray) ToGetInternetGatewayAttachmentArrayOutput() GetInternetGatewayAttachmentArrayOutput

func (GetInternetGatewayAttachmentArray) ToGetInternetGatewayAttachmentArrayOutputWithContext

func (i GetInternetGatewayAttachmentArray) ToGetInternetGatewayAttachmentArrayOutputWithContext(ctx context.Context) GetInternetGatewayAttachmentArrayOutput

type GetInternetGatewayAttachmentArrayInput

type GetInternetGatewayAttachmentArrayInput interface {
	pulumi.Input

	ToGetInternetGatewayAttachmentArrayOutput() GetInternetGatewayAttachmentArrayOutput
	ToGetInternetGatewayAttachmentArrayOutputWithContext(context.Context) GetInternetGatewayAttachmentArrayOutput
}

GetInternetGatewayAttachmentArrayInput is an input type that accepts GetInternetGatewayAttachmentArray and GetInternetGatewayAttachmentArrayOutput values. You can construct a concrete instance of `GetInternetGatewayAttachmentArrayInput` via:

GetInternetGatewayAttachmentArray{ GetInternetGatewayAttachmentArgs{...} }

type GetInternetGatewayAttachmentArrayOutput

type GetInternetGatewayAttachmentArrayOutput struct{ *pulumi.OutputState }

func (GetInternetGatewayAttachmentArrayOutput) ElementType

func (GetInternetGatewayAttachmentArrayOutput) Index

func (GetInternetGatewayAttachmentArrayOutput) ToGetInternetGatewayAttachmentArrayOutput

func (o GetInternetGatewayAttachmentArrayOutput) ToGetInternetGatewayAttachmentArrayOutput() GetInternetGatewayAttachmentArrayOutput

func (GetInternetGatewayAttachmentArrayOutput) ToGetInternetGatewayAttachmentArrayOutputWithContext

func (o GetInternetGatewayAttachmentArrayOutput) ToGetInternetGatewayAttachmentArrayOutputWithContext(ctx context.Context) GetInternetGatewayAttachmentArrayOutput

type GetInternetGatewayAttachmentInput

type GetInternetGatewayAttachmentInput interface {
	pulumi.Input

	ToGetInternetGatewayAttachmentOutput() GetInternetGatewayAttachmentOutput
	ToGetInternetGatewayAttachmentOutputWithContext(context.Context) GetInternetGatewayAttachmentOutput
}

GetInternetGatewayAttachmentInput is an input type that accepts GetInternetGatewayAttachmentArgs and GetInternetGatewayAttachmentOutput values. You can construct a concrete instance of `GetInternetGatewayAttachmentInput` via:

GetInternetGatewayAttachmentArgs{...}

type GetInternetGatewayAttachmentOutput

type GetInternetGatewayAttachmentOutput struct{ *pulumi.OutputState }

func (GetInternetGatewayAttachmentOutput) ElementType

func (GetInternetGatewayAttachmentOutput) State

The current state of the attachment between the gateway and the VPC. Present only if a VPC is attached

func (GetInternetGatewayAttachmentOutput) ToGetInternetGatewayAttachmentOutput

func (o GetInternetGatewayAttachmentOutput) ToGetInternetGatewayAttachmentOutput() GetInternetGatewayAttachmentOutput

func (GetInternetGatewayAttachmentOutput) ToGetInternetGatewayAttachmentOutputWithContext

func (o GetInternetGatewayAttachmentOutput) ToGetInternetGatewayAttachmentOutputWithContext(ctx context.Context) GetInternetGatewayAttachmentOutput

func (GetInternetGatewayAttachmentOutput) VpcId

The ID of an attached VPC.

type GetInternetGatewayFilter

type GetInternetGatewayFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInternetGateways.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An Internet Gateway will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetInternetGatewayFilterArgs

type GetInternetGatewayFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInternetGateways.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An Internet Gateway will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetInternetGatewayFilterArgs) ElementType

func (GetInternetGatewayFilterArgs) ToGetInternetGatewayFilterOutput

func (i GetInternetGatewayFilterArgs) ToGetInternetGatewayFilterOutput() GetInternetGatewayFilterOutput

func (GetInternetGatewayFilterArgs) ToGetInternetGatewayFilterOutputWithContext

func (i GetInternetGatewayFilterArgs) ToGetInternetGatewayFilterOutputWithContext(ctx context.Context) GetInternetGatewayFilterOutput

type GetInternetGatewayFilterArray

type GetInternetGatewayFilterArray []GetInternetGatewayFilterInput

func (GetInternetGatewayFilterArray) ElementType

func (GetInternetGatewayFilterArray) ToGetInternetGatewayFilterArrayOutput

func (i GetInternetGatewayFilterArray) ToGetInternetGatewayFilterArrayOutput() GetInternetGatewayFilterArrayOutput

func (GetInternetGatewayFilterArray) ToGetInternetGatewayFilterArrayOutputWithContext

func (i GetInternetGatewayFilterArray) ToGetInternetGatewayFilterArrayOutputWithContext(ctx context.Context) GetInternetGatewayFilterArrayOutput

type GetInternetGatewayFilterArrayInput

type GetInternetGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetInternetGatewayFilterArrayOutput() GetInternetGatewayFilterArrayOutput
	ToGetInternetGatewayFilterArrayOutputWithContext(context.Context) GetInternetGatewayFilterArrayOutput
}

GetInternetGatewayFilterArrayInput is an input type that accepts GetInternetGatewayFilterArray and GetInternetGatewayFilterArrayOutput values. You can construct a concrete instance of `GetInternetGatewayFilterArrayInput` via:

GetInternetGatewayFilterArray{ GetInternetGatewayFilterArgs{...} }

type GetInternetGatewayFilterArrayOutput

type GetInternetGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetInternetGatewayFilterArrayOutput) ElementType

func (GetInternetGatewayFilterArrayOutput) Index

func (GetInternetGatewayFilterArrayOutput) ToGetInternetGatewayFilterArrayOutput

func (o GetInternetGatewayFilterArrayOutput) ToGetInternetGatewayFilterArrayOutput() GetInternetGatewayFilterArrayOutput

func (GetInternetGatewayFilterArrayOutput) ToGetInternetGatewayFilterArrayOutputWithContext

func (o GetInternetGatewayFilterArrayOutput) ToGetInternetGatewayFilterArrayOutputWithContext(ctx context.Context) GetInternetGatewayFilterArrayOutput

type GetInternetGatewayFilterInput

type GetInternetGatewayFilterInput interface {
	pulumi.Input

	ToGetInternetGatewayFilterOutput() GetInternetGatewayFilterOutput
	ToGetInternetGatewayFilterOutputWithContext(context.Context) GetInternetGatewayFilterOutput
}

GetInternetGatewayFilterInput is an input type that accepts GetInternetGatewayFilterArgs and GetInternetGatewayFilterOutput values. You can construct a concrete instance of `GetInternetGatewayFilterInput` via:

GetInternetGatewayFilterArgs{...}

type GetInternetGatewayFilterOutput

type GetInternetGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetInternetGatewayFilterOutput) ElementType

func (GetInternetGatewayFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInternetGateways.html).

func (GetInternetGatewayFilterOutput) ToGetInternetGatewayFilterOutput

func (o GetInternetGatewayFilterOutput) ToGetInternetGatewayFilterOutput() GetInternetGatewayFilterOutput

func (GetInternetGatewayFilterOutput) ToGetInternetGatewayFilterOutputWithContext

func (o GetInternetGatewayFilterOutput) ToGetInternetGatewayFilterOutputWithContext(ctx context.Context) GetInternetGatewayFilterOutput

func (GetInternetGatewayFilterOutput) Values

Set of values that are accepted for the given field. An Internet Gateway will be selected if any one of the given values matches.

type GetLaunchConfigurationEbsBlockDevice

type GetLaunchConfigurationEbsBlockDevice struct {
	// Whether the EBS Volume will be deleted on instance termination.
	DeleteOnTermination bool `pulumi:"deleteOnTermination"`
	// The Name of the device.
	DeviceName string `pulumi:"deviceName"`
	// Whether the volume is Encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// The provisioned IOPs of the volume.
	Iops int `pulumi:"iops"`
	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice bool `pulumi:"noDevice"`
	// The Snapshot ID of the mount.
	SnapshotId string `pulumi:"snapshotId"`
	// The Throughput of the volume.
	Throughput bool `pulumi:"throughput"`
	// The Size of the volume.
	VolumeSize int `pulumi:"volumeSize"`
	// The Type of the volume.
	VolumeType string `pulumi:"volumeType"`
}

type GetLaunchConfigurationEbsBlockDeviceArgs

type GetLaunchConfigurationEbsBlockDeviceArgs struct {
	// Whether the EBS Volume will be deleted on instance termination.
	DeleteOnTermination pulumi.BoolInput `pulumi:"deleteOnTermination"`
	// The Name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Whether the volume is Encrypted.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// The provisioned IOPs of the volume.
	Iops pulumi.IntInput `pulumi:"iops"`
	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice pulumi.BoolInput `pulumi:"noDevice"`
	// The Snapshot ID of the mount.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
	// The Throughput of the volume.
	Throughput pulumi.BoolInput `pulumi:"throughput"`
	// The Size of the volume.
	VolumeSize pulumi.IntInput `pulumi:"volumeSize"`
	// The Type of the volume.
	VolumeType pulumi.StringInput `pulumi:"volumeType"`
}

func (GetLaunchConfigurationEbsBlockDeviceArgs) ElementType

func (GetLaunchConfigurationEbsBlockDeviceArgs) ToGetLaunchConfigurationEbsBlockDeviceOutput

func (i GetLaunchConfigurationEbsBlockDeviceArgs) ToGetLaunchConfigurationEbsBlockDeviceOutput() GetLaunchConfigurationEbsBlockDeviceOutput

func (GetLaunchConfigurationEbsBlockDeviceArgs) ToGetLaunchConfigurationEbsBlockDeviceOutputWithContext

func (i GetLaunchConfigurationEbsBlockDeviceArgs) ToGetLaunchConfigurationEbsBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationEbsBlockDeviceOutput

type GetLaunchConfigurationEbsBlockDeviceArray

type GetLaunchConfigurationEbsBlockDeviceArray []GetLaunchConfigurationEbsBlockDeviceInput

func (GetLaunchConfigurationEbsBlockDeviceArray) ElementType

func (GetLaunchConfigurationEbsBlockDeviceArray) ToGetLaunchConfigurationEbsBlockDeviceArrayOutput

func (i GetLaunchConfigurationEbsBlockDeviceArray) ToGetLaunchConfigurationEbsBlockDeviceArrayOutput() GetLaunchConfigurationEbsBlockDeviceArrayOutput

func (GetLaunchConfigurationEbsBlockDeviceArray) ToGetLaunchConfigurationEbsBlockDeviceArrayOutputWithContext

func (i GetLaunchConfigurationEbsBlockDeviceArray) ToGetLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationEbsBlockDeviceArrayOutput

type GetLaunchConfigurationEbsBlockDeviceArrayInput

type GetLaunchConfigurationEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetLaunchConfigurationEbsBlockDeviceArrayOutput() GetLaunchConfigurationEbsBlockDeviceArrayOutput
	ToGetLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(context.Context) GetLaunchConfigurationEbsBlockDeviceArrayOutput
}

GetLaunchConfigurationEbsBlockDeviceArrayInput is an input type that accepts GetLaunchConfigurationEbsBlockDeviceArray and GetLaunchConfigurationEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `GetLaunchConfigurationEbsBlockDeviceArrayInput` via:

GetLaunchConfigurationEbsBlockDeviceArray{ GetLaunchConfigurationEbsBlockDeviceArgs{...} }

type GetLaunchConfigurationEbsBlockDeviceArrayOutput

type GetLaunchConfigurationEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationEbsBlockDeviceArrayOutput) ElementType

func (GetLaunchConfigurationEbsBlockDeviceArrayOutput) Index

func (GetLaunchConfigurationEbsBlockDeviceArrayOutput) ToGetLaunchConfigurationEbsBlockDeviceArrayOutput

func (o GetLaunchConfigurationEbsBlockDeviceArrayOutput) ToGetLaunchConfigurationEbsBlockDeviceArrayOutput() GetLaunchConfigurationEbsBlockDeviceArrayOutput

func (GetLaunchConfigurationEbsBlockDeviceArrayOutput) ToGetLaunchConfigurationEbsBlockDeviceArrayOutputWithContext

func (o GetLaunchConfigurationEbsBlockDeviceArrayOutput) ToGetLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationEbsBlockDeviceArrayOutput

type GetLaunchConfigurationEbsBlockDeviceInput

type GetLaunchConfigurationEbsBlockDeviceInput interface {
	pulumi.Input

	ToGetLaunchConfigurationEbsBlockDeviceOutput() GetLaunchConfigurationEbsBlockDeviceOutput
	ToGetLaunchConfigurationEbsBlockDeviceOutputWithContext(context.Context) GetLaunchConfigurationEbsBlockDeviceOutput
}

GetLaunchConfigurationEbsBlockDeviceInput is an input type that accepts GetLaunchConfigurationEbsBlockDeviceArgs and GetLaunchConfigurationEbsBlockDeviceOutput values. You can construct a concrete instance of `GetLaunchConfigurationEbsBlockDeviceInput` via:

GetLaunchConfigurationEbsBlockDeviceArgs{...}

type GetLaunchConfigurationEbsBlockDeviceOutput

type GetLaunchConfigurationEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationEbsBlockDeviceOutput) DeleteOnTermination

Whether the EBS Volume will be deleted on instance termination.

func (GetLaunchConfigurationEbsBlockDeviceOutput) DeviceName

The Name of the device.

func (GetLaunchConfigurationEbsBlockDeviceOutput) ElementType

func (GetLaunchConfigurationEbsBlockDeviceOutput) Encrypted

Whether the volume is Encrypted.

func (GetLaunchConfigurationEbsBlockDeviceOutput) Iops

The provisioned IOPs of the volume.

func (GetLaunchConfigurationEbsBlockDeviceOutput) NoDevice

Whether the device in the block device mapping of the AMI is suppressed.

func (GetLaunchConfigurationEbsBlockDeviceOutput) SnapshotId

The Snapshot ID of the mount.

func (GetLaunchConfigurationEbsBlockDeviceOutput) Throughput added in v4.7.0

The Throughput of the volume.

func (GetLaunchConfigurationEbsBlockDeviceOutput) ToGetLaunchConfigurationEbsBlockDeviceOutput

func (o GetLaunchConfigurationEbsBlockDeviceOutput) ToGetLaunchConfigurationEbsBlockDeviceOutput() GetLaunchConfigurationEbsBlockDeviceOutput

func (GetLaunchConfigurationEbsBlockDeviceOutput) ToGetLaunchConfigurationEbsBlockDeviceOutputWithContext

func (o GetLaunchConfigurationEbsBlockDeviceOutput) ToGetLaunchConfigurationEbsBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationEbsBlockDeviceOutput

func (GetLaunchConfigurationEbsBlockDeviceOutput) VolumeSize

The Size of the volume.

func (GetLaunchConfigurationEbsBlockDeviceOutput) VolumeType

The Type of the volume.

type GetLaunchConfigurationEphemeralBlockDevice

type GetLaunchConfigurationEphemeralBlockDevice struct {
	// The Name of the device.
	DeviceName string `pulumi:"deviceName"`
	// The Virtual Name of the device.
	VirtualName string `pulumi:"virtualName"`
}

type GetLaunchConfigurationEphemeralBlockDeviceArgs

type GetLaunchConfigurationEphemeralBlockDeviceArgs struct {
	// The Name of the device.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// The Virtual Name of the device.
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (GetLaunchConfigurationEphemeralBlockDeviceArgs) ElementType

func (GetLaunchConfigurationEphemeralBlockDeviceArgs) ToGetLaunchConfigurationEphemeralBlockDeviceOutput

func (i GetLaunchConfigurationEphemeralBlockDeviceArgs) ToGetLaunchConfigurationEphemeralBlockDeviceOutput() GetLaunchConfigurationEphemeralBlockDeviceOutput

func (GetLaunchConfigurationEphemeralBlockDeviceArgs) ToGetLaunchConfigurationEphemeralBlockDeviceOutputWithContext

func (i GetLaunchConfigurationEphemeralBlockDeviceArgs) ToGetLaunchConfigurationEphemeralBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationEphemeralBlockDeviceOutput

type GetLaunchConfigurationEphemeralBlockDeviceArray

type GetLaunchConfigurationEphemeralBlockDeviceArray []GetLaunchConfigurationEphemeralBlockDeviceInput

func (GetLaunchConfigurationEphemeralBlockDeviceArray) ElementType

func (GetLaunchConfigurationEphemeralBlockDeviceArray) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutput

func (i GetLaunchConfigurationEphemeralBlockDeviceArray) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutput() GetLaunchConfigurationEphemeralBlockDeviceArrayOutput

func (GetLaunchConfigurationEphemeralBlockDeviceArray) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext

func (i GetLaunchConfigurationEphemeralBlockDeviceArray) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationEphemeralBlockDeviceArrayOutput

type GetLaunchConfigurationEphemeralBlockDeviceArrayInput

type GetLaunchConfigurationEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutput() GetLaunchConfigurationEphemeralBlockDeviceArrayOutput
	ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(context.Context) GetLaunchConfigurationEphemeralBlockDeviceArrayOutput
}

GetLaunchConfigurationEphemeralBlockDeviceArrayInput is an input type that accepts GetLaunchConfigurationEphemeralBlockDeviceArray and GetLaunchConfigurationEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `GetLaunchConfigurationEphemeralBlockDeviceArrayInput` via:

GetLaunchConfigurationEphemeralBlockDeviceArray{ GetLaunchConfigurationEphemeralBlockDeviceArgs{...} }

type GetLaunchConfigurationEphemeralBlockDeviceArrayOutput

type GetLaunchConfigurationEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationEphemeralBlockDeviceArrayOutput) ElementType

func (GetLaunchConfigurationEphemeralBlockDeviceArrayOutput) Index

func (GetLaunchConfigurationEphemeralBlockDeviceArrayOutput) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutput

func (GetLaunchConfigurationEphemeralBlockDeviceArrayOutput) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext

func (o GetLaunchConfigurationEphemeralBlockDeviceArrayOutput) ToGetLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationEphemeralBlockDeviceArrayOutput

type GetLaunchConfigurationEphemeralBlockDeviceInput

type GetLaunchConfigurationEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToGetLaunchConfigurationEphemeralBlockDeviceOutput() GetLaunchConfigurationEphemeralBlockDeviceOutput
	ToGetLaunchConfigurationEphemeralBlockDeviceOutputWithContext(context.Context) GetLaunchConfigurationEphemeralBlockDeviceOutput
}

GetLaunchConfigurationEphemeralBlockDeviceInput is an input type that accepts GetLaunchConfigurationEphemeralBlockDeviceArgs and GetLaunchConfigurationEphemeralBlockDeviceOutput values. You can construct a concrete instance of `GetLaunchConfigurationEphemeralBlockDeviceInput` via:

GetLaunchConfigurationEphemeralBlockDeviceArgs{...}

type GetLaunchConfigurationEphemeralBlockDeviceOutput

type GetLaunchConfigurationEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationEphemeralBlockDeviceOutput) DeviceName

The Name of the device.

func (GetLaunchConfigurationEphemeralBlockDeviceOutput) ElementType

func (GetLaunchConfigurationEphemeralBlockDeviceOutput) ToGetLaunchConfigurationEphemeralBlockDeviceOutput

func (o GetLaunchConfigurationEphemeralBlockDeviceOutput) ToGetLaunchConfigurationEphemeralBlockDeviceOutput() GetLaunchConfigurationEphemeralBlockDeviceOutput

func (GetLaunchConfigurationEphemeralBlockDeviceOutput) ToGetLaunchConfigurationEphemeralBlockDeviceOutputWithContext

func (o GetLaunchConfigurationEphemeralBlockDeviceOutput) ToGetLaunchConfigurationEphemeralBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationEphemeralBlockDeviceOutput

func (GetLaunchConfigurationEphemeralBlockDeviceOutput) VirtualName

The Virtual Name of the device.

type GetLaunchConfigurationMetadataOption

type GetLaunchConfigurationMetadataOption struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit int `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens string `pulumi:"httpTokens"`
}

type GetLaunchConfigurationMetadataOptionArgs

type GetLaunchConfigurationMetadataOptionArgs struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint pulumi.StringInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit pulumi.IntInput `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens pulumi.StringInput `pulumi:"httpTokens"`
}

func (GetLaunchConfigurationMetadataOptionArgs) ElementType

func (GetLaunchConfigurationMetadataOptionArgs) ToGetLaunchConfigurationMetadataOptionOutput

func (i GetLaunchConfigurationMetadataOptionArgs) ToGetLaunchConfigurationMetadataOptionOutput() GetLaunchConfigurationMetadataOptionOutput

func (GetLaunchConfigurationMetadataOptionArgs) ToGetLaunchConfigurationMetadataOptionOutputWithContext

func (i GetLaunchConfigurationMetadataOptionArgs) ToGetLaunchConfigurationMetadataOptionOutputWithContext(ctx context.Context) GetLaunchConfigurationMetadataOptionOutput

type GetLaunchConfigurationMetadataOptionArray

type GetLaunchConfigurationMetadataOptionArray []GetLaunchConfigurationMetadataOptionInput

func (GetLaunchConfigurationMetadataOptionArray) ElementType

func (GetLaunchConfigurationMetadataOptionArray) ToGetLaunchConfigurationMetadataOptionArrayOutput

func (i GetLaunchConfigurationMetadataOptionArray) ToGetLaunchConfigurationMetadataOptionArrayOutput() GetLaunchConfigurationMetadataOptionArrayOutput

func (GetLaunchConfigurationMetadataOptionArray) ToGetLaunchConfigurationMetadataOptionArrayOutputWithContext

func (i GetLaunchConfigurationMetadataOptionArray) ToGetLaunchConfigurationMetadataOptionArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationMetadataOptionArrayOutput

type GetLaunchConfigurationMetadataOptionArrayInput

type GetLaunchConfigurationMetadataOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchConfigurationMetadataOptionArrayOutput() GetLaunchConfigurationMetadataOptionArrayOutput
	ToGetLaunchConfigurationMetadataOptionArrayOutputWithContext(context.Context) GetLaunchConfigurationMetadataOptionArrayOutput
}

GetLaunchConfigurationMetadataOptionArrayInput is an input type that accepts GetLaunchConfigurationMetadataOptionArray and GetLaunchConfigurationMetadataOptionArrayOutput values. You can construct a concrete instance of `GetLaunchConfigurationMetadataOptionArrayInput` via:

GetLaunchConfigurationMetadataOptionArray{ GetLaunchConfigurationMetadataOptionArgs{...} }

type GetLaunchConfigurationMetadataOptionArrayOutput

type GetLaunchConfigurationMetadataOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationMetadataOptionArrayOutput) ElementType

func (GetLaunchConfigurationMetadataOptionArrayOutput) Index

func (GetLaunchConfigurationMetadataOptionArrayOutput) ToGetLaunchConfigurationMetadataOptionArrayOutput

func (o GetLaunchConfigurationMetadataOptionArrayOutput) ToGetLaunchConfigurationMetadataOptionArrayOutput() GetLaunchConfigurationMetadataOptionArrayOutput

func (GetLaunchConfigurationMetadataOptionArrayOutput) ToGetLaunchConfigurationMetadataOptionArrayOutputWithContext

func (o GetLaunchConfigurationMetadataOptionArrayOutput) ToGetLaunchConfigurationMetadataOptionArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationMetadataOptionArrayOutput

type GetLaunchConfigurationMetadataOptionInput

type GetLaunchConfigurationMetadataOptionInput interface {
	pulumi.Input

	ToGetLaunchConfigurationMetadataOptionOutput() GetLaunchConfigurationMetadataOptionOutput
	ToGetLaunchConfigurationMetadataOptionOutputWithContext(context.Context) GetLaunchConfigurationMetadataOptionOutput
}

GetLaunchConfigurationMetadataOptionInput is an input type that accepts GetLaunchConfigurationMetadataOptionArgs and GetLaunchConfigurationMetadataOptionOutput values. You can construct a concrete instance of `GetLaunchConfigurationMetadataOptionInput` via:

GetLaunchConfigurationMetadataOptionArgs{...}

type GetLaunchConfigurationMetadataOptionOutput

type GetLaunchConfigurationMetadataOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationMetadataOptionOutput) ElementType

func (GetLaunchConfigurationMetadataOptionOutput) HttpEndpoint

The state of the metadata service: `enabled`, `disabled`.

func (GetLaunchConfigurationMetadataOptionOutput) HttpPutResponseHopLimit

func (o GetLaunchConfigurationMetadataOptionOutput) HttpPutResponseHopLimit() pulumi.IntOutput

The desired HTTP PUT response hop limit for instance metadata requests.

func (GetLaunchConfigurationMetadataOptionOutput) HttpTokens

If session tokens are required: `optional`, `required`.

func (GetLaunchConfigurationMetadataOptionOutput) ToGetLaunchConfigurationMetadataOptionOutput

func (o GetLaunchConfigurationMetadataOptionOutput) ToGetLaunchConfigurationMetadataOptionOutput() GetLaunchConfigurationMetadataOptionOutput

func (GetLaunchConfigurationMetadataOptionOutput) ToGetLaunchConfigurationMetadataOptionOutputWithContext

func (o GetLaunchConfigurationMetadataOptionOutput) ToGetLaunchConfigurationMetadataOptionOutputWithContext(ctx context.Context) GetLaunchConfigurationMetadataOptionOutput

type GetLaunchConfigurationRootBlockDevice

type GetLaunchConfigurationRootBlockDevice struct {
	// Whether the EBS Volume will be deleted on instance termination.
	DeleteOnTermination bool `pulumi:"deleteOnTermination"`
	// Whether the volume is Encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// The provisioned IOPs of the volume.
	Iops int `pulumi:"iops"`
	// The Throughput of the volume.
	Throughput bool `pulumi:"throughput"`
	// The Size of the volume.
	VolumeSize int `pulumi:"volumeSize"`
	// The Type of the volume.
	VolumeType string `pulumi:"volumeType"`
}

type GetLaunchConfigurationRootBlockDeviceArgs

type GetLaunchConfigurationRootBlockDeviceArgs struct {
	// Whether the EBS Volume will be deleted on instance termination.
	DeleteOnTermination pulumi.BoolInput `pulumi:"deleteOnTermination"`
	// Whether the volume is Encrypted.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// The provisioned IOPs of the volume.
	Iops pulumi.IntInput `pulumi:"iops"`
	// The Throughput of the volume.
	Throughput pulumi.BoolInput `pulumi:"throughput"`
	// The Size of the volume.
	VolumeSize pulumi.IntInput `pulumi:"volumeSize"`
	// The Type of the volume.
	VolumeType pulumi.StringInput `pulumi:"volumeType"`
}

func (GetLaunchConfigurationRootBlockDeviceArgs) ElementType

func (GetLaunchConfigurationRootBlockDeviceArgs) ToGetLaunchConfigurationRootBlockDeviceOutput

func (i GetLaunchConfigurationRootBlockDeviceArgs) ToGetLaunchConfigurationRootBlockDeviceOutput() GetLaunchConfigurationRootBlockDeviceOutput

func (GetLaunchConfigurationRootBlockDeviceArgs) ToGetLaunchConfigurationRootBlockDeviceOutputWithContext

func (i GetLaunchConfigurationRootBlockDeviceArgs) ToGetLaunchConfigurationRootBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationRootBlockDeviceOutput

type GetLaunchConfigurationRootBlockDeviceArray

type GetLaunchConfigurationRootBlockDeviceArray []GetLaunchConfigurationRootBlockDeviceInput

func (GetLaunchConfigurationRootBlockDeviceArray) ElementType

func (GetLaunchConfigurationRootBlockDeviceArray) ToGetLaunchConfigurationRootBlockDeviceArrayOutput

func (i GetLaunchConfigurationRootBlockDeviceArray) ToGetLaunchConfigurationRootBlockDeviceArrayOutput() GetLaunchConfigurationRootBlockDeviceArrayOutput

func (GetLaunchConfigurationRootBlockDeviceArray) ToGetLaunchConfigurationRootBlockDeviceArrayOutputWithContext

func (i GetLaunchConfigurationRootBlockDeviceArray) ToGetLaunchConfigurationRootBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationRootBlockDeviceArrayOutput

type GetLaunchConfigurationRootBlockDeviceArrayInput

type GetLaunchConfigurationRootBlockDeviceArrayInput interface {
	pulumi.Input

	ToGetLaunchConfigurationRootBlockDeviceArrayOutput() GetLaunchConfigurationRootBlockDeviceArrayOutput
	ToGetLaunchConfigurationRootBlockDeviceArrayOutputWithContext(context.Context) GetLaunchConfigurationRootBlockDeviceArrayOutput
}

GetLaunchConfigurationRootBlockDeviceArrayInput is an input type that accepts GetLaunchConfigurationRootBlockDeviceArray and GetLaunchConfigurationRootBlockDeviceArrayOutput values. You can construct a concrete instance of `GetLaunchConfigurationRootBlockDeviceArrayInput` via:

GetLaunchConfigurationRootBlockDeviceArray{ GetLaunchConfigurationRootBlockDeviceArgs{...} }

type GetLaunchConfigurationRootBlockDeviceArrayOutput

type GetLaunchConfigurationRootBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationRootBlockDeviceArrayOutput) ElementType

func (GetLaunchConfigurationRootBlockDeviceArrayOutput) Index

func (GetLaunchConfigurationRootBlockDeviceArrayOutput) ToGetLaunchConfigurationRootBlockDeviceArrayOutput

func (o GetLaunchConfigurationRootBlockDeviceArrayOutput) ToGetLaunchConfigurationRootBlockDeviceArrayOutput() GetLaunchConfigurationRootBlockDeviceArrayOutput

func (GetLaunchConfigurationRootBlockDeviceArrayOutput) ToGetLaunchConfigurationRootBlockDeviceArrayOutputWithContext

func (o GetLaunchConfigurationRootBlockDeviceArrayOutput) ToGetLaunchConfigurationRootBlockDeviceArrayOutputWithContext(ctx context.Context) GetLaunchConfigurationRootBlockDeviceArrayOutput

type GetLaunchConfigurationRootBlockDeviceInput

type GetLaunchConfigurationRootBlockDeviceInput interface {
	pulumi.Input

	ToGetLaunchConfigurationRootBlockDeviceOutput() GetLaunchConfigurationRootBlockDeviceOutput
	ToGetLaunchConfigurationRootBlockDeviceOutputWithContext(context.Context) GetLaunchConfigurationRootBlockDeviceOutput
}

GetLaunchConfigurationRootBlockDeviceInput is an input type that accepts GetLaunchConfigurationRootBlockDeviceArgs and GetLaunchConfigurationRootBlockDeviceOutput values. You can construct a concrete instance of `GetLaunchConfigurationRootBlockDeviceInput` via:

GetLaunchConfigurationRootBlockDeviceArgs{...}

type GetLaunchConfigurationRootBlockDeviceOutput

type GetLaunchConfigurationRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (GetLaunchConfigurationRootBlockDeviceOutput) DeleteOnTermination

Whether the EBS Volume will be deleted on instance termination.

func (GetLaunchConfigurationRootBlockDeviceOutput) ElementType

func (GetLaunchConfigurationRootBlockDeviceOutput) Encrypted

Whether the volume is Encrypted.

func (GetLaunchConfigurationRootBlockDeviceOutput) Iops

The provisioned IOPs of the volume.

func (GetLaunchConfigurationRootBlockDeviceOutput) Throughput added in v4.7.0

The Throughput of the volume.

func (GetLaunchConfigurationRootBlockDeviceOutput) ToGetLaunchConfigurationRootBlockDeviceOutput

func (o GetLaunchConfigurationRootBlockDeviceOutput) ToGetLaunchConfigurationRootBlockDeviceOutput() GetLaunchConfigurationRootBlockDeviceOutput

func (GetLaunchConfigurationRootBlockDeviceOutput) ToGetLaunchConfigurationRootBlockDeviceOutputWithContext

func (o GetLaunchConfigurationRootBlockDeviceOutput) ToGetLaunchConfigurationRootBlockDeviceOutputWithContext(ctx context.Context) GetLaunchConfigurationRootBlockDeviceOutput

func (GetLaunchConfigurationRootBlockDeviceOutput) VolumeSize

The Size of the volume.

func (GetLaunchConfigurationRootBlockDeviceOutput) VolumeType

The Type of the volume.

type GetLaunchTemplateBlockDeviceMapping

type GetLaunchTemplateBlockDeviceMapping struct {
	DeviceName  string                                  `pulumi:"deviceName"`
	Ebs         []GetLaunchTemplateBlockDeviceMappingEb `pulumi:"ebs"`
	NoDevice    string                                  `pulumi:"noDevice"`
	VirtualName string                                  `pulumi:"virtualName"`
}

type GetLaunchTemplateBlockDeviceMappingArgs

type GetLaunchTemplateBlockDeviceMappingArgs struct {
	DeviceName  pulumi.StringInput                              `pulumi:"deviceName"`
	Ebs         GetLaunchTemplateBlockDeviceMappingEbArrayInput `pulumi:"ebs"`
	NoDevice    pulumi.StringInput                              `pulumi:"noDevice"`
	VirtualName pulumi.StringInput                              `pulumi:"virtualName"`
}

func (GetLaunchTemplateBlockDeviceMappingArgs) ElementType

func (GetLaunchTemplateBlockDeviceMappingArgs) ToGetLaunchTemplateBlockDeviceMappingOutput

func (i GetLaunchTemplateBlockDeviceMappingArgs) ToGetLaunchTemplateBlockDeviceMappingOutput() GetLaunchTemplateBlockDeviceMappingOutput

func (GetLaunchTemplateBlockDeviceMappingArgs) ToGetLaunchTemplateBlockDeviceMappingOutputWithContext

func (i GetLaunchTemplateBlockDeviceMappingArgs) ToGetLaunchTemplateBlockDeviceMappingOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingOutput

type GetLaunchTemplateBlockDeviceMappingArray

type GetLaunchTemplateBlockDeviceMappingArray []GetLaunchTemplateBlockDeviceMappingInput

func (GetLaunchTemplateBlockDeviceMappingArray) ElementType

func (GetLaunchTemplateBlockDeviceMappingArray) ToGetLaunchTemplateBlockDeviceMappingArrayOutput

func (i GetLaunchTemplateBlockDeviceMappingArray) ToGetLaunchTemplateBlockDeviceMappingArrayOutput() GetLaunchTemplateBlockDeviceMappingArrayOutput

func (GetLaunchTemplateBlockDeviceMappingArray) ToGetLaunchTemplateBlockDeviceMappingArrayOutputWithContext

func (i GetLaunchTemplateBlockDeviceMappingArray) ToGetLaunchTemplateBlockDeviceMappingArrayOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingArrayOutput

type GetLaunchTemplateBlockDeviceMappingArrayInput

type GetLaunchTemplateBlockDeviceMappingArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateBlockDeviceMappingArrayOutput() GetLaunchTemplateBlockDeviceMappingArrayOutput
	ToGetLaunchTemplateBlockDeviceMappingArrayOutputWithContext(context.Context) GetLaunchTemplateBlockDeviceMappingArrayOutput
}

GetLaunchTemplateBlockDeviceMappingArrayInput is an input type that accepts GetLaunchTemplateBlockDeviceMappingArray and GetLaunchTemplateBlockDeviceMappingArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateBlockDeviceMappingArrayInput` via:

GetLaunchTemplateBlockDeviceMappingArray{ GetLaunchTemplateBlockDeviceMappingArgs{...} }

type GetLaunchTemplateBlockDeviceMappingArrayOutput

type GetLaunchTemplateBlockDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateBlockDeviceMappingArrayOutput) ElementType

func (GetLaunchTemplateBlockDeviceMappingArrayOutput) Index

func (GetLaunchTemplateBlockDeviceMappingArrayOutput) ToGetLaunchTemplateBlockDeviceMappingArrayOutput

func (o GetLaunchTemplateBlockDeviceMappingArrayOutput) ToGetLaunchTemplateBlockDeviceMappingArrayOutput() GetLaunchTemplateBlockDeviceMappingArrayOutput

func (GetLaunchTemplateBlockDeviceMappingArrayOutput) ToGetLaunchTemplateBlockDeviceMappingArrayOutputWithContext

func (o GetLaunchTemplateBlockDeviceMappingArrayOutput) ToGetLaunchTemplateBlockDeviceMappingArrayOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingArrayOutput

type GetLaunchTemplateBlockDeviceMappingEb

type GetLaunchTemplateBlockDeviceMappingEb struct {
	DeleteOnTermination string `pulumi:"deleteOnTermination"`
	Encrypted           string `pulumi:"encrypted"`
	Iops                int    `pulumi:"iops"`
	KmsKeyId            string `pulumi:"kmsKeyId"`
	SnapshotId          string `pulumi:"snapshotId"`
	Throughput          int    `pulumi:"throughput"`
	VolumeSize          int    `pulumi:"volumeSize"`
	VolumeType          string `pulumi:"volumeType"`
}

type GetLaunchTemplateBlockDeviceMappingEbArgs

type GetLaunchTemplateBlockDeviceMappingEbArgs struct {
	DeleteOnTermination pulumi.StringInput `pulumi:"deleteOnTermination"`
	Encrypted           pulumi.StringInput `pulumi:"encrypted"`
	Iops                pulumi.IntInput    `pulumi:"iops"`
	KmsKeyId            pulumi.StringInput `pulumi:"kmsKeyId"`
	SnapshotId          pulumi.StringInput `pulumi:"snapshotId"`
	Throughput          pulumi.IntInput    `pulumi:"throughput"`
	VolumeSize          pulumi.IntInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringInput `pulumi:"volumeType"`
}

func (GetLaunchTemplateBlockDeviceMappingEbArgs) ElementType

func (GetLaunchTemplateBlockDeviceMappingEbArgs) ToGetLaunchTemplateBlockDeviceMappingEbOutput

func (i GetLaunchTemplateBlockDeviceMappingEbArgs) ToGetLaunchTemplateBlockDeviceMappingEbOutput() GetLaunchTemplateBlockDeviceMappingEbOutput

func (GetLaunchTemplateBlockDeviceMappingEbArgs) ToGetLaunchTemplateBlockDeviceMappingEbOutputWithContext

func (i GetLaunchTemplateBlockDeviceMappingEbArgs) ToGetLaunchTemplateBlockDeviceMappingEbOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingEbOutput

type GetLaunchTemplateBlockDeviceMappingEbArray

type GetLaunchTemplateBlockDeviceMappingEbArray []GetLaunchTemplateBlockDeviceMappingEbInput

func (GetLaunchTemplateBlockDeviceMappingEbArray) ElementType

func (GetLaunchTemplateBlockDeviceMappingEbArray) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutput

func (i GetLaunchTemplateBlockDeviceMappingEbArray) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutput() GetLaunchTemplateBlockDeviceMappingEbArrayOutput

func (GetLaunchTemplateBlockDeviceMappingEbArray) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutputWithContext

func (i GetLaunchTemplateBlockDeviceMappingEbArray) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingEbArrayOutput

type GetLaunchTemplateBlockDeviceMappingEbArrayInput

type GetLaunchTemplateBlockDeviceMappingEbArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateBlockDeviceMappingEbArrayOutput() GetLaunchTemplateBlockDeviceMappingEbArrayOutput
	ToGetLaunchTemplateBlockDeviceMappingEbArrayOutputWithContext(context.Context) GetLaunchTemplateBlockDeviceMappingEbArrayOutput
}

GetLaunchTemplateBlockDeviceMappingEbArrayInput is an input type that accepts GetLaunchTemplateBlockDeviceMappingEbArray and GetLaunchTemplateBlockDeviceMappingEbArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateBlockDeviceMappingEbArrayInput` via:

GetLaunchTemplateBlockDeviceMappingEbArray{ GetLaunchTemplateBlockDeviceMappingEbArgs{...} }

type GetLaunchTemplateBlockDeviceMappingEbArrayOutput

type GetLaunchTemplateBlockDeviceMappingEbArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateBlockDeviceMappingEbArrayOutput) ElementType

func (GetLaunchTemplateBlockDeviceMappingEbArrayOutput) Index

func (GetLaunchTemplateBlockDeviceMappingEbArrayOutput) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutput

func (o GetLaunchTemplateBlockDeviceMappingEbArrayOutput) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutput() GetLaunchTemplateBlockDeviceMappingEbArrayOutput

func (GetLaunchTemplateBlockDeviceMappingEbArrayOutput) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutputWithContext

func (o GetLaunchTemplateBlockDeviceMappingEbArrayOutput) ToGetLaunchTemplateBlockDeviceMappingEbArrayOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingEbArrayOutput

type GetLaunchTemplateBlockDeviceMappingEbInput

type GetLaunchTemplateBlockDeviceMappingEbInput interface {
	pulumi.Input

	ToGetLaunchTemplateBlockDeviceMappingEbOutput() GetLaunchTemplateBlockDeviceMappingEbOutput
	ToGetLaunchTemplateBlockDeviceMappingEbOutputWithContext(context.Context) GetLaunchTemplateBlockDeviceMappingEbOutput
}

GetLaunchTemplateBlockDeviceMappingEbInput is an input type that accepts GetLaunchTemplateBlockDeviceMappingEbArgs and GetLaunchTemplateBlockDeviceMappingEbOutput values. You can construct a concrete instance of `GetLaunchTemplateBlockDeviceMappingEbInput` via:

GetLaunchTemplateBlockDeviceMappingEbArgs{...}

type GetLaunchTemplateBlockDeviceMappingEbOutput

type GetLaunchTemplateBlockDeviceMappingEbOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateBlockDeviceMappingEbOutput) DeleteOnTermination

func (GetLaunchTemplateBlockDeviceMappingEbOutput) ElementType

func (GetLaunchTemplateBlockDeviceMappingEbOutput) Encrypted

func (GetLaunchTemplateBlockDeviceMappingEbOutput) Iops

func (GetLaunchTemplateBlockDeviceMappingEbOutput) KmsKeyId

func (GetLaunchTemplateBlockDeviceMappingEbOutput) SnapshotId

func (GetLaunchTemplateBlockDeviceMappingEbOutput) Throughput

func (GetLaunchTemplateBlockDeviceMappingEbOutput) ToGetLaunchTemplateBlockDeviceMappingEbOutput

func (o GetLaunchTemplateBlockDeviceMappingEbOutput) ToGetLaunchTemplateBlockDeviceMappingEbOutput() GetLaunchTemplateBlockDeviceMappingEbOutput

func (GetLaunchTemplateBlockDeviceMappingEbOutput) ToGetLaunchTemplateBlockDeviceMappingEbOutputWithContext

func (o GetLaunchTemplateBlockDeviceMappingEbOutput) ToGetLaunchTemplateBlockDeviceMappingEbOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingEbOutput

func (GetLaunchTemplateBlockDeviceMappingEbOutput) VolumeSize

func (GetLaunchTemplateBlockDeviceMappingEbOutput) VolumeType

type GetLaunchTemplateBlockDeviceMappingInput

type GetLaunchTemplateBlockDeviceMappingInput interface {
	pulumi.Input

	ToGetLaunchTemplateBlockDeviceMappingOutput() GetLaunchTemplateBlockDeviceMappingOutput
	ToGetLaunchTemplateBlockDeviceMappingOutputWithContext(context.Context) GetLaunchTemplateBlockDeviceMappingOutput
}

GetLaunchTemplateBlockDeviceMappingInput is an input type that accepts GetLaunchTemplateBlockDeviceMappingArgs and GetLaunchTemplateBlockDeviceMappingOutput values. You can construct a concrete instance of `GetLaunchTemplateBlockDeviceMappingInput` via:

GetLaunchTemplateBlockDeviceMappingArgs{...}

type GetLaunchTemplateBlockDeviceMappingOutput

type GetLaunchTemplateBlockDeviceMappingOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateBlockDeviceMappingOutput) DeviceName

func (GetLaunchTemplateBlockDeviceMappingOutput) Ebs

func (GetLaunchTemplateBlockDeviceMappingOutput) ElementType

func (GetLaunchTemplateBlockDeviceMappingOutput) NoDevice

func (GetLaunchTemplateBlockDeviceMappingOutput) ToGetLaunchTemplateBlockDeviceMappingOutput

func (o GetLaunchTemplateBlockDeviceMappingOutput) ToGetLaunchTemplateBlockDeviceMappingOutput() GetLaunchTemplateBlockDeviceMappingOutput

func (GetLaunchTemplateBlockDeviceMappingOutput) ToGetLaunchTemplateBlockDeviceMappingOutputWithContext

func (o GetLaunchTemplateBlockDeviceMappingOutput) ToGetLaunchTemplateBlockDeviceMappingOutputWithContext(ctx context.Context) GetLaunchTemplateBlockDeviceMappingOutput

func (GetLaunchTemplateBlockDeviceMappingOutput) VirtualName

type GetLaunchTemplateCreditSpecification

type GetLaunchTemplateCreditSpecification struct {
	CpuCredits string `pulumi:"cpuCredits"`
}

type GetLaunchTemplateCreditSpecificationArgs

type GetLaunchTemplateCreditSpecificationArgs struct {
	CpuCredits pulumi.StringInput `pulumi:"cpuCredits"`
}

func (GetLaunchTemplateCreditSpecificationArgs) ElementType

func (GetLaunchTemplateCreditSpecificationArgs) ToGetLaunchTemplateCreditSpecificationOutput

func (i GetLaunchTemplateCreditSpecificationArgs) ToGetLaunchTemplateCreditSpecificationOutput() GetLaunchTemplateCreditSpecificationOutput

func (GetLaunchTemplateCreditSpecificationArgs) ToGetLaunchTemplateCreditSpecificationOutputWithContext

func (i GetLaunchTemplateCreditSpecificationArgs) ToGetLaunchTemplateCreditSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateCreditSpecificationOutput

type GetLaunchTemplateCreditSpecificationArray

type GetLaunchTemplateCreditSpecificationArray []GetLaunchTemplateCreditSpecificationInput

func (GetLaunchTemplateCreditSpecificationArray) ElementType

func (GetLaunchTemplateCreditSpecificationArray) ToGetLaunchTemplateCreditSpecificationArrayOutput

func (i GetLaunchTemplateCreditSpecificationArray) ToGetLaunchTemplateCreditSpecificationArrayOutput() GetLaunchTemplateCreditSpecificationArrayOutput

func (GetLaunchTemplateCreditSpecificationArray) ToGetLaunchTemplateCreditSpecificationArrayOutputWithContext

func (i GetLaunchTemplateCreditSpecificationArray) ToGetLaunchTemplateCreditSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateCreditSpecificationArrayOutput

type GetLaunchTemplateCreditSpecificationArrayInput

type GetLaunchTemplateCreditSpecificationArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateCreditSpecificationArrayOutput() GetLaunchTemplateCreditSpecificationArrayOutput
	ToGetLaunchTemplateCreditSpecificationArrayOutputWithContext(context.Context) GetLaunchTemplateCreditSpecificationArrayOutput
}

GetLaunchTemplateCreditSpecificationArrayInput is an input type that accepts GetLaunchTemplateCreditSpecificationArray and GetLaunchTemplateCreditSpecificationArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateCreditSpecificationArrayInput` via:

GetLaunchTemplateCreditSpecificationArray{ GetLaunchTemplateCreditSpecificationArgs{...} }

type GetLaunchTemplateCreditSpecificationArrayOutput

type GetLaunchTemplateCreditSpecificationArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateCreditSpecificationArrayOutput) ElementType

func (GetLaunchTemplateCreditSpecificationArrayOutput) Index

func (GetLaunchTemplateCreditSpecificationArrayOutput) ToGetLaunchTemplateCreditSpecificationArrayOutput

func (o GetLaunchTemplateCreditSpecificationArrayOutput) ToGetLaunchTemplateCreditSpecificationArrayOutput() GetLaunchTemplateCreditSpecificationArrayOutput

func (GetLaunchTemplateCreditSpecificationArrayOutput) ToGetLaunchTemplateCreditSpecificationArrayOutputWithContext

func (o GetLaunchTemplateCreditSpecificationArrayOutput) ToGetLaunchTemplateCreditSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateCreditSpecificationArrayOutput

type GetLaunchTemplateCreditSpecificationInput

type GetLaunchTemplateCreditSpecificationInput interface {
	pulumi.Input

	ToGetLaunchTemplateCreditSpecificationOutput() GetLaunchTemplateCreditSpecificationOutput
	ToGetLaunchTemplateCreditSpecificationOutputWithContext(context.Context) GetLaunchTemplateCreditSpecificationOutput
}

GetLaunchTemplateCreditSpecificationInput is an input type that accepts GetLaunchTemplateCreditSpecificationArgs and GetLaunchTemplateCreditSpecificationOutput values. You can construct a concrete instance of `GetLaunchTemplateCreditSpecificationInput` via:

GetLaunchTemplateCreditSpecificationArgs{...}

type GetLaunchTemplateCreditSpecificationOutput

type GetLaunchTemplateCreditSpecificationOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateCreditSpecificationOutput) CpuCredits

func (GetLaunchTemplateCreditSpecificationOutput) ElementType

func (GetLaunchTemplateCreditSpecificationOutput) ToGetLaunchTemplateCreditSpecificationOutput

func (o GetLaunchTemplateCreditSpecificationOutput) ToGetLaunchTemplateCreditSpecificationOutput() GetLaunchTemplateCreditSpecificationOutput

func (GetLaunchTemplateCreditSpecificationOutput) ToGetLaunchTemplateCreditSpecificationOutputWithContext

func (o GetLaunchTemplateCreditSpecificationOutput) ToGetLaunchTemplateCreditSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateCreditSpecificationOutput

type GetLaunchTemplateElasticGpuSpecification

type GetLaunchTemplateElasticGpuSpecification struct {
	Type string `pulumi:"type"`
}

type GetLaunchTemplateElasticGpuSpecificationArgs

type GetLaunchTemplateElasticGpuSpecificationArgs struct {
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetLaunchTemplateElasticGpuSpecificationArgs) ElementType

func (GetLaunchTemplateElasticGpuSpecificationArgs) ToGetLaunchTemplateElasticGpuSpecificationOutput

func (i GetLaunchTemplateElasticGpuSpecificationArgs) ToGetLaunchTemplateElasticGpuSpecificationOutput() GetLaunchTemplateElasticGpuSpecificationOutput

func (GetLaunchTemplateElasticGpuSpecificationArgs) ToGetLaunchTemplateElasticGpuSpecificationOutputWithContext

func (i GetLaunchTemplateElasticGpuSpecificationArgs) ToGetLaunchTemplateElasticGpuSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateElasticGpuSpecificationOutput

type GetLaunchTemplateElasticGpuSpecificationArray

type GetLaunchTemplateElasticGpuSpecificationArray []GetLaunchTemplateElasticGpuSpecificationInput

func (GetLaunchTemplateElasticGpuSpecificationArray) ElementType

func (GetLaunchTemplateElasticGpuSpecificationArray) ToGetLaunchTemplateElasticGpuSpecificationArrayOutput

func (i GetLaunchTemplateElasticGpuSpecificationArray) ToGetLaunchTemplateElasticGpuSpecificationArrayOutput() GetLaunchTemplateElasticGpuSpecificationArrayOutput

func (GetLaunchTemplateElasticGpuSpecificationArray) ToGetLaunchTemplateElasticGpuSpecificationArrayOutputWithContext

func (i GetLaunchTemplateElasticGpuSpecificationArray) ToGetLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateElasticGpuSpecificationArrayOutput

type GetLaunchTemplateElasticGpuSpecificationArrayInput

type GetLaunchTemplateElasticGpuSpecificationArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateElasticGpuSpecificationArrayOutput() GetLaunchTemplateElasticGpuSpecificationArrayOutput
	ToGetLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(context.Context) GetLaunchTemplateElasticGpuSpecificationArrayOutput
}

GetLaunchTemplateElasticGpuSpecificationArrayInput is an input type that accepts GetLaunchTemplateElasticGpuSpecificationArray and GetLaunchTemplateElasticGpuSpecificationArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateElasticGpuSpecificationArrayInput` via:

GetLaunchTemplateElasticGpuSpecificationArray{ GetLaunchTemplateElasticGpuSpecificationArgs{...} }

type GetLaunchTemplateElasticGpuSpecificationArrayOutput

type GetLaunchTemplateElasticGpuSpecificationArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateElasticGpuSpecificationArrayOutput) ElementType

func (GetLaunchTemplateElasticGpuSpecificationArrayOutput) Index

func (GetLaunchTemplateElasticGpuSpecificationArrayOutput) ToGetLaunchTemplateElasticGpuSpecificationArrayOutput

func (o GetLaunchTemplateElasticGpuSpecificationArrayOutput) ToGetLaunchTemplateElasticGpuSpecificationArrayOutput() GetLaunchTemplateElasticGpuSpecificationArrayOutput

func (GetLaunchTemplateElasticGpuSpecificationArrayOutput) ToGetLaunchTemplateElasticGpuSpecificationArrayOutputWithContext

func (o GetLaunchTemplateElasticGpuSpecificationArrayOutput) ToGetLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateElasticGpuSpecificationArrayOutput

type GetLaunchTemplateElasticGpuSpecificationInput

type GetLaunchTemplateElasticGpuSpecificationInput interface {
	pulumi.Input

	ToGetLaunchTemplateElasticGpuSpecificationOutput() GetLaunchTemplateElasticGpuSpecificationOutput
	ToGetLaunchTemplateElasticGpuSpecificationOutputWithContext(context.Context) GetLaunchTemplateElasticGpuSpecificationOutput
}

GetLaunchTemplateElasticGpuSpecificationInput is an input type that accepts GetLaunchTemplateElasticGpuSpecificationArgs and GetLaunchTemplateElasticGpuSpecificationOutput values. You can construct a concrete instance of `GetLaunchTemplateElasticGpuSpecificationInput` via:

GetLaunchTemplateElasticGpuSpecificationArgs{...}

type GetLaunchTemplateElasticGpuSpecificationOutput

type GetLaunchTemplateElasticGpuSpecificationOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateElasticGpuSpecificationOutput) ElementType

func (GetLaunchTemplateElasticGpuSpecificationOutput) ToGetLaunchTemplateElasticGpuSpecificationOutput

func (o GetLaunchTemplateElasticGpuSpecificationOutput) ToGetLaunchTemplateElasticGpuSpecificationOutput() GetLaunchTemplateElasticGpuSpecificationOutput

func (GetLaunchTemplateElasticGpuSpecificationOutput) ToGetLaunchTemplateElasticGpuSpecificationOutputWithContext

func (o GetLaunchTemplateElasticGpuSpecificationOutput) ToGetLaunchTemplateElasticGpuSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateElasticGpuSpecificationOutput

func (GetLaunchTemplateElasticGpuSpecificationOutput) Type

type GetLaunchTemplateEnclaveOption

type GetLaunchTemplateEnclaveOption struct {
	// Whether Nitro Enclaves are enabled.
	Enabled bool `pulumi:"enabled"`
}

type GetLaunchTemplateEnclaveOptionArgs

type GetLaunchTemplateEnclaveOptionArgs struct {
	// Whether Nitro Enclaves are enabled.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
}

func (GetLaunchTemplateEnclaveOptionArgs) ElementType

func (GetLaunchTemplateEnclaveOptionArgs) ToGetLaunchTemplateEnclaveOptionOutput

func (i GetLaunchTemplateEnclaveOptionArgs) ToGetLaunchTemplateEnclaveOptionOutput() GetLaunchTemplateEnclaveOptionOutput

func (GetLaunchTemplateEnclaveOptionArgs) ToGetLaunchTemplateEnclaveOptionOutputWithContext

func (i GetLaunchTemplateEnclaveOptionArgs) ToGetLaunchTemplateEnclaveOptionOutputWithContext(ctx context.Context) GetLaunchTemplateEnclaveOptionOutput

type GetLaunchTemplateEnclaveOptionArray

type GetLaunchTemplateEnclaveOptionArray []GetLaunchTemplateEnclaveOptionInput

func (GetLaunchTemplateEnclaveOptionArray) ElementType

func (GetLaunchTemplateEnclaveOptionArray) ToGetLaunchTemplateEnclaveOptionArrayOutput

func (i GetLaunchTemplateEnclaveOptionArray) ToGetLaunchTemplateEnclaveOptionArrayOutput() GetLaunchTemplateEnclaveOptionArrayOutput

func (GetLaunchTemplateEnclaveOptionArray) ToGetLaunchTemplateEnclaveOptionArrayOutputWithContext

func (i GetLaunchTemplateEnclaveOptionArray) ToGetLaunchTemplateEnclaveOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateEnclaveOptionArrayOutput

type GetLaunchTemplateEnclaveOptionArrayInput

type GetLaunchTemplateEnclaveOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateEnclaveOptionArrayOutput() GetLaunchTemplateEnclaveOptionArrayOutput
	ToGetLaunchTemplateEnclaveOptionArrayOutputWithContext(context.Context) GetLaunchTemplateEnclaveOptionArrayOutput
}

GetLaunchTemplateEnclaveOptionArrayInput is an input type that accepts GetLaunchTemplateEnclaveOptionArray and GetLaunchTemplateEnclaveOptionArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateEnclaveOptionArrayInput` via:

GetLaunchTemplateEnclaveOptionArray{ GetLaunchTemplateEnclaveOptionArgs{...} }

type GetLaunchTemplateEnclaveOptionArrayOutput

type GetLaunchTemplateEnclaveOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateEnclaveOptionArrayOutput) ElementType

func (GetLaunchTemplateEnclaveOptionArrayOutput) Index

func (GetLaunchTemplateEnclaveOptionArrayOutput) ToGetLaunchTemplateEnclaveOptionArrayOutput

func (o GetLaunchTemplateEnclaveOptionArrayOutput) ToGetLaunchTemplateEnclaveOptionArrayOutput() GetLaunchTemplateEnclaveOptionArrayOutput

func (GetLaunchTemplateEnclaveOptionArrayOutput) ToGetLaunchTemplateEnclaveOptionArrayOutputWithContext

func (o GetLaunchTemplateEnclaveOptionArrayOutput) ToGetLaunchTemplateEnclaveOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateEnclaveOptionArrayOutput

type GetLaunchTemplateEnclaveOptionInput

type GetLaunchTemplateEnclaveOptionInput interface {
	pulumi.Input

	ToGetLaunchTemplateEnclaveOptionOutput() GetLaunchTemplateEnclaveOptionOutput
	ToGetLaunchTemplateEnclaveOptionOutputWithContext(context.Context) GetLaunchTemplateEnclaveOptionOutput
}

GetLaunchTemplateEnclaveOptionInput is an input type that accepts GetLaunchTemplateEnclaveOptionArgs and GetLaunchTemplateEnclaveOptionOutput values. You can construct a concrete instance of `GetLaunchTemplateEnclaveOptionInput` via:

GetLaunchTemplateEnclaveOptionArgs{...}

type GetLaunchTemplateEnclaveOptionOutput

type GetLaunchTemplateEnclaveOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateEnclaveOptionOutput) ElementType

func (GetLaunchTemplateEnclaveOptionOutput) Enabled

Whether Nitro Enclaves are enabled.

func (GetLaunchTemplateEnclaveOptionOutput) ToGetLaunchTemplateEnclaveOptionOutput

func (o GetLaunchTemplateEnclaveOptionOutput) ToGetLaunchTemplateEnclaveOptionOutput() GetLaunchTemplateEnclaveOptionOutput

func (GetLaunchTemplateEnclaveOptionOutput) ToGetLaunchTemplateEnclaveOptionOutputWithContext

func (o GetLaunchTemplateEnclaveOptionOutput) ToGetLaunchTemplateEnclaveOptionOutputWithContext(ctx context.Context) GetLaunchTemplateEnclaveOptionOutput

type GetLaunchTemplateFilter

type GetLaunchTemplateFilter struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetLaunchTemplateFilterArgs

type GetLaunchTemplateFilterArgs struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLaunchTemplateFilterArgs) ElementType

func (GetLaunchTemplateFilterArgs) ToGetLaunchTemplateFilterOutput

func (i GetLaunchTemplateFilterArgs) ToGetLaunchTemplateFilterOutput() GetLaunchTemplateFilterOutput

func (GetLaunchTemplateFilterArgs) ToGetLaunchTemplateFilterOutputWithContext

func (i GetLaunchTemplateFilterArgs) ToGetLaunchTemplateFilterOutputWithContext(ctx context.Context) GetLaunchTemplateFilterOutput

type GetLaunchTemplateFilterArray

type GetLaunchTemplateFilterArray []GetLaunchTemplateFilterInput

func (GetLaunchTemplateFilterArray) ElementType

func (GetLaunchTemplateFilterArray) ToGetLaunchTemplateFilterArrayOutput

func (i GetLaunchTemplateFilterArray) ToGetLaunchTemplateFilterArrayOutput() GetLaunchTemplateFilterArrayOutput

func (GetLaunchTemplateFilterArray) ToGetLaunchTemplateFilterArrayOutputWithContext

func (i GetLaunchTemplateFilterArray) ToGetLaunchTemplateFilterArrayOutputWithContext(ctx context.Context) GetLaunchTemplateFilterArrayOutput

type GetLaunchTemplateFilterArrayInput

type GetLaunchTemplateFilterArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateFilterArrayOutput() GetLaunchTemplateFilterArrayOutput
	ToGetLaunchTemplateFilterArrayOutputWithContext(context.Context) GetLaunchTemplateFilterArrayOutput
}

GetLaunchTemplateFilterArrayInput is an input type that accepts GetLaunchTemplateFilterArray and GetLaunchTemplateFilterArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateFilterArrayInput` via:

GetLaunchTemplateFilterArray{ GetLaunchTemplateFilterArgs{...} }

type GetLaunchTemplateFilterArrayOutput

type GetLaunchTemplateFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateFilterArrayOutput) ElementType

func (GetLaunchTemplateFilterArrayOutput) Index

func (GetLaunchTemplateFilterArrayOutput) ToGetLaunchTemplateFilterArrayOutput

func (o GetLaunchTemplateFilterArrayOutput) ToGetLaunchTemplateFilterArrayOutput() GetLaunchTemplateFilterArrayOutput

func (GetLaunchTemplateFilterArrayOutput) ToGetLaunchTemplateFilterArrayOutputWithContext

func (o GetLaunchTemplateFilterArrayOutput) ToGetLaunchTemplateFilterArrayOutputWithContext(ctx context.Context) GetLaunchTemplateFilterArrayOutput

type GetLaunchTemplateFilterInput

type GetLaunchTemplateFilterInput interface {
	pulumi.Input

	ToGetLaunchTemplateFilterOutput() GetLaunchTemplateFilterOutput
	ToGetLaunchTemplateFilterOutputWithContext(context.Context) GetLaunchTemplateFilterOutput
}

GetLaunchTemplateFilterInput is an input type that accepts GetLaunchTemplateFilterArgs and GetLaunchTemplateFilterOutput values. You can construct a concrete instance of `GetLaunchTemplateFilterInput` via:

GetLaunchTemplateFilterArgs{...}

type GetLaunchTemplateFilterOutput

type GetLaunchTemplateFilterOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateFilterOutput) ElementType

func (GetLaunchTemplateFilterOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).

func (GetLaunchTemplateFilterOutput) ToGetLaunchTemplateFilterOutput

func (o GetLaunchTemplateFilterOutput) ToGetLaunchTemplateFilterOutput() GetLaunchTemplateFilterOutput

func (GetLaunchTemplateFilterOutput) ToGetLaunchTemplateFilterOutputWithContext

func (o GetLaunchTemplateFilterOutput) ToGetLaunchTemplateFilterOutputWithContext(ctx context.Context) GetLaunchTemplateFilterOutput

func (GetLaunchTemplateFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetLaunchTemplateHibernationOption

type GetLaunchTemplateHibernationOption struct {
	Configured bool `pulumi:"configured"`
}

type GetLaunchTemplateHibernationOptionArgs

type GetLaunchTemplateHibernationOptionArgs struct {
	Configured pulumi.BoolInput `pulumi:"configured"`
}

func (GetLaunchTemplateHibernationOptionArgs) ElementType

func (GetLaunchTemplateHibernationOptionArgs) ToGetLaunchTemplateHibernationOptionOutput

func (i GetLaunchTemplateHibernationOptionArgs) ToGetLaunchTemplateHibernationOptionOutput() GetLaunchTemplateHibernationOptionOutput

func (GetLaunchTemplateHibernationOptionArgs) ToGetLaunchTemplateHibernationOptionOutputWithContext

func (i GetLaunchTemplateHibernationOptionArgs) ToGetLaunchTemplateHibernationOptionOutputWithContext(ctx context.Context) GetLaunchTemplateHibernationOptionOutput

type GetLaunchTemplateHibernationOptionArray

type GetLaunchTemplateHibernationOptionArray []GetLaunchTemplateHibernationOptionInput

func (GetLaunchTemplateHibernationOptionArray) ElementType

func (GetLaunchTemplateHibernationOptionArray) ToGetLaunchTemplateHibernationOptionArrayOutput

func (i GetLaunchTemplateHibernationOptionArray) ToGetLaunchTemplateHibernationOptionArrayOutput() GetLaunchTemplateHibernationOptionArrayOutput

func (GetLaunchTemplateHibernationOptionArray) ToGetLaunchTemplateHibernationOptionArrayOutputWithContext

func (i GetLaunchTemplateHibernationOptionArray) ToGetLaunchTemplateHibernationOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateHibernationOptionArrayOutput

type GetLaunchTemplateHibernationOptionArrayInput

type GetLaunchTemplateHibernationOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateHibernationOptionArrayOutput() GetLaunchTemplateHibernationOptionArrayOutput
	ToGetLaunchTemplateHibernationOptionArrayOutputWithContext(context.Context) GetLaunchTemplateHibernationOptionArrayOutput
}

GetLaunchTemplateHibernationOptionArrayInput is an input type that accepts GetLaunchTemplateHibernationOptionArray and GetLaunchTemplateHibernationOptionArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateHibernationOptionArrayInput` via:

GetLaunchTemplateHibernationOptionArray{ GetLaunchTemplateHibernationOptionArgs{...} }

type GetLaunchTemplateHibernationOptionArrayOutput

type GetLaunchTemplateHibernationOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateHibernationOptionArrayOutput) ElementType

func (GetLaunchTemplateHibernationOptionArrayOutput) Index

func (GetLaunchTemplateHibernationOptionArrayOutput) ToGetLaunchTemplateHibernationOptionArrayOutput

func (o GetLaunchTemplateHibernationOptionArrayOutput) ToGetLaunchTemplateHibernationOptionArrayOutput() GetLaunchTemplateHibernationOptionArrayOutput

func (GetLaunchTemplateHibernationOptionArrayOutput) ToGetLaunchTemplateHibernationOptionArrayOutputWithContext

func (o GetLaunchTemplateHibernationOptionArrayOutput) ToGetLaunchTemplateHibernationOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateHibernationOptionArrayOutput

type GetLaunchTemplateHibernationOptionInput

type GetLaunchTemplateHibernationOptionInput interface {
	pulumi.Input

	ToGetLaunchTemplateHibernationOptionOutput() GetLaunchTemplateHibernationOptionOutput
	ToGetLaunchTemplateHibernationOptionOutputWithContext(context.Context) GetLaunchTemplateHibernationOptionOutput
}

GetLaunchTemplateHibernationOptionInput is an input type that accepts GetLaunchTemplateHibernationOptionArgs and GetLaunchTemplateHibernationOptionOutput values. You can construct a concrete instance of `GetLaunchTemplateHibernationOptionInput` via:

GetLaunchTemplateHibernationOptionArgs{...}

type GetLaunchTemplateHibernationOptionOutput

type GetLaunchTemplateHibernationOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateHibernationOptionOutput) Configured

func (GetLaunchTemplateHibernationOptionOutput) ElementType

func (GetLaunchTemplateHibernationOptionOutput) ToGetLaunchTemplateHibernationOptionOutput

func (o GetLaunchTemplateHibernationOptionOutput) ToGetLaunchTemplateHibernationOptionOutput() GetLaunchTemplateHibernationOptionOutput

func (GetLaunchTemplateHibernationOptionOutput) ToGetLaunchTemplateHibernationOptionOutputWithContext

func (o GetLaunchTemplateHibernationOptionOutput) ToGetLaunchTemplateHibernationOptionOutputWithContext(ctx context.Context) GetLaunchTemplateHibernationOptionOutput

type GetLaunchTemplateIamInstanceProfile

type GetLaunchTemplateIamInstanceProfile struct {
	// Amazon Resource Name (ARN) of the launch template.
	Arn string `pulumi:"arn"`
	// The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).
	Name string `pulumi:"name"`
}

type GetLaunchTemplateIamInstanceProfileArgs

type GetLaunchTemplateIamInstanceProfileArgs struct {
	// Amazon Resource Name (ARN) of the launch template.
	Arn pulumi.StringInput `pulumi:"arn"`
	// The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetLaunchTemplateIamInstanceProfileArgs) ElementType

func (GetLaunchTemplateIamInstanceProfileArgs) ToGetLaunchTemplateIamInstanceProfileOutput

func (i GetLaunchTemplateIamInstanceProfileArgs) ToGetLaunchTemplateIamInstanceProfileOutput() GetLaunchTemplateIamInstanceProfileOutput

func (GetLaunchTemplateIamInstanceProfileArgs) ToGetLaunchTemplateIamInstanceProfileOutputWithContext

func (i GetLaunchTemplateIamInstanceProfileArgs) ToGetLaunchTemplateIamInstanceProfileOutputWithContext(ctx context.Context) GetLaunchTemplateIamInstanceProfileOutput

type GetLaunchTemplateIamInstanceProfileArray

type GetLaunchTemplateIamInstanceProfileArray []GetLaunchTemplateIamInstanceProfileInput

func (GetLaunchTemplateIamInstanceProfileArray) ElementType

func (GetLaunchTemplateIamInstanceProfileArray) ToGetLaunchTemplateIamInstanceProfileArrayOutput

func (i GetLaunchTemplateIamInstanceProfileArray) ToGetLaunchTemplateIamInstanceProfileArrayOutput() GetLaunchTemplateIamInstanceProfileArrayOutput

func (GetLaunchTemplateIamInstanceProfileArray) ToGetLaunchTemplateIamInstanceProfileArrayOutputWithContext

func (i GetLaunchTemplateIamInstanceProfileArray) ToGetLaunchTemplateIamInstanceProfileArrayOutputWithContext(ctx context.Context) GetLaunchTemplateIamInstanceProfileArrayOutput

type GetLaunchTemplateIamInstanceProfileArrayInput

type GetLaunchTemplateIamInstanceProfileArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateIamInstanceProfileArrayOutput() GetLaunchTemplateIamInstanceProfileArrayOutput
	ToGetLaunchTemplateIamInstanceProfileArrayOutputWithContext(context.Context) GetLaunchTemplateIamInstanceProfileArrayOutput
}

GetLaunchTemplateIamInstanceProfileArrayInput is an input type that accepts GetLaunchTemplateIamInstanceProfileArray and GetLaunchTemplateIamInstanceProfileArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateIamInstanceProfileArrayInput` via:

GetLaunchTemplateIamInstanceProfileArray{ GetLaunchTemplateIamInstanceProfileArgs{...} }

type GetLaunchTemplateIamInstanceProfileArrayOutput

type GetLaunchTemplateIamInstanceProfileArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateIamInstanceProfileArrayOutput) ElementType

func (GetLaunchTemplateIamInstanceProfileArrayOutput) Index

func (GetLaunchTemplateIamInstanceProfileArrayOutput) ToGetLaunchTemplateIamInstanceProfileArrayOutput

func (o GetLaunchTemplateIamInstanceProfileArrayOutput) ToGetLaunchTemplateIamInstanceProfileArrayOutput() GetLaunchTemplateIamInstanceProfileArrayOutput

func (GetLaunchTemplateIamInstanceProfileArrayOutput) ToGetLaunchTemplateIamInstanceProfileArrayOutputWithContext

func (o GetLaunchTemplateIamInstanceProfileArrayOutput) ToGetLaunchTemplateIamInstanceProfileArrayOutputWithContext(ctx context.Context) GetLaunchTemplateIamInstanceProfileArrayOutput

type GetLaunchTemplateIamInstanceProfileInput

type GetLaunchTemplateIamInstanceProfileInput interface {
	pulumi.Input

	ToGetLaunchTemplateIamInstanceProfileOutput() GetLaunchTemplateIamInstanceProfileOutput
	ToGetLaunchTemplateIamInstanceProfileOutputWithContext(context.Context) GetLaunchTemplateIamInstanceProfileOutput
}

GetLaunchTemplateIamInstanceProfileInput is an input type that accepts GetLaunchTemplateIamInstanceProfileArgs and GetLaunchTemplateIamInstanceProfileOutput values. You can construct a concrete instance of `GetLaunchTemplateIamInstanceProfileInput` via:

GetLaunchTemplateIamInstanceProfileArgs{...}

type GetLaunchTemplateIamInstanceProfileOutput

type GetLaunchTemplateIamInstanceProfileOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateIamInstanceProfileOutput) Arn

Amazon Resource Name (ARN) of the launch template.

func (GetLaunchTemplateIamInstanceProfileOutput) ElementType

func (GetLaunchTemplateIamInstanceProfileOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).

func (GetLaunchTemplateIamInstanceProfileOutput) ToGetLaunchTemplateIamInstanceProfileOutput

func (o GetLaunchTemplateIamInstanceProfileOutput) ToGetLaunchTemplateIamInstanceProfileOutput() GetLaunchTemplateIamInstanceProfileOutput

func (GetLaunchTemplateIamInstanceProfileOutput) ToGetLaunchTemplateIamInstanceProfileOutputWithContext

func (o GetLaunchTemplateIamInstanceProfileOutput) ToGetLaunchTemplateIamInstanceProfileOutputWithContext(ctx context.Context) GetLaunchTemplateIamInstanceProfileOutput

type GetLaunchTemplateInstanceMarketOption

type GetLaunchTemplateInstanceMarketOption struct {
	MarketType  string                                            `pulumi:"marketType"`
	SpotOptions []GetLaunchTemplateInstanceMarketOptionSpotOption `pulumi:"spotOptions"`
}

type GetLaunchTemplateInstanceMarketOptionArgs

type GetLaunchTemplateInstanceMarketOptionArgs struct {
	MarketType  pulumi.StringInput                                        `pulumi:"marketType"`
	SpotOptions GetLaunchTemplateInstanceMarketOptionSpotOptionArrayInput `pulumi:"spotOptions"`
}

func (GetLaunchTemplateInstanceMarketOptionArgs) ElementType

func (GetLaunchTemplateInstanceMarketOptionArgs) ToGetLaunchTemplateInstanceMarketOptionOutput

func (i GetLaunchTemplateInstanceMarketOptionArgs) ToGetLaunchTemplateInstanceMarketOptionOutput() GetLaunchTemplateInstanceMarketOptionOutput

func (GetLaunchTemplateInstanceMarketOptionArgs) ToGetLaunchTemplateInstanceMarketOptionOutputWithContext

func (i GetLaunchTemplateInstanceMarketOptionArgs) ToGetLaunchTemplateInstanceMarketOptionOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionOutput

type GetLaunchTemplateInstanceMarketOptionArray

type GetLaunchTemplateInstanceMarketOptionArray []GetLaunchTemplateInstanceMarketOptionInput

func (GetLaunchTemplateInstanceMarketOptionArray) ElementType

func (GetLaunchTemplateInstanceMarketOptionArray) ToGetLaunchTemplateInstanceMarketOptionArrayOutput

func (i GetLaunchTemplateInstanceMarketOptionArray) ToGetLaunchTemplateInstanceMarketOptionArrayOutput() GetLaunchTemplateInstanceMarketOptionArrayOutput

func (GetLaunchTemplateInstanceMarketOptionArray) ToGetLaunchTemplateInstanceMarketOptionArrayOutputWithContext

func (i GetLaunchTemplateInstanceMarketOptionArray) ToGetLaunchTemplateInstanceMarketOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionArrayInput

type GetLaunchTemplateInstanceMarketOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateInstanceMarketOptionArrayOutput() GetLaunchTemplateInstanceMarketOptionArrayOutput
	ToGetLaunchTemplateInstanceMarketOptionArrayOutputWithContext(context.Context) GetLaunchTemplateInstanceMarketOptionArrayOutput
}

GetLaunchTemplateInstanceMarketOptionArrayInput is an input type that accepts GetLaunchTemplateInstanceMarketOptionArray and GetLaunchTemplateInstanceMarketOptionArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateInstanceMarketOptionArrayInput` via:

GetLaunchTemplateInstanceMarketOptionArray{ GetLaunchTemplateInstanceMarketOptionArgs{...} }

type GetLaunchTemplateInstanceMarketOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateInstanceMarketOptionArrayOutput) ElementType

func (GetLaunchTemplateInstanceMarketOptionArrayOutput) Index

func (GetLaunchTemplateInstanceMarketOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionArrayOutput

func (o GetLaunchTemplateInstanceMarketOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionArrayOutput() GetLaunchTemplateInstanceMarketOptionArrayOutput

func (GetLaunchTemplateInstanceMarketOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionArrayOutputWithContext

func (o GetLaunchTemplateInstanceMarketOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionInput

type GetLaunchTemplateInstanceMarketOptionInput interface {
	pulumi.Input

	ToGetLaunchTemplateInstanceMarketOptionOutput() GetLaunchTemplateInstanceMarketOptionOutput
	ToGetLaunchTemplateInstanceMarketOptionOutputWithContext(context.Context) GetLaunchTemplateInstanceMarketOptionOutput
}

GetLaunchTemplateInstanceMarketOptionInput is an input type that accepts GetLaunchTemplateInstanceMarketOptionArgs and GetLaunchTemplateInstanceMarketOptionOutput values. You can construct a concrete instance of `GetLaunchTemplateInstanceMarketOptionInput` via:

GetLaunchTemplateInstanceMarketOptionArgs{...}

type GetLaunchTemplateInstanceMarketOptionOutput

type GetLaunchTemplateInstanceMarketOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateInstanceMarketOptionOutput) ElementType

func (GetLaunchTemplateInstanceMarketOptionOutput) MarketType

func (GetLaunchTemplateInstanceMarketOptionOutput) SpotOptions

func (GetLaunchTemplateInstanceMarketOptionOutput) ToGetLaunchTemplateInstanceMarketOptionOutput

func (o GetLaunchTemplateInstanceMarketOptionOutput) ToGetLaunchTemplateInstanceMarketOptionOutput() GetLaunchTemplateInstanceMarketOptionOutput

func (GetLaunchTemplateInstanceMarketOptionOutput) ToGetLaunchTemplateInstanceMarketOptionOutputWithContext

func (o GetLaunchTemplateInstanceMarketOptionOutput) ToGetLaunchTemplateInstanceMarketOptionOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionOutput

type GetLaunchTemplateInstanceMarketOptionSpotOption

type GetLaunchTemplateInstanceMarketOptionSpotOption struct {
	BlockDurationMinutes         int    `pulumi:"blockDurationMinutes"`
	InstanceInterruptionBehavior string `pulumi:"instanceInterruptionBehavior"`
	MaxPrice                     string `pulumi:"maxPrice"`
	SpotInstanceType             string `pulumi:"spotInstanceType"`
	ValidUntil                   string `pulumi:"validUntil"`
}

type GetLaunchTemplateInstanceMarketOptionSpotOptionArgs

type GetLaunchTemplateInstanceMarketOptionSpotOptionArgs struct {
	BlockDurationMinutes         pulumi.IntInput    `pulumi:"blockDurationMinutes"`
	InstanceInterruptionBehavior pulumi.StringInput `pulumi:"instanceInterruptionBehavior"`
	MaxPrice                     pulumi.StringInput `pulumi:"maxPrice"`
	SpotInstanceType             pulumi.StringInput `pulumi:"spotInstanceType"`
	ValidUntil                   pulumi.StringInput `pulumi:"validUntil"`
}

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArgs) ElementType

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArgs) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutput

func (i GetLaunchTemplateInstanceMarketOptionSpotOptionArgs) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutput() GetLaunchTemplateInstanceMarketOptionSpotOptionOutput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArgs) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutputWithContext

func (i GetLaunchTemplateInstanceMarketOptionSpotOptionArgs) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionOutput

type GetLaunchTemplateInstanceMarketOptionSpotOptionArray

type GetLaunchTemplateInstanceMarketOptionSpotOptionArray []GetLaunchTemplateInstanceMarketOptionSpotOptionInput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArray) ElementType

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArray) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

func (i GetLaunchTemplateInstanceMarketOptionSpotOptionArray) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput() GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArray) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutputWithContext

func (i GetLaunchTemplateInstanceMarketOptionSpotOptionArray) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionSpotOptionArrayInput

type GetLaunchTemplateInstanceMarketOptionSpotOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput() GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput
	ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutputWithContext(context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput
}

GetLaunchTemplateInstanceMarketOptionSpotOptionArrayInput is an input type that accepts GetLaunchTemplateInstanceMarketOptionSpotOptionArray and GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateInstanceMarketOptionSpotOptionArrayInput` via:

GetLaunchTemplateInstanceMarketOptionSpotOptionArray{ GetLaunchTemplateInstanceMarketOptionSpotOptionArgs{...} }

type GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput) ElementType

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput) Index

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutputWithContext

func (o GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionArrayOutput

type GetLaunchTemplateInstanceMarketOptionSpotOptionInput

type GetLaunchTemplateInstanceMarketOptionSpotOptionInput interface {
	pulumi.Input

	ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutput() GetLaunchTemplateInstanceMarketOptionSpotOptionOutput
	ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutputWithContext(context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionOutput
}

GetLaunchTemplateInstanceMarketOptionSpotOptionInput is an input type that accepts GetLaunchTemplateInstanceMarketOptionSpotOptionArgs and GetLaunchTemplateInstanceMarketOptionSpotOptionOutput values. You can construct a concrete instance of `GetLaunchTemplateInstanceMarketOptionSpotOptionInput` via:

GetLaunchTemplateInstanceMarketOptionSpotOptionArgs{...}

type GetLaunchTemplateInstanceMarketOptionSpotOptionOutput

type GetLaunchTemplateInstanceMarketOptionSpotOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) BlockDurationMinutes

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) ElementType

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) InstanceInterruptionBehavior

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) MaxPrice

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) SpotInstanceType

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutputWithContext

func (o GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) ToGetLaunchTemplateInstanceMarketOptionSpotOptionOutputWithContext(ctx context.Context) GetLaunchTemplateInstanceMarketOptionSpotOptionOutput

func (GetLaunchTemplateInstanceMarketOptionSpotOptionOutput) ValidUntil

type GetLaunchTemplateMetadataOption

type GetLaunchTemplateMetadataOption struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit int `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens string `pulumi:"httpTokens"`
}

type GetLaunchTemplateMetadataOptionArgs

type GetLaunchTemplateMetadataOptionArgs struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint pulumi.StringInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit pulumi.IntInput `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens pulumi.StringInput `pulumi:"httpTokens"`
}

func (GetLaunchTemplateMetadataOptionArgs) ElementType

func (GetLaunchTemplateMetadataOptionArgs) ToGetLaunchTemplateMetadataOptionOutput

func (i GetLaunchTemplateMetadataOptionArgs) ToGetLaunchTemplateMetadataOptionOutput() GetLaunchTemplateMetadataOptionOutput

func (GetLaunchTemplateMetadataOptionArgs) ToGetLaunchTemplateMetadataOptionOutputWithContext

func (i GetLaunchTemplateMetadataOptionArgs) ToGetLaunchTemplateMetadataOptionOutputWithContext(ctx context.Context) GetLaunchTemplateMetadataOptionOutput

type GetLaunchTemplateMetadataOptionArray

type GetLaunchTemplateMetadataOptionArray []GetLaunchTemplateMetadataOptionInput

func (GetLaunchTemplateMetadataOptionArray) ElementType

func (GetLaunchTemplateMetadataOptionArray) ToGetLaunchTemplateMetadataOptionArrayOutput

func (i GetLaunchTemplateMetadataOptionArray) ToGetLaunchTemplateMetadataOptionArrayOutput() GetLaunchTemplateMetadataOptionArrayOutput

func (GetLaunchTemplateMetadataOptionArray) ToGetLaunchTemplateMetadataOptionArrayOutputWithContext

func (i GetLaunchTemplateMetadataOptionArray) ToGetLaunchTemplateMetadataOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateMetadataOptionArrayOutput

type GetLaunchTemplateMetadataOptionArrayInput

type GetLaunchTemplateMetadataOptionArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateMetadataOptionArrayOutput() GetLaunchTemplateMetadataOptionArrayOutput
	ToGetLaunchTemplateMetadataOptionArrayOutputWithContext(context.Context) GetLaunchTemplateMetadataOptionArrayOutput
}

GetLaunchTemplateMetadataOptionArrayInput is an input type that accepts GetLaunchTemplateMetadataOptionArray and GetLaunchTemplateMetadataOptionArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateMetadataOptionArrayInput` via:

GetLaunchTemplateMetadataOptionArray{ GetLaunchTemplateMetadataOptionArgs{...} }

type GetLaunchTemplateMetadataOptionArrayOutput

type GetLaunchTemplateMetadataOptionArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateMetadataOptionArrayOutput) ElementType

func (GetLaunchTemplateMetadataOptionArrayOutput) Index

func (GetLaunchTemplateMetadataOptionArrayOutput) ToGetLaunchTemplateMetadataOptionArrayOutput

func (o GetLaunchTemplateMetadataOptionArrayOutput) ToGetLaunchTemplateMetadataOptionArrayOutput() GetLaunchTemplateMetadataOptionArrayOutput

func (GetLaunchTemplateMetadataOptionArrayOutput) ToGetLaunchTemplateMetadataOptionArrayOutputWithContext

func (o GetLaunchTemplateMetadataOptionArrayOutput) ToGetLaunchTemplateMetadataOptionArrayOutputWithContext(ctx context.Context) GetLaunchTemplateMetadataOptionArrayOutput

type GetLaunchTemplateMetadataOptionInput

type GetLaunchTemplateMetadataOptionInput interface {
	pulumi.Input

	ToGetLaunchTemplateMetadataOptionOutput() GetLaunchTemplateMetadataOptionOutput
	ToGetLaunchTemplateMetadataOptionOutputWithContext(context.Context) GetLaunchTemplateMetadataOptionOutput
}

GetLaunchTemplateMetadataOptionInput is an input type that accepts GetLaunchTemplateMetadataOptionArgs and GetLaunchTemplateMetadataOptionOutput values. You can construct a concrete instance of `GetLaunchTemplateMetadataOptionInput` via:

GetLaunchTemplateMetadataOptionArgs{...}

type GetLaunchTemplateMetadataOptionOutput

type GetLaunchTemplateMetadataOptionOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateMetadataOptionOutput) ElementType

func (GetLaunchTemplateMetadataOptionOutput) HttpEndpoint

The state of the metadata service: `enabled`, `disabled`.

func (GetLaunchTemplateMetadataOptionOutput) HttpPutResponseHopLimit

func (o GetLaunchTemplateMetadataOptionOutput) HttpPutResponseHopLimit() pulumi.IntOutput

The desired HTTP PUT response hop limit for instance metadata requests.

func (GetLaunchTemplateMetadataOptionOutput) HttpTokens

If session tokens are required: `optional`, `required`.

func (GetLaunchTemplateMetadataOptionOutput) ToGetLaunchTemplateMetadataOptionOutput

func (o GetLaunchTemplateMetadataOptionOutput) ToGetLaunchTemplateMetadataOptionOutput() GetLaunchTemplateMetadataOptionOutput

func (GetLaunchTemplateMetadataOptionOutput) ToGetLaunchTemplateMetadataOptionOutputWithContext

func (o GetLaunchTemplateMetadataOptionOutput) ToGetLaunchTemplateMetadataOptionOutputWithContext(ctx context.Context) GetLaunchTemplateMetadataOptionOutput

type GetLaunchTemplateMonitoring

type GetLaunchTemplateMonitoring struct {
	// Whether Nitro Enclaves are enabled.
	Enabled bool `pulumi:"enabled"`
}

type GetLaunchTemplateMonitoringArgs

type GetLaunchTemplateMonitoringArgs struct {
	// Whether Nitro Enclaves are enabled.
	Enabled pulumi.BoolInput `pulumi:"enabled"`
}

func (GetLaunchTemplateMonitoringArgs) ElementType

func (GetLaunchTemplateMonitoringArgs) ToGetLaunchTemplateMonitoringOutput

func (i GetLaunchTemplateMonitoringArgs) ToGetLaunchTemplateMonitoringOutput() GetLaunchTemplateMonitoringOutput

func (GetLaunchTemplateMonitoringArgs) ToGetLaunchTemplateMonitoringOutputWithContext

func (i GetLaunchTemplateMonitoringArgs) ToGetLaunchTemplateMonitoringOutputWithContext(ctx context.Context) GetLaunchTemplateMonitoringOutput

type GetLaunchTemplateMonitoringArray

type GetLaunchTemplateMonitoringArray []GetLaunchTemplateMonitoringInput

func (GetLaunchTemplateMonitoringArray) ElementType

func (GetLaunchTemplateMonitoringArray) ToGetLaunchTemplateMonitoringArrayOutput

func (i GetLaunchTemplateMonitoringArray) ToGetLaunchTemplateMonitoringArrayOutput() GetLaunchTemplateMonitoringArrayOutput

func (GetLaunchTemplateMonitoringArray) ToGetLaunchTemplateMonitoringArrayOutputWithContext

func (i GetLaunchTemplateMonitoringArray) ToGetLaunchTemplateMonitoringArrayOutputWithContext(ctx context.Context) GetLaunchTemplateMonitoringArrayOutput

type GetLaunchTemplateMonitoringArrayInput

type GetLaunchTemplateMonitoringArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateMonitoringArrayOutput() GetLaunchTemplateMonitoringArrayOutput
	ToGetLaunchTemplateMonitoringArrayOutputWithContext(context.Context) GetLaunchTemplateMonitoringArrayOutput
}

GetLaunchTemplateMonitoringArrayInput is an input type that accepts GetLaunchTemplateMonitoringArray and GetLaunchTemplateMonitoringArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateMonitoringArrayInput` via:

GetLaunchTemplateMonitoringArray{ GetLaunchTemplateMonitoringArgs{...} }

type GetLaunchTemplateMonitoringArrayOutput

type GetLaunchTemplateMonitoringArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateMonitoringArrayOutput) ElementType

func (GetLaunchTemplateMonitoringArrayOutput) Index

func (GetLaunchTemplateMonitoringArrayOutput) ToGetLaunchTemplateMonitoringArrayOutput

func (o GetLaunchTemplateMonitoringArrayOutput) ToGetLaunchTemplateMonitoringArrayOutput() GetLaunchTemplateMonitoringArrayOutput

func (GetLaunchTemplateMonitoringArrayOutput) ToGetLaunchTemplateMonitoringArrayOutputWithContext

func (o GetLaunchTemplateMonitoringArrayOutput) ToGetLaunchTemplateMonitoringArrayOutputWithContext(ctx context.Context) GetLaunchTemplateMonitoringArrayOutput

type GetLaunchTemplateMonitoringInput

type GetLaunchTemplateMonitoringInput interface {
	pulumi.Input

	ToGetLaunchTemplateMonitoringOutput() GetLaunchTemplateMonitoringOutput
	ToGetLaunchTemplateMonitoringOutputWithContext(context.Context) GetLaunchTemplateMonitoringOutput
}

GetLaunchTemplateMonitoringInput is an input type that accepts GetLaunchTemplateMonitoringArgs and GetLaunchTemplateMonitoringOutput values. You can construct a concrete instance of `GetLaunchTemplateMonitoringInput` via:

GetLaunchTemplateMonitoringArgs{...}

type GetLaunchTemplateMonitoringOutput

type GetLaunchTemplateMonitoringOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateMonitoringOutput) ElementType

func (GetLaunchTemplateMonitoringOutput) Enabled

Whether Nitro Enclaves are enabled.

func (GetLaunchTemplateMonitoringOutput) ToGetLaunchTemplateMonitoringOutput

func (o GetLaunchTemplateMonitoringOutput) ToGetLaunchTemplateMonitoringOutput() GetLaunchTemplateMonitoringOutput

func (GetLaunchTemplateMonitoringOutput) ToGetLaunchTemplateMonitoringOutputWithContext

func (o GetLaunchTemplateMonitoringOutput) ToGetLaunchTemplateMonitoringOutputWithContext(ctx context.Context) GetLaunchTemplateMonitoringOutput

type GetLaunchTemplateNetworkInterface

type GetLaunchTemplateNetworkInterface struct {
	AssociateCarrierIpAddress string `pulumi:"associateCarrierIpAddress"`
	AssociatePublicIpAddress  *bool  `pulumi:"associatePublicIpAddress"`
	DeleteOnTermination       *bool  `pulumi:"deleteOnTermination"`
	// Description of the launch template.
	Description        string   `pulumi:"description"`
	DeviceIndex        int      `pulumi:"deviceIndex"`
	InterfaceType      string   `pulumi:"interfaceType"`
	Ipv4AddressCount   int      `pulumi:"ipv4AddressCount"`
	Ipv4Addresses      []string `pulumi:"ipv4Addresses"`
	Ipv6AddressCount   int      `pulumi:"ipv6AddressCount"`
	Ipv6Addresses      []string `pulumi:"ipv6Addresses"`
	NetworkInterfaceId string   `pulumi:"networkInterfaceId"`
	PrivateIpAddress   string   `pulumi:"privateIpAddress"`
	SecurityGroups     []string `pulumi:"securityGroups"`
	SubnetId           string   `pulumi:"subnetId"`
}

type GetLaunchTemplateNetworkInterfaceArgs

type GetLaunchTemplateNetworkInterfaceArgs struct {
	AssociateCarrierIpAddress pulumi.StringInput  `pulumi:"associateCarrierIpAddress"`
	AssociatePublicIpAddress  pulumi.BoolPtrInput `pulumi:"associatePublicIpAddress"`
	DeleteOnTermination       pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Description of the launch template.
	Description        pulumi.StringInput      `pulumi:"description"`
	DeviceIndex        pulumi.IntInput         `pulumi:"deviceIndex"`
	InterfaceType      pulumi.StringInput      `pulumi:"interfaceType"`
	Ipv4AddressCount   pulumi.IntInput         `pulumi:"ipv4AddressCount"`
	Ipv4Addresses      pulumi.StringArrayInput `pulumi:"ipv4Addresses"`
	Ipv6AddressCount   pulumi.IntInput         `pulumi:"ipv6AddressCount"`
	Ipv6Addresses      pulumi.StringArrayInput `pulumi:"ipv6Addresses"`
	NetworkInterfaceId pulumi.StringInput      `pulumi:"networkInterfaceId"`
	PrivateIpAddress   pulumi.StringInput      `pulumi:"privateIpAddress"`
	SecurityGroups     pulumi.StringArrayInput `pulumi:"securityGroups"`
	SubnetId           pulumi.StringInput      `pulumi:"subnetId"`
}

func (GetLaunchTemplateNetworkInterfaceArgs) ElementType

func (GetLaunchTemplateNetworkInterfaceArgs) ToGetLaunchTemplateNetworkInterfaceOutput

func (i GetLaunchTemplateNetworkInterfaceArgs) ToGetLaunchTemplateNetworkInterfaceOutput() GetLaunchTemplateNetworkInterfaceOutput

func (GetLaunchTemplateNetworkInterfaceArgs) ToGetLaunchTemplateNetworkInterfaceOutputWithContext

func (i GetLaunchTemplateNetworkInterfaceArgs) ToGetLaunchTemplateNetworkInterfaceOutputWithContext(ctx context.Context) GetLaunchTemplateNetworkInterfaceOutput

type GetLaunchTemplateNetworkInterfaceArray

type GetLaunchTemplateNetworkInterfaceArray []GetLaunchTemplateNetworkInterfaceInput

func (GetLaunchTemplateNetworkInterfaceArray) ElementType

func (GetLaunchTemplateNetworkInterfaceArray) ToGetLaunchTemplateNetworkInterfaceArrayOutput

func (i GetLaunchTemplateNetworkInterfaceArray) ToGetLaunchTemplateNetworkInterfaceArrayOutput() GetLaunchTemplateNetworkInterfaceArrayOutput

func (GetLaunchTemplateNetworkInterfaceArray) ToGetLaunchTemplateNetworkInterfaceArrayOutputWithContext

func (i GetLaunchTemplateNetworkInterfaceArray) ToGetLaunchTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetLaunchTemplateNetworkInterfaceArrayOutput

type GetLaunchTemplateNetworkInterfaceArrayInput

type GetLaunchTemplateNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateNetworkInterfaceArrayOutput() GetLaunchTemplateNetworkInterfaceArrayOutput
	ToGetLaunchTemplateNetworkInterfaceArrayOutputWithContext(context.Context) GetLaunchTemplateNetworkInterfaceArrayOutput
}

GetLaunchTemplateNetworkInterfaceArrayInput is an input type that accepts GetLaunchTemplateNetworkInterfaceArray and GetLaunchTemplateNetworkInterfaceArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateNetworkInterfaceArrayInput` via:

GetLaunchTemplateNetworkInterfaceArray{ GetLaunchTemplateNetworkInterfaceArgs{...} }

type GetLaunchTemplateNetworkInterfaceArrayOutput

type GetLaunchTemplateNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateNetworkInterfaceArrayOutput) ElementType

func (GetLaunchTemplateNetworkInterfaceArrayOutput) Index

func (GetLaunchTemplateNetworkInterfaceArrayOutput) ToGetLaunchTemplateNetworkInterfaceArrayOutput

func (o GetLaunchTemplateNetworkInterfaceArrayOutput) ToGetLaunchTemplateNetworkInterfaceArrayOutput() GetLaunchTemplateNetworkInterfaceArrayOutput

func (GetLaunchTemplateNetworkInterfaceArrayOutput) ToGetLaunchTemplateNetworkInterfaceArrayOutputWithContext

func (o GetLaunchTemplateNetworkInterfaceArrayOutput) ToGetLaunchTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetLaunchTemplateNetworkInterfaceArrayOutput

type GetLaunchTemplateNetworkInterfaceInput

type GetLaunchTemplateNetworkInterfaceInput interface {
	pulumi.Input

	ToGetLaunchTemplateNetworkInterfaceOutput() GetLaunchTemplateNetworkInterfaceOutput
	ToGetLaunchTemplateNetworkInterfaceOutputWithContext(context.Context) GetLaunchTemplateNetworkInterfaceOutput
}

GetLaunchTemplateNetworkInterfaceInput is an input type that accepts GetLaunchTemplateNetworkInterfaceArgs and GetLaunchTemplateNetworkInterfaceOutput values. You can construct a concrete instance of `GetLaunchTemplateNetworkInterfaceInput` via:

GetLaunchTemplateNetworkInterfaceArgs{...}

type GetLaunchTemplateNetworkInterfaceOutput

type GetLaunchTemplateNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateNetworkInterfaceOutput) AssociateCarrierIpAddress

func (o GetLaunchTemplateNetworkInterfaceOutput) AssociateCarrierIpAddress() pulumi.StringOutput

func (GetLaunchTemplateNetworkInterfaceOutput) AssociatePublicIpAddress

func (o GetLaunchTemplateNetworkInterfaceOutput) AssociatePublicIpAddress() pulumi.BoolPtrOutput

func (GetLaunchTemplateNetworkInterfaceOutput) DeleteOnTermination

func (GetLaunchTemplateNetworkInterfaceOutput) Description

Description of the launch template.

func (GetLaunchTemplateNetworkInterfaceOutput) DeviceIndex

func (GetLaunchTemplateNetworkInterfaceOutput) ElementType

func (GetLaunchTemplateNetworkInterfaceOutput) InterfaceType added in v4.7.0

func (GetLaunchTemplateNetworkInterfaceOutput) Ipv4AddressCount

func (GetLaunchTemplateNetworkInterfaceOutput) Ipv4Addresses

func (GetLaunchTemplateNetworkInterfaceOutput) Ipv6AddressCount

func (GetLaunchTemplateNetworkInterfaceOutput) Ipv6Addresses

func (GetLaunchTemplateNetworkInterfaceOutput) NetworkInterfaceId

func (GetLaunchTemplateNetworkInterfaceOutput) PrivateIpAddress

func (GetLaunchTemplateNetworkInterfaceOutput) SecurityGroups

func (GetLaunchTemplateNetworkInterfaceOutput) SubnetId

func (GetLaunchTemplateNetworkInterfaceOutput) ToGetLaunchTemplateNetworkInterfaceOutput

func (o GetLaunchTemplateNetworkInterfaceOutput) ToGetLaunchTemplateNetworkInterfaceOutput() GetLaunchTemplateNetworkInterfaceOutput

func (GetLaunchTemplateNetworkInterfaceOutput) ToGetLaunchTemplateNetworkInterfaceOutputWithContext

func (o GetLaunchTemplateNetworkInterfaceOutput) ToGetLaunchTemplateNetworkInterfaceOutputWithContext(ctx context.Context) GetLaunchTemplateNetworkInterfaceOutput

type GetLaunchTemplatePlacement

type GetLaunchTemplatePlacement struct {
	Affinity             string `pulumi:"affinity"`
	AvailabilityZone     string `pulumi:"availabilityZone"`
	GroupName            string `pulumi:"groupName"`
	HostId               string `pulumi:"hostId"`
	HostResourceGroupArn string `pulumi:"hostResourceGroupArn"`
	PartitionNumber      int    `pulumi:"partitionNumber"`
	SpreadDomain         string `pulumi:"spreadDomain"`
	Tenancy              string `pulumi:"tenancy"`
}

type GetLaunchTemplatePlacementArgs

type GetLaunchTemplatePlacementArgs struct {
	Affinity             pulumi.StringInput `pulumi:"affinity"`
	AvailabilityZone     pulumi.StringInput `pulumi:"availabilityZone"`
	GroupName            pulumi.StringInput `pulumi:"groupName"`
	HostId               pulumi.StringInput `pulumi:"hostId"`
	HostResourceGroupArn pulumi.StringInput `pulumi:"hostResourceGroupArn"`
	PartitionNumber      pulumi.IntInput    `pulumi:"partitionNumber"`
	SpreadDomain         pulumi.StringInput `pulumi:"spreadDomain"`
	Tenancy              pulumi.StringInput `pulumi:"tenancy"`
}

func (GetLaunchTemplatePlacementArgs) ElementType

func (GetLaunchTemplatePlacementArgs) ToGetLaunchTemplatePlacementOutput

func (i GetLaunchTemplatePlacementArgs) ToGetLaunchTemplatePlacementOutput() GetLaunchTemplatePlacementOutput

func (GetLaunchTemplatePlacementArgs) ToGetLaunchTemplatePlacementOutputWithContext

func (i GetLaunchTemplatePlacementArgs) ToGetLaunchTemplatePlacementOutputWithContext(ctx context.Context) GetLaunchTemplatePlacementOutput

type GetLaunchTemplatePlacementArray

type GetLaunchTemplatePlacementArray []GetLaunchTemplatePlacementInput

func (GetLaunchTemplatePlacementArray) ElementType

func (GetLaunchTemplatePlacementArray) ToGetLaunchTemplatePlacementArrayOutput

func (i GetLaunchTemplatePlacementArray) ToGetLaunchTemplatePlacementArrayOutput() GetLaunchTemplatePlacementArrayOutput

func (GetLaunchTemplatePlacementArray) ToGetLaunchTemplatePlacementArrayOutputWithContext

func (i GetLaunchTemplatePlacementArray) ToGetLaunchTemplatePlacementArrayOutputWithContext(ctx context.Context) GetLaunchTemplatePlacementArrayOutput

type GetLaunchTemplatePlacementArrayInput

type GetLaunchTemplatePlacementArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplatePlacementArrayOutput() GetLaunchTemplatePlacementArrayOutput
	ToGetLaunchTemplatePlacementArrayOutputWithContext(context.Context) GetLaunchTemplatePlacementArrayOutput
}

GetLaunchTemplatePlacementArrayInput is an input type that accepts GetLaunchTemplatePlacementArray and GetLaunchTemplatePlacementArrayOutput values. You can construct a concrete instance of `GetLaunchTemplatePlacementArrayInput` via:

GetLaunchTemplatePlacementArray{ GetLaunchTemplatePlacementArgs{...} }

type GetLaunchTemplatePlacementArrayOutput

type GetLaunchTemplatePlacementArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplatePlacementArrayOutput) ElementType

func (GetLaunchTemplatePlacementArrayOutput) Index

func (GetLaunchTemplatePlacementArrayOutput) ToGetLaunchTemplatePlacementArrayOutput

func (o GetLaunchTemplatePlacementArrayOutput) ToGetLaunchTemplatePlacementArrayOutput() GetLaunchTemplatePlacementArrayOutput

func (GetLaunchTemplatePlacementArrayOutput) ToGetLaunchTemplatePlacementArrayOutputWithContext

func (o GetLaunchTemplatePlacementArrayOutput) ToGetLaunchTemplatePlacementArrayOutputWithContext(ctx context.Context) GetLaunchTemplatePlacementArrayOutput

type GetLaunchTemplatePlacementInput

type GetLaunchTemplatePlacementInput interface {
	pulumi.Input

	ToGetLaunchTemplatePlacementOutput() GetLaunchTemplatePlacementOutput
	ToGetLaunchTemplatePlacementOutputWithContext(context.Context) GetLaunchTemplatePlacementOutput
}

GetLaunchTemplatePlacementInput is an input type that accepts GetLaunchTemplatePlacementArgs and GetLaunchTemplatePlacementOutput values. You can construct a concrete instance of `GetLaunchTemplatePlacementInput` via:

GetLaunchTemplatePlacementArgs{...}

type GetLaunchTemplatePlacementOutput

type GetLaunchTemplatePlacementOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplatePlacementOutput) Affinity

func (GetLaunchTemplatePlacementOutput) AvailabilityZone

func (GetLaunchTemplatePlacementOutput) ElementType

func (GetLaunchTemplatePlacementOutput) GroupName

func (GetLaunchTemplatePlacementOutput) HostId

func (GetLaunchTemplatePlacementOutput) HostResourceGroupArn added in v4.2.0

func (o GetLaunchTemplatePlacementOutput) HostResourceGroupArn() pulumi.StringOutput

func (GetLaunchTemplatePlacementOutput) PartitionNumber

func (GetLaunchTemplatePlacementOutput) SpreadDomain

func (GetLaunchTemplatePlacementOutput) Tenancy

func (GetLaunchTemplatePlacementOutput) ToGetLaunchTemplatePlacementOutput

func (o GetLaunchTemplatePlacementOutput) ToGetLaunchTemplatePlacementOutput() GetLaunchTemplatePlacementOutput

func (GetLaunchTemplatePlacementOutput) ToGetLaunchTemplatePlacementOutputWithContext

func (o GetLaunchTemplatePlacementOutput) ToGetLaunchTemplatePlacementOutputWithContext(ctx context.Context) GetLaunchTemplatePlacementOutput

type GetLaunchTemplateTagSpecification

type GetLaunchTemplateTagSpecification struct {
	ResourceType string `pulumi:"resourceType"`
	// A map of tags, each pair of which must exactly match a pair on the desired Launch Template.
	Tags map[string]string `pulumi:"tags"`
}

type GetLaunchTemplateTagSpecificationArgs

type GetLaunchTemplateTagSpecificationArgs struct {
	ResourceType pulumi.StringInput `pulumi:"resourceType"`
	// A map of tags, each pair of which must exactly match a pair on the desired Launch Template.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

func (GetLaunchTemplateTagSpecificationArgs) ElementType

func (GetLaunchTemplateTagSpecificationArgs) ToGetLaunchTemplateTagSpecificationOutput

func (i GetLaunchTemplateTagSpecificationArgs) ToGetLaunchTemplateTagSpecificationOutput() GetLaunchTemplateTagSpecificationOutput

func (GetLaunchTemplateTagSpecificationArgs) ToGetLaunchTemplateTagSpecificationOutputWithContext

func (i GetLaunchTemplateTagSpecificationArgs) ToGetLaunchTemplateTagSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateTagSpecificationOutput

type GetLaunchTemplateTagSpecificationArray

type GetLaunchTemplateTagSpecificationArray []GetLaunchTemplateTagSpecificationInput

func (GetLaunchTemplateTagSpecificationArray) ElementType

func (GetLaunchTemplateTagSpecificationArray) ToGetLaunchTemplateTagSpecificationArrayOutput

func (i GetLaunchTemplateTagSpecificationArray) ToGetLaunchTemplateTagSpecificationArrayOutput() GetLaunchTemplateTagSpecificationArrayOutput

func (GetLaunchTemplateTagSpecificationArray) ToGetLaunchTemplateTagSpecificationArrayOutputWithContext

func (i GetLaunchTemplateTagSpecificationArray) ToGetLaunchTemplateTagSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateTagSpecificationArrayOutput

type GetLaunchTemplateTagSpecificationArrayInput

type GetLaunchTemplateTagSpecificationArrayInput interface {
	pulumi.Input

	ToGetLaunchTemplateTagSpecificationArrayOutput() GetLaunchTemplateTagSpecificationArrayOutput
	ToGetLaunchTemplateTagSpecificationArrayOutputWithContext(context.Context) GetLaunchTemplateTagSpecificationArrayOutput
}

GetLaunchTemplateTagSpecificationArrayInput is an input type that accepts GetLaunchTemplateTagSpecificationArray and GetLaunchTemplateTagSpecificationArrayOutput values. You can construct a concrete instance of `GetLaunchTemplateTagSpecificationArrayInput` via:

GetLaunchTemplateTagSpecificationArray{ GetLaunchTemplateTagSpecificationArgs{...} }

type GetLaunchTemplateTagSpecificationArrayOutput

type GetLaunchTemplateTagSpecificationArrayOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateTagSpecificationArrayOutput) ElementType

func (GetLaunchTemplateTagSpecificationArrayOutput) Index

func (GetLaunchTemplateTagSpecificationArrayOutput) ToGetLaunchTemplateTagSpecificationArrayOutput

func (o GetLaunchTemplateTagSpecificationArrayOutput) ToGetLaunchTemplateTagSpecificationArrayOutput() GetLaunchTemplateTagSpecificationArrayOutput

func (GetLaunchTemplateTagSpecificationArrayOutput) ToGetLaunchTemplateTagSpecificationArrayOutputWithContext

func (o GetLaunchTemplateTagSpecificationArrayOutput) ToGetLaunchTemplateTagSpecificationArrayOutputWithContext(ctx context.Context) GetLaunchTemplateTagSpecificationArrayOutput

type GetLaunchTemplateTagSpecificationInput

type GetLaunchTemplateTagSpecificationInput interface {
	pulumi.Input

	ToGetLaunchTemplateTagSpecificationOutput() GetLaunchTemplateTagSpecificationOutput
	ToGetLaunchTemplateTagSpecificationOutputWithContext(context.Context) GetLaunchTemplateTagSpecificationOutput
}

GetLaunchTemplateTagSpecificationInput is an input type that accepts GetLaunchTemplateTagSpecificationArgs and GetLaunchTemplateTagSpecificationOutput values. You can construct a concrete instance of `GetLaunchTemplateTagSpecificationInput` via:

GetLaunchTemplateTagSpecificationArgs{...}

type GetLaunchTemplateTagSpecificationOutput

type GetLaunchTemplateTagSpecificationOutput struct{ *pulumi.OutputState }

func (GetLaunchTemplateTagSpecificationOutput) ElementType

func (GetLaunchTemplateTagSpecificationOutput) ResourceType

func (GetLaunchTemplateTagSpecificationOutput) Tags

A map of tags, each pair of which must exactly match a pair on the desired Launch Template.

func (GetLaunchTemplateTagSpecificationOutput) ToGetLaunchTemplateTagSpecificationOutput

func (o GetLaunchTemplateTagSpecificationOutput) ToGetLaunchTemplateTagSpecificationOutput() GetLaunchTemplateTagSpecificationOutput

func (GetLaunchTemplateTagSpecificationOutput) ToGetLaunchTemplateTagSpecificationOutputWithContext

func (o GetLaunchTemplateTagSpecificationOutput) ToGetLaunchTemplateTagSpecificationOutputWithContext(ctx context.Context) GetLaunchTemplateTagSpecificationOutput

type GetLocalGatewayArgs

type GetLocalGatewayArgs struct {
	// Custom filter block as described below.
	Filters []GetLocalGatewayFilter `pulumi:"filters"`
	// The id of the specific Local Gateway to retrieve.
	Id *string `pulumi:"id"`
	// The current state of the desired Local Gateway.
	// Can be either `"pending"` or `"available"`.
	State *string `pulumi:"state"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired Local Gateway.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGateway.

type GetLocalGatewayFilter

type GetLocalGatewayFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayFilterArgs

type GetLocalGatewayFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayFilterArgs) ElementType

func (GetLocalGatewayFilterArgs) ElementType() reflect.Type

func (GetLocalGatewayFilterArgs) ToGetLocalGatewayFilterOutput

func (i GetLocalGatewayFilterArgs) ToGetLocalGatewayFilterOutput() GetLocalGatewayFilterOutput

func (GetLocalGatewayFilterArgs) ToGetLocalGatewayFilterOutputWithContext

func (i GetLocalGatewayFilterArgs) ToGetLocalGatewayFilterOutputWithContext(ctx context.Context) GetLocalGatewayFilterOutput

type GetLocalGatewayFilterArray

type GetLocalGatewayFilterArray []GetLocalGatewayFilterInput

func (GetLocalGatewayFilterArray) ElementType

func (GetLocalGatewayFilterArray) ElementType() reflect.Type

func (GetLocalGatewayFilterArray) ToGetLocalGatewayFilterArrayOutput

func (i GetLocalGatewayFilterArray) ToGetLocalGatewayFilterArrayOutput() GetLocalGatewayFilterArrayOutput

func (GetLocalGatewayFilterArray) ToGetLocalGatewayFilterArrayOutputWithContext

func (i GetLocalGatewayFilterArray) ToGetLocalGatewayFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayFilterArrayOutput

type GetLocalGatewayFilterArrayInput

type GetLocalGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayFilterArrayOutput() GetLocalGatewayFilterArrayOutput
	ToGetLocalGatewayFilterArrayOutputWithContext(context.Context) GetLocalGatewayFilterArrayOutput
}

GetLocalGatewayFilterArrayInput is an input type that accepts GetLocalGatewayFilterArray and GetLocalGatewayFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayFilterArrayInput` via:

GetLocalGatewayFilterArray{ GetLocalGatewayFilterArgs{...} }

type GetLocalGatewayFilterArrayOutput

type GetLocalGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayFilterArrayOutput) ElementType

func (GetLocalGatewayFilterArrayOutput) Index

func (GetLocalGatewayFilterArrayOutput) ToGetLocalGatewayFilterArrayOutput

func (o GetLocalGatewayFilterArrayOutput) ToGetLocalGatewayFilterArrayOutput() GetLocalGatewayFilterArrayOutput

func (GetLocalGatewayFilterArrayOutput) ToGetLocalGatewayFilterArrayOutputWithContext

func (o GetLocalGatewayFilterArrayOutput) ToGetLocalGatewayFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayFilterArrayOutput

type GetLocalGatewayFilterInput

type GetLocalGatewayFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayFilterOutput() GetLocalGatewayFilterOutput
	ToGetLocalGatewayFilterOutputWithContext(context.Context) GetLocalGatewayFilterOutput
}

GetLocalGatewayFilterInput is an input type that accepts GetLocalGatewayFilterArgs and GetLocalGatewayFilterOutput values. You can construct a concrete instance of `GetLocalGatewayFilterInput` via:

GetLocalGatewayFilterArgs{...}

type GetLocalGatewayFilterOutput

type GetLocalGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayFilterOutput) ElementType

func (GetLocalGatewayFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).

func (GetLocalGatewayFilterOutput) ToGetLocalGatewayFilterOutput

func (o GetLocalGatewayFilterOutput) ToGetLocalGatewayFilterOutput() GetLocalGatewayFilterOutput

func (GetLocalGatewayFilterOutput) ToGetLocalGatewayFilterOutputWithContext

func (o GetLocalGatewayFilterOutput) ToGetLocalGatewayFilterOutputWithContext(ctx context.Context) GetLocalGatewayFilterOutput

func (GetLocalGatewayFilterOutput) Values

Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.

type GetLocalGatewayResult

type GetLocalGatewayResult struct {
	Filters []GetLocalGatewayFilter `pulumi:"filters"`
	Id      string                  `pulumi:"id"`
	// Amazon Resource Name (ARN) of Outpost
	OutpostArn string `pulumi:"outpostArn"`
	// AWS account identifier that owns the Local Gateway.
	OwnerId string `pulumi:"ownerId"`
	// State of the local gateway.
	State string            `pulumi:"state"`
	Tags  map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGateway.

func GetLocalGateway

func GetLocalGateway(ctx *pulumi.Context, args *GetLocalGatewayArgs, opts ...pulumi.InvokeOption) (*GetLocalGatewayResult, error)

Provides details about an EC2 Local Gateway.

## Example Usage

The following example shows how one might accept a local gateway id as a variable.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		localGatewayId := cfg.RequireObject("localGatewayId")
		opt0 := localGatewayId
		_, err := ec2.GetLocalGateway(ctx, &ec2.GetLocalGatewayArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetLocalGatewayRouteTableArgs

type GetLocalGatewayRouteTableArgs struct {
	Filters []GetLocalGatewayRouteTableFilter `pulumi:"filters"`
	// The id of the specific local gateway route table to retrieve.
	LocalGatewayId *string `pulumi:"localGatewayId"`
	// Local Gateway Route Table Id assigned to desired local gateway route table
	LocalGatewayRouteTableId *string `pulumi:"localGatewayRouteTableId"`
	// The arn of the Outpost the local gateway route table is associated with.
	OutpostArn *string `pulumi:"outpostArn"`
	// The state of the local gateway route table.
	State *string `pulumi:"state"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired local gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGatewayRouteTable.

type GetLocalGatewayRouteTableFilter

type GetLocalGatewayRouteTableFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A local gateway route table will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayRouteTableFilterArgs

type GetLocalGatewayRouteTableFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A local gateway route table will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayRouteTableFilterArgs) ElementType

func (GetLocalGatewayRouteTableFilterArgs) ToGetLocalGatewayRouteTableFilterOutput

func (i GetLocalGatewayRouteTableFilterArgs) ToGetLocalGatewayRouteTableFilterOutput() GetLocalGatewayRouteTableFilterOutput

func (GetLocalGatewayRouteTableFilterArgs) ToGetLocalGatewayRouteTableFilterOutputWithContext

func (i GetLocalGatewayRouteTableFilterArgs) ToGetLocalGatewayRouteTableFilterOutputWithContext(ctx context.Context) GetLocalGatewayRouteTableFilterOutput

type GetLocalGatewayRouteTableFilterArray

type GetLocalGatewayRouteTableFilterArray []GetLocalGatewayRouteTableFilterInput

func (GetLocalGatewayRouteTableFilterArray) ElementType

func (GetLocalGatewayRouteTableFilterArray) ToGetLocalGatewayRouteTableFilterArrayOutput

func (i GetLocalGatewayRouteTableFilterArray) ToGetLocalGatewayRouteTableFilterArrayOutput() GetLocalGatewayRouteTableFilterArrayOutput

func (GetLocalGatewayRouteTableFilterArray) ToGetLocalGatewayRouteTableFilterArrayOutputWithContext

func (i GetLocalGatewayRouteTableFilterArray) ToGetLocalGatewayRouteTableFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayRouteTableFilterArrayOutput

type GetLocalGatewayRouteTableFilterArrayInput

type GetLocalGatewayRouteTableFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayRouteTableFilterArrayOutput() GetLocalGatewayRouteTableFilterArrayOutput
	ToGetLocalGatewayRouteTableFilterArrayOutputWithContext(context.Context) GetLocalGatewayRouteTableFilterArrayOutput
}

GetLocalGatewayRouteTableFilterArrayInput is an input type that accepts GetLocalGatewayRouteTableFilterArray and GetLocalGatewayRouteTableFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayRouteTableFilterArrayInput` via:

GetLocalGatewayRouteTableFilterArray{ GetLocalGatewayRouteTableFilterArgs{...} }

type GetLocalGatewayRouteTableFilterArrayOutput

type GetLocalGatewayRouteTableFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayRouteTableFilterArrayOutput) ElementType

func (GetLocalGatewayRouteTableFilterArrayOutput) Index

func (GetLocalGatewayRouteTableFilterArrayOutput) ToGetLocalGatewayRouteTableFilterArrayOutput

func (o GetLocalGatewayRouteTableFilterArrayOutput) ToGetLocalGatewayRouteTableFilterArrayOutput() GetLocalGatewayRouteTableFilterArrayOutput

func (GetLocalGatewayRouteTableFilterArrayOutput) ToGetLocalGatewayRouteTableFilterArrayOutputWithContext

func (o GetLocalGatewayRouteTableFilterArrayOutput) ToGetLocalGatewayRouteTableFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayRouteTableFilterArrayOutput

type GetLocalGatewayRouteTableFilterInput

type GetLocalGatewayRouteTableFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayRouteTableFilterOutput() GetLocalGatewayRouteTableFilterOutput
	ToGetLocalGatewayRouteTableFilterOutputWithContext(context.Context) GetLocalGatewayRouteTableFilterOutput
}

GetLocalGatewayRouteTableFilterInput is an input type that accepts GetLocalGatewayRouteTableFilterArgs and GetLocalGatewayRouteTableFilterOutput values. You can construct a concrete instance of `GetLocalGatewayRouteTableFilterInput` via:

GetLocalGatewayRouteTableFilterArgs{...}

type GetLocalGatewayRouteTableFilterOutput

type GetLocalGatewayRouteTableFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayRouteTableFilterOutput) ElementType

func (GetLocalGatewayRouteTableFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).

func (GetLocalGatewayRouteTableFilterOutput) ToGetLocalGatewayRouteTableFilterOutput

func (o GetLocalGatewayRouteTableFilterOutput) ToGetLocalGatewayRouteTableFilterOutput() GetLocalGatewayRouteTableFilterOutput

func (GetLocalGatewayRouteTableFilterOutput) ToGetLocalGatewayRouteTableFilterOutputWithContext

func (o GetLocalGatewayRouteTableFilterOutput) ToGetLocalGatewayRouteTableFilterOutputWithContext(ctx context.Context) GetLocalGatewayRouteTableFilterOutput

func (GetLocalGatewayRouteTableFilterOutput) Values

Set of values that are accepted for the given field. A local gateway route table will be selected if any one of the given values matches.

type GetLocalGatewayRouteTableResult

type GetLocalGatewayRouteTableResult struct {
	Filters []GetLocalGatewayRouteTableFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                       string            `pulumi:"id"`
	LocalGatewayId           string            `pulumi:"localGatewayId"`
	LocalGatewayRouteTableId string            `pulumi:"localGatewayRouteTableId"`
	OutpostArn               string            `pulumi:"outpostArn"`
	State                    string            `pulumi:"state"`
	Tags                     map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGatewayRouteTable.

func GetLocalGatewayRouteTable

func GetLocalGatewayRouteTable(ctx *pulumi.Context, args *GetLocalGatewayRouteTableArgs, opts ...pulumi.InvokeOption) (*GetLocalGatewayRouteTableResult, error)

Provides details about an EC2 Local Gateway Route Table.

This data source can prove useful when a module accepts a local gateway route table id as an input variable and needs to, for example, find the associated Outpost or Local Gateway.

## Example Usage

The following example returns a specific local gateway route table ID

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		awsEc2LocalGatewayRouteTable := cfg.RequireObject("awsEc2LocalGatewayRouteTable")
		opt0 := awsEc2LocalGatewayRouteTable
		_, err := ec2.GetLocalGatewayRouteTable(ctx, &ec2.GetLocalGatewayRouteTableArgs{
			LocalGatewayRouteTableId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetLocalGatewayRouteTablesArgs

type GetLocalGatewayRouteTablesArgs struct {
	// Custom filter block as described below.
	Filters []GetLocalGatewayRouteTablesFilter `pulumi:"filters"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired local gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGatewayRouteTables.

type GetLocalGatewayRouteTablesFilter

type GetLocalGatewayRouteTablesFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway Route Table will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayRouteTablesFilterArgs

type GetLocalGatewayRouteTablesFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway Route Table will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayRouteTablesFilterArgs) ElementType

func (GetLocalGatewayRouteTablesFilterArgs) ToGetLocalGatewayRouteTablesFilterOutput

func (i GetLocalGatewayRouteTablesFilterArgs) ToGetLocalGatewayRouteTablesFilterOutput() GetLocalGatewayRouteTablesFilterOutput

func (GetLocalGatewayRouteTablesFilterArgs) ToGetLocalGatewayRouteTablesFilterOutputWithContext

func (i GetLocalGatewayRouteTablesFilterArgs) ToGetLocalGatewayRouteTablesFilterOutputWithContext(ctx context.Context) GetLocalGatewayRouteTablesFilterOutput

type GetLocalGatewayRouteTablesFilterArray

type GetLocalGatewayRouteTablesFilterArray []GetLocalGatewayRouteTablesFilterInput

func (GetLocalGatewayRouteTablesFilterArray) ElementType

func (GetLocalGatewayRouteTablesFilterArray) ToGetLocalGatewayRouteTablesFilterArrayOutput

func (i GetLocalGatewayRouteTablesFilterArray) ToGetLocalGatewayRouteTablesFilterArrayOutput() GetLocalGatewayRouteTablesFilterArrayOutput

func (GetLocalGatewayRouteTablesFilterArray) ToGetLocalGatewayRouteTablesFilterArrayOutputWithContext

func (i GetLocalGatewayRouteTablesFilterArray) ToGetLocalGatewayRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayRouteTablesFilterArrayOutput

type GetLocalGatewayRouteTablesFilterArrayInput

type GetLocalGatewayRouteTablesFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayRouteTablesFilterArrayOutput() GetLocalGatewayRouteTablesFilterArrayOutput
	ToGetLocalGatewayRouteTablesFilterArrayOutputWithContext(context.Context) GetLocalGatewayRouteTablesFilterArrayOutput
}

GetLocalGatewayRouteTablesFilterArrayInput is an input type that accepts GetLocalGatewayRouteTablesFilterArray and GetLocalGatewayRouteTablesFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayRouteTablesFilterArrayInput` via:

GetLocalGatewayRouteTablesFilterArray{ GetLocalGatewayRouteTablesFilterArgs{...} }

type GetLocalGatewayRouteTablesFilterArrayOutput

type GetLocalGatewayRouteTablesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayRouteTablesFilterArrayOutput) ElementType

func (GetLocalGatewayRouteTablesFilterArrayOutput) Index

func (GetLocalGatewayRouteTablesFilterArrayOutput) ToGetLocalGatewayRouteTablesFilterArrayOutput

func (o GetLocalGatewayRouteTablesFilterArrayOutput) ToGetLocalGatewayRouteTablesFilterArrayOutput() GetLocalGatewayRouteTablesFilterArrayOutput

func (GetLocalGatewayRouteTablesFilterArrayOutput) ToGetLocalGatewayRouteTablesFilterArrayOutputWithContext

func (o GetLocalGatewayRouteTablesFilterArrayOutput) ToGetLocalGatewayRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayRouteTablesFilterArrayOutput

type GetLocalGatewayRouteTablesFilterInput

type GetLocalGatewayRouteTablesFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayRouteTablesFilterOutput() GetLocalGatewayRouteTablesFilterOutput
	ToGetLocalGatewayRouteTablesFilterOutputWithContext(context.Context) GetLocalGatewayRouteTablesFilterOutput
}

GetLocalGatewayRouteTablesFilterInput is an input type that accepts GetLocalGatewayRouteTablesFilterArgs and GetLocalGatewayRouteTablesFilterOutput values. You can construct a concrete instance of `GetLocalGatewayRouteTablesFilterInput` via:

GetLocalGatewayRouteTablesFilterArgs{...}

type GetLocalGatewayRouteTablesFilterOutput

type GetLocalGatewayRouteTablesFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayRouteTablesFilterOutput) ElementType

func (GetLocalGatewayRouteTablesFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayRouteTables.html).

func (GetLocalGatewayRouteTablesFilterOutput) ToGetLocalGatewayRouteTablesFilterOutput

func (o GetLocalGatewayRouteTablesFilterOutput) ToGetLocalGatewayRouteTablesFilterOutput() GetLocalGatewayRouteTablesFilterOutput

func (GetLocalGatewayRouteTablesFilterOutput) ToGetLocalGatewayRouteTablesFilterOutputWithContext

func (o GetLocalGatewayRouteTablesFilterOutput) ToGetLocalGatewayRouteTablesFilterOutputWithContext(ctx context.Context) GetLocalGatewayRouteTablesFilterOutput

func (GetLocalGatewayRouteTablesFilterOutput) Values

Set of values that are accepted for the given field. A Local Gateway Route Table will be selected if any one of the given values matches.

type GetLocalGatewayRouteTablesResult

type GetLocalGatewayRouteTablesResult struct {
	Filters []GetLocalGatewayRouteTablesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of Local Gateway Route Table identifiers
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGatewayRouteTables.

func GetLocalGatewayRouteTables

func GetLocalGatewayRouteTables(ctx *pulumi.Context, args *GetLocalGatewayRouteTablesArgs, opts ...pulumi.InvokeOption) (*GetLocalGatewayRouteTablesResult, error)

Provides information for multiple EC2 Local Gateway Route Tables, such as their identifiers.

type GetLocalGatewayVirtualInterfaceArgs

type GetLocalGatewayVirtualInterfaceArgs struct {
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayVirtualInterfaces.html) for supported filters. Detailed below.
	Filters []GetLocalGatewayVirtualInterfaceFilter `pulumi:"filters"`
	// Identifier of EC2 Local Gateway Virtual Interface.
	Id *string `pulumi:"id"`
	// Key-value map of resource tags, each pair of which must exactly match a pair on the desired local gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGatewayVirtualInterface.

type GetLocalGatewayVirtualInterfaceFilter

type GetLocalGatewayVirtualInterfaceFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayVirtualInterfaceFilterArgs

type GetLocalGatewayVirtualInterfaceFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayVirtualInterfaceFilterArgs) ElementType

func (GetLocalGatewayVirtualInterfaceFilterArgs) ToGetLocalGatewayVirtualInterfaceFilterOutput

func (i GetLocalGatewayVirtualInterfaceFilterArgs) ToGetLocalGatewayVirtualInterfaceFilterOutput() GetLocalGatewayVirtualInterfaceFilterOutput

func (GetLocalGatewayVirtualInterfaceFilterArgs) ToGetLocalGatewayVirtualInterfaceFilterOutputWithContext

func (i GetLocalGatewayVirtualInterfaceFilterArgs) ToGetLocalGatewayVirtualInterfaceFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceFilterOutput

type GetLocalGatewayVirtualInterfaceFilterArray

type GetLocalGatewayVirtualInterfaceFilterArray []GetLocalGatewayVirtualInterfaceFilterInput

func (GetLocalGatewayVirtualInterfaceFilterArray) ElementType

func (GetLocalGatewayVirtualInterfaceFilterArray) ToGetLocalGatewayVirtualInterfaceFilterArrayOutput

func (i GetLocalGatewayVirtualInterfaceFilterArray) ToGetLocalGatewayVirtualInterfaceFilterArrayOutput() GetLocalGatewayVirtualInterfaceFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceFilterArray) ToGetLocalGatewayVirtualInterfaceFilterArrayOutputWithContext

func (i GetLocalGatewayVirtualInterfaceFilterArray) ToGetLocalGatewayVirtualInterfaceFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceFilterArrayOutput

type GetLocalGatewayVirtualInterfaceFilterArrayInput

type GetLocalGatewayVirtualInterfaceFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceFilterArrayOutput() GetLocalGatewayVirtualInterfaceFilterArrayOutput
	ToGetLocalGatewayVirtualInterfaceFilterArrayOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceFilterArrayOutput
}

GetLocalGatewayVirtualInterfaceFilterArrayInput is an input type that accepts GetLocalGatewayVirtualInterfaceFilterArray and GetLocalGatewayVirtualInterfaceFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceFilterArrayInput` via:

GetLocalGatewayVirtualInterfaceFilterArray{ GetLocalGatewayVirtualInterfaceFilterArgs{...} }

type GetLocalGatewayVirtualInterfaceFilterArrayOutput

type GetLocalGatewayVirtualInterfaceFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceFilterArrayOutput) ElementType

func (GetLocalGatewayVirtualInterfaceFilterArrayOutput) Index

func (GetLocalGatewayVirtualInterfaceFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceFilterArrayOutput

func (o GetLocalGatewayVirtualInterfaceFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceFilterArrayOutput() GetLocalGatewayVirtualInterfaceFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceFilterArrayOutputWithContext

func (o GetLocalGatewayVirtualInterfaceFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceFilterArrayOutput

type GetLocalGatewayVirtualInterfaceFilterInput

type GetLocalGatewayVirtualInterfaceFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceFilterOutput() GetLocalGatewayVirtualInterfaceFilterOutput
	ToGetLocalGatewayVirtualInterfaceFilterOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceFilterOutput
}

GetLocalGatewayVirtualInterfaceFilterInput is an input type that accepts GetLocalGatewayVirtualInterfaceFilterArgs and GetLocalGatewayVirtualInterfaceFilterOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceFilterInput` via:

GetLocalGatewayVirtualInterfaceFilterArgs{...}

type GetLocalGatewayVirtualInterfaceFilterOutput

type GetLocalGatewayVirtualInterfaceFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceFilterOutput) ElementType

func (GetLocalGatewayVirtualInterfaceFilterOutput) Name

Name of the filter.

func (GetLocalGatewayVirtualInterfaceFilterOutput) ToGetLocalGatewayVirtualInterfaceFilterOutput

func (o GetLocalGatewayVirtualInterfaceFilterOutput) ToGetLocalGatewayVirtualInterfaceFilterOutput() GetLocalGatewayVirtualInterfaceFilterOutput

func (GetLocalGatewayVirtualInterfaceFilterOutput) ToGetLocalGatewayVirtualInterfaceFilterOutputWithContext

func (o GetLocalGatewayVirtualInterfaceFilterOutput) ToGetLocalGatewayVirtualInterfaceFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceFilterOutput

func (GetLocalGatewayVirtualInterfaceFilterOutput) Values

List of one or more values for the filter.

type GetLocalGatewayVirtualInterfaceGroupArgs

type GetLocalGatewayVirtualInterfaceGroupArgs struct {
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayVirtualInterfaceGroups.html) for supported filters. Detailed below.
	Filters []GetLocalGatewayVirtualInterfaceGroupFilter `pulumi:"filters"`
	// Identifier of EC2 Local Gateway Virtual Interface Group.
	Id *string `pulumi:"id"`
	// Identifier of EC2 Local Gateway.
	LocalGatewayId *string `pulumi:"localGatewayId"`
	// Key-value map of resource tags, each pair of which must exactly match a pair on the desired local gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGatewayVirtualInterfaceGroup.

type GetLocalGatewayVirtualInterfaceGroupFilter

type GetLocalGatewayVirtualInterfaceGroupFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayVirtualInterfaceGroupFilterArgs

type GetLocalGatewayVirtualInterfaceGroupFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayVirtualInterfaceGroupFilterArgs) ElementType

func (GetLocalGatewayVirtualInterfaceGroupFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupFilterOutput

func (i GetLocalGatewayVirtualInterfaceGroupFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupFilterOutput() GetLocalGatewayVirtualInterfaceGroupFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupFilterOutputWithContext

func (i GetLocalGatewayVirtualInterfaceGroupFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupFilterOutput

type GetLocalGatewayVirtualInterfaceGroupFilterArray

type GetLocalGatewayVirtualInterfaceGroupFilterArray []GetLocalGatewayVirtualInterfaceGroupFilterInput

func (GetLocalGatewayVirtualInterfaceGroupFilterArray) ElementType

func (GetLocalGatewayVirtualInterfaceGroupFilterArray) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

func (i GetLocalGatewayVirtualInterfaceGroupFilterArray) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutput() GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceGroupFilterArray) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutputWithContext

func (i GetLocalGatewayVirtualInterfaceGroupFilterArray) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupFilterArrayInput

type GetLocalGatewayVirtualInterfaceGroupFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutput() GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput
	ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput
}

GetLocalGatewayVirtualInterfaceGroupFilterArrayInput is an input type that accepts GetLocalGatewayVirtualInterfaceGroupFilterArray and GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceGroupFilterArrayInput` via:

GetLocalGatewayVirtualInterfaceGroupFilterArray{ GetLocalGatewayVirtualInterfaceGroupFilterArgs{...} }

type GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput) ElementType

func (GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput) Index

func (GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutputWithContext

func (o GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupFilterInput

type GetLocalGatewayVirtualInterfaceGroupFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceGroupFilterOutput() GetLocalGatewayVirtualInterfaceGroupFilterOutput
	ToGetLocalGatewayVirtualInterfaceGroupFilterOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceGroupFilterOutput
}

GetLocalGatewayVirtualInterfaceGroupFilterInput is an input type that accepts GetLocalGatewayVirtualInterfaceGroupFilterArgs and GetLocalGatewayVirtualInterfaceGroupFilterOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceGroupFilterInput` via:

GetLocalGatewayVirtualInterfaceGroupFilterArgs{...}

type GetLocalGatewayVirtualInterfaceGroupFilterOutput

type GetLocalGatewayVirtualInterfaceGroupFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceGroupFilterOutput) ElementType

func (GetLocalGatewayVirtualInterfaceGroupFilterOutput) Name

Name of the filter.

func (GetLocalGatewayVirtualInterfaceGroupFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterOutput

func (o GetLocalGatewayVirtualInterfaceGroupFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterOutput() GetLocalGatewayVirtualInterfaceGroupFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterOutputWithContext

func (o GetLocalGatewayVirtualInterfaceGroupFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupFilterOutput) Values

List of one or more values for the filter.

type GetLocalGatewayVirtualInterfaceGroupResult

type GetLocalGatewayVirtualInterfaceGroupResult struct {
	Filters        []GetLocalGatewayVirtualInterfaceGroupFilter `pulumi:"filters"`
	Id             string                                       `pulumi:"id"`
	LocalGatewayId string                                       `pulumi:"localGatewayId"`
	// Set of EC2 Local Gateway Virtual Interface identifiers.
	LocalGatewayVirtualInterfaceIds []string          `pulumi:"localGatewayVirtualInterfaceIds"`
	Tags                            map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGatewayVirtualInterfaceGroup.

func GetLocalGatewayVirtualInterfaceGroup

Provides details about an EC2 Local Gateway Virtual Interface Group. More information can be found in the [Outposts User Guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#routing).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := data.Aws_ec2_local_gateway.Example.Id
		_, err := ec2.GetLocalGatewayVirtualInterfaceGroup(ctx, &ec2.GetLocalGatewayVirtualInterfaceGroupArgs{
			LocalGatewayId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetLocalGatewayVirtualInterfaceGroupsArgs

type GetLocalGatewayVirtualInterfaceGroupsArgs struct {
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGatewayVirtualInterfaceGroups.html) for supported filters. Detailed below.
	Filters []GetLocalGatewayVirtualInterfaceGroupsFilter `pulumi:"filters"`
	// Key-value map of resource tags, each pair of which must exactly match a pair on the desired local gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGatewayVirtualInterfaceGroups.

type GetLocalGatewayVirtualInterfaceGroupsFilter

type GetLocalGatewayVirtualInterfaceGroupsFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetLocalGatewayVirtualInterfaceGroupsFilterArgs

type GetLocalGatewayVirtualInterfaceGroupsFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewayVirtualInterfaceGroupsFilterArgs) ElementType

func (GetLocalGatewayVirtualInterfaceGroupsFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutput

func (i GetLocalGatewayVirtualInterfaceGroupsFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutput() GetLocalGatewayVirtualInterfaceGroupsFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupsFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutputWithContext

func (i GetLocalGatewayVirtualInterfaceGroupsFilterArgs) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterOutput

type GetLocalGatewayVirtualInterfaceGroupsFilterArray

type GetLocalGatewayVirtualInterfaceGroupsFilterArray []GetLocalGatewayVirtualInterfaceGroupsFilterInput

func (GetLocalGatewayVirtualInterfaceGroupsFilterArray) ElementType

func (GetLocalGatewayVirtualInterfaceGroupsFilterArray) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

func (i GetLocalGatewayVirtualInterfaceGroupsFilterArray) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput() GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceGroupsFilterArray) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutputWithContext

func (i GetLocalGatewayVirtualInterfaceGroupsFilterArray) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupsFilterArrayInput

type GetLocalGatewayVirtualInterfaceGroupsFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput() GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput
	ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput
}

GetLocalGatewayVirtualInterfaceGroupsFilterArrayInput is an input type that accepts GetLocalGatewayVirtualInterfaceGroupsFilterArray and GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceGroupsFilterArrayInput` via:

GetLocalGatewayVirtualInterfaceGroupsFilterArray{ GetLocalGatewayVirtualInterfaceGroupsFilterArgs{...} }

type GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput) ElementType

func (GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput) Index

func (GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

func (GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutputWithContext

func (o GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterArrayOutput

type GetLocalGatewayVirtualInterfaceGroupsFilterInput

type GetLocalGatewayVirtualInterfaceGroupsFilterInput interface {
	pulumi.Input

	ToGetLocalGatewayVirtualInterfaceGroupsFilterOutput() GetLocalGatewayVirtualInterfaceGroupsFilterOutput
	ToGetLocalGatewayVirtualInterfaceGroupsFilterOutputWithContext(context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterOutput
}

GetLocalGatewayVirtualInterfaceGroupsFilterInput is an input type that accepts GetLocalGatewayVirtualInterfaceGroupsFilterArgs and GetLocalGatewayVirtualInterfaceGroupsFilterOutput values. You can construct a concrete instance of `GetLocalGatewayVirtualInterfaceGroupsFilterInput` via:

GetLocalGatewayVirtualInterfaceGroupsFilterArgs{...}

type GetLocalGatewayVirtualInterfaceGroupsFilterOutput

type GetLocalGatewayVirtualInterfaceGroupsFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewayVirtualInterfaceGroupsFilterOutput) ElementType

func (GetLocalGatewayVirtualInterfaceGroupsFilterOutput) Name

Name of the filter.

func (GetLocalGatewayVirtualInterfaceGroupsFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutput

func (o GetLocalGatewayVirtualInterfaceGroupsFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutput() GetLocalGatewayVirtualInterfaceGroupsFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupsFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutputWithContext

func (o GetLocalGatewayVirtualInterfaceGroupsFilterOutput) ToGetLocalGatewayVirtualInterfaceGroupsFilterOutputWithContext(ctx context.Context) GetLocalGatewayVirtualInterfaceGroupsFilterOutput

func (GetLocalGatewayVirtualInterfaceGroupsFilterOutput) Values

List of one or more values for the filter.

type GetLocalGatewayVirtualInterfaceGroupsResult

type GetLocalGatewayVirtualInterfaceGroupsResult struct {
	Filters []GetLocalGatewayVirtualInterfaceGroupsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of EC2 Local Gateway Virtual Interface Group identifiers.
	Ids []string `pulumi:"ids"`
	// Set of EC2 Local Gateway Virtual Interface identifiers.
	LocalGatewayVirtualInterfaceIds []string          `pulumi:"localGatewayVirtualInterfaceIds"`
	Tags                            map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGatewayVirtualInterfaceGroups.

func GetLocalGatewayVirtualInterfaceGroups

Provides details about multiple EC2 Local Gateway Virtual Interface Groups, such as identifiers. More information can be found in the [Outposts User Guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#routing).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetLocalGatewayVirtualInterfaceGroups(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetLocalGatewayVirtualInterfaceResult

type GetLocalGatewayVirtualInterfaceResult struct {
	Filters []GetLocalGatewayVirtualInterfaceFilter `pulumi:"filters"`
	Id      string                                  `pulumi:"id"`
	// Local address.
	LocalAddress string `pulumi:"localAddress"`
	// Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the EC2 Local Gateway.
	LocalBgpAsn int `pulumi:"localBgpAsn"`
	// Identifier of the EC2 Local Gateway.
	LocalGatewayId                  string   `pulumi:"localGatewayId"`
	LocalGatewayVirtualInterfaceIds []string `pulumi:"localGatewayVirtualInterfaceIds"`
	// Peer address.
	PeerAddress string `pulumi:"peerAddress"`
	// Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the peer.
	PeerBgpAsn int               `pulumi:"peerBgpAsn"`
	Tags       map[string]string `pulumi:"tags"`
	// Virtual Local Area Network.
	Vlan int `pulumi:"vlan"`
}

A collection of values returned by getLocalGatewayVirtualInterface.

func GetLocalGatewayVirtualInterface

Provides details about an EC2 Local Gateway Virtual Interface. More information can be found in the [Outposts User Guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#routing).

type GetLocalGatewaysArgs

type GetLocalGatewaysArgs struct {
	// Custom filter block as described below.
	Filters []GetLocalGatewaysFilter `pulumi:"filters"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired local_gateways.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLocalGateways.

type GetLocalGatewaysFilter

type GetLocalGatewaysFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetLocalGatewaysFilterArgs

type GetLocalGatewaysFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Local Gateway will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetLocalGatewaysFilterArgs) ElementType

func (GetLocalGatewaysFilterArgs) ElementType() reflect.Type

func (GetLocalGatewaysFilterArgs) ToGetLocalGatewaysFilterOutput

func (i GetLocalGatewaysFilterArgs) ToGetLocalGatewaysFilterOutput() GetLocalGatewaysFilterOutput

func (GetLocalGatewaysFilterArgs) ToGetLocalGatewaysFilterOutputWithContext

func (i GetLocalGatewaysFilterArgs) ToGetLocalGatewaysFilterOutputWithContext(ctx context.Context) GetLocalGatewaysFilterOutput

type GetLocalGatewaysFilterArray

type GetLocalGatewaysFilterArray []GetLocalGatewaysFilterInput

func (GetLocalGatewaysFilterArray) ElementType

func (GetLocalGatewaysFilterArray) ToGetLocalGatewaysFilterArrayOutput

func (i GetLocalGatewaysFilterArray) ToGetLocalGatewaysFilterArrayOutput() GetLocalGatewaysFilterArrayOutput

func (GetLocalGatewaysFilterArray) ToGetLocalGatewaysFilterArrayOutputWithContext

func (i GetLocalGatewaysFilterArray) ToGetLocalGatewaysFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewaysFilterArrayOutput

type GetLocalGatewaysFilterArrayInput

type GetLocalGatewaysFilterArrayInput interface {
	pulumi.Input

	ToGetLocalGatewaysFilterArrayOutput() GetLocalGatewaysFilterArrayOutput
	ToGetLocalGatewaysFilterArrayOutputWithContext(context.Context) GetLocalGatewaysFilterArrayOutput
}

GetLocalGatewaysFilterArrayInput is an input type that accepts GetLocalGatewaysFilterArray and GetLocalGatewaysFilterArrayOutput values. You can construct a concrete instance of `GetLocalGatewaysFilterArrayInput` via:

GetLocalGatewaysFilterArray{ GetLocalGatewaysFilterArgs{...} }

type GetLocalGatewaysFilterArrayOutput

type GetLocalGatewaysFilterArrayOutput struct{ *pulumi.OutputState }

func (GetLocalGatewaysFilterArrayOutput) ElementType

func (GetLocalGatewaysFilterArrayOutput) Index

func (GetLocalGatewaysFilterArrayOutput) ToGetLocalGatewaysFilterArrayOutput

func (o GetLocalGatewaysFilterArrayOutput) ToGetLocalGatewaysFilterArrayOutput() GetLocalGatewaysFilterArrayOutput

func (GetLocalGatewaysFilterArrayOutput) ToGetLocalGatewaysFilterArrayOutputWithContext

func (o GetLocalGatewaysFilterArrayOutput) ToGetLocalGatewaysFilterArrayOutputWithContext(ctx context.Context) GetLocalGatewaysFilterArrayOutput

type GetLocalGatewaysFilterInput

type GetLocalGatewaysFilterInput interface {
	pulumi.Input

	ToGetLocalGatewaysFilterOutput() GetLocalGatewaysFilterOutput
	ToGetLocalGatewaysFilterOutputWithContext(context.Context) GetLocalGatewaysFilterOutput
}

GetLocalGatewaysFilterInput is an input type that accepts GetLocalGatewaysFilterArgs and GetLocalGatewaysFilterOutput values. You can construct a concrete instance of `GetLocalGatewaysFilterInput` via:

GetLocalGatewaysFilterArgs{...}

type GetLocalGatewaysFilterOutput

type GetLocalGatewaysFilterOutput struct{ *pulumi.OutputState }

func (GetLocalGatewaysFilterOutput) ElementType

func (GetLocalGatewaysFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLocalGateways.html).

func (GetLocalGatewaysFilterOutput) ToGetLocalGatewaysFilterOutput

func (o GetLocalGatewaysFilterOutput) ToGetLocalGatewaysFilterOutput() GetLocalGatewaysFilterOutput

func (GetLocalGatewaysFilterOutput) ToGetLocalGatewaysFilterOutputWithContext

func (o GetLocalGatewaysFilterOutput) ToGetLocalGatewaysFilterOutputWithContext(ctx context.Context) GetLocalGatewaysFilterOutput

func (GetLocalGatewaysFilterOutput) Values

Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.

type GetLocalGatewaysResult

type GetLocalGatewaysResult struct {
	Filters []GetLocalGatewaysFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of all the Local Gateway identifiers
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getLocalGateways.

func GetLocalGateways

func GetLocalGateways(ctx *pulumi.Context, args *GetLocalGatewaysArgs, opts ...pulumi.InvokeOption) (*GetLocalGatewaysResult, error)

Provides information for multiple EC2 Local Gateways, such as their identifiers.

## Example Usage

The following example retrieves Local Gateways with a resource tag of `service` set to `production`.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooLocalGateways, err := ec2.GetLocalGateways(ctx, &ec2.GetLocalGatewaysArgs{
			Tags: map[string]interface{}{
				"service": "production",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("foo", fooLocalGateways.Ids)
		return nil
	})
}

```

type GetManagedPrefixListEntry

type GetManagedPrefixListEntry struct {
	Cidr        string `pulumi:"cidr"`
	Description string `pulumi:"description"`
}

type GetManagedPrefixListEntryArgs

type GetManagedPrefixListEntryArgs struct {
	Cidr        pulumi.StringInput `pulumi:"cidr"`
	Description pulumi.StringInput `pulumi:"description"`
}

func (GetManagedPrefixListEntryArgs) ElementType

func (GetManagedPrefixListEntryArgs) ToGetManagedPrefixListEntryOutput

func (i GetManagedPrefixListEntryArgs) ToGetManagedPrefixListEntryOutput() GetManagedPrefixListEntryOutput

func (GetManagedPrefixListEntryArgs) ToGetManagedPrefixListEntryOutputWithContext

func (i GetManagedPrefixListEntryArgs) ToGetManagedPrefixListEntryOutputWithContext(ctx context.Context) GetManagedPrefixListEntryOutput

type GetManagedPrefixListEntryArray

type GetManagedPrefixListEntryArray []GetManagedPrefixListEntryInput

func (GetManagedPrefixListEntryArray) ElementType

func (GetManagedPrefixListEntryArray) ToGetManagedPrefixListEntryArrayOutput

func (i GetManagedPrefixListEntryArray) ToGetManagedPrefixListEntryArrayOutput() GetManagedPrefixListEntryArrayOutput

func (GetManagedPrefixListEntryArray) ToGetManagedPrefixListEntryArrayOutputWithContext

func (i GetManagedPrefixListEntryArray) ToGetManagedPrefixListEntryArrayOutputWithContext(ctx context.Context) GetManagedPrefixListEntryArrayOutput

type GetManagedPrefixListEntryArrayInput

type GetManagedPrefixListEntryArrayInput interface {
	pulumi.Input

	ToGetManagedPrefixListEntryArrayOutput() GetManagedPrefixListEntryArrayOutput
	ToGetManagedPrefixListEntryArrayOutputWithContext(context.Context) GetManagedPrefixListEntryArrayOutput
}

GetManagedPrefixListEntryArrayInput is an input type that accepts GetManagedPrefixListEntryArray and GetManagedPrefixListEntryArrayOutput values. You can construct a concrete instance of `GetManagedPrefixListEntryArrayInput` via:

GetManagedPrefixListEntryArray{ GetManagedPrefixListEntryArgs{...} }

type GetManagedPrefixListEntryArrayOutput

type GetManagedPrefixListEntryArrayOutput struct{ *pulumi.OutputState }

func (GetManagedPrefixListEntryArrayOutput) ElementType

func (GetManagedPrefixListEntryArrayOutput) Index

func (GetManagedPrefixListEntryArrayOutput) ToGetManagedPrefixListEntryArrayOutput

func (o GetManagedPrefixListEntryArrayOutput) ToGetManagedPrefixListEntryArrayOutput() GetManagedPrefixListEntryArrayOutput

func (GetManagedPrefixListEntryArrayOutput) ToGetManagedPrefixListEntryArrayOutputWithContext

func (o GetManagedPrefixListEntryArrayOutput) ToGetManagedPrefixListEntryArrayOutputWithContext(ctx context.Context) GetManagedPrefixListEntryArrayOutput

type GetManagedPrefixListEntryInput

type GetManagedPrefixListEntryInput interface {
	pulumi.Input

	ToGetManagedPrefixListEntryOutput() GetManagedPrefixListEntryOutput
	ToGetManagedPrefixListEntryOutputWithContext(context.Context) GetManagedPrefixListEntryOutput
}

GetManagedPrefixListEntryInput is an input type that accepts GetManagedPrefixListEntryArgs and GetManagedPrefixListEntryOutput values. You can construct a concrete instance of `GetManagedPrefixListEntryInput` via:

GetManagedPrefixListEntryArgs{...}

type GetManagedPrefixListEntryOutput

type GetManagedPrefixListEntryOutput struct{ *pulumi.OutputState }

func (GetManagedPrefixListEntryOutput) Cidr

func (GetManagedPrefixListEntryOutput) Description

func (GetManagedPrefixListEntryOutput) ElementType

func (GetManagedPrefixListEntryOutput) ToGetManagedPrefixListEntryOutput

func (o GetManagedPrefixListEntryOutput) ToGetManagedPrefixListEntryOutput() GetManagedPrefixListEntryOutput

func (GetManagedPrefixListEntryOutput) ToGetManagedPrefixListEntryOutputWithContext

func (o GetManagedPrefixListEntryOutput) ToGetManagedPrefixListEntryOutputWithContext(ctx context.Context) GetManagedPrefixListEntryOutput

type GetManagedPrefixListFilter

type GetManagedPrefixListFilter struct {
	// The name of the filter field. Valid values can be found in the EC2 [DescribeManagedPrefixLists](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeManagedPrefixLists.html) API Reference.
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetManagedPrefixListFilterArgs

type GetManagedPrefixListFilterArgs struct {
	// The name of the filter field. Valid values can be found in the EC2 [DescribeManagedPrefixLists](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeManagedPrefixLists.html) API Reference.
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetManagedPrefixListFilterArgs) ElementType

func (GetManagedPrefixListFilterArgs) ToGetManagedPrefixListFilterOutput

func (i GetManagedPrefixListFilterArgs) ToGetManagedPrefixListFilterOutput() GetManagedPrefixListFilterOutput

func (GetManagedPrefixListFilterArgs) ToGetManagedPrefixListFilterOutputWithContext

func (i GetManagedPrefixListFilterArgs) ToGetManagedPrefixListFilterOutputWithContext(ctx context.Context) GetManagedPrefixListFilterOutput

type GetManagedPrefixListFilterArray

type GetManagedPrefixListFilterArray []GetManagedPrefixListFilterInput

func (GetManagedPrefixListFilterArray) ElementType

func (GetManagedPrefixListFilterArray) ToGetManagedPrefixListFilterArrayOutput

func (i GetManagedPrefixListFilterArray) ToGetManagedPrefixListFilterArrayOutput() GetManagedPrefixListFilterArrayOutput

func (GetManagedPrefixListFilterArray) ToGetManagedPrefixListFilterArrayOutputWithContext

func (i GetManagedPrefixListFilterArray) ToGetManagedPrefixListFilterArrayOutputWithContext(ctx context.Context) GetManagedPrefixListFilterArrayOutput

type GetManagedPrefixListFilterArrayInput

type GetManagedPrefixListFilterArrayInput interface {
	pulumi.Input

	ToGetManagedPrefixListFilterArrayOutput() GetManagedPrefixListFilterArrayOutput
	ToGetManagedPrefixListFilterArrayOutputWithContext(context.Context) GetManagedPrefixListFilterArrayOutput
}

GetManagedPrefixListFilterArrayInput is an input type that accepts GetManagedPrefixListFilterArray and GetManagedPrefixListFilterArrayOutput values. You can construct a concrete instance of `GetManagedPrefixListFilterArrayInput` via:

GetManagedPrefixListFilterArray{ GetManagedPrefixListFilterArgs{...} }

type GetManagedPrefixListFilterArrayOutput

type GetManagedPrefixListFilterArrayOutput struct{ *pulumi.OutputState }

func (GetManagedPrefixListFilterArrayOutput) ElementType

func (GetManagedPrefixListFilterArrayOutput) Index

func (GetManagedPrefixListFilterArrayOutput) ToGetManagedPrefixListFilterArrayOutput

func (o GetManagedPrefixListFilterArrayOutput) ToGetManagedPrefixListFilterArrayOutput() GetManagedPrefixListFilterArrayOutput

func (GetManagedPrefixListFilterArrayOutput) ToGetManagedPrefixListFilterArrayOutputWithContext

func (o GetManagedPrefixListFilterArrayOutput) ToGetManagedPrefixListFilterArrayOutputWithContext(ctx context.Context) GetManagedPrefixListFilterArrayOutput

type GetManagedPrefixListFilterInput

type GetManagedPrefixListFilterInput interface {
	pulumi.Input

	ToGetManagedPrefixListFilterOutput() GetManagedPrefixListFilterOutput
	ToGetManagedPrefixListFilterOutputWithContext(context.Context) GetManagedPrefixListFilterOutput
}

GetManagedPrefixListFilterInput is an input type that accepts GetManagedPrefixListFilterArgs and GetManagedPrefixListFilterOutput values. You can construct a concrete instance of `GetManagedPrefixListFilterInput` via:

GetManagedPrefixListFilterArgs{...}

type GetManagedPrefixListFilterOutput

type GetManagedPrefixListFilterOutput struct{ *pulumi.OutputState }

func (GetManagedPrefixListFilterOutput) ElementType

func (GetManagedPrefixListFilterOutput) Name

The name of the filter field. Valid values can be found in the EC2 [DescribeManagedPrefixLists](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeManagedPrefixLists.html) API Reference.

func (GetManagedPrefixListFilterOutput) ToGetManagedPrefixListFilterOutput

func (o GetManagedPrefixListFilterOutput) ToGetManagedPrefixListFilterOutput() GetManagedPrefixListFilterOutput

func (GetManagedPrefixListFilterOutput) ToGetManagedPrefixListFilterOutputWithContext

func (o GetManagedPrefixListFilterOutput) ToGetManagedPrefixListFilterOutputWithContext(ctx context.Context) GetManagedPrefixListFilterOutput

func (GetManagedPrefixListFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetNatGatewayFilter

type GetNatGatewayFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNatGateways.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An Nat Gateway will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetNatGatewayFilterArgs

type GetNatGatewayFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNatGateways.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An Nat Gateway will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetNatGatewayFilterArgs) ElementType

func (GetNatGatewayFilterArgs) ElementType() reflect.Type

func (GetNatGatewayFilterArgs) ToGetNatGatewayFilterOutput

func (i GetNatGatewayFilterArgs) ToGetNatGatewayFilterOutput() GetNatGatewayFilterOutput

func (GetNatGatewayFilterArgs) ToGetNatGatewayFilterOutputWithContext

func (i GetNatGatewayFilterArgs) ToGetNatGatewayFilterOutputWithContext(ctx context.Context) GetNatGatewayFilterOutput

type GetNatGatewayFilterArray

type GetNatGatewayFilterArray []GetNatGatewayFilterInput

func (GetNatGatewayFilterArray) ElementType

func (GetNatGatewayFilterArray) ElementType() reflect.Type

func (GetNatGatewayFilterArray) ToGetNatGatewayFilterArrayOutput

func (i GetNatGatewayFilterArray) ToGetNatGatewayFilterArrayOutput() GetNatGatewayFilterArrayOutput

func (GetNatGatewayFilterArray) ToGetNatGatewayFilterArrayOutputWithContext

func (i GetNatGatewayFilterArray) ToGetNatGatewayFilterArrayOutputWithContext(ctx context.Context) GetNatGatewayFilterArrayOutput

type GetNatGatewayFilterArrayInput

type GetNatGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetNatGatewayFilterArrayOutput() GetNatGatewayFilterArrayOutput
	ToGetNatGatewayFilterArrayOutputWithContext(context.Context) GetNatGatewayFilterArrayOutput
}

GetNatGatewayFilterArrayInput is an input type that accepts GetNatGatewayFilterArray and GetNatGatewayFilterArrayOutput values. You can construct a concrete instance of `GetNatGatewayFilterArrayInput` via:

GetNatGatewayFilterArray{ GetNatGatewayFilterArgs{...} }

type GetNatGatewayFilterArrayOutput

type GetNatGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetNatGatewayFilterArrayOutput) ElementType

func (GetNatGatewayFilterArrayOutput) Index

func (GetNatGatewayFilterArrayOutput) ToGetNatGatewayFilterArrayOutput

func (o GetNatGatewayFilterArrayOutput) ToGetNatGatewayFilterArrayOutput() GetNatGatewayFilterArrayOutput

func (GetNatGatewayFilterArrayOutput) ToGetNatGatewayFilterArrayOutputWithContext

func (o GetNatGatewayFilterArrayOutput) ToGetNatGatewayFilterArrayOutputWithContext(ctx context.Context) GetNatGatewayFilterArrayOutput

type GetNatGatewayFilterInput

type GetNatGatewayFilterInput interface {
	pulumi.Input

	ToGetNatGatewayFilterOutput() GetNatGatewayFilterOutput
	ToGetNatGatewayFilterOutputWithContext(context.Context) GetNatGatewayFilterOutput
}

GetNatGatewayFilterInput is an input type that accepts GetNatGatewayFilterArgs and GetNatGatewayFilterOutput values. You can construct a concrete instance of `GetNatGatewayFilterInput` via:

GetNatGatewayFilterArgs{...}

type GetNatGatewayFilterOutput

type GetNatGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetNatGatewayFilterOutput) ElementType

func (GetNatGatewayFilterOutput) ElementType() reflect.Type

func (GetNatGatewayFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNatGateways.html).

func (GetNatGatewayFilterOutput) ToGetNatGatewayFilterOutput

func (o GetNatGatewayFilterOutput) ToGetNatGatewayFilterOutput() GetNatGatewayFilterOutput

func (GetNatGatewayFilterOutput) ToGetNatGatewayFilterOutputWithContext

func (o GetNatGatewayFilterOutput) ToGetNatGatewayFilterOutputWithContext(ctx context.Context) GetNatGatewayFilterOutput

func (GetNatGatewayFilterOutput) Values

Set of values that are accepted for the given field. An Nat Gateway will be selected if any one of the given values matches.

type GetNetworkAclsArgs

type GetNetworkAclsArgs struct {
	// Custom filter block as described below.
	Filters []GetNetworkAclsFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired network ACLs.
	Tags map[string]string `pulumi:"tags"`
	// The VPC ID that you want to filter from.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getNetworkAcls.

type GetNetworkAclsFilter

type GetNetworkAclsFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkAcls.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetNetworkAclsFilterArgs

type GetNetworkAclsFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkAcls.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetNetworkAclsFilterArgs) ElementType

func (GetNetworkAclsFilterArgs) ElementType() reflect.Type

func (GetNetworkAclsFilterArgs) ToGetNetworkAclsFilterOutput

func (i GetNetworkAclsFilterArgs) ToGetNetworkAclsFilterOutput() GetNetworkAclsFilterOutput

func (GetNetworkAclsFilterArgs) ToGetNetworkAclsFilterOutputWithContext

func (i GetNetworkAclsFilterArgs) ToGetNetworkAclsFilterOutputWithContext(ctx context.Context) GetNetworkAclsFilterOutput

type GetNetworkAclsFilterArray

type GetNetworkAclsFilterArray []GetNetworkAclsFilterInput

func (GetNetworkAclsFilterArray) ElementType

func (GetNetworkAclsFilterArray) ElementType() reflect.Type

func (GetNetworkAclsFilterArray) ToGetNetworkAclsFilterArrayOutput

func (i GetNetworkAclsFilterArray) ToGetNetworkAclsFilterArrayOutput() GetNetworkAclsFilterArrayOutput

func (GetNetworkAclsFilterArray) ToGetNetworkAclsFilterArrayOutputWithContext

func (i GetNetworkAclsFilterArray) ToGetNetworkAclsFilterArrayOutputWithContext(ctx context.Context) GetNetworkAclsFilterArrayOutput

type GetNetworkAclsFilterArrayInput

type GetNetworkAclsFilterArrayInput interface {
	pulumi.Input

	ToGetNetworkAclsFilterArrayOutput() GetNetworkAclsFilterArrayOutput
	ToGetNetworkAclsFilterArrayOutputWithContext(context.Context) GetNetworkAclsFilterArrayOutput
}

GetNetworkAclsFilterArrayInput is an input type that accepts GetNetworkAclsFilterArray and GetNetworkAclsFilterArrayOutput values. You can construct a concrete instance of `GetNetworkAclsFilterArrayInput` via:

GetNetworkAclsFilterArray{ GetNetworkAclsFilterArgs{...} }

type GetNetworkAclsFilterArrayOutput

type GetNetworkAclsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkAclsFilterArrayOutput) ElementType

func (GetNetworkAclsFilterArrayOutput) Index

func (GetNetworkAclsFilterArrayOutput) ToGetNetworkAclsFilterArrayOutput

func (o GetNetworkAclsFilterArrayOutput) ToGetNetworkAclsFilterArrayOutput() GetNetworkAclsFilterArrayOutput

func (GetNetworkAclsFilterArrayOutput) ToGetNetworkAclsFilterArrayOutputWithContext

func (o GetNetworkAclsFilterArrayOutput) ToGetNetworkAclsFilterArrayOutputWithContext(ctx context.Context) GetNetworkAclsFilterArrayOutput

type GetNetworkAclsFilterInput

type GetNetworkAclsFilterInput interface {
	pulumi.Input

	ToGetNetworkAclsFilterOutput() GetNetworkAclsFilterOutput
	ToGetNetworkAclsFilterOutputWithContext(context.Context) GetNetworkAclsFilterOutput
}

GetNetworkAclsFilterInput is an input type that accepts GetNetworkAclsFilterArgs and GetNetworkAclsFilterOutput values. You can construct a concrete instance of `GetNetworkAclsFilterInput` via:

GetNetworkAclsFilterArgs{...}

type GetNetworkAclsFilterOutput

type GetNetworkAclsFilterOutput struct{ *pulumi.OutputState }

func (GetNetworkAclsFilterOutput) ElementType

func (GetNetworkAclsFilterOutput) ElementType() reflect.Type

func (GetNetworkAclsFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkAcls.html).

func (GetNetworkAclsFilterOutput) ToGetNetworkAclsFilterOutput

func (o GetNetworkAclsFilterOutput) ToGetNetworkAclsFilterOutput() GetNetworkAclsFilterOutput

func (GetNetworkAclsFilterOutput) ToGetNetworkAclsFilterOutputWithContext

func (o GetNetworkAclsFilterOutput) ToGetNetworkAclsFilterOutputWithContext(ctx context.Context) GetNetworkAclsFilterOutput

func (GetNetworkAclsFilterOutput) Values

Set of values that are accepted for the given field. A VPC will be selected if any one of the given values matches.

type GetNetworkAclsResult

type GetNetworkAclsResult struct {
	Filters []GetNetworkAclsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of all the network ACL ids found. This data source will fail if none are found.
	Ids   []string          `pulumi:"ids"`
	Tags  map[string]string `pulumi:"tags"`
	VpcId *string           `pulumi:"vpcId"`
}

A collection of values returned by getNetworkAcls.

func GetNetworkAcls

func GetNetworkAcls(ctx *pulumi.Context, args *GetNetworkAclsArgs, opts ...pulumi.InvokeOption) (*GetNetworkAclsResult, error)

type GetNetworkInterfaceAssociation

type GetNetworkInterfaceAssociation struct {
	// The allocation ID.
	AllocationId string `pulumi:"allocationId"`
	// The association ID.
	AssociationId string `pulumi:"associationId"`
	// The carrier IP address associated with the network interface. This attribute is only set when the network interface is in a subnet which is associated with a Wavelength Zone.
	CarrierIp string `pulumi:"carrierIp"`
	// The customer-owned IP address.
	CustomerOwnedIp string `pulumi:"customerOwnedIp"`
	// The ID of the Elastic IP address owner.
	IpOwnerId string `pulumi:"ipOwnerId"`
	// The public DNS name.
	PublicDnsName string `pulumi:"publicDnsName"`
	// The address of the Elastic IP address bound to the network interface.
	PublicIp string `pulumi:"publicIp"`
}

type GetNetworkInterfaceAssociationArgs

type GetNetworkInterfaceAssociationArgs struct {
	// The allocation ID.
	AllocationId pulumi.StringInput `pulumi:"allocationId"`
	// The association ID.
	AssociationId pulumi.StringInput `pulumi:"associationId"`
	// The carrier IP address associated with the network interface. This attribute is only set when the network interface is in a subnet which is associated with a Wavelength Zone.
	CarrierIp pulumi.StringInput `pulumi:"carrierIp"`
	// The customer-owned IP address.
	CustomerOwnedIp pulumi.StringInput `pulumi:"customerOwnedIp"`
	// The ID of the Elastic IP address owner.
	IpOwnerId pulumi.StringInput `pulumi:"ipOwnerId"`
	// The public DNS name.
	PublicDnsName pulumi.StringInput `pulumi:"publicDnsName"`
	// The address of the Elastic IP address bound to the network interface.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
}

func (GetNetworkInterfaceAssociationArgs) ElementType

func (GetNetworkInterfaceAssociationArgs) ToGetNetworkInterfaceAssociationOutput

func (i GetNetworkInterfaceAssociationArgs) ToGetNetworkInterfaceAssociationOutput() GetNetworkInterfaceAssociationOutput

func (GetNetworkInterfaceAssociationArgs) ToGetNetworkInterfaceAssociationOutputWithContext

func (i GetNetworkInterfaceAssociationArgs) ToGetNetworkInterfaceAssociationOutputWithContext(ctx context.Context) GetNetworkInterfaceAssociationOutput

type GetNetworkInterfaceAssociationArray

type GetNetworkInterfaceAssociationArray []GetNetworkInterfaceAssociationInput

func (GetNetworkInterfaceAssociationArray) ElementType

func (GetNetworkInterfaceAssociationArray) ToGetNetworkInterfaceAssociationArrayOutput

func (i GetNetworkInterfaceAssociationArray) ToGetNetworkInterfaceAssociationArrayOutput() GetNetworkInterfaceAssociationArrayOutput

func (GetNetworkInterfaceAssociationArray) ToGetNetworkInterfaceAssociationArrayOutputWithContext

func (i GetNetworkInterfaceAssociationArray) ToGetNetworkInterfaceAssociationArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceAssociationArrayOutput

type GetNetworkInterfaceAssociationArrayInput

type GetNetworkInterfaceAssociationArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfaceAssociationArrayOutput() GetNetworkInterfaceAssociationArrayOutput
	ToGetNetworkInterfaceAssociationArrayOutputWithContext(context.Context) GetNetworkInterfaceAssociationArrayOutput
}

GetNetworkInterfaceAssociationArrayInput is an input type that accepts GetNetworkInterfaceAssociationArray and GetNetworkInterfaceAssociationArrayOutput values. You can construct a concrete instance of `GetNetworkInterfaceAssociationArrayInput` via:

GetNetworkInterfaceAssociationArray{ GetNetworkInterfaceAssociationArgs{...} }

type GetNetworkInterfaceAssociationArrayOutput

type GetNetworkInterfaceAssociationArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceAssociationArrayOutput) ElementType

func (GetNetworkInterfaceAssociationArrayOutput) Index

func (GetNetworkInterfaceAssociationArrayOutput) ToGetNetworkInterfaceAssociationArrayOutput

func (o GetNetworkInterfaceAssociationArrayOutput) ToGetNetworkInterfaceAssociationArrayOutput() GetNetworkInterfaceAssociationArrayOutput

func (GetNetworkInterfaceAssociationArrayOutput) ToGetNetworkInterfaceAssociationArrayOutputWithContext

func (o GetNetworkInterfaceAssociationArrayOutput) ToGetNetworkInterfaceAssociationArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceAssociationArrayOutput

type GetNetworkInterfaceAssociationInput

type GetNetworkInterfaceAssociationInput interface {
	pulumi.Input

	ToGetNetworkInterfaceAssociationOutput() GetNetworkInterfaceAssociationOutput
	ToGetNetworkInterfaceAssociationOutputWithContext(context.Context) GetNetworkInterfaceAssociationOutput
}

GetNetworkInterfaceAssociationInput is an input type that accepts GetNetworkInterfaceAssociationArgs and GetNetworkInterfaceAssociationOutput values. You can construct a concrete instance of `GetNetworkInterfaceAssociationInput` via:

GetNetworkInterfaceAssociationArgs{...}

type GetNetworkInterfaceAssociationOutput

type GetNetworkInterfaceAssociationOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceAssociationOutput) AllocationId

The allocation ID.

func (GetNetworkInterfaceAssociationOutput) AssociationId

The association ID.

func (GetNetworkInterfaceAssociationOutput) CarrierIp

The carrier IP address associated with the network interface. This attribute is only set when the network interface is in a subnet which is associated with a Wavelength Zone.

func (GetNetworkInterfaceAssociationOutput) CustomerOwnedIp

The customer-owned IP address.

func (GetNetworkInterfaceAssociationOutput) ElementType

func (GetNetworkInterfaceAssociationOutput) IpOwnerId

The ID of the Elastic IP address owner.

func (GetNetworkInterfaceAssociationOutput) PublicDnsName

The public DNS name.

func (GetNetworkInterfaceAssociationOutput) PublicIp

The address of the Elastic IP address bound to the network interface.

func (GetNetworkInterfaceAssociationOutput) ToGetNetworkInterfaceAssociationOutput

func (o GetNetworkInterfaceAssociationOutput) ToGetNetworkInterfaceAssociationOutput() GetNetworkInterfaceAssociationOutput

func (GetNetworkInterfaceAssociationOutput) ToGetNetworkInterfaceAssociationOutputWithContext

func (o GetNetworkInterfaceAssociationOutput) ToGetNetworkInterfaceAssociationOutputWithContext(ctx context.Context) GetNetworkInterfaceAssociationOutput

type GetNetworkInterfaceAttachmentType

type GetNetworkInterfaceAttachmentType struct {
	AttachmentId    string `pulumi:"attachmentId"`
	DeviceIndex     int    `pulumi:"deviceIndex"`
	InstanceId      string `pulumi:"instanceId"`
	InstanceOwnerId string `pulumi:"instanceOwnerId"`
}

type GetNetworkInterfaceAttachmentTypeArgs

type GetNetworkInterfaceAttachmentTypeArgs struct {
	AttachmentId    pulumi.StringInput `pulumi:"attachmentId"`
	DeviceIndex     pulumi.IntInput    `pulumi:"deviceIndex"`
	InstanceId      pulumi.StringInput `pulumi:"instanceId"`
	InstanceOwnerId pulumi.StringInput `pulumi:"instanceOwnerId"`
}

func (GetNetworkInterfaceAttachmentTypeArgs) ElementType

func (GetNetworkInterfaceAttachmentTypeArgs) ToGetNetworkInterfaceAttachmentTypeOutput

func (i GetNetworkInterfaceAttachmentTypeArgs) ToGetNetworkInterfaceAttachmentTypeOutput() GetNetworkInterfaceAttachmentTypeOutput

func (GetNetworkInterfaceAttachmentTypeArgs) ToGetNetworkInterfaceAttachmentTypeOutputWithContext

func (i GetNetworkInterfaceAttachmentTypeArgs) ToGetNetworkInterfaceAttachmentTypeOutputWithContext(ctx context.Context) GetNetworkInterfaceAttachmentTypeOutput

type GetNetworkInterfaceAttachmentTypeArray

type GetNetworkInterfaceAttachmentTypeArray []GetNetworkInterfaceAttachmentTypeInput

func (GetNetworkInterfaceAttachmentTypeArray) ElementType

func (GetNetworkInterfaceAttachmentTypeArray) ToGetNetworkInterfaceAttachmentTypeArrayOutput

func (i GetNetworkInterfaceAttachmentTypeArray) ToGetNetworkInterfaceAttachmentTypeArrayOutput() GetNetworkInterfaceAttachmentTypeArrayOutput

func (GetNetworkInterfaceAttachmentTypeArray) ToGetNetworkInterfaceAttachmentTypeArrayOutputWithContext

func (i GetNetworkInterfaceAttachmentTypeArray) ToGetNetworkInterfaceAttachmentTypeArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceAttachmentTypeArrayOutput

type GetNetworkInterfaceAttachmentTypeArrayInput

type GetNetworkInterfaceAttachmentTypeArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfaceAttachmentTypeArrayOutput() GetNetworkInterfaceAttachmentTypeArrayOutput
	ToGetNetworkInterfaceAttachmentTypeArrayOutputWithContext(context.Context) GetNetworkInterfaceAttachmentTypeArrayOutput
}

GetNetworkInterfaceAttachmentTypeArrayInput is an input type that accepts GetNetworkInterfaceAttachmentTypeArray and GetNetworkInterfaceAttachmentTypeArrayOutput values. You can construct a concrete instance of `GetNetworkInterfaceAttachmentTypeArrayInput` via:

GetNetworkInterfaceAttachmentTypeArray{ GetNetworkInterfaceAttachmentTypeArgs{...} }

type GetNetworkInterfaceAttachmentTypeArrayOutput

type GetNetworkInterfaceAttachmentTypeArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceAttachmentTypeArrayOutput) ElementType

func (GetNetworkInterfaceAttachmentTypeArrayOutput) Index

func (GetNetworkInterfaceAttachmentTypeArrayOutput) ToGetNetworkInterfaceAttachmentTypeArrayOutput

func (o GetNetworkInterfaceAttachmentTypeArrayOutput) ToGetNetworkInterfaceAttachmentTypeArrayOutput() GetNetworkInterfaceAttachmentTypeArrayOutput

func (GetNetworkInterfaceAttachmentTypeArrayOutput) ToGetNetworkInterfaceAttachmentTypeArrayOutputWithContext

func (o GetNetworkInterfaceAttachmentTypeArrayOutput) ToGetNetworkInterfaceAttachmentTypeArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceAttachmentTypeArrayOutput

type GetNetworkInterfaceAttachmentTypeInput

type GetNetworkInterfaceAttachmentTypeInput interface {
	pulumi.Input

	ToGetNetworkInterfaceAttachmentTypeOutput() GetNetworkInterfaceAttachmentTypeOutput
	ToGetNetworkInterfaceAttachmentTypeOutputWithContext(context.Context) GetNetworkInterfaceAttachmentTypeOutput
}

GetNetworkInterfaceAttachmentTypeInput is an input type that accepts GetNetworkInterfaceAttachmentTypeArgs and GetNetworkInterfaceAttachmentTypeOutput values. You can construct a concrete instance of `GetNetworkInterfaceAttachmentTypeInput` via:

GetNetworkInterfaceAttachmentTypeArgs{...}

type GetNetworkInterfaceAttachmentTypeOutput

type GetNetworkInterfaceAttachmentTypeOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceAttachmentTypeOutput) AttachmentId

func (GetNetworkInterfaceAttachmentTypeOutput) DeviceIndex

func (GetNetworkInterfaceAttachmentTypeOutput) ElementType

func (GetNetworkInterfaceAttachmentTypeOutput) InstanceId

func (GetNetworkInterfaceAttachmentTypeOutput) InstanceOwnerId

func (GetNetworkInterfaceAttachmentTypeOutput) ToGetNetworkInterfaceAttachmentTypeOutput

func (o GetNetworkInterfaceAttachmentTypeOutput) ToGetNetworkInterfaceAttachmentTypeOutput() GetNetworkInterfaceAttachmentTypeOutput

func (GetNetworkInterfaceAttachmentTypeOutput) ToGetNetworkInterfaceAttachmentTypeOutputWithContext

func (o GetNetworkInterfaceAttachmentTypeOutput) ToGetNetworkInterfaceAttachmentTypeOutputWithContext(ctx context.Context) GetNetworkInterfaceAttachmentTypeOutput

type GetNetworkInterfaceFilter

type GetNetworkInterfaceFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetNetworkInterfaceFilterArgs

type GetNetworkInterfaceFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetNetworkInterfaceFilterArgs) ElementType

func (GetNetworkInterfaceFilterArgs) ToGetNetworkInterfaceFilterOutput

func (i GetNetworkInterfaceFilterArgs) ToGetNetworkInterfaceFilterOutput() GetNetworkInterfaceFilterOutput

func (GetNetworkInterfaceFilterArgs) ToGetNetworkInterfaceFilterOutputWithContext

func (i GetNetworkInterfaceFilterArgs) ToGetNetworkInterfaceFilterOutputWithContext(ctx context.Context) GetNetworkInterfaceFilterOutput

type GetNetworkInterfaceFilterArray

type GetNetworkInterfaceFilterArray []GetNetworkInterfaceFilterInput

func (GetNetworkInterfaceFilterArray) ElementType

func (GetNetworkInterfaceFilterArray) ToGetNetworkInterfaceFilterArrayOutput

func (i GetNetworkInterfaceFilterArray) ToGetNetworkInterfaceFilterArrayOutput() GetNetworkInterfaceFilterArrayOutput

func (GetNetworkInterfaceFilterArray) ToGetNetworkInterfaceFilterArrayOutputWithContext

func (i GetNetworkInterfaceFilterArray) ToGetNetworkInterfaceFilterArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceFilterArrayOutput

type GetNetworkInterfaceFilterArrayInput

type GetNetworkInterfaceFilterArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfaceFilterArrayOutput() GetNetworkInterfaceFilterArrayOutput
	ToGetNetworkInterfaceFilterArrayOutputWithContext(context.Context) GetNetworkInterfaceFilterArrayOutput
}

GetNetworkInterfaceFilterArrayInput is an input type that accepts GetNetworkInterfaceFilterArray and GetNetworkInterfaceFilterArrayOutput values. You can construct a concrete instance of `GetNetworkInterfaceFilterArrayInput` via:

GetNetworkInterfaceFilterArray{ GetNetworkInterfaceFilterArgs{...} }

type GetNetworkInterfaceFilterArrayOutput

type GetNetworkInterfaceFilterArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceFilterArrayOutput) ElementType

func (GetNetworkInterfaceFilterArrayOutput) Index

func (GetNetworkInterfaceFilterArrayOutput) ToGetNetworkInterfaceFilterArrayOutput

func (o GetNetworkInterfaceFilterArrayOutput) ToGetNetworkInterfaceFilterArrayOutput() GetNetworkInterfaceFilterArrayOutput

func (GetNetworkInterfaceFilterArrayOutput) ToGetNetworkInterfaceFilterArrayOutputWithContext

func (o GetNetworkInterfaceFilterArrayOutput) ToGetNetworkInterfaceFilterArrayOutputWithContext(ctx context.Context) GetNetworkInterfaceFilterArrayOutput

type GetNetworkInterfaceFilterInput

type GetNetworkInterfaceFilterInput interface {
	pulumi.Input

	ToGetNetworkInterfaceFilterOutput() GetNetworkInterfaceFilterOutput
	ToGetNetworkInterfaceFilterOutputWithContext(context.Context) GetNetworkInterfaceFilterOutput
}

GetNetworkInterfaceFilterInput is an input type that accepts GetNetworkInterfaceFilterArgs and GetNetworkInterfaceFilterOutput values. You can construct a concrete instance of `GetNetworkInterfaceFilterInput` via:

GetNetworkInterfaceFilterArgs{...}

type GetNetworkInterfaceFilterOutput

type GetNetworkInterfaceFilterOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfaceFilterOutput) ElementType

func (GetNetworkInterfaceFilterOutput) Name

func (GetNetworkInterfaceFilterOutput) ToGetNetworkInterfaceFilterOutput

func (o GetNetworkInterfaceFilterOutput) ToGetNetworkInterfaceFilterOutput() GetNetworkInterfaceFilterOutput

func (GetNetworkInterfaceFilterOutput) ToGetNetworkInterfaceFilterOutputWithContext

func (o GetNetworkInterfaceFilterOutput) ToGetNetworkInterfaceFilterOutputWithContext(ctx context.Context) GetNetworkInterfaceFilterOutput

func (GetNetworkInterfaceFilterOutput) Values

type GetNetworkInterfacesArgs

type GetNetworkInterfacesArgs struct {
	// Custom filter block as described below.
	Filters []GetNetworkInterfacesFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired network interfaces.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getNetworkInterfaces.

type GetNetworkInterfacesFilter

type GetNetworkInterfacesFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkInterfaces.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	Values []string `pulumi:"values"`
}

type GetNetworkInterfacesFilterArgs

type GetNetworkInterfacesFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkInterfaces.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetNetworkInterfacesFilterArgs) ElementType

func (GetNetworkInterfacesFilterArgs) ToGetNetworkInterfacesFilterOutput

func (i GetNetworkInterfacesFilterArgs) ToGetNetworkInterfacesFilterOutput() GetNetworkInterfacesFilterOutput

func (GetNetworkInterfacesFilterArgs) ToGetNetworkInterfacesFilterOutputWithContext

func (i GetNetworkInterfacesFilterArgs) ToGetNetworkInterfacesFilterOutputWithContext(ctx context.Context) GetNetworkInterfacesFilterOutput

type GetNetworkInterfacesFilterArray

type GetNetworkInterfacesFilterArray []GetNetworkInterfacesFilterInput

func (GetNetworkInterfacesFilterArray) ElementType

func (GetNetworkInterfacesFilterArray) ToGetNetworkInterfacesFilterArrayOutput

func (i GetNetworkInterfacesFilterArray) ToGetNetworkInterfacesFilterArrayOutput() GetNetworkInterfacesFilterArrayOutput

func (GetNetworkInterfacesFilterArray) ToGetNetworkInterfacesFilterArrayOutputWithContext

func (i GetNetworkInterfacesFilterArray) ToGetNetworkInterfacesFilterArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesFilterArrayOutput

type GetNetworkInterfacesFilterArrayInput

type GetNetworkInterfacesFilterArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfacesFilterArrayOutput() GetNetworkInterfacesFilterArrayOutput
	ToGetNetworkInterfacesFilterArrayOutputWithContext(context.Context) GetNetworkInterfacesFilterArrayOutput
}

GetNetworkInterfacesFilterArrayInput is an input type that accepts GetNetworkInterfacesFilterArray and GetNetworkInterfacesFilterArrayOutput values. You can construct a concrete instance of `GetNetworkInterfacesFilterArrayInput` via:

GetNetworkInterfacesFilterArray{ GetNetworkInterfacesFilterArgs{...} }

type GetNetworkInterfacesFilterArrayOutput

type GetNetworkInterfacesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesFilterArrayOutput) ElementType

func (GetNetworkInterfacesFilterArrayOutput) Index

func (GetNetworkInterfacesFilterArrayOutput) ToGetNetworkInterfacesFilterArrayOutput

func (o GetNetworkInterfacesFilterArrayOutput) ToGetNetworkInterfacesFilterArrayOutput() GetNetworkInterfacesFilterArrayOutput

func (GetNetworkInterfacesFilterArrayOutput) ToGetNetworkInterfacesFilterArrayOutputWithContext

func (o GetNetworkInterfacesFilterArrayOutput) ToGetNetworkInterfacesFilterArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesFilterArrayOutput

type GetNetworkInterfacesFilterInput

type GetNetworkInterfacesFilterInput interface {
	pulumi.Input

	ToGetNetworkInterfacesFilterOutput() GetNetworkInterfacesFilterOutput
	ToGetNetworkInterfacesFilterOutputWithContext(context.Context) GetNetworkInterfacesFilterOutput
}

GetNetworkInterfacesFilterInput is an input type that accepts GetNetworkInterfacesFilterArgs and GetNetworkInterfacesFilterOutput values. You can construct a concrete instance of `GetNetworkInterfacesFilterInput` via:

GetNetworkInterfacesFilterArgs{...}

type GetNetworkInterfacesFilterOutput

type GetNetworkInterfacesFilterOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesFilterOutput) ElementType

func (GetNetworkInterfacesFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkInterfaces.html).

func (GetNetworkInterfacesFilterOutput) ToGetNetworkInterfacesFilterOutput

func (o GetNetworkInterfacesFilterOutput) ToGetNetworkInterfacesFilterOutput() GetNetworkInterfacesFilterOutput

func (GetNetworkInterfacesFilterOutput) ToGetNetworkInterfacesFilterOutputWithContext

func (o GetNetworkInterfacesFilterOutput) ToGetNetworkInterfacesFilterOutputWithContext(ctx context.Context) GetNetworkInterfacesFilterOutput

func (GetNetworkInterfacesFilterOutput) Values

Set of values that are accepted for the given field.

type GetNetworkInterfacesResult

type GetNetworkInterfacesResult struct {
	Filters []GetNetworkInterfacesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of all the network interface ids found. This data source will fail if none are found.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getNetworkInterfaces.

type GetPrefixListArgs

type GetPrefixListArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetPrefixListFilter `pulumi:"filters"`
	// The name of the filter field. Valid values can be found in the [EC2 DescribePrefixLists API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribePrefixLists.html).
	Name *string `pulumi:"name"`
	// The ID of the prefix list to select.
	PrefixListId *string `pulumi:"prefixListId"`
}

A collection of arguments for invoking getPrefixList.

type GetPrefixListFilter

type GetPrefixListFilter struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribePrefixLists API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribePrefixLists.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetPrefixListFilterArgs

type GetPrefixListFilterArgs struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribePrefixLists API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribePrefixLists.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetPrefixListFilterArgs) ElementType

func (GetPrefixListFilterArgs) ElementType() reflect.Type

func (GetPrefixListFilterArgs) ToGetPrefixListFilterOutput

func (i GetPrefixListFilterArgs) ToGetPrefixListFilterOutput() GetPrefixListFilterOutput

func (GetPrefixListFilterArgs) ToGetPrefixListFilterOutputWithContext

func (i GetPrefixListFilterArgs) ToGetPrefixListFilterOutputWithContext(ctx context.Context) GetPrefixListFilterOutput

type GetPrefixListFilterArray

type GetPrefixListFilterArray []GetPrefixListFilterInput

func (GetPrefixListFilterArray) ElementType

func (GetPrefixListFilterArray) ElementType() reflect.Type

func (GetPrefixListFilterArray) ToGetPrefixListFilterArrayOutput

func (i GetPrefixListFilterArray) ToGetPrefixListFilterArrayOutput() GetPrefixListFilterArrayOutput

func (GetPrefixListFilterArray) ToGetPrefixListFilterArrayOutputWithContext

func (i GetPrefixListFilterArray) ToGetPrefixListFilterArrayOutputWithContext(ctx context.Context) GetPrefixListFilterArrayOutput

type GetPrefixListFilterArrayInput

type GetPrefixListFilterArrayInput interface {
	pulumi.Input

	ToGetPrefixListFilterArrayOutput() GetPrefixListFilterArrayOutput
	ToGetPrefixListFilterArrayOutputWithContext(context.Context) GetPrefixListFilterArrayOutput
}

GetPrefixListFilterArrayInput is an input type that accepts GetPrefixListFilterArray and GetPrefixListFilterArrayOutput values. You can construct a concrete instance of `GetPrefixListFilterArrayInput` via:

GetPrefixListFilterArray{ GetPrefixListFilterArgs{...} }

type GetPrefixListFilterArrayOutput

type GetPrefixListFilterArrayOutput struct{ *pulumi.OutputState }

func (GetPrefixListFilterArrayOutput) ElementType

func (GetPrefixListFilterArrayOutput) Index

func (GetPrefixListFilterArrayOutput) ToGetPrefixListFilterArrayOutput

func (o GetPrefixListFilterArrayOutput) ToGetPrefixListFilterArrayOutput() GetPrefixListFilterArrayOutput

func (GetPrefixListFilterArrayOutput) ToGetPrefixListFilterArrayOutputWithContext

func (o GetPrefixListFilterArrayOutput) ToGetPrefixListFilterArrayOutputWithContext(ctx context.Context) GetPrefixListFilterArrayOutput

type GetPrefixListFilterInput

type GetPrefixListFilterInput interface {
	pulumi.Input

	ToGetPrefixListFilterOutput() GetPrefixListFilterOutput
	ToGetPrefixListFilterOutputWithContext(context.Context) GetPrefixListFilterOutput
}

GetPrefixListFilterInput is an input type that accepts GetPrefixListFilterArgs and GetPrefixListFilterOutput values. You can construct a concrete instance of `GetPrefixListFilterInput` via:

GetPrefixListFilterArgs{...}

type GetPrefixListFilterOutput

type GetPrefixListFilterOutput struct{ *pulumi.OutputState }

func (GetPrefixListFilterOutput) ElementType

func (GetPrefixListFilterOutput) ElementType() reflect.Type

func (GetPrefixListFilterOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribePrefixLists API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribePrefixLists.html).

func (GetPrefixListFilterOutput) ToGetPrefixListFilterOutput

func (o GetPrefixListFilterOutput) ToGetPrefixListFilterOutput() GetPrefixListFilterOutput

func (GetPrefixListFilterOutput) ToGetPrefixListFilterOutputWithContext

func (o GetPrefixListFilterOutput) ToGetPrefixListFilterOutputWithContext(ctx context.Context) GetPrefixListFilterOutput

func (GetPrefixListFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetPrefixListResult

type GetPrefixListResult struct {
	// The list of CIDR blocks for the AWS service associated with the prefix list.
	CidrBlocks []string              `pulumi:"cidrBlocks"`
	Filters    []GetPrefixListFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The name of the selected prefix list.
	Name         string  `pulumi:"name"`
	PrefixListId *string `pulumi:"prefixListId"`
}

A collection of values returned by getPrefixList.

func GetPrefixList

func GetPrefixList(ctx *pulumi.Context, args *GetPrefixListArgs, opts ...pulumi.InvokeOption) (*GetPrefixListResult, error)

`ec2.getPrefixList` provides details about a specific prefix list (PL) in the current region.

This can be used both to validate a prefix list given in a variable and to obtain the CIDR blocks (IP address ranges) for the associated AWS service. The latter may be useful e.g. for adding network ACL rules.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		privateS3VpcEndpoint, err := ec2.NewVpcEndpoint(ctx, "privateS3VpcEndpoint", &ec2.VpcEndpointArgs{
			VpcId:       pulumi.Any(aws_vpc.Foo.Id),
			ServiceName: pulumi.String("com.amazonaws.us-west-2.s3"),
		})
		if err != nil {
			return err
		}
		bar, err := ec2.NewNetworkAcl(ctx, "bar", &ec2.NetworkAclArgs{
			VpcId: pulumi.Any(aws_vpc.Foo.Id),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewNetworkAclRule(ctx, "privateS3NetworkAclRule", &ec2.NetworkAclRuleArgs{
			NetworkAclId: bar.ID(),
			RuleNumber:   pulumi.Int(200),
			Egress:       pulumi.Bool(false),
			Protocol:     pulumi.String("tcp"),
			RuleAction:   pulumi.String("allow"),
			CidrBlock: privateS3PrefixList.ApplyT(func(privateS3PrefixList ec2.GetPrefixListResult) (string, error) {
				return privateS3PrefixList.CidrBlocks[0], nil
			}).(pulumi.StringOutput),
			FromPort: pulumi.Int(443),
			ToPort:   pulumi.Int(443),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetPrefixList(ctx, &ec2.GetPrefixListArgs{
			Filters: []ec2.GetPrefixListFilter{
				ec2.GetPrefixListFilter{
					Name: "prefix-list-id",
					Values: []string{
						"pl-68a54001",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetRouteTableAssociationType

type GetRouteTableAssociationType struct {
	// ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).
	GatewayId string `pulumi:"gatewayId"`
	// Whether the association is due to the main route table.
	Main bool `pulumi:"main"`
	// Association ID.
	RouteTableAssociationId string `pulumi:"routeTableAssociationId"`
	// ID of the specific Route Table to retrieve.
	RouteTableId string `pulumi:"routeTableId"`
	// ID of a Subnet which is connected to the Route Table (not exported if not passed as a parameter).
	SubnetId string `pulumi:"subnetId"`
}

type GetRouteTableAssociationTypeArgs

type GetRouteTableAssociationTypeArgs struct {
	// ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).
	GatewayId pulumi.StringInput `pulumi:"gatewayId"`
	// Whether the association is due to the main route table.
	Main pulumi.BoolInput `pulumi:"main"`
	// Association ID.
	RouteTableAssociationId pulumi.StringInput `pulumi:"routeTableAssociationId"`
	// ID of the specific Route Table to retrieve.
	RouteTableId pulumi.StringInput `pulumi:"routeTableId"`
	// ID of a Subnet which is connected to the Route Table (not exported if not passed as a parameter).
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetRouteTableAssociationTypeArgs) ElementType

func (GetRouteTableAssociationTypeArgs) ToGetRouteTableAssociationTypeOutput

func (i GetRouteTableAssociationTypeArgs) ToGetRouteTableAssociationTypeOutput() GetRouteTableAssociationTypeOutput

func (GetRouteTableAssociationTypeArgs) ToGetRouteTableAssociationTypeOutputWithContext

func (i GetRouteTableAssociationTypeArgs) ToGetRouteTableAssociationTypeOutputWithContext(ctx context.Context) GetRouteTableAssociationTypeOutput

type GetRouteTableAssociationTypeArray

type GetRouteTableAssociationTypeArray []GetRouteTableAssociationTypeInput

func (GetRouteTableAssociationTypeArray) ElementType

func (GetRouteTableAssociationTypeArray) ToGetRouteTableAssociationTypeArrayOutput

func (i GetRouteTableAssociationTypeArray) ToGetRouteTableAssociationTypeArrayOutput() GetRouteTableAssociationTypeArrayOutput

func (GetRouteTableAssociationTypeArray) ToGetRouteTableAssociationTypeArrayOutputWithContext

func (i GetRouteTableAssociationTypeArray) ToGetRouteTableAssociationTypeArrayOutputWithContext(ctx context.Context) GetRouteTableAssociationTypeArrayOutput

type GetRouteTableAssociationTypeArrayInput

type GetRouteTableAssociationTypeArrayInput interface {
	pulumi.Input

	ToGetRouteTableAssociationTypeArrayOutput() GetRouteTableAssociationTypeArrayOutput
	ToGetRouteTableAssociationTypeArrayOutputWithContext(context.Context) GetRouteTableAssociationTypeArrayOutput
}

GetRouteTableAssociationTypeArrayInput is an input type that accepts GetRouteTableAssociationTypeArray and GetRouteTableAssociationTypeArrayOutput values. You can construct a concrete instance of `GetRouteTableAssociationTypeArrayInput` via:

GetRouteTableAssociationTypeArray{ GetRouteTableAssociationTypeArgs{...} }

type GetRouteTableAssociationTypeArrayOutput

type GetRouteTableAssociationTypeArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTableAssociationTypeArrayOutput) ElementType

func (GetRouteTableAssociationTypeArrayOutput) Index

func (GetRouteTableAssociationTypeArrayOutput) ToGetRouteTableAssociationTypeArrayOutput

func (o GetRouteTableAssociationTypeArrayOutput) ToGetRouteTableAssociationTypeArrayOutput() GetRouteTableAssociationTypeArrayOutput

func (GetRouteTableAssociationTypeArrayOutput) ToGetRouteTableAssociationTypeArrayOutputWithContext

func (o GetRouteTableAssociationTypeArrayOutput) ToGetRouteTableAssociationTypeArrayOutputWithContext(ctx context.Context) GetRouteTableAssociationTypeArrayOutput

type GetRouteTableAssociationTypeInput

type GetRouteTableAssociationTypeInput interface {
	pulumi.Input

	ToGetRouteTableAssociationTypeOutput() GetRouteTableAssociationTypeOutput
	ToGetRouteTableAssociationTypeOutputWithContext(context.Context) GetRouteTableAssociationTypeOutput
}

GetRouteTableAssociationTypeInput is an input type that accepts GetRouteTableAssociationTypeArgs and GetRouteTableAssociationTypeOutput values. You can construct a concrete instance of `GetRouteTableAssociationTypeInput` via:

GetRouteTableAssociationTypeArgs{...}

type GetRouteTableAssociationTypeOutput

type GetRouteTableAssociationTypeOutput struct{ *pulumi.OutputState }

func (GetRouteTableAssociationTypeOutput) ElementType

func (GetRouteTableAssociationTypeOutput) GatewayId

ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).

func (GetRouteTableAssociationTypeOutput) Main

Whether the association is due to the main route table.

func (GetRouteTableAssociationTypeOutput) RouteTableAssociationId

func (o GetRouteTableAssociationTypeOutput) RouteTableAssociationId() pulumi.StringOutput

Association ID.

func (GetRouteTableAssociationTypeOutput) RouteTableId

ID of the specific Route Table to retrieve.

func (GetRouteTableAssociationTypeOutput) SubnetId

ID of a Subnet which is connected to the Route Table (not exported if not passed as a parameter).

func (GetRouteTableAssociationTypeOutput) ToGetRouteTableAssociationTypeOutput

func (o GetRouteTableAssociationTypeOutput) ToGetRouteTableAssociationTypeOutput() GetRouteTableAssociationTypeOutput

func (GetRouteTableAssociationTypeOutput) ToGetRouteTableAssociationTypeOutputWithContext

func (o GetRouteTableAssociationTypeOutput) ToGetRouteTableAssociationTypeOutputWithContext(ctx context.Context) GetRouteTableAssociationTypeOutput

type GetRouteTableFilter

type GetRouteTableFilter struct {
	// Name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field. A Route Table will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetRouteTableFilterArgs

type GetRouteTableFilterArgs struct {
	// Name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field. A Route Table will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetRouteTableFilterArgs) ElementType

func (GetRouteTableFilterArgs) ElementType() reflect.Type

func (GetRouteTableFilterArgs) ToGetRouteTableFilterOutput

func (i GetRouteTableFilterArgs) ToGetRouteTableFilterOutput() GetRouteTableFilterOutput

func (GetRouteTableFilterArgs) ToGetRouteTableFilterOutputWithContext

func (i GetRouteTableFilterArgs) ToGetRouteTableFilterOutputWithContext(ctx context.Context) GetRouteTableFilterOutput

type GetRouteTableFilterArray

type GetRouteTableFilterArray []GetRouteTableFilterInput

func (GetRouteTableFilterArray) ElementType

func (GetRouteTableFilterArray) ElementType() reflect.Type

func (GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutput

func (i GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput

func (GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutputWithContext

func (i GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutputWithContext(ctx context.Context) GetRouteTableFilterArrayOutput

type GetRouteTableFilterArrayInput

type GetRouteTableFilterArrayInput interface {
	pulumi.Input

	ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput
	ToGetRouteTableFilterArrayOutputWithContext(context.Context) GetRouteTableFilterArrayOutput
}

GetRouteTableFilterArrayInput is an input type that accepts GetRouteTableFilterArray and GetRouteTableFilterArrayOutput values. You can construct a concrete instance of `GetRouteTableFilterArrayInput` via:

GetRouteTableFilterArray{ GetRouteTableFilterArgs{...} }

type GetRouteTableFilterArrayOutput

type GetRouteTableFilterArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTableFilterArrayOutput) ElementType

func (GetRouteTableFilterArrayOutput) Index

func (GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutput

func (o GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput

func (GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutputWithContext

func (o GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutputWithContext(ctx context.Context) GetRouteTableFilterArrayOutput

type GetRouteTableFilterInput

type GetRouteTableFilterInput interface {
	pulumi.Input

	ToGetRouteTableFilterOutput() GetRouteTableFilterOutput
	ToGetRouteTableFilterOutputWithContext(context.Context) GetRouteTableFilterOutput
}

GetRouteTableFilterInput is an input type that accepts GetRouteTableFilterArgs and GetRouteTableFilterOutput values. You can construct a concrete instance of `GetRouteTableFilterInput` via:

GetRouteTableFilterArgs{...}

type GetRouteTableFilterOutput

type GetRouteTableFilterOutput struct{ *pulumi.OutputState }

func (GetRouteTableFilterOutput) ElementType

func (GetRouteTableFilterOutput) ElementType() reflect.Type

func (GetRouteTableFilterOutput) Name

Name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).

func (GetRouteTableFilterOutput) ToGetRouteTableFilterOutput

func (o GetRouteTableFilterOutput) ToGetRouteTableFilterOutput() GetRouteTableFilterOutput

func (GetRouteTableFilterOutput) ToGetRouteTableFilterOutputWithContext

func (o GetRouteTableFilterOutput) ToGetRouteTableFilterOutputWithContext(ctx context.Context) GetRouteTableFilterOutput

func (GetRouteTableFilterOutput) Values

Set of values that are accepted for the given field. A Route Table will be selected if any one of the given values matches.

type GetRouteTableRoute

type GetRouteTableRoute struct {
	// ID of the Carrier Gateway.
	CarrierGatewayId string `pulumi:"carrierGatewayId"`
	// CIDR block of the route.
	CidrBlock string `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId string `pulumi:"destinationPrefixListId"`
	// ID of the Egress Only Internet Gateway.
	EgressOnlyGatewayId string `pulumi:"egressOnlyGatewayId"`
	// ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).
	GatewayId string `pulumi:"gatewayId"`
	// EC2 instance ID.
	InstanceId string `pulumi:"instanceId"`
	// IPv6 CIDR block of the route.
	Ipv6CidrBlock string `pulumi:"ipv6CidrBlock"`
	// Local Gateway ID.
	LocalGatewayId string `pulumi:"localGatewayId"`
	// NAT Gateway ID.
	NatGatewayId string `pulumi:"natGatewayId"`
	// ID of the elastic network interface (eni) to use.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// EC2 Transit Gateway ID.
	TransitGatewayId string `pulumi:"transitGatewayId"`
	// VPC Endpoint ID.
	VpcEndpointId string `pulumi:"vpcEndpointId"`
	// VPC Peering ID.
	VpcPeeringConnectionId string `pulumi:"vpcPeeringConnectionId"`
}

type GetRouteTableRouteArgs

type GetRouteTableRouteArgs struct {
	// ID of the Carrier Gateway.
	CarrierGatewayId pulumi.StringInput `pulumi:"carrierGatewayId"`
	// CIDR block of the route.
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId pulumi.StringInput `pulumi:"destinationPrefixListId"`
	// ID of the Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringInput `pulumi:"egressOnlyGatewayId"`
	// ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).
	GatewayId pulumi.StringInput `pulumi:"gatewayId"`
	// EC2 instance ID.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// IPv6 CIDR block of the route.
	Ipv6CidrBlock pulumi.StringInput `pulumi:"ipv6CidrBlock"`
	// Local Gateway ID.
	LocalGatewayId pulumi.StringInput `pulumi:"localGatewayId"`
	// NAT Gateway ID.
	NatGatewayId pulumi.StringInput `pulumi:"natGatewayId"`
	// ID of the elastic network interface (eni) to use.
	NetworkInterfaceId pulumi.StringInput `pulumi:"networkInterfaceId"`
	// EC2 Transit Gateway ID.
	TransitGatewayId pulumi.StringInput `pulumi:"transitGatewayId"`
	// VPC Endpoint ID.
	VpcEndpointId pulumi.StringInput `pulumi:"vpcEndpointId"`
	// VPC Peering ID.
	VpcPeeringConnectionId pulumi.StringInput `pulumi:"vpcPeeringConnectionId"`
}

func (GetRouteTableRouteArgs) ElementType

func (GetRouteTableRouteArgs) ElementType() reflect.Type

func (GetRouteTableRouteArgs) ToGetRouteTableRouteOutput

func (i GetRouteTableRouteArgs) ToGetRouteTableRouteOutput() GetRouteTableRouteOutput

func (GetRouteTableRouteArgs) ToGetRouteTableRouteOutputWithContext

func (i GetRouteTableRouteArgs) ToGetRouteTableRouteOutputWithContext(ctx context.Context) GetRouteTableRouteOutput

type GetRouteTableRouteArray

type GetRouteTableRouteArray []GetRouteTableRouteInput

func (GetRouteTableRouteArray) ElementType

func (GetRouteTableRouteArray) ElementType() reflect.Type

func (GetRouteTableRouteArray) ToGetRouteTableRouteArrayOutput

func (i GetRouteTableRouteArray) ToGetRouteTableRouteArrayOutput() GetRouteTableRouteArrayOutput

func (GetRouteTableRouteArray) ToGetRouteTableRouteArrayOutputWithContext

func (i GetRouteTableRouteArray) ToGetRouteTableRouteArrayOutputWithContext(ctx context.Context) GetRouteTableRouteArrayOutput

type GetRouteTableRouteArrayInput

type GetRouteTableRouteArrayInput interface {
	pulumi.Input

	ToGetRouteTableRouteArrayOutput() GetRouteTableRouteArrayOutput
	ToGetRouteTableRouteArrayOutputWithContext(context.Context) GetRouteTableRouteArrayOutput
}

GetRouteTableRouteArrayInput is an input type that accepts GetRouteTableRouteArray and GetRouteTableRouteArrayOutput values. You can construct a concrete instance of `GetRouteTableRouteArrayInput` via:

GetRouteTableRouteArray{ GetRouteTableRouteArgs{...} }

type GetRouteTableRouteArrayOutput

type GetRouteTableRouteArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTableRouteArrayOutput) ElementType

func (GetRouteTableRouteArrayOutput) Index

func (GetRouteTableRouteArrayOutput) ToGetRouteTableRouteArrayOutput

func (o GetRouteTableRouteArrayOutput) ToGetRouteTableRouteArrayOutput() GetRouteTableRouteArrayOutput

func (GetRouteTableRouteArrayOutput) ToGetRouteTableRouteArrayOutputWithContext

func (o GetRouteTableRouteArrayOutput) ToGetRouteTableRouteArrayOutputWithContext(ctx context.Context) GetRouteTableRouteArrayOutput

type GetRouteTableRouteInput

type GetRouteTableRouteInput interface {
	pulumi.Input

	ToGetRouteTableRouteOutput() GetRouteTableRouteOutput
	ToGetRouteTableRouteOutputWithContext(context.Context) GetRouteTableRouteOutput
}

GetRouteTableRouteInput is an input type that accepts GetRouteTableRouteArgs and GetRouteTableRouteOutput values. You can construct a concrete instance of `GetRouteTableRouteInput` via:

GetRouteTableRouteArgs{...}

type GetRouteTableRouteOutput

type GetRouteTableRouteOutput struct{ *pulumi.OutputState }

func (GetRouteTableRouteOutput) CarrierGatewayId

func (o GetRouteTableRouteOutput) CarrierGatewayId() pulumi.StringOutput

ID of the Carrier Gateway.

func (GetRouteTableRouteOutput) CidrBlock

CIDR block of the route.

func (GetRouteTableRouteOutput) DestinationPrefixListId

func (o GetRouteTableRouteOutput) DestinationPrefixListId() pulumi.StringOutput

The ID of a managed prefix list destination of the route.

func (GetRouteTableRouteOutput) EgressOnlyGatewayId

func (o GetRouteTableRouteOutput) EgressOnlyGatewayId() pulumi.StringOutput

ID of the Egress Only Internet Gateway.

func (GetRouteTableRouteOutput) ElementType

func (GetRouteTableRouteOutput) ElementType() reflect.Type

func (GetRouteTableRouteOutput) GatewayId

ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).

func (GetRouteTableRouteOutput) InstanceId

EC2 instance ID.

func (GetRouteTableRouteOutput) Ipv6CidrBlock

func (o GetRouteTableRouteOutput) Ipv6CidrBlock() pulumi.StringOutput

IPv6 CIDR block of the route.

func (GetRouteTableRouteOutput) LocalGatewayId

func (o GetRouteTableRouteOutput) LocalGatewayId() pulumi.StringOutput

Local Gateway ID.

func (GetRouteTableRouteOutput) NatGatewayId

func (o GetRouteTableRouteOutput) NatGatewayId() pulumi.StringOutput

NAT Gateway ID.

func (GetRouteTableRouteOutput) NetworkInterfaceId

func (o GetRouteTableRouteOutput) NetworkInterfaceId() pulumi.StringOutput

ID of the elastic network interface (eni) to use.

func (GetRouteTableRouteOutput) ToGetRouteTableRouteOutput

func (o GetRouteTableRouteOutput) ToGetRouteTableRouteOutput() GetRouteTableRouteOutput

func (GetRouteTableRouteOutput) ToGetRouteTableRouteOutputWithContext

func (o GetRouteTableRouteOutput) ToGetRouteTableRouteOutputWithContext(ctx context.Context) GetRouteTableRouteOutput

func (GetRouteTableRouteOutput) TransitGatewayId

func (o GetRouteTableRouteOutput) TransitGatewayId() pulumi.StringOutput

EC2 Transit Gateway ID.

func (GetRouteTableRouteOutput) VpcEndpointId

func (o GetRouteTableRouteOutput) VpcEndpointId() pulumi.StringOutput

VPC Endpoint ID.

func (GetRouteTableRouteOutput) VpcPeeringConnectionId

func (o GetRouteTableRouteOutput) VpcPeeringConnectionId() pulumi.StringOutput

VPC Peering ID.

type GetRouteTablesArgs

type GetRouteTablesArgs struct {
	// Custom filter block as described below.
	Filters []GetRouteTablesFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired route tables.
	Tags map[string]string `pulumi:"tags"`
	// The VPC ID that you want to filter from.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getRouteTables.

type GetRouteTablesFilter

type GetRouteTablesFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Route Table will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetRouteTablesFilterArgs

type GetRouteTablesFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Route Table will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetRouteTablesFilterArgs) ElementType

func (GetRouteTablesFilterArgs) ElementType() reflect.Type

func (GetRouteTablesFilterArgs) ToGetRouteTablesFilterOutput

func (i GetRouteTablesFilterArgs) ToGetRouteTablesFilterOutput() GetRouteTablesFilterOutput

func (GetRouteTablesFilterArgs) ToGetRouteTablesFilterOutputWithContext

func (i GetRouteTablesFilterArgs) ToGetRouteTablesFilterOutputWithContext(ctx context.Context) GetRouteTablesFilterOutput

type GetRouteTablesFilterArray

type GetRouteTablesFilterArray []GetRouteTablesFilterInput

func (GetRouteTablesFilterArray) ElementType

func (GetRouteTablesFilterArray) ElementType() reflect.Type

func (GetRouteTablesFilterArray) ToGetRouteTablesFilterArrayOutput

func (i GetRouteTablesFilterArray) ToGetRouteTablesFilterArrayOutput() GetRouteTablesFilterArrayOutput

func (GetRouteTablesFilterArray) ToGetRouteTablesFilterArrayOutputWithContext

func (i GetRouteTablesFilterArray) ToGetRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetRouteTablesFilterArrayOutput

type GetRouteTablesFilterArrayInput

type GetRouteTablesFilterArrayInput interface {
	pulumi.Input

	ToGetRouteTablesFilterArrayOutput() GetRouteTablesFilterArrayOutput
	ToGetRouteTablesFilterArrayOutputWithContext(context.Context) GetRouteTablesFilterArrayOutput
}

GetRouteTablesFilterArrayInput is an input type that accepts GetRouteTablesFilterArray and GetRouteTablesFilterArrayOutput values. You can construct a concrete instance of `GetRouteTablesFilterArrayInput` via:

GetRouteTablesFilterArray{ GetRouteTablesFilterArgs{...} }

type GetRouteTablesFilterArrayOutput

type GetRouteTablesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTablesFilterArrayOutput) ElementType

func (GetRouteTablesFilterArrayOutput) Index

func (GetRouteTablesFilterArrayOutput) ToGetRouteTablesFilterArrayOutput

func (o GetRouteTablesFilterArrayOutput) ToGetRouteTablesFilterArrayOutput() GetRouteTablesFilterArrayOutput

func (GetRouteTablesFilterArrayOutput) ToGetRouteTablesFilterArrayOutputWithContext

func (o GetRouteTablesFilterArrayOutput) ToGetRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetRouteTablesFilterArrayOutput

type GetRouteTablesFilterInput

type GetRouteTablesFilterInput interface {
	pulumi.Input

	ToGetRouteTablesFilterOutput() GetRouteTablesFilterOutput
	ToGetRouteTablesFilterOutputWithContext(context.Context) GetRouteTablesFilterOutput
}

GetRouteTablesFilterInput is an input type that accepts GetRouteTablesFilterArgs and GetRouteTablesFilterOutput values. You can construct a concrete instance of `GetRouteTablesFilterInput` via:

GetRouteTablesFilterArgs{...}

type GetRouteTablesFilterOutput

type GetRouteTablesFilterOutput struct{ *pulumi.OutputState }

func (GetRouteTablesFilterOutput) ElementType

func (GetRouteTablesFilterOutput) ElementType() reflect.Type

func (GetRouteTablesFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html).

func (GetRouteTablesFilterOutput) ToGetRouteTablesFilterOutput

func (o GetRouteTablesFilterOutput) ToGetRouteTablesFilterOutput() GetRouteTablesFilterOutput

func (GetRouteTablesFilterOutput) ToGetRouteTablesFilterOutputWithContext

func (o GetRouteTablesFilterOutput) ToGetRouteTablesFilterOutputWithContext(ctx context.Context) GetRouteTablesFilterOutput

func (GetRouteTablesFilterOutput) Values

Set of values that are accepted for the given field. A Route Table will be selected if any one of the given values matches.

type GetRouteTablesResult

type GetRouteTablesResult struct {
	Filters []GetRouteTablesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A set of all the route table ids found. This data source will fail if none are found.
	Ids   []string          `pulumi:"ids"`
	Tags  map[string]string `pulumi:"tags"`
	VpcId *string           `pulumi:"vpcId"`
}

A collection of values returned by getRouteTables.

func GetRouteTables

func GetRouteTables(ctx *pulumi.Context, args *GetRouteTablesArgs, opts ...pulumi.InvokeOption) (*GetRouteTablesResult, error)

This resource can be useful for getting back a list of route table ids to be referenced elsewhere.

type GetSecurityGroupFilter

type GetSecurityGroupFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Security Group will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetSecurityGroupFilterArgs

type GetSecurityGroupFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Security Group will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupFilterArgs) ElementType

func (GetSecurityGroupFilterArgs) ElementType() reflect.Type

func (GetSecurityGroupFilterArgs) ToGetSecurityGroupFilterOutput

func (i GetSecurityGroupFilterArgs) ToGetSecurityGroupFilterOutput() GetSecurityGroupFilterOutput

func (GetSecurityGroupFilterArgs) ToGetSecurityGroupFilterOutputWithContext

func (i GetSecurityGroupFilterArgs) ToGetSecurityGroupFilterOutputWithContext(ctx context.Context) GetSecurityGroupFilterOutput

type GetSecurityGroupFilterArray

type GetSecurityGroupFilterArray []GetSecurityGroupFilterInput

func (GetSecurityGroupFilterArray) ElementType

func (GetSecurityGroupFilterArray) ToGetSecurityGroupFilterArrayOutput

func (i GetSecurityGroupFilterArray) ToGetSecurityGroupFilterArrayOutput() GetSecurityGroupFilterArrayOutput

func (GetSecurityGroupFilterArray) ToGetSecurityGroupFilterArrayOutputWithContext

func (i GetSecurityGroupFilterArray) ToGetSecurityGroupFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupFilterArrayOutput

type GetSecurityGroupFilterArrayInput

type GetSecurityGroupFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupFilterArrayOutput() GetSecurityGroupFilterArrayOutput
	ToGetSecurityGroupFilterArrayOutputWithContext(context.Context) GetSecurityGroupFilterArrayOutput
}

GetSecurityGroupFilterArrayInput is an input type that accepts GetSecurityGroupFilterArray and GetSecurityGroupFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupFilterArrayInput` via:

GetSecurityGroupFilterArray{ GetSecurityGroupFilterArgs{...} }

type GetSecurityGroupFilterArrayOutput

type GetSecurityGroupFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupFilterArrayOutput) ElementType

func (GetSecurityGroupFilterArrayOutput) Index

func (GetSecurityGroupFilterArrayOutput) ToGetSecurityGroupFilterArrayOutput

func (o GetSecurityGroupFilterArrayOutput) ToGetSecurityGroupFilterArrayOutput() GetSecurityGroupFilterArrayOutput

func (GetSecurityGroupFilterArrayOutput) ToGetSecurityGroupFilterArrayOutputWithContext

func (o GetSecurityGroupFilterArrayOutput) ToGetSecurityGroupFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupFilterArrayOutput

type GetSecurityGroupFilterInput

type GetSecurityGroupFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupFilterOutput() GetSecurityGroupFilterOutput
	ToGetSecurityGroupFilterOutputWithContext(context.Context) GetSecurityGroupFilterOutput
}

GetSecurityGroupFilterInput is an input type that accepts GetSecurityGroupFilterArgs and GetSecurityGroupFilterOutput values. You can construct a concrete instance of `GetSecurityGroupFilterInput` via:

GetSecurityGroupFilterArgs{...}

type GetSecurityGroupFilterOutput

type GetSecurityGroupFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupFilterOutput) ElementType

func (GetSecurityGroupFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html).

func (GetSecurityGroupFilterOutput) ToGetSecurityGroupFilterOutput

func (o GetSecurityGroupFilterOutput) ToGetSecurityGroupFilterOutput() GetSecurityGroupFilterOutput

func (GetSecurityGroupFilterOutput) ToGetSecurityGroupFilterOutputWithContext

func (o GetSecurityGroupFilterOutput) ToGetSecurityGroupFilterOutputWithContext(ctx context.Context) GetSecurityGroupFilterOutput

func (GetSecurityGroupFilterOutput) Values

Set of values that are accepted for the given field. A Security Group will be selected if any one of the given values matches.

type GetSecurityGroupsArgs

type GetSecurityGroupsArgs struct {
	// One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out [describe-security-groups in the AWS CLI reference][1].
	Filters []GetSecurityGroupsFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match for desired security groups.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSecurityGroups.

type GetSecurityGroupsFilter

type GetSecurityGroupsFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetSecurityGroupsFilterArgs

type GetSecurityGroupsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupsFilterArgs) ElementType

func (GetSecurityGroupsFilterArgs) ToGetSecurityGroupsFilterOutput

func (i GetSecurityGroupsFilterArgs) ToGetSecurityGroupsFilterOutput() GetSecurityGroupsFilterOutput

func (GetSecurityGroupsFilterArgs) ToGetSecurityGroupsFilterOutputWithContext

func (i GetSecurityGroupsFilterArgs) ToGetSecurityGroupsFilterOutputWithContext(ctx context.Context) GetSecurityGroupsFilterOutput

type GetSecurityGroupsFilterArray

type GetSecurityGroupsFilterArray []GetSecurityGroupsFilterInput

func (GetSecurityGroupsFilterArray) ElementType

func (GetSecurityGroupsFilterArray) ToGetSecurityGroupsFilterArrayOutput

func (i GetSecurityGroupsFilterArray) ToGetSecurityGroupsFilterArrayOutput() GetSecurityGroupsFilterArrayOutput

func (GetSecurityGroupsFilterArray) ToGetSecurityGroupsFilterArrayOutputWithContext

func (i GetSecurityGroupsFilterArray) ToGetSecurityGroupsFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupsFilterArrayOutput

type GetSecurityGroupsFilterArrayInput

type GetSecurityGroupsFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupsFilterArrayOutput() GetSecurityGroupsFilterArrayOutput
	ToGetSecurityGroupsFilterArrayOutputWithContext(context.Context) GetSecurityGroupsFilterArrayOutput
}

GetSecurityGroupsFilterArrayInput is an input type that accepts GetSecurityGroupsFilterArray and GetSecurityGroupsFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupsFilterArrayInput` via:

GetSecurityGroupsFilterArray{ GetSecurityGroupsFilterArgs{...} }

type GetSecurityGroupsFilterArrayOutput

type GetSecurityGroupsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupsFilterArrayOutput) ElementType

func (GetSecurityGroupsFilterArrayOutput) Index

func (GetSecurityGroupsFilterArrayOutput) ToGetSecurityGroupsFilterArrayOutput

func (o GetSecurityGroupsFilterArrayOutput) ToGetSecurityGroupsFilterArrayOutput() GetSecurityGroupsFilterArrayOutput

func (GetSecurityGroupsFilterArrayOutput) ToGetSecurityGroupsFilterArrayOutputWithContext

func (o GetSecurityGroupsFilterArrayOutput) ToGetSecurityGroupsFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupsFilterArrayOutput

type GetSecurityGroupsFilterInput

type GetSecurityGroupsFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupsFilterOutput() GetSecurityGroupsFilterOutput
	ToGetSecurityGroupsFilterOutputWithContext(context.Context) GetSecurityGroupsFilterOutput
}

GetSecurityGroupsFilterInput is an input type that accepts GetSecurityGroupsFilterArgs and GetSecurityGroupsFilterOutput values. You can construct a concrete instance of `GetSecurityGroupsFilterInput` via:

GetSecurityGroupsFilterArgs{...}

type GetSecurityGroupsFilterOutput

type GetSecurityGroupsFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupsFilterOutput) ElementType

func (GetSecurityGroupsFilterOutput) Name

func (GetSecurityGroupsFilterOutput) ToGetSecurityGroupsFilterOutput

func (o GetSecurityGroupsFilterOutput) ToGetSecurityGroupsFilterOutput() GetSecurityGroupsFilterOutput

func (GetSecurityGroupsFilterOutput) ToGetSecurityGroupsFilterOutputWithContext

func (o GetSecurityGroupsFilterOutput) ToGetSecurityGroupsFilterOutputWithContext(ctx context.Context) GetSecurityGroupsFilterOutput

func (GetSecurityGroupsFilterOutput) Values

type GetSecurityGroupsResult

type GetSecurityGroupsResult struct {
	// ARNs of the matched security groups.
	Arns    []string                  `pulumi:"arns"`
	Filters []GetSecurityGroupsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the matches security groups.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
	// The VPC IDs of the matched security groups. The data source's tag or filter *will span VPCs* unless the `vpc-id` filter is also used.
	VpcIds []string `pulumi:"vpcIds"`
}

A collection of values returned by getSecurityGroups.

func GetSecurityGroups

func GetSecurityGroups(ctx *pulumi.Context, args *GetSecurityGroupsArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupsResult, error)

Use this data source to get IDs and VPC membership of Security Groups that are created outside of this provider.

type GetSpotPriceArgs

type GetSpotPriceArgs struct {
	// The availability zone in which to query Spot price information.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// One or more configuration blocks containing name-values filters. See the [EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSpotPriceHistory.html) for supported filters. Detailed below.
	Filters []GetSpotPriceFilter `pulumi:"filters"`
	// The type of instance for which to query Spot Price information.
	InstanceType *string `pulumi:"instanceType"`
}

A collection of arguments for invoking getSpotPrice.

type GetSpotPriceFilter

type GetSpotPriceFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetSpotPriceFilterArgs

type GetSpotPriceFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSpotPriceFilterArgs) ElementType

func (GetSpotPriceFilterArgs) ElementType() reflect.Type

func (GetSpotPriceFilterArgs) ToGetSpotPriceFilterOutput

func (i GetSpotPriceFilterArgs) ToGetSpotPriceFilterOutput() GetSpotPriceFilterOutput

func (GetSpotPriceFilterArgs) ToGetSpotPriceFilterOutputWithContext

func (i GetSpotPriceFilterArgs) ToGetSpotPriceFilterOutputWithContext(ctx context.Context) GetSpotPriceFilterOutput

type GetSpotPriceFilterArray

type GetSpotPriceFilterArray []GetSpotPriceFilterInput

func (GetSpotPriceFilterArray) ElementType

func (GetSpotPriceFilterArray) ElementType() reflect.Type

func (GetSpotPriceFilterArray) ToGetSpotPriceFilterArrayOutput

func (i GetSpotPriceFilterArray) ToGetSpotPriceFilterArrayOutput() GetSpotPriceFilterArrayOutput

func (GetSpotPriceFilterArray) ToGetSpotPriceFilterArrayOutputWithContext

func (i GetSpotPriceFilterArray) ToGetSpotPriceFilterArrayOutputWithContext(ctx context.Context) GetSpotPriceFilterArrayOutput

type GetSpotPriceFilterArrayInput

type GetSpotPriceFilterArrayInput interface {
	pulumi.Input

	ToGetSpotPriceFilterArrayOutput() GetSpotPriceFilterArrayOutput
	ToGetSpotPriceFilterArrayOutputWithContext(context.Context) GetSpotPriceFilterArrayOutput
}

GetSpotPriceFilterArrayInput is an input type that accepts GetSpotPriceFilterArray and GetSpotPriceFilterArrayOutput values. You can construct a concrete instance of `GetSpotPriceFilterArrayInput` via:

GetSpotPriceFilterArray{ GetSpotPriceFilterArgs{...} }

type GetSpotPriceFilterArrayOutput

type GetSpotPriceFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSpotPriceFilterArrayOutput) ElementType

func (GetSpotPriceFilterArrayOutput) Index

func (GetSpotPriceFilterArrayOutput) ToGetSpotPriceFilterArrayOutput

func (o GetSpotPriceFilterArrayOutput) ToGetSpotPriceFilterArrayOutput() GetSpotPriceFilterArrayOutput

func (GetSpotPriceFilterArrayOutput) ToGetSpotPriceFilterArrayOutputWithContext

func (o GetSpotPriceFilterArrayOutput) ToGetSpotPriceFilterArrayOutputWithContext(ctx context.Context) GetSpotPriceFilterArrayOutput

type GetSpotPriceFilterInput

type GetSpotPriceFilterInput interface {
	pulumi.Input

	ToGetSpotPriceFilterOutput() GetSpotPriceFilterOutput
	ToGetSpotPriceFilterOutputWithContext(context.Context) GetSpotPriceFilterOutput
}

GetSpotPriceFilterInput is an input type that accepts GetSpotPriceFilterArgs and GetSpotPriceFilterOutput values. You can construct a concrete instance of `GetSpotPriceFilterInput` via:

GetSpotPriceFilterArgs{...}

type GetSpotPriceFilterOutput

type GetSpotPriceFilterOutput struct{ *pulumi.OutputState }

func (GetSpotPriceFilterOutput) ElementType

func (GetSpotPriceFilterOutput) ElementType() reflect.Type

func (GetSpotPriceFilterOutput) Name

Name of the filter.

func (GetSpotPriceFilterOutput) ToGetSpotPriceFilterOutput

func (o GetSpotPriceFilterOutput) ToGetSpotPriceFilterOutput() GetSpotPriceFilterOutput

func (GetSpotPriceFilterOutput) ToGetSpotPriceFilterOutputWithContext

func (o GetSpotPriceFilterOutput) ToGetSpotPriceFilterOutputWithContext(ctx context.Context) GetSpotPriceFilterOutput

func (GetSpotPriceFilterOutput) Values

List of one or more values for the filter.

type GetSpotPriceResult

type GetSpotPriceResult struct {
	AvailabilityZone *string              `pulumi:"availabilityZone"`
	Filters          []GetSpotPriceFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id           string  `pulumi:"id"`
	InstanceType *string `pulumi:"instanceType"`
	// The most recent Spot Price value for the given instance type and AZ.
	SpotPrice string `pulumi:"spotPrice"`
	// The timestamp at which the Spot Price value was published.
	SpotPriceTimestamp string `pulumi:"spotPriceTimestamp"`
}

A collection of values returned by getSpotPrice.

func GetSpotPrice

func GetSpotPrice(ctx *pulumi.Context, args *GetSpotPriceArgs, opts ...pulumi.InvokeOption) (*GetSpotPriceResult, error)

Information about most recent Spot Price for a given EC2 instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "us-west-2a"
		opt1 := "t3.medium"
		_, err := ec2.GetSpotPrice(ctx, &ec2.GetSpotPriceArgs{
			AvailabilityZone: &opt0,
			Filters: []ec2.GetSpotPriceFilter{
				ec2.GetSpotPriceFilter{
					Name: "product-description",
					Values: []string{
						"Linux/UNIX",
					},
				},
			},
			InstanceType: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSubnetFilter

type GetSubnetFilter struct {
	// The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field. A subnet will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetSubnetFilterArgs

type GetSubnetFilterArgs struct {
	// The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field. A subnet will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSubnetFilterArgs) ElementType

func (GetSubnetFilterArgs) ElementType() reflect.Type

func (GetSubnetFilterArgs) ToGetSubnetFilterOutput

func (i GetSubnetFilterArgs) ToGetSubnetFilterOutput() GetSubnetFilterOutput

func (GetSubnetFilterArgs) ToGetSubnetFilterOutputWithContext

func (i GetSubnetFilterArgs) ToGetSubnetFilterOutputWithContext(ctx context.Context) GetSubnetFilterOutput

type GetSubnetFilterArray

type GetSubnetFilterArray []GetSubnetFilterInput

func (GetSubnetFilterArray) ElementType

func (GetSubnetFilterArray) ElementType() reflect.Type

func (GetSubnetFilterArray) ToGetSubnetFilterArrayOutput

func (i GetSubnetFilterArray) ToGetSubnetFilterArrayOutput() GetSubnetFilterArrayOutput

func (GetSubnetFilterArray) ToGetSubnetFilterArrayOutputWithContext

func (i GetSubnetFilterArray) ToGetSubnetFilterArrayOutputWithContext(ctx context.Context) GetSubnetFilterArrayOutput

type GetSubnetFilterArrayInput

type GetSubnetFilterArrayInput interface {
	pulumi.Input

	ToGetSubnetFilterArrayOutput() GetSubnetFilterArrayOutput
	ToGetSubnetFilterArrayOutputWithContext(context.Context) GetSubnetFilterArrayOutput
}

GetSubnetFilterArrayInput is an input type that accepts GetSubnetFilterArray and GetSubnetFilterArrayOutput values. You can construct a concrete instance of `GetSubnetFilterArrayInput` via:

GetSubnetFilterArray{ GetSubnetFilterArgs{...} }

type GetSubnetFilterArrayOutput

type GetSubnetFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSubnetFilterArrayOutput) ElementType

func (GetSubnetFilterArrayOutput) ElementType() reflect.Type

func (GetSubnetFilterArrayOutput) Index

func (GetSubnetFilterArrayOutput) ToGetSubnetFilterArrayOutput

func (o GetSubnetFilterArrayOutput) ToGetSubnetFilterArrayOutput() GetSubnetFilterArrayOutput

func (GetSubnetFilterArrayOutput) ToGetSubnetFilterArrayOutputWithContext

func (o GetSubnetFilterArrayOutput) ToGetSubnetFilterArrayOutputWithContext(ctx context.Context) GetSubnetFilterArrayOutput

type GetSubnetFilterInput

type GetSubnetFilterInput interface {
	pulumi.Input

	ToGetSubnetFilterOutput() GetSubnetFilterOutput
	ToGetSubnetFilterOutputWithContext(context.Context) GetSubnetFilterOutput
}

GetSubnetFilterInput is an input type that accepts GetSubnetFilterArgs and GetSubnetFilterOutput values. You can construct a concrete instance of `GetSubnetFilterInput` via:

GetSubnetFilterArgs{...}

type GetSubnetFilterOutput

type GetSubnetFilterOutput struct{ *pulumi.OutputState }

func (GetSubnetFilterOutput) ElementType

func (GetSubnetFilterOutput) ElementType() reflect.Type

func (GetSubnetFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html).

func (GetSubnetFilterOutput) ToGetSubnetFilterOutput

func (o GetSubnetFilterOutput) ToGetSubnetFilterOutput() GetSubnetFilterOutput

func (GetSubnetFilterOutput) ToGetSubnetFilterOutputWithContext

func (o GetSubnetFilterOutput) ToGetSubnetFilterOutputWithContext(ctx context.Context) GetSubnetFilterOutput

func (GetSubnetFilterOutput) Values

Set of values that are accepted for the given field. A subnet will be selected if any one of the given values matches.

type GetSubnetIdsArgs

type GetSubnetIdsArgs struct {
	// Custom filter block as described below.
	Filters []GetSubnetIdsFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired subnets.
	Tags map[string]string `pulumi:"tags"`
	// The VPC ID that you want to filter from.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getSubnetIds.

type GetSubnetIdsFilter

type GetSubnetIdsFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html).
	// For example, if matching against tag `Name`, use:
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// Subnet IDs will be selected if any one of the given values match.
	Values []string `pulumi:"values"`
}

type GetSubnetIdsFilterArgs

type GetSubnetIdsFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html).
	// For example, if matching against tag `Name`, use:
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// Subnet IDs will be selected if any one of the given values match.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSubnetIdsFilterArgs) ElementType

func (GetSubnetIdsFilterArgs) ElementType() reflect.Type

func (GetSubnetIdsFilterArgs) ToGetSubnetIdsFilterOutput

func (i GetSubnetIdsFilterArgs) ToGetSubnetIdsFilterOutput() GetSubnetIdsFilterOutput

func (GetSubnetIdsFilterArgs) ToGetSubnetIdsFilterOutputWithContext

func (i GetSubnetIdsFilterArgs) ToGetSubnetIdsFilterOutputWithContext(ctx context.Context) GetSubnetIdsFilterOutput

type GetSubnetIdsFilterArray

type GetSubnetIdsFilterArray []GetSubnetIdsFilterInput

func (GetSubnetIdsFilterArray) ElementType

func (GetSubnetIdsFilterArray) ElementType() reflect.Type

func (GetSubnetIdsFilterArray) ToGetSubnetIdsFilterArrayOutput

func (i GetSubnetIdsFilterArray) ToGetSubnetIdsFilterArrayOutput() GetSubnetIdsFilterArrayOutput

func (GetSubnetIdsFilterArray) ToGetSubnetIdsFilterArrayOutputWithContext

func (i GetSubnetIdsFilterArray) ToGetSubnetIdsFilterArrayOutputWithContext(ctx context.Context) GetSubnetIdsFilterArrayOutput

type GetSubnetIdsFilterArrayInput

type GetSubnetIdsFilterArrayInput interface {
	pulumi.Input

	ToGetSubnetIdsFilterArrayOutput() GetSubnetIdsFilterArrayOutput
	ToGetSubnetIdsFilterArrayOutputWithContext(context.Context) GetSubnetIdsFilterArrayOutput
}

GetSubnetIdsFilterArrayInput is an input type that accepts GetSubnetIdsFilterArray and GetSubnetIdsFilterArrayOutput values. You can construct a concrete instance of `GetSubnetIdsFilterArrayInput` via:

GetSubnetIdsFilterArray{ GetSubnetIdsFilterArgs{...} }

type GetSubnetIdsFilterArrayOutput

type GetSubnetIdsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSubnetIdsFilterArrayOutput) ElementType

func (GetSubnetIdsFilterArrayOutput) Index

func (GetSubnetIdsFilterArrayOutput) ToGetSubnetIdsFilterArrayOutput

func (o GetSubnetIdsFilterArrayOutput) ToGetSubnetIdsFilterArrayOutput() GetSubnetIdsFilterArrayOutput

func (GetSubnetIdsFilterArrayOutput) ToGetSubnetIdsFilterArrayOutputWithContext

func (o GetSubnetIdsFilterArrayOutput) ToGetSubnetIdsFilterArrayOutputWithContext(ctx context.Context) GetSubnetIdsFilterArrayOutput

type GetSubnetIdsFilterInput

type GetSubnetIdsFilterInput interface {
	pulumi.Input

	ToGetSubnetIdsFilterOutput() GetSubnetIdsFilterOutput
	ToGetSubnetIdsFilterOutputWithContext(context.Context) GetSubnetIdsFilterOutput
}

GetSubnetIdsFilterInput is an input type that accepts GetSubnetIdsFilterArgs and GetSubnetIdsFilterOutput values. You can construct a concrete instance of `GetSubnetIdsFilterInput` via:

GetSubnetIdsFilterArgs{...}

type GetSubnetIdsFilterOutput

type GetSubnetIdsFilterOutput struct{ *pulumi.OutputState }

func (GetSubnetIdsFilterOutput) ElementType

func (GetSubnetIdsFilterOutput) ElementType() reflect.Type

func (GetSubnetIdsFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html). For example, if matching against tag `Name`, use:

func (GetSubnetIdsFilterOutput) ToGetSubnetIdsFilterOutput

func (o GetSubnetIdsFilterOutput) ToGetSubnetIdsFilterOutput() GetSubnetIdsFilterOutput

func (GetSubnetIdsFilterOutput) ToGetSubnetIdsFilterOutputWithContext

func (o GetSubnetIdsFilterOutput) ToGetSubnetIdsFilterOutputWithContext(ctx context.Context) GetSubnetIdsFilterOutput

func (GetSubnetIdsFilterOutput) Values

Set of values that are accepted for the given field. Subnet IDs will be selected if any one of the given values match.

type GetSubnetIdsResult

type GetSubnetIdsResult struct {
	Filters []GetSubnetIdsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A set of all the subnet ids found. This data source will fail if none are found.
	Ids   []string          `pulumi:"ids"`
	Tags  map[string]string `pulumi:"tags"`
	VpcId string            `pulumi:"vpcId"`
}

A collection of values returned by getSubnetIds.

func GetSubnetIds

func GetSubnetIds(ctx *pulumi.Context, args *GetSubnetIdsArgs, opts ...pulumi.InvokeOption) (*GetSubnetIdsResult, error)

`ec2.getSubnetIds` provides a set of ids for a vpcId

This resource can be useful for getting back a set of subnet ids for a vpc.

type GetTransitGatewayRouteTablesArgs

type GetTransitGatewayRouteTablesArgs struct {
	// Custom filter block as described below.
	Filters []GetTransitGatewayRouteTablesFilter `pulumi:"filters"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired transit gateway route table.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getTransitGatewayRouteTables.

type GetTransitGatewayRouteTablesFilter

type GetTransitGatewayRouteTablesFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayRouteTables.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Transit Gateway Route Table will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetTransitGatewayRouteTablesFilterArgs

type GetTransitGatewayRouteTablesFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayRouteTables.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A Transit Gateway Route Table will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetTransitGatewayRouteTablesFilterArgs) ElementType

func (GetTransitGatewayRouteTablesFilterArgs) ToGetTransitGatewayRouteTablesFilterOutput

func (i GetTransitGatewayRouteTablesFilterArgs) ToGetTransitGatewayRouteTablesFilterOutput() GetTransitGatewayRouteTablesFilterOutput

func (GetTransitGatewayRouteTablesFilterArgs) ToGetTransitGatewayRouteTablesFilterOutputWithContext

func (i GetTransitGatewayRouteTablesFilterArgs) ToGetTransitGatewayRouteTablesFilterOutputWithContext(ctx context.Context) GetTransitGatewayRouteTablesFilterOutput

type GetTransitGatewayRouteTablesFilterArray

type GetTransitGatewayRouteTablesFilterArray []GetTransitGatewayRouteTablesFilterInput

func (GetTransitGatewayRouteTablesFilterArray) ElementType

func (GetTransitGatewayRouteTablesFilterArray) ToGetTransitGatewayRouteTablesFilterArrayOutput

func (i GetTransitGatewayRouteTablesFilterArray) ToGetTransitGatewayRouteTablesFilterArrayOutput() GetTransitGatewayRouteTablesFilterArrayOutput

func (GetTransitGatewayRouteTablesFilterArray) ToGetTransitGatewayRouteTablesFilterArrayOutputWithContext

func (i GetTransitGatewayRouteTablesFilterArray) ToGetTransitGatewayRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetTransitGatewayRouteTablesFilterArrayOutput

type GetTransitGatewayRouteTablesFilterArrayInput

type GetTransitGatewayRouteTablesFilterArrayInput interface {
	pulumi.Input

	ToGetTransitGatewayRouteTablesFilterArrayOutput() GetTransitGatewayRouteTablesFilterArrayOutput
	ToGetTransitGatewayRouteTablesFilterArrayOutputWithContext(context.Context) GetTransitGatewayRouteTablesFilterArrayOutput
}

GetTransitGatewayRouteTablesFilterArrayInput is an input type that accepts GetTransitGatewayRouteTablesFilterArray and GetTransitGatewayRouteTablesFilterArrayOutput values. You can construct a concrete instance of `GetTransitGatewayRouteTablesFilterArrayInput` via:

GetTransitGatewayRouteTablesFilterArray{ GetTransitGatewayRouteTablesFilterArgs{...} }

type GetTransitGatewayRouteTablesFilterArrayOutput

type GetTransitGatewayRouteTablesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetTransitGatewayRouteTablesFilterArrayOutput) ElementType

func (GetTransitGatewayRouteTablesFilterArrayOutput) Index

func (GetTransitGatewayRouteTablesFilterArrayOutput) ToGetTransitGatewayRouteTablesFilterArrayOutput

func (o GetTransitGatewayRouteTablesFilterArrayOutput) ToGetTransitGatewayRouteTablesFilterArrayOutput() GetTransitGatewayRouteTablesFilterArrayOutput

func (GetTransitGatewayRouteTablesFilterArrayOutput) ToGetTransitGatewayRouteTablesFilterArrayOutputWithContext

func (o GetTransitGatewayRouteTablesFilterArrayOutput) ToGetTransitGatewayRouteTablesFilterArrayOutputWithContext(ctx context.Context) GetTransitGatewayRouteTablesFilterArrayOutput

type GetTransitGatewayRouteTablesFilterInput

type GetTransitGatewayRouteTablesFilterInput interface {
	pulumi.Input

	ToGetTransitGatewayRouteTablesFilterOutput() GetTransitGatewayRouteTablesFilterOutput
	ToGetTransitGatewayRouteTablesFilterOutputWithContext(context.Context) GetTransitGatewayRouteTablesFilterOutput
}

GetTransitGatewayRouteTablesFilterInput is an input type that accepts GetTransitGatewayRouteTablesFilterArgs and GetTransitGatewayRouteTablesFilterOutput values. You can construct a concrete instance of `GetTransitGatewayRouteTablesFilterInput` via:

GetTransitGatewayRouteTablesFilterArgs{...}

type GetTransitGatewayRouteTablesFilterOutput

type GetTransitGatewayRouteTablesFilterOutput struct{ *pulumi.OutputState }

func (GetTransitGatewayRouteTablesFilterOutput) ElementType

func (GetTransitGatewayRouteTablesFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayRouteTables.html).

func (GetTransitGatewayRouteTablesFilterOutput) ToGetTransitGatewayRouteTablesFilterOutput

func (o GetTransitGatewayRouteTablesFilterOutput) ToGetTransitGatewayRouteTablesFilterOutput() GetTransitGatewayRouteTablesFilterOutput

func (GetTransitGatewayRouteTablesFilterOutput) ToGetTransitGatewayRouteTablesFilterOutputWithContext

func (o GetTransitGatewayRouteTablesFilterOutput) ToGetTransitGatewayRouteTablesFilterOutputWithContext(ctx context.Context) GetTransitGatewayRouteTablesFilterOutput

func (GetTransitGatewayRouteTablesFilterOutput) Values

Set of values that are accepted for the given field. A Transit Gateway Route Table will be selected if any one of the given values matches.

type GetTransitGatewayRouteTablesResult

type GetTransitGatewayRouteTablesResult struct {
	Filters []GetTransitGatewayRouteTablesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of Transit Gateway Route Table identifiers.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getTransitGatewayRouteTables.

func GetTransitGatewayRouteTables

func GetTransitGatewayRouteTables(ctx *pulumi.Context, args *GetTransitGatewayRouteTablesArgs, opts ...pulumi.InvokeOption) (*GetTransitGatewayRouteTablesResult, error)

Provides information for multiple EC2 Transit Gateway Route Tables, such as their identifiers.

## Example Usage

The following shows outputing all Transit Gateway Route Table Ids.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetTransitGatewayRouteTables(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("example", data.Aws_ec2_transit_gateway_route_table.Example.Ids)
		return nil
	})
}

```

type GetVpcCidrBlockAssociation

type GetVpcCidrBlockAssociation struct {
	// The association ID for the the IPv4 CIDR block.
	AssociationId string `pulumi:"associationId"`
	// The cidr block of the desired VPC.
	CidrBlock string `pulumi:"cidrBlock"`
	// The current state of the desired VPC.
	// Can be either `"pending"` or `"available"`.
	State string `pulumi:"state"`
}

type GetVpcCidrBlockAssociationArgs

type GetVpcCidrBlockAssociationArgs struct {
	// The association ID for the the IPv4 CIDR block.
	AssociationId pulumi.StringInput `pulumi:"associationId"`
	// The cidr block of the desired VPC.
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
	// The current state of the desired VPC.
	// Can be either `"pending"` or `"available"`.
	State pulumi.StringInput `pulumi:"state"`
}

func (GetVpcCidrBlockAssociationArgs) ElementType

func (GetVpcCidrBlockAssociationArgs) ToGetVpcCidrBlockAssociationOutput

func (i GetVpcCidrBlockAssociationArgs) ToGetVpcCidrBlockAssociationOutput() GetVpcCidrBlockAssociationOutput

func (GetVpcCidrBlockAssociationArgs) ToGetVpcCidrBlockAssociationOutputWithContext

func (i GetVpcCidrBlockAssociationArgs) ToGetVpcCidrBlockAssociationOutputWithContext(ctx context.Context) GetVpcCidrBlockAssociationOutput

type GetVpcCidrBlockAssociationArray

type GetVpcCidrBlockAssociationArray []GetVpcCidrBlockAssociationInput

func (GetVpcCidrBlockAssociationArray) ElementType

func (GetVpcCidrBlockAssociationArray) ToGetVpcCidrBlockAssociationArrayOutput

func (i GetVpcCidrBlockAssociationArray) ToGetVpcCidrBlockAssociationArrayOutput() GetVpcCidrBlockAssociationArrayOutput

func (GetVpcCidrBlockAssociationArray) ToGetVpcCidrBlockAssociationArrayOutputWithContext

func (i GetVpcCidrBlockAssociationArray) ToGetVpcCidrBlockAssociationArrayOutputWithContext(ctx context.Context) GetVpcCidrBlockAssociationArrayOutput

type GetVpcCidrBlockAssociationArrayInput

type GetVpcCidrBlockAssociationArrayInput interface {
	pulumi.Input

	ToGetVpcCidrBlockAssociationArrayOutput() GetVpcCidrBlockAssociationArrayOutput
	ToGetVpcCidrBlockAssociationArrayOutputWithContext(context.Context) GetVpcCidrBlockAssociationArrayOutput
}

GetVpcCidrBlockAssociationArrayInput is an input type that accepts GetVpcCidrBlockAssociationArray and GetVpcCidrBlockAssociationArrayOutput values. You can construct a concrete instance of `GetVpcCidrBlockAssociationArrayInput` via:

GetVpcCidrBlockAssociationArray{ GetVpcCidrBlockAssociationArgs{...} }

type GetVpcCidrBlockAssociationArrayOutput

type GetVpcCidrBlockAssociationArrayOutput struct{ *pulumi.OutputState }

func (GetVpcCidrBlockAssociationArrayOutput) ElementType

func (GetVpcCidrBlockAssociationArrayOutput) Index

func (GetVpcCidrBlockAssociationArrayOutput) ToGetVpcCidrBlockAssociationArrayOutput

func (o GetVpcCidrBlockAssociationArrayOutput) ToGetVpcCidrBlockAssociationArrayOutput() GetVpcCidrBlockAssociationArrayOutput

func (GetVpcCidrBlockAssociationArrayOutput) ToGetVpcCidrBlockAssociationArrayOutputWithContext

func (o GetVpcCidrBlockAssociationArrayOutput) ToGetVpcCidrBlockAssociationArrayOutputWithContext(ctx context.Context) GetVpcCidrBlockAssociationArrayOutput

type GetVpcCidrBlockAssociationInput

type GetVpcCidrBlockAssociationInput interface {
	pulumi.Input

	ToGetVpcCidrBlockAssociationOutput() GetVpcCidrBlockAssociationOutput
	ToGetVpcCidrBlockAssociationOutputWithContext(context.Context) GetVpcCidrBlockAssociationOutput
}

GetVpcCidrBlockAssociationInput is an input type that accepts GetVpcCidrBlockAssociationArgs and GetVpcCidrBlockAssociationOutput values. You can construct a concrete instance of `GetVpcCidrBlockAssociationInput` via:

GetVpcCidrBlockAssociationArgs{...}

type GetVpcCidrBlockAssociationOutput

type GetVpcCidrBlockAssociationOutput struct{ *pulumi.OutputState }

func (GetVpcCidrBlockAssociationOutput) AssociationId

The association ID for the the IPv4 CIDR block.

func (GetVpcCidrBlockAssociationOutput) CidrBlock

The cidr block of the desired VPC.

func (GetVpcCidrBlockAssociationOutput) ElementType

func (GetVpcCidrBlockAssociationOutput) State

The current state of the desired VPC. Can be either `"pending"` or `"available"`.

func (GetVpcCidrBlockAssociationOutput) ToGetVpcCidrBlockAssociationOutput

func (o GetVpcCidrBlockAssociationOutput) ToGetVpcCidrBlockAssociationOutput() GetVpcCidrBlockAssociationOutput

func (GetVpcCidrBlockAssociationOutput) ToGetVpcCidrBlockAssociationOutputWithContext

func (o GetVpcCidrBlockAssociationOutput) ToGetVpcCidrBlockAssociationOutputWithContext(ctx context.Context) GetVpcCidrBlockAssociationOutput

type GetVpcDhcpOptionsFilter

type GetVpcDhcpOptionsFilter struct {
	// The name of the field to filter.
	Name string `pulumi:"name"`
	// Set of values for filtering.
	Values []string `pulumi:"values"`
}

type GetVpcDhcpOptionsFilterArgs

type GetVpcDhcpOptionsFilterArgs struct {
	// The name of the field to filter.
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values for filtering.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcDhcpOptionsFilterArgs) ElementType

func (GetVpcDhcpOptionsFilterArgs) ToGetVpcDhcpOptionsFilterOutput

func (i GetVpcDhcpOptionsFilterArgs) ToGetVpcDhcpOptionsFilterOutput() GetVpcDhcpOptionsFilterOutput

func (GetVpcDhcpOptionsFilterArgs) ToGetVpcDhcpOptionsFilterOutputWithContext

func (i GetVpcDhcpOptionsFilterArgs) ToGetVpcDhcpOptionsFilterOutputWithContext(ctx context.Context) GetVpcDhcpOptionsFilterOutput

type GetVpcDhcpOptionsFilterArray

type GetVpcDhcpOptionsFilterArray []GetVpcDhcpOptionsFilterInput

func (GetVpcDhcpOptionsFilterArray) ElementType

func (GetVpcDhcpOptionsFilterArray) ToGetVpcDhcpOptionsFilterArrayOutput

func (i GetVpcDhcpOptionsFilterArray) ToGetVpcDhcpOptionsFilterArrayOutput() GetVpcDhcpOptionsFilterArrayOutput

func (GetVpcDhcpOptionsFilterArray) ToGetVpcDhcpOptionsFilterArrayOutputWithContext

func (i GetVpcDhcpOptionsFilterArray) ToGetVpcDhcpOptionsFilterArrayOutputWithContext(ctx context.Context) GetVpcDhcpOptionsFilterArrayOutput

type GetVpcDhcpOptionsFilterArrayInput

type GetVpcDhcpOptionsFilterArrayInput interface {
	pulumi.Input

	ToGetVpcDhcpOptionsFilterArrayOutput() GetVpcDhcpOptionsFilterArrayOutput
	ToGetVpcDhcpOptionsFilterArrayOutputWithContext(context.Context) GetVpcDhcpOptionsFilterArrayOutput
}

GetVpcDhcpOptionsFilterArrayInput is an input type that accepts GetVpcDhcpOptionsFilterArray and GetVpcDhcpOptionsFilterArrayOutput values. You can construct a concrete instance of `GetVpcDhcpOptionsFilterArrayInput` via:

GetVpcDhcpOptionsFilterArray{ GetVpcDhcpOptionsFilterArgs{...} }

type GetVpcDhcpOptionsFilterArrayOutput

type GetVpcDhcpOptionsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcDhcpOptionsFilterArrayOutput) ElementType

func (GetVpcDhcpOptionsFilterArrayOutput) Index

func (GetVpcDhcpOptionsFilterArrayOutput) ToGetVpcDhcpOptionsFilterArrayOutput

func (o GetVpcDhcpOptionsFilterArrayOutput) ToGetVpcDhcpOptionsFilterArrayOutput() GetVpcDhcpOptionsFilterArrayOutput

func (GetVpcDhcpOptionsFilterArrayOutput) ToGetVpcDhcpOptionsFilterArrayOutputWithContext

func (o GetVpcDhcpOptionsFilterArrayOutput) ToGetVpcDhcpOptionsFilterArrayOutputWithContext(ctx context.Context) GetVpcDhcpOptionsFilterArrayOutput

type GetVpcDhcpOptionsFilterInput

type GetVpcDhcpOptionsFilterInput interface {
	pulumi.Input

	ToGetVpcDhcpOptionsFilterOutput() GetVpcDhcpOptionsFilterOutput
	ToGetVpcDhcpOptionsFilterOutputWithContext(context.Context) GetVpcDhcpOptionsFilterOutput
}

GetVpcDhcpOptionsFilterInput is an input type that accepts GetVpcDhcpOptionsFilterArgs and GetVpcDhcpOptionsFilterOutput values. You can construct a concrete instance of `GetVpcDhcpOptionsFilterInput` via:

GetVpcDhcpOptionsFilterArgs{...}

type GetVpcDhcpOptionsFilterOutput

type GetVpcDhcpOptionsFilterOutput struct{ *pulumi.OutputState }

func (GetVpcDhcpOptionsFilterOutput) ElementType

func (GetVpcDhcpOptionsFilterOutput) Name

The name of the field to filter.

func (GetVpcDhcpOptionsFilterOutput) ToGetVpcDhcpOptionsFilterOutput

func (o GetVpcDhcpOptionsFilterOutput) ToGetVpcDhcpOptionsFilterOutput() GetVpcDhcpOptionsFilterOutput

func (GetVpcDhcpOptionsFilterOutput) ToGetVpcDhcpOptionsFilterOutputWithContext

func (o GetVpcDhcpOptionsFilterOutput) ToGetVpcDhcpOptionsFilterOutputWithContext(ctx context.Context) GetVpcDhcpOptionsFilterOutput

func (GetVpcDhcpOptionsFilterOutput) Values

Set of values for filtering.

type GetVpcEndpointDnsEntry

type GetVpcEndpointDnsEntry struct {
	// The DNS name.
	DnsName string `pulumi:"dnsName"`
	// The ID of the private hosted zone.
	HostedZoneId string `pulumi:"hostedZoneId"`
}

type GetVpcEndpointDnsEntryArgs

type GetVpcEndpointDnsEntryArgs struct {
	// The DNS name.
	DnsName pulumi.StringInput `pulumi:"dnsName"`
	// The ID of the private hosted zone.
	HostedZoneId pulumi.StringInput `pulumi:"hostedZoneId"`
}

func (GetVpcEndpointDnsEntryArgs) ElementType

func (GetVpcEndpointDnsEntryArgs) ElementType() reflect.Type

func (GetVpcEndpointDnsEntryArgs) ToGetVpcEndpointDnsEntryOutput

func (i GetVpcEndpointDnsEntryArgs) ToGetVpcEndpointDnsEntryOutput() GetVpcEndpointDnsEntryOutput

func (GetVpcEndpointDnsEntryArgs) ToGetVpcEndpointDnsEntryOutputWithContext

func (i GetVpcEndpointDnsEntryArgs) ToGetVpcEndpointDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointDnsEntryOutput

type GetVpcEndpointDnsEntryArray

type GetVpcEndpointDnsEntryArray []GetVpcEndpointDnsEntryInput

func (GetVpcEndpointDnsEntryArray) ElementType

func (GetVpcEndpointDnsEntryArray) ToGetVpcEndpointDnsEntryArrayOutput

func (i GetVpcEndpointDnsEntryArray) ToGetVpcEndpointDnsEntryArrayOutput() GetVpcEndpointDnsEntryArrayOutput

func (GetVpcEndpointDnsEntryArray) ToGetVpcEndpointDnsEntryArrayOutputWithContext

func (i GetVpcEndpointDnsEntryArray) ToGetVpcEndpointDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointDnsEntryArrayOutput

type GetVpcEndpointDnsEntryArrayInput

type GetVpcEndpointDnsEntryArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointDnsEntryArrayOutput() GetVpcEndpointDnsEntryArrayOutput
	ToGetVpcEndpointDnsEntryArrayOutputWithContext(context.Context) GetVpcEndpointDnsEntryArrayOutput
}

GetVpcEndpointDnsEntryArrayInput is an input type that accepts GetVpcEndpointDnsEntryArray and GetVpcEndpointDnsEntryArrayOutput values. You can construct a concrete instance of `GetVpcEndpointDnsEntryArrayInput` via:

GetVpcEndpointDnsEntryArray{ GetVpcEndpointDnsEntryArgs{...} }

type GetVpcEndpointDnsEntryArrayOutput

type GetVpcEndpointDnsEntryArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointDnsEntryArrayOutput) ElementType

func (GetVpcEndpointDnsEntryArrayOutput) Index

func (GetVpcEndpointDnsEntryArrayOutput) ToGetVpcEndpointDnsEntryArrayOutput

func (o GetVpcEndpointDnsEntryArrayOutput) ToGetVpcEndpointDnsEntryArrayOutput() GetVpcEndpointDnsEntryArrayOutput

func (GetVpcEndpointDnsEntryArrayOutput) ToGetVpcEndpointDnsEntryArrayOutputWithContext

func (o GetVpcEndpointDnsEntryArrayOutput) ToGetVpcEndpointDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointDnsEntryArrayOutput

type GetVpcEndpointDnsEntryInput

type GetVpcEndpointDnsEntryInput interface {
	pulumi.Input

	ToGetVpcEndpointDnsEntryOutput() GetVpcEndpointDnsEntryOutput
	ToGetVpcEndpointDnsEntryOutputWithContext(context.Context) GetVpcEndpointDnsEntryOutput
}

GetVpcEndpointDnsEntryInput is an input type that accepts GetVpcEndpointDnsEntryArgs and GetVpcEndpointDnsEntryOutput values. You can construct a concrete instance of `GetVpcEndpointDnsEntryInput` via:

GetVpcEndpointDnsEntryArgs{...}

type GetVpcEndpointDnsEntryOutput

type GetVpcEndpointDnsEntryOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointDnsEntryOutput) DnsName

The DNS name.

func (GetVpcEndpointDnsEntryOutput) ElementType

func (GetVpcEndpointDnsEntryOutput) HostedZoneId

The ID of the private hosted zone.

func (GetVpcEndpointDnsEntryOutput) ToGetVpcEndpointDnsEntryOutput

func (o GetVpcEndpointDnsEntryOutput) ToGetVpcEndpointDnsEntryOutput() GetVpcEndpointDnsEntryOutput

func (GetVpcEndpointDnsEntryOutput) ToGetVpcEndpointDnsEntryOutputWithContext

func (o GetVpcEndpointDnsEntryOutput) ToGetVpcEndpointDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointDnsEntryOutput

type GetVpcEndpointFilter

type GetVpcEndpointFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpoints.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Endpoint will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpcEndpointFilterArgs

type GetVpcEndpointFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpoints.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Endpoint will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcEndpointFilterArgs) ElementType

func (GetVpcEndpointFilterArgs) ElementType() reflect.Type

func (GetVpcEndpointFilterArgs) ToGetVpcEndpointFilterOutput

func (i GetVpcEndpointFilterArgs) ToGetVpcEndpointFilterOutput() GetVpcEndpointFilterOutput

func (GetVpcEndpointFilterArgs) ToGetVpcEndpointFilterOutputWithContext

func (i GetVpcEndpointFilterArgs) ToGetVpcEndpointFilterOutputWithContext(ctx context.Context) GetVpcEndpointFilterOutput

type GetVpcEndpointFilterArray

type GetVpcEndpointFilterArray []GetVpcEndpointFilterInput

func (GetVpcEndpointFilterArray) ElementType

func (GetVpcEndpointFilterArray) ElementType() reflect.Type

func (GetVpcEndpointFilterArray) ToGetVpcEndpointFilterArrayOutput

func (i GetVpcEndpointFilterArray) ToGetVpcEndpointFilterArrayOutput() GetVpcEndpointFilterArrayOutput

func (GetVpcEndpointFilterArray) ToGetVpcEndpointFilterArrayOutputWithContext

func (i GetVpcEndpointFilterArray) ToGetVpcEndpointFilterArrayOutputWithContext(ctx context.Context) GetVpcEndpointFilterArrayOutput

type GetVpcEndpointFilterArrayInput

type GetVpcEndpointFilterArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointFilterArrayOutput() GetVpcEndpointFilterArrayOutput
	ToGetVpcEndpointFilterArrayOutputWithContext(context.Context) GetVpcEndpointFilterArrayOutput
}

GetVpcEndpointFilterArrayInput is an input type that accepts GetVpcEndpointFilterArray and GetVpcEndpointFilterArrayOutput values. You can construct a concrete instance of `GetVpcEndpointFilterArrayInput` via:

GetVpcEndpointFilterArray{ GetVpcEndpointFilterArgs{...} }

type GetVpcEndpointFilterArrayOutput

type GetVpcEndpointFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointFilterArrayOutput) ElementType

func (GetVpcEndpointFilterArrayOutput) Index

func (GetVpcEndpointFilterArrayOutput) ToGetVpcEndpointFilterArrayOutput

func (o GetVpcEndpointFilterArrayOutput) ToGetVpcEndpointFilterArrayOutput() GetVpcEndpointFilterArrayOutput

func (GetVpcEndpointFilterArrayOutput) ToGetVpcEndpointFilterArrayOutputWithContext

func (o GetVpcEndpointFilterArrayOutput) ToGetVpcEndpointFilterArrayOutputWithContext(ctx context.Context) GetVpcEndpointFilterArrayOutput

type GetVpcEndpointFilterInput

type GetVpcEndpointFilterInput interface {
	pulumi.Input

	ToGetVpcEndpointFilterOutput() GetVpcEndpointFilterOutput
	ToGetVpcEndpointFilterOutputWithContext(context.Context) GetVpcEndpointFilterOutput
}

GetVpcEndpointFilterInput is an input type that accepts GetVpcEndpointFilterArgs and GetVpcEndpointFilterOutput values. You can construct a concrete instance of `GetVpcEndpointFilterInput` via:

GetVpcEndpointFilterArgs{...}

type GetVpcEndpointFilterOutput

type GetVpcEndpointFilterOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointFilterOutput) ElementType

func (GetVpcEndpointFilterOutput) ElementType() reflect.Type

func (GetVpcEndpointFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpoints.html).

func (GetVpcEndpointFilterOutput) ToGetVpcEndpointFilterOutput

func (o GetVpcEndpointFilterOutput) ToGetVpcEndpointFilterOutput() GetVpcEndpointFilterOutput

func (GetVpcEndpointFilterOutput) ToGetVpcEndpointFilterOutputWithContext

func (o GetVpcEndpointFilterOutput) ToGetVpcEndpointFilterOutputWithContext(ctx context.Context) GetVpcEndpointFilterOutput

func (GetVpcEndpointFilterOutput) Values

Set of values that are accepted for the given field. A VPC Endpoint will be selected if any one of the given values matches.

type GetVpcEndpointServiceFilter

type GetVpcEndpointServiceFilter struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeVpcEndpointServices API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpointServices.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetVpcEndpointServiceFilterArgs

type GetVpcEndpointServiceFilterArgs struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeVpcEndpointServices API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpointServices.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcEndpointServiceFilterArgs) ElementType

func (GetVpcEndpointServiceFilterArgs) ToGetVpcEndpointServiceFilterOutput

func (i GetVpcEndpointServiceFilterArgs) ToGetVpcEndpointServiceFilterOutput() GetVpcEndpointServiceFilterOutput

func (GetVpcEndpointServiceFilterArgs) ToGetVpcEndpointServiceFilterOutputWithContext

func (i GetVpcEndpointServiceFilterArgs) ToGetVpcEndpointServiceFilterOutputWithContext(ctx context.Context) GetVpcEndpointServiceFilterOutput

type GetVpcEndpointServiceFilterArray

type GetVpcEndpointServiceFilterArray []GetVpcEndpointServiceFilterInput

func (GetVpcEndpointServiceFilterArray) ElementType

func (GetVpcEndpointServiceFilterArray) ToGetVpcEndpointServiceFilterArrayOutput

func (i GetVpcEndpointServiceFilterArray) ToGetVpcEndpointServiceFilterArrayOutput() GetVpcEndpointServiceFilterArrayOutput

func (GetVpcEndpointServiceFilterArray) ToGetVpcEndpointServiceFilterArrayOutputWithContext

func (i GetVpcEndpointServiceFilterArray) ToGetVpcEndpointServiceFilterArrayOutputWithContext(ctx context.Context) GetVpcEndpointServiceFilterArrayOutput

type GetVpcEndpointServiceFilterArrayInput

type GetVpcEndpointServiceFilterArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointServiceFilterArrayOutput() GetVpcEndpointServiceFilterArrayOutput
	ToGetVpcEndpointServiceFilterArrayOutputWithContext(context.Context) GetVpcEndpointServiceFilterArrayOutput
}

GetVpcEndpointServiceFilterArrayInput is an input type that accepts GetVpcEndpointServiceFilterArray and GetVpcEndpointServiceFilterArrayOutput values. You can construct a concrete instance of `GetVpcEndpointServiceFilterArrayInput` via:

GetVpcEndpointServiceFilterArray{ GetVpcEndpointServiceFilterArgs{...} }

type GetVpcEndpointServiceFilterArrayOutput

type GetVpcEndpointServiceFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointServiceFilterArrayOutput) ElementType

func (GetVpcEndpointServiceFilterArrayOutput) Index

func (GetVpcEndpointServiceFilterArrayOutput) ToGetVpcEndpointServiceFilterArrayOutput

func (o GetVpcEndpointServiceFilterArrayOutput) ToGetVpcEndpointServiceFilterArrayOutput() GetVpcEndpointServiceFilterArrayOutput

func (GetVpcEndpointServiceFilterArrayOutput) ToGetVpcEndpointServiceFilterArrayOutputWithContext

func (o GetVpcEndpointServiceFilterArrayOutput) ToGetVpcEndpointServiceFilterArrayOutputWithContext(ctx context.Context) GetVpcEndpointServiceFilterArrayOutput

type GetVpcEndpointServiceFilterInput

type GetVpcEndpointServiceFilterInput interface {
	pulumi.Input

	ToGetVpcEndpointServiceFilterOutput() GetVpcEndpointServiceFilterOutput
	ToGetVpcEndpointServiceFilterOutputWithContext(context.Context) GetVpcEndpointServiceFilterOutput
}

GetVpcEndpointServiceFilterInput is an input type that accepts GetVpcEndpointServiceFilterArgs and GetVpcEndpointServiceFilterOutput values. You can construct a concrete instance of `GetVpcEndpointServiceFilterInput` via:

GetVpcEndpointServiceFilterArgs{...}

type GetVpcEndpointServiceFilterOutput

type GetVpcEndpointServiceFilterOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointServiceFilterOutput) ElementType

func (GetVpcEndpointServiceFilterOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribeVpcEndpointServices API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpointServices.html).

func (GetVpcEndpointServiceFilterOutput) ToGetVpcEndpointServiceFilterOutput

func (o GetVpcEndpointServiceFilterOutput) ToGetVpcEndpointServiceFilterOutput() GetVpcEndpointServiceFilterOutput

func (GetVpcEndpointServiceFilterOutput) ToGetVpcEndpointServiceFilterOutputWithContext

func (o GetVpcEndpointServiceFilterOutput) ToGetVpcEndpointServiceFilterOutputWithContext(ctx context.Context) GetVpcEndpointServiceFilterOutput

func (GetVpcEndpointServiceFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetVpcFilter

type GetVpcFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpcFilterArgs

type GetVpcFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcFilterArgs) ElementType

func (GetVpcFilterArgs) ElementType() reflect.Type

func (GetVpcFilterArgs) ToGetVpcFilterOutput

func (i GetVpcFilterArgs) ToGetVpcFilterOutput() GetVpcFilterOutput

func (GetVpcFilterArgs) ToGetVpcFilterOutputWithContext

func (i GetVpcFilterArgs) ToGetVpcFilterOutputWithContext(ctx context.Context) GetVpcFilterOutput

type GetVpcFilterArray

type GetVpcFilterArray []GetVpcFilterInput

func (GetVpcFilterArray) ElementType

func (GetVpcFilterArray) ElementType() reflect.Type

func (GetVpcFilterArray) ToGetVpcFilterArrayOutput

func (i GetVpcFilterArray) ToGetVpcFilterArrayOutput() GetVpcFilterArrayOutput

func (GetVpcFilterArray) ToGetVpcFilterArrayOutputWithContext

func (i GetVpcFilterArray) ToGetVpcFilterArrayOutputWithContext(ctx context.Context) GetVpcFilterArrayOutput

type GetVpcFilterArrayInput

type GetVpcFilterArrayInput interface {
	pulumi.Input

	ToGetVpcFilterArrayOutput() GetVpcFilterArrayOutput
	ToGetVpcFilterArrayOutputWithContext(context.Context) GetVpcFilterArrayOutput
}

GetVpcFilterArrayInput is an input type that accepts GetVpcFilterArray and GetVpcFilterArrayOutput values. You can construct a concrete instance of `GetVpcFilterArrayInput` via:

GetVpcFilterArray{ GetVpcFilterArgs{...} }

type GetVpcFilterArrayOutput

type GetVpcFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcFilterArrayOutput) ElementType

func (GetVpcFilterArrayOutput) ElementType() reflect.Type

func (GetVpcFilterArrayOutput) Index

func (GetVpcFilterArrayOutput) ToGetVpcFilterArrayOutput

func (o GetVpcFilterArrayOutput) ToGetVpcFilterArrayOutput() GetVpcFilterArrayOutput

func (GetVpcFilterArrayOutput) ToGetVpcFilterArrayOutputWithContext

func (o GetVpcFilterArrayOutput) ToGetVpcFilterArrayOutputWithContext(ctx context.Context) GetVpcFilterArrayOutput

type GetVpcFilterInput

type GetVpcFilterInput interface {
	pulumi.Input

	ToGetVpcFilterOutput() GetVpcFilterOutput
	ToGetVpcFilterOutputWithContext(context.Context) GetVpcFilterOutput
}

GetVpcFilterInput is an input type that accepts GetVpcFilterArgs and GetVpcFilterOutput values. You can construct a concrete instance of `GetVpcFilterInput` via:

GetVpcFilterArgs{...}

type GetVpcFilterOutput

type GetVpcFilterOutput struct{ *pulumi.OutputState }

func (GetVpcFilterOutput) ElementType

func (GetVpcFilterOutput) ElementType() reflect.Type

func (GetVpcFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).

func (GetVpcFilterOutput) ToGetVpcFilterOutput

func (o GetVpcFilterOutput) ToGetVpcFilterOutput() GetVpcFilterOutput

func (GetVpcFilterOutput) ToGetVpcFilterOutputWithContext

func (o GetVpcFilterOutput) ToGetVpcFilterOutputWithContext(ctx context.Context) GetVpcFilterOutput

func (GetVpcFilterOutput) Values

Set of values that are accepted for the given field. A VPC will be selected if any one of the given values matches.

type GetVpcPeeringConnectionCidrBlockSet

type GetVpcPeeringConnectionCidrBlockSet struct {
	// The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.
	CidrBlock string `pulumi:"cidrBlock"`
}

type GetVpcPeeringConnectionCidrBlockSetArgs

type GetVpcPeeringConnectionCidrBlockSetArgs struct {
	// The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
}

func (GetVpcPeeringConnectionCidrBlockSetArgs) ElementType

func (GetVpcPeeringConnectionCidrBlockSetArgs) ToGetVpcPeeringConnectionCidrBlockSetOutput

func (i GetVpcPeeringConnectionCidrBlockSetArgs) ToGetVpcPeeringConnectionCidrBlockSetOutput() GetVpcPeeringConnectionCidrBlockSetOutput

func (GetVpcPeeringConnectionCidrBlockSetArgs) ToGetVpcPeeringConnectionCidrBlockSetOutputWithContext

func (i GetVpcPeeringConnectionCidrBlockSetArgs) ToGetVpcPeeringConnectionCidrBlockSetOutputWithContext(ctx context.Context) GetVpcPeeringConnectionCidrBlockSetOutput

type GetVpcPeeringConnectionCidrBlockSetArray

type GetVpcPeeringConnectionCidrBlockSetArray []GetVpcPeeringConnectionCidrBlockSetInput

func (GetVpcPeeringConnectionCidrBlockSetArray) ElementType

func (GetVpcPeeringConnectionCidrBlockSetArray) ToGetVpcPeeringConnectionCidrBlockSetArrayOutput

func (i GetVpcPeeringConnectionCidrBlockSetArray) ToGetVpcPeeringConnectionCidrBlockSetArrayOutput() GetVpcPeeringConnectionCidrBlockSetArrayOutput

func (GetVpcPeeringConnectionCidrBlockSetArray) ToGetVpcPeeringConnectionCidrBlockSetArrayOutputWithContext

func (i GetVpcPeeringConnectionCidrBlockSetArray) ToGetVpcPeeringConnectionCidrBlockSetArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionCidrBlockSetArrayOutput

type GetVpcPeeringConnectionCidrBlockSetArrayInput

type GetVpcPeeringConnectionCidrBlockSetArrayInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionCidrBlockSetArrayOutput() GetVpcPeeringConnectionCidrBlockSetArrayOutput
	ToGetVpcPeeringConnectionCidrBlockSetArrayOutputWithContext(context.Context) GetVpcPeeringConnectionCidrBlockSetArrayOutput
}

GetVpcPeeringConnectionCidrBlockSetArrayInput is an input type that accepts GetVpcPeeringConnectionCidrBlockSetArray and GetVpcPeeringConnectionCidrBlockSetArrayOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionCidrBlockSetArrayInput` via:

GetVpcPeeringConnectionCidrBlockSetArray{ GetVpcPeeringConnectionCidrBlockSetArgs{...} }

type GetVpcPeeringConnectionCidrBlockSetArrayOutput

type GetVpcPeeringConnectionCidrBlockSetArrayOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionCidrBlockSetArrayOutput) ElementType

func (GetVpcPeeringConnectionCidrBlockSetArrayOutput) Index

func (GetVpcPeeringConnectionCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionCidrBlockSetArrayOutput

func (o GetVpcPeeringConnectionCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionCidrBlockSetArrayOutput() GetVpcPeeringConnectionCidrBlockSetArrayOutput

func (GetVpcPeeringConnectionCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionCidrBlockSetArrayOutputWithContext

func (o GetVpcPeeringConnectionCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionCidrBlockSetArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionCidrBlockSetArrayOutput

type GetVpcPeeringConnectionCidrBlockSetInput

type GetVpcPeeringConnectionCidrBlockSetInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionCidrBlockSetOutput() GetVpcPeeringConnectionCidrBlockSetOutput
	ToGetVpcPeeringConnectionCidrBlockSetOutputWithContext(context.Context) GetVpcPeeringConnectionCidrBlockSetOutput
}

GetVpcPeeringConnectionCidrBlockSetInput is an input type that accepts GetVpcPeeringConnectionCidrBlockSetArgs and GetVpcPeeringConnectionCidrBlockSetOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionCidrBlockSetInput` via:

GetVpcPeeringConnectionCidrBlockSetArgs{...}

type GetVpcPeeringConnectionCidrBlockSetOutput

type GetVpcPeeringConnectionCidrBlockSetOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionCidrBlockSetOutput) CidrBlock

The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.

func (GetVpcPeeringConnectionCidrBlockSetOutput) ElementType

func (GetVpcPeeringConnectionCidrBlockSetOutput) ToGetVpcPeeringConnectionCidrBlockSetOutput

func (o GetVpcPeeringConnectionCidrBlockSetOutput) ToGetVpcPeeringConnectionCidrBlockSetOutput() GetVpcPeeringConnectionCidrBlockSetOutput

func (GetVpcPeeringConnectionCidrBlockSetOutput) ToGetVpcPeeringConnectionCidrBlockSetOutputWithContext

func (o GetVpcPeeringConnectionCidrBlockSetOutput) ToGetVpcPeeringConnectionCidrBlockSetOutputWithContext(ctx context.Context) GetVpcPeeringConnectionCidrBlockSetOutput

type GetVpcPeeringConnectionFilter

type GetVpcPeeringConnectionFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Peering Connection will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpcPeeringConnectionFilterArgs

type GetVpcPeeringConnectionFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Peering Connection will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcPeeringConnectionFilterArgs) ElementType

func (GetVpcPeeringConnectionFilterArgs) ToGetVpcPeeringConnectionFilterOutput

func (i GetVpcPeeringConnectionFilterArgs) ToGetVpcPeeringConnectionFilterOutput() GetVpcPeeringConnectionFilterOutput

func (GetVpcPeeringConnectionFilterArgs) ToGetVpcPeeringConnectionFilterOutputWithContext

func (i GetVpcPeeringConnectionFilterArgs) ToGetVpcPeeringConnectionFilterOutputWithContext(ctx context.Context) GetVpcPeeringConnectionFilterOutput

type GetVpcPeeringConnectionFilterArray

type GetVpcPeeringConnectionFilterArray []GetVpcPeeringConnectionFilterInput

func (GetVpcPeeringConnectionFilterArray) ElementType

func (GetVpcPeeringConnectionFilterArray) ToGetVpcPeeringConnectionFilterArrayOutput

func (i GetVpcPeeringConnectionFilterArray) ToGetVpcPeeringConnectionFilterArrayOutput() GetVpcPeeringConnectionFilterArrayOutput

func (GetVpcPeeringConnectionFilterArray) ToGetVpcPeeringConnectionFilterArrayOutputWithContext

func (i GetVpcPeeringConnectionFilterArray) ToGetVpcPeeringConnectionFilterArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionFilterArrayOutput

type GetVpcPeeringConnectionFilterArrayInput

type GetVpcPeeringConnectionFilterArrayInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionFilterArrayOutput() GetVpcPeeringConnectionFilterArrayOutput
	ToGetVpcPeeringConnectionFilterArrayOutputWithContext(context.Context) GetVpcPeeringConnectionFilterArrayOutput
}

GetVpcPeeringConnectionFilterArrayInput is an input type that accepts GetVpcPeeringConnectionFilterArray and GetVpcPeeringConnectionFilterArrayOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionFilterArrayInput` via:

GetVpcPeeringConnectionFilterArray{ GetVpcPeeringConnectionFilterArgs{...} }

type GetVpcPeeringConnectionFilterArrayOutput

type GetVpcPeeringConnectionFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionFilterArrayOutput) ElementType

func (GetVpcPeeringConnectionFilterArrayOutput) Index

func (GetVpcPeeringConnectionFilterArrayOutput) ToGetVpcPeeringConnectionFilterArrayOutput

func (o GetVpcPeeringConnectionFilterArrayOutput) ToGetVpcPeeringConnectionFilterArrayOutput() GetVpcPeeringConnectionFilterArrayOutput

func (GetVpcPeeringConnectionFilterArrayOutput) ToGetVpcPeeringConnectionFilterArrayOutputWithContext

func (o GetVpcPeeringConnectionFilterArrayOutput) ToGetVpcPeeringConnectionFilterArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionFilterArrayOutput

type GetVpcPeeringConnectionFilterInput

type GetVpcPeeringConnectionFilterInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionFilterOutput() GetVpcPeeringConnectionFilterOutput
	ToGetVpcPeeringConnectionFilterOutputWithContext(context.Context) GetVpcPeeringConnectionFilterOutput
}

GetVpcPeeringConnectionFilterInput is an input type that accepts GetVpcPeeringConnectionFilterArgs and GetVpcPeeringConnectionFilterOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionFilterInput` via:

GetVpcPeeringConnectionFilterArgs{...}

type GetVpcPeeringConnectionFilterOutput

type GetVpcPeeringConnectionFilterOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionFilterOutput) ElementType

func (GetVpcPeeringConnectionFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).

func (GetVpcPeeringConnectionFilterOutput) ToGetVpcPeeringConnectionFilterOutput

func (o GetVpcPeeringConnectionFilterOutput) ToGetVpcPeeringConnectionFilterOutput() GetVpcPeeringConnectionFilterOutput

func (GetVpcPeeringConnectionFilterOutput) ToGetVpcPeeringConnectionFilterOutputWithContext

func (o GetVpcPeeringConnectionFilterOutput) ToGetVpcPeeringConnectionFilterOutputWithContext(ctx context.Context) GetVpcPeeringConnectionFilterOutput

func (GetVpcPeeringConnectionFilterOutput) Values

Set of values that are accepted for the given field. A VPC Peering Connection will be selected if any one of the given values matches.

type GetVpcPeeringConnectionPeerCidrBlockSet

type GetVpcPeeringConnectionPeerCidrBlockSet struct {
	// The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.
	CidrBlock string `pulumi:"cidrBlock"`
}

type GetVpcPeeringConnectionPeerCidrBlockSetArgs

type GetVpcPeeringConnectionPeerCidrBlockSetArgs struct {
	// The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
}

func (GetVpcPeeringConnectionPeerCidrBlockSetArgs) ElementType

func (GetVpcPeeringConnectionPeerCidrBlockSetArgs) ToGetVpcPeeringConnectionPeerCidrBlockSetOutput

func (i GetVpcPeeringConnectionPeerCidrBlockSetArgs) ToGetVpcPeeringConnectionPeerCidrBlockSetOutput() GetVpcPeeringConnectionPeerCidrBlockSetOutput

func (GetVpcPeeringConnectionPeerCidrBlockSetArgs) ToGetVpcPeeringConnectionPeerCidrBlockSetOutputWithContext

func (i GetVpcPeeringConnectionPeerCidrBlockSetArgs) ToGetVpcPeeringConnectionPeerCidrBlockSetOutputWithContext(ctx context.Context) GetVpcPeeringConnectionPeerCidrBlockSetOutput

type GetVpcPeeringConnectionPeerCidrBlockSetArray

type GetVpcPeeringConnectionPeerCidrBlockSetArray []GetVpcPeeringConnectionPeerCidrBlockSetInput

func (GetVpcPeeringConnectionPeerCidrBlockSetArray) ElementType

func (GetVpcPeeringConnectionPeerCidrBlockSetArray) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

func (i GetVpcPeeringConnectionPeerCidrBlockSetArray) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutput() GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

func (GetVpcPeeringConnectionPeerCidrBlockSetArray) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutputWithContext

func (i GetVpcPeeringConnectionPeerCidrBlockSetArray) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

type GetVpcPeeringConnectionPeerCidrBlockSetArrayInput

type GetVpcPeeringConnectionPeerCidrBlockSetArrayInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutput() GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput
	ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutputWithContext(context.Context) GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput
}

GetVpcPeeringConnectionPeerCidrBlockSetArrayInput is an input type that accepts GetVpcPeeringConnectionPeerCidrBlockSetArray and GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionPeerCidrBlockSetArrayInput` via:

GetVpcPeeringConnectionPeerCidrBlockSetArray{ GetVpcPeeringConnectionPeerCidrBlockSetArgs{...} }

type GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

type GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) ElementType

func (GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) Index

func (GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

func (o GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutput() GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

func (GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutputWithContext

func (o GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionPeerCidrBlockSetArrayOutput

type GetVpcPeeringConnectionPeerCidrBlockSetInput

type GetVpcPeeringConnectionPeerCidrBlockSetInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionPeerCidrBlockSetOutput() GetVpcPeeringConnectionPeerCidrBlockSetOutput
	ToGetVpcPeeringConnectionPeerCidrBlockSetOutputWithContext(context.Context) GetVpcPeeringConnectionPeerCidrBlockSetOutput
}

GetVpcPeeringConnectionPeerCidrBlockSetInput is an input type that accepts GetVpcPeeringConnectionPeerCidrBlockSetArgs and GetVpcPeeringConnectionPeerCidrBlockSetOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionPeerCidrBlockSetInput` via:

GetVpcPeeringConnectionPeerCidrBlockSetArgs{...}

type GetVpcPeeringConnectionPeerCidrBlockSetOutput

type GetVpcPeeringConnectionPeerCidrBlockSetOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionPeerCidrBlockSetOutput) CidrBlock

The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.

func (GetVpcPeeringConnectionPeerCidrBlockSetOutput) ElementType

func (GetVpcPeeringConnectionPeerCidrBlockSetOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetOutput

func (o GetVpcPeeringConnectionPeerCidrBlockSetOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetOutput() GetVpcPeeringConnectionPeerCidrBlockSetOutput

func (GetVpcPeeringConnectionPeerCidrBlockSetOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetOutputWithContext

func (o GetVpcPeeringConnectionPeerCidrBlockSetOutput) ToGetVpcPeeringConnectionPeerCidrBlockSetOutputWithContext(ctx context.Context) GetVpcPeeringConnectionPeerCidrBlockSetOutput

type GetVpcPeeringConnectionsArgs

type GetVpcPeeringConnectionsArgs struct {
	// Custom filter block as described below.
	Filters []GetVpcPeeringConnectionsFilter `pulumi:"filters"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the desired VPC Peering Connection.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpcPeeringConnections.

type GetVpcPeeringConnectionsFilter

type GetVpcPeeringConnectionsFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Peering Connection will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpcPeeringConnectionsFilterArgs

type GetVpcPeeringConnectionsFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC Peering Connection will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcPeeringConnectionsFilterArgs) ElementType

func (GetVpcPeeringConnectionsFilterArgs) ToGetVpcPeeringConnectionsFilterOutput

func (i GetVpcPeeringConnectionsFilterArgs) ToGetVpcPeeringConnectionsFilterOutput() GetVpcPeeringConnectionsFilterOutput

func (GetVpcPeeringConnectionsFilterArgs) ToGetVpcPeeringConnectionsFilterOutputWithContext

func (i GetVpcPeeringConnectionsFilterArgs) ToGetVpcPeeringConnectionsFilterOutputWithContext(ctx context.Context) GetVpcPeeringConnectionsFilterOutput

type GetVpcPeeringConnectionsFilterArray

type GetVpcPeeringConnectionsFilterArray []GetVpcPeeringConnectionsFilterInput

func (GetVpcPeeringConnectionsFilterArray) ElementType

func (GetVpcPeeringConnectionsFilterArray) ToGetVpcPeeringConnectionsFilterArrayOutput

func (i GetVpcPeeringConnectionsFilterArray) ToGetVpcPeeringConnectionsFilterArrayOutput() GetVpcPeeringConnectionsFilterArrayOutput

func (GetVpcPeeringConnectionsFilterArray) ToGetVpcPeeringConnectionsFilterArrayOutputWithContext

func (i GetVpcPeeringConnectionsFilterArray) ToGetVpcPeeringConnectionsFilterArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionsFilterArrayOutput

type GetVpcPeeringConnectionsFilterArrayInput

type GetVpcPeeringConnectionsFilterArrayInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionsFilterArrayOutput() GetVpcPeeringConnectionsFilterArrayOutput
	ToGetVpcPeeringConnectionsFilterArrayOutputWithContext(context.Context) GetVpcPeeringConnectionsFilterArrayOutput
}

GetVpcPeeringConnectionsFilterArrayInput is an input type that accepts GetVpcPeeringConnectionsFilterArray and GetVpcPeeringConnectionsFilterArrayOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionsFilterArrayInput` via:

GetVpcPeeringConnectionsFilterArray{ GetVpcPeeringConnectionsFilterArgs{...} }

type GetVpcPeeringConnectionsFilterArrayOutput

type GetVpcPeeringConnectionsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionsFilterArrayOutput) ElementType

func (GetVpcPeeringConnectionsFilterArrayOutput) Index

func (GetVpcPeeringConnectionsFilterArrayOutput) ToGetVpcPeeringConnectionsFilterArrayOutput

func (o GetVpcPeeringConnectionsFilterArrayOutput) ToGetVpcPeeringConnectionsFilterArrayOutput() GetVpcPeeringConnectionsFilterArrayOutput

func (GetVpcPeeringConnectionsFilterArrayOutput) ToGetVpcPeeringConnectionsFilterArrayOutputWithContext

func (o GetVpcPeeringConnectionsFilterArrayOutput) ToGetVpcPeeringConnectionsFilterArrayOutputWithContext(ctx context.Context) GetVpcPeeringConnectionsFilterArrayOutput

type GetVpcPeeringConnectionsFilterInput

type GetVpcPeeringConnectionsFilterInput interface {
	pulumi.Input

	ToGetVpcPeeringConnectionsFilterOutput() GetVpcPeeringConnectionsFilterOutput
	ToGetVpcPeeringConnectionsFilterOutputWithContext(context.Context) GetVpcPeeringConnectionsFilterOutput
}

GetVpcPeeringConnectionsFilterInput is an input type that accepts GetVpcPeeringConnectionsFilterArgs and GetVpcPeeringConnectionsFilterOutput values. You can construct a concrete instance of `GetVpcPeeringConnectionsFilterInput` via:

GetVpcPeeringConnectionsFilterArgs{...}

type GetVpcPeeringConnectionsFilterOutput

type GetVpcPeeringConnectionsFilterOutput struct{ *pulumi.OutputState }

func (GetVpcPeeringConnectionsFilterOutput) ElementType

func (GetVpcPeeringConnectionsFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html).

func (GetVpcPeeringConnectionsFilterOutput) ToGetVpcPeeringConnectionsFilterOutput

func (o GetVpcPeeringConnectionsFilterOutput) ToGetVpcPeeringConnectionsFilterOutput() GetVpcPeeringConnectionsFilterOutput

func (GetVpcPeeringConnectionsFilterOutput) ToGetVpcPeeringConnectionsFilterOutputWithContext

func (o GetVpcPeeringConnectionsFilterOutput) ToGetVpcPeeringConnectionsFilterOutputWithContext(ctx context.Context) GetVpcPeeringConnectionsFilterOutput

func (GetVpcPeeringConnectionsFilterOutput) Values

Set of values that are accepted for the given field. A VPC Peering Connection will be selected if any one of the given values matches.

type GetVpcPeeringConnectionsResult

type GetVpcPeeringConnectionsResult struct {
	Filters []GetVpcPeeringConnectionsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The IDs of the VPC Peering Connections.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getVpcPeeringConnections.

func GetVpcPeeringConnections

func GetVpcPeeringConnections(ctx *pulumi.Context, args *GetVpcPeeringConnectionsArgs, opts ...pulumi.InvokeOption) (*GetVpcPeeringConnectionsResult, error)

Use this data source to get IDs of Amazon VPC peering connections To get more details on each connection, use the data resource `ec2.VpcPeeringConnection`

type GetVpcsArgs

type GetVpcsArgs struct {
	// Custom filter block as described below.
	Filters []GetVpcsFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired vpcs.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpcs.

type GetVpcsFilter

type GetVpcsFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpcsFilterArgs

type GetVpcsFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPC will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcsFilterArgs) ElementType

func (GetVpcsFilterArgs) ElementType() reflect.Type

func (GetVpcsFilterArgs) ToGetVpcsFilterOutput

func (i GetVpcsFilterArgs) ToGetVpcsFilterOutput() GetVpcsFilterOutput

func (GetVpcsFilterArgs) ToGetVpcsFilterOutputWithContext

func (i GetVpcsFilterArgs) ToGetVpcsFilterOutputWithContext(ctx context.Context) GetVpcsFilterOutput

type GetVpcsFilterArray

type GetVpcsFilterArray []GetVpcsFilterInput

func (GetVpcsFilterArray) ElementType

func (GetVpcsFilterArray) ElementType() reflect.Type

func (GetVpcsFilterArray) ToGetVpcsFilterArrayOutput

func (i GetVpcsFilterArray) ToGetVpcsFilterArrayOutput() GetVpcsFilterArrayOutput

func (GetVpcsFilterArray) ToGetVpcsFilterArrayOutputWithContext

func (i GetVpcsFilterArray) ToGetVpcsFilterArrayOutputWithContext(ctx context.Context) GetVpcsFilterArrayOutput

type GetVpcsFilterArrayInput

type GetVpcsFilterArrayInput interface {
	pulumi.Input

	ToGetVpcsFilterArrayOutput() GetVpcsFilterArrayOutput
	ToGetVpcsFilterArrayOutputWithContext(context.Context) GetVpcsFilterArrayOutput
}

GetVpcsFilterArrayInput is an input type that accepts GetVpcsFilterArray and GetVpcsFilterArrayOutput values. You can construct a concrete instance of `GetVpcsFilterArrayInput` via:

GetVpcsFilterArray{ GetVpcsFilterArgs{...} }

type GetVpcsFilterArrayOutput

type GetVpcsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcsFilterArrayOutput) ElementType

func (GetVpcsFilterArrayOutput) ElementType() reflect.Type

func (GetVpcsFilterArrayOutput) Index

func (GetVpcsFilterArrayOutput) ToGetVpcsFilterArrayOutput

func (o GetVpcsFilterArrayOutput) ToGetVpcsFilterArrayOutput() GetVpcsFilterArrayOutput

func (GetVpcsFilterArrayOutput) ToGetVpcsFilterArrayOutputWithContext

func (o GetVpcsFilterArrayOutput) ToGetVpcsFilterArrayOutputWithContext(ctx context.Context) GetVpcsFilterArrayOutput

type GetVpcsFilterInput

type GetVpcsFilterInput interface {
	pulumi.Input

	ToGetVpcsFilterOutput() GetVpcsFilterOutput
	ToGetVpcsFilterOutputWithContext(context.Context) GetVpcsFilterOutput
}

GetVpcsFilterInput is an input type that accepts GetVpcsFilterArgs and GetVpcsFilterOutput values. You can construct a concrete instance of `GetVpcsFilterInput` via:

GetVpcsFilterArgs{...}

type GetVpcsFilterOutput

type GetVpcsFilterOutput struct{ *pulumi.OutputState }

func (GetVpcsFilterOutput) ElementType

func (GetVpcsFilterOutput) ElementType() reflect.Type

func (GetVpcsFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html).

func (GetVpcsFilterOutput) ToGetVpcsFilterOutput

func (o GetVpcsFilterOutput) ToGetVpcsFilterOutput() GetVpcsFilterOutput

func (GetVpcsFilterOutput) ToGetVpcsFilterOutputWithContext

func (o GetVpcsFilterOutput) ToGetVpcsFilterOutputWithContext(ctx context.Context) GetVpcsFilterOutput

func (GetVpcsFilterOutput) Values

Set of values that are accepted for the given field. A VPC will be selected if any one of the given values matches.

type GetVpcsResult

type GetVpcsResult struct {
	Filters []GetVpcsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of all the VPC Ids found. This data source will fail if none are found.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getVpcs.

func GetVpcs

func GetVpcs(ctx *pulumi.Context, args *GetVpcsArgs, opts ...pulumi.InvokeOption) (*GetVpcsResult, error)

This resource can be useful for getting back a list of VPC Ids for a region.

The following example retrieves a list of VPC Ids with a custom tag of `service` set to a value of "production".

type GetVpnGatewayFilter

type GetVpnGatewayFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpnGateways.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPN Gateway will be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetVpnGatewayFilterArgs

type GetVpnGatewayFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpnGateways.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// A VPN Gateway will be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpnGatewayFilterArgs) ElementType

func (GetVpnGatewayFilterArgs) ElementType() reflect.Type

func (GetVpnGatewayFilterArgs) ToGetVpnGatewayFilterOutput

func (i GetVpnGatewayFilterArgs) ToGetVpnGatewayFilterOutput() GetVpnGatewayFilterOutput

func (GetVpnGatewayFilterArgs) ToGetVpnGatewayFilterOutputWithContext

func (i GetVpnGatewayFilterArgs) ToGetVpnGatewayFilterOutputWithContext(ctx context.Context) GetVpnGatewayFilterOutput

type GetVpnGatewayFilterArray

type GetVpnGatewayFilterArray []GetVpnGatewayFilterInput

func (GetVpnGatewayFilterArray) ElementType

func (GetVpnGatewayFilterArray) ElementType() reflect.Type

func (GetVpnGatewayFilterArray) ToGetVpnGatewayFilterArrayOutput

func (i GetVpnGatewayFilterArray) ToGetVpnGatewayFilterArrayOutput() GetVpnGatewayFilterArrayOutput

func (GetVpnGatewayFilterArray) ToGetVpnGatewayFilterArrayOutputWithContext

func (i GetVpnGatewayFilterArray) ToGetVpnGatewayFilterArrayOutputWithContext(ctx context.Context) GetVpnGatewayFilterArrayOutput

type GetVpnGatewayFilterArrayInput

type GetVpnGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetVpnGatewayFilterArrayOutput() GetVpnGatewayFilterArrayOutput
	ToGetVpnGatewayFilterArrayOutputWithContext(context.Context) GetVpnGatewayFilterArrayOutput
}

GetVpnGatewayFilterArrayInput is an input type that accepts GetVpnGatewayFilterArray and GetVpnGatewayFilterArrayOutput values. You can construct a concrete instance of `GetVpnGatewayFilterArrayInput` via:

GetVpnGatewayFilterArray{ GetVpnGatewayFilterArgs{...} }

type GetVpnGatewayFilterArrayOutput

type GetVpnGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpnGatewayFilterArrayOutput) ElementType

func (GetVpnGatewayFilterArrayOutput) Index

func (GetVpnGatewayFilterArrayOutput) ToGetVpnGatewayFilterArrayOutput

func (o GetVpnGatewayFilterArrayOutput) ToGetVpnGatewayFilterArrayOutput() GetVpnGatewayFilterArrayOutput

func (GetVpnGatewayFilterArrayOutput) ToGetVpnGatewayFilterArrayOutputWithContext

func (o GetVpnGatewayFilterArrayOutput) ToGetVpnGatewayFilterArrayOutputWithContext(ctx context.Context) GetVpnGatewayFilterArrayOutput

type GetVpnGatewayFilterInput

type GetVpnGatewayFilterInput interface {
	pulumi.Input

	ToGetVpnGatewayFilterOutput() GetVpnGatewayFilterOutput
	ToGetVpnGatewayFilterOutputWithContext(context.Context) GetVpnGatewayFilterOutput
}

GetVpnGatewayFilterInput is an input type that accepts GetVpnGatewayFilterArgs and GetVpnGatewayFilterOutput values. You can construct a concrete instance of `GetVpnGatewayFilterInput` via:

GetVpnGatewayFilterArgs{...}

type GetVpnGatewayFilterOutput

type GetVpnGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetVpnGatewayFilterOutput) ElementType

func (GetVpnGatewayFilterOutput) ElementType() reflect.Type

func (GetVpnGatewayFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpnGateways.html).

func (GetVpnGatewayFilterOutput) ToGetVpnGatewayFilterOutput

func (o GetVpnGatewayFilterOutput) ToGetVpnGatewayFilterOutput() GetVpnGatewayFilterOutput

func (GetVpnGatewayFilterOutput) ToGetVpnGatewayFilterOutputWithContext

func (o GetVpnGatewayFilterOutput) ToGetVpnGatewayFilterOutputWithContext(ctx context.Context) GetVpnGatewayFilterOutput

func (GetVpnGatewayFilterOutput) Values

Set of values that are accepted for the given field. A VPN Gateway will be selected if any one of the given values matches.

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringOutput `pulumi:"ami"`
	// The ARN of the instance.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolOutput `pulumi:"associatePublicIpAddress"`
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification InstanceCapacityReservationSpecificationOutput `pulumi:"capacityReservationSpecification"`
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntOutput `pulumi:"cpuCoreCount"`
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntOutput `pulumi:"cpuThreadsPerCore"`
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification InstanceCreditSpecificationPtrOutput `pulumi:"creditSpecification"`
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolOutput `pulumi:"disableApiTermination"`
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices InstanceEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolOutput `pulumi:"ebsOptimized"`
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions InstanceEnclaveOptionsOutput `pulumi:"enclaveOptions"`
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrOutput `pulumi:"getPasswordData"`
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrOutput `pulumi:"hibernation"`
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringOutput `pulumi:"hostId"`
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.StringPtrOutput `pulumi:"iamInstanceProfile"`
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringOutput `pulumi:"instanceInitiatedShutdownBehavior"`
	// The state of the instance. One of: `pending`, `running`, `shutting-down`, `terminated`, `stopping`, `stopped`. See [Instance Lifecycle](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) for more information.
	InstanceState pulumi.StringOutput `pulumi:"instanceState"`
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntOutput `pulumi:"ipv6AddressCount"`
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayOutput `pulumi:"ipv6Addresses"`
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate InstanceLaunchTemplatePtrOutput `pulumi:"launchTemplate"`
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions InstanceMetadataOptionsOutput `pulumi:"metadataOptions"`
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolOutput `pulumi:"monitoring"`
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces InstanceNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// The ARN of the Outpost the instance is assigned to.
	OutpostArn pulumi.StringOutput `pulumi:"outpostArn"`
	// Base-64 encoded encrypted password data for the instance. Useful for getting the administrator password for instances running Microsoft Windows. This attribute is only exported if `getPasswordData` is true. Note that this encrypted value will be stored in the state file, as with all exported attributes. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	PasswordData pulumi.StringOutput `pulumi:"passwordData"`
	// Placement Group to start the instance in.
	PlacementGroup pulumi.StringOutput `pulumi:"placementGroup"`
	// The ID of the instance's primary network interface.
	PrimaryNetworkInterfaceId pulumi.StringOutput `pulumi:"primaryNetworkInterfaceId"`
	// The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you've enabled DNS hostnames for your VPC.
	PrivateDns pulumi.StringOutput `pulumi:"privateDns"`
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The public DNS name assigned to the instance. For EC2-VPC, this is only available if you've enabled DNS hostnames for your VPC.
	PublicDns pulumi.StringOutput `pulumi:"publicDns"`
	// The public IP address assigned to the instance, if applicable. **NOTE**: If you are using an `ec2.Eip` with your instance, you should refer to the EIP's address directly and not use `publicIp` as this field will change after the EIP is attached.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice InstanceRootBlockDeviceOutput `pulumi:"rootBlockDevice"`
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayOutput `pulumi:"secondaryPrivateIps"`
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	//
	// Deprecated: Use of `securityGroups` is discouraged as it does not allow for changes and will force your instance to be replaced if changes are made. To avoid this, use `vpcSecurityGroupIds` which allows for updates.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrOutput `pulumi:"sourceDestCheck"`
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringOutput `pulumi:"tenancy"`
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringOutput `pulumi:"userData"`
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringOutput `pulumi:"userDataBase64"`
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapOutput `pulumi:"volumeTags"`
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
}

Provides an EC2 instance resource. This allows instances to be created, updated, and deleted.

## Example Usage ### Basic Example Using AMI Lookup

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			MostRecent: &opt0,
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*",
					},
				},
				ec2.GetAmiFilter{
					Name: "virtualization-type",
					Values: []string{
						"hvm",
					},
				},
			},
			Owners: []string{
				"099720109477",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewInstance(ctx, "web", &ec2.InstanceArgs{
			Ami:          pulumi.String(ubuntu.Id),
			InstanceType: pulumi.String("t3.micro"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Network and Credit Specification Example

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myVpc, err := ec2.NewVpc(ctx, "myVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-example"),
			},
		})
		if err != nil {
			return err
		}
		mySubnet, err := ec2.NewSubnet(ctx, "mySubnet", &ec2.SubnetArgs{
			VpcId:            myVpc.ID(),
			CidrBlock:        pulumi.String("172.16.10.0/24"),
			AvailabilityZone: pulumi.String("us-west-2a"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-example"),
			},
		})
		if err != nil {
			return err
		}
		fooNetworkInterface, err := ec2.NewNetworkInterface(ctx, "fooNetworkInterface", &ec2.NetworkInterfaceArgs{
			SubnetId: mySubnet.ID(),
			PrivateIps: pulumi.StringArray{
				pulumi.String("172.16.10.100"),
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("primary_network_interface"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewInstance(ctx, "fooInstance", &ec2.InstanceArgs{
			Ami:          pulumi.String("ami-005e54dee72cc1d00"),
			InstanceType: pulumi.String("t2.micro"),
			NetworkInterfaces: ec2.InstanceNetworkInterfaceArray{
				&ec2.InstanceNetworkInterfaceArgs{
					NetworkInterfaceId: fooNetworkInterface.ID(),
					DeviceIndex:        pulumi.Int(0),
				},
			},
			CreditSpecification: &ec2.InstanceCreditSpecificationArgs{
				CpuCredits: pulumi.String("unlimited"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instances can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/instance:Instance web i-12345678

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToInstancePtrOutput

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringPtrInput
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringPtrInput
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification InstanceCapacityReservationSpecificationPtrInput
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntPtrInput
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntPtrInput
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification InstanceCreditSpecificationPtrInput
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolPtrInput
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices InstanceEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions InstanceEnclaveOptionsPtrInput
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayInput
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrInput
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrInput
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringPtrInput
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.Input
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringPtrInput
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntPtrInput
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayInput
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringPtrInput
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate InstanceLaunchTemplatePtrInput
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions InstanceMetadataOptionsPtrInput
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces InstanceNetworkInterfaceArrayInput
	// Placement Group to start the instance in.
	PlacementGroup pulumi.StringPtrInput
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringPtrInput
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice InstanceRootBlockDevicePtrInput
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayInput
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	//
	// Deprecated: Use of `securityGroups` is discouraged as it does not allow for changes and will force your instance to be replaced if changes are made. To avoid this, use `vpcSecurityGroupIds` which allows for updates.
	SecurityGroups pulumi.StringArrayInput
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrInput
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringPtrInput
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceCapacityReservationSpecification added in v4.6.0

type InstanceCapacityReservationSpecification struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).
	CapacityReservationPreference *string `pulumi:"capacityReservationPreference"`
	// Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.
	CapacityReservationTarget *InstanceCapacityReservationSpecificationCapacityReservationTarget `pulumi:"capacityReservationTarget"`
}

type InstanceCapacityReservationSpecificationArgs added in v4.6.0

type InstanceCapacityReservationSpecificationArgs struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).
	CapacityReservationPreference pulumi.StringPtrInput `pulumi:"capacityReservationPreference"`
	// Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.
	CapacityReservationTarget InstanceCapacityReservationSpecificationCapacityReservationTargetPtrInput `pulumi:"capacityReservationTarget"`
}

func (InstanceCapacityReservationSpecificationArgs) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationOutput added in v4.6.0

func (i InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationOutput() InstanceCapacityReservationSpecificationOutput

func (InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationOutputWithContext added in v4.6.0

func (i InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationOutput

func (InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationPtrOutput added in v4.6.0

func (i InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationPtrOutput() InstanceCapacityReservationSpecificationPtrOutput

func (InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (i InstanceCapacityReservationSpecificationArgs) ToInstanceCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationPtrOutput

type InstanceCapacityReservationSpecificationCapacityReservationTarget added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTarget struct {
	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId *string `pulumi:"capacityReservationId"`
}

type InstanceCapacityReservationSpecificationCapacityReservationTargetArgs added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTargetArgs struct {
	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId pulumi.StringPtrInput `pulumi:"capacityReservationId"`
}

func (InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutputWithContext added in v4.6.0

func (i InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetOutput

func (InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

func (i InstanceCapacityReservationSpecificationCapacityReservationTargetArgs) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput

type InstanceCapacityReservationSpecificationCapacityReservationTargetInput added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTargetInput interface {
	pulumi.Input

	ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutput() InstanceCapacityReservationSpecificationCapacityReservationTargetOutput
	ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutputWithContext(context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetOutput
}

InstanceCapacityReservationSpecificationCapacityReservationTargetInput is an input type that accepts InstanceCapacityReservationSpecificationCapacityReservationTargetArgs and InstanceCapacityReservationSpecificationCapacityReservationTargetOutput values. You can construct a concrete instance of `InstanceCapacityReservationSpecificationCapacityReservationTargetInput` via:

InstanceCapacityReservationSpecificationCapacityReservationTargetArgs{...}

type InstanceCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTargetOutput struct{ *pulumi.OutputState }

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) CapacityReservationId added in v4.6.0

The ID of the Capacity Reservation in which to run the instance.

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutputWithContext added in v4.6.0

func (o InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetOutput

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

func (o InstanceCapacityReservationSpecificationCapacityReservationTargetOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput

type InstanceCapacityReservationSpecificationCapacityReservationTargetPtrInput added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTargetPtrInput interface {
	pulumi.Input

	ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput() InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput
	ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(context.Context) InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput
}

InstanceCapacityReservationSpecificationCapacityReservationTargetPtrInput is an input type that accepts InstanceCapacityReservationSpecificationCapacityReservationTargetArgs, InstanceCapacityReservationSpecificationCapacityReservationTargetPtr and InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput values. You can construct a concrete instance of `InstanceCapacityReservationSpecificationCapacityReservationTargetPtrInput` via:

        InstanceCapacityReservationSpecificationCapacityReservationTargetArgs{...}

or:

        nil

type InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

type InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput struct{ *pulumi.OutputState }

func (InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput) CapacityReservationId added in v4.6.0

The ID of the Capacity Reservation in which to run the instance.

func (InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput) Elem added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (InstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToInstanceCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

type InstanceCapacityReservationSpecificationInput added in v4.6.0

type InstanceCapacityReservationSpecificationInput interface {
	pulumi.Input

	ToInstanceCapacityReservationSpecificationOutput() InstanceCapacityReservationSpecificationOutput
	ToInstanceCapacityReservationSpecificationOutputWithContext(context.Context) InstanceCapacityReservationSpecificationOutput
}

InstanceCapacityReservationSpecificationInput is an input type that accepts InstanceCapacityReservationSpecificationArgs and InstanceCapacityReservationSpecificationOutput values. You can construct a concrete instance of `InstanceCapacityReservationSpecificationInput` via:

InstanceCapacityReservationSpecificationArgs{...}

type InstanceCapacityReservationSpecificationOutput added in v4.6.0

type InstanceCapacityReservationSpecificationOutput struct{ *pulumi.OutputState }

func (InstanceCapacityReservationSpecificationOutput) CapacityReservationPreference added in v4.6.0

func (o InstanceCapacityReservationSpecificationOutput) CapacityReservationPreference() pulumi.StringPtrOutput

Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).

func (InstanceCapacityReservationSpecificationOutput) CapacityReservationTarget added in v4.6.0

Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.

func (InstanceCapacityReservationSpecificationOutput) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationOutput added in v4.6.0

func (o InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationOutput() InstanceCapacityReservationSpecificationOutput

func (InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationOutputWithContext added in v4.6.0

func (o InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationOutput

func (InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationPtrOutput added in v4.6.0

func (o InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationPtrOutput() InstanceCapacityReservationSpecificationPtrOutput

func (InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (o InstanceCapacityReservationSpecificationOutput) ToInstanceCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationPtrOutput

type InstanceCapacityReservationSpecificationPtrInput added in v4.6.0

type InstanceCapacityReservationSpecificationPtrInput interface {
	pulumi.Input

	ToInstanceCapacityReservationSpecificationPtrOutput() InstanceCapacityReservationSpecificationPtrOutput
	ToInstanceCapacityReservationSpecificationPtrOutputWithContext(context.Context) InstanceCapacityReservationSpecificationPtrOutput
}

InstanceCapacityReservationSpecificationPtrInput is an input type that accepts InstanceCapacityReservationSpecificationArgs, InstanceCapacityReservationSpecificationPtr and InstanceCapacityReservationSpecificationPtrOutput values. You can construct a concrete instance of `InstanceCapacityReservationSpecificationPtrInput` via:

        InstanceCapacityReservationSpecificationArgs{...}

or:

        nil

type InstanceCapacityReservationSpecificationPtrOutput added in v4.6.0

type InstanceCapacityReservationSpecificationPtrOutput struct{ *pulumi.OutputState }

func (InstanceCapacityReservationSpecificationPtrOutput) CapacityReservationPreference added in v4.6.0

Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).

func (InstanceCapacityReservationSpecificationPtrOutput) CapacityReservationTarget added in v4.6.0

Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.

func (InstanceCapacityReservationSpecificationPtrOutput) Elem added in v4.6.0

func (InstanceCapacityReservationSpecificationPtrOutput) ElementType added in v4.6.0

func (InstanceCapacityReservationSpecificationPtrOutput) ToInstanceCapacityReservationSpecificationPtrOutput added in v4.6.0

func (o InstanceCapacityReservationSpecificationPtrOutput) ToInstanceCapacityReservationSpecificationPtrOutput() InstanceCapacityReservationSpecificationPtrOutput

func (InstanceCapacityReservationSpecificationPtrOutput) ToInstanceCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (o InstanceCapacityReservationSpecificationPtrOutput) ToInstanceCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) InstanceCapacityReservationSpecificationPtrOutput

type InstanceCreditSpecification

type InstanceCreditSpecification struct {
	// Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits *string `pulumi:"cpuCredits"`
}

type InstanceCreditSpecificationArgs

type InstanceCreditSpecificationArgs struct {
	// Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits pulumi.StringPtrInput `pulumi:"cpuCredits"`
}

func (InstanceCreditSpecificationArgs) ElementType

func (InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationOutput

func (i InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationOutput() InstanceCreditSpecificationOutput

func (InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationOutputWithContext

func (i InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationOutputWithContext(ctx context.Context) InstanceCreditSpecificationOutput

func (InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationPtrOutput

func (i InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationPtrOutput() InstanceCreditSpecificationPtrOutput

func (InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationPtrOutputWithContext

func (i InstanceCreditSpecificationArgs) ToInstanceCreditSpecificationPtrOutputWithContext(ctx context.Context) InstanceCreditSpecificationPtrOutput

type InstanceCreditSpecificationInput

type InstanceCreditSpecificationInput interface {
	pulumi.Input

	ToInstanceCreditSpecificationOutput() InstanceCreditSpecificationOutput
	ToInstanceCreditSpecificationOutputWithContext(context.Context) InstanceCreditSpecificationOutput
}

InstanceCreditSpecificationInput is an input type that accepts InstanceCreditSpecificationArgs and InstanceCreditSpecificationOutput values. You can construct a concrete instance of `InstanceCreditSpecificationInput` via:

InstanceCreditSpecificationArgs{...}

type InstanceCreditSpecificationOutput

type InstanceCreditSpecificationOutput struct{ *pulumi.OutputState }

func (InstanceCreditSpecificationOutput) CpuCredits

Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (InstanceCreditSpecificationOutput) ElementType

func (InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationOutput

func (o InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationOutput() InstanceCreditSpecificationOutput

func (InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationOutputWithContext

func (o InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationOutputWithContext(ctx context.Context) InstanceCreditSpecificationOutput

func (InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationPtrOutput

func (o InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationPtrOutput() InstanceCreditSpecificationPtrOutput

func (InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationPtrOutputWithContext

func (o InstanceCreditSpecificationOutput) ToInstanceCreditSpecificationPtrOutputWithContext(ctx context.Context) InstanceCreditSpecificationPtrOutput

type InstanceCreditSpecificationPtrInput

type InstanceCreditSpecificationPtrInput interface {
	pulumi.Input

	ToInstanceCreditSpecificationPtrOutput() InstanceCreditSpecificationPtrOutput
	ToInstanceCreditSpecificationPtrOutputWithContext(context.Context) InstanceCreditSpecificationPtrOutput
}

InstanceCreditSpecificationPtrInput is an input type that accepts InstanceCreditSpecificationArgs, InstanceCreditSpecificationPtr and InstanceCreditSpecificationPtrOutput values. You can construct a concrete instance of `InstanceCreditSpecificationPtrInput` via:

        InstanceCreditSpecificationArgs{...}

or:

        nil

type InstanceCreditSpecificationPtrOutput

type InstanceCreditSpecificationPtrOutput struct{ *pulumi.OutputState }

func (InstanceCreditSpecificationPtrOutput) CpuCredits

Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (InstanceCreditSpecificationPtrOutput) Elem

func (InstanceCreditSpecificationPtrOutput) ElementType

func (InstanceCreditSpecificationPtrOutput) ToInstanceCreditSpecificationPtrOutput

func (o InstanceCreditSpecificationPtrOutput) ToInstanceCreditSpecificationPtrOutput() InstanceCreditSpecificationPtrOutput

func (InstanceCreditSpecificationPtrOutput) ToInstanceCreditSpecificationPtrOutputWithContext

func (o InstanceCreditSpecificationPtrOutput) ToInstanceCreditSpecificationPtrOutputWithContext(ctx context.Context) InstanceCreditSpecificationPtrOutput

type InstanceEbsBlockDevice

type InstanceEbsBlockDevice struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName string `pulumi:"deviceName"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.
	Encrypted *bool `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops *int `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// Snapshot ID to mount.
	SnapshotId *string `pulumi:"snapshotId"`
	// A map of tags to assign to the device.
	Tags map[string]string `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput *int `pulumi:"throughput"`
	// ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.
	VolumeId *string `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize *int `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType *string `pulumi:"volumeType"`
}

type InstanceEbsBlockDeviceArgs

type InstanceEbsBlockDeviceArgs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// Snapshot ID to mount.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// A map of tags to assign to the device.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.
	VolumeId pulumi.StringPtrInput `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (InstanceEbsBlockDeviceArgs) ElementType

func (InstanceEbsBlockDeviceArgs) ElementType() reflect.Type

func (InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutput

func (i InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutputWithContext

func (i InstanceEbsBlockDeviceArgs) ToInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceOutput

type InstanceEbsBlockDeviceArray

type InstanceEbsBlockDeviceArray []InstanceEbsBlockDeviceInput

func (InstanceEbsBlockDeviceArray) ElementType

func (InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutput

func (i InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput

func (InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutputWithContext

func (i InstanceEbsBlockDeviceArray) ToInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceArrayInput

type InstanceEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput
	ToInstanceEbsBlockDeviceArrayOutputWithContext(context.Context) InstanceEbsBlockDeviceArrayOutput
}

InstanceEbsBlockDeviceArrayInput is an input type that accepts InstanceEbsBlockDeviceArray and InstanceEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `InstanceEbsBlockDeviceArrayInput` via:

InstanceEbsBlockDeviceArray{ InstanceEbsBlockDeviceArgs{...} }

type InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (InstanceEbsBlockDeviceArrayOutput) ElementType

func (InstanceEbsBlockDeviceArrayOutput) Index

func (InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutput

func (o InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutput() InstanceEbsBlockDeviceArrayOutput

func (InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutputWithContext

func (o InstanceEbsBlockDeviceArrayOutput) ToInstanceEbsBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceArrayOutput

type InstanceEbsBlockDeviceInput

type InstanceEbsBlockDeviceInput interface {
	pulumi.Input

	ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput
	ToInstanceEbsBlockDeviceOutputWithContext(context.Context) InstanceEbsBlockDeviceOutput
}

InstanceEbsBlockDeviceInput is an input type that accepts InstanceEbsBlockDeviceArgs and InstanceEbsBlockDeviceOutput values. You can construct a concrete instance of `InstanceEbsBlockDeviceInput` via:

InstanceEbsBlockDeviceArgs{...}

type InstanceEbsBlockDeviceOutput

type InstanceEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceEbsBlockDeviceOutput) DeleteOnTermination

func (o InstanceEbsBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (InstanceEbsBlockDeviceOutput) DeviceName

Name of the device to mount.

func (InstanceEbsBlockDeviceOutput) ElementType

func (InstanceEbsBlockDeviceOutput) Encrypted

Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.

func (InstanceEbsBlockDeviceOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (InstanceEbsBlockDeviceOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (InstanceEbsBlockDeviceOutput) SnapshotId

Snapshot ID to mount.

func (InstanceEbsBlockDeviceOutput) Tags

A map of tags to assign to the device.

func (InstanceEbsBlockDeviceOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutput

func (o InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutput() InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutputWithContext

func (o InstanceEbsBlockDeviceOutput) ToInstanceEbsBlockDeviceOutputWithContext(ctx context.Context) InstanceEbsBlockDeviceOutput

func (InstanceEbsBlockDeviceOutput) VolumeId

ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.

func (InstanceEbsBlockDeviceOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (InstanceEbsBlockDeviceOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type InstanceEnclaveOptions

type InstanceEnclaveOptions struct {
	// Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.
	Enabled *bool `pulumi:"enabled"`
}

type InstanceEnclaveOptionsArgs

type InstanceEnclaveOptionsArgs struct {
	// Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (InstanceEnclaveOptionsArgs) ElementType

func (InstanceEnclaveOptionsArgs) ElementType() reflect.Type

func (InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsOutput

func (i InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsOutput() InstanceEnclaveOptionsOutput

func (InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsOutputWithContext

func (i InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsOutputWithContext(ctx context.Context) InstanceEnclaveOptionsOutput

func (InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsPtrOutput

func (i InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsPtrOutput() InstanceEnclaveOptionsPtrOutput

func (InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsPtrOutputWithContext

func (i InstanceEnclaveOptionsArgs) ToInstanceEnclaveOptionsPtrOutputWithContext(ctx context.Context) InstanceEnclaveOptionsPtrOutput

type InstanceEnclaveOptionsInput

type InstanceEnclaveOptionsInput interface {
	pulumi.Input

	ToInstanceEnclaveOptionsOutput() InstanceEnclaveOptionsOutput
	ToInstanceEnclaveOptionsOutputWithContext(context.Context) InstanceEnclaveOptionsOutput
}

InstanceEnclaveOptionsInput is an input type that accepts InstanceEnclaveOptionsArgs and InstanceEnclaveOptionsOutput values. You can construct a concrete instance of `InstanceEnclaveOptionsInput` via:

InstanceEnclaveOptionsArgs{...}

type InstanceEnclaveOptionsOutput

type InstanceEnclaveOptionsOutput struct{ *pulumi.OutputState }

func (InstanceEnclaveOptionsOutput) ElementType

func (InstanceEnclaveOptionsOutput) Enabled

Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.

func (InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsOutput

func (o InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsOutput() InstanceEnclaveOptionsOutput

func (InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsOutputWithContext

func (o InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsOutputWithContext(ctx context.Context) InstanceEnclaveOptionsOutput

func (InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsPtrOutput

func (o InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsPtrOutput() InstanceEnclaveOptionsPtrOutput

func (InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsPtrOutputWithContext

func (o InstanceEnclaveOptionsOutput) ToInstanceEnclaveOptionsPtrOutputWithContext(ctx context.Context) InstanceEnclaveOptionsPtrOutput

type InstanceEnclaveOptionsPtrInput

type InstanceEnclaveOptionsPtrInput interface {
	pulumi.Input

	ToInstanceEnclaveOptionsPtrOutput() InstanceEnclaveOptionsPtrOutput
	ToInstanceEnclaveOptionsPtrOutputWithContext(context.Context) InstanceEnclaveOptionsPtrOutput
}

InstanceEnclaveOptionsPtrInput is an input type that accepts InstanceEnclaveOptionsArgs, InstanceEnclaveOptionsPtr and InstanceEnclaveOptionsPtrOutput values. You can construct a concrete instance of `InstanceEnclaveOptionsPtrInput` via:

        InstanceEnclaveOptionsArgs{...}

or:

        nil

type InstanceEnclaveOptionsPtrOutput

type InstanceEnclaveOptionsPtrOutput struct{ *pulumi.OutputState }

func (InstanceEnclaveOptionsPtrOutput) Elem

func (InstanceEnclaveOptionsPtrOutput) ElementType

func (InstanceEnclaveOptionsPtrOutput) Enabled

Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.

func (InstanceEnclaveOptionsPtrOutput) ToInstanceEnclaveOptionsPtrOutput

func (o InstanceEnclaveOptionsPtrOutput) ToInstanceEnclaveOptionsPtrOutput() InstanceEnclaveOptionsPtrOutput

func (InstanceEnclaveOptionsPtrOutput) ToInstanceEnclaveOptionsPtrOutputWithContext

func (o InstanceEnclaveOptionsPtrOutput) ToInstanceEnclaveOptionsPtrOutputWithContext(ctx context.Context) InstanceEnclaveOptionsPtrOutput

type InstanceEphemeralBlockDevice

type InstanceEphemeralBlockDevice struct {
	// The name of the block device to mount on the instance.
	DeviceName string `pulumi:"deviceName"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice *bool `pulumi:"noDevice"`
	// [Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).
	VirtualName *string `pulumi:"virtualName"`
}

type InstanceEphemeralBlockDeviceArgs

type InstanceEphemeralBlockDeviceArgs struct {
	// The name of the block device to mount on the instance.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice pulumi.BoolPtrInput `pulumi:"noDevice"`
	// [Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (InstanceEphemeralBlockDeviceArgs) ElementType

func (InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutput

func (i InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutputWithContext

func (i InstanceEphemeralBlockDeviceArgs) ToInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceOutput

type InstanceEphemeralBlockDeviceArray

type InstanceEphemeralBlockDeviceArray []InstanceEphemeralBlockDeviceInput

func (InstanceEphemeralBlockDeviceArray) ElementType

func (InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutput

func (i InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput

func (InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutputWithContext

func (i InstanceEphemeralBlockDeviceArray) ToInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceArrayInput

type InstanceEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput
	ToInstanceEphemeralBlockDeviceArrayOutputWithContext(context.Context) InstanceEphemeralBlockDeviceArrayOutput
}

InstanceEphemeralBlockDeviceArrayInput is an input type that accepts InstanceEphemeralBlockDeviceArray and InstanceEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `InstanceEphemeralBlockDeviceArrayInput` via:

InstanceEphemeralBlockDeviceArray{ InstanceEphemeralBlockDeviceArgs{...} }

type InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (InstanceEphemeralBlockDeviceArrayOutput) ElementType

func (InstanceEphemeralBlockDeviceArrayOutput) Index

func (InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutput

func (o InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutput() InstanceEphemeralBlockDeviceArrayOutput

func (InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutputWithContext

func (o InstanceEphemeralBlockDeviceArrayOutput) ToInstanceEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceArrayOutput

type InstanceEphemeralBlockDeviceInput

type InstanceEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput
	ToInstanceEphemeralBlockDeviceOutputWithContext(context.Context) InstanceEphemeralBlockDeviceOutput
}

InstanceEphemeralBlockDeviceInput is an input type that accepts InstanceEphemeralBlockDeviceArgs and InstanceEphemeralBlockDeviceOutput values. You can construct a concrete instance of `InstanceEphemeralBlockDeviceInput` via:

InstanceEphemeralBlockDeviceArgs{...}

type InstanceEphemeralBlockDeviceOutput

type InstanceEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceEphemeralBlockDeviceOutput) DeviceName

The name of the block device to mount on the instance.

func (InstanceEphemeralBlockDeviceOutput) ElementType

func (InstanceEphemeralBlockDeviceOutput) NoDevice

Suppresses the specified device included in the AMI's block device mapping.

func (InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutput

func (o InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutput() InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutputWithContext

func (o InstanceEphemeralBlockDeviceOutput) ToInstanceEphemeralBlockDeviceOutputWithContext(ctx context.Context) InstanceEphemeralBlockDeviceOutput

func (InstanceEphemeralBlockDeviceOutput) VirtualName

[Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceLaunchTemplate added in v4.14.0

type InstanceLaunchTemplate struct {
	// The ID of the launch template. Conflicts with `name`.
	Id *string `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name *string `pulumi:"name"`
	// Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.
	Version *string `pulumi:"version"`
}

type InstanceLaunchTemplateArgs added in v4.14.0

type InstanceLaunchTemplateArgs struct {
	// The ID of the launch template. Conflicts with `name`.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (InstanceLaunchTemplateArgs) ElementType added in v4.14.0

func (InstanceLaunchTemplateArgs) ElementType() reflect.Type

func (InstanceLaunchTemplateArgs) ToInstanceLaunchTemplateOutput added in v4.14.0

func (i InstanceLaunchTemplateArgs) ToInstanceLaunchTemplateOutput() InstanceLaunchTemplateOutput

func (InstanceLaunchTemplateArgs) ToInstanceLaunchTemplateOutputWithContext added in v4.14.0

func (i InstanceLaunchTemplateArgs) ToInstanceLaunchTemplateOutputWithContext(ctx context.Context) InstanceLaunchTemplateOutput

func (InstanceLaunchTemplateArgs) ToInstanceLaunchTemplatePtrOutput added in v4.14.0

func (i InstanceLaunchTemplateArgs) ToInstanceLaunchTemplatePtrOutput() InstanceLaunchTemplatePtrOutput

func (InstanceLaunchTemplateArgs) ToInstanceLaunchTemplatePtrOutputWithContext added in v4.14.0

func (i InstanceLaunchTemplateArgs) ToInstanceLaunchTemplatePtrOutputWithContext(ctx context.Context) InstanceLaunchTemplatePtrOutput

type InstanceLaunchTemplateInput added in v4.14.0

type InstanceLaunchTemplateInput interface {
	pulumi.Input

	ToInstanceLaunchTemplateOutput() InstanceLaunchTemplateOutput
	ToInstanceLaunchTemplateOutputWithContext(context.Context) InstanceLaunchTemplateOutput
}

InstanceLaunchTemplateInput is an input type that accepts InstanceLaunchTemplateArgs and InstanceLaunchTemplateOutput values. You can construct a concrete instance of `InstanceLaunchTemplateInput` via:

InstanceLaunchTemplateArgs{...}

type InstanceLaunchTemplateOutput added in v4.14.0

type InstanceLaunchTemplateOutput struct{ *pulumi.OutputState }

func (InstanceLaunchTemplateOutput) ElementType added in v4.14.0

func (InstanceLaunchTemplateOutput) Id added in v4.14.0

The ID of the launch template. Conflicts with `name`.

func (InstanceLaunchTemplateOutput) Name added in v4.14.0

The name of the launch template. Conflicts with `id`.

func (InstanceLaunchTemplateOutput) ToInstanceLaunchTemplateOutput added in v4.14.0

func (o InstanceLaunchTemplateOutput) ToInstanceLaunchTemplateOutput() InstanceLaunchTemplateOutput

func (InstanceLaunchTemplateOutput) ToInstanceLaunchTemplateOutputWithContext added in v4.14.0

func (o InstanceLaunchTemplateOutput) ToInstanceLaunchTemplateOutputWithContext(ctx context.Context) InstanceLaunchTemplateOutput

func (InstanceLaunchTemplateOutput) ToInstanceLaunchTemplatePtrOutput added in v4.14.0

func (o InstanceLaunchTemplateOutput) ToInstanceLaunchTemplatePtrOutput() InstanceLaunchTemplatePtrOutput

func (InstanceLaunchTemplateOutput) ToInstanceLaunchTemplatePtrOutputWithContext added in v4.14.0

func (o InstanceLaunchTemplateOutput) ToInstanceLaunchTemplatePtrOutputWithContext(ctx context.Context) InstanceLaunchTemplatePtrOutput

func (InstanceLaunchTemplateOutput) Version added in v4.14.0

Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.

type InstanceLaunchTemplatePtrInput added in v4.14.0

type InstanceLaunchTemplatePtrInput interface {
	pulumi.Input

	ToInstanceLaunchTemplatePtrOutput() InstanceLaunchTemplatePtrOutput
	ToInstanceLaunchTemplatePtrOutputWithContext(context.Context) InstanceLaunchTemplatePtrOutput
}

InstanceLaunchTemplatePtrInput is an input type that accepts InstanceLaunchTemplateArgs, InstanceLaunchTemplatePtr and InstanceLaunchTemplatePtrOutput values. You can construct a concrete instance of `InstanceLaunchTemplatePtrInput` via:

        InstanceLaunchTemplateArgs{...}

or:

        nil

func InstanceLaunchTemplatePtr added in v4.14.0

func InstanceLaunchTemplatePtr(v *InstanceLaunchTemplateArgs) InstanceLaunchTemplatePtrInput

type InstanceLaunchTemplatePtrOutput added in v4.14.0

type InstanceLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (InstanceLaunchTemplatePtrOutput) Elem added in v4.14.0

func (InstanceLaunchTemplatePtrOutput) ElementType added in v4.14.0

func (InstanceLaunchTemplatePtrOutput) Id added in v4.14.0

The ID of the launch template. Conflicts with `name`.

func (InstanceLaunchTemplatePtrOutput) Name added in v4.14.0

The name of the launch template. Conflicts with `id`.

func (InstanceLaunchTemplatePtrOutput) ToInstanceLaunchTemplatePtrOutput added in v4.14.0

func (o InstanceLaunchTemplatePtrOutput) ToInstanceLaunchTemplatePtrOutput() InstanceLaunchTemplatePtrOutput

func (InstanceLaunchTemplatePtrOutput) ToInstanceLaunchTemplatePtrOutputWithContext added in v4.14.0

func (o InstanceLaunchTemplatePtrOutput) ToInstanceLaunchTemplatePtrOutputWithContext(ctx context.Context) InstanceLaunchTemplatePtrOutput

func (InstanceLaunchTemplatePtrOutput) Version added in v4.14.0

Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMetadataOptions

type InstanceMetadataOptions struct {
	// Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
	HttpEndpoint *string `pulumi:"httpEndpoint"`
	// Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
	HttpPutResponseHopLimit *int `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.
	HttpTokens *string `pulumi:"httpTokens"`
}

type InstanceMetadataOptionsArgs

type InstanceMetadataOptionsArgs struct {
	// Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
	HttpEndpoint pulumi.StringPtrInput `pulumi:"httpEndpoint"`
	// Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
	HttpPutResponseHopLimit pulumi.IntPtrInput `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.
	HttpTokens pulumi.StringPtrInput `pulumi:"httpTokens"`
}

func (InstanceMetadataOptionsArgs) ElementType

func (InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsOutput

func (i InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsOutput() InstanceMetadataOptionsOutput

func (InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsOutputWithContext

func (i InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsOutputWithContext(ctx context.Context) InstanceMetadataOptionsOutput

func (InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsPtrOutput

func (i InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsPtrOutput() InstanceMetadataOptionsPtrOutput

func (InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsPtrOutputWithContext

func (i InstanceMetadataOptionsArgs) ToInstanceMetadataOptionsPtrOutputWithContext(ctx context.Context) InstanceMetadataOptionsPtrOutput

type InstanceMetadataOptionsInput

type InstanceMetadataOptionsInput interface {
	pulumi.Input

	ToInstanceMetadataOptionsOutput() InstanceMetadataOptionsOutput
	ToInstanceMetadataOptionsOutputWithContext(context.Context) InstanceMetadataOptionsOutput
}

InstanceMetadataOptionsInput is an input type that accepts InstanceMetadataOptionsArgs and InstanceMetadataOptionsOutput values. You can construct a concrete instance of `InstanceMetadataOptionsInput` via:

InstanceMetadataOptionsArgs{...}

type InstanceMetadataOptionsOutput

type InstanceMetadataOptionsOutput struct{ *pulumi.OutputState }

func (InstanceMetadataOptionsOutput) ElementType

func (InstanceMetadataOptionsOutput) HttpEndpoint

Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.

func (InstanceMetadataOptionsOutput) HttpPutResponseHopLimit

func (o InstanceMetadataOptionsOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.

func (InstanceMetadataOptionsOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.

func (InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsOutput

func (o InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsOutput() InstanceMetadataOptionsOutput

func (InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsOutputWithContext

func (o InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsOutputWithContext(ctx context.Context) InstanceMetadataOptionsOutput

func (InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsPtrOutput

func (o InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsPtrOutput() InstanceMetadataOptionsPtrOutput

func (InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsPtrOutputWithContext

func (o InstanceMetadataOptionsOutput) ToInstanceMetadataOptionsPtrOutputWithContext(ctx context.Context) InstanceMetadataOptionsPtrOutput

type InstanceMetadataOptionsPtrInput

type InstanceMetadataOptionsPtrInput interface {
	pulumi.Input

	ToInstanceMetadataOptionsPtrOutput() InstanceMetadataOptionsPtrOutput
	ToInstanceMetadataOptionsPtrOutputWithContext(context.Context) InstanceMetadataOptionsPtrOutput
}

InstanceMetadataOptionsPtrInput is an input type that accepts InstanceMetadataOptionsArgs, InstanceMetadataOptionsPtr and InstanceMetadataOptionsPtrOutput values. You can construct a concrete instance of `InstanceMetadataOptionsPtrInput` via:

        InstanceMetadataOptionsArgs{...}

or:

        nil

type InstanceMetadataOptionsPtrOutput

type InstanceMetadataOptionsPtrOutput struct{ *pulumi.OutputState }

func (InstanceMetadataOptionsPtrOutput) Elem

func (InstanceMetadataOptionsPtrOutput) ElementType

func (InstanceMetadataOptionsPtrOutput) HttpEndpoint

Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.

func (InstanceMetadataOptionsPtrOutput) HttpPutResponseHopLimit

func (o InstanceMetadataOptionsPtrOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.

func (InstanceMetadataOptionsPtrOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.

func (InstanceMetadataOptionsPtrOutput) ToInstanceMetadataOptionsPtrOutput

func (o InstanceMetadataOptionsPtrOutput) ToInstanceMetadataOptionsPtrOutput() InstanceMetadataOptionsPtrOutput

func (InstanceMetadataOptionsPtrOutput) ToInstanceMetadataOptionsPtrOutputWithContext

func (o InstanceMetadataOptionsPtrOutput) ToInstanceMetadataOptionsPtrOutputWithContext(ctx context.Context) InstanceMetadataOptionsPtrOutput

type InstanceNetworkInterface

type InstanceNetworkInterface struct {
	// Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Integer index of the network interface attachment. Limited by instance type.
	DeviceIndex int `pulumi:"deviceIndex"`
	// ID of the network interface to attach.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
}

type InstanceNetworkInterfaceArgs

type InstanceNetworkInterfaceArgs struct {
	// Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Integer index of the network interface attachment. Limited by instance type.
	DeviceIndex pulumi.IntInput `pulumi:"deviceIndex"`
	// ID of the network interface to attach.
	NetworkInterfaceId pulumi.StringInput `pulumi:"networkInterfaceId"`
}

func (InstanceNetworkInterfaceArgs) ElementType

func (InstanceNetworkInterfaceArgs) ToInstanceNetworkInterfaceOutput

func (i InstanceNetworkInterfaceArgs) ToInstanceNetworkInterfaceOutput() InstanceNetworkInterfaceOutput

func (InstanceNetworkInterfaceArgs) ToInstanceNetworkInterfaceOutputWithContext

func (i InstanceNetworkInterfaceArgs) ToInstanceNetworkInterfaceOutputWithContext(ctx context.Context) InstanceNetworkInterfaceOutput

type InstanceNetworkInterfaceArray

type InstanceNetworkInterfaceArray []InstanceNetworkInterfaceInput

func (InstanceNetworkInterfaceArray) ElementType

func (InstanceNetworkInterfaceArray) ToInstanceNetworkInterfaceArrayOutput

func (i InstanceNetworkInterfaceArray) ToInstanceNetworkInterfaceArrayOutput() InstanceNetworkInterfaceArrayOutput

func (InstanceNetworkInterfaceArray) ToInstanceNetworkInterfaceArrayOutputWithContext

func (i InstanceNetworkInterfaceArray) ToInstanceNetworkInterfaceArrayOutputWithContext(ctx context.Context) InstanceNetworkInterfaceArrayOutput

type InstanceNetworkInterfaceArrayInput

type InstanceNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToInstanceNetworkInterfaceArrayOutput() InstanceNetworkInterfaceArrayOutput
	ToInstanceNetworkInterfaceArrayOutputWithContext(context.Context) InstanceNetworkInterfaceArrayOutput
}

InstanceNetworkInterfaceArrayInput is an input type that accepts InstanceNetworkInterfaceArray and InstanceNetworkInterfaceArrayOutput values. You can construct a concrete instance of `InstanceNetworkInterfaceArrayInput` via:

InstanceNetworkInterfaceArray{ InstanceNetworkInterfaceArgs{...} }

type InstanceNetworkInterfaceArrayOutput

type InstanceNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (InstanceNetworkInterfaceArrayOutput) ElementType

func (InstanceNetworkInterfaceArrayOutput) Index

func (InstanceNetworkInterfaceArrayOutput) ToInstanceNetworkInterfaceArrayOutput

func (o InstanceNetworkInterfaceArrayOutput) ToInstanceNetworkInterfaceArrayOutput() InstanceNetworkInterfaceArrayOutput

func (InstanceNetworkInterfaceArrayOutput) ToInstanceNetworkInterfaceArrayOutputWithContext

func (o InstanceNetworkInterfaceArrayOutput) ToInstanceNetworkInterfaceArrayOutputWithContext(ctx context.Context) InstanceNetworkInterfaceArrayOutput

type InstanceNetworkInterfaceInput

type InstanceNetworkInterfaceInput interface {
	pulumi.Input

	ToInstanceNetworkInterfaceOutput() InstanceNetworkInterfaceOutput
	ToInstanceNetworkInterfaceOutputWithContext(context.Context) InstanceNetworkInterfaceOutput
}

InstanceNetworkInterfaceInput is an input type that accepts InstanceNetworkInterfaceArgs and InstanceNetworkInterfaceOutput values. You can construct a concrete instance of `InstanceNetworkInterfaceInput` via:

InstanceNetworkInterfaceArgs{...}

type InstanceNetworkInterfaceOutput

type InstanceNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (InstanceNetworkInterfaceOutput) DeleteOnTermination

func (o InstanceNetworkInterfaceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.

func (InstanceNetworkInterfaceOutput) DeviceIndex

Integer index of the network interface attachment. Limited by instance type.

func (InstanceNetworkInterfaceOutput) ElementType

func (InstanceNetworkInterfaceOutput) NetworkInterfaceId

func (o InstanceNetworkInterfaceOutput) NetworkInterfaceId() pulumi.StringOutput

ID of the network interface to attach.

func (InstanceNetworkInterfaceOutput) ToInstanceNetworkInterfaceOutput

func (o InstanceNetworkInterfaceOutput) ToInstanceNetworkInterfaceOutput() InstanceNetworkInterfaceOutput

func (InstanceNetworkInterfaceOutput) ToInstanceNetworkInterfaceOutputWithContext

func (o InstanceNetworkInterfaceOutput) ToInstanceNetworkInterfaceOutputWithContext(ctx context.Context) InstanceNetworkInterfaceOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToInstancePtrOutput

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstancePlatform

type InstancePlatform string

func (InstancePlatform) ElementType

func (InstancePlatform) ElementType() reflect.Type

func (InstancePlatform) ToInstancePlatformOutput added in v4.13.0

func (e InstancePlatform) ToInstancePlatformOutput() InstancePlatformOutput

func (InstancePlatform) ToInstancePlatformOutputWithContext added in v4.13.0

func (e InstancePlatform) ToInstancePlatformOutputWithContext(ctx context.Context) InstancePlatformOutput

func (InstancePlatform) ToInstancePlatformPtrOutput added in v4.13.0

func (e InstancePlatform) ToInstancePlatformPtrOutput() InstancePlatformPtrOutput

func (InstancePlatform) ToInstancePlatformPtrOutputWithContext added in v4.13.0

func (e InstancePlatform) ToInstancePlatformPtrOutputWithContext(ctx context.Context) InstancePlatformPtrOutput

func (InstancePlatform) ToStringOutput

func (e InstancePlatform) ToStringOutput() pulumi.StringOutput

func (InstancePlatform) ToStringOutputWithContext

func (e InstancePlatform) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstancePlatform) ToStringPtrOutput

func (e InstancePlatform) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstancePlatform) ToStringPtrOutputWithContext

func (e InstancePlatform) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstancePlatformInput added in v4.13.0

type InstancePlatformInput interface {
	pulumi.Input

	ToInstancePlatformOutput() InstancePlatformOutput
	ToInstancePlatformOutputWithContext(context.Context) InstancePlatformOutput
}

InstancePlatformInput is an input type that accepts InstancePlatformArgs and InstancePlatformOutput values. You can construct a concrete instance of `InstancePlatformInput` via:

InstancePlatformArgs{...}

type InstancePlatformOutput added in v4.13.0

type InstancePlatformOutput struct{ *pulumi.OutputState }

func (InstancePlatformOutput) ElementType added in v4.13.0

func (InstancePlatformOutput) ElementType() reflect.Type

func (InstancePlatformOutput) ToInstancePlatformOutput added in v4.13.0

func (o InstancePlatformOutput) ToInstancePlatformOutput() InstancePlatformOutput

func (InstancePlatformOutput) ToInstancePlatformOutputWithContext added in v4.13.0

func (o InstancePlatformOutput) ToInstancePlatformOutputWithContext(ctx context.Context) InstancePlatformOutput

func (InstancePlatformOutput) ToInstancePlatformPtrOutput added in v4.13.0

func (o InstancePlatformOutput) ToInstancePlatformPtrOutput() InstancePlatformPtrOutput

func (InstancePlatformOutput) ToInstancePlatformPtrOutputWithContext added in v4.13.0

func (o InstancePlatformOutput) ToInstancePlatformPtrOutputWithContext(ctx context.Context) InstancePlatformPtrOutput

func (InstancePlatformOutput) ToStringOutput added in v4.13.0

func (o InstancePlatformOutput) ToStringOutput() pulumi.StringOutput

func (InstancePlatformOutput) ToStringOutputWithContext added in v4.13.0

func (o InstancePlatformOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstancePlatformOutput) ToStringPtrOutput added in v4.13.0

func (o InstancePlatformOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstancePlatformOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o InstancePlatformOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstancePlatformPtrInput added in v4.13.0

type InstancePlatformPtrInput interface {
	pulumi.Input

	ToInstancePlatformPtrOutput() InstancePlatformPtrOutput
	ToInstancePlatformPtrOutputWithContext(context.Context) InstancePlatformPtrOutput
}

func InstancePlatformPtr added in v4.13.0

func InstancePlatformPtr(v string) InstancePlatformPtrInput

type InstancePlatformPtrOutput added in v4.13.0

type InstancePlatformPtrOutput struct{ *pulumi.OutputState }

func (InstancePlatformPtrOutput) Elem added in v4.13.0

func (InstancePlatformPtrOutput) ElementType added in v4.13.0

func (InstancePlatformPtrOutput) ElementType() reflect.Type

func (InstancePlatformPtrOutput) ToInstancePlatformPtrOutput added in v4.13.0

func (o InstancePlatformPtrOutput) ToInstancePlatformPtrOutput() InstancePlatformPtrOutput

func (InstancePlatformPtrOutput) ToInstancePlatformPtrOutputWithContext added in v4.13.0

func (o InstancePlatformPtrOutput) ToInstancePlatformPtrOutputWithContext(ctx context.Context) InstancePlatformPtrOutput

func (InstancePlatformPtrOutput) ToStringPtrOutput added in v4.13.0

func (o InstancePlatformPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstancePlatformPtrOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o InstancePlatformPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstancePtrInput

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput

type InstancePtrOutput struct{ *pulumi.OutputState }

func (InstancePtrOutput) Elem added in v4.15.0

func (InstancePtrOutput) ElementType

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceRootBlockDevice

type InstanceRootBlockDevice struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName *string `pulumi:"deviceName"`
	// Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.
	Encrypted *bool `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops *int `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// A map of tags to assign to the device.
	Tags map[string]string `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput *int `pulumi:"throughput"`
	// ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.
	VolumeId *string `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize *int `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType *string `pulumi:"volumeType"`
}

type InstanceRootBlockDeviceArgs

type InstanceRootBlockDeviceArgs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// A map of tags to assign to the device.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.
	VolumeId pulumi.StringPtrInput `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (InstanceRootBlockDeviceArgs) ElementType

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutput

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutputWithContext

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDeviceOutputWithContext(ctx context.Context) InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDevicePtrOutput

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDevicePtrOutput() InstanceRootBlockDevicePtrOutput

func (InstanceRootBlockDeviceArgs) ToInstanceRootBlockDevicePtrOutputWithContext

func (i InstanceRootBlockDeviceArgs) ToInstanceRootBlockDevicePtrOutputWithContext(ctx context.Context) InstanceRootBlockDevicePtrOutput

type InstanceRootBlockDeviceInput

type InstanceRootBlockDeviceInput interface {
	pulumi.Input

	ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput
	ToInstanceRootBlockDeviceOutputWithContext(context.Context) InstanceRootBlockDeviceOutput
}

InstanceRootBlockDeviceInput is an input type that accepts InstanceRootBlockDeviceArgs and InstanceRootBlockDeviceOutput values. You can construct a concrete instance of `InstanceRootBlockDeviceInput` via:

InstanceRootBlockDeviceArgs{...}

type InstanceRootBlockDeviceOutput

type InstanceRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (InstanceRootBlockDeviceOutput) DeleteOnTermination

func (o InstanceRootBlockDeviceOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (InstanceRootBlockDeviceOutput) DeviceName

Name of the device to mount.

func (InstanceRootBlockDeviceOutput) ElementType

func (InstanceRootBlockDeviceOutput) Encrypted

Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.

func (InstanceRootBlockDeviceOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (InstanceRootBlockDeviceOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (InstanceRootBlockDeviceOutput) Tags

A map of tags to assign to the device.

func (InstanceRootBlockDeviceOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutput

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutput() InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutputWithContext

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDeviceOutputWithContext(ctx context.Context) InstanceRootBlockDeviceOutput

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDevicePtrOutput

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDevicePtrOutput() InstanceRootBlockDevicePtrOutput

func (InstanceRootBlockDeviceOutput) ToInstanceRootBlockDevicePtrOutputWithContext

func (o InstanceRootBlockDeviceOutput) ToInstanceRootBlockDevicePtrOutputWithContext(ctx context.Context) InstanceRootBlockDevicePtrOutput

func (InstanceRootBlockDeviceOutput) VolumeId

ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.

func (InstanceRootBlockDeviceOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (InstanceRootBlockDeviceOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type InstanceRootBlockDevicePtrInput

type InstanceRootBlockDevicePtrInput interface {
	pulumi.Input

	ToInstanceRootBlockDevicePtrOutput() InstanceRootBlockDevicePtrOutput
	ToInstanceRootBlockDevicePtrOutputWithContext(context.Context) InstanceRootBlockDevicePtrOutput
}

InstanceRootBlockDevicePtrInput is an input type that accepts InstanceRootBlockDeviceArgs, InstanceRootBlockDevicePtr and InstanceRootBlockDevicePtrOutput values. You can construct a concrete instance of `InstanceRootBlockDevicePtrInput` via:

        InstanceRootBlockDeviceArgs{...}

or:

        nil

type InstanceRootBlockDevicePtrOutput

type InstanceRootBlockDevicePtrOutput struct{ *pulumi.OutputState }

func (InstanceRootBlockDevicePtrOutput) DeleteOnTermination

func (o InstanceRootBlockDevicePtrOutput) DeleteOnTermination() pulumi.BoolPtrOutput

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (InstanceRootBlockDevicePtrOutput) DeviceName

Name of the device to mount.

func (InstanceRootBlockDevicePtrOutput) Elem

func (InstanceRootBlockDevicePtrOutput) ElementType

func (InstanceRootBlockDevicePtrOutput) Encrypted

Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.

func (InstanceRootBlockDevicePtrOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (InstanceRootBlockDevicePtrOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (InstanceRootBlockDevicePtrOutput) Tags

A map of tags to assign to the device.

func (InstanceRootBlockDevicePtrOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (InstanceRootBlockDevicePtrOutput) ToInstanceRootBlockDevicePtrOutput

func (o InstanceRootBlockDevicePtrOutput) ToInstanceRootBlockDevicePtrOutput() InstanceRootBlockDevicePtrOutput

func (InstanceRootBlockDevicePtrOutput) ToInstanceRootBlockDevicePtrOutputWithContext

func (o InstanceRootBlockDevicePtrOutput) ToInstanceRootBlockDevicePtrOutputWithContext(ctx context.Context) InstanceRootBlockDevicePtrOutput

func (InstanceRootBlockDevicePtrOutput) VolumeId

ID of the volume. For example, the ID can be accessed like this, `aws_instance.web.root_block_device.0.volume_id`.

func (InstanceRootBlockDevicePtrOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (InstanceRootBlockDevicePtrOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type InstanceState

type InstanceState struct {
	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringPtrInput
	// The ARN of the instance.
	Arn pulumi.StringPtrInput
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringPtrInput
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification InstanceCapacityReservationSpecificationPtrInput
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntPtrInput
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntPtrInput
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification InstanceCreditSpecificationPtrInput
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolPtrInput
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices InstanceEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions InstanceEnclaveOptionsPtrInput
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices InstanceEphemeralBlockDeviceArrayInput
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrInput
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrInput
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringPtrInput
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.Input
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// The state of the instance. One of: `pending`, `running`, `shutting-down`, `terminated`, `stopping`, `stopped`. See [Instance Lifecycle](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) for more information.
	InstanceState pulumi.StringPtrInput
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringPtrInput
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntPtrInput
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayInput
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringPtrInput
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate InstanceLaunchTemplatePtrInput
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions InstanceMetadataOptionsPtrInput
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces InstanceNetworkInterfaceArrayInput
	// The ARN of the Outpost the instance is assigned to.
	OutpostArn pulumi.StringPtrInput
	// Base-64 encoded encrypted password data for the instance. Useful for getting the administrator password for instances running Microsoft Windows. This attribute is only exported if `getPasswordData` is true. Note that this encrypted value will be stored in the state file, as with all exported attributes. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	PasswordData pulumi.StringPtrInput
	// Placement Group to start the instance in.
	PlacementGroup pulumi.StringPtrInput
	// The ID of the instance's primary network interface.
	PrimaryNetworkInterfaceId pulumi.StringPtrInput
	// The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you've enabled DNS hostnames for your VPC.
	PrivateDns pulumi.StringPtrInput
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringPtrInput
	// The public DNS name assigned to the instance. For EC2-VPC, this is only available if you've enabled DNS hostnames for your VPC.
	PublicDns pulumi.StringPtrInput
	// The public IP address assigned to the instance, if applicable. **NOTE**: If you are using an `ec2.Eip` with your instance, you should refer to the EIP's address directly and not use `publicIp` as this field will change after the EIP is attached.
	PublicIp pulumi.StringPtrInput
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice InstanceRootBlockDevicePtrInput
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayInput
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	//
	// Deprecated: Use of `securityGroups` is discouraged as it does not allow for changes and will force your instance to be replaced if changes are made. To avoid this, use `vpcSecurityGroupIds` which allows for updates.
	SecurityGroups pulumi.StringArrayInput
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrInput
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringPtrInput
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceType

type InstanceType string

func (InstanceType) ElementType

func (InstanceType) ElementType() reflect.Type

func (InstanceType) ToInstanceTypeOutput added in v4.13.0

func (e InstanceType) ToInstanceTypeOutput() InstanceTypeOutput

func (InstanceType) ToInstanceTypeOutputWithContext added in v4.13.0

func (e InstanceType) ToInstanceTypeOutputWithContext(ctx context.Context) InstanceTypeOutput

func (InstanceType) ToInstanceTypePtrOutput added in v4.13.0

func (e InstanceType) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceType) ToInstanceTypePtrOutputWithContext added in v4.13.0

func (e InstanceType) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceType) ToStringOutput

func (e InstanceType) ToStringOutput() pulumi.StringOutput

func (InstanceType) ToStringOutputWithContext

func (e InstanceType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstanceType) ToStringPtrOutput

func (e InstanceType) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceType) ToStringPtrOutputWithContext

func (e InstanceType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstanceTypeInput added in v4.13.0

type InstanceTypeInput interface {
	pulumi.Input

	ToInstanceTypeOutput() InstanceTypeOutput
	ToInstanceTypeOutputWithContext(context.Context) InstanceTypeOutput
}

InstanceTypeInput is an input type that accepts InstanceTypeArgs and InstanceTypeOutput values. You can construct a concrete instance of `InstanceTypeInput` via:

InstanceTypeArgs{...}

type InstanceTypeOutput added in v4.13.0

type InstanceTypeOutput struct{ *pulumi.OutputState }

func (InstanceTypeOutput) ElementType added in v4.13.0

func (InstanceTypeOutput) ElementType() reflect.Type

func (InstanceTypeOutput) ToInstanceTypeOutput added in v4.13.0

func (o InstanceTypeOutput) ToInstanceTypeOutput() InstanceTypeOutput

func (InstanceTypeOutput) ToInstanceTypeOutputWithContext added in v4.13.0

func (o InstanceTypeOutput) ToInstanceTypeOutputWithContext(ctx context.Context) InstanceTypeOutput

func (InstanceTypeOutput) ToInstanceTypePtrOutput added in v4.13.0

func (o InstanceTypeOutput) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceTypeOutput) ToInstanceTypePtrOutputWithContext added in v4.13.0

func (o InstanceTypeOutput) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceTypeOutput) ToStringOutput added in v4.13.0

func (o InstanceTypeOutput) ToStringOutput() pulumi.StringOutput

func (InstanceTypeOutput) ToStringOutputWithContext added in v4.13.0

func (o InstanceTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (InstanceTypeOutput) ToStringPtrOutput added in v4.13.0

func (o InstanceTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceTypeOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o InstanceTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InstanceTypePtrInput added in v4.13.0

type InstanceTypePtrInput interface {
	pulumi.Input

	ToInstanceTypePtrOutput() InstanceTypePtrOutput
	ToInstanceTypePtrOutputWithContext(context.Context) InstanceTypePtrOutput
}

func InstanceTypePtr added in v4.13.0

func InstanceTypePtr(v string) InstanceTypePtrInput

type InstanceTypePtrOutput added in v4.13.0

type InstanceTypePtrOutput struct{ *pulumi.OutputState }

func (InstanceTypePtrOutput) Elem added in v4.13.0

func (InstanceTypePtrOutput) ElementType added in v4.13.0

func (InstanceTypePtrOutput) ElementType() reflect.Type

func (InstanceTypePtrOutput) ToInstanceTypePtrOutput added in v4.13.0

func (o InstanceTypePtrOutput) ToInstanceTypePtrOutput() InstanceTypePtrOutput

func (InstanceTypePtrOutput) ToInstanceTypePtrOutputWithContext added in v4.13.0

func (o InstanceTypePtrOutput) ToInstanceTypePtrOutputWithContext(ctx context.Context) InstanceTypePtrOutput

func (InstanceTypePtrOutput) ToStringPtrOutput added in v4.13.0

func (o InstanceTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (InstanceTypePtrOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o InstanceTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type InternetGateway

type InternetGateway struct {
	pulumi.CustomResourceState

	// The ARN of the Internet Gateway.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The ID of the AWS account that owns the internet gateway.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC ID to create in.
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
}

Provides a resource to create a VPC Internet Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewInternetGateway(ctx, "gw", &ec2.InternetGatewayArgs{
			VpcId: pulumi.Any(aws_vpc.Main.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Internet Gateways can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/internetGateway:InternetGateway gw igw-c0a643a9

```

func GetInternetGateway

func GetInternetGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InternetGatewayState, opts ...pulumi.ResourceOption) (*InternetGateway, error)

GetInternetGateway gets an existing InternetGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInternetGateway

func NewInternetGateway(ctx *pulumi.Context,
	name string, args *InternetGatewayArgs, opts ...pulumi.ResourceOption) (*InternetGateway, error)

NewInternetGateway registers a new resource with the given unique name, arguments, and options.

func (*InternetGateway) ElementType

func (*InternetGateway) ElementType() reflect.Type

func (*InternetGateway) ToInternetGatewayOutput

func (i *InternetGateway) ToInternetGatewayOutput() InternetGatewayOutput

func (*InternetGateway) ToInternetGatewayOutputWithContext

func (i *InternetGateway) ToInternetGatewayOutputWithContext(ctx context.Context) InternetGatewayOutput

func (*InternetGateway) ToInternetGatewayPtrOutput

func (i *InternetGateway) ToInternetGatewayPtrOutput() InternetGatewayPtrOutput

func (*InternetGateway) ToInternetGatewayPtrOutputWithContext

func (i *InternetGateway) ToInternetGatewayPtrOutputWithContext(ctx context.Context) InternetGatewayPtrOutput

type InternetGatewayArgs

type InternetGatewayArgs struct {
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a InternetGateway resource.

func (InternetGatewayArgs) ElementType

func (InternetGatewayArgs) ElementType() reflect.Type

type InternetGatewayArray

type InternetGatewayArray []InternetGatewayInput

func (InternetGatewayArray) ElementType

func (InternetGatewayArray) ElementType() reflect.Type

func (InternetGatewayArray) ToInternetGatewayArrayOutput

func (i InternetGatewayArray) ToInternetGatewayArrayOutput() InternetGatewayArrayOutput

func (InternetGatewayArray) ToInternetGatewayArrayOutputWithContext

func (i InternetGatewayArray) ToInternetGatewayArrayOutputWithContext(ctx context.Context) InternetGatewayArrayOutput

type InternetGatewayArrayInput

type InternetGatewayArrayInput interface {
	pulumi.Input

	ToInternetGatewayArrayOutput() InternetGatewayArrayOutput
	ToInternetGatewayArrayOutputWithContext(context.Context) InternetGatewayArrayOutput
}

InternetGatewayArrayInput is an input type that accepts InternetGatewayArray and InternetGatewayArrayOutput values. You can construct a concrete instance of `InternetGatewayArrayInput` via:

InternetGatewayArray{ InternetGatewayArgs{...} }

type InternetGatewayArrayOutput

type InternetGatewayArrayOutput struct{ *pulumi.OutputState }

func (InternetGatewayArrayOutput) ElementType

func (InternetGatewayArrayOutput) ElementType() reflect.Type

func (InternetGatewayArrayOutput) Index

func (InternetGatewayArrayOutput) ToInternetGatewayArrayOutput

func (o InternetGatewayArrayOutput) ToInternetGatewayArrayOutput() InternetGatewayArrayOutput

func (InternetGatewayArrayOutput) ToInternetGatewayArrayOutputWithContext

func (o InternetGatewayArrayOutput) ToInternetGatewayArrayOutputWithContext(ctx context.Context) InternetGatewayArrayOutput

type InternetGatewayInput

type InternetGatewayInput interface {
	pulumi.Input

	ToInternetGatewayOutput() InternetGatewayOutput
	ToInternetGatewayOutputWithContext(ctx context.Context) InternetGatewayOutput
}

type InternetGatewayMap

type InternetGatewayMap map[string]InternetGatewayInput

func (InternetGatewayMap) ElementType

func (InternetGatewayMap) ElementType() reflect.Type

func (InternetGatewayMap) ToInternetGatewayMapOutput

func (i InternetGatewayMap) ToInternetGatewayMapOutput() InternetGatewayMapOutput

func (InternetGatewayMap) ToInternetGatewayMapOutputWithContext

func (i InternetGatewayMap) ToInternetGatewayMapOutputWithContext(ctx context.Context) InternetGatewayMapOutput

type InternetGatewayMapInput

type InternetGatewayMapInput interface {
	pulumi.Input

	ToInternetGatewayMapOutput() InternetGatewayMapOutput
	ToInternetGatewayMapOutputWithContext(context.Context) InternetGatewayMapOutput
}

InternetGatewayMapInput is an input type that accepts InternetGatewayMap and InternetGatewayMapOutput values. You can construct a concrete instance of `InternetGatewayMapInput` via:

InternetGatewayMap{ "key": InternetGatewayArgs{...} }

type InternetGatewayMapOutput

type InternetGatewayMapOutput struct{ *pulumi.OutputState }

func (InternetGatewayMapOutput) ElementType

func (InternetGatewayMapOutput) ElementType() reflect.Type

func (InternetGatewayMapOutput) MapIndex

func (InternetGatewayMapOutput) ToInternetGatewayMapOutput

func (o InternetGatewayMapOutput) ToInternetGatewayMapOutput() InternetGatewayMapOutput

func (InternetGatewayMapOutput) ToInternetGatewayMapOutputWithContext

func (o InternetGatewayMapOutput) ToInternetGatewayMapOutputWithContext(ctx context.Context) InternetGatewayMapOutput

type InternetGatewayOutput

type InternetGatewayOutput struct{ *pulumi.OutputState }

func (InternetGatewayOutput) ElementType

func (InternetGatewayOutput) ElementType() reflect.Type

func (InternetGatewayOutput) ToInternetGatewayOutput

func (o InternetGatewayOutput) ToInternetGatewayOutput() InternetGatewayOutput

func (InternetGatewayOutput) ToInternetGatewayOutputWithContext

func (o InternetGatewayOutput) ToInternetGatewayOutputWithContext(ctx context.Context) InternetGatewayOutput

func (InternetGatewayOutput) ToInternetGatewayPtrOutput

func (o InternetGatewayOutput) ToInternetGatewayPtrOutput() InternetGatewayPtrOutput

func (InternetGatewayOutput) ToInternetGatewayPtrOutputWithContext

func (o InternetGatewayOutput) ToInternetGatewayPtrOutputWithContext(ctx context.Context) InternetGatewayPtrOutput

type InternetGatewayPtrInput

type InternetGatewayPtrInput interface {
	pulumi.Input

	ToInternetGatewayPtrOutput() InternetGatewayPtrOutput
	ToInternetGatewayPtrOutputWithContext(ctx context.Context) InternetGatewayPtrOutput
}

type InternetGatewayPtrOutput

type InternetGatewayPtrOutput struct{ *pulumi.OutputState }

func (InternetGatewayPtrOutput) Elem added in v4.15.0

func (InternetGatewayPtrOutput) ElementType

func (InternetGatewayPtrOutput) ElementType() reflect.Type

func (InternetGatewayPtrOutput) ToInternetGatewayPtrOutput

func (o InternetGatewayPtrOutput) ToInternetGatewayPtrOutput() InternetGatewayPtrOutput

func (InternetGatewayPtrOutput) ToInternetGatewayPtrOutputWithContext

func (o InternetGatewayPtrOutput) ToInternetGatewayPtrOutputWithContext(ctx context.Context) InternetGatewayPtrOutput

type InternetGatewayState

type InternetGatewayState struct {
	// The ARN of the Internet Gateway.
	Arn pulumi.StringPtrInput
	// The ID of the AWS account that owns the internet gateway.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringPtrInput
}

func (InternetGatewayState) ElementType

func (InternetGatewayState) ElementType() reflect.Type

type KeyPair

type KeyPair struct {
	pulumi.CustomResourceState

	// The key pair ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The MD5 public key fingerprint as specified in section 4 of RFC 4716.
	Fingerprint pulumi.StringOutput `pulumi:"fingerprint"`
	// The name for the key pair.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `keyName`.
	KeyNamePrefix pulumi.StringPtrOutput `pulumi:"keyNamePrefix"`
	// The key pair ID.
	KeyPairId pulumi.StringOutput `pulumi:"keyPairId"`
	// The public key material.
	PublicKey pulumi.StringOutput    `pulumi:"publicKey"`
	Tags      pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll   pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an [EC2 key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) resource. A key pair is used to control login access to EC2 instances.

Currently this resource requires an existing user-supplied key pair. This key pair's public key will be registered with AWS to allow logging-in to EC2 instances.

When importing an existing key pair the public key material may be in any format supported by AWS. Supported formats (per the [AWS documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#how-to-generate-your-own-key-and-import-it-to-aws)) are:

* OpenSSH public key format (the format in ~/.ssh/authorized_keys) * Base64 encoded DER format * SSH public key file format as specified in RFC4716

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewKeyPair(ctx, "deployer", &ec2.KeyPairArgs{
			PublicKey: pulumi.String("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Key Pairs can be imported using the `key_name`, e.g.

```sh

$ pulumi import aws:ec2/keyPair:KeyPair deployer deployer-key

```

func GetKeyPair

func GetKeyPair(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeyPairState, opts ...pulumi.ResourceOption) (*KeyPair, error)

GetKeyPair gets an existing KeyPair resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewKeyPair

func NewKeyPair(ctx *pulumi.Context,
	name string, args *KeyPairArgs, opts ...pulumi.ResourceOption) (*KeyPair, error)

NewKeyPair registers a new resource with the given unique name, arguments, and options.

func (*KeyPair) ElementType

func (*KeyPair) ElementType() reflect.Type

func (*KeyPair) ToKeyPairOutput

func (i *KeyPair) ToKeyPairOutput() KeyPairOutput

func (*KeyPair) ToKeyPairOutputWithContext

func (i *KeyPair) ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput

func (*KeyPair) ToKeyPairPtrOutput

func (i *KeyPair) ToKeyPairPtrOutput() KeyPairPtrOutput

func (*KeyPair) ToKeyPairPtrOutputWithContext

func (i *KeyPair) ToKeyPairPtrOutputWithContext(ctx context.Context) KeyPairPtrOutput

type KeyPairArgs

type KeyPairArgs struct {
	// The name for the key pair.
	KeyName pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `keyName`.
	KeyNamePrefix pulumi.StringPtrInput
	// The public key material.
	PublicKey pulumi.StringInput
	Tags      pulumi.StringMapInput
	TagsAll   pulumi.StringMapInput
}

The set of arguments for constructing a KeyPair resource.

func (KeyPairArgs) ElementType

func (KeyPairArgs) ElementType() reflect.Type

type KeyPairArray

type KeyPairArray []KeyPairInput

func (KeyPairArray) ElementType

func (KeyPairArray) ElementType() reflect.Type

func (KeyPairArray) ToKeyPairArrayOutput

func (i KeyPairArray) ToKeyPairArrayOutput() KeyPairArrayOutput

func (KeyPairArray) ToKeyPairArrayOutputWithContext

func (i KeyPairArray) ToKeyPairArrayOutputWithContext(ctx context.Context) KeyPairArrayOutput

type KeyPairArrayInput

type KeyPairArrayInput interface {
	pulumi.Input

	ToKeyPairArrayOutput() KeyPairArrayOutput
	ToKeyPairArrayOutputWithContext(context.Context) KeyPairArrayOutput
}

KeyPairArrayInput is an input type that accepts KeyPairArray and KeyPairArrayOutput values. You can construct a concrete instance of `KeyPairArrayInput` via:

KeyPairArray{ KeyPairArgs{...} }

type KeyPairArrayOutput

type KeyPairArrayOutput struct{ *pulumi.OutputState }

func (KeyPairArrayOutput) ElementType

func (KeyPairArrayOutput) ElementType() reflect.Type

func (KeyPairArrayOutput) Index

func (KeyPairArrayOutput) ToKeyPairArrayOutput

func (o KeyPairArrayOutput) ToKeyPairArrayOutput() KeyPairArrayOutput

func (KeyPairArrayOutput) ToKeyPairArrayOutputWithContext

func (o KeyPairArrayOutput) ToKeyPairArrayOutputWithContext(ctx context.Context) KeyPairArrayOutput

type KeyPairInput

type KeyPairInput interface {
	pulumi.Input

	ToKeyPairOutput() KeyPairOutput
	ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput
}

type KeyPairMap

type KeyPairMap map[string]KeyPairInput

func (KeyPairMap) ElementType

func (KeyPairMap) ElementType() reflect.Type

func (KeyPairMap) ToKeyPairMapOutput

func (i KeyPairMap) ToKeyPairMapOutput() KeyPairMapOutput

func (KeyPairMap) ToKeyPairMapOutputWithContext

func (i KeyPairMap) ToKeyPairMapOutputWithContext(ctx context.Context) KeyPairMapOutput

type KeyPairMapInput

type KeyPairMapInput interface {
	pulumi.Input

	ToKeyPairMapOutput() KeyPairMapOutput
	ToKeyPairMapOutputWithContext(context.Context) KeyPairMapOutput
}

KeyPairMapInput is an input type that accepts KeyPairMap and KeyPairMapOutput values. You can construct a concrete instance of `KeyPairMapInput` via:

KeyPairMap{ "key": KeyPairArgs{...} }

type KeyPairMapOutput

type KeyPairMapOutput struct{ *pulumi.OutputState }

func (KeyPairMapOutput) ElementType

func (KeyPairMapOutput) ElementType() reflect.Type

func (KeyPairMapOutput) MapIndex

func (KeyPairMapOutput) ToKeyPairMapOutput

func (o KeyPairMapOutput) ToKeyPairMapOutput() KeyPairMapOutput

func (KeyPairMapOutput) ToKeyPairMapOutputWithContext

func (o KeyPairMapOutput) ToKeyPairMapOutputWithContext(ctx context.Context) KeyPairMapOutput

type KeyPairOutput

type KeyPairOutput struct{ *pulumi.OutputState }

func (KeyPairOutput) ElementType

func (KeyPairOutput) ElementType() reflect.Type

func (KeyPairOutput) ToKeyPairOutput

func (o KeyPairOutput) ToKeyPairOutput() KeyPairOutput

func (KeyPairOutput) ToKeyPairOutputWithContext

func (o KeyPairOutput) ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput

func (KeyPairOutput) ToKeyPairPtrOutput

func (o KeyPairOutput) ToKeyPairPtrOutput() KeyPairPtrOutput

func (KeyPairOutput) ToKeyPairPtrOutputWithContext

func (o KeyPairOutput) ToKeyPairPtrOutputWithContext(ctx context.Context) KeyPairPtrOutput

type KeyPairPtrInput

type KeyPairPtrInput interface {
	pulumi.Input

	ToKeyPairPtrOutput() KeyPairPtrOutput
	ToKeyPairPtrOutputWithContext(ctx context.Context) KeyPairPtrOutput
}

type KeyPairPtrOutput

type KeyPairPtrOutput struct{ *pulumi.OutputState }

func (KeyPairPtrOutput) Elem added in v4.15.0

func (KeyPairPtrOutput) ElementType

func (KeyPairPtrOutput) ElementType() reflect.Type

func (KeyPairPtrOutput) ToKeyPairPtrOutput

func (o KeyPairPtrOutput) ToKeyPairPtrOutput() KeyPairPtrOutput

func (KeyPairPtrOutput) ToKeyPairPtrOutputWithContext

func (o KeyPairPtrOutput) ToKeyPairPtrOutputWithContext(ctx context.Context) KeyPairPtrOutput

type KeyPairState

type KeyPairState struct {
	// The key pair ARN.
	Arn pulumi.StringPtrInput
	// The MD5 public key fingerprint as specified in section 4 of RFC 4716.
	Fingerprint pulumi.StringPtrInput
	// The name for the key pair.
	KeyName pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `keyName`.
	KeyNamePrefix pulumi.StringPtrInput
	// The key pair ID.
	KeyPairId pulumi.StringPtrInput
	// The public key material.
	PublicKey pulumi.StringPtrInput
	Tags      pulumi.StringMapInput
	TagsAll   pulumi.StringMapInput
}

func (KeyPairState) ElementType

func (KeyPairState) ElementType() reflect.Type

type LaunchConfiguration

type LaunchConfiguration struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name of the launch configuration.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Associate a public ip address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrOutput `pulumi:"associatePublicIpAddress"`
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices LaunchConfigurationEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.BoolOutput `pulumi:"ebsOptimized"`
	// Enables/disables detailed monitoring. This is enabled by default.
	EnableMonitoring pulumi.BoolPtrOutput `pulumi:"enableMonitoring"`
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices LaunchConfigurationEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	// The name attribute of the IAM instance profile to associate
	// with launched instances.
	IamInstanceProfile pulumi.StringPtrOutput `pulumi:"iamInstanceProfile"`
	// The EC2 image ID to launch.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// The size of instance to launch.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The key name that should be used for the instance.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// The metadata options for the instance.
	MetadataOptions LaunchConfigurationMetadataOptionsOutput `pulumi:"metadataOptions"`
	// The name of the launch configuration. If you leave
	// this blank, this provider will auto-generate a unique name. Conflicts with `namePrefix`.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// The tenancy of the instance. Valid values are
	// `"default"` or `"dedicated"`, see [AWS's Create Launch Configuration](http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateLaunchConfiguration.html)
	// for more details
	PlacementTenancy pulumi.StringPtrOutput `pulumi:"placementTenancy"`
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevice LaunchConfigurationRootBlockDeviceOutput `pulumi:"rootBlockDevice"`
	// A list of associated security group IDS.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// The maximum price to use for reserving spot instances.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrOutput `pulumi:"userDataBase64"`
	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. `vpc-2730681a`)
	VpcClassicLinkId pulumi.StringPtrOutput `pulumi:"vpcClassicLinkId"`
	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. `sg-46ae3d11`).
	VpcClassicLinkSecurityGroups pulumi.StringArrayOutput `pulumi:"vpcClassicLinkSecurityGroups"`
}

Provides a resource to create a new launch configuration, used for autoscaling groups.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			MostRecent: &opt0,
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
					},
				},
				ec2.GetAmiFilter{
					Name: "virtualization-type",
					Values: []string{
						"hvm",
					},
				},
			},
			Owners: []string{
				"099720109477",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
			ImageId:      pulumi.String(ubuntu.Id),
			InstanceType: pulumi.String("t2.micro"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Using with AutoScaling Groups

Launch Configurations cannot be updated after creation with the Amazon Web Service API. In order to update a Launch Configuration, this provider will destroy the existing resource and create a replacement. In order to effectively use a Launch Configuration resource with an [AutoScaling Group resource](https://www.terraform.io/docs/providers/aws/r/autoscaling_group.html), it's recommended to specify `createBeforeDestroy` in a [lifecycle](https://www.terraform.io/docs/configuration/meta-arguments/lifecycle.html) block. Either omit the Launch Configuration `name` attribute, or specify a partial name with `namePrefix`. Example:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			MostRecent: &opt0,
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
					},
				},
				ec2.GetAmiFilter{
					Name: "virtualization-type",
					Values: []string{
						"hvm",
					},
				},
			},
			Owners: []string{
				"099720109477",
			},
		}, nil)
		if err != nil {
			return err
		}
		asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
			NamePrefix:   pulumi.String("lc-example-"),
			ImageId:      pulumi.String(ubuntu.Id),
			InstanceType: pulumi.String("t2.micro"),
		})
		if err != nil {
			return err
		}
		_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
			LaunchConfiguration: asConf.Name,
			MinSize:             pulumi.Int(1),
			MaxSize:             pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With this setup this provider generates a unique name for your Launch Configuration and can then update the AutoScaling Group without conflict before destroying the previous Launch Configuration.

## Using with Spot Instances

Launch configurations can set the spot instance pricing to be used for the Auto Scaling Group to reserve instances. Simply specifying the `spotPrice` parameter will set the price on the Launch Configuration which will attempt to reserve your instances at this price. See the [AWS Spot Instance documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) for more information or how to launch [Spot Instances](https://www.terraform.io/docs/providers/aws/r/spot_instance_request.html) with this provider.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			MostRecent: &opt0,
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
					},
				},
				ec2.GetAmiFilter{
					Name: "virtualization-type",
					Values: []string{
						"hvm",
					},
				},
			},
			Owners: []string{
				"099720109477",
			},
		}, nil)
		if err != nil {
			return err
		}
		asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
			ImageId:      pulumi.String(ubuntu.Id),
			InstanceType: pulumi.String("m4.large"),
			SpotPrice:    pulumi.String("0.001"),
		})
		if err != nil {
			return err
		}
		_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
			LaunchConfiguration: asConf.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Block devices

Each of the `*_block_device` attributes controls a portion of the AWS Launch Configuration's "Block Device Mapping". It's a good idea to familiarize yourself with [AWS's Block Device Mapping docs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html) to understand the implications of using these attributes.

The `rootBlockDevice` mapping supports the following:

  • `volumeType` - (Optional) The type of volume. Can be `"standard"`, `"gp2"`, `"gp3"`, `"st1"`, `"sc1"` or `"io1"`. (Default: `"standard"`).
  • `volumeSize` - (Optional) The size of the volume in gigabytes.
  • `iops` - (Optional) The amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1"`.
  • `throughput` - (Optional) The throughput (MiBps) to provision for a `gp3` volume.
  • `deleteOnTermination` - (Optional) Whether the volume should be destroyed on instance termination (Default: `true`).
  • `encrypted` - (Optional) Whether the volume should be encrypted or not. (Default: `false`).

Modifying any of the `rootBlockDevice` settings requires resource replacement.

Each `ebsBlockDevice` supports the following:

  • `deviceName` - (Required) The name of the device to mount.
  • `snapshotId` - (Optional) The Snapshot ID to mount.
  • `volumeType` - (Optional) The type of volume. Can be `"standard"`, `"gp2"`, `"gp3"`, `"st1"`, `"sc1"` or `"io1"`. (Default: `"standard"`).
  • `volumeSize` - (Optional) The size of the volume in gigabytes.
  • `iops` - (Optional) The amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1"`.
  • `throughput` - (Optional) The throughput (MiBps) to provision for a `gp3` volume.
  • `deleteOnTermination` - (Optional) Whether the volume should be destroyed on instance termination (Default: `true`).
  • `encrypted` - (Optional) Whether the volume should be encrypted or not. Do not use this option if you are using `snapshotId` as the encrypted flag will be determined by the snapshot. (Default: `false`).
  • `noDevice` - (Optional) Whether the device in the block device mapping of the AMI is suppressed.

Modifying any `ebsBlockDevice` currently requires resource replacement.

Each `ephemeralBlockDevice` supports the following:

Each AWS Instance type has a different set of Instance Store block devices available for attachment. AWS [publishes a list](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#StorageOnInstanceTypes) of which ephemeral devices are available on each type. The devices are always identified by the `virtualName` in the format `"ephemeral{0..N}"`.

> **NOTE:** Changes to `*_block_device` configuration of _existing_ resources cannot currently be detected by this provider. After updating to block device configuration, resource recreation can be manually triggered by using the [`up` command with the --replace argument](https://www.pulumi.com/docs/reference/cli/pulumi_up/).

## Import

Launch configurations can be imported using the `name`, e.g.

```sh

$ pulumi import aws:ec2/launchConfiguration:LaunchConfiguration as_conf lg-123456

```

func GetLaunchConfiguration

func GetLaunchConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LaunchConfigurationState, opts ...pulumi.ResourceOption) (*LaunchConfiguration, error)

GetLaunchConfiguration gets an existing LaunchConfiguration resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLaunchConfiguration

func NewLaunchConfiguration(ctx *pulumi.Context,
	name string, args *LaunchConfigurationArgs, opts ...pulumi.ResourceOption) (*LaunchConfiguration, error)

NewLaunchConfiguration registers a new resource with the given unique name, arguments, and options.

func (*LaunchConfiguration) ElementType

func (*LaunchConfiguration) ElementType() reflect.Type

func (*LaunchConfiguration) ToLaunchConfigurationOutput

func (i *LaunchConfiguration) ToLaunchConfigurationOutput() LaunchConfigurationOutput

func (*LaunchConfiguration) ToLaunchConfigurationOutputWithContext

func (i *LaunchConfiguration) ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput

func (*LaunchConfiguration) ToLaunchConfigurationPtrOutput

func (i *LaunchConfiguration) ToLaunchConfigurationPtrOutput() LaunchConfigurationPtrOutput

func (*LaunchConfiguration) ToLaunchConfigurationPtrOutputWithContext

func (i *LaunchConfiguration) ToLaunchConfigurationPtrOutputWithContext(ctx context.Context) LaunchConfigurationPtrOutput

type LaunchConfigurationArgs

type LaunchConfigurationArgs struct {
	// Associate a public ip address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices LaunchConfigurationEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.BoolPtrInput
	// Enables/disables detailed monitoring. This is enabled by default.
	EnableMonitoring pulumi.BoolPtrInput
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices LaunchConfigurationEphemeralBlockDeviceArrayInput
	// The name attribute of the IAM instance profile to associate
	// with launched instances.
	IamInstanceProfile pulumi.Input
	// The EC2 image ID to launch.
	ImageId pulumi.StringInput
	// The size of instance to launch.
	InstanceType pulumi.StringInput
	// The key name that should be used for the instance.
	KeyName pulumi.StringPtrInput
	// The metadata options for the instance.
	MetadataOptions LaunchConfigurationMetadataOptionsPtrInput
	// The name of the launch configuration. If you leave
	// this blank, this provider will auto-generate a unique name. Conflicts with `namePrefix`.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The tenancy of the instance. Valid values are
	// `"default"` or `"dedicated"`, see [AWS's Create Launch Configuration](http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateLaunchConfiguration.html)
	// for more details
	PlacementTenancy pulumi.StringPtrInput
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevice LaunchConfigurationRootBlockDevicePtrInput
	// A list of associated security group IDS.
	SecurityGroups pulumi.StringArrayInput
	// The maximum price to use for reserving spot instances.
	SpotPrice pulumi.StringPtrInput
	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. `vpc-2730681a`)
	VpcClassicLinkId pulumi.StringPtrInput
	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. `sg-46ae3d11`).
	VpcClassicLinkSecurityGroups pulumi.StringArrayInput
}

The set of arguments for constructing a LaunchConfiguration resource.

func (LaunchConfigurationArgs) ElementType

func (LaunchConfigurationArgs) ElementType() reflect.Type

type LaunchConfigurationArray

type LaunchConfigurationArray []LaunchConfigurationInput

func (LaunchConfigurationArray) ElementType

func (LaunchConfigurationArray) ElementType() reflect.Type

func (LaunchConfigurationArray) ToLaunchConfigurationArrayOutput

func (i LaunchConfigurationArray) ToLaunchConfigurationArrayOutput() LaunchConfigurationArrayOutput

func (LaunchConfigurationArray) ToLaunchConfigurationArrayOutputWithContext

func (i LaunchConfigurationArray) ToLaunchConfigurationArrayOutputWithContext(ctx context.Context) LaunchConfigurationArrayOutput

type LaunchConfigurationArrayInput

type LaunchConfigurationArrayInput interface {
	pulumi.Input

	ToLaunchConfigurationArrayOutput() LaunchConfigurationArrayOutput
	ToLaunchConfigurationArrayOutputWithContext(context.Context) LaunchConfigurationArrayOutput
}

LaunchConfigurationArrayInput is an input type that accepts LaunchConfigurationArray and LaunchConfigurationArrayOutput values. You can construct a concrete instance of `LaunchConfigurationArrayInput` via:

LaunchConfigurationArray{ LaunchConfigurationArgs{...} }

type LaunchConfigurationArrayOutput

type LaunchConfigurationArrayOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationArrayOutput) ElementType

func (LaunchConfigurationArrayOutput) Index

func (LaunchConfigurationArrayOutput) ToLaunchConfigurationArrayOutput

func (o LaunchConfigurationArrayOutput) ToLaunchConfigurationArrayOutput() LaunchConfigurationArrayOutput

func (LaunchConfigurationArrayOutput) ToLaunchConfigurationArrayOutputWithContext

func (o LaunchConfigurationArrayOutput) ToLaunchConfigurationArrayOutputWithContext(ctx context.Context) LaunchConfigurationArrayOutput

type LaunchConfigurationEbsBlockDevice

type LaunchConfigurationEbsBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	DeviceName          string  `pulumi:"deviceName"`
	Encrypted           *bool   `pulumi:"encrypted"`
	Iops                *int    `pulumi:"iops"`
	NoDevice            *bool   `pulumi:"noDevice"`
	SnapshotId          *string `pulumi:"snapshotId"`
	Throughput          *int    `pulumi:"throughput"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type LaunchConfigurationEbsBlockDeviceArgs

type LaunchConfigurationEbsBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	DeviceName          pulumi.StringInput    `pulumi:"deviceName"`
	Encrypted           pulumi.BoolPtrInput   `pulumi:"encrypted"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	NoDevice            pulumi.BoolPtrInput   `pulumi:"noDevice"`
	SnapshotId          pulumi.StringPtrInput `pulumi:"snapshotId"`
	Throughput          pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (LaunchConfigurationEbsBlockDeviceArgs) ElementType

func (LaunchConfigurationEbsBlockDeviceArgs) ToLaunchConfigurationEbsBlockDeviceOutput

func (i LaunchConfigurationEbsBlockDeviceArgs) ToLaunchConfigurationEbsBlockDeviceOutput() LaunchConfigurationEbsBlockDeviceOutput

func (LaunchConfigurationEbsBlockDeviceArgs) ToLaunchConfigurationEbsBlockDeviceOutputWithContext

func (i LaunchConfigurationEbsBlockDeviceArgs) ToLaunchConfigurationEbsBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationEbsBlockDeviceOutput

type LaunchConfigurationEbsBlockDeviceArray

type LaunchConfigurationEbsBlockDeviceArray []LaunchConfigurationEbsBlockDeviceInput

func (LaunchConfigurationEbsBlockDeviceArray) ElementType

func (LaunchConfigurationEbsBlockDeviceArray) ToLaunchConfigurationEbsBlockDeviceArrayOutput

func (i LaunchConfigurationEbsBlockDeviceArray) ToLaunchConfigurationEbsBlockDeviceArrayOutput() LaunchConfigurationEbsBlockDeviceArrayOutput

func (LaunchConfigurationEbsBlockDeviceArray) ToLaunchConfigurationEbsBlockDeviceArrayOutputWithContext

func (i LaunchConfigurationEbsBlockDeviceArray) ToLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) LaunchConfigurationEbsBlockDeviceArrayOutput

type LaunchConfigurationEbsBlockDeviceArrayInput

type LaunchConfigurationEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToLaunchConfigurationEbsBlockDeviceArrayOutput() LaunchConfigurationEbsBlockDeviceArrayOutput
	ToLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(context.Context) LaunchConfigurationEbsBlockDeviceArrayOutput
}

LaunchConfigurationEbsBlockDeviceArrayInput is an input type that accepts LaunchConfigurationEbsBlockDeviceArray and LaunchConfigurationEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `LaunchConfigurationEbsBlockDeviceArrayInput` via:

LaunchConfigurationEbsBlockDeviceArray{ LaunchConfigurationEbsBlockDeviceArgs{...} }

type LaunchConfigurationEbsBlockDeviceArrayOutput

type LaunchConfigurationEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationEbsBlockDeviceArrayOutput) ElementType

func (LaunchConfigurationEbsBlockDeviceArrayOutput) Index

func (LaunchConfigurationEbsBlockDeviceArrayOutput) ToLaunchConfigurationEbsBlockDeviceArrayOutput

func (o LaunchConfigurationEbsBlockDeviceArrayOutput) ToLaunchConfigurationEbsBlockDeviceArrayOutput() LaunchConfigurationEbsBlockDeviceArrayOutput

func (LaunchConfigurationEbsBlockDeviceArrayOutput) ToLaunchConfigurationEbsBlockDeviceArrayOutputWithContext

func (o LaunchConfigurationEbsBlockDeviceArrayOutput) ToLaunchConfigurationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) LaunchConfigurationEbsBlockDeviceArrayOutput

type LaunchConfigurationEbsBlockDeviceInput

type LaunchConfigurationEbsBlockDeviceInput interface {
	pulumi.Input

	ToLaunchConfigurationEbsBlockDeviceOutput() LaunchConfigurationEbsBlockDeviceOutput
	ToLaunchConfigurationEbsBlockDeviceOutputWithContext(context.Context) LaunchConfigurationEbsBlockDeviceOutput
}

LaunchConfigurationEbsBlockDeviceInput is an input type that accepts LaunchConfigurationEbsBlockDeviceArgs and LaunchConfigurationEbsBlockDeviceOutput values. You can construct a concrete instance of `LaunchConfigurationEbsBlockDeviceInput` via:

LaunchConfigurationEbsBlockDeviceArgs{...}

type LaunchConfigurationEbsBlockDeviceOutput

type LaunchConfigurationEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationEbsBlockDeviceOutput) DeleteOnTermination

func (LaunchConfigurationEbsBlockDeviceOutput) DeviceName

func (LaunchConfigurationEbsBlockDeviceOutput) ElementType

func (LaunchConfigurationEbsBlockDeviceOutput) Encrypted

func (LaunchConfigurationEbsBlockDeviceOutput) Iops

func (LaunchConfigurationEbsBlockDeviceOutput) NoDevice

func (LaunchConfigurationEbsBlockDeviceOutput) SnapshotId

func (LaunchConfigurationEbsBlockDeviceOutput) Throughput added in v4.7.0

func (LaunchConfigurationEbsBlockDeviceOutput) ToLaunchConfigurationEbsBlockDeviceOutput

func (o LaunchConfigurationEbsBlockDeviceOutput) ToLaunchConfigurationEbsBlockDeviceOutput() LaunchConfigurationEbsBlockDeviceOutput

func (LaunchConfigurationEbsBlockDeviceOutput) ToLaunchConfigurationEbsBlockDeviceOutputWithContext

func (o LaunchConfigurationEbsBlockDeviceOutput) ToLaunchConfigurationEbsBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationEbsBlockDeviceOutput

func (LaunchConfigurationEbsBlockDeviceOutput) VolumeSize

func (LaunchConfigurationEbsBlockDeviceOutput) VolumeType

type LaunchConfigurationEphemeralBlockDevice

type LaunchConfigurationEphemeralBlockDevice struct {
	DeviceName  string `pulumi:"deviceName"`
	VirtualName string `pulumi:"virtualName"`
}

type LaunchConfigurationEphemeralBlockDeviceArgs

type LaunchConfigurationEphemeralBlockDeviceArgs struct {
	DeviceName  pulumi.StringInput `pulumi:"deviceName"`
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (LaunchConfigurationEphemeralBlockDeviceArgs) ElementType

func (LaunchConfigurationEphemeralBlockDeviceArgs) ToLaunchConfigurationEphemeralBlockDeviceOutput

func (i LaunchConfigurationEphemeralBlockDeviceArgs) ToLaunchConfigurationEphemeralBlockDeviceOutput() LaunchConfigurationEphemeralBlockDeviceOutput

func (LaunchConfigurationEphemeralBlockDeviceArgs) ToLaunchConfigurationEphemeralBlockDeviceOutputWithContext

func (i LaunchConfigurationEphemeralBlockDeviceArgs) ToLaunchConfigurationEphemeralBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationEphemeralBlockDeviceOutput

type LaunchConfigurationEphemeralBlockDeviceArray

type LaunchConfigurationEphemeralBlockDeviceArray []LaunchConfigurationEphemeralBlockDeviceInput

func (LaunchConfigurationEphemeralBlockDeviceArray) ElementType

func (LaunchConfigurationEphemeralBlockDeviceArray) ToLaunchConfigurationEphemeralBlockDeviceArrayOutput

func (i LaunchConfigurationEphemeralBlockDeviceArray) ToLaunchConfigurationEphemeralBlockDeviceArrayOutput() LaunchConfigurationEphemeralBlockDeviceArrayOutput

func (LaunchConfigurationEphemeralBlockDeviceArray) ToLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext

func (i LaunchConfigurationEphemeralBlockDeviceArray) ToLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) LaunchConfigurationEphemeralBlockDeviceArrayOutput

type LaunchConfigurationEphemeralBlockDeviceArrayInput

type LaunchConfigurationEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToLaunchConfigurationEphemeralBlockDeviceArrayOutput() LaunchConfigurationEphemeralBlockDeviceArrayOutput
	ToLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(context.Context) LaunchConfigurationEphemeralBlockDeviceArrayOutput
}

LaunchConfigurationEphemeralBlockDeviceArrayInput is an input type that accepts LaunchConfigurationEphemeralBlockDeviceArray and LaunchConfigurationEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `LaunchConfigurationEphemeralBlockDeviceArrayInput` via:

LaunchConfigurationEphemeralBlockDeviceArray{ LaunchConfigurationEphemeralBlockDeviceArgs{...} }

type LaunchConfigurationEphemeralBlockDeviceArrayOutput

type LaunchConfigurationEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationEphemeralBlockDeviceArrayOutput) ElementType

func (LaunchConfigurationEphemeralBlockDeviceArrayOutput) Index

func (LaunchConfigurationEphemeralBlockDeviceArrayOutput) ToLaunchConfigurationEphemeralBlockDeviceArrayOutput

func (o LaunchConfigurationEphemeralBlockDeviceArrayOutput) ToLaunchConfigurationEphemeralBlockDeviceArrayOutput() LaunchConfigurationEphemeralBlockDeviceArrayOutput

func (LaunchConfigurationEphemeralBlockDeviceArrayOutput) ToLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext

func (o LaunchConfigurationEphemeralBlockDeviceArrayOutput) ToLaunchConfigurationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) LaunchConfigurationEphemeralBlockDeviceArrayOutput

type LaunchConfigurationEphemeralBlockDeviceInput

type LaunchConfigurationEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToLaunchConfigurationEphemeralBlockDeviceOutput() LaunchConfigurationEphemeralBlockDeviceOutput
	ToLaunchConfigurationEphemeralBlockDeviceOutputWithContext(context.Context) LaunchConfigurationEphemeralBlockDeviceOutput
}

LaunchConfigurationEphemeralBlockDeviceInput is an input type that accepts LaunchConfigurationEphemeralBlockDeviceArgs and LaunchConfigurationEphemeralBlockDeviceOutput values. You can construct a concrete instance of `LaunchConfigurationEphemeralBlockDeviceInput` via:

LaunchConfigurationEphemeralBlockDeviceArgs{...}

type LaunchConfigurationEphemeralBlockDeviceOutput

type LaunchConfigurationEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationEphemeralBlockDeviceOutput) DeviceName

func (LaunchConfigurationEphemeralBlockDeviceOutput) ElementType

func (LaunchConfigurationEphemeralBlockDeviceOutput) ToLaunchConfigurationEphemeralBlockDeviceOutput

func (o LaunchConfigurationEphemeralBlockDeviceOutput) ToLaunchConfigurationEphemeralBlockDeviceOutput() LaunchConfigurationEphemeralBlockDeviceOutput

func (LaunchConfigurationEphemeralBlockDeviceOutput) ToLaunchConfigurationEphemeralBlockDeviceOutputWithContext

func (o LaunchConfigurationEphemeralBlockDeviceOutput) ToLaunchConfigurationEphemeralBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationEphemeralBlockDeviceOutput

func (LaunchConfigurationEphemeralBlockDeviceOutput) VirtualName

type LaunchConfigurationInput

type LaunchConfigurationInput interface {
	pulumi.Input

	ToLaunchConfigurationOutput() LaunchConfigurationOutput
	ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput
}

type LaunchConfigurationMap

type LaunchConfigurationMap map[string]LaunchConfigurationInput

func (LaunchConfigurationMap) ElementType

func (LaunchConfigurationMap) ElementType() reflect.Type

func (LaunchConfigurationMap) ToLaunchConfigurationMapOutput

func (i LaunchConfigurationMap) ToLaunchConfigurationMapOutput() LaunchConfigurationMapOutput

func (LaunchConfigurationMap) ToLaunchConfigurationMapOutputWithContext

func (i LaunchConfigurationMap) ToLaunchConfigurationMapOutputWithContext(ctx context.Context) LaunchConfigurationMapOutput

type LaunchConfigurationMapInput

type LaunchConfigurationMapInput interface {
	pulumi.Input

	ToLaunchConfigurationMapOutput() LaunchConfigurationMapOutput
	ToLaunchConfigurationMapOutputWithContext(context.Context) LaunchConfigurationMapOutput
}

LaunchConfigurationMapInput is an input type that accepts LaunchConfigurationMap and LaunchConfigurationMapOutput values. You can construct a concrete instance of `LaunchConfigurationMapInput` via:

LaunchConfigurationMap{ "key": LaunchConfigurationArgs{...} }

type LaunchConfigurationMapOutput

type LaunchConfigurationMapOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationMapOutput) ElementType

func (LaunchConfigurationMapOutput) MapIndex

func (LaunchConfigurationMapOutput) ToLaunchConfigurationMapOutput

func (o LaunchConfigurationMapOutput) ToLaunchConfigurationMapOutput() LaunchConfigurationMapOutput

func (LaunchConfigurationMapOutput) ToLaunchConfigurationMapOutputWithContext

func (o LaunchConfigurationMapOutput) ToLaunchConfigurationMapOutputWithContext(ctx context.Context) LaunchConfigurationMapOutput

type LaunchConfigurationMetadataOptions

type LaunchConfigurationMetadataOptions struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint *string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit *int `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens *string `pulumi:"httpTokens"`
}

type LaunchConfigurationMetadataOptionsArgs

type LaunchConfigurationMetadataOptionsArgs struct {
	// The state of the metadata service: `enabled`, `disabled`.
	HttpEndpoint pulumi.StringPtrInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit pulumi.IntPtrInput `pulumi:"httpPutResponseHopLimit"`
	// If session tokens are required: `optional`, `required`.
	HttpTokens pulumi.StringPtrInput `pulumi:"httpTokens"`
}

func (LaunchConfigurationMetadataOptionsArgs) ElementType

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutput

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutputWithContext

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutput

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsInput

type LaunchConfigurationMetadataOptionsInput interface {
	pulumi.Input

	ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput
	ToLaunchConfigurationMetadataOptionsOutputWithContext(context.Context) LaunchConfigurationMetadataOptionsOutput
}

LaunchConfigurationMetadataOptionsInput is an input type that accepts LaunchConfigurationMetadataOptionsArgs and LaunchConfigurationMetadataOptionsOutput values. You can construct a concrete instance of `LaunchConfigurationMetadataOptionsInput` via:

LaunchConfigurationMetadataOptionsArgs{...}

type LaunchConfigurationMetadataOptionsOutput

type LaunchConfigurationMetadataOptionsOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationMetadataOptionsOutput) ElementType

func (LaunchConfigurationMetadataOptionsOutput) HttpEndpoint

The state of the metadata service: `enabled`, `disabled`.

func (LaunchConfigurationMetadataOptionsOutput) HttpPutResponseHopLimit

func (o LaunchConfigurationMetadataOptionsOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

The desired HTTP PUT response hop limit for instance metadata requests.

func (LaunchConfigurationMetadataOptionsOutput) HttpTokens

If session tokens are required: `optional`, `required`.

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutput

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutputWithContext

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutput

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsPtrInput

type LaunchConfigurationMetadataOptionsPtrInput interface {
	pulumi.Input

	ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput
	ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(context.Context) LaunchConfigurationMetadataOptionsPtrOutput
}

LaunchConfigurationMetadataOptionsPtrInput is an input type that accepts LaunchConfigurationMetadataOptionsArgs, LaunchConfigurationMetadataOptionsPtr and LaunchConfigurationMetadataOptionsPtrOutput values. You can construct a concrete instance of `LaunchConfigurationMetadataOptionsPtrInput` via:

        LaunchConfigurationMetadataOptionsArgs{...}

or:

        nil

type LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationMetadataOptionsPtrOutput) Elem

func (LaunchConfigurationMetadataOptionsPtrOutput) ElementType

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpEndpoint

The state of the metadata service: `enabled`, `disabled`.

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpPutResponseHopLimit

The desired HTTP PUT response hop limit for instance metadata requests.

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpTokens

If session tokens are required: `optional`, `required`.

func (LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutput

func (o LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (o LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationOutput

type LaunchConfigurationOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationOutput) ElementType

func (LaunchConfigurationOutput) ElementType() reflect.Type

func (LaunchConfigurationOutput) ToLaunchConfigurationOutput

func (o LaunchConfigurationOutput) ToLaunchConfigurationOutput() LaunchConfigurationOutput

func (LaunchConfigurationOutput) ToLaunchConfigurationOutputWithContext

func (o LaunchConfigurationOutput) ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput

func (LaunchConfigurationOutput) ToLaunchConfigurationPtrOutput

func (o LaunchConfigurationOutput) ToLaunchConfigurationPtrOutput() LaunchConfigurationPtrOutput

func (LaunchConfigurationOutput) ToLaunchConfigurationPtrOutputWithContext

func (o LaunchConfigurationOutput) ToLaunchConfigurationPtrOutputWithContext(ctx context.Context) LaunchConfigurationPtrOutput

type LaunchConfigurationPtrInput

type LaunchConfigurationPtrInput interface {
	pulumi.Input

	ToLaunchConfigurationPtrOutput() LaunchConfigurationPtrOutput
	ToLaunchConfigurationPtrOutputWithContext(ctx context.Context) LaunchConfigurationPtrOutput
}

type LaunchConfigurationPtrOutput

type LaunchConfigurationPtrOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationPtrOutput) Elem added in v4.15.0

func (LaunchConfigurationPtrOutput) ElementType

func (LaunchConfigurationPtrOutput) ToLaunchConfigurationPtrOutput

func (o LaunchConfigurationPtrOutput) ToLaunchConfigurationPtrOutput() LaunchConfigurationPtrOutput

func (LaunchConfigurationPtrOutput) ToLaunchConfigurationPtrOutputWithContext

func (o LaunchConfigurationPtrOutput) ToLaunchConfigurationPtrOutputWithContext(ctx context.Context) LaunchConfigurationPtrOutput

type LaunchConfigurationRootBlockDevice

type LaunchConfigurationRootBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	Encrypted           *bool   `pulumi:"encrypted"`
	Iops                *int    `pulumi:"iops"`
	Throughput          *int    `pulumi:"throughput"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type LaunchConfigurationRootBlockDeviceArgs

type LaunchConfigurationRootBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	Encrypted           pulumi.BoolPtrInput   `pulumi:"encrypted"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	Throughput          pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (LaunchConfigurationRootBlockDeviceArgs) ElementType

func (LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDeviceOutput

func (i LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDeviceOutput() LaunchConfigurationRootBlockDeviceOutput

func (LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDeviceOutputWithContext

func (i LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationRootBlockDeviceOutput

func (LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDevicePtrOutput

func (i LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDevicePtrOutput() LaunchConfigurationRootBlockDevicePtrOutput

func (LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext

func (i LaunchConfigurationRootBlockDeviceArgs) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationRootBlockDevicePtrOutput

type LaunchConfigurationRootBlockDeviceInput

type LaunchConfigurationRootBlockDeviceInput interface {
	pulumi.Input

	ToLaunchConfigurationRootBlockDeviceOutput() LaunchConfigurationRootBlockDeviceOutput
	ToLaunchConfigurationRootBlockDeviceOutputWithContext(context.Context) LaunchConfigurationRootBlockDeviceOutput
}

LaunchConfigurationRootBlockDeviceInput is an input type that accepts LaunchConfigurationRootBlockDeviceArgs and LaunchConfigurationRootBlockDeviceOutput values. You can construct a concrete instance of `LaunchConfigurationRootBlockDeviceInput` via:

LaunchConfigurationRootBlockDeviceArgs{...}

type LaunchConfigurationRootBlockDeviceOutput

type LaunchConfigurationRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationRootBlockDeviceOutput) DeleteOnTermination

func (LaunchConfigurationRootBlockDeviceOutput) ElementType

func (LaunchConfigurationRootBlockDeviceOutput) Encrypted

func (LaunchConfigurationRootBlockDeviceOutput) Iops

func (LaunchConfigurationRootBlockDeviceOutput) Throughput added in v4.7.0

func (LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDeviceOutput

func (o LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDeviceOutput() LaunchConfigurationRootBlockDeviceOutput

func (LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDeviceOutputWithContext

func (o LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationRootBlockDeviceOutput

func (LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDevicePtrOutput

func (o LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDevicePtrOutput() LaunchConfigurationRootBlockDevicePtrOutput

func (LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext

func (o LaunchConfigurationRootBlockDeviceOutput) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationRootBlockDevicePtrOutput

func (LaunchConfigurationRootBlockDeviceOutput) VolumeSize

func (LaunchConfigurationRootBlockDeviceOutput) VolumeType

type LaunchConfigurationRootBlockDevicePtrInput

type LaunchConfigurationRootBlockDevicePtrInput interface {
	pulumi.Input

	ToLaunchConfigurationRootBlockDevicePtrOutput() LaunchConfigurationRootBlockDevicePtrOutput
	ToLaunchConfigurationRootBlockDevicePtrOutputWithContext(context.Context) LaunchConfigurationRootBlockDevicePtrOutput
}

LaunchConfigurationRootBlockDevicePtrInput is an input type that accepts LaunchConfigurationRootBlockDeviceArgs, LaunchConfigurationRootBlockDevicePtr and LaunchConfigurationRootBlockDevicePtrOutput values. You can construct a concrete instance of `LaunchConfigurationRootBlockDevicePtrInput` via:

        LaunchConfigurationRootBlockDeviceArgs{...}

or:

        nil

type LaunchConfigurationRootBlockDevicePtrOutput

type LaunchConfigurationRootBlockDevicePtrOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationRootBlockDevicePtrOutput) DeleteOnTermination

func (LaunchConfigurationRootBlockDevicePtrOutput) Elem

func (LaunchConfigurationRootBlockDevicePtrOutput) ElementType

func (LaunchConfigurationRootBlockDevicePtrOutput) Encrypted

func (LaunchConfigurationRootBlockDevicePtrOutput) Iops

func (LaunchConfigurationRootBlockDevicePtrOutput) Throughput added in v4.7.0

func (LaunchConfigurationRootBlockDevicePtrOutput) ToLaunchConfigurationRootBlockDevicePtrOutput

func (o LaunchConfigurationRootBlockDevicePtrOutput) ToLaunchConfigurationRootBlockDevicePtrOutput() LaunchConfigurationRootBlockDevicePtrOutput

func (LaunchConfigurationRootBlockDevicePtrOutput) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext

func (o LaunchConfigurationRootBlockDevicePtrOutput) ToLaunchConfigurationRootBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationRootBlockDevicePtrOutput

func (LaunchConfigurationRootBlockDevicePtrOutput) VolumeSize

func (LaunchConfigurationRootBlockDevicePtrOutput) VolumeType

type LaunchConfigurationState

type LaunchConfigurationState struct {
	// The Amazon Resource Name of the launch configuration.
	Arn pulumi.StringPtrInput
	// Associate a public ip address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// Additional EBS block devices to attach to the
	// instance.  See Block Devices below for details.
	EbsBlockDevices LaunchConfigurationEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.BoolPtrInput
	// Enables/disables detailed monitoring. This is enabled by default.
	EnableMonitoring pulumi.BoolPtrInput
	// Customize Ephemeral (also known as
	// "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevices LaunchConfigurationEphemeralBlockDeviceArrayInput
	// The name attribute of the IAM instance profile to associate
	// with launched instances.
	IamInstanceProfile pulumi.Input
	// The EC2 image ID to launch.
	ImageId pulumi.StringPtrInput
	// The size of instance to launch.
	InstanceType pulumi.StringPtrInput
	// The key name that should be used for the instance.
	KeyName pulumi.StringPtrInput
	// The metadata options for the instance.
	MetadataOptions LaunchConfigurationMetadataOptionsPtrInput
	// The name of the launch configuration. If you leave
	// this blank, this provider will auto-generate a unique name. Conflicts with `namePrefix`.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The tenancy of the instance. Valid values are
	// `"default"` or `"dedicated"`, see [AWS's Create Launch Configuration](http://docs.aws.amazon.com/AutoScaling/latest/APIReference/API_CreateLaunchConfiguration.html)
	// for more details
	PlacementTenancy pulumi.StringPtrInput
	// Customize details about the root block
	// device of the instance. See Block Devices below for details.
	RootBlockDevice LaunchConfigurationRootBlockDevicePtrInput
	// A list of associated security group IDS.
	SecurityGroups pulumi.StringArrayInput
	// The maximum price to use for reserving spot instances.
	SpotPrice pulumi.StringPtrInput
	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. `vpc-2730681a`)
	VpcClassicLinkId pulumi.StringPtrInput
	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. `sg-46ae3d11`).
	VpcClassicLinkSecurityGroups pulumi.StringArrayInput
}

func (LaunchConfigurationState) ElementType

func (LaunchConfigurationState) ElementType() reflect.Type

type LaunchTemplate

type LaunchTemplate struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specify volumes to attach to the instance besides the volumes specified by the AMI.
	// See Block Devices below for details.
	BlockDeviceMappings LaunchTemplateBlockDeviceMappingArrayOutput `pulumi:"blockDeviceMappings"`
	// Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification LaunchTemplateCapacityReservationSpecificationPtrOutput `pulumi:"capacityReservationSpecification"`
	// The CPU options for the instance. See CPU Options below for more details.
	CpuOptions LaunchTemplateCpuOptionsPtrOutput `pulumi:"cpuOptions"`
	// Customize the credit specification of the instance. See Credit
	// Specification below for more details.
	CreditSpecification LaunchTemplateCreditSpecificationPtrOutput `pulumi:"creditSpecification"`
	// Default Version of the launch template.
	DefaultVersion pulumi.IntOutput `pulumi:"defaultVersion"`
	// Description of the launch template.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// If `true`, enables [EC2 Instance
	// Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination)
	DisableApiTermination pulumi.BoolPtrOutput `pulumi:"disableApiTermination"`
	// If `true`, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.StringPtrOutput `pulumi:"ebsOptimized"`
	// The elastic GPU to attach to the instance. See Elastic GPU
	// below for more details.
	ElasticGpuSpecifications LaunchTemplateElasticGpuSpecificationArrayOutput `pulumi:"elasticGpuSpecifications"`
	// Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.
	ElasticInferenceAccelerator LaunchTemplateElasticInferenceAcceleratorPtrOutput `pulumi:"elasticInferenceAccelerator"`
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions LaunchTemplateEnclaveOptionsPtrOutput `pulumi:"enclaveOptions"`
	// The hibernation options for the instance. See Hibernation Options below for more details.
	HibernationOptions LaunchTemplateHibernationOptionsPtrOutput `pulumi:"hibernationOptions"`
	// The IAM Instance Profile to launch the instance with. See Instance Profile
	// below for more details.
	IamInstanceProfile LaunchTemplateIamInstanceProfilePtrOutput `pulumi:"iamInstanceProfile"`
	// The AMI from which to launch the instance.
	ImageId pulumi.StringPtrOutput `pulumi:"imageId"`
	// Shutdown behavior for the instance. Can be `stop` or `terminate`.
	// (Default: `stop`).
	InstanceInitiatedShutdownBehavior pulumi.StringPtrOutput `pulumi:"instanceInitiatedShutdownBehavior"`
	// The market (purchasing) option for the instance. See Market Options
	// below for details.
	InstanceMarketOptions LaunchTemplateInstanceMarketOptionsPtrOutput `pulumi:"instanceMarketOptions"`
	// The type of the instance.
	InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"`
	// The kernel ID.
	KernelId pulumi.StringPtrOutput `pulumi:"kernelId"`
	// The key name to use for the instance.
	KeyName pulumi.StringPtrOutput `pulumi:"keyName"`
	// The latest version of the launch template.
	LatestVersion pulumi.IntOutput `pulumi:"latestVersion"`
	// A list of license specifications to associate with. See License Specification below for more details.
	LicenseSpecifications LaunchTemplateLicenseSpecificationArrayOutput `pulumi:"licenseSpecifications"`
	// Customize the metadata options for the instance. See Metadata Options below for more details.
	MetadataOptions LaunchTemplateMetadataOptionsOutput `pulumi:"metadataOptions"`
	// The monitoring option for the instance. See Monitoring below for more details.
	Monitoring LaunchTemplateMonitoringPtrOutput `pulumi:"monitoring"`
	// The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// Customize network interfaces to be attached at instance boot time. See Network
	// Interfaces below for more details.
	NetworkInterfaces LaunchTemplateNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// The placement of the instance. See Placement below for more details.
	Placement LaunchTemplatePlacementPtrOutput `pulumi:"placement"`
	// The ID of the RAM disk.
	RamDiskId pulumi.StringPtrOutput `pulumi:"ramDiskId"`
	// A list of security group names to associate with. If you are creating Instances in a VPC, use
	// `vpcSecurityGroupIds` instead.
	SecurityGroupNames pulumi.StringArrayOutput `pulumi:"securityGroupNames"`
	// The tags to apply to the resources during launch. See Tag Specifications below for more details.
	TagSpecifications LaunchTemplateTagSpecificationArrayOutput `pulumi:"tagSpecifications"`
	// A map of tags to assign to the launch template. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Whether to update Default Version each update. Conflicts with `defaultVersion`.
	UpdateDefaultVersion pulumi.BoolPtrOutput `pulumi:"updateDefaultVersion"`
	// The Base64-encoded user data to provide when launching the instance.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
}

Provides an EC2 launch template resource. Can be used to create instances or auto scaling groups.

## Import

Launch Templates can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/launchTemplate:LaunchTemplate web lt-12345678

```

func GetLaunchTemplate

func GetLaunchTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LaunchTemplateState, opts ...pulumi.ResourceOption) (*LaunchTemplate, error)

GetLaunchTemplate gets an existing LaunchTemplate resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLaunchTemplate

func NewLaunchTemplate(ctx *pulumi.Context,
	name string, args *LaunchTemplateArgs, opts ...pulumi.ResourceOption) (*LaunchTemplate, error)

NewLaunchTemplate registers a new resource with the given unique name, arguments, and options.

func (*LaunchTemplate) ElementType

func (*LaunchTemplate) ElementType() reflect.Type

func (*LaunchTemplate) ToLaunchTemplateOutput

func (i *LaunchTemplate) ToLaunchTemplateOutput() LaunchTemplateOutput

func (*LaunchTemplate) ToLaunchTemplateOutputWithContext

func (i *LaunchTemplate) ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput

func (*LaunchTemplate) ToLaunchTemplatePtrOutput

func (i *LaunchTemplate) ToLaunchTemplatePtrOutput() LaunchTemplatePtrOutput

func (*LaunchTemplate) ToLaunchTemplatePtrOutputWithContext

func (i *LaunchTemplate) ToLaunchTemplatePtrOutputWithContext(ctx context.Context) LaunchTemplatePtrOutput

type LaunchTemplateArgs

type LaunchTemplateArgs struct {
	// Specify volumes to attach to the instance besides the volumes specified by the AMI.
	// See Block Devices below for details.
	BlockDeviceMappings LaunchTemplateBlockDeviceMappingArrayInput
	// Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification LaunchTemplateCapacityReservationSpecificationPtrInput
	// The CPU options for the instance. See CPU Options below for more details.
	CpuOptions LaunchTemplateCpuOptionsPtrInput
	// Customize the credit specification of the instance. See Credit
	// Specification below for more details.
	CreditSpecification LaunchTemplateCreditSpecificationPtrInput
	// Default Version of the launch template.
	DefaultVersion pulumi.IntPtrInput
	// Description of the launch template.
	Description pulumi.StringPtrInput
	// If `true`, enables [EC2 Instance
	// Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination)
	DisableApiTermination pulumi.BoolPtrInput
	// If `true`, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.StringPtrInput
	// The elastic GPU to attach to the instance. See Elastic GPU
	// below for more details.
	ElasticGpuSpecifications LaunchTemplateElasticGpuSpecificationArrayInput
	// Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.
	ElasticInferenceAccelerator LaunchTemplateElasticInferenceAcceleratorPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions LaunchTemplateEnclaveOptionsPtrInput
	// The hibernation options for the instance. See Hibernation Options below for more details.
	HibernationOptions LaunchTemplateHibernationOptionsPtrInput
	// The IAM Instance Profile to launch the instance with. See Instance Profile
	// below for more details.
	IamInstanceProfile LaunchTemplateIamInstanceProfilePtrInput
	// The AMI from which to launch the instance.
	ImageId pulumi.StringPtrInput
	// Shutdown behavior for the instance. Can be `stop` or `terminate`.
	// (Default: `stop`).
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// The market (purchasing) option for the instance. See Market Options
	// below for details.
	InstanceMarketOptions LaunchTemplateInstanceMarketOptionsPtrInput
	// The type of the instance.
	InstanceType pulumi.StringPtrInput
	// The kernel ID.
	KernelId pulumi.StringPtrInput
	// The key name to use for the instance.
	KeyName pulumi.StringPtrInput
	// A list of license specifications to associate with. See License Specification below for more details.
	LicenseSpecifications LaunchTemplateLicenseSpecificationArrayInput
	// Customize the metadata options for the instance. See Metadata Options below for more details.
	MetadataOptions LaunchTemplateMetadataOptionsPtrInput
	// The monitoring option for the instance. See Monitoring below for more details.
	Monitoring LaunchTemplateMonitoringPtrInput
	// The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network
	// Interfaces below for more details.
	NetworkInterfaces LaunchTemplateNetworkInterfaceArrayInput
	// The placement of the instance. See Placement below for more details.
	Placement LaunchTemplatePlacementPtrInput
	// The ID of the RAM disk.
	RamDiskId pulumi.StringPtrInput
	// A list of security group names to associate with. If you are creating Instances in a VPC, use
	// `vpcSecurityGroupIds` instead.
	SecurityGroupNames pulumi.StringArrayInput
	// The tags to apply to the resources during launch. See Tag Specifications below for more details.
	TagSpecifications LaunchTemplateTagSpecificationArrayInput
	// A map of tags to assign to the launch template. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to update Default Version each update. Conflicts with `defaultVersion`.
	UpdateDefaultVersion pulumi.BoolPtrInput
	// The Base64-encoded user data to provide when launching the instance.
	UserData pulumi.StringPtrInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a LaunchTemplate resource.

func (LaunchTemplateArgs) ElementType

func (LaunchTemplateArgs) ElementType() reflect.Type

type LaunchTemplateArray

type LaunchTemplateArray []LaunchTemplateInput

func (LaunchTemplateArray) ElementType

func (LaunchTemplateArray) ElementType() reflect.Type

func (LaunchTemplateArray) ToLaunchTemplateArrayOutput

func (i LaunchTemplateArray) ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput

func (LaunchTemplateArray) ToLaunchTemplateArrayOutputWithContext

func (i LaunchTemplateArray) ToLaunchTemplateArrayOutputWithContext(ctx context.Context) LaunchTemplateArrayOutput

type LaunchTemplateArrayInput

type LaunchTemplateArrayInput interface {
	pulumi.Input

	ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput
	ToLaunchTemplateArrayOutputWithContext(context.Context) LaunchTemplateArrayOutput
}

LaunchTemplateArrayInput is an input type that accepts LaunchTemplateArray and LaunchTemplateArrayOutput values. You can construct a concrete instance of `LaunchTemplateArrayInput` via:

LaunchTemplateArray{ LaunchTemplateArgs{...} }

type LaunchTemplateArrayOutput

type LaunchTemplateArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateArrayOutput) ElementType

func (LaunchTemplateArrayOutput) ElementType() reflect.Type

func (LaunchTemplateArrayOutput) Index

func (LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutput

func (o LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput

func (LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutputWithContext

func (o LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutputWithContext(ctx context.Context) LaunchTemplateArrayOutput

type LaunchTemplateBlockDeviceMapping

type LaunchTemplateBlockDeviceMapping struct {
	// The name of the device to mount.
	DeviceName *string `pulumi:"deviceName"`
	// Configure EBS volume properties.
	Ebs *LaunchTemplateBlockDeviceMappingEbs `pulumi:"ebs"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice *string `pulumi:"noDevice"`
	// The [Instance Store Device
	// Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames)
	// (e.g. `"ephemeral0"`).
	VirtualName *string `pulumi:"virtualName"`
}

type LaunchTemplateBlockDeviceMappingArgs

type LaunchTemplateBlockDeviceMappingArgs struct {
	// The name of the device to mount.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// Configure EBS volume properties.
	Ebs LaunchTemplateBlockDeviceMappingEbsPtrInput `pulumi:"ebs"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice pulumi.StringPtrInput `pulumi:"noDevice"`
	// The [Instance Store Device
	// Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames)
	// (e.g. `"ephemeral0"`).
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (LaunchTemplateBlockDeviceMappingArgs) ElementType

func (LaunchTemplateBlockDeviceMappingArgs) ToLaunchTemplateBlockDeviceMappingOutput

func (i LaunchTemplateBlockDeviceMappingArgs) ToLaunchTemplateBlockDeviceMappingOutput() LaunchTemplateBlockDeviceMappingOutput

func (LaunchTemplateBlockDeviceMappingArgs) ToLaunchTemplateBlockDeviceMappingOutputWithContext

func (i LaunchTemplateBlockDeviceMappingArgs) ToLaunchTemplateBlockDeviceMappingOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingOutput

type LaunchTemplateBlockDeviceMappingArray

type LaunchTemplateBlockDeviceMappingArray []LaunchTemplateBlockDeviceMappingInput

func (LaunchTemplateBlockDeviceMappingArray) ElementType

func (LaunchTemplateBlockDeviceMappingArray) ToLaunchTemplateBlockDeviceMappingArrayOutput

func (i LaunchTemplateBlockDeviceMappingArray) ToLaunchTemplateBlockDeviceMappingArrayOutput() LaunchTemplateBlockDeviceMappingArrayOutput

func (LaunchTemplateBlockDeviceMappingArray) ToLaunchTemplateBlockDeviceMappingArrayOutputWithContext

func (i LaunchTemplateBlockDeviceMappingArray) ToLaunchTemplateBlockDeviceMappingArrayOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingArrayOutput

type LaunchTemplateBlockDeviceMappingArrayInput

type LaunchTemplateBlockDeviceMappingArrayInput interface {
	pulumi.Input

	ToLaunchTemplateBlockDeviceMappingArrayOutput() LaunchTemplateBlockDeviceMappingArrayOutput
	ToLaunchTemplateBlockDeviceMappingArrayOutputWithContext(context.Context) LaunchTemplateBlockDeviceMappingArrayOutput
}

LaunchTemplateBlockDeviceMappingArrayInput is an input type that accepts LaunchTemplateBlockDeviceMappingArray and LaunchTemplateBlockDeviceMappingArrayOutput values. You can construct a concrete instance of `LaunchTemplateBlockDeviceMappingArrayInput` via:

LaunchTemplateBlockDeviceMappingArray{ LaunchTemplateBlockDeviceMappingArgs{...} }

type LaunchTemplateBlockDeviceMappingArrayOutput

type LaunchTemplateBlockDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateBlockDeviceMappingArrayOutput) ElementType

func (LaunchTemplateBlockDeviceMappingArrayOutput) Index

func (LaunchTemplateBlockDeviceMappingArrayOutput) ToLaunchTemplateBlockDeviceMappingArrayOutput

func (o LaunchTemplateBlockDeviceMappingArrayOutput) ToLaunchTemplateBlockDeviceMappingArrayOutput() LaunchTemplateBlockDeviceMappingArrayOutput

func (LaunchTemplateBlockDeviceMappingArrayOutput) ToLaunchTemplateBlockDeviceMappingArrayOutputWithContext

func (o LaunchTemplateBlockDeviceMappingArrayOutput) ToLaunchTemplateBlockDeviceMappingArrayOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingArrayOutput

type LaunchTemplateBlockDeviceMappingEbs

type LaunchTemplateBlockDeviceMappingEbs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `false` if not set. See [Preserving Amazon EBS Volumes on Instance Termination](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) for more information.
	DeleteOnTermination *string `pulumi:"deleteOnTermination"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html)
	// on the volume (Default: `false`). Cannot be used with `snapshotId`.
	Encrypted *string `pulumi:"encrypted"`
	// The amount of provisioned
	// [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html).
	// This must be set with a `volumeType` of `"io1/io2"`.
	Iops *int `pulumi:"iops"`
	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume.
	// `encrypted` must be set to `true` when this is set.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// The Snapshot ID to mount.
	SnapshotId *string `pulumi:"snapshotId"`
	// The throughput to provision for a `gp3` volume in MiB/s (specified as an integer, e.g. 500), with a maximum of 1,000 MiB/s.
	Throughput *int `pulumi:"throughput"`
	// The size of the volume in gigabytes.
	VolumeSize *int `pulumi:"volumeSize"`
	// The volume type. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).
	VolumeType *string `pulumi:"volumeType"`
}

type LaunchTemplateBlockDeviceMappingEbsArgs

type LaunchTemplateBlockDeviceMappingEbsArgs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `false` if not set. See [Preserving Amazon EBS Volumes on Instance Termination](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) for more information.
	DeleteOnTermination pulumi.StringPtrInput `pulumi:"deleteOnTermination"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html)
	// on the volume (Default: `false`). Cannot be used with `snapshotId`.
	Encrypted pulumi.StringPtrInput `pulumi:"encrypted"`
	// The amount of provisioned
	// [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html).
	// This must be set with a `volumeType` of `"io1/io2"`.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume.
	// `encrypted` must be set to `true` when this is set.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// The Snapshot ID to mount.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The throughput to provision for a `gp3` volume in MiB/s (specified as an integer, e.g. 500), with a maximum of 1,000 MiB/s.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// The size of the volume in gigabytes.
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// The volume type. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (LaunchTemplateBlockDeviceMappingEbsArgs) ElementType

func (LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsOutput

func (i LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsOutput() LaunchTemplateBlockDeviceMappingEbsOutput

func (LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsOutputWithContext

func (i LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingEbsOutput

func (LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput

func (i LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput() LaunchTemplateBlockDeviceMappingEbsPtrOutput

func (LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext

func (i LaunchTemplateBlockDeviceMappingEbsArgs) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingEbsPtrOutput

type LaunchTemplateBlockDeviceMappingEbsInput

type LaunchTemplateBlockDeviceMappingEbsInput interface {
	pulumi.Input

	ToLaunchTemplateBlockDeviceMappingEbsOutput() LaunchTemplateBlockDeviceMappingEbsOutput
	ToLaunchTemplateBlockDeviceMappingEbsOutputWithContext(context.Context) LaunchTemplateBlockDeviceMappingEbsOutput
}

LaunchTemplateBlockDeviceMappingEbsInput is an input type that accepts LaunchTemplateBlockDeviceMappingEbsArgs and LaunchTemplateBlockDeviceMappingEbsOutput values. You can construct a concrete instance of `LaunchTemplateBlockDeviceMappingEbsInput` via:

LaunchTemplateBlockDeviceMappingEbsArgs{...}

type LaunchTemplateBlockDeviceMappingEbsOutput

type LaunchTemplateBlockDeviceMappingEbsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateBlockDeviceMappingEbsOutput) DeleteOnTermination

Whether the volume should be destroyed on instance termination. Defaults to `false` if not set. See [Preserving Amazon EBS Volumes on Instance Termination](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) for more information.

func (LaunchTemplateBlockDeviceMappingEbsOutput) ElementType

func (LaunchTemplateBlockDeviceMappingEbsOutput) Encrypted

Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume (Default: `false`). Cannot be used with `snapshotId`.

func (LaunchTemplateBlockDeviceMappingEbsOutput) Iops

The amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1/io2"`.

func (LaunchTemplateBlockDeviceMappingEbsOutput) KmsKeyId

The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. `encrypted` must be set to `true` when this is set.

func (LaunchTemplateBlockDeviceMappingEbsOutput) SnapshotId

The Snapshot ID to mount.

func (LaunchTemplateBlockDeviceMappingEbsOutput) Throughput

The throughput to provision for a `gp3` volume in MiB/s (specified as an integer, e.g. 500), with a maximum of 1,000 MiB/s.

func (LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsOutput

func (o LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsOutput() LaunchTemplateBlockDeviceMappingEbsOutput

func (LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsOutputWithContext

func (o LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingEbsOutput

func (LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput

func (o LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput() LaunchTemplateBlockDeviceMappingEbsPtrOutput

func (LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext

func (o LaunchTemplateBlockDeviceMappingEbsOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingEbsPtrOutput

func (LaunchTemplateBlockDeviceMappingEbsOutput) VolumeSize

The size of the volume in gigabytes.

func (LaunchTemplateBlockDeviceMappingEbsOutput) VolumeType

The volume type. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).

type LaunchTemplateBlockDeviceMappingEbsPtrInput

type LaunchTemplateBlockDeviceMappingEbsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateBlockDeviceMappingEbsPtrOutput() LaunchTemplateBlockDeviceMappingEbsPtrOutput
	ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext(context.Context) LaunchTemplateBlockDeviceMappingEbsPtrOutput
}

LaunchTemplateBlockDeviceMappingEbsPtrInput is an input type that accepts LaunchTemplateBlockDeviceMappingEbsArgs, LaunchTemplateBlockDeviceMappingEbsPtr and LaunchTemplateBlockDeviceMappingEbsPtrOutput values. You can construct a concrete instance of `LaunchTemplateBlockDeviceMappingEbsPtrInput` via:

        LaunchTemplateBlockDeviceMappingEbsArgs{...}

or:

        nil

type LaunchTemplateBlockDeviceMappingEbsPtrOutput

type LaunchTemplateBlockDeviceMappingEbsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) DeleteOnTermination

Whether the volume should be destroyed on instance termination. Defaults to `false` if not set. See [Preserving Amazon EBS Volumes on Instance Termination](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) for more information.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) Elem

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) ElementType

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) Encrypted

Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume (Default: `false`). Cannot be used with `snapshotId`.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) Iops

The amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). This must be set with a `volumeType` of `"io1/io2"`.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) KmsKeyId

The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. `encrypted` must be set to `true` when this is set.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) SnapshotId

The Snapshot ID to mount.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) Throughput

The throughput to provision for a `gp3` volume in MiB/s (specified as an integer, e.g. 500), with a maximum of 1,000 MiB/s.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput

func (o LaunchTemplateBlockDeviceMappingEbsPtrOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutput() LaunchTemplateBlockDeviceMappingEbsPtrOutput

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext

func (o LaunchTemplateBlockDeviceMappingEbsPtrOutput) ToLaunchTemplateBlockDeviceMappingEbsPtrOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingEbsPtrOutput

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) VolumeSize

The size of the volume in gigabytes.

func (LaunchTemplateBlockDeviceMappingEbsPtrOutput) VolumeType

The volume type. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).

type LaunchTemplateBlockDeviceMappingInput

type LaunchTemplateBlockDeviceMappingInput interface {
	pulumi.Input

	ToLaunchTemplateBlockDeviceMappingOutput() LaunchTemplateBlockDeviceMappingOutput
	ToLaunchTemplateBlockDeviceMappingOutputWithContext(context.Context) LaunchTemplateBlockDeviceMappingOutput
}

LaunchTemplateBlockDeviceMappingInput is an input type that accepts LaunchTemplateBlockDeviceMappingArgs and LaunchTemplateBlockDeviceMappingOutput values. You can construct a concrete instance of `LaunchTemplateBlockDeviceMappingInput` via:

LaunchTemplateBlockDeviceMappingArgs{...}

type LaunchTemplateBlockDeviceMappingOutput

type LaunchTemplateBlockDeviceMappingOutput struct{ *pulumi.OutputState }

func (LaunchTemplateBlockDeviceMappingOutput) DeviceName

The name of the device to mount.

func (LaunchTemplateBlockDeviceMappingOutput) Ebs

Configure EBS volume properties.

func (LaunchTemplateBlockDeviceMappingOutput) ElementType

func (LaunchTemplateBlockDeviceMappingOutput) NoDevice

Suppresses the specified device included in the AMI's block device mapping.

func (LaunchTemplateBlockDeviceMappingOutput) ToLaunchTemplateBlockDeviceMappingOutput

func (o LaunchTemplateBlockDeviceMappingOutput) ToLaunchTemplateBlockDeviceMappingOutput() LaunchTemplateBlockDeviceMappingOutput

func (LaunchTemplateBlockDeviceMappingOutput) ToLaunchTemplateBlockDeviceMappingOutputWithContext

func (o LaunchTemplateBlockDeviceMappingOutput) ToLaunchTemplateBlockDeviceMappingOutputWithContext(ctx context.Context) LaunchTemplateBlockDeviceMappingOutput

func (LaunchTemplateBlockDeviceMappingOutput) VirtualName

The [Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `"ephemeral0"`).

type LaunchTemplateCapacityReservationSpecification

type LaunchTemplateCapacityReservationSpecification struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `open` or `none`. (Default `none`).
	CapacityReservationPreference *string `pulumi:"capacityReservationPreference"`
	// Used to target a specific Capacity Reservation:
	CapacityReservationTarget *LaunchTemplateCapacityReservationSpecificationCapacityReservationTarget `pulumi:"capacityReservationTarget"`
}

type LaunchTemplateCapacityReservationSpecificationArgs

type LaunchTemplateCapacityReservationSpecificationArgs struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `open` or `none`. (Default `none`).
	CapacityReservationPreference pulumi.StringPtrInput `pulumi:"capacityReservationPreference"`
	// Used to target a specific Capacity Reservation:
	CapacityReservationTarget LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrInput `pulumi:"capacityReservationTarget"`
}

func (LaunchTemplateCapacityReservationSpecificationArgs) ElementType

func (LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationOutput

func (i LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationOutput() LaunchTemplateCapacityReservationSpecificationOutput

func (LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationOutputWithContext

func (i LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationOutput

func (LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationPtrOutput

func (i LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationPtrOutput() LaunchTemplateCapacityReservationSpecificationPtrOutput

func (LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext

func (i LaunchTemplateCapacityReservationSpecificationArgs) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationPtrOutput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTarget

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTarget struct {
	// The ID of the Capacity Reservation to target.
	CapacityReservationId *string `pulumi:"capacityReservationId"`
}

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs struct {
	// The ID of the Capacity Reservation to target.
	CapacityReservationId pulumi.StringPtrInput `pulumi:"capacityReservationId"`
}

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ElementType

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputWithContext

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext

func (i LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetInput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetInput interface {
	pulumi.Input

	ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput() LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput
	ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputWithContext(context.Context) LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput
}

LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetInput is an input type that accepts LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs and LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput values. You can construct a concrete instance of `LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetInput` via:

LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs{...}

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) CapacityReservationId

The ID of the Capacity Reservation to target.

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) ElementType

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputWithContext

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrInput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrInput interface {
	pulumi.Input

	ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput() LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput
	ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(context.Context) LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput
}

LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrInput is an input type that accepts LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs, LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtr and LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput values. You can construct a concrete instance of `LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrInput` via:

        LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetArgs{...}

or:

        nil

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput

type LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput) CapacityReservationId

The ID of the Capacity Reservation to target.

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput) Elem

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ElementType

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput

func (LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToLaunchTemplateCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext

type LaunchTemplateCapacityReservationSpecificationInput

type LaunchTemplateCapacityReservationSpecificationInput interface {
	pulumi.Input

	ToLaunchTemplateCapacityReservationSpecificationOutput() LaunchTemplateCapacityReservationSpecificationOutput
	ToLaunchTemplateCapacityReservationSpecificationOutputWithContext(context.Context) LaunchTemplateCapacityReservationSpecificationOutput
}

LaunchTemplateCapacityReservationSpecificationInput is an input type that accepts LaunchTemplateCapacityReservationSpecificationArgs and LaunchTemplateCapacityReservationSpecificationOutput values. You can construct a concrete instance of `LaunchTemplateCapacityReservationSpecificationInput` via:

LaunchTemplateCapacityReservationSpecificationArgs{...}

type LaunchTemplateCapacityReservationSpecificationOutput

type LaunchTemplateCapacityReservationSpecificationOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCapacityReservationSpecificationOutput) CapacityReservationPreference

Indicates the instance's Capacity Reservation preferences. Can be `open` or `none`. (Default `none`).

func (LaunchTemplateCapacityReservationSpecificationOutput) CapacityReservationTarget

Used to target a specific Capacity Reservation:

func (LaunchTemplateCapacityReservationSpecificationOutput) ElementType

func (LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationOutput

func (LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationOutputWithContext

func (o LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationOutput

func (LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutput

func (o LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutput() LaunchTemplateCapacityReservationSpecificationPtrOutput

func (LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext

func (o LaunchTemplateCapacityReservationSpecificationOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationPtrOutput

type LaunchTemplateCapacityReservationSpecificationPtrInput

type LaunchTemplateCapacityReservationSpecificationPtrInput interface {
	pulumi.Input

	ToLaunchTemplateCapacityReservationSpecificationPtrOutput() LaunchTemplateCapacityReservationSpecificationPtrOutput
	ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext(context.Context) LaunchTemplateCapacityReservationSpecificationPtrOutput
}

LaunchTemplateCapacityReservationSpecificationPtrInput is an input type that accepts LaunchTemplateCapacityReservationSpecificationArgs, LaunchTemplateCapacityReservationSpecificationPtr and LaunchTemplateCapacityReservationSpecificationPtrOutput values. You can construct a concrete instance of `LaunchTemplateCapacityReservationSpecificationPtrInput` via:

        LaunchTemplateCapacityReservationSpecificationArgs{...}

or:

        nil

type LaunchTemplateCapacityReservationSpecificationPtrOutput

type LaunchTemplateCapacityReservationSpecificationPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) CapacityReservationPreference

Indicates the instance's Capacity Reservation preferences. Can be `open` or `none`. (Default `none`).

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) CapacityReservationTarget

Used to target a specific Capacity Reservation:

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) Elem

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) ElementType

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutput

func (LaunchTemplateCapacityReservationSpecificationPtrOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext

func (o LaunchTemplateCapacityReservationSpecificationPtrOutput) ToLaunchTemplateCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCapacityReservationSpecificationPtrOutput

type LaunchTemplateCpuOptions

type LaunchTemplateCpuOptions struct {
	// The number of CPU cores for the instance.
	CoreCount *int `pulumi:"coreCount"`
	// The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1.
	// Otherwise, specify the default value of 2.
	ThreadsPerCore *int `pulumi:"threadsPerCore"`
}

type LaunchTemplateCpuOptionsArgs

type LaunchTemplateCpuOptionsArgs struct {
	// The number of CPU cores for the instance.
	CoreCount pulumi.IntPtrInput `pulumi:"coreCount"`
	// The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1.
	// Otherwise, specify the default value of 2.
	ThreadsPerCore pulumi.IntPtrInput `pulumi:"threadsPerCore"`
}

func (LaunchTemplateCpuOptionsArgs) ElementType

func (LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsOutput

func (i LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsOutput() LaunchTemplateCpuOptionsOutput

func (LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsOutputWithContext

func (i LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsOutputWithContext(ctx context.Context) LaunchTemplateCpuOptionsOutput

func (LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsPtrOutput

func (i LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsPtrOutput() LaunchTemplateCpuOptionsPtrOutput

func (LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsPtrOutputWithContext

func (i LaunchTemplateCpuOptionsArgs) ToLaunchTemplateCpuOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateCpuOptionsPtrOutput

type LaunchTemplateCpuOptionsInput

type LaunchTemplateCpuOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateCpuOptionsOutput() LaunchTemplateCpuOptionsOutput
	ToLaunchTemplateCpuOptionsOutputWithContext(context.Context) LaunchTemplateCpuOptionsOutput
}

LaunchTemplateCpuOptionsInput is an input type that accepts LaunchTemplateCpuOptionsArgs and LaunchTemplateCpuOptionsOutput values. You can construct a concrete instance of `LaunchTemplateCpuOptionsInput` via:

LaunchTemplateCpuOptionsArgs{...}

type LaunchTemplateCpuOptionsOutput

type LaunchTemplateCpuOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCpuOptionsOutput) CoreCount

The number of CPU cores for the instance.

func (LaunchTemplateCpuOptionsOutput) ElementType

func (LaunchTemplateCpuOptionsOutput) ThreadsPerCore

The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1. Otherwise, specify the default value of 2.

func (LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsOutput

func (o LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsOutput() LaunchTemplateCpuOptionsOutput

func (LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsOutputWithContext

func (o LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsOutputWithContext(ctx context.Context) LaunchTemplateCpuOptionsOutput

func (LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsPtrOutput

func (o LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsPtrOutput() LaunchTemplateCpuOptionsPtrOutput

func (LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsPtrOutputWithContext

func (o LaunchTemplateCpuOptionsOutput) ToLaunchTemplateCpuOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateCpuOptionsPtrOutput

type LaunchTemplateCpuOptionsPtrInput

type LaunchTemplateCpuOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateCpuOptionsPtrOutput() LaunchTemplateCpuOptionsPtrOutput
	ToLaunchTemplateCpuOptionsPtrOutputWithContext(context.Context) LaunchTemplateCpuOptionsPtrOutput
}

LaunchTemplateCpuOptionsPtrInput is an input type that accepts LaunchTemplateCpuOptionsArgs, LaunchTemplateCpuOptionsPtr and LaunchTemplateCpuOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateCpuOptionsPtrInput` via:

        LaunchTemplateCpuOptionsArgs{...}

or:

        nil

type LaunchTemplateCpuOptionsPtrOutput

type LaunchTemplateCpuOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCpuOptionsPtrOutput) CoreCount

The number of CPU cores for the instance.

func (LaunchTemplateCpuOptionsPtrOutput) Elem

func (LaunchTemplateCpuOptionsPtrOutput) ElementType

func (LaunchTemplateCpuOptionsPtrOutput) ThreadsPerCore

The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1. Otherwise, specify the default value of 2.

func (LaunchTemplateCpuOptionsPtrOutput) ToLaunchTemplateCpuOptionsPtrOutput

func (o LaunchTemplateCpuOptionsPtrOutput) ToLaunchTemplateCpuOptionsPtrOutput() LaunchTemplateCpuOptionsPtrOutput

func (LaunchTemplateCpuOptionsPtrOutput) ToLaunchTemplateCpuOptionsPtrOutputWithContext

func (o LaunchTemplateCpuOptionsPtrOutput) ToLaunchTemplateCpuOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateCpuOptionsPtrOutput

type LaunchTemplateCreditSpecification

type LaunchTemplateCreditSpecification struct {
	// The credit option for CPU usage. Can be `"standard"` or `"unlimited"`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits *string `pulumi:"cpuCredits"`
}

type LaunchTemplateCreditSpecificationArgs

type LaunchTemplateCreditSpecificationArgs struct {
	// The credit option for CPU usage. Can be `"standard"` or `"unlimited"`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits pulumi.StringPtrInput `pulumi:"cpuCredits"`
}

func (LaunchTemplateCreditSpecificationArgs) ElementType

func (LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationOutput

func (i LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationOutput() LaunchTemplateCreditSpecificationOutput

func (LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationOutputWithContext

func (i LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationOutputWithContext(ctx context.Context) LaunchTemplateCreditSpecificationOutput

func (LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationPtrOutput

func (i LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationPtrOutput() LaunchTemplateCreditSpecificationPtrOutput

func (LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationPtrOutputWithContext

func (i LaunchTemplateCreditSpecificationArgs) ToLaunchTemplateCreditSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCreditSpecificationPtrOutput

type LaunchTemplateCreditSpecificationInput

type LaunchTemplateCreditSpecificationInput interface {
	pulumi.Input

	ToLaunchTemplateCreditSpecificationOutput() LaunchTemplateCreditSpecificationOutput
	ToLaunchTemplateCreditSpecificationOutputWithContext(context.Context) LaunchTemplateCreditSpecificationOutput
}

LaunchTemplateCreditSpecificationInput is an input type that accepts LaunchTemplateCreditSpecificationArgs and LaunchTemplateCreditSpecificationOutput values. You can construct a concrete instance of `LaunchTemplateCreditSpecificationInput` via:

LaunchTemplateCreditSpecificationArgs{...}

type LaunchTemplateCreditSpecificationOutput

type LaunchTemplateCreditSpecificationOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCreditSpecificationOutput) CpuCredits

The credit option for CPU usage. Can be `"standard"` or `"unlimited"`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (LaunchTemplateCreditSpecificationOutput) ElementType

func (LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationOutput

func (o LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationOutput() LaunchTemplateCreditSpecificationOutput

func (LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationOutputWithContext

func (o LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationOutputWithContext(ctx context.Context) LaunchTemplateCreditSpecificationOutput

func (LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationPtrOutput

func (o LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationPtrOutput() LaunchTemplateCreditSpecificationPtrOutput

func (LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationPtrOutputWithContext

func (o LaunchTemplateCreditSpecificationOutput) ToLaunchTemplateCreditSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCreditSpecificationPtrOutput

type LaunchTemplateCreditSpecificationPtrInput

type LaunchTemplateCreditSpecificationPtrInput interface {
	pulumi.Input

	ToLaunchTemplateCreditSpecificationPtrOutput() LaunchTemplateCreditSpecificationPtrOutput
	ToLaunchTemplateCreditSpecificationPtrOutputWithContext(context.Context) LaunchTemplateCreditSpecificationPtrOutput
}

LaunchTemplateCreditSpecificationPtrInput is an input type that accepts LaunchTemplateCreditSpecificationArgs, LaunchTemplateCreditSpecificationPtr and LaunchTemplateCreditSpecificationPtrOutput values. You can construct a concrete instance of `LaunchTemplateCreditSpecificationPtrInput` via:

        LaunchTemplateCreditSpecificationArgs{...}

or:

        nil

type LaunchTemplateCreditSpecificationPtrOutput

type LaunchTemplateCreditSpecificationPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateCreditSpecificationPtrOutput) CpuCredits

The credit option for CPU usage. Can be `"standard"` or `"unlimited"`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (LaunchTemplateCreditSpecificationPtrOutput) Elem

func (LaunchTemplateCreditSpecificationPtrOutput) ElementType

func (LaunchTemplateCreditSpecificationPtrOutput) ToLaunchTemplateCreditSpecificationPtrOutput

func (o LaunchTemplateCreditSpecificationPtrOutput) ToLaunchTemplateCreditSpecificationPtrOutput() LaunchTemplateCreditSpecificationPtrOutput

func (LaunchTemplateCreditSpecificationPtrOutput) ToLaunchTemplateCreditSpecificationPtrOutputWithContext

func (o LaunchTemplateCreditSpecificationPtrOutput) ToLaunchTemplateCreditSpecificationPtrOutputWithContext(ctx context.Context) LaunchTemplateCreditSpecificationPtrOutput

type LaunchTemplateElasticGpuSpecification

type LaunchTemplateElasticGpuSpecification struct {
	// The [Elastic GPU Type](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-gpus.html#elastic-gpus-basics)
	Type string `pulumi:"type"`
}

type LaunchTemplateElasticGpuSpecificationArgs

type LaunchTemplateElasticGpuSpecificationArgs struct {
	// The [Elastic GPU Type](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-gpus.html#elastic-gpus-basics)
	Type pulumi.StringInput `pulumi:"type"`
}

func (LaunchTemplateElasticGpuSpecificationArgs) ElementType

func (LaunchTemplateElasticGpuSpecificationArgs) ToLaunchTemplateElasticGpuSpecificationOutput

func (i LaunchTemplateElasticGpuSpecificationArgs) ToLaunchTemplateElasticGpuSpecificationOutput() LaunchTemplateElasticGpuSpecificationOutput

func (LaunchTemplateElasticGpuSpecificationArgs) ToLaunchTemplateElasticGpuSpecificationOutputWithContext

func (i LaunchTemplateElasticGpuSpecificationArgs) ToLaunchTemplateElasticGpuSpecificationOutputWithContext(ctx context.Context) LaunchTemplateElasticGpuSpecificationOutput

type LaunchTemplateElasticGpuSpecificationArray

type LaunchTemplateElasticGpuSpecificationArray []LaunchTemplateElasticGpuSpecificationInput

func (LaunchTemplateElasticGpuSpecificationArray) ElementType

func (LaunchTemplateElasticGpuSpecificationArray) ToLaunchTemplateElasticGpuSpecificationArrayOutput

func (i LaunchTemplateElasticGpuSpecificationArray) ToLaunchTemplateElasticGpuSpecificationArrayOutput() LaunchTemplateElasticGpuSpecificationArrayOutput

func (LaunchTemplateElasticGpuSpecificationArray) ToLaunchTemplateElasticGpuSpecificationArrayOutputWithContext

func (i LaunchTemplateElasticGpuSpecificationArray) ToLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateElasticGpuSpecificationArrayOutput

type LaunchTemplateElasticGpuSpecificationArrayInput

type LaunchTemplateElasticGpuSpecificationArrayInput interface {
	pulumi.Input

	ToLaunchTemplateElasticGpuSpecificationArrayOutput() LaunchTemplateElasticGpuSpecificationArrayOutput
	ToLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(context.Context) LaunchTemplateElasticGpuSpecificationArrayOutput
}

LaunchTemplateElasticGpuSpecificationArrayInput is an input type that accepts LaunchTemplateElasticGpuSpecificationArray and LaunchTemplateElasticGpuSpecificationArrayOutput values. You can construct a concrete instance of `LaunchTemplateElasticGpuSpecificationArrayInput` via:

LaunchTemplateElasticGpuSpecificationArray{ LaunchTemplateElasticGpuSpecificationArgs{...} }

type LaunchTemplateElasticGpuSpecificationArrayOutput

type LaunchTemplateElasticGpuSpecificationArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateElasticGpuSpecificationArrayOutput) ElementType

func (LaunchTemplateElasticGpuSpecificationArrayOutput) Index

func (LaunchTemplateElasticGpuSpecificationArrayOutput) ToLaunchTemplateElasticGpuSpecificationArrayOutput

func (o LaunchTemplateElasticGpuSpecificationArrayOutput) ToLaunchTemplateElasticGpuSpecificationArrayOutput() LaunchTemplateElasticGpuSpecificationArrayOutput

func (LaunchTemplateElasticGpuSpecificationArrayOutput) ToLaunchTemplateElasticGpuSpecificationArrayOutputWithContext

func (o LaunchTemplateElasticGpuSpecificationArrayOutput) ToLaunchTemplateElasticGpuSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateElasticGpuSpecificationArrayOutput

type LaunchTemplateElasticGpuSpecificationInput

type LaunchTemplateElasticGpuSpecificationInput interface {
	pulumi.Input

	ToLaunchTemplateElasticGpuSpecificationOutput() LaunchTemplateElasticGpuSpecificationOutput
	ToLaunchTemplateElasticGpuSpecificationOutputWithContext(context.Context) LaunchTemplateElasticGpuSpecificationOutput
}

LaunchTemplateElasticGpuSpecificationInput is an input type that accepts LaunchTemplateElasticGpuSpecificationArgs and LaunchTemplateElasticGpuSpecificationOutput values. You can construct a concrete instance of `LaunchTemplateElasticGpuSpecificationInput` via:

LaunchTemplateElasticGpuSpecificationArgs{...}

type LaunchTemplateElasticGpuSpecificationOutput

type LaunchTemplateElasticGpuSpecificationOutput struct{ *pulumi.OutputState }

func (LaunchTemplateElasticGpuSpecificationOutput) ElementType

func (LaunchTemplateElasticGpuSpecificationOutput) ToLaunchTemplateElasticGpuSpecificationOutput

func (o LaunchTemplateElasticGpuSpecificationOutput) ToLaunchTemplateElasticGpuSpecificationOutput() LaunchTemplateElasticGpuSpecificationOutput

func (LaunchTemplateElasticGpuSpecificationOutput) ToLaunchTemplateElasticGpuSpecificationOutputWithContext

func (o LaunchTemplateElasticGpuSpecificationOutput) ToLaunchTemplateElasticGpuSpecificationOutputWithContext(ctx context.Context) LaunchTemplateElasticGpuSpecificationOutput

type LaunchTemplateElasticInferenceAccelerator

type LaunchTemplateElasticInferenceAccelerator struct {
	// Accelerator type.
	Type string `pulumi:"type"`
}

type LaunchTemplateElasticInferenceAcceleratorArgs

type LaunchTemplateElasticInferenceAcceleratorArgs struct {
	// Accelerator type.
	Type pulumi.StringInput `pulumi:"type"`
}

func (LaunchTemplateElasticInferenceAcceleratorArgs) ElementType

func (LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorOutput

func (i LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorOutput() LaunchTemplateElasticInferenceAcceleratorOutput

func (LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorOutputWithContext

func (i LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorOutputWithContext(ctx context.Context) LaunchTemplateElasticInferenceAcceleratorOutput

func (LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput

func (i LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput() LaunchTemplateElasticInferenceAcceleratorPtrOutput

func (LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext

func (i LaunchTemplateElasticInferenceAcceleratorArgs) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext(ctx context.Context) LaunchTemplateElasticInferenceAcceleratorPtrOutput

type LaunchTemplateElasticInferenceAcceleratorInput

type LaunchTemplateElasticInferenceAcceleratorInput interface {
	pulumi.Input

	ToLaunchTemplateElasticInferenceAcceleratorOutput() LaunchTemplateElasticInferenceAcceleratorOutput
	ToLaunchTemplateElasticInferenceAcceleratorOutputWithContext(context.Context) LaunchTemplateElasticInferenceAcceleratorOutput
}

LaunchTemplateElasticInferenceAcceleratorInput is an input type that accepts LaunchTemplateElasticInferenceAcceleratorArgs and LaunchTemplateElasticInferenceAcceleratorOutput values. You can construct a concrete instance of `LaunchTemplateElasticInferenceAcceleratorInput` via:

LaunchTemplateElasticInferenceAcceleratorArgs{...}

type LaunchTemplateElasticInferenceAcceleratorOutput

type LaunchTemplateElasticInferenceAcceleratorOutput struct{ *pulumi.OutputState }

func (LaunchTemplateElasticInferenceAcceleratorOutput) ElementType

func (LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorOutput

func (o LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorOutput() LaunchTemplateElasticInferenceAcceleratorOutput

func (LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorOutputWithContext

func (o LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorOutputWithContext(ctx context.Context) LaunchTemplateElasticInferenceAcceleratorOutput

func (LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput

func (o LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput() LaunchTemplateElasticInferenceAcceleratorPtrOutput

func (LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext

func (o LaunchTemplateElasticInferenceAcceleratorOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext(ctx context.Context) LaunchTemplateElasticInferenceAcceleratorPtrOutput

func (LaunchTemplateElasticInferenceAcceleratorOutput) Type

Accelerator type.

type LaunchTemplateElasticInferenceAcceleratorPtrInput

type LaunchTemplateElasticInferenceAcceleratorPtrInput interface {
	pulumi.Input

	ToLaunchTemplateElasticInferenceAcceleratorPtrOutput() LaunchTemplateElasticInferenceAcceleratorPtrOutput
	ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext(context.Context) LaunchTemplateElasticInferenceAcceleratorPtrOutput
}

LaunchTemplateElasticInferenceAcceleratorPtrInput is an input type that accepts LaunchTemplateElasticInferenceAcceleratorArgs, LaunchTemplateElasticInferenceAcceleratorPtr and LaunchTemplateElasticInferenceAcceleratorPtrOutput values. You can construct a concrete instance of `LaunchTemplateElasticInferenceAcceleratorPtrInput` via:

        LaunchTemplateElasticInferenceAcceleratorArgs{...}

or:

        nil

type LaunchTemplateElasticInferenceAcceleratorPtrOutput

type LaunchTemplateElasticInferenceAcceleratorPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateElasticInferenceAcceleratorPtrOutput) Elem

func (LaunchTemplateElasticInferenceAcceleratorPtrOutput) ElementType

func (LaunchTemplateElasticInferenceAcceleratorPtrOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput

func (o LaunchTemplateElasticInferenceAcceleratorPtrOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutput() LaunchTemplateElasticInferenceAcceleratorPtrOutput

func (LaunchTemplateElasticInferenceAcceleratorPtrOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext

func (o LaunchTemplateElasticInferenceAcceleratorPtrOutput) ToLaunchTemplateElasticInferenceAcceleratorPtrOutputWithContext(ctx context.Context) LaunchTemplateElasticInferenceAcceleratorPtrOutput

func (LaunchTemplateElasticInferenceAcceleratorPtrOutput) Type

Accelerator type.

type LaunchTemplateEnclaveOptions

type LaunchTemplateEnclaveOptions struct {
	// If set to `true`, Nitro Enclaves will be enabled on the instance.
	Enabled *bool `pulumi:"enabled"`
}

type LaunchTemplateEnclaveOptionsArgs

type LaunchTemplateEnclaveOptionsArgs struct {
	// If set to `true`, Nitro Enclaves will be enabled on the instance.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (LaunchTemplateEnclaveOptionsArgs) ElementType

func (LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsOutput

func (i LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsOutput() LaunchTemplateEnclaveOptionsOutput

func (LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsOutputWithContext

func (i LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsOutputWithContext(ctx context.Context) LaunchTemplateEnclaveOptionsOutput

func (LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsPtrOutput

func (i LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsPtrOutput() LaunchTemplateEnclaveOptionsPtrOutput

func (LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext

func (i LaunchTemplateEnclaveOptionsArgs) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateEnclaveOptionsPtrOutput

type LaunchTemplateEnclaveOptionsInput

type LaunchTemplateEnclaveOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateEnclaveOptionsOutput() LaunchTemplateEnclaveOptionsOutput
	ToLaunchTemplateEnclaveOptionsOutputWithContext(context.Context) LaunchTemplateEnclaveOptionsOutput
}

LaunchTemplateEnclaveOptionsInput is an input type that accepts LaunchTemplateEnclaveOptionsArgs and LaunchTemplateEnclaveOptionsOutput values. You can construct a concrete instance of `LaunchTemplateEnclaveOptionsInput` via:

LaunchTemplateEnclaveOptionsArgs{...}

type LaunchTemplateEnclaveOptionsOutput

type LaunchTemplateEnclaveOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateEnclaveOptionsOutput) ElementType

func (LaunchTemplateEnclaveOptionsOutput) Enabled

If set to `true`, Nitro Enclaves will be enabled on the instance.

func (LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsOutput

func (o LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsOutput() LaunchTemplateEnclaveOptionsOutput

func (LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsOutputWithContext

func (o LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsOutputWithContext(ctx context.Context) LaunchTemplateEnclaveOptionsOutput

func (LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsPtrOutput

func (o LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsPtrOutput() LaunchTemplateEnclaveOptionsPtrOutput

func (LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext

func (o LaunchTemplateEnclaveOptionsOutput) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateEnclaveOptionsPtrOutput

type LaunchTemplateEnclaveOptionsPtrInput

type LaunchTemplateEnclaveOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateEnclaveOptionsPtrOutput() LaunchTemplateEnclaveOptionsPtrOutput
	ToLaunchTemplateEnclaveOptionsPtrOutputWithContext(context.Context) LaunchTemplateEnclaveOptionsPtrOutput
}

LaunchTemplateEnclaveOptionsPtrInput is an input type that accepts LaunchTemplateEnclaveOptionsArgs, LaunchTemplateEnclaveOptionsPtr and LaunchTemplateEnclaveOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateEnclaveOptionsPtrInput` via:

        LaunchTemplateEnclaveOptionsArgs{...}

or:

        nil

type LaunchTemplateEnclaveOptionsPtrOutput

type LaunchTemplateEnclaveOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateEnclaveOptionsPtrOutput) Elem

func (LaunchTemplateEnclaveOptionsPtrOutput) ElementType

func (LaunchTemplateEnclaveOptionsPtrOutput) Enabled

If set to `true`, Nitro Enclaves will be enabled on the instance.

func (LaunchTemplateEnclaveOptionsPtrOutput) ToLaunchTemplateEnclaveOptionsPtrOutput

func (o LaunchTemplateEnclaveOptionsPtrOutput) ToLaunchTemplateEnclaveOptionsPtrOutput() LaunchTemplateEnclaveOptionsPtrOutput

func (LaunchTemplateEnclaveOptionsPtrOutput) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext

func (o LaunchTemplateEnclaveOptionsPtrOutput) ToLaunchTemplateEnclaveOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateEnclaveOptionsPtrOutput

type LaunchTemplateHibernationOptions

type LaunchTemplateHibernationOptions struct {
	// If set to `true`, the launched EC2 instance will hibernation enabled.
	Configured bool `pulumi:"configured"`
}

type LaunchTemplateHibernationOptionsArgs

type LaunchTemplateHibernationOptionsArgs struct {
	// If set to `true`, the launched EC2 instance will hibernation enabled.
	Configured pulumi.BoolInput `pulumi:"configured"`
}

func (LaunchTemplateHibernationOptionsArgs) ElementType

func (LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsOutput

func (i LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsOutput() LaunchTemplateHibernationOptionsOutput

func (LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsOutputWithContext

func (i LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsOutputWithContext(ctx context.Context) LaunchTemplateHibernationOptionsOutput

func (LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsPtrOutput

func (i LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsPtrOutput() LaunchTemplateHibernationOptionsPtrOutput

func (LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsPtrOutputWithContext

func (i LaunchTemplateHibernationOptionsArgs) ToLaunchTemplateHibernationOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateHibernationOptionsPtrOutput

type LaunchTemplateHibernationOptionsInput

type LaunchTemplateHibernationOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateHibernationOptionsOutput() LaunchTemplateHibernationOptionsOutput
	ToLaunchTemplateHibernationOptionsOutputWithContext(context.Context) LaunchTemplateHibernationOptionsOutput
}

LaunchTemplateHibernationOptionsInput is an input type that accepts LaunchTemplateHibernationOptionsArgs and LaunchTemplateHibernationOptionsOutput values. You can construct a concrete instance of `LaunchTemplateHibernationOptionsInput` via:

LaunchTemplateHibernationOptionsArgs{...}

type LaunchTemplateHibernationOptionsOutput

type LaunchTemplateHibernationOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateHibernationOptionsOutput) Configured

If set to `true`, the launched EC2 instance will hibernation enabled.

func (LaunchTemplateHibernationOptionsOutput) ElementType

func (LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsOutput

func (o LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsOutput() LaunchTemplateHibernationOptionsOutput

func (LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsOutputWithContext

func (o LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsOutputWithContext(ctx context.Context) LaunchTemplateHibernationOptionsOutput

func (LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsPtrOutput

func (o LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsPtrOutput() LaunchTemplateHibernationOptionsPtrOutput

func (LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsPtrOutputWithContext

func (o LaunchTemplateHibernationOptionsOutput) ToLaunchTemplateHibernationOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateHibernationOptionsPtrOutput

type LaunchTemplateHibernationOptionsPtrInput

type LaunchTemplateHibernationOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateHibernationOptionsPtrOutput() LaunchTemplateHibernationOptionsPtrOutput
	ToLaunchTemplateHibernationOptionsPtrOutputWithContext(context.Context) LaunchTemplateHibernationOptionsPtrOutput
}

LaunchTemplateHibernationOptionsPtrInput is an input type that accepts LaunchTemplateHibernationOptionsArgs, LaunchTemplateHibernationOptionsPtr and LaunchTemplateHibernationOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateHibernationOptionsPtrInput` via:

        LaunchTemplateHibernationOptionsArgs{...}

or:

        nil

type LaunchTemplateHibernationOptionsPtrOutput

type LaunchTemplateHibernationOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateHibernationOptionsPtrOutput) Configured

If set to `true`, the launched EC2 instance will hibernation enabled.

func (LaunchTemplateHibernationOptionsPtrOutput) Elem

func (LaunchTemplateHibernationOptionsPtrOutput) ElementType

func (LaunchTemplateHibernationOptionsPtrOutput) ToLaunchTemplateHibernationOptionsPtrOutput

func (o LaunchTemplateHibernationOptionsPtrOutput) ToLaunchTemplateHibernationOptionsPtrOutput() LaunchTemplateHibernationOptionsPtrOutput

func (LaunchTemplateHibernationOptionsPtrOutput) ToLaunchTemplateHibernationOptionsPtrOutputWithContext

func (o LaunchTemplateHibernationOptionsPtrOutput) ToLaunchTemplateHibernationOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateHibernationOptionsPtrOutput

type LaunchTemplateIamInstanceProfile

type LaunchTemplateIamInstanceProfile struct {
	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string `pulumi:"arn"`
	// The name of the instance profile.
	Name *string `pulumi:"name"`
}

type LaunchTemplateIamInstanceProfileArgs

type LaunchTemplateIamInstanceProfileArgs struct {
	// The Amazon Resource Name (ARN) of the instance profile.
	Arn pulumi.StringPtrInput `pulumi:"arn"`
	// The name of the instance profile.
	Name pulumi.StringPtrInput `pulumi:"name"`
}

func (LaunchTemplateIamInstanceProfileArgs) ElementType

func (LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfileOutput

func (i LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfileOutput() LaunchTemplateIamInstanceProfileOutput

func (LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfileOutputWithContext

func (i LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfileOutputWithContext(ctx context.Context) LaunchTemplateIamInstanceProfileOutput

func (LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfilePtrOutput

func (i LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfilePtrOutput() LaunchTemplateIamInstanceProfilePtrOutput

func (LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext

func (i LaunchTemplateIamInstanceProfileArgs) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext(ctx context.Context) LaunchTemplateIamInstanceProfilePtrOutput

type LaunchTemplateIamInstanceProfileInput

type LaunchTemplateIamInstanceProfileInput interface {
	pulumi.Input

	ToLaunchTemplateIamInstanceProfileOutput() LaunchTemplateIamInstanceProfileOutput
	ToLaunchTemplateIamInstanceProfileOutputWithContext(context.Context) LaunchTemplateIamInstanceProfileOutput
}

LaunchTemplateIamInstanceProfileInput is an input type that accepts LaunchTemplateIamInstanceProfileArgs and LaunchTemplateIamInstanceProfileOutput values. You can construct a concrete instance of `LaunchTemplateIamInstanceProfileInput` via:

LaunchTemplateIamInstanceProfileArgs{...}

type LaunchTemplateIamInstanceProfileOutput

type LaunchTemplateIamInstanceProfileOutput struct{ *pulumi.OutputState }

func (LaunchTemplateIamInstanceProfileOutput) Arn

The Amazon Resource Name (ARN) of the instance profile.

func (LaunchTemplateIamInstanceProfileOutput) ElementType

func (LaunchTemplateIamInstanceProfileOutput) Name

The name of the instance profile.

func (LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfileOutput

func (o LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfileOutput() LaunchTemplateIamInstanceProfileOutput

func (LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfileOutputWithContext

func (o LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfileOutputWithContext(ctx context.Context) LaunchTemplateIamInstanceProfileOutput

func (LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfilePtrOutput

func (o LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfilePtrOutput() LaunchTemplateIamInstanceProfilePtrOutput

func (LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext

func (o LaunchTemplateIamInstanceProfileOutput) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext(ctx context.Context) LaunchTemplateIamInstanceProfilePtrOutput

type LaunchTemplateIamInstanceProfilePtrInput

type LaunchTemplateIamInstanceProfilePtrInput interface {
	pulumi.Input

	ToLaunchTemplateIamInstanceProfilePtrOutput() LaunchTemplateIamInstanceProfilePtrOutput
	ToLaunchTemplateIamInstanceProfilePtrOutputWithContext(context.Context) LaunchTemplateIamInstanceProfilePtrOutput
}

LaunchTemplateIamInstanceProfilePtrInput is an input type that accepts LaunchTemplateIamInstanceProfileArgs, LaunchTemplateIamInstanceProfilePtr and LaunchTemplateIamInstanceProfilePtrOutput values. You can construct a concrete instance of `LaunchTemplateIamInstanceProfilePtrInput` via:

        LaunchTemplateIamInstanceProfileArgs{...}

or:

        nil

type LaunchTemplateIamInstanceProfilePtrOutput

type LaunchTemplateIamInstanceProfilePtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateIamInstanceProfilePtrOutput) Arn

The Amazon Resource Name (ARN) of the instance profile.

func (LaunchTemplateIamInstanceProfilePtrOutput) Elem

func (LaunchTemplateIamInstanceProfilePtrOutput) ElementType

func (LaunchTemplateIamInstanceProfilePtrOutput) Name

The name of the instance profile.

func (LaunchTemplateIamInstanceProfilePtrOutput) ToLaunchTemplateIamInstanceProfilePtrOutput

func (o LaunchTemplateIamInstanceProfilePtrOutput) ToLaunchTemplateIamInstanceProfilePtrOutput() LaunchTemplateIamInstanceProfilePtrOutput

func (LaunchTemplateIamInstanceProfilePtrOutput) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext

func (o LaunchTemplateIamInstanceProfilePtrOutput) ToLaunchTemplateIamInstanceProfilePtrOutputWithContext(ctx context.Context) LaunchTemplateIamInstanceProfilePtrOutput

type LaunchTemplateInput

type LaunchTemplateInput interface {
	pulumi.Input

	ToLaunchTemplateOutput() LaunchTemplateOutput
	ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput
}

type LaunchTemplateInstanceMarketOptions

type LaunchTemplateInstanceMarketOptions struct {
	// The market type. Can be `spot`.
	MarketType *string `pulumi:"marketType"`
	// The options for [Spot Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html)
	SpotOptions *LaunchTemplateInstanceMarketOptionsSpotOptions `pulumi:"spotOptions"`
}

type LaunchTemplateInstanceMarketOptionsArgs

type LaunchTemplateInstanceMarketOptionsArgs struct {
	// The market type. Can be `spot`.
	MarketType pulumi.StringPtrInput `pulumi:"marketType"`
	// The options for [Spot Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html)
	SpotOptions LaunchTemplateInstanceMarketOptionsSpotOptionsPtrInput `pulumi:"spotOptions"`
}

func (LaunchTemplateInstanceMarketOptionsArgs) ElementType

func (LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsOutput

func (i LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsOutput() LaunchTemplateInstanceMarketOptionsOutput

func (LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsOutputWithContext

func (i LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsOutput

func (LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsPtrOutput

func (i LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext

func (i LaunchTemplateInstanceMarketOptionsArgs) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsInput

type LaunchTemplateInstanceMarketOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateInstanceMarketOptionsOutput() LaunchTemplateInstanceMarketOptionsOutput
	ToLaunchTemplateInstanceMarketOptionsOutputWithContext(context.Context) LaunchTemplateInstanceMarketOptionsOutput
}

LaunchTemplateInstanceMarketOptionsInput is an input type that accepts LaunchTemplateInstanceMarketOptionsArgs and LaunchTemplateInstanceMarketOptionsOutput values. You can construct a concrete instance of `LaunchTemplateInstanceMarketOptionsInput` via:

LaunchTemplateInstanceMarketOptionsArgs{...}

type LaunchTemplateInstanceMarketOptionsOutput

type LaunchTemplateInstanceMarketOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateInstanceMarketOptionsOutput) ElementType

func (LaunchTemplateInstanceMarketOptionsOutput) MarketType

The market type. Can be `spot`.

func (LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsOutput

func (o LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsOutput() LaunchTemplateInstanceMarketOptionsOutput

func (LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsOutput

func (LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutput

func (o LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsPtrInput

type LaunchTemplateInstanceMarketOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateInstanceMarketOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsPtrOutput
	ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext(context.Context) LaunchTemplateInstanceMarketOptionsPtrOutput
}

LaunchTemplateInstanceMarketOptionsPtrInput is an input type that accepts LaunchTemplateInstanceMarketOptionsArgs, LaunchTemplateInstanceMarketOptionsPtr and LaunchTemplateInstanceMarketOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateInstanceMarketOptionsPtrInput` via:

        LaunchTemplateInstanceMarketOptionsArgs{...}

or:

        nil

type LaunchTemplateInstanceMarketOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateInstanceMarketOptionsPtrOutput) Elem

func (LaunchTemplateInstanceMarketOptionsPtrOutput) ElementType

func (LaunchTemplateInstanceMarketOptionsPtrOutput) MarketType

The market type. Can be `spot`.

func (LaunchTemplateInstanceMarketOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutput

func (o LaunchTemplateInstanceMarketOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsSpotOptions

type LaunchTemplateInstanceMarketOptionsSpotOptions struct {
	// The required duration in minutes. This value must be a multiple of 60.
	BlockDurationMinutes *int `pulumi:"blockDurationMinutes"`
	// The behavior when a Spot Instance is interrupted. Can be `hibernate`,
	// `stop`, or `terminate`. (Default: `terminate`).
	InstanceInterruptionBehavior *string `pulumi:"instanceInterruptionBehavior"`
	// The maximum hourly price you're willing to pay for the Spot Instances.
	MaxPrice *string `pulumi:"maxPrice"`
	// The Spot Instance request type. Can be `one-time`, or `persistent`.
	SpotInstanceType *string `pulumi:"spotInstanceType"`
	// The end date of the request.
	ValidUntil *string `pulumi:"validUntil"`
}

type LaunchTemplateInstanceMarketOptionsSpotOptionsArgs

type LaunchTemplateInstanceMarketOptionsSpotOptionsArgs struct {
	// The required duration in minutes. This value must be a multiple of 60.
	BlockDurationMinutes pulumi.IntPtrInput `pulumi:"blockDurationMinutes"`
	// The behavior when a Spot Instance is interrupted. Can be `hibernate`,
	// `stop`, or `terminate`. (Default: `terminate`).
	InstanceInterruptionBehavior pulumi.StringPtrInput `pulumi:"instanceInterruptionBehavior"`
	// The maximum hourly price you're willing to pay for the Spot Instances.
	MaxPrice pulumi.StringPtrInput `pulumi:"maxPrice"`
	// The Spot Instance request type. Can be `one-time`, or `persistent`.
	SpotInstanceType pulumi.StringPtrInput `pulumi:"spotInstanceType"`
	// The end date of the request.
	ValidUntil pulumi.StringPtrInput `pulumi:"validUntil"`
}

func (LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ElementType

func (LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutput

func (i LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutput() LaunchTemplateInstanceMarketOptionsSpotOptionsOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutputWithContext

func (i LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (i LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext

func (i LaunchTemplateInstanceMarketOptionsSpotOptionsArgs) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsSpotOptionsInput

type LaunchTemplateInstanceMarketOptionsSpotOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutput() LaunchTemplateInstanceMarketOptionsSpotOptionsOutput
	ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutputWithContext(context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsOutput
}

LaunchTemplateInstanceMarketOptionsSpotOptionsInput is an input type that accepts LaunchTemplateInstanceMarketOptionsSpotOptionsArgs and LaunchTemplateInstanceMarketOptionsSpotOptionsOutput values. You can construct a concrete instance of `LaunchTemplateInstanceMarketOptionsSpotOptionsInput` via:

LaunchTemplateInstanceMarketOptionsSpotOptionsArgs{...}

type LaunchTemplateInstanceMarketOptionsSpotOptionsOutput

type LaunchTemplateInstanceMarketOptionsSpotOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) BlockDurationMinutes

The required duration in minutes. This value must be a multiple of 60.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ElementType

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) InstanceInterruptionBehavior

The behavior when a Spot Instance is interrupted. Can be `hibernate`, `stop`, or `terminate`. (Default: `terminate`).

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) MaxPrice

The maximum hourly price you're willing to pay for the Spot Instances.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) SpotInstanceType

The Spot Instance request type. Can be `one-time`, or `persistent`.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (o LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsOutput) ValidUntil

The end date of the request.

type LaunchTemplateInstanceMarketOptionsSpotOptionsPtrInput

type LaunchTemplateInstanceMarketOptionsSpotOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput() LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput
	ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext(context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput
}

LaunchTemplateInstanceMarketOptionsSpotOptionsPtrInput is an input type that accepts LaunchTemplateInstanceMarketOptionsSpotOptionsArgs, LaunchTemplateInstanceMarketOptionsSpotOptionsPtr and LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateInstanceMarketOptionsSpotOptionsPtrInput` via:

        LaunchTemplateInstanceMarketOptionsSpotOptionsArgs{...}

or:

        nil

type LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

type LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) BlockDurationMinutes

The required duration in minutes. This value must be a multiple of 60.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) Elem

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) ElementType

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) InstanceInterruptionBehavior

The behavior when a Spot Instance is interrupted. Can be `hibernate`, `stop`, or `terminate`. (Default: `terminate`).

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) MaxPrice

The maximum hourly price you're willing to pay for the Spot Instances.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) SpotInstanceType

The Spot Instance request type. Can be `one-time`, or `persistent`.

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext

func (o LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) ToLaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput

func (LaunchTemplateInstanceMarketOptionsSpotOptionsPtrOutput) ValidUntil

The end date of the request.

type LaunchTemplateLicenseSpecification

type LaunchTemplateLicenseSpecification struct {
	// ARN of the license configuration.
	LicenseConfigurationArn string `pulumi:"licenseConfigurationArn"`
}

type LaunchTemplateLicenseSpecificationArgs

type LaunchTemplateLicenseSpecificationArgs struct {
	// ARN of the license configuration.
	LicenseConfigurationArn pulumi.StringInput `pulumi:"licenseConfigurationArn"`
}

func (LaunchTemplateLicenseSpecificationArgs) ElementType

func (LaunchTemplateLicenseSpecificationArgs) ToLaunchTemplateLicenseSpecificationOutput

func (i LaunchTemplateLicenseSpecificationArgs) ToLaunchTemplateLicenseSpecificationOutput() LaunchTemplateLicenseSpecificationOutput

func (LaunchTemplateLicenseSpecificationArgs) ToLaunchTemplateLicenseSpecificationOutputWithContext

func (i LaunchTemplateLicenseSpecificationArgs) ToLaunchTemplateLicenseSpecificationOutputWithContext(ctx context.Context) LaunchTemplateLicenseSpecificationOutput

type LaunchTemplateLicenseSpecificationArray

type LaunchTemplateLicenseSpecificationArray []LaunchTemplateLicenseSpecificationInput

func (LaunchTemplateLicenseSpecificationArray) ElementType

func (LaunchTemplateLicenseSpecificationArray) ToLaunchTemplateLicenseSpecificationArrayOutput

func (i LaunchTemplateLicenseSpecificationArray) ToLaunchTemplateLicenseSpecificationArrayOutput() LaunchTemplateLicenseSpecificationArrayOutput

func (LaunchTemplateLicenseSpecificationArray) ToLaunchTemplateLicenseSpecificationArrayOutputWithContext

func (i LaunchTemplateLicenseSpecificationArray) ToLaunchTemplateLicenseSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateLicenseSpecificationArrayOutput

type LaunchTemplateLicenseSpecificationArrayInput

type LaunchTemplateLicenseSpecificationArrayInput interface {
	pulumi.Input

	ToLaunchTemplateLicenseSpecificationArrayOutput() LaunchTemplateLicenseSpecificationArrayOutput
	ToLaunchTemplateLicenseSpecificationArrayOutputWithContext(context.Context) LaunchTemplateLicenseSpecificationArrayOutput
}

LaunchTemplateLicenseSpecificationArrayInput is an input type that accepts LaunchTemplateLicenseSpecificationArray and LaunchTemplateLicenseSpecificationArrayOutput values. You can construct a concrete instance of `LaunchTemplateLicenseSpecificationArrayInput` via:

LaunchTemplateLicenseSpecificationArray{ LaunchTemplateLicenseSpecificationArgs{...} }

type LaunchTemplateLicenseSpecificationArrayOutput

type LaunchTemplateLicenseSpecificationArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateLicenseSpecificationArrayOutput) ElementType

func (LaunchTemplateLicenseSpecificationArrayOutput) Index

func (LaunchTemplateLicenseSpecificationArrayOutput) ToLaunchTemplateLicenseSpecificationArrayOutput

func (o LaunchTemplateLicenseSpecificationArrayOutput) ToLaunchTemplateLicenseSpecificationArrayOutput() LaunchTemplateLicenseSpecificationArrayOutput

func (LaunchTemplateLicenseSpecificationArrayOutput) ToLaunchTemplateLicenseSpecificationArrayOutputWithContext

func (o LaunchTemplateLicenseSpecificationArrayOutput) ToLaunchTemplateLicenseSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateLicenseSpecificationArrayOutput

type LaunchTemplateLicenseSpecificationInput

type LaunchTemplateLicenseSpecificationInput interface {
	pulumi.Input

	ToLaunchTemplateLicenseSpecificationOutput() LaunchTemplateLicenseSpecificationOutput
	ToLaunchTemplateLicenseSpecificationOutputWithContext(context.Context) LaunchTemplateLicenseSpecificationOutput
}

LaunchTemplateLicenseSpecificationInput is an input type that accepts LaunchTemplateLicenseSpecificationArgs and LaunchTemplateLicenseSpecificationOutput values. You can construct a concrete instance of `LaunchTemplateLicenseSpecificationInput` via:

LaunchTemplateLicenseSpecificationArgs{...}

type LaunchTemplateLicenseSpecificationOutput

type LaunchTemplateLicenseSpecificationOutput struct{ *pulumi.OutputState }

func (LaunchTemplateLicenseSpecificationOutput) ElementType

func (LaunchTemplateLicenseSpecificationOutput) LicenseConfigurationArn

func (o LaunchTemplateLicenseSpecificationOutput) LicenseConfigurationArn() pulumi.StringOutput

ARN of the license configuration.

func (LaunchTemplateLicenseSpecificationOutput) ToLaunchTemplateLicenseSpecificationOutput

func (o LaunchTemplateLicenseSpecificationOutput) ToLaunchTemplateLicenseSpecificationOutput() LaunchTemplateLicenseSpecificationOutput

func (LaunchTemplateLicenseSpecificationOutput) ToLaunchTemplateLicenseSpecificationOutputWithContext

func (o LaunchTemplateLicenseSpecificationOutput) ToLaunchTemplateLicenseSpecificationOutputWithContext(ctx context.Context) LaunchTemplateLicenseSpecificationOutput

type LaunchTemplateMap

type LaunchTemplateMap map[string]LaunchTemplateInput

func (LaunchTemplateMap) ElementType

func (LaunchTemplateMap) ElementType() reflect.Type

func (LaunchTemplateMap) ToLaunchTemplateMapOutput

func (i LaunchTemplateMap) ToLaunchTemplateMapOutput() LaunchTemplateMapOutput

func (LaunchTemplateMap) ToLaunchTemplateMapOutputWithContext

func (i LaunchTemplateMap) ToLaunchTemplateMapOutputWithContext(ctx context.Context) LaunchTemplateMapOutput

type LaunchTemplateMapInput

type LaunchTemplateMapInput interface {
	pulumi.Input

	ToLaunchTemplateMapOutput() LaunchTemplateMapOutput
	ToLaunchTemplateMapOutputWithContext(context.Context) LaunchTemplateMapOutput
}

LaunchTemplateMapInput is an input type that accepts LaunchTemplateMap and LaunchTemplateMapOutput values. You can construct a concrete instance of `LaunchTemplateMapInput` via:

LaunchTemplateMap{ "key": LaunchTemplateArgs{...} }

type LaunchTemplateMapOutput

type LaunchTemplateMapOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMapOutput) ElementType

func (LaunchTemplateMapOutput) ElementType() reflect.Type

func (LaunchTemplateMapOutput) MapIndex

func (LaunchTemplateMapOutput) ToLaunchTemplateMapOutput

func (o LaunchTemplateMapOutput) ToLaunchTemplateMapOutput() LaunchTemplateMapOutput

func (LaunchTemplateMapOutput) ToLaunchTemplateMapOutputWithContext

func (o LaunchTemplateMapOutput) ToLaunchTemplateMapOutputWithContext(ctx context.Context) LaunchTemplateMapOutput

type LaunchTemplateMetadataOptions

type LaunchTemplateMetadataOptions struct {
	// Whether the metadata service is available. Can be `"enabled"` or `"disabled"`. (Default: `"enabled"`).
	HttpEndpoint *string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Can be an integer from `1` to `64`. (Default: `1`).
	HttpPutResponseHopLimit *int `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Can be `"optional"` or `"required"`. (Default: `"optional"`).
	HttpTokens *string `pulumi:"httpTokens"`
}

type LaunchTemplateMetadataOptionsArgs

type LaunchTemplateMetadataOptionsArgs struct {
	// Whether the metadata service is available. Can be `"enabled"` or `"disabled"`. (Default: `"enabled"`).
	HttpEndpoint pulumi.StringPtrInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Can be an integer from `1` to `64`. (Default: `1`).
	HttpPutResponseHopLimit pulumi.IntPtrInput `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Can be `"optional"` or `"required"`. (Default: `"optional"`).
	HttpTokens pulumi.StringPtrInput `pulumi:"httpTokens"`
}

func (LaunchTemplateMetadataOptionsArgs) ElementType

func (LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsOutput

func (i LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsOutput() LaunchTemplateMetadataOptionsOutput

func (LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsOutputWithContext

func (i LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsOutputWithContext(ctx context.Context) LaunchTemplateMetadataOptionsOutput

func (LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsPtrOutput

func (i LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsPtrOutput() LaunchTemplateMetadataOptionsPtrOutput

func (LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsPtrOutputWithContext

func (i LaunchTemplateMetadataOptionsArgs) ToLaunchTemplateMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateMetadataOptionsPtrOutput

type LaunchTemplateMetadataOptionsInput

type LaunchTemplateMetadataOptionsInput interface {
	pulumi.Input

	ToLaunchTemplateMetadataOptionsOutput() LaunchTemplateMetadataOptionsOutput
	ToLaunchTemplateMetadataOptionsOutputWithContext(context.Context) LaunchTemplateMetadataOptionsOutput
}

LaunchTemplateMetadataOptionsInput is an input type that accepts LaunchTemplateMetadataOptionsArgs and LaunchTemplateMetadataOptionsOutput values. You can construct a concrete instance of `LaunchTemplateMetadataOptionsInput` via:

LaunchTemplateMetadataOptionsArgs{...}

type LaunchTemplateMetadataOptionsOutput

type LaunchTemplateMetadataOptionsOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMetadataOptionsOutput) ElementType

func (LaunchTemplateMetadataOptionsOutput) HttpEndpoint

Whether the metadata service is available. Can be `"enabled"` or `"disabled"`. (Default: `"enabled"`).

func (LaunchTemplateMetadataOptionsOutput) HttpPutResponseHopLimit

func (o LaunchTemplateMetadataOptionsOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Can be an integer from `1` to `64`. (Default: `1`).

func (LaunchTemplateMetadataOptionsOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Can be `"optional"` or `"required"`. (Default: `"optional"`).

func (LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsOutput

func (o LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsOutput() LaunchTemplateMetadataOptionsOutput

func (LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsOutputWithContext

func (o LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsOutputWithContext(ctx context.Context) LaunchTemplateMetadataOptionsOutput

func (LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsPtrOutput

func (o LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsPtrOutput() LaunchTemplateMetadataOptionsPtrOutput

func (LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsPtrOutputWithContext

func (o LaunchTemplateMetadataOptionsOutput) ToLaunchTemplateMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateMetadataOptionsPtrOutput

type LaunchTemplateMetadataOptionsPtrInput

type LaunchTemplateMetadataOptionsPtrInput interface {
	pulumi.Input

	ToLaunchTemplateMetadataOptionsPtrOutput() LaunchTemplateMetadataOptionsPtrOutput
	ToLaunchTemplateMetadataOptionsPtrOutputWithContext(context.Context) LaunchTemplateMetadataOptionsPtrOutput
}

LaunchTemplateMetadataOptionsPtrInput is an input type that accepts LaunchTemplateMetadataOptionsArgs, LaunchTemplateMetadataOptionsPtr and LaunchTemplateMetadataOptionsPtrOutput values. You can construct a concrete instance of `LaunchTemplateMetadataOptionsPtrInput` via:

        LaunchTemplateMetadataOptionsArgs{...}

or:

        nil

type LaunchTemplateMetadataOptionsPtrOutput

type LaunchTemplateMetadataOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMetadataOptionsPtrOutput) Elem

func (LaunchTemplateMetadataOptionsPtrOutput) ElementType

func (LaunchTemplateMetadataOptionsPtrOutput) HttpEndpoint

Whether the metadata service is available. Can be `"enabled"` or `"disabled"`. (Default: `"enabled"`).

func (LaunchTemplateMetadataOptionsPtrOutput) HttpPutResponseHopLimit

func (o LaunchTemplateMetadataOptionsPtrOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Can be an integer from `1` to `64`. (Default: `1`).

func (LaunchTemplateMetadataOptionsPtrOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Can be `"optional"` or `"required"`. (Default: `"optional"`).

func (LaunchTemplateMetadataOptionsPtrOutput) ToLaunchTemplateMetadataOptionsPtrOutput

func (o LaunchTemplateMetadataOptionsPtrOutput) ToLaunchTemplateMetadataOptionsPtrOutput() LaunchTemplateMetadataOptionsPtrOutput

func (LaunchTemplateMetadataOptionsPtrOutput) ToLaunchTemplateMetadataOptionsPtrOutputWithContext

func (o LaunchTemplateMetadataOptionsPtrOutput) ToLaunchTemplateMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchTemplateMetadataOptionsPtrOutput

type LaunchTemplateMonitoring

type LaunchTemplateMonitoring struct {
	// If `true`, the launched EC2 instance will have detailed monitoring enabled.
	Enabled *bool `pulumi:"enabled"`
}

type LaunchTemplateMonitoringArgs

type LaunchTemplateMonitoringArgs struct {
	// If `true`, the launched EC2 instance will have detailed monitoring enabled.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (LaunchTemplateMonitoringArgs) ElementType

func (LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringOutput

func (i LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringOutput() LaunchTemplateMonitoringOutput

func (LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringOutputWithContext

func (i LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringOutputWithContext(ctx context.Context) LaunchTemplateMonitoringOutput

func (LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringPtrOutput

func (i LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringPtrOutput() LaunchTemplateMonitoringPtrOutput

func (LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringPtrOutputWithContext

func (i LaunchTemplateMonitoringArgs) ToLaunchTemplateMonitoringPtrOutputWithContext(ctx context.Context) LaunchTemplateMonitoringPtrOutput

type LaunchTemplateMonitoringInput

type LaunchTemplateMonitoringInput interface {
	pulumi.Input

	ToLaunchTemplateMonitoringOutput() LaunchTemplateMonitoringOutput
	ToLaunchTemplateMonitoringOutputWithContext(context.Context) LaunchTemplateMonitoringOutput
}

LaunchTemplateMonitoringInput is an input type that accepts LaunchTemplateMonitoringArgs and LaunchTemplateMonitoringOutput values. You can construct a concrete instance of `LaunchTemplateMonitoringInput` via:

LaunchTemplateMonitoringArgs{...}

type LaunchTemplateMonitoringOutput

type LaunchTemplateMonitoringOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMonitoringOutput) ElementType

func (LaunchTemplateMonitoringOutput) Enabled

If `true`, the launched EC2 instance will have detailed monitoring enabled.

func (LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringOutput

func (o LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringOutput() LaunchTemplateMonitoringOutput

func (LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringOutputWithContext

func (o LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringOutputWithContext(ctx context.Context) LaunchTemplateMonitoringOutput

func (LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringPtrOutput

func (o LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringPtrOutput() LaunchTemplateMonitoringPtrOutput

func (LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringPtrOutputWithContext

func (o LaunchTemplateMonitoringOutput) ToLaunchTemplateMonitoringPtrOutputWithContext(ctx context.Context) LaunchTemplateMonitoringPtrOutput

type LaunchTemplateMonitoringPtrInput

type LaunchTemplateMonitoringPtrInput interface {
	pulumi.Input

	ToLaunchTemplateMonitoringPtrOutput() LaunchTemplateMonitoringPtrOutput
	ToLaunchTemplateMonitoringPtrOutputWithContext(context.Context) LaunchTemplateMonitoringPtrOutput
}

LaunchTemplateMonitoringPtrInput is an input type that accepts LaunchTemplateMonitoringArgs, LaunchTemplateMonitoringPtr and LaunchTemplateMonitoringPtrOutput values. You can construct a concrete instance of `LaunchTemplateMonitoringPtrInput` via:

        LaunchTemplateMonitoringArgs{...}

or:

        nil

type LaunchTemplateMonitoringPtrOutput

type LaunchTemplateMonitoringPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMonitoringPtrOutput) Elem

func (LaunchTemplateMonitoringPtrOutput) ElementType

func (LaunchTemplateMonitoringPtrOutput) Enabled

If `true`, the launched EC2 instance will have detailed monitoring enabled.

func (LaunchTemplateMonitoringPtrOutput) ToLaunchTemplateMonitoringPtrOutput

func (o LaunchTemplateMonitoringPtrOutput) ToLaunchTemplateMonitoringPtrOutput() LaunchTemplateMonitoringPtrOutput

func (LaunchTemplateMonitoringPtrOutput) ToLaunchTemplateMonitoringPtrOutputWithContext

func (o LaunchTemplateMonitoringPtrOutput) ToLaunchTemplateMonitoringPtrOutputWithContext(ctx context.Context) LaunchTemplateMonitoringPtrOutput

type LaunchTemplateNetworkInterface

type LaunchTemplateNetworkInterface struct {
	// Associate a Carrier IP address with `eth0` for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. Boolean value.
	AssociateCarrierIpAddress *string `pulumi:"associateCarrierIpAddress"`
	// Associate a public ip address with the network interface.  Boolean value.
	AssociatePublicIpAddress *string `pulumi:"associatePublicIpAddress"`
	// Whether the network interface should be destroyed on instance termination. Defaults to `false` if not set.
	DeleteOnTermination *string `pulumi:"deleteOnTermination"`
	// Description of the network interface.
	Description *string `pulumi:"description"`
	// The integer index of the network interface attachment.
	DeviceIndex *int `pulumi:"deviceIndex"`
	// The type of network interface. To create an Elastic Fabric Adapter (EFA), specify `efa`.
	InterfaceType *string `pulumi:"interfaceType"`
	// The number of secondary private IPv4 addresses to assign to a network interface. Conflicts with `ipv4Addresses`
	Ipv4AddressCount *int `pulumi:"ipv4AddressCount"`
	// One or more private IPv4 addresses to associate. Conflicts with `ipv4AddressCount`
	Ipv4Addresses []string `pulumi:"ipv4Addresses"`
	// The number of IPv6 addresses to assign to a network interface. Conflicts with `ipv6Addresses`
	Ipv6AddressCount *int `pulumi:"ipv6AddressCount"`
	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Conflicts with `ipv6AddressCount`
	Ipv6Addresses []string `pulumi:"ipv6Addresses"`
	// The ID of the network interface to attach.
	NetworkInterfaceId *string `pulumi:"networkInterfaceId"`
	// The primary private IPv4 address.
	PrivateIpAddress *string `pulumi:"privateIpAddress"`
	// A list of security group IDs to associate.
	SecurityGroups []string `pulumi:"securityGroups"`
	// The VPC Subnet ID to associate.
	SubnetId *string `pulumi:"subnetId"`
}

type LaunchTemplateNetworkInterfaceArgs

type LaunchTemplateNetworkInterfaceArgs struct {
	// Associate a Carrier IP address with `eth0` for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. Boolean value.
	AssociateCarrierIpAddress pulumi.StringPtrInput `pulumi:"associateCarrierIpAddress"`
	// Associate a public ip address with the network interface.  Boolean value.
	AssociatePublicIpAddress pulumi.StringPtrInput `pulumi:"associatePublicIpAddress"`
	// Whether the network interface should be destroyed on instance termination. Defaults to `false` if not set.
	DeleteOnTermination pulumi.StringPtrInput `pulumi:"deleteOnTermination"`
	// Description of the network interface.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The integer index of the network interface attachment.
	DeviceIndex pulumi.IntPtrInput `pulumi:"deviceIndex"`
	// The type of network interface. To create an Elastic Fabric Adapter (EFA), specify `efa`.
	InterfaceType pulumi.StringPtrInput `pulumi:"interfaceType"`
	// The number of secondary private IPv4 addresses to assign to a network interface. Conflicts with `ipv4Addresses`
	Ipv4AddressCount pulumi.IntPtrInput `pulumi:"ipv4AddressCount"`
	// One or more private IPv4 addresses to associate. Conflicts with `ipv4AddressCount`
	Ipv4Addresses pulumi.StringArrayInput `pulumi:"ipv4Addresses"`
	// The number of IPv6 addresses to assign to a network interface. Conflicts with `ipv6Addresses`
	Ipv6AddressCount pulumi.IntPtrInput `pulumi:"ipv6AddressCount"`
	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Conflicts with `ipv6AddressCount`
	Ipv6Addresses pulumi.StringArrayInput `pulumi:"ipv6Addresses"`
	// The ID of the network interface to attach.
	NetworkInterfaceId pulumi.StringPtrInput `pulumi:"networkInterfaceId"`
	// The primary private IPv4 address.
	PrivateIpAddress pulumi.StringPtrInput `pulumi:"privateIpAddress"`
	// A list of security group IDs to associate.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// The VPC Subnet ID to associate.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (LaunchTemplateNetworkInterfaceArgs) ElementType

func (LaunchTemplateNetworkInterfaceArgs) ToLaunchTemplateNetworkInterfaceOutput

func (i LaunchTemplateNetworkInterfaceArgs) ToLaunchTemplateNetworkInterfaceOutput() LaunchTemplateNetworkInterfaceOutput

func (LaunchTemplateNetworkInterfaceArgs) ToLaunchTemplateNetworkInterfaceOutputWithContext

func (i LaunchTemplateNetworkInterfaceArgs) ToLaunchTemplateNetworkInterfaceOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfaceOutput

type LaunchTemplateNetworkInterfaceArray

type LaunchTemplateNetworkInterfaceArray []LaunchTemplateNetworkInterfaceInput

func (LaunchTemplateNetworkInterfaceArray) ElementType

func (LaunchTemplateNetworkInterfaceArray) ToLaunchTemplateNetworkInterfaceArrayOutput

func (i LaunchTemplateNetworkInterfaceArray) ToLaunchTemplateNetworkInterfaceArrayOutput() LaunchTemplateNetworkInterfaceArrayOutput

func (LaunchTemplateNetworkInterfaceArray) ToLaunchTemplateNetworkInterfaceArrayOutputWithContext

func (i LaunchTemplateNetworkInterfaceArray) ToLaunchTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfaceArrayOutput

type LaunchTemplateNetworkInterfaceArrayInput

type LaunchTemplateNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToLaunchTemplateNetworkInterfaceArrayOutput() LaunchTemplateNetworkInterfaceArrayOutput
	ToLaunchTemplateNetworkInterfaceArrayOutputWithContext(context.Context) LaunchTemplateNetworkInterfaceArrayOutput
}

LaunchTemplateNetworkInterfaceArrayInput is an input type that accepts LaunchTemplateNetworkInterfaceArray and LaunchTemplateNetworkInterfaceArrayOutput values. You can construct a concrete instance of `LaunchTemplateNetworkInterfaceArrayInput` via:

LaunchTemplateNetworkInterfaceArray{ LaunchTemplateNetworkInterfaceArgs{...} }

type LaunchTemplateNetworkInterfaceArrayOutput

type LaunchTemplateNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateNetworkInterfaceArrayOutput) ElementType

func (LaunchTemplateNetworkInterfaceArrayOutput) Index

func (LaunchTemplateNetworkInterfaceArrayOutput) ToLaunchTemplateNetworkInterfaceArrayOutput

func (o LaunchTemplateNetworkInterfaceArrayOutput) ToLaunchTemplateNetworkInterfaceArrayOutput() LaunchTemplateNetworkInterfaceArrayOutput

func (LaunchTemplateNetworkInterfaceArrayOutput) ToLaunchTemplateNetworkInterfaceArrayOutputWithContext

func (o LaunchTemplateNetworkInterfaceArrayOutput) ToLaunchTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfaceArrayOutput

type LaunchTemplateNetworkInterfaceInput

type LaunchTemplateNetworkInterfaceInput interface {
	pulumi.Input

	ToLaunchTemplateNetworkInterfaceOutput() LaunchTemplateNetworkInterfaceOutput
	ToLaunchTemplateNetworkInterfaceOutputWithContext(context.Context) LaunchTemplateNetworkInterfaceOutput
}

LaunchTemplateNetworkInterfaceInput is an input type that accepts LaunchTemplateNetworkInterfaceArgs and LaunchTemplateNetworkInterfaceOutput values. You can construct a concrete instance of `LaunchTemplateNetworkInterfaceInput` via:

LaunchTemplateNetworkInterfaceArgs{...}

type LaunchTemplateNetworkInterfaceOutput

type LaunchTemplateNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (LaunchTemplateNetworkInterfaceOutput) AssociateCarrierIpAddress

func (o LaunchTemplateNetworkInterfaceOutput) AssociateCarrierIpAddress() pulumi.StringPtrOutput

Associate a Carrier IP address with `eth0` for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. Boolean value.

func (LaunchTemplateNetworkInterfaceOutput) AssociatePublicIpAddress

func (o LaunchTemplateNetworkInterfaceOutput) AssociatePublicIpAddress() pulumi.StringPtrOutput

Associate a public ip address with the network interface. Boolean value.

func (LaunchTemplateNetworkInterfaceOutput) DeleteOnTermination

Whether the network interface should be destroyed on instance termination. Defaults to `false` if not set.

func (LaunchTemplateNetworkInterfaceOutput) Description

Description of the network interface.

func (LaunchTemplateNetworkInterfaceOutput) DeviceIndex

The integer index of the network interface attachment.

func (LaunchTemplateNetworkInterfaceOutput) ElementType

func (LaunchTemplateNetworkInterfaceOutput) InterfaceType added in v4.5.0

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify `efa`.

func (LaunchTemplateNetworkInterfaceOutput) Ipv4AddressCount

The number of secondary private IPv4 addresses to assign to a network interface. Conflicts with `ipv4Addresses`

func (LaunchTemplateNetworkInterfaceOutput) Ipv4Addresses

One or more private IPv4 addresses to associate. Conflicts with `ipv4AddressCount`

func (LaunchTemplateNetworkInterfaceOutput) Ipv6AddressCount

The number of IPv6 addresses to assign to a network interface. Conflicts with `ipv6Addresses`

func (LaunchTemplateNetworkInterfaceOutput) Ipv6Addresses

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Conflicts with `ipv6AddressCount`

func (LaunchTemplateNetworkInterfaceOutput) NetworkInterfaceId

The ID of the network interface to attach.

func (LaunchTemplateNetworkInterfaceOutput) PrivateIpAddress

The primary private IPv4 address.

func (LaunchTemplateNetworkInterfaceOutput) SecurityGroups

A list of security group IDs to associate.

func (LaunchTemplateNetworkInterfaceOutput) SubnetId

The VPC Subnet ID to associate.

func (LaunchTemplateNetworkInterfaceOutput) ToLaunchTemplateNetworkInterfaceOutput

func (o LaunchTemplateNetworkInterfaceOutput) ToLaunchTemplateNetworkInterfaceOutput() LaunchTemplateNetworkInterfaceOutput

func (LaunchTemplateNetworkInterfaceOutput) ToLaunchTemplateNetworkInterfaceOutputWithContext

func (o LaunchTemplateNetworkInterfaceOutput) ToLaunchTemplateNetworkInterfaceOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfaceOutput

type LaunchTemplateOutput

type LaunchTemplateOutput struct{ *pulumi.OutputState }

func (LaunchTemplateOutput) ElementType

func (LaunchTemplateOutput) ElementType() reflect.Type

func (LaunchTemplateOutput) ToLaunchTemplateOutput

func (o LaunchTemplateOutput) ToLaunchTemplateOutput() LaunchTemplateOutput

func (LaunchTemplateOutput) ToLaunchTemplateOutputWithContext

func (o LaunchTemplateOutput) ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput

func (LaunchTemplateOutput) ToLaunchTemplatePtrOutput

func (o LaunchTemplateOutput) ToLaunchTemplatePtrOutput() LaunchTemplatePtrOutput

func (LaunchTemplateOutput) ToLaunchTemplatePtrOutputWithContext

func (o LaunchTemplateOutput) ToLaunchTemplatePtrOutputWithContext(ctx context.Context) LaunchTemplatePtrOutput

type LaunchTemplatePlacement

type LaunchTemplatePlacement struct {
	// The affinity setting for an instance on a Dedicated Host.
	Affinity *string `pulumi:"affinity"`
	// The Availability Zone for the instance.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// The name of the placement group for the instance.
	GroupName *string `pulumi:"groupName"`
	// The ID of the Dedicated Host for the instance.
	HostId *string `pulumi:"hostId"`
	// The ARN of the Host Resource Group in which to launch instances.
	HostResourceGroupArn *string `pulumi:"hostResourceGroupArn"`
	// The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
	PartitionNumber *int `pulumi:"partitionNumber"`
	// Reserved for future use.
	SpreadDomain *string `pulumi:"spreadDomain"`
	// The tenancy of the instance (if the instance is running in a VPC). Can be `default`, `dedicated`, or `host`.
	Tenancy *string `pulumi:"tenancy"`
}

type LaunchTemplatePlacementArgs

type LaunchTemplatePlacementArgs struct {
	// The affinity setting for an instance on a Dedicated Host.
	Affinity pulumi.StringPtrInput `pulumi:"affinity"`
	// The Availability Zone for the instance.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// The name of the placement group for the instance.
	GroupName pulumi.StringPtrInput `pulumi:"groupName"`
	// The ID of the Dedicated Host for the instance.
	HostId pulumi.StringPtrInput `pulumi:"hostId"`
	// The ARN of the Host Resource Group in which to launch instances.
	HostResourceGroupArn pulumi.StringPtrInput `pulumi:"hostResourceGroupArn"`
	// The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
	PartitionNumber pulumi.IntPtrInput `pulumi:"partitionNumber"`
	// Reserved for future use.
	SpreadDomain pulumi.StringPtrInput `pulumi:"spreadDomain"`
	// The tenancy of the instance (if the instance is running in a VPC). Can be `default`, `dedicated`, or `host`.
	Tenancy pulumi.StringPtrInput `pulumi:"tenancy"`
}

func (LaunchTemplatePlacementArgs) ElementType

func (LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementOutput

func (i LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementOutput() LaunchTemplatePlacementOutput

func (LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementOutputWithContext

func (i LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementOutputWithContext(ctx context.Context) LaunchTemplatePlacementOutput

func (LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementPtrOutput

func (i LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementPtrOutput() LaunchTemplatePlacementPtrOutput

func (LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementPtrOutputWithContext

func (i LaunchTemplatePlacementArgs) ToLaunchTemplatePlacementPtrOutputWithContext(ctx context.Context) LaunchTemplatePlacementPtrOutput

type LaunchTemplatePlacementInput

type LaunchTemplatePlacementInput interface {
	pulumi.Input

	ToLaunchTemplatePlacementOutput() LaunchTemplatePlacementOutput
	ToLaunchTemplatePlacementOutputWithContext(context.Context) LaunchTemplatePlacementOutput
}

LaunchTemplatePlacementInput is an input type that accepts LaunchTemplatePlacementArgs and LaunchTemplatePlacementOutput values. You can construct a concrete instance of `LaunchTemplatePlacementInput` via:

LaunchTemplatePlacementArgs{...}

type LaunchTemplatePlacementOutput

type LaunchTemplatePlacementOutput struct{ *pulumi.OutputState }

func (LaunchTemplatePlacementOutput) Affinity

The affinity setting for an instance on a Dedicated Host.

func (LaunchTemplatePlacementOutput) AvailabilityZone

The Availability Zone for the instance.

func (LaunchTemplatePlacementOutput) ElementType

func (LaunchTemplatePlacementOutput) GroupName

The name of the placement group for the instance.

func (LaunchTemplatePlacementOutput) HostId

The ID of the Dedicated Host for the instance.

func (LaunchTemplatePlacementOutput) HostResourceGroupArn added in v4.2.0

func (o LaunchTemplatePlacementOutput) HostResourceGroupArn() pulumi.StringPtrOutput

The ARN of the Host Resource Group in which to launch instances.

func (LaunchTemplatePlacementOutput) PartitionNumber

The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.

func (LaunchTemplatePlacementOutput) SpreadDomain

Reserved for future use.

func (LaunchTemplatePlacementOutput) Tenancy

The tenancy of the instance (if the instance is running in a VPC). Can be `default`, `dedicated`, or `host`.

func (LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementOutput

func (o LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementOutput() LaunchTemplatePlacementOutput

func (LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementOutputWithContext

func (o LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementOutputWithContext(ctx context.Context) LaunchTemplatePlacementOutput

func (LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementPtrOutput

func (o LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementPtrOutput() LaunchTemplatePlacementPtrOutput

func (LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementPtrOutputWithContext

func (o LaunchTemplatePlacementOutput) ToLaunchTemplatePlacementPtrOutputWithContext(ctx context.Context) LaunchTemplatePlacementPtrOutput

type LaunchTemplatePlacementPtrInput

type LaunchTemplatePlacementPtrInput interface {
	pulumi.Input

	ToLaunchTemplatePlacementPtrOutput() LaunchTemplatePlacementPtrOutput
	ToLaunchTemplatePlacementPtrOutputWithContext(context.Context) LaunchTemplatePlacementPtrOutput
}

LaunchTemplatePlacementPtrInput is an input type that accepts LaunchTemplatePlacementArgs, LaunchTemplatePlacementPtr and LaunchTemplatePlacementPtrOutput values. You can construct a concrete instance of `LaunchTemplatePlacementPtrInput` via:

        LaunchTemplatePlacementArgs{...}

or:

        nil

type LaunchTemplatePlacementPtrOutput

type LaunchTemplatePlacementPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplatePlacementPtrOutput) Affinity

The affinity setting for an instance on a Dedicated Host.

func (LaunchTemplatePlacementPtrOutput) AvailabilityZone

The Availability Zone for the instance.

func (LaunchTemplatePlacementPtrOutput) Elem

func (LaunchTemplatePlacementPtrOutput) ElementType

func (LaunchTemplatePlacementPtrOutput) GroupName

The name of the placement group for the instance.

func (LaunchTemplatePlacementPtrOutput) HostId

The ID of the Dedicated Host for the instance.

func (LaunchTemplatePlacementPtrOutput) HostResourceGroupArn added in v4.2.0

func (o LaunchTemplatePlacementPtrOutput) HostResourceGroupArn() pulumi.StringPtrOutput

The ARN of the Host Resource Group in which to launch instances.

func (LaunchTemplatePlacementPtrOutput) PartitionNumber

The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.

func (LaunchTemplatePlacementPtrOutput) SpreadDomain

Reserved for future use.

func (LaunchTemplatePlacementPtrOutput) Tenancy

The tenancy of the instance (if the instance is running in a VPC). Can be `default`, `dedicated`, or `host`.

func (LaunchTemplatePlacementPtrOutput) ToLaunchTemplatePlacementPtrOutput

func (o LaunchTemplatePlacementPtrOutput) ToLaunchTemplatePlacementPtrOutput() LaunchTemplatePlacementPtrOutput

func (LaunchTemplatePlacementPtrOutput) ToLaunchTemplatePlacementPtrOutputWithContext

func (o LaunchTemplatePlacementPtrOutput) ToLaunchTemplatePlacementPtrOutputWithContext(ctx context.Context) LaunchTemplatePlacementPtrOutput

type LaunchTemplatePtrInput

type LaunchTemplatePtrInput interface {
	pulumi.Input

	ToLaunchTemplatePtrOutput() LaunchTemplatePtrOutput
	ToLaunchTemplatePtrOutputWithContext(ctx context.Context) LaunchTemplatePtrOutput
}

type LaunchTemplatePtrOutput

type LaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplatePtrOutput) Elem added in v4.15.0

func (LaunchTemplatePtrOutput) ElementType

func (LaunchTemplatePtrOutput) ElementType() reflect.Type

func (LaunchTemplatePtrOutput) ToLaunchTemplatePtrOutput

func (o LaunchTemplatePtrOutput) ToLaunchTemplatePtrOutput() LaunchTemplatePtrOutput

func (LaunchTemplatePtrOutput) ToLaunchTemplatePtrOutputWithContext

func (o LaunchTemplatePtrOutput) ToLaunchTemplatePtrOutputWithContext(ctx context.Context) LaunchTemplatePtrOutput

type LaunchTemplateState

type LaunchTemplateState struct {
	// The Amazon Resource Name (ARN) of the instance profile.
	Arn pulumi.StringPtrInput
	// Specify volumes to attach to the instance besides the volumes specified by the AMI.
	// See Block Devices below for details.
	BlockDeviceMappings LaunchTemplateBlockDeviceMappingArrayInput
	// Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification LaunchTemplateCapacityReservationSpecificationPtrInput
	// The CPU options for the instance. See CPU Options below for more details.
	CpuOptions LaunchTemplateCpuOptionsPtrInput
	// Customize the credit specification of the instance. See Credit
	// Specification below for more details.
	CreditSpecification LaunchTemplateCreditSpecificationPtrInput
	// Default Version of the launch template.
	DefaultVersion pulumi.IntPtrInput
	// Description of the launch template.
	Description pulumi.StringPtrInput
	// If `true`, enables [EC2 Instance
	// Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination)
	DisableApiTermination pulumi.BoolPtrInput
	// If `true`, the launched EC2 instance will be EBS-optimized.
	EbsOptimized pulumi.StringPtrInput
	// The elastic GPU to attach to the instance. See Elastic GPU
	// below for more details.
	ElasticGpuSpecifications LaunchTemplateElasticGpuSpecificationArrayInput
	// Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.
	ElasticInferenceAccelerator LaunchTemplateElasticInferenceAcceleratorPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions LaunchTemplateEnclaveOptionsPtrInput
	// The hibernation options for the instance. See Hibernation Options below for more details.
	HibernationOptions LaunchTemplateHibernationOptionsPtrInput
	// The IAM Instance Profile to launch the instance with. See Instance Profile
	// below for more details.
	IamInstanceProfile LaunchTemplateIamInstanceProfilePtrInput
	// The AMI from which to launch the instance.
	ImageId pulumi.StringPtrInput
	// Shutdown behavior for the instance. Can be `stop` or `terminate`.
	// (Default: `stop`).
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// The market (purchasing) option for the instance. See Market Options
	// below for details.
	InstanceMarketOptions LaunchTemplateInstanceMarketOptionsPtrInput
	// The type of the instance.
	InstanceType pulumi.StringPtrInput
	// The kernel ID.
	KernelId pulumi.StringPtrInput
	// The key name to use for the instance.
	KeyName pulumi.StringPtrInput
	// The latest version of the launch template.
	LatestVersion pulumi.IntPtrInput
	// A list of license specifications to associate with. See License Specification below for more details.
	LicenseSpecifications LaunchTemplateLicenseSpecificationArrayInput
	// Customize the metadata options for the instance. See Metadata Options below for more details.
	MetadataOptions LaunchTemplateMetadataOptionsPtrInput
	// The monitoring option for the instance. See Monitoring below for more details.
	Monitoring LaunchTemplateMonitoringPtrInput
	// The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network
	// Interfaces below for more details.
	NetworkInterfaces LaunchTemplateNetworkInterfaceArrayInput
	// The placement of the instance. See Placement below for more details.
	Placement LaunchTemplatePlacementPtrInput
	// The ID of the RAM disk.
	RamDiskId pulumi.StringPtrInput
	// A list of security group names to associate with. If you are creating Instances in a VPC, use
	// `vpcSecurityGroupIds` instead.
	SecurityGroupNames pulumi.StringArrayInput
	// The tags to apply to the resources during launch. See Tag Specifications below for more details.
	TagSpecifications LaunchTemplateTagSpecificationArrayInput
	// A map of tags to assign to the launch template. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Whether to update Default Version each update. Conflicts with `defaultVersion`.
	UpdateDefaultVersion pulumi.BoolPtrInput
	// The Base64-encoded user data to provide when launching the instance.
	UserData pulumi.StringPtrInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
}

func (LaunchTemplateState) ElementType

func (LaunchTemplateState) ElementType() reflect.Type

type LaunchTemplateTagSpecification

type LaunchTemplateTagSpecification struct {
	// The type of resource to tag.
	ResourceType *string `pulumi:"resourceType"`
	// A map of tags to assign to the resource.
	Tags map[string]string `pulumi:"tags"`
}

type LaunchTemplateTagSpecificationArgs

type LaunchTemplateTagSpecificationArgs struct {
	// The type of resource to tag.
	ResourceType pulumi.StringPtrInput `pulumi:"resourceType"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

func (LaunchTemplateTagSpecificationArgs) ElementType

func (LaunchTemplateTagSpecificationArgs) ToLaunchTemplateTagSpecificationOutput

func (i LaunchTemplateTagSpecificationArgs) ToLaunchTemplateTagSpecificationOutput() LaunchTemplateTagSpecificationOutput

func (LaunchTemplateTagSpecificationArgs) ToLaunchTemplateTagSpecificationOutputWithContext

func (i LaunchTemplateTagSpecificationArgs) ToLaunchTemplateTagSpecificationOutputWithContext(ctx context.Context) LaunchTemplateTagSpecificationOutput

type LaunchTemplateTagSpecificationArray

type LaunchTemplateTagSpecificationArray []LaunchTemplateTagSpecificationInput

func (LaunchTemplateTagSpecificationArray) ElementType

func (LaunchTemplateTagSpecificationArray) ToLaunchTemplateTagSpecificationArrayOutput

func (i LaunchTemplateTagSpecificationArray) ToLaunchTemplateTagSpecificationArrayOutput() LaunchTemplateTagSpecificationArrayOutput

func (LaunchTemplateTagSpecificationArray) ToLaunchTemplateTagSpecificationArrayOutputWithContext

func (i LaunchTemplateTagSpecificationArray) ToLaunchTemplateTagSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateTagSpecificationArrayOutput

type LaunchTemplateTagSpecificationArrayInput

type LaunchTemplateTagSpecificationArrayInput interface {
	pulumi.Input

	ToLaunchTemplateTagSpecificationArrayOutput() LaunchTemplateTagSpecificationArrayOutput
	ToLaunchTemplateTagSpecificationArrayOutputWithContext(context.Context) LaunchTemplateTagSpecificationArrayOutput
}

LaunchTemplateTagSpecificationArrayInput is an input type that accepts LaunchTemplateTagSpecificationArray and LaunchTemplateTagSpecificationArrayOutput values. You can construct a concrete instance of `LaunchTemplateTagSpecificationArrayInput` via:

LaunchTemplateTagSpecificationArray{ LaunchTemplateTagSpecificationArgs{...} }

type LaunchTemplateTagSpecificationArrayOutput

type LaunchTemplateTagSpecificationArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateTagSpecificationArrayOutput) ElementType

func (LaunchTemplateTagSpecificationArrayOutput) Index

func (LaunchTemplateTagSpecificationArrayOutput) ToLaunchTemplateTagSpecificationArrayOutput

func (o LaunchTemplateTagSpecificationArrayOutput) ToLaunchTemplateTagSpecificationArrayOutput() LaunchTemplateTagSpecificationArrayOutput

func (LaunchTemplateTagSpecificationArrayOutput) ToLaunchTemplateTagSpecificationArrayOutputWithContext

func (o LaunchTemplateTagSpecificationArrayOutput) ToLaunchTemplateTagSpecificationArrayOutputWithContext(ctx context.Context) LaunchTemplateTagSpecificationArrayOutput

type LaunchTemplateTagSpecificationInput

type LaunchTemplateTagSpecificationInput interface {
	pulumi.Input

	ToLaunchTemplateTagSpecificationOutput() LaunchTemplateTagSpecificationOutput
	ToLaunchTemplateTagSpecificationOutputWithContext(context.Context) LaunchTemplateTagSpecificationOutput
}

LaunchTemplateTagSpecificationInput is an input type that accepts LaunchTemplateTagSpecificationArgs and LaunchTemplateTagSpecificationOutput values. You can construct a concrete instance of `LaunchTemplateTagSpecificationInput` via:

LaunchTemplateTagSpecificationArgs{...}

type LaunchTemplateTagSpecificationOutput

type LaunchTemplateTagSpecificationOutput struct{ *pulumi.OutputState }

func (LaunchTemplateTagSpecificationOutput) ElementType

func (LaunchTemplateTagSpecificationOutput) ResourceType

The type of resource to tag.

func (LaunchTemplateTagSpecificationOutput) Tags

A map of tags to assign to the resource.

func (LaunchTemplateTagSpecificationOutput) ToLaunchTemplateTagSpecificationOutput

func (o LaunchTemplateTagSpecificationOutput) ToLaunchTemplateTagSpecificationOutput() LaunchTemplateTagSpecificationOutput

func (LaunchTemplateTagSpecificationOutput) ToLaunchTemplateTagSpecificationOutputWithContext

func (o LaunchTemplateTagSpecificationOutput) ToLaunchTemplateTagSpecificationOutputWithContext(ctx context.Context) LaunchTemplateTagSpecificationOutput

type LocalGatewayRoute

type LocalGatewayRoute struct {
	pulumi.CustomResourceState

	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringOutput `pulumi:"destinationCidrBlock"`
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringOutput `pulumi:"localGatewayRouteTableId"`
	// Identifier of EC2 Local Gateway Virtual Interface Group.
	LocalGatewayVirtualInterfaceGroupId pulumi.StringOutput `pulumi:"localGatewayVirtualInterfaceGroupId"`
}

Manages an EC2 Local Gateway Route. More information can be found in the [Outposts User Guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-networking-components.html#routing).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewLocalGatewayRoute(ctx, "example", &ec2.LocalGatewayRouteArgs{
			DestinationCidrBlock:                pulumi.String("172.16.0.0/16"),
			LocalGatewayRouteTableId:            pulumi.Any(data.Aws_ec2_local_gateway_route_table.Example.Id),
			LocalGatewayVirtualInterfaceGroupId: pulumi.Any(data.Aws_ec2_local_gateway_virtual_interface_group.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_local_gateway_route` can be imported by using the EC2 Local Gateway Route Table identifier and destination CIDR block separated by underscores (`_`), e.g.

```sh

$ pulumi import aws:ec2/localGatewayRoute:LocalGatewayRoute example lgw-rtb-12345678_172.16.0.0/16

```

func GetLocalGatewayRoute

func GetLocalGatewayRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LocalGatewayRouteState, opts ...pulumi.ResourceOption) (*LocalGatewayRoute, error)

GetLocalGatewayRoute gets an existing LocalGatewayRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLocalGatewayRoute

func NewLocalGatewayRoute(ctx *pulumi.Context,
	name string, args *LocalGatewayRouteArgs, opts ...pulumi.ResourceOption) (*LocalGatewayRoute, error)

NewLocalGatewayRoute registers a new resource with the given unique name, arguments, and options.

func (*LocalGatewayRoute) ElementType

func (*LocalGatewayRoute) ElementType() reflect.Type

func (*LocalGatewayRoute) ToLocalGatewayRouteOutput

func (i *LocalGatewayRoute) ToLocalGatewayRouteOutput() LocalGatewayRouteOutput

func (*LocalGatewayRoute) ToLocalGatewayRouteOutputWithContext

func (i *LocalGatewayRoute) ToLocalGatewayRouteOutputWithContext(ctx context.Context) LocalGatewayRouteOutput

func (*LocalGatewayRoute) ToLocalGatewayRoutePtrOutput

func (i *LocalGatewayRoute) ToLocalGatewayRoutePtrOutput() LocalGatewayRoutePtrOutput

func (*LocalGatewayRoute) ToLocalGatewayRoutePtrOutputWithContext

func (i *LocalGatewayRoute) ToLocalGatewayRoutePtrOutputWithContext(ctx context.Context) LocalGatewayRoutePtrOutput

type LocalGatewayRouteArgs

type LocalGatewayRouteArgs struct {
	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringInput
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringInput
	// Identifier of EC2 Local Gateway Virtual Interface Group.
	LocalGatewayVirtualInterfaceGroupId pulumi.StringInput
}

The set of arguments for constructing a LocalGatewayRoute resource.

func (LocalGatewayRouteArgs) ElementType

func (LocalGatewayRouteArgs) ElementType() reflect.Type

type LocalGatewayRouteArray

type LocalGatewayRouteArray []LocalGatewayRouteInput

func (LocalGatewayRouteArray) ElementType

func (LocalGatewayRouteArray) ElementType() reflect.Type

func (LocalGatewayRouteArray) ToLocalGatewayRouteArrayOutput

func (i LocalGatewayRouteArray) ToLocalGatewayRouteArrayOutput() LocalGatewayRouteArrayOutput

func (LocalGatewayRouteArray) ToLocalGatewayRouteArrayOutputWithContext

func (i LocalGatewayRouteArray) ToLocalGatewayRouteArrayOutputWithContext(ctx context.Context) LocalGatewayRouteArrayOutput

type LocalGatewayRouteArrayInput

type LocalGatewayRouteArrayInput interface {
	pulumi.Input

	ToLocalGatewayRouteArrayOutput() LocalGatewayRouteArrayOutput
	ToLocalGatewayRouteArrayOutputWithContext(context.Context) LocalGatewayRouteArrayOutput
}

LocalGatewayRouteArrayInput is an input type that accepts LocalGatewayRouteArray and LocalGatewayRouteArrayOutput values. You can construct a concrete instance of `LocalGatewayRouteArrayInput` via:

LocalGatewayRouteArray{ LocalGatewayRouteArgs{...} }

type LocalGatewayRouteArrayOutput

type LocalGatewayRouteArrayOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteArrayOutput) ElementType

func (LocalGatewayRouteArrayOutput) Index

func (LocalGatewayRouteArrayOutput) ToLocalGatewayRouteArrayOutput

func (o LocalGatewayRouteArrayOutput) ToLocalGatewayRouteArrayOutput() LocalGatewayRouteArrayOutput

func (LocalGatewayRouteArrayOutput) ToLocalGatewayRouteArrayOutputWithContext

func (o LocalGatewayRouteArrayOutput) ToLocalGatewayRouteArrayOutputWithContext(ctx context.Context) LocalGatewayRouteArrayOutput

type LocalGatewayRouteInput

type LocalGatewayRouteInput interface {
	pulumi.Input

	ToLocalGatewayRouteOutput() LocalGatewayRouteOutput
	ToLocalGatewayRouteOutputWithContext(ctx context.Context) LocalGatewayRouteOutput
}

type LocalGatewayRouteMap

type LocalGatewayRouteMap map[string]LocalGatewayRouteInput

func (LocalGatewayRouteMap) ElementType

func (LocalGatewayRouteMap) ElementType() reflect.Type

func (LocalGatewayRouteMap) ToLocalGatewayRouteMapOutput

func (i LocalGatewayRouteMap) ToLocalGatewayRouteMapOutput() LocalGatewayRouteMapOutput

func (LocalGatewayRouteMap) ToLocalGatewayRouteMapOutputWithContext

func (i LocalGatewayRouteMap) ToLocalGatewayRouteMapOutputWithContext(ctx context.Context) LocalGatewayRouteMapOutput

type LocalGatewayRouteMapInput

type LocalGatewayRouteMapInput interface {
	pulumi.Input

	ToLocalGatewayRouteMapOutput() LocalGatewayRouteMapOutput
	ToLocalGatewayRouteMapOutputWithContext(context.Context) LocalGatewayRouteMapOutput
}

LocalGatewayRouteMapInput is an input type that accepts LocalGatewayRouteMap and LocalGatewayRouteMapOutput values. You can construct a concrete instance of `LocalGatewayRouteMapInput` via:

LocalGatewayRouteMap{ "key": LocalGatewayRouteArgs{...} }

type LocalGatewayRouteMapOutput

type LocalGatewayRouteMapOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteMapOutput) ElementType

func (LocalGatewayRouteMapOutput) ElementType() reflect.Type

func (LocalGatewayRouteMapOutput) MapIndex

func (LocalGatewayRouteMapOutput) ToLocalGatewayRouteMapOutput

func (o LocalGatewayRouteMapOutput) ToLocalGatewayRouteMapOutput() LocalGatewayRouteMapOutput

func (LocalGatewayRouteMapOutput) ToLocalGatewayRouteMapOutputWithContext

func (o LocalGatewayRouteMapOutput) ToLocalGatewayRouteMapOutputWithContext(ctx context.Context) LocalGatewayRouteMapOutput

type LocalGatewayRouteOutput

type LocalGatewayRouteOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteOutput) ElementType

func (LocalGatewayRouteOutput) ElementType() reflect.Type

func (LocalGatewayRouteOutput) ToLocalGatewayRouteOutput

func (o LocalGatewayRouteOutput) ToLocalGatewayRouteOutput() LocalGatewayRouteOutput

func (LocalGatewayRouteOutput) ToLocalGatewayRouteOutputWithContext

func (o LocalGatewayRouteOutput) ToLocalGatewayRouteOutputWithContext(ctx context.Context) LocalGatewayRouteOutput

func (LocalGatewayRouteOutput) ToLocalGatewayRoutePtrOutput

func (o LocalGatewayRouteOutput) ToLocalGatewayRoutePtrOutput() LocalGatewayRoutePtrOutput

func (LocalGatewayRouteOutput) ToLocalGatewayRoutePtrOutputWithContext

func (o LocalGatewayRouteOutput) ToLocalGatewayRoutePtrOutputWithContext(ctx context.Context) LocalGatewayRoutePtrOutput

type LocalGatewayRoutePtrInput

type LocalGatewayRoutePtrInput interface {
	pulumi.Input

	ToLocalGatewayRoutePtrOutput() LocalGatewayRoutePtrOutput
	ToLocalGatewayRoutePtrOutputWithContext(ctx context.Context) LocalGatewayRoutePtrOutput
}

type LocalGatewayRoutePtrOutput

type LocalGatewayRoutePtrOutput struct{ *pulumi.OutputState }

func (LocalGatewayRoutePtrOutput) Elem added in v4.15.0

func (LocalGatewayRoutePtrOutput) ElementType

func (LocalGatewayRoutePtrOutput) ElementType() reflect.Type

func (LocalGatewayRoutePtrOutput) ToLocalGatewayRoutePtrOutput

func (o LocalGatewayRoutePtrOutput) ToLocalGatewayRoutePtrOutput() LocalGatewayRoutePtrOutput

func (LocalGatewayRoutePtrOutput) ToLocalGatewayRoutePtrOutputWithContext

func (o LocalGatewayRoutePtrOutput) ToLocalGatewayRoutePtrOutputWithContext(ctx context.Context) LocalGatewayRoutePtrOutput

type LocalGatewayRouteState

type LocalGatewayRouteState struct {
	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringPtrInput
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringPtrInput
	// Identifier of EC2 Local Gateway Virtual Interface Group.
	LocalGatewayVirtualInterfaceGroupId pulumi.StringPtrInput
}

func (LocalGatewayRouteState) ElementType

func (LocalGatewayRouteState) ElementType() reflect.Type

type LocalGatewayRouteTableVpcAssociation

type LocalGatewayRouteTableVpcAssociation struct {
	pulumi.CustomResourceState

	LocalGatewayId pulumi.StringOutput `pulumi:"localGatewayId"`
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringOutput    `pulumi:"localGatewayRouteTableId"`
	Tags                     pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll                  pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Identifier of EC2 VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages an EC2 Local Gateway Route Table VPC Association. More information can be found in the [Outposts User Guide](https://docs.aws.amazon.com/outposts/latest/userguide/outposts-local-gateways.html#vpc-associations).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "arn:aws:outposts:us-west-2:123456789012:outpost/op-1234567890abcdef"
		exampleLocalGatewayRouteTable, err := ec2.GetLocalGatewayRouteTable(ctx, &ec2.GetLocalGatewayRouteTableArgs{
			OutpostArn: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		exampleVpc, err := ec2.NewVpc(ctx, "exampleVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewLocalGatewayRouteTableVpcAssociation(ctx, "exampleLocalGatewayRouteTableVpcAssociation", &ec2.LocalGatewayRouteTableVpcAssociationArgs{
			LocalGatewayRouteTableId: pulumi.String(exampleLocalGatewayRouteTable.Id),
			VpcId:                    exampleVpc.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_local_gateway_route_table_vpc_association` can be imported by using the Local Gateway Route Table VPC Association identifier, e.g.

```sh

$ pulumi import aws:ec2/localGatewayRouteTableVpcAssociation:LocalGatewayRouteTableVpcAssociation example lgw-vpc-assoc-1234567890abcdef

```

func GetLocalGatewayRouteTableVpcAssociation

func GetLocalGatewayRouteTableVpcAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LocalGatewayRouteTableVpcAssociationState, opts ...pulumi.ResourceOption) (*LocalGatewayRouteTableVpcAssociation, error)

GetLocalGatewayRouteTableVpcAssociation gets an existing LocalGatewayRouteTableVpcAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLocalGatewayRouteTableVpcAssociation

func NewLocalGatewayRouteTableVpcAssociation(ctx *pulumi.Context,
	name string, args *LocalGatewayRouteTableVpcAssociationArgs, opts ...pulumi.ResourceOption) (*LocalGatewayRouteTableVpcAssociation, error)

NewLocalGatewayRouteTableVpcAssociation registers a new resource with the given unique name, arguments, and options.

func (*LocalGatewayRouteTableVpcAssociation) ElementType

func (*LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationOutput

func (i *LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationOutput() LocalGatewayRouteTableVpcAssociationOutput

func (*LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationOutputWithContext

func (i *LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationOutput

func (*LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationPtrOutput

func (i *LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationPtrOutput() LocalGatewayRouteTableVpcAssociationPtrOutput

func (*LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext

func (i *LocalGatewayRouteTableVpcAssociation) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationPtrOutput

type LocalGatewayRouteTableVpcAssociationArgs

type LocalGatewayRouteTableVpcAssociationArgs struct {
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringInput
	Tags                     pulumi.StringMapInput
	TagsAll                  pulumi.StringMapInput
	// Identifier of EC2 VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a LocalGatewayRouteTableVpcAssociation resource.

func (LocalGatewayRouteTableVpcAssociationArgs) ElementType

type LocalGatewayRouteTableVpcAssociationArray

type LocalGatewayRouteTableVpcAssociationArray []LocalGatewayRouteTableVpcAssociationInput

func (LocalGatewayRouteTableVpcAssociationArray) ElementType

func (LocalGatewayRouteTableVpcAssociationArray) ToLocalGatewayRouteTableVpcAssociationArrayOutput

func (i LocalGatewayRouteTableVpcAssociationArray) ToLocalGatewayRouteTableVpcAssociationArrayOutput() LocalGatewayRouteTableVpcAssociationArrayOutput

func (LocalGatewayRouteTableVpcAssociationArray) ToLocalGatewayRouteTableVpcAssociationArrayOutputWithContext

func (i LocalGatewayRouteTableVpcAssociationArray) ToLocalGatewayRouteTableVpcAssociationArrayOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationArrayOutput

type LocalGatewayRouteTableVpcAssociationArrayInput

type LocalGatewayRouteTableVpcAssociationArrayInput interface {
	pulumi.Input

	ToLocalGatewayRouteTableVpcAssociationArrayOutput() LocalGatewayRouteTableVpcAssociationArrayOutput
	ToLocalGatewayRouteTableVpcAssociationArrayOutputWithContext(context.Context) LocalGatewayRouteTableVpcAssociationArrayOutput
}

LocalGatewayRouteTableVpcAssociationArrayInput is an input type that accepts LocalGatewayRouteTableVpcAssociationArray and LocalGatewayRouteTableVpcAssociationArrayOutput values. You can construct a concrete instance of `LocalGatewayRouteTableVpcAssociationArrayInput` via:

LocalGatewayRouteTableVpcAssociationArray{ LocalGatewayRouteTableVpcAssociationArgs{...} }

type LocalGatewayRouteTableVpcAssociationArrayOutput

type LocalGatewayRouteTableVpcAssociationArrayOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteTableVpcAssociationArrayOutput) ElementType

func (LocalGatewayRouteTableVpcAssociationArrayOutput) Index

func (LocalGatewayRouteTableVpcAssociationArrayOutput) ToLocalGatewayRouteTableVpcAssociationArrayOutput

func (o LocalGatewayRouteTableVpcAssociationArrayOutput) ToLocalGatewayRouteTableVpcAssociationArrayOutput() LocalGatewayRouteTableVpcAssociationArrayOutput

func (LocalGatewayRouteTableVpcAssociationArrayOutput) ToLocalGatewayRouteTableVpcAssociationArrayOutputWithContext

func (o LocalGatewayRouteTableVpcAssociationArrayOutput) ToLocalGatewayRouteTableVpcAssociationArrayOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationArrayOutput

type LocalGatewayRouteTableVpcAssociationInput

type LocalGatewayRouteTableVpcAssociationInput interface {
	pulumi.Input

	ToLocalGatewayRouteTableVpcAssociationOutput() LocalGatewayRouteTableVpcAssociationOutput
	ToLocalGatewayRouteTableVpcAssociationOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationOutput
}

type LocalGatewayRouteTableVpcAssociationMap

type LocalGatewayRouteTableVpcAssociationMap map[string]LocalGatewayRouteTableVpcAssociationInput

func (LocalGatewayRouteTableVpcAssociationMap) ElementType

func (LocalGatewayRouteTableVpcAssociationMap) ToLocalGatewayRouteTableVpcAssociationMapOutput

func (i LocalGatewayRouteTableVpcAssociationMap) ToLocalGatewayRouteTableVpcAssociationMapOutput() LocalGatewayRouteTableVpcAssociationMapOutput

func (LocalGatewayRouteTableVpcAssociationMap) ToLocalGatewayRouteTableVpcAssociationMapOutputWithContext

func (i LocalGatewayRouteTableVpcAssociationMap) ToLocalGatewayRouteTableVpcAssociationMapOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationMapOutput

type LocalGatewayRouteTableVpcAssociationMapInput

type LocalGatewayRouteTableVpcAssociationMapInput interface {
	pulumi.Input

	ToLocalGatewayRouteTableVpcAssociationMapOutput() LocalGatewayRouteTableVpcAssociationMapOutput
	ToLocalGatewayRouteTableVpcAssociationMapOutputWithContext(context.Context) LocalGatewayRouteTableVpcAssociationMapOutput
}

LocalGatewayRouteTableVpcAssociationMapInput is an input type that accepts LocalGatewayRouteTableVpcAssociationMap and LocalGatewayRouteTableVpcAssociationMapOutput values. You can construct a concrete instance of `LocalGatewayRouteTableVpcAssociationMapInput` via:

LocalGatewayRouteTableVpcAssociationMap{ "key": LocalGatewayRouteTableVpcAssociationArgs{...} }

type LocalGatewayRouteTableVpcAssociationMapOutput

type LocalGatewayRouteTableVpcAssociationMapOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteTableVpcAssociationMapOutput) ElementType

func (LocalGatewayRouteTableVpcAssociationMapOutput) MapIndex

func (LocalGatewayRouteTableVpcAssociationMapOutput) ToLocalGatewayRouteTableVpcAssociationMapOutput

func (o LocalGatewayRouteTableVpcAssociationMapOutput) ToLocalGatewayRouteTableVpcAssociationMapOutput() LocalGatewayRouteTableVpcAssociationMapOutput

func (LocalGatewayRouteTableVpcAssociationMapOutput) ToLocalGatewayRouteTableVpcAssociationMapOutputWithContext

func (o LocalGatewayRouteTableVpcAssociationMapOutput) ToLocalGatewayRouteTableVpcAssociationMapOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationMapOutput

type LocalGatewayRouteTableVpcAssociationOutput

type LocalGatewayRouteTableVpcAssociationOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteTableVpcAssociationOutput) ElementType

func (LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationOutput

func (o LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationOutput() LocalGatewayRouteTableVpcAssociationOutput

func (LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationOutputWithContext

func (o LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationOutput

func (LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutput

func (o LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutput() LocalGatewayRouteTableVpcAssociationPtrOutput

func (LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext

func (o LocalGatewayRouteTableVpcAssociationOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationPtrOutput

type LocalGatewayRouteTableVpcAssociationPtrInput

type LocalGatewayRouteTableVpcAssociationPtrInput interface {
	pulumi.Input

	ToLocalGatewayRouteTableVpcAssociationPtrOutput() LocalGatewayRouteTableVpcAssociationPtrOutput
	ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationPtrOutput
}

type LocalGatewayRouteTableVpcAssociationPtrOutput

type LocalGatewayRouteTableVpcAssociationPtrOutput struct{ *pulumi.OutputState }

func (LocalGatewayRouteTableVpcAssociationPtrOutput) Elem added in v4.15.0

func (LocalGatewayRouteTableVpcAssociationPtrOutput) ElementType

func (LocalGatewayRouteTableVpcAssociationPtrOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutput

func (o LocalGatewayRouteTableVpcAssociationPtrOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutput() LocalGatewayRouteTableVpcAssociationPtrOutput

func (LocalGatewayRouteTableVpcAssociationPtrOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext

func (o LocalGatewayRouteTableVpcAssociationPtrOutput) ToLocalGatewayRouteTableVpcAssociationPtrOutputWithContext(ctx context.Context) LocalGatewayRouteTableVpcAssociationPtrOutput

type LocalGatewayRouteTableVpcAssociationState

type LocalGatewayRouteTableVpcAssociationState struct {
	LocalGatewayId pulumi.StringPtrInput
	// Identifier of EC2 Local Gateway Route Table.
	LocalGatewayRouteTableId pulumi.StringPtrInput
	Tags                     pulumi.StringMapInput
	TagsAll                  pulumi.StringMapInput
	// Identifier of EC2 VPC.
	VpcId pulumi.StringPtrInput
}

func (LocalGatewayRouteTableVpcAssociationState) ElementType

type LookupAmiArgs

type LookupAmiArgs struct {
	// Limit search to users with *explicit* launch permission on
	// the image. Valid items are the numeric account ID or `self`.
	ExecutableUsers []string `pulumi:"executableUsers"`
	// One or more name/value pairs to filter off of. There are
	// several valid keys, for a full reference, check out
	// [describe-images in the AWS CLI reference][1].
	Filters []GetAmiFilter `pulumi:"filters"`
	// If more than one result is returned, use the most
	// recent AMI.
	MostRecent *bool `pulumi:"mostRecent"`
	// A regex string to apply to the AMI list returned
	// by AWS. This allows more advanced filtering not supported from the AWS API. This
	// filtering is done locally on what AWS returns, and could have a performance
	// impact if the result is large. It is recommended to combine this with other
	// options to narrow down the list AWS returns.
	NameRegex *string `pulumi:"nameRegex"`
	// List of AMI owners to limit search. At least 1 value must be specified. Valid values: an AWS account ID, `self` (the current account), or an AWS owner alias (e.g. `amazon`, `aws-marketplace`, `microsoft`).
	Owners []string `pulumi:"owners"`
	// Any tags assigned to the image.
	// * `tags.#.key` - The key name of the tag.
	// * `tags.#.value` - The value of the tag.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getAmi.

type LookupAmiResult

type LookupAmiResult struct {
	// The OS architecture of the AMI (ie: `i386` or `x8664`).
	Architecture string `pulumi:"architecture"`
	// The ARN of the AMI.
	Arn string `pulumi:"arn"`
	// Set of objects with block device mappings of the AMI.
	BlockDeviceMappings []GetAmiBlockDeviceMapping `pulumi:"blockDeviceMappings"`
	// The date and time the image was created.
	CreationDate string `pulumi:"creationDate"`
	// The description of the AMI that was provided during image
	// creation.
	Description string `pulumi:"description"`
	// Specifies whether enhanced networking with ENA is enabled.
	EnaSupport      bool           `pulumi:"enaSupport"`
	ExecutableUsers []string       `pulumi:"executableUsers"`
	Filters         []GetAmiFilter `pulumi:"filters"`
	// The hypervisor type of the image.
	Hypervisor string `pulumi:"hypervisor"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The ID of the AMI. Should be the same as the resource `id`.
	ImageId string `pulumi:"imageId"`
	// The location of the AMI.
	ImageLocation string `pulumi:"imageLocation"`
	// The AWS account alias (for example, `amazon`, `self`) or
	// the AWS account ID of the AMI owner.
	ImageOwnerAlias string `pulumi:"imageOwnerAlias"`
	// The type of image.
	ImageType string `pulumi:"imageType"`
	// The kernel associated with the image, if any. Only applicable
	// for machine images.
	KernelId   string `pulumi:"kernelId"`
	MostRecent *bool  `pulumi:"mostRecent"`
	// The name of the AMI that was provided during image creation.
	Name      string  `pulumi:"name"`
	NameRegex *string `pulumi:"nameRegex"`
	// The AWS account ID of the image owner.
	OwnerId string   `pulumi:"ownerId"`
	Owners  []string `pulumi:"owners"`
	// The value is Windows for `Windows` AMIs; otherwise blank.
	Platform string `pulumi:"platform"`
	// The platform details associated with the billing code of the AMI.
	PlatformDetails string `pulumi:"platformDetails"`
	// Any product codes associated with the AMI.
	// * `product_codes.#.product_code_id` - The product code.
	// * `product_codes.#.product_code_type` - The type of product code.
	ProductCodes []GetAmiProductCode `pulumi:"productCodes"`
	// `true` if the image has public launch permissions.
	Public bool `pulumi:"public"`
	// The RAM disk associated with the image, if any. Only applicable
	// for machine images.
	RamdiskId string `pulumi:"ramdiskId"`
	// The device name of the root device.
	RootDeviceName string `pulumi:"rootDeviceName"`
	// The type of root device (ie: `ebs` or `instance-store`).
	RootDeviceType string `pulumi:"rootDeviceType"`
	// The snapshot id associated with the root device, if any
	// (only applies to `ebs` root devices).
	RootSnapshotId string `pulumi:"rootSnapshotId"`
	// Specifies whether enhanced networking is enabled.
	SriovNetSupport string `pulumi:"sriovNetSupport"`
	// The current state of the AMI. If the state is `available`, the image
	// is successfully registered and can be used to launch an instance.
	State string `pulumi:"state"`
	// Describes a state change. Fields are `UNSET` if not available.
	// * `state_reason.code` - The reason code for the state change.
	// * `state_reason.message` - The message for the state change.
	StateReason map[string]string `pulumi:"stateReason"`
	// Any tags assigned to the image.
	// * `tags.#.key` - The key name of the tag.
	// * `tags.#.value` - The value of the tag.
	Tags map[string]string `pulumi:"tags"`
	// The operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
	UsageOperation string `pulumi:"usageOperation"`
	// The type of virtualization of the AMI (ie: `hvm` or
	// `paravirtual`).
	VirtualizationType string `pulumi:"virtualizationType"`
}

A collection of values returned by getAmi.

func LookupAmi

func LookupAmi(ctx *pulumi.Context, args *LookupAmiArgs, opts ...pulumi.InvokeOption) (*LookupAmiResult, error)

Use this data source to get the ID of a registered AMI for use in other resources.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		opt1 := "^myami-\\d{3}"
		_, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			ExecutableUsers: []string{
				"self",
			},
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"myami-*",
					},
				},
				ec2.GetAmiFilter{
					Name: "root-device-type",
					Values: []string{
						"ebs",
					},
				},
				ec2.GetAmiFilter{
					Name: "virtualization-type",
					Values: []string{
						"hvm",
					},
				},
			},
			MostRecent: &opt0,
			NameRegex:  &opt1,
			Owners: []string{
				"self",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupCustomerGatewayArgs

type LookupCustomerGatewayArgs struct {
	// One or more [name-value pairs][dcg-filters] to filter by.
	Filters []GetCustomerGatewayFilter `pulumi:"filters"`
	// The ID of the gateway.
	Id *string `pulumi:"id"`
	// Map of key-value pairs assigned to the gateway.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getCustomerGateway.

type LookupCustomerGatewayResult

type LookupCustomerGatewayResult struct {
	// The ARN of the customer gateway.
	Arn string `pulumi:"arn"`
	// (Optional) The gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
	BgpAsn int `pulumi:"bgpAsn"`
	// (Optional) A name for the customer gateway device.
	DeviceName string                     `pulumi:"deviceName"`
	Filters    []GetCustomerGatewayFilter `pulumi:"filters"`
	Id         string                     `pulumi:"id"`
	// (Optional) The IP address of the gateway's Internet-routable external interface.
	IpAddress string `pulumi:"ipAddress"`
	// Map of key-value pairs assigned to the gateway.
	Tags map[string]string `pulumi:"tags"`
	// (Optional) The type of customer gateway. The only type AWS supports at this time is "ipsec.1".
	Type string `pulumi:"type"`
}

A collection of values returned by getCustomerGateway.

func LookupCustomerGateway

func LookupCustomerGateway(ctx *pulumi.Context, args *LookupCustomerGatewayArgs, opts ...pulumi.InvokeOption) (*LookupCustomerGatewayResult, error)

Get an existing AWS Customer Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		foo, err := ec2.LookupCustomerGateway(ctx, &ec2.LookupCustomerGatewayArgs{
			Filters: []ec2.GetCustomerGatewayFilter{
				ec2.GetCustomerGatewayFilter{
					Name: "tag:Name",
					Values: []string{
						"foo-prod",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		main, err := ec2.NewVpnGateway(ctx, "main", &ec2.VpnGatewayArgs{
			VpcId:         pulumi.Any(aws_vpc.Main.Id),
			AmazonSideAsn: pulumi.String("7224"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpnConnection(ctx, "transit", &ec2.VpnConnectionArgs{
			VpnGatewayId:      main.ID(),
			CustomerGatewayId: pulumi.String(foo.Id),
			Type:              pulumi.String(foo.Type),
			StaticRoutesOnly:  pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupDedicatedHostArgs

type LookupDedicatedHostArgs struct {
	// The host ID.
	HostId string            `pulumi:"hostId"`
	Tags   map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getDedicatedHost.

type LookupDedicatedHostResult

type LookupDedicatedHostResult struct {
	AutoPlacement    string `pulumi:"autoPlacement"`
	AvailabilityZone string `pulumi:"availabilityZone"`
	// The number of cores on the Dedicated Host.
	Cores int `pulumi:"cores"`
	// The host ID.
	HostId       string `pulumi:"hostId"`
	HostRecovery string `pulumi:"hostRecovery"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The instance family supported by the Dedicated Host. For example, m5.
	// * `instanceType` -The instance type supported by the Dedicated Host. For example, m5.large. If the host supports multiple instance types, no instanceType is returned.
	InstanceFamily string `pulumi:"instanceFamily"`
	InstanceState  string `pulumi:"instanceState"`
	InstanceType   string `pulumi:"instanceType"`
	// The instance family supported by the Dedicated Host. For example, m5.
	Sockets int               `pulumi:"sockets"`
	Tags    map[string]string `pulumi:"tags"`
	// The total number of vCPUs on the Dedicated Host.
	TotalVcpus int `pulumi:"totalVcpus"`
}

A collection of values returned by getDedicatedHost.

func LookupDedicatedHost

func LookupDedicatedHost(ctx *pulumi.Context, args *LookupDedicatedHostArgs, opts ...pulumi.InvokeOption) (*LookupDedicatedHostResult, error)

Use this data source to get information about the host when allocating an EC2 Dedicated Host.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := ec2.NewDedicatedHost(ctx, "test", &ec2.DedicatedHostArgs{
			AutoPlacement:    pulumi.String("on"),
			AvailabilityZone: pulumi.String("us-west-1a"),
			HostRecovery:     pulumi.String("on"),
			InstanceType:     pulumi.String("c5.18xlarge"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupInstanceArgs

type LookupInstanceArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [describe-instances in the AWS CLI reference][1].
	Filters []GetInstanceFilter `pulumi:"filters"`
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData *bool `pulumi:"getPasswordData"`
	// Retrieve Base64 encoded User Data contents into the `userDataBase64` attribute. A SHA-1 hash of the User Data contents will always be present in the `userData` attribute. Defaults to `false`.
	GetUserData *bool `pulumi:"getUserData"`
	// Specify the exact Instance ID with which to populate the data source.
	InstanceId *string `pulumi:"instanceId"`
	// A map of tags, each pair of which must
	// exactly match a pair on the desired Instance.
	InstanceTags map[string]string `pulumi:"instanceTags"`
	// A map of tags assigned to the Instance.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getInstance.

type LookupInstanceResult

type LookupInstanceResult struct {
	// The ID of the AMI used to launch the instance.
	Ami string `pulumi:"ami"`
	// The ARN of the instance.
	Arn string `pulumi:"arn"`
	// Whether or not the Instance is associated with a public IP address or not (Boolean).
	AssociatePublicIpAddress bool `pulumi:"associatePublicIpAddress"`
	// The availability zone of the Instance.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// The credit specification of the Instance.
	CreditSpecifications  []GetInstanceCreditSpecification `pulumi:"creditSpecifications"`
	DisableApiTermination bool                             `pulumi:"disableApiTermination"`
	// The EBS block device mappings of the Instance.
	EbsBlockDevices []GetInstanceEbsBlockDevice `pulumi:"ebsBlockDevices"`
	// Whether the Instance is EBS optimized or not (Boolean).
	EbsOptimized bool `pulumi:"ebsOptimized"`
	// The enclave options of the Instance.
	EnclaveOptions []GetInstanceEnclaveOption `pulumi:"enclaveOptions"`
	// The ephemeral block device mappings of the Instance.
	EphemeralBlockDevices []GetInstanceEphemeralBlockDevice `pulumi:"ephemeralBlockDevices"`
	Filters               []GetInstanceFilter               `pulumi:"filters"`
	GetPasswordData       *bool                             `pulumi:"getPasswordData"`
	GetUserData           *bool                             `pulumi:"getUserData"`
	// The Id of the dedicated host the instance will be assigned to.
	HostId string `pulumi:"hostId"`
	// The name of the instance profile associated with the Instance.
	IamInstanceProfile string `pulumi:"iamInstanceProfile"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	InstanceId *string `pulumi:"instanceId"`
	// The state of the instance. One of: `pending`, `running`, `shutting-down`, `terminated`, `stopping`, `stopped`. See [Instance Lifecycle](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) for more information.
	InstanceState string            `pulumi:"instanceState"`
	InstanceTags  map[string]string `pulumi:"instanceTags"`
	// The type of the Instance.
	InstanceType string `pulumi:"instanceType"`
	// The key name of the Instance.
	KeyName string `pulumi:"keyName"`
	// The metadata options of the Instance.
	MetadataOptions []GetInstanceMetadataOption `pulumi:"metadataOptions"`
	// Whether detailed monitoring is enabled or disabled for the Instance (Boolean).
	Monitoring bool `pulumi:"monitoring"`
	// The ID of the network interface that was created with the Instance.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn string `pulumi:"outpostArn"`
	// Base-64 encoded encrypted password data for the instance.
	// Useful for getting the administrator password for instances running Microsoft Windows.
	// This attribute is only exported if `getPasswordData` is true.
	// See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	PasswordData string `pulumi:"passwordData"`
	// The placement group of the Instance.
	PlacementGroup string `pulumi:"placementGroup"`
	// The private DNS name assigned to the Instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC.
	PrivateDns string `pulumi:"privateDns"`
	// The private IP address assigned to the Instance.
	PrivateIp string `pulumi:"privateIp"`
	// The public DNS name assigned to the Instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC.
	PublicDns string `pulumi:"publicDns"`
	// The public IP address assigned to the Instance, if applicable. **NOTE**: If you are using an `ec2.Eip` with your instance, you should refer to the EIP's address directly and not use `publicIp`, as this field will change after the EIP is attached.
	PublicIp string `pulumi:"publicIp"`
	// The root block device mappings of the Instance
	RootBlockDevices []GetInstanceRootBlockDevice `pulumi:"rootBlockDevices"`
	// The secondary private IPv4 addresses assigned to the instance's primary network interface (eth0) in a VPC.
	SecondaryPrivateIps []string `pulumi:"secondaryPrivateIps"`
	// The associated security groups.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Whether the network interface performs source/destination checking (Boolean).
	SourceDestCheck bool `pulumi:"sourceDestCheck"`
	// The VPC subnet ID.
	SubnetId string `pulumi:"subnetId"`
	// A map of tags assigned to the Instance.
	Tags map[string]string `pulumi:"tags"`
	// The tenancy of the instance: `dedicated`, `default`, `host`.
	Tenancy string `pulumi:"tenancy"`
	// SHA-1 hash of User Data supplied to the Instance.
	UserData string `pulumi:"userData"`
	// Base64 encoded contents of User Data supplied to the Instance. This attribute is only exported if `getUserData` is true.
	UserDataBase64 string `pulumi:"userDataBase64"`
	// The associated security groups in a non-default VPC.
	VpcSecurityGroupIds []string `pulumi:"vpcSecurityGroupIds"`
}

A collection of values returned by getInstance.

func LookupInstance

func LookupInstance(ctx *pulumi.Context, args *LookupInstanceArgs, opts ...pulumi.InvokeOption) (*LookupInstanceResult, error)

Use this data source to get the ID of an Amazon EC2 Instance for use in other resources.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "i-instanceid"
		_, err := ec2.LookupInstance(ctx, &ec2.LookupInstanceArgs{
			Filters: []ec2.GetInstanceFilter{
				ec2.GetInstanceFilter{
					Name: "image-id",
					Values: []string{
						"ami-xxxxxxxx",
					},
				},
				ec2.GetInstanceFilter{
					Name: "tag:Name",
					Values: []string{
						"instance-name-tag",
					},
				},
			},
			InstanceId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupInternetGatewayArgs

type LookupInternetGatewayArgs struct {
	// Custom filter block as described below.
	Filters []GetInternetGatewayFilter `pulumi:"filters"`
	// The id of the specific Internet Gateway to retrieve.
	InternetGatewayId *string `pulumi:"internetGatewayId"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired Internet Gateway.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getInternetGateway.

type LookupInternetGatewayResult

type LookupInternetGatewayResult struct {
	// The ARN of the Internet Gateway.
	Arn         string                         `pulumi:"arn"`
	Attachments []GetInternetGatewayAttachment `pulumi:"attachments"`
	Filters     []GetInternetGatewayFilter     `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                string `pulumi:"id"`
	InternetGatewayId string `pulumi:"internetGatewayId"`
	// The ID of the AWS account that owns the internet gateway.
	OwnerId string            `pulumi:"ownerId"`
	Tags    map[string]string `pulumi:"tags"`
}

A collection of values returned by getInternetGateway.

func LookupInternetGateway

func LookupInternetGateway(ctx *pulumi.Context, args *LookupInternetGatewayArgs, opts ...pulumi.InvokeOption) (*LookupInternetGatewayResult, error)

`ec2.InternetGateway` provides details about a specific Internet Gateway.

type LookupLaunchConfigurationArgs

type LookupLaunchConfigurationArgs struct {
	// The name of the launch configuration.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getLaunchConfiguration.

type LookupLaunchConfigurationResult

type LookupLaunchConfigurationResult struct {
	// The Amazon Resource Name of the launch configuration.
	Arn string `pulumi:"arn"`
	// Whether a Public IP address is associated with the instance.
	AssociatePublicIpAddress bool `pulumi:"associatePublicIpAddress"`
	// The EBS Block Devices attached to the instance.
	EbsBlockDevices []GetLaunchConfigurationEbsBlockDevice `pulumi:"ebsBlockDevices"`
	// Whether the launched EC2 instance will be EBS-optimized.
	EbsOptimized bool `pulumi:"ebsOptimized"`
	// Whether Detailed Monitoring is Enabled.
	EnableMonitoring bool `pulumi:"enableMonitoring"`
	// The Ephemeral volumes on the instance.
	EphemeralBlockDevices []GetLaunchConfigurationEphemeralBlockDevice `pulumi:"ephemeralBlockDevices"`
	// The IAM Instance Profile to associate with launched instances.
	IamInstanceProfile string `pulumi:"iamInstanceProfile"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The EC2 Image ID of the instance.
	ImageId string `pulumi:"imageId"`
	// The Instance Type of the instance to launch.
	InstanceType string `pulumi:"instanceType"`
	// The Key Name that should be used for the instance.
	KeyName string `pulumi:"keyName"`
	// The metadata options for the instance.
	MetadataOptions []GetLaunchConfigurationMetadataOption `pulumi:"metadataOptions"`
	// The Name of the launch configuration.
	Name string `pulumi:"name"`
	// The Tenancy of the instance.
	PlacementTenancy string `pulumi:"placementTenancy"`
	// The Root Block Device of the instance.
	RootBlockDevices []GetLaunchConfigurationRootBlockDevice `pulumi:"rootBlockDevices"`
	// A list of associated Security Group IDS.
	SecurityGroups []string `pulumi:"securityGroups"`
	// The Price to use for reserving Spot instances.
	SpotPrice string `pulumi:"spotPrice"`
	// The User Data of the instance.
	UserData string `pulumi:"userData"`
	// The ID of a ClassicLink-enabled VPC.
	VpcClassicLinkId string `pulumi:"vpcClassicLinkId"`
	// The IDs of one or more Security Groups for the specified ClassicLink-enabled VPC.
	VpcClassicLinkSecurityGroups []string `pulumi:"vpcClassicLinkSecurityGroups"`
}

A collection of values returned by getLaunchConfiguration.

func LookupLaunchConfiguration

func LookupLaunchConfiguration(ctx *pulumi.Context, args *LookupLaunchConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupLaunchConfigurationResult, error)

Provides information about a Launch Configuration.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupLaunchConfiguration(ctx, &ec2.LookupLaunchConfigurationArgs{
			Name: "test-launch-config",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupLaunchTemplateArgs

type LookupLaunchTemplateArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetLaunchTemplateFilter `pulumi:"filters"`
	// The ID of the specific launch template to retrieve.
	Id *string `pulumi:"id"`
	// The name of the filter field. Valid values can be found in the [EC2 DescribeLaunchTemplates API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html).
	Name *string `pulumi:"name"`
	// A map of tags, each pair of which must exactly match a pair on the desired Launch Template.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLaunchTemplate.

type LookupLaunchTemplateResult

type LookupLaunchTemplateResult struct {
	// Amazon Resource Name (ARN) of the launch template.
	Arn string `pulumi:"arn"`
	// Specify volumes to attach to the instance besides the volumes specified by the AMI.
	BlockDeviceMappings []GetLaunchTemplateBlockDeviceMapping `pulumi:"blockDeviceMappings"`
	// Customize the credit specification of the instance. See Credit
	// Specification below for more details.
	CreditSpecifications []GetLaunchTemplateCreditSpecification `pulumi:"creditSpecifications"`
	// The default version of the launch template.
	DefaultVersion int `pulumi:"defaultVersion"`
	// Description of the launch template.
	Description string `pulumi:"description"`
	// If `true`, enables [EC2 Instance
	// Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination)
	DisableApiTermination bool `pulumi:"disableApiTermination"`
	// If `true`, the launched EC2 instance will be EBS-optimized.
	EbsOptimized string `pulumi:"ebsOptimized"`
	// The elastic GPU to attach to the instance. See Elastic GPU
	// below for more details.
	ElasticGpuSpecifications []GetLaunchTemplateElasticGpuSpecification `pulumi:"elasticGpuSpecifications"`
	// The enclave options of the Instance.
	EnclaveOptions []GetLaunchTemplateEnclaveOption `pulumi:"enclaveOptions"`
	Filters        []GetLaunchTemplateFilter        `pulumi:"filters"`
	// The hibernation options for the instance.
	HibernationOptions []GetLaunchTemplateHibernationOption `pulumi:"hibernationOptions"`
	// The IAM Instance Profile to launch the instance with. See Instance Profile
	// below for more details.
	IamInstanceProfiles []GetLaunchTemplateIamInstanceProfile `pulumi:"iamInstanceProfiles"`
	// The ID of the launch template.
	Id string `pulumi:"id"`
	// The AMI from which to launch the instance.
	ImageId string `pulumi:"imageId"`
	// Shutdown behavior for the instance. Can be `stop` or `terminate`.
	// (Default: `stop`).
	InstanceInitiatedShutdownBehavior string `pulumi:"instanceInitiatedShutdownBehavior"`
	// The market (purchasing) option for the instance.
	// below for details.
	InstanceMarketOptions []GetLaunchTemplateInstanceMarketOption `pulumi:"instanceMarketOptions"`
	// The type of the instance.
	InstanceType string `pulumi:"instanceType"`
	// The kernel ID.
	KernelId string `pulumi:"kernelId"`
	// The key name to use for the instance.
	KeyName string `pulumi:"keyName"`
	// The latest version of the launch template.
	LatestVersion int `pulumi:"latestVersion"`
	// The metadata options for the instance.
	MetadataOptions []GetLaunchTemplateMetadataOption `pulumi:"metadataOptions"`
	// The monitoring option for the instance.
	Monitorings []GetLaunchTemplateMonitoring `pulumi:"monitorings"`
	Name        *string                       `pulumi:"name"`
	// Customize network interfaces to be attached at instance boot time. See Network
	// Interfaces below for more details.
	NetworkInterfaces []GetLaunchTemplateNetworkInterface `pulumi:"networkInterfaces"`
	// The placement of the instance.
	Placements []GetLaunchTemplatePlacement `pulumi:"placements"`
	// The ID of the RAM disk.
	RamDiskId string `pulumi:"ramDiskId"`
	// A list of security group names to associate with. If you are creating Instances in a VPC, use
	// `vpcSecurityGroupIds` instead.
	SecurityGroupNames []string `pulumi:"securityGroupNames"`
	// The tags to apply to the resources during launch.
	TagSpecifications []GetLaunchTemplateTagSpecification `pulumi:"tagSpecifications"`
	// (Optional) A map of tags to assign to the launch template.
	Tags map[string]string `pulumi:"tags"`
	// The Base64-encoded user data to provide when launching the instance.
	UserData string `pulumi:"userData"`
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds []string `pulumi:"vpcSecurityGroupIds"`
}

A collection of values returned by getLaunchTemplate.

func LookupLaunchTemplate

func LookupLaunchTemplate(ctx *pulumi.Context, args *LookupLaunchTemplateArgs, opts ...pulumi.InvokeOption) (*LookupLaunchTemplateResult, error)

Provides information about a Launch Template.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "my-launch-template"
		_, err := ec2.LookupLaunchTemplate(ctx, &ec2.LookupLaunchTemplateArgs{
			Name: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupLaunchTemplate(ctx, &ec2.LookupLaunchTemplateArgs{
			Filters: []ec2.GetLaunchTemplateFilter{
				ec2.GetLaunchTemplateFilter{
					Name: "launch-template-name",
					Values: []string{
						"some-template",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupManagedPrefixListArgs

type LookupManagedPrefixListArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetManagedPrefixListFilter `pulumi:"filters"`
	// The ID of the prefix list to select.
	Id *string `pulumi:"id"`
	// The name of the filter field. Valid values can be found in the EC2 [DescribeManagedPrefixLists](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeManagedPrefixLists.html) API Reference.
	Name *string `pulumi:"name"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getManagedPrefixList.

type LookupManagedPrefixListResult

type LookupManagedPrefixListResult struct {
	// The address family of the prefix list. Valid values are `IPv4` and `IPv6`.
	AddressFamily string `pulumi:"addressFamily"`
	// The ARN of the selected prefix list.
	Arn string `pulumi:"arn"`
	// The set of entries in this prefix list. Each entry is an object with `cidr` and `description`.
	Entries []GetManagedPrefixListEntry  `pulumi:"entries"`
	Filters []GetManagedPrefixListFilter `pulumi:"filters"`
	// The ID of the selected prefix list.
	Id string `pulumi:"id"`
	// When then prefix list is managed, the maximum number of entries it supports, or null otherwise.
	MaxEntries int `pulumi:"maxEntries"`
	// The name of the selected prefix list.
	Name string `pulumi:"name"`
	// The Account ID of the owner of a customer-managed prefix list, or `AWS` otherwise.
	OwnerId string `pulumi:"ownerId"`
	// A map of tags assigned to the resource.
	Tags    map[string]string `pulumi:"tags"`
	Version int               `pulumi:"version"`
}

A collection of values returned by getManagedPrefixList.

func LookupManagedPrefixList

func LookupManagedPrefixList(ctx *pulumi.Context, args *LookupManagedPrefixListArgs, opts ...pulumi.InvokeOption) (*LookupManagedPrefixListResult, error)

`ec2.ManagedPrefixList` provides details about a specific AWS prefix list or customer-managed prefix list in the current region.

## Example Usage ### Find the regional DynamoDB prefix list

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		opt0 := fmt.Sprintf("%v%v%v", "com.amazonaws.", current.Name, ".dynamodb")
		_, err = ec2.LookupManagedPrefixList(ctx, &ec2.LookupManagedPrefixListArgs{
			Name: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Find a managed prefix list using filters

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupManagedPrefixList(ctx, &ec2.LookupManagedPrefixListArgs{
			Filters: []ec2.GetManagedPrefixListFilter{
				ec2.GetManagedPrefixListFilter{
					Name: "prefix-list-name",
					Values: []string{
						"my-prefix-list",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupNatGatewayArgs

type LookupNatGatewayArgs struct {
	// Custom filter block as described below.
	Filters []GetNatGatewayFilter `pulumi:"filters"`
	// The id of the specific Nat Gateway to retrieve.
	Id *string `pulumi:"id"`
	// The state of the NAT gateway (pending | failed | available | deleting | deleted ).
	State *string `pulumi:"state"`
	// The id of subnet that the Nat Gateway resides in.
	SubnetId *string `pulumi:"subnetId"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired Nat Gateway.
	Tags map[string]string `pulumi:"tags"`
	// The id of the VPC that the Nat Gateway resides in.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getNatGateway.

type LookupNatGatewayResult

type LookupNatGatewayResult struct {
	// The Id of the EIP allocated to the selected Nat Gateway.
	AllocationId string `pulumi:"allocationId"`
	// The connectivity type of the NAT Gateway.
	ConnectivityType string                `pulumi:"connectivityType"`
	Filters          []GetNatGatewayFilter `pulumi:"filters"`
	Id               string                `pulumi:"id"`
	// The Id of the ENI allocated to the selected Nat Gateway.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// The private Ip address of the selected Nat Gateway.
	PrivateIp string `pulumi:"privateIp"`
	// The public Ip (EIP) address of the selected Nat Gateway.
	PublicIp string            `pulumi:"publicIp"`
	State    string            `pulumi:"state"`
	SubnetId string            `pulumi:"subnetId"`
	Tags     map[string]string `pulumi:"tags"`
	VpcId    string            `pulumi:"vpcId"`
}

A collection of values returned by getNatGateway.

func LookupNatGateway

func LookupNatGateway(ctx *pulumi.Context, args *LookupNatGatewayArgs, opts ...pulumi.InvokeOption) (*LookupNatGatewayResult, error)

Provides details about a specific Nat Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		subnetId := cfg.RequireObject("subnetId")
		opt0 := aws_subnet.Public.Id
		_, err := ec2.LookupNatGateway(ctx, &ec2.LookupNatGatewayArgs{
			SubnetId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

Usage with tags:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_subnet.Public.Id
		_, err := ec2.LookupNatGateway(ctx, &ec2.LookupNatGatewayArgs{
			SubnetId: &opt0,
			Tags: map[string]interface{}{
				"Name": "gw NAT",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupNetworkInterfaceArgs

type LookupNetworkInterfaceArgs struct {
	// One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-network-interfaces](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-network-interfaces.html) in the AWS CLI reference.
	Filters []GetNetworkInterfaceFilter `pulumi:"filters"`
	// The identifier for the network interface.
	Id *string `pulumi:"id"`
	// Any tags assigned to the network interface.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getNetworkInterface.

type LookupNetworkInterfaceResult

type LookupNetworkInterfaceResult struct {
	// The association information for an Elastic IP address (IPv4) associated with the network interface. See supported fields below.
	Associations []GetNetworkInterfaceAssociation    `pulumi:"associations"`
	Attachments  []GetNetworkInterfaceAttachmentType `pulumi:"attachments"`
	// The Availability Zone.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Description of the network interface.
	Description string                      `pulumi:"description"`
	Filters     []GetNetworkInterfaceFilter `pulumi:"filters"`
	Id          string                      `pulumi:"id"`
	// The type of interface.
	InterfaceType string `pulumi:"interfaceType"`
	// List of IPv6 addresses to assign to the ENI.
	Ipv6Addresses []string `pulumi:"ipv6Addresses"`
	// The MAC address.
	MacAddress string `pulumi:"macAddress"`
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn string `pulumi:"outpostArn"`
	// The AWS account ID of the owner of the network interface.
	OwnerId string `pulumi:"ownerId"`
	// The private DNS name.
	PrivateDnsName string `pulumi:"privateDnsName"`
	// The private IPv4 address of the network interface within the subnet.
	PrivateIp string `pulumi:"privateIp"`
	// The private IPv4 addresses associated with the network interface.
	PrivateIps []string `pulumi:"privateIps"`
	// The ID of the entity that launched the instance on your behalf.
	RequesterId string `pulumi:"requesterId"`
	// The list of security groups for the network interface.
	SecurityGroups []string `pulumi:"securityGroups"`
	// The ID of the subnet.
	SubnetId string `pulumi:"subnetId"`
	// Any tags assigned to the network interface.
	Tags map[string]string `pulumi:"tags"`
	// The ID of the VPC.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getNetworkInterface.

func LookupNetworkInterface

func LookupNetworkInterface(ctx *pulumi.Context, args *LookupNetworkInterfaceArgs, opts ...pulumi.InvokeOption) (*LookupNetworkInterfaceResult, error)

Use this data source to get information about a Network Interface.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "eni-01234567"
		_, err := ec2.LookupNetworkInterface(ctx, &ec2.LookupNetworkInterfaceArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRouteArgs

type LookupRouteArgs struct {
	// EC2 Carrier Gateway ID of the Route belonging to the Route Table.
	CarrierGatewayId *string `pulumi:"carrierGatewayId"`
	// CIDR block of the Route belonging to the Route Table.
	DestinationCidrBlock *string `pulumi:"destinationCidrBlock"`
	// IPv6 CIDR block of the Route belonging to the Route Table.
	DestinationIpv6CidrBlock *string `pulumi:"destinationIpv6CidrBlock"`
	// The ID of a managed prefix list destination of the Route belonging to the Route Table.
	DestinationPrefixListId *string `pulumi:"destinationPrefixListId"`
	// Egress Only Gateway ID of the Route belonging to the Route Table.
	EgressOnlyGatewayId *string `pulumi:"egressOnlyGatewayId"`
	// Gateway ID of the Route belonging to the Route Table.
	GatewayId *string `pulumi:"gatewayId"`
	// Instance ID of the Route belonging to the Route Table.
	InstanceId *string `pulumi:"instanceId"`
	// Local Gateway ID of the Route belonging to the Route Table.
	LocalGatewayId *string `pulumi:"localGatewayId"`
	// NAT Gateway ID of the Route belonging to the Route Table.
	NatGatewayId *string `pulumi:"natGatewayId"`
	// Network Interface ID of the Route belonging to the Route Table.
	NetworkInterfaceId *string `pulumi:"networkInterfaceId"`
	// The ID of the specific Route Table containing the Route entry.
	RouteTableId string `pulumi:"routeTableId"`
	// EC2 Transit Gateway ID of the Route belonging to the Route Table.
	TransitGatewayId *string `pulumi:"transitGatewayId"`
	// VPC Peering Connection ID of the Route belonging to the Route Table.
	VpcPeeringConnectionId *string `pulumi:"vpcPeeringConnectionId"`
}

A collection of arguments for invoking getRoute.

type LookupRouteResult

type LookupRouteResult struct {
	CarrierGatewayId         string `pulumi:"carrierGatewayId"`
	DestinationCidrBlock     string `pulumi:"destinationCidrBlock"`
	DestinationIpv6CidrBlock string `pulumi:"destinationIpv6CidrBlock"`
	DestinationPrefixListId  string `pulumi:"destinationPrefixListId"`
	EgressOnlyGatewayId      string `pulumi:"egressOnlyGatewayId"`
	GatewayId                string `pulumi:"gatewayId"`
	// The provider-assigned unique ID for this managed resource.
	Id                     string `pulumi:"id"`
	InstanceId             string `pulumi:"instanceId"`
	LocalGatewayId         string `pulumi:"localGatewayId"`
	NatGatewayId           string `pulumi:"natGatewayId"`
	NetworkInterfaceId     string `pulumi:"networkInterfaceId"`
	RouteTableId           string `pulumi:"routeTableId"`
	TransitGatewayId       string `pulumi:"transitGatewayId"`
	VpcPeeringConnectionId string `pulumi:"vpcPeeringConnectionId"`
}

A collection of values returned by getRoute.

func LookupRoute

func LookupRoute(ctx *pulumi.Context, args *LookupRouteArgs, opts ...pulumi.InvokeOption) (*LookupRouteResult, error)

`ec2.Route` provides details about a specific Route.

This resource can prove useful when finding the resource associated with a CIDR. For example, finding the peering connection associated with a CIDR value.

## Example Usage

The following example shows how one might use a CIDR value to find a network interface id and use this to create a data source of that network interface.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		subnetId := cfg.RequireObject("subnetId")
		opt0 := subnetId
		_, err := ec2.LookupRouteTable(ctx, &ec2.LookupRouteTableArgs{
			SubnetId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		opt1 := "10.0.1.0/24"
		route, err := ec2.LookupRoute(ctx, &ec2.LookupRouteArgs{
			RouteTableId:         aws_route_table.Selected.Id,
			DestinationCidrBlock: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		opt2 := route.NetworkInterfaceId
		_, err = ec2.LookupNetworkInterface(ctx, &ec2.LookupNetworkInterfaceArgs{
			Id: &opt2,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRouteTableArgs

type LookupRouteTableArgs struct {
	// Configuration block. Detailed below.
	Filters []GetRouteTableFilter `pulumi:"filters"`
	// ID of an Internet Gateway or Virtual Private Gateway which is connected to the Route Table (not exported if not passed as a parameter).
	GatewayId *string `pulumi:"gatewayId"`
	// ID of the specific Route Table to retrieve.
	RouteTableId *string `pulumi:"routeTableId"`
	// ID of a Subnet which is connected to the Route Table (not exported if not passed as a parameter).
	SubnetId *string `pulumi:"subnetId"`
	// Map of tags, each pair of which must exactly match a pair on the desired Route Table.
	Tags map[string]string `pulumi:"tags"`
	// ID of the VPC that the desired Route Table belongs to.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getRouteTable.

type LookupRouteTableResult

type LookupRouteTableResult struct {
	// ARN of the route table.
	Arn string `pulumi:"arn"`
	// List of associations with attributes detailed below.
	Associations []GetRouteTableAssociationType `pulumi:"associations"`
	Filters      []GetRouteTableFilter          `pulumi:"filters"`
	// Gateway ID. Only set when associated with an Internet Gateway or Virtual Private Gateway.
	GatewayId string `pulumi:"gatewayId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// ID of the AWS account that owns the route table.
	OwnerId string `pulumi:"ownerId"`
	// Route Table ID.
	RouteTableId string `pulumi:"routeTableId"`
	// List of routes with attributes detailed below.
	Routes []GetRouteTableRoute `pulumi:"routes"`
	// Subnet ID. Only set when associated with a subnet.
	SubnetId string            `pulumi:"subnetId"`
	Tags     map[string]string `pulumi:"tags"`
	VpcId    string            `pulumi:"vpcId"`
}

A collection of values returned by getRouteTable.

func LookupRouteTable

func LookupRouteTable(ctx *pulumi.Context, args *LookupRouteTableArgs, opts ...pulumi.InvokeOption) (*LookupRouteTableResult, error)

`ec2.RouteTable` provides details about a specific Route Table.

This resource can prove useful when a module accepts a Subnet ID as an input variable and needs to, for example, add a route in the Route Table.

## Example Usage

The following example shows how one might accept a Route Table ID as a variable and use this data source to obtain the data necessary to create a route.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		subnetId := cfg.RequireObject("subnetId")
		opt0 := subnetId
		selected, err := ec2.LookupRouteTable(ctx, &ec2.LookupRouteTableArgs{
			SubnetId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewRoute(ctx, "route", &ec2.RouteArgs{
			RouteTableId:           pulumi.String(selected.Id),
			DestinationCidrBlock:   pulumi.String("10.0.1.0/22"),
			VpcPeeringConnectionId: pulumi.String("pcx-45ff3dc1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSecurityGroupArgs

type LookupSecurityGroupArgs struct {
	// Custom filter block as described below.
	Filters []GetSecurityGroupFilter `pulumi:"filters"`
	// The id of the specific security group to retrieve.
	Id *string `pulumi:"id"`
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html).
	Name *string `pulumi:"name"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired security group.
	Tags map[string]string `pulumi:"tags"`
	// The id of the VPC that the desired security group belongs to.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getSecurityGroup.

type LookupSecurityGroupResult

type LookupSecurityGroupResult struct {
	// The computed ARN of the security group.
	Arn string `pulumi:"arn"`
	// The description of the security group.
	Description string                   `pulumi:"description"`
	Filters     []GetSecurityGroupFilter `pulumi:"filters"`
	Id          string                   `pulumi:"id"`
	Name        string                   `pulumi:"name"`
	Tags        map[string]string        `pulumi:"tags"`
	VpcId       string                   `pulumi:"vpcId"`
}

A collection of values returned by getSecurityGroup.

func LookupSecurityGroup

func LookupSecurityGroup(ctx *pulumi.Context, args *LookupSecurityGroupArgs, opts ...pulumi.InvokeOption) (*LookupSecurityGroupResult, error)

`ec2.SecurityGroup` provides details about a specific Security Group.

This resource can prove useful when a module accepts a Security Group id as an input variable and needs to, for example, determine the id of the VPC that the security group belongs to.

## Example Usage

The following example shows how one might accept a Security Group id as a variable and use this data source to obtain the data necessary to create a subnet.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		securityGroupId := cfg.RequireObject("securityGroupId")
		opt0 := securityGroupId
		selected, err := ec2.LookupSecurityGroup(ctx, &ec2.LookupSecurityGroupArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewSubnet(ctx, "subnet", &ec2.SubnetArgs{
			VpcId:     pulumi.String(selected.VpcId),
			CidrBlock: pulumi.String("10.0.1.0/24"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSubnetArgs

type LookupSubnetArgs struct {
	// Availability zone where the subnet must reside.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// ID of the Availability Zone for the subnet.
	AvailabilityZoneId *string `pulumi:"availabilityZoneId"`
	// CIDR block of the desired subnet.
	CidrBlock *string `pulumi:"cidrBlock"`
	// Whether the desired subnet must be the default subnet for its associated availability zone.
	DefaultForAz *bool `pulumi:"defaultForAz"`
	// Configuration block. Detailed below.
	Filters []GetSubnetFilter `pulumi:"filters"`
	// ID of the specific subnet to retrieve.
	Id *string `pulumi:"id"`
	// IPv6 CIDR block of the desired subnet.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// State that the desired subnet must have.
	State *string `pulumi:"state"`
	// Map of tags, each pair of which must exactly match a pair on the desired subnet.
	Tags map[string]string `pulumi:"tags"`
	// ID of the VPC that the desired subnet belongs to.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getSubnet.

type LookupSubnetResult

type LookupSubnetResult struct {
	// ARN of the subnet.
	Arn string `pulumi:"arn"`
	// Whether an IPv6 address is assigned on creation.
	AssignIpv6AddressOnCreation bool   `pulumi:"assignIpv6AddressOnCreation"`
	AvailabilityZone            string `pulumi:"availabilityZone"`
	AvailabilityZoneId          string `pulumi:"availabilityZoneId"`
	// Available IP addresses of the subnet.
	AvailableIpAddressCount int    `pulumi:"availableIpAddressCount"`
	CidrBlock               string `pulumi:"cidrBlock"`
	// Identifier of customer owned IPv4 address pool.
	CustomerOwnedIpv4Pool string            `pulumi:"customerOwnedIpv4Pool"`
	DefaultForAz          bool              `pulumi:"defaultForAz"`
	Filters               []GetSubnetFilter `pulumi:"filters"`
	Id                    string            `pulumi:"id"`
	Ipv6CidrBlock         string            `pulumi:"ipv6CidrBlock"`
	// Association ID of the IPv6 CIDR block.
	Ipv6CidrBlockAssociationId string `pulumi:"ipv6CidrBlockAssociationId"`
	// Whether customer owned IP addresses are assigned on network interface creation.
	MapCustomerOwnedIpOnLaunch bool `pulumi:"mapCustomerOwnedIpOnLaunch"`
	// Whether public IP addresses are assigned on instance launch.
	MapPublicIpOnLaunch bool `pulumi:"mapPublicIpOnLaunch"`
	// ARN of the Outpost.
	OutpostArn string `pulumi:"outpostArn"`
	// ID of the AWS account that owns the subnet.
	OwnerId string            `pulumi:"ownerId"`
	State   string            `pulumi:"state"`
	Tags    map[string]string `pulumi:"tags"`
	VpcId   string            `pulumi:"vpcId"`
}

A collection of values returned by getSubnet.

func LookupSubnet

func LookupSubnet(ctx *pulumi.Context, args *LookupSubnetArgs, opts ...pulumi.InvokeOption) (*LookupSubnetResult, error)

`ec2.Subnet` provides details about a specific VPC subnet.

This resource can prove useful when a module accepts a subnet ID as an input variable and needs to, for example, determine the ID of the VPC that the subnet belongs to.

## Example Usage

The following example shows how one might accept a subnet ID as a variable and use this data source to obtain the data necessary to create a security group that allows connections from hosts in that subnet.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		subnetId := cfg.RequireObject("subnetId")
		opt0 := subnetId
		selected, err := ec2.LookupSubnet(ctx, &ec2.LookupSubnetArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewSecurityGroup(ctx, "subnet", &ec2.SecurityGroupArgs{
			VpcId: pulumi.String(selected.VpcId),
			Ingress: ec2.SecurityGroupIngressArray{
				&ec2.SecurityGroupIngressArgs{
					CidrBlocks: pulumi.StringArray{
						pulumi.String(selected.CidrBlock),
					},
					FromPort: pulumi.Int(80),
					ToPort:   pulumi.Int(80),
					Protocol: pulumi.String("tcp"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Filter Example

If you want to match against tag `Name`, use:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupSubnet(ctx, &ec2.LookupSubnetArgs{
			Filters: []ec2.GetSubnetFilter{
				ec2.GetSubnetFilter{
					Name: "tag:Name",
					Values: []string{
						"yakdriver",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcArgs

type LookupVpcArgs struct {
	// The cidr block of the desired VPC.
	CidrBlock *string `pulumi:"cidrBlock"`
	// Boolean constraint on whether the desired VPC is
	// the default VPC for the region.
	Default *bool `pulumi:"default"`
	// The DHCP options id of the desired VPC.
	DhcpOptionsId *string `pulumi:"dhcpOptionsId"`
	// Custom filter block as described below.
	Filters []GetVpcFilter `pulumi:"filters"`
	// The id of the specific VPC to retrieve.
	Id *string `pulumi:"id"`
	// The current state of the desired VPC.
	// Can be either `"pending"` or `"available"`.
	State *string `pulumi:"state"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired VPC.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpc.

type LookupVpcDhcpOptionsArgs

type LookupVpcDhcpOptionsArgs struct {
	// The EC2 DHCP Options ID.
	DhcpOptionsId *string `pulumi:"dhcpOptionsId"`
	// List of custom filters as described below.
	Filters []GetVpcDhcpOptionsFilter `pulumi:"filters"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpcDhcpOptions.

type LookupVpcDhcpOptionsResult

type LookupVpcDhcpOptionsResult struct {
	// The ARN of the DHCP Options Set.
	Arn string `pulumi:"arn"`
	// EC2 DHCP Options ID
	DhcpOptionsId string `pulumi:"dhcpOptionsId"`
	// The suffix domain name to used when resolving non Fully Qualified Domain Names. e.g. the `search` value in the `/etc/resolv.conf` file.
	DomainName string `pulumi:"domainName"`
	// List of name servers.
	DomainNameServers []string                  `pulumi:"domainNameServers"`
	Filters           []GetVpcDhcpOptionsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of NETBIOS name servers.
	NetbiosNameServers []string `pulumi:"netbiosNameServers"`
	// The NetBIOS node type (1, 2, 4, or 8). For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType string `pulumi:"netbiosNodeType"`
	// List of NTP servers.
	NtpServers []string `pulumi:"ntpServers"`
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId string `pulumi:"ownerId"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getVpcDhcpOptions.

func LookupVpcDhcpOptions

func LookupVpcDhcpOptions(ctx *pulumi.Context, args *LookupVpcDhcpOptionsArgs, opts ...pulumi.InvokeOption) (*LookupVpcDhcpOptionsResult, error)

Retrieve information about an EC2 DHCP Options configuration.

## Example Usage ### Lookup by DHCP Options ID

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "dopts-12345678"
		_, err := ec2.LookupVpcDhcpOptions(ctx, &ec2.LookupVpcDhcpOptionsArgs{
			DhcpOptionsId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Lookup by Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupVpcDhcpOptions(ctx, &ec2.LookupVpcDhcpOptionsArgs{
			Filters: []ec2.GetVpcDhcpOptionsFilter{
				ec2.GetVpcDhcpOptionsFilter{
					Name: "key",
					Values: []string{
						"domain-name",
					},
				},
				ec2.GetVpcDhcpOptionsFilter{
					Name: "value",
					Values: []string{
						"example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcEndpointArgs

type LookupVpcEndpointArgs struct {
	// Custom filter block as described below.
	Filters []GetVpcEndpointFilter `pulumi:"filters"`
	// The ID of the specific VPC Endpoint to retrieve.
	Id *string `pulumi:"id"`
	// The service name of the specific VPC Endpoint to retrieve. For AWS services the service name is usually in the form `com.amazonaws.<region>.<service>` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.<region>.notebook`).
	ServiceName *string `pulumi:"serviceName"`
	// The state of the specific VPC Endpoint to retrieve.
	State *string `pulumi:"state"`
	// A map of tags, each pair of which must exactly match
	// a pair on the specific VPC Endpoint to retrieve.
	Tags map[string]string `pulumi:"tags"`
	// The ID of the VPC in which the specific VPC Endpoint is used.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getVpcEndpoint.

type LookupVpcEndpointResult

type LookupVpcEndpointResult struct {
	// The Amazon Resource Name (ARN) of the VPC endpoint.
	Arn string `pulumi:"arn"`
	// The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type `Gateway`.
	CidrBlocks []string `pulumi:"cidrBlocks"`
	// The DNS entries for the VPC Endpoint. Applicable for endpoints of type `Interface`. DNS blocks are documented below.
	DnsEntries []GetVpcEndpointDnsEntry `pulumi:"dnsEntries"`
	Filters    []GetVpcEndpointFilter   `pulumi:"filters"`
	Id         string                   `pulumi:"id"`
	// One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type `Interface`.
	NetworkInterfaceIds []string `pulumi:"networkInterfaceIds"`
	// The ID of the AWS account that owns the VPC endpoint.
	OwnerId string `pulumi:"ownerId"`
	// The policy document associated with the VPC Endpoint. Applicable for endpoints of type `Gateway`.
	Policy string `pulumi:"policy"`
	// The prefix list ID of the exposed AWS service. Applicable for endpoints of type `Gateway`.
	PrefixListId string `pulumi:"prefixListId"`
	// Whether or not the VPC is associated with a private hosted zone - `true` or `false`. Applicable for endpoints of type `Interface`.
	PrivateDnsEnabled bool `pulumi:"privateDnsEnabled"`
	// Whether or not the VPC Endpoint is being managed by its service - `true` or `false`.
	RequesterManaged bool `pulumi:"requesterManaged"`
	// One or more route tables associated with the VPC Endpoint. Applicable for endpoints of type `Gateway`.
	RouteTableIds []string `pulumi:"routeTableIds"`
	// One or more security groups associated with the network interfaces. Applicable for endpoints of type `Interface`.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	ServiceName      string   `pulumi:"serviceName"`
	State            string   `pulumi:"state"`
	// One or more subnets in which the VPC Endpoint is located. Applicable for endpoints of type `Interface`.
	SubnetIds []string          `pulumi:"subnetIds"`
	Tags      map[string]string `pulumi:"tags"`
	// The VPC Endpoint type, `Gateway` or `Interface`.
	VpcEndpointType string `pulumi:"vpcEndpointType"`
	VpcId           string `pulumi:"vpcId"`
}

A collection of values returned by getVpcEndpoint.

func LookupVpcEndpoint

func LookupVpcEndpoint(ctx *pulumi.Context, args *LookupVpcEndpointArgs, opts ...pulumi.InvokeOption) (*LookupVpcEndpointResult, error)

The VPC Endpoint data source provides details about a specific VPC endpoint.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_vpc.Foo.Id
		opt1 := "com.amazonaws.us-west-2.s3"
		s3, err := ec2.LookupVpcEndpoint(ctx, &ec2.LookupVpcEndpointArgs{
			VpcId:       &opt0,
			ServiceName: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcEndpointRouteTableAssociation(ctx, "privateS3", &ec2.VpcEndpointRouteTableAssociationArgs{
			VpcEndpointId: pulumi.String(s3.Id),
			RouteTableId:  pulumi.Any(aws_route_table.Private.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcEndpointServiceArgs

type LookupVpcEndpointServiceArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetVpcEndpointServiceFilter `pulumi:"filters"`
	// The common name of an AWS service (e.g. `s3`).
	Service *string `pulumi:"service"`
	// The service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws.<region>.<service>` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.<region>.notebook`).
	ServiceName *string `pulumi:"serviceName"`
	// The service type, `Gateway` or `Interface`.
	ServiceType *string `pulumi:"serviceType"`
	// A map of tags, each pair of which must exactly match a pair on the desired VPC Endpoint Service.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpcEndpointService.

type LookupVpcEndpointServiceResult

type LookupVpcEndpointServiceResult struct {
	// Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - `true` or `false`.
	AcceptanceRequired bool `pulumi:"acceptanceRequired"`
	// The Amazon Resource Name (ARN) of the VPC endpoint service.
	Arn string `pulumi:"arn"`
	// The Availability Zones in which the service is available.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	// The DNS names for the service.
	BaseEndpointDnsNames []string                      `pulumi:"baseEndpointDnsNames"`
	Filters              []GetVpcEndpointServiceFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Whether or not the service manages its VPC endpoints - `true` or `false`.
	ManagesVpcEndpoints bool `pulumi:"managesVpcEndpoints"`
	// The AWS account ID of the service owner or `amazon`.
	Owner string `pulumi:"owner"`
	// The private DNS name for the service.
	PrivateDnsName string  `pulumi:"privateDnsName"`
	Service        *string `pulumi:"service"`
	// The ID of the endpoint service.
	ServiceId   string `pulumi:"serviceId"`
	ServiceName string `pulumi:"serviceName"`
	ServiceType string `pulumi:"serviceType"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// Whether or not the service supports endpoint policies - `true` or `false`.
	VpcEndpointPolicySupported bool `pulumi:"vpcEndpointPolicySupported"`
}

A collection of values returned by getVpcEndpointService.

func LookupVpcEndpointService

func LookupVpcEndpointService(ctx *pulumi.Context, args *LookupVpcEndpointServiceArgs, opts ...pulumi.InvokeOption) (*LookupVpcEndpointServiceResult, error)

The VPC Endpoint Service data source details about a specific service that can be specified when creating a VPC endpoint within the region configured in the provider.

## Example Usage ### AWS Service

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "s3"
		opt1 := "Gateway"
		s3, err := ec2.LookupVpcEndpointService(ctx, &ec2.LookupVpcEndpointServiceArgs{
			Service:     &opt0,
			ServiceType: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		foo, err := ec2.NewVpc(ctx, "foo", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcEndpoint(ctx, "ep", &ec2.VpcEndpointArgs{
			VpcId:       foo.ID(),
			ServiceName: pulumi.String(s3.ServiceName),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Non-AWS Service

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "com.amazonaws.vpce.us-west-2.vpce-svc-0e87519c997c63cd8"
		_, err := ec2.LookupVpcEndpointService(ctx, &ec2.LookupVpcEndpointServiceArgs{
			ServiceName: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.LookupVpcEndpointService(ctx, &ec2.LookupVpcEndpointServiceArgs{
			Filters: []ec2.GetVpcEndpointServiceFilter{
				ec2.GetVpcEndpointServiceFilter{
					Name: "service-name",
					Values: []string{
						"some-service",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcPeeringConnectionArgs

type LookupVpcPeeringConnectionArgs struct {
	// The primary CIDR block of the requester VPC of the specific VPC Peering Connection to retrieve.
	CidrBlock *string `pulumi:"cidrBlock"`
	// Custom filter block as described below.
	Filters []GetVpcPeeringConnectionFilter `pulumi:"filters"`
	// The ID of the specific VPC Peering Connection to retrieve.
	Id *string `pulumi:"id"`
	// The AWS account ID of the owner of the requester VPC of the specific VPC Peering Connection to retrieve.
	OwnerId *string `pulumi:"ownerId"`
	// The primary CIDR block of the accepter VPC of the specific VPC Peering Connection to retrieve.
	PeerCidrBlock *string `pulumi:"peerCidrBlock"`
	// The AWS account ID of the owner of the accepter VPC of the specific VPC Peering Connection to retrieve.
	PeerOwnerId *string `pulumi:"peerOwnerId"`
	// The region of the accepter VPC of the specific VPC Peering Connection to retrieve.
	PeerRegion *string `pulumi:"peerRegion"`
	// The ID of the accepter VPC of the specific VPC Peering Connection to retrieve.
	PeerVpcId *string `pulumi:"peerVpcId"`
	// The region of the requester VPC of the specific VPC Peering Connection to retrieve.
	Region *string `pulumi:"region"`
	// The status of the specific VPC Peering Connection to retrieve.
	Status *string `pulumi:"status"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired VPC Peering Connection.
	Tags map[string]string `pulumi:"tags"`
	// The ID of the requester VPC of the specific VPC Peering Connection to retrieve.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getVpcPeeringConnection.

type LookupVpcPeeringConnectionResult

type LookupVpcPeeringConnectionResult struct {
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the accepter VPC.
	Accepter map[string]bool `pulumi:"accepter"`
	// A CIDR block associated to the VPC of the specific VPC Peering Connection.
	CidrBlock string `pulumi:"cidrBlock"`
	// List of objects with CIDR blocks of the requester VPC.
	CidrBlockSets []GetVpcPeeringConnectionCidrBlockSet `pulumi:"cidrBlockSets"`
	Filters       []GetVpcPeeringConnectionFilter       `pulumi:"filters"`
	Id            string                                `pulumi:"id"`
	OwnerId       string                                `pulumi:"ownerId"`
	PeerCidrBlock string                                `pulumi:"peerCidrBlock"`
	// List of objects with CIDR blocks of the accepter VPC.
	PeerCidrBlockSets []GetVpcPeeringConnectionPeerCidrBlockSet `pulumi:"peerCidrBlockSets"`
	PeerOwnerId       string                                    `pulumi:"peerOwnerId"`
	PeerRegion        string                                    `pulumi:"peerRegion"`
	PeerVpcId         string                                    `pulumi:"peerVpcId"`
	Region            string                                    `pulumi:"region"`
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the requester VPC.
	Requester map[string]bool   `pulumi:"requester"`
	Status    string            `pulumi:"status"`
	Tags      map[string]string `pulumi:"tags"`
	VpcId     string            `pulumi:"vpcId"`
}

A collection of values returned by getVpcPeeringConnection.

func LookupVpcPeeringConnection

func LookupVpcPeeringConnection(ctx *pulumi.Context, args *LookupVpcPeeringConnectionArgs, opts ...pulumi.InvokeOption) (*LookupVpcPeeringConnectionResult, error)

The VPC Peering Connection data source provides details about a specific VPC peering connection.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_vpc.Foo.Id
		opt1 := "10.0.1.0/22"
		pc, err := ec2.LookupVpcPeeringConnection(ctx, &ec2.LookupVpcPeeringConnectionArgs{
			VpcId:         &opt0,
			PeerCidrBlock: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		rt, err := ec2.NewRouteTable(ctx, "rt", &ec2.RouteTableArgs{
			VpcId: pulumi.Any(aws_vpc.Foo.Id),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewRoute(ctx, "route", &ec2.RouteArgs{
			RouteTableId:           rt.ID(),
			DestinationCidrBlock:   pulumi.String(pc.PeerCidrBlock),
			VpcPeeringConnectionId: pulumi.String(pc.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcResult

type LookupVpcResult struct {
	// Amazon Resource Name (ARN) of VPC
	Arn string `pulumi:"arn"`
	// The CIDR block for the association.
	CidrBlock             string                       `pulumi:"cidrBlock"`
	CidrBlockAssociations []GetVpcCidrBlockAssociation `pulumi:"cidrBlockAssociations"`
	Default               bool                         `pulumi:"default"`
	DhcpOptionsId         string                       `pulumi:"dhcpOptionsId"`
	// Whether or not the VPC has DNS hostname support
	EnableDnsHostnames bool `pulumi:"enableDnsHostnames"`
	// Whether or not the VPC has DNS support
	EnableDnsSupport bool           `pulumi:"enableDnsSupport"`
	Filters          []GetVpcFilter `pulumi:"filters"`
	Id               string         `pulumi:"id"`
	// The allowed tenancy of instances launched into the
	// selected VPC. May be any of `"default"`, `"dedicated"`, or `"host"`.
	InstanceTenancy string `pulumi:"instanceTenancy"`
	// The association ID for the IPv6 CIDR block.
	Ipv6AssociationId string `pulumi:"ipv6AssociationId"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock string `pulumi:"ipv6CidrBlock"`
	// The ID of the main route table associated with this VPC.
	MainRouteTableId string `pulumi:"mainRouteTableId"`
	// The ID of the AWS account that owns the VPC.
	OwnerId string `pulumi:"ownerId"`
	// The State of the association.
	State string            `pulumi:"state"`
	Tags  map[string]string `pulumi:"tags"`
}

A collection of values returned by getVpc.

func LookupVpc

func LookupVpc(ctx *pulumi.Context, args *LookupVpcArgs, opts ...pulumi.InvokeOption) (*LookupVpcResult, error)

`ec2.Vpc` provides details about a specific VPC.

This resource can prove useful when a module accepts a vpc id as an input variable and needs to, for example, determine the CIDR block of that VPC.

type LookupVpnGatewayArgs

type LookupVpnGatewayArgs struct {
	// The Autonomous System Number (ASN) for the Amazon side of the specific VPN Gateway to retrieve.
	AmazonSideAsn *string `pulumi:"amazonSideAsn"`
	// The ID of a VPC attached to the specific VPN Gateway to retrieve.
	AttachedVpcId *string `pulumi:"attachedVpcId"`
	// The Availability Zone of the specific VPN Gateway to retrieve.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Custom filter block as described below.
	Filters []GetVpnGatewayFilter `pulumi:"filters"`
	// The ID of the specific VPN Gateway to retrieve.
	Id *string `pulumi:"id"`
	// The state of the specific VPN Gateway to retrieve.
	State *string `pulumi:"state"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired VPN Gateway.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpnGateway.

type LookupVpnGatewayResult

type LookupVpnGatewayResult struct {
	AmazonSideAsn    string                `pulumi:"amazonSideAsn"`
	Arn              string                `pulumi:"arn"`
	AttachedVpcId    string                `pulumi:"attachedVpcId"`
	AvailabilityZone string                `pulumi:"availabilityZone"`
	Filters          []GetVpnGatewayFilter `pulumi:"filters"`
	Id               string                `pulumi:"id"`
	State            string                `pulumi:"state"`
	Tags             map[string]string     `pulumi:"tags"`
}

A collection of values returned by getVpnGateway.

func LookupVpnGateway

func LookupVpnGateway(ctx *pulumi.Context, args *LookupVpnGatewayArgs, opts ...pulumi.InvokeOption) (*LookupVpnGatewayResult, error)

The VPN Gateway data source provides details about a specific VPN gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		selected, err := ec2.LookupVpnGateway(ctx, &ec2.LookupVpnGatewayArgs{
			Filters: []ec2.GetVpnGatewayFilter{
				ec2.GetVpnGatewayFilter{
					Name: "tag:Name",
					Values: []string{
						"vpn-gw",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("vpnGatewayId", selected.Id)
		return nil
	})
}

```

type MainRouteTableAssociation

type MainRouteTableAssociation struct {
	pulumi.CustomResourceState

	// Used internally, see __Notes__ below
	OriginalRouteTableId pulumi.StringOutput `pulumi:"originalRouteTableId"`
	// The ID of the Route Table to set as the new
	// main route table for the target VPC
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The ID of the VPC whose main route table should be set
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

func GetMainRouteTableAssociation

func GetMainRouteTableAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MainRouteTableAssociationState, opts ...pulumi.ResourceOption) (*MainRouteTableAssociation, error)

GetMainRouteTableAssociation gets an existing MainRouteTableAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewMainRouteTableAssociation

func NewMainRouteTableAssociation(ctx *pulumi.Context,
	name string, args *MainRouteTableAssociationArgs, opts ...pulumi.ResourceOption) (*MainRouteTableAssociation, error)

NewMainRouteTableAssociation registers a new resource with the given unique name, arguments, and options.

func (*MainRouteTableAssociation) ElementType

func (*MainRouteTableAssociation) ElementType() reflect.Type

func (*MainRouteTableAssociation) ToMainRouteTableAssociationOutput

func (i *MainRouteTableAssociation) ToMainRouteTableAssociationOutput() MainRouteTableAssociationOutput

func (*MainRouteTableAssociation) ToMainRouteTableAssociationOutputWithContext

func (i *MainRouteTableAssociation) ToMainRouteTableAssociationOutputWithContext(ctx context.Context) MainRouteTableAssociationOutput

func (*MainRouteTableAssociation) ToMainRouteTableAssociationPtrOutput

func (i *MainRouteTableAssociation) ToMainRouteTableAssociationPtrOutput() MainRouteTableAssociationPtrOutput

func (*MainRouteTableAssociation) ToMainRouteTableAssociationPtrOutputWithContext

func (i *MainRouteTableAssociation) ToMainRouteTableAssociationPtrOutputWithContext(ctx context.Context) MainRouteTableAssociationPtrOutput

type MainRouteTableAssociationArgs

type MainRouteTableAssociationArgs struct {
	// The ID of the Route Table to set as the new
	// main route table for the target VPC
	RouteTableId pulumi.StringInput
	// The ID of the VPC whose main route table should be set
	VpcId pulumi.StringInput
}

The set of arguments for constructing a MainRouteTableAssociation resource.

func (MainRouteTableAssociationArgs) ElementType

type MainRouteTableAssociationArray

type MainRouteTableAssociationArray []MainRouteTableAssociationInput

func (MainRouteTableAssociationArray) ElementType

func (MainRouteTableAssociationArray) ToMainRouteTableAssociationArrayOutput

func (i MainRouteTableAssociationArray) ToMainRouteTableAssociationArrayOutput() MainRouteTableAssociationArrayOutput

func (MainRouteTableAssociationArray) ToMainRouteTableAssociationArrayOutputWithContext

func (i MainRouteTableAssociationArray) ToMainRouteTableAssociationArrayOutputWithContext(ctx context.Context) MainRouteTableAssociationArrayOutput

type MainRouteTableAssociationArrayInput

type MainRouteTableAssociationArrayInput interface {
	pulumi.Input

	ToMainRouteTableAssociationArrayOutput() MainRouteTableAssociationArrayOutput
	ToMainRouteTableAssociationArrayOutputWithContext(context.Context) MainRouteTableAssociationArrayOutput
}

MainRouteTableAssociationArrayInput is an input type that accepts MainRouteTableAssociationArray and MainRouteTableAssociationArrayOutput values. You can construct a concrete instance of `MainRouteTableAssociationArrayInput` via:

MainRouteTableAssociationArray{ MainRouteTableAssociationArgs{...} }

type MainRouteTableAssociationArrayOutput

type MainRouteTableAssociationArrayOutput struct{ *pulumi.OutputState }

func (MainRouteTableAssociationArrayOutput) ElementType

func (MainRouteTableAssociationArrayOutput) Index

func (MainRouteTableAssociationArrayOutput) ToMainRouteTableAssociationArrayOutput

func (o MainRouteTableAssociationArrayOutput) ToMainRouteTableAssociationArrayOutput() MainRouteTableAssociationArrayOutput

func (MainRouteTableAssociationArrayOutput) ToMainRouteTableAssociationArrayOutputWithContext

func (o MainRouteTableAssociationArrayOutput) ToMainRouteTableAssociationArrayOutputWithContext(ctx context.Context) MainRouteTableAssociationArrayOutput

type MainRouteTableAssociationInput

type MainRouteTableAssociationInput interface {
	pulumi.Input

	ToMainRouteTableAssociationOutput() MainRouteTableAssociationOutput
	ToMainRouteTableAssociationOutputWithContext(ctx context.Context) MainRouteTableAssociationOutput
}

type MainRouteTableAssociationMap

type MainRouteTableAssociationMap map[string]MainRouteTableAssociationInput

func (MainRouteTableAssociationMap) ElementType

func (MainRouteTableAssociationMap) ToMainRouteTableAssociationMapOutput

func (i MainRouteTableAssociationMap) ToMainRouteTableAssociationMapOutput() MainRouteTableAssociationMapOutput

func (MainRouteTableAssociationMap) ToMainRouteTableAssociationMapOutputWithContext

func (i MainRouteTableAssociationMap) ToMainRouteTableAssociationMapOutputWithContext(ctx context.Context) MainRouteTableAssociationMapOutput

type MainRouteTableAssociationMapInput

type MainRouteTableAssociationMapInput interface {
	pulumi.Input

	ToMainRouteTableAssociationMapOutput() MainRouteTableAssociationMapOutput
	ToMainRouteTableAssociationMapOutputWithContext(context.Context) MainRouteTableAssociationMapOutput
}

MainRouteTableAssociationMapInput is an input type that accepts MainRouteTableAssociationMap and MainRouteTableAssociationMapOutput values. You can construct a concrete instance of `MainRouteTableAssociationMapInput` via:

MainRouteTableAssociationMap{ "key": MainRouteTableAssociationArgs{...} }

type MainRouteTableAssociationMapOutput

type MainRouteTableAssociationMapOutput struct{ *pulumi.OutputState }

func (MainRouteTableAssociationMapOutput) ElementType

func (MainRouteTableAssociationMapOutput) MapIndex

func (MainRouteTableAssociationMapOutput) ToMainRouteTableAssociationMapOutput

func (o MainRouteTableAssociationMapOutput) ToMainRouteTableAssociationMapOutput() MainRouteTableAssociationMapOutput

func (MainRouteTableAssociationMapOutput) ToMainRouteTableAssociationMapOutputWithContext

func (o MainRouteTableAssociationMapOutput) ToMainRouteTableAssociationMapOutputWithContext(ctx context.Context) MainRouteTableAssociationMapOutput

type MainRouteTableAssociationOutput

type MainRouteTableAssociationOutput struct{ *pulumi.OutputState }

func (MainRouteTableAssociationOutput) ElementType

func (MainRouteTableAssociationOutput) ToMainRouteTableAssociationOutput

func (o MainRouteTableAssociationOutput) ToMainRouteTableAssociationOutput() MainRouteTableAssociationOutput

func (MainRouteTableAssociationOutput) ToMainRouteTableAssociationOutputWithContext

func (o MainRouteTableAssociationOutput) ToMainRouteTableAssociationOutputWithContext(ctx context.Context) MainRouteTableAssociationOutput

func (MainRouteTableAssociationOutput) ToMainRouteTableAssociationPtrOutput

func (o MainRouteTableAssociationOutput) ToMainRouteTableAssociationPtrOutput() MainRouteTableAssociationPtrOutput

func (MainRouteTableAssociationOutput) ToMainRouteTableAssociationPtrOutputWithContext

func (o MainRouteTableAssociationOutput) ToMainRouteTableAssociationPtrOutputWithContext(ctx context.Context) MainRouteTableAssociationPtrOutput

type MainRouteTableAssociationPtrInput

type MainRouteTableAssociationPtrInput interface {
	pulumi.Input

	ToMainRouteTableAssociationPtrOutput() MainRouteTableAssociationPtrOutput
	ToMainRouteTableAssociationPtrOutputWithContext(ctx context.Context) MainRouteTableAssociationPtrOutput
}

type MainRouteTableAssociationPtrOutput

type MainRouteTableAssociationPtrOutput struct{ *pulumi.OutputState }

func (MainRouteTableAssociationPtrOutput) Elem added in v4.15.0

func (MainRouteTableAssociationPtrOutput) ElementType

func (MainRouteTableAssociationPtrOutput) ToMainRouteTableAssociationPtrOutput

func (o MainRouteTableAssociationPtrOutput) ToMainRouteTableAssociationPtrOutput() MainRouteTableAssociationPtrOutput

func (MainRouteTableAssociationPtrOutput) ToMainRouteTableAssociationPtrOutputWithContext

func (o MainRouteTableAssociationPtrOutput) ToMainRouteTableAssociationPtrOutputWithContext(ctx context.Context) MainRouteTableAssociationPtrOutput

type MainRouteTableAssociationState

type MainRouteTableAssociationState struct {
	// Used internally, see __Notes__ below
	OriginalRouteTableId pulumi.StringPtrInput
	// The ID of the Route Table to set as the new
	// main route table for the target VPC
	RouteTableId pulumi.StringPtrInput
	// The ID of the VPC whose main route table should be set
	VpcId pulumi.StringPtrInput
}

func (MainRouteTableAssociationState) ElementType

type ManagedPrefixList

type ManagedPrefixList struct {
	pulumi.CustomResourceState

	// Address family (`IPv4` or `IPv6`) of this prefix list.
	AddressFamily pulumi.StringOutput `pulumi:"addressFamily"`
	// ARN of the prefix list.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Configuration block for prefix list entry. Detailed below. Different entries may have overlapping CIDR blocks, but a particular CIDR should not be duplicated.
	Entries ManagedPrefixListEntryArrayOutput `pulumi:"entries"`
	// Maximum number of entries that this prefix list can contain.
	MaxEntries pulumi.IntOutput `pulumi:"maxEntries"`
	// Name of this resource. The name must not start with `com.amazonaws`.
	Name pulumi.StringOutput `pulumi:"name"`
	// ID of the AWS account that owns this prefix list.
	OwnerId pulumi.StringOutput    `pulumi:"ownerId"`
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Latest version of this prefix list.
	Version pulumi.IntOutput `pulumi:"version"`
}

Provides a managed prefix list resource.

> **NOTE on `maxEntries`:** When you reference a Prefix List in a resource, the maximum number of entries for the prefix lists counts as the same number of rules or entries for the resource. For example, if you create a prefix list with a maximum of 20 entries and you reference that prefix list in a security group rule, this counts as 20 rules for the security group.

## Example Usage

Basic usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewManagedPrefixList(ctx, "example", &ec2.ManagedPrefixListArgs{
			AddressFamily: pulumi.String("IPv4"),
			MaxEntries:    pulumi.Int(5),
			Entries: ec2.ManagedPrefixListEntryArray{
				&ec2.ManagedPrefixListEntryArgs{
					Cidr:        pulumi.Any(aws_vpc.Example.Cidr_block),
					Description: pulumi.String("Primary"),
				},
				&ec2.ManagedPrefixListEntryArgs{
					Cidr:        pulumi.Any(aws_vpc_ipv4_cidr_block_association.Example.Cidr_block),
					Description: pulumi.String("Secondary"),
				},
			},
			Tags: pulumi.StringMap{
				"Env": pulumi.String("live"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Prefix Lists can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/managedPrefixList:ManagedPrefixList default pl-0570a1d2d725c16be

```

func GetManagedPrefixList

func GetManagedPrefixList(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ManagedPrefixListState, opts ...pulumi.ResourceOption) (*ManagedPrefixList, error)

GetManagedPrefixList gets an existing ManagedPrefixList resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewManagedPrefixList

func NewManagedPrefixList(ctx *pulumi.Context,
	name string, args *ManagedPrefixListArgs, opts ...pulumi.ResourceOption) (*ManagedPrefixList, error)

NewManagedPrefixList registers a new resource with the given unique name, arguments, and options.

func (*ManagedPrefixList) ElementType

func (*ManagedPrefixList) ElementType() reflect.Type

func (*ManagedPrefixList) ToManagedPrefixListOutput

func (i *ManagedPrefixList) ToManagedPrefixListOutput() ManagedPrefixListOutput

func (*ManagedPrefixList) ToManagedPrefixListOutputWithContext

func (i *ManagedPrefixList) ToManagedPrefixListOutputWithContext(ctx context.Context) ManagedPrefixListOutput

func (*ManagedPrefixList) ToManagedPrefixListPtrOutput

func (i *ManagedPrefixList) ToManagedPrefixListPtrOutput() ManagedPrefixListPtrOutput

func (*ManagedPrefixList) ToManagedPrefixListPtrOutputWithContext

func (i *ManagedPrefixList) ToManagedPrefixListPtrOutputWithContext(ctx context.Context) ManagedPrefixListPtrOutput

type ManagedPrefixListArgs

type ManagedPrefixListArgs struct {
	// Address family (`IPv4` or `IPv6`) of this prefix list.
	AddressFamily pulumi.StringInput
	// Configuration block for prefix list entry. Detailed below. Different entries may have overlapping CIDR blocks, but a particular CIDR should not be duplicated.
	Entries ManagedPrefixListEntryArrayInput
	// Maximum number of entries that this prefix list can contain.
	MaxEntries pulumi.IntInput
	// Name of this resource. The name must not start with `com.amazonaws`.
	Name    pulumi.StringPtrInput
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a ManagedPrefixList resource.

func (ManagedPrefixListArgs) ElementType

func (ManagedPrefixListArgs) ElementType() reflect.Type

type ManagedPrefixListArray

type ManagedPrefixListArray []ManagedPrefixListInput

func (ManagedPrefixListArray) ElementType

func (ManagedPrefixListArray) ElementType() reflect.Type

func (ManagedPrefixListArray) ToManagedPrefixListArrayOutput

func (i ManagedPrefixListArray) ToManagedPrefixListArrayOutput() ManagedPrefixListArrayOutput

func (ManagedPrefixListArray) ToManagedPrefixListArrayOutputWithContext

func (i ManagedPrefixListArray) ToManagedPrefixListArrayOutputWithContext(ctx context.Context) ManagedPrefixListArrayOutput

type ManagedPrefixListArrayInput

type ManagedPrefixListArrayInput interface {
	pulumi.Input

	ToManagedPrefixListArrayOutput() ManagedPrefixListArrayOutput
	ToManagedPrefixListArrayOutputWithContext(context.Context) ManagedPrefixListArrayOutput
}

ManagedPrefixListArrayInput is an input type that accepts ManagedPrefixListArray and ManagedPrefixListArrayOutput values. You can construct a concrete instance of `ManagedPrefixListArrayInput` via:

ManagedPrefixListArray{ ManagedPrefixListArgs{...} }

type ManagedPrefixListArrayOutput

type ManagedPrefixListArrayOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListArrayOutput) ElementType

func (ManagedPrefixListArrayOutput) Index

func (ManagedPrefixListArrayOutput) ToManagedPrefixListArrayOutput

func (o ManagedPrefixListArrayOutput) ToManagedPrefixListArrayOutput() ManagedPrefixListArrayOutput

func (ManagedPrefixListArrayOutput) ToManagedPrefixListArrayOutputWithContext

func (o ManagedPrefixListArrayOutput) ToManagedPrefixListArrayOutputWithContext(ctx context.Context) ManagedPrefixListArrayOutput

type ManagedPrefixListEntry

type ManagedPrefixListEntry struct {
	// CIDR block of this entry.
	Cidr string `pulumi:"cidr"`
	// Description of this entry. Due to API limitations, updating only the description of an existing entry requires temporarily removing and re-adding the entry.
	Description *string `pulumi:"description"`
}

type ManagedPrefixListEntryArgs

type ManagedPrefixListEntryArgs struct {
	// CIDR block of this entry.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Description of this entry. Due to API limitations, updating only the description of an existing entry requires temporarily removing and re-adding the entry.
	Description pulumi.StringPtrInput `pulumi:"description"`
}

func (ManagedPrefixListEntryArgs) ElementType

func (ManagedPrefixListEntryArgs) ElementType() reflect.Type

func (ManagedPrefixListEntryArgs) ToManagedPrefixListEntryOutput

func (i ManagedPrefixListEntryArgs) ToManagedPrefixListEntryOutput() ManagedPrefixListEntryOutput

func (ManagedPrefixListEntryArgs) ToManagedPrefixListEntryOutputWithContext

func (i ManagedPrefixListEntryArgs) ToManagedPrefixListEntryOutputWithContext(ctx context.Context) ManagedPrefixListEntryOutput

type ManagedPrefixListEntryArray

type ManagedPrefixListEntryArray []ManagedPrefixListEntryInput

func (ManagedPrefixListEntryArray) ElementType

func (ManagedPrefixListEntryArray) ToManagedPrefixListEntryArrayOutput

func (i ManagedPrefixListEntryArray) ToManagedPrefixListEntryArrayOutput() ManagedPrefixListEntryArrayOutput

func (ManagedPrefixListEntryArray) ToManagedPrefixListEntryArrayOutputWithContext

func (i ManagedPrefixListEntryArray) ToManagedPrefixListEntryArrayOutputWithContext(ctx context.Context) ManagedPrefixListEntryArrayOutput

type ManagedPrefixListEntryArrayInput

type ManagedPrefixListEntryArrayInput interface {
	pulumi.Input

	ToManagedPrefixListEntryArrayOutput() ManagedPrefixListEntryArrayOutput
	ToManagedPrefixListEntryArrayOutputWithContext(context.Context) ManagedPrefixListEntryArrayOutput
}

ManagedPrefixListEntryArrayInput is an input type that accepts ManagedPrefixListEntryArray and ManagedPrefixListEntryArrayOutput values. You can construct a concrete instance of `ManagedPrefixListEntryArrayInput` via:

ManagedPrefixListEntryArray{ ManagedPrefixListEntryArgs{...} }

type ManagedPrefixListEntryArrayOutput

type ManagedPrefixListEntryArrayOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListEntryArrayOutput) ElementType

func (ManagedPrefixListEntryArrayOutput) Index

func (ManagedPrefixListEntryArrayOutput) ToManagedPrefixListEntryArrayOutput

func (o ManagedPrefixListEntryArrayOutput) ToManagedPrefixListEntryArrayOutput() ManagedPrefixListEntryArrayOutput

func (ManagedPrefixListEntryArrayOutput) ToManagedPrefixListEntryArrayOutputWithContext

func (o ManagedPrefixListEntryArrayOutput) ToManagedPrefixListEntryArrayOutputWithContext(ctx context.Context) ManagedPrefixListEntryArrayOutput

type ManagedPrefixListEntryInput

type ManagedPrefixListEntryInput interface {
	pulumi.Input

	ToManagedPrefixListEntryOutput() ManagedPrefixListEntryOutput
	ToManagedPrefixListEntryOutputWithContext(context.Context) ManagedPrefixListEntryOutput
}

ManagedPrefixListEntryInput is an input type that accepts ManagedPrefixListEntryArgs and ManagedPrefixListEntryOutput values. You can construct a concrete instance of `ManagedPrefixListEntryInput` via:

ManagedPrefixListEntryArgs{...}

type ManagedPrefixListEntryOutput

type ManagedPrefixListEntryOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListEntryOutput) Cidr

CIDR block of this entry.

func (ManagedPrefixListEntryOutput) Description

Description of this entry. Due to API limitations, updating only the description of an existing entry requires temporarily removing and re-adding the entry.

func (ManagedPrefixListEntryOutput) ElementType

func (ManagedPrefixListEntryOutput) ToManagedPrefixListEntryOutput

func (o ManagedPrefixListEntryOutput) ToManagedPrefixListEntryOutput() ManagedPrefixListEntryOutput

func (ManagedPrefixListEntryOutput) ToManagedPrefixListEntryOutputWithContext

func (o ManagedPrefixListEntryOutput) ToManagedPrefixListEntryOutputWithContext(ctx context.Context) ManagedPrefixListEntryOutput

type ManagedPrefixListInput

type ManagedPrefixListInput interface {
	pulumi.Input

	ToManagedPrefixListOutput() ManagedPrefixListOutput
	ToManagedPrefixListOutputWithContext(ctx context.Context) ManagedPrefixListOutput
}

type ManagedPrefixListMap

type ManagedPrefixListMap map[string]ManagedPrefixListInput

func (ManagedPrefixListMap) ElementType

func (ManagedPrefixListMap) ElementType() reflect.Type

func (ManagedPrefixListMap) ToManagedPrefixListMapOutput

func (i ManagedPrefixListMap) ToManagedPrefixListMapOutput() ManagedPrefixListMapOutput

func (ManagedPrefixListMap) ToManagedPrefixListMapOutputWithContext

func (i ManagedPrefixListMap) ToManagedPrefixListMapOutputWithContext(ctx context.Context) ManagedPrefixListMapOutput

type ManagedPrefixListMapInput

type ManagedPrefixListMapInput interface {
	pulumi.Input

	ToManagedPrefixListMapOutput() ManagedPrefixListMapOutput
	ToManagedPrefixListMapOutputWithContext(context.Context) ManagedPrefixListMapOutput
}

ManagedPrefixListMapInput is an input type that accepts ManagedPrefixListMap and ManagedPrefixListMapOutput values. You can construct a concrete instance of `ManagedPrefixListMapInput` via:

ManagedPrefixListMap{ "key": ManagedPrefixListArgs{...} }

type ManagedPrefixListMapOutput

type ManagedPrefixListMapOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListMapOutput) ElementType

func (ManagedPrefixListMapOutput) ElementType() reflect.Type

func (ManagedPrefixListMapOutput) MapIndex

func (ManagedPrefixListMapOutput) ToManagedPrefixListMapOutput

func (o ManagedPrefixListMapOutput) ToManagedPrefixListMapOutput() ManagedPrefixListMapOutput

func (ManagedPrefixListMapOutput) ToManagedPrefixListMapOutputWithContext

func (o ManagedPrefixListMapOutput) ToManagedPrefixListMapOutputWithContext(ctx context.Context) ManagedPrefixListMapOutput

type ManagedPrefixListOutput

type ManagedPrefixListOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListOutput) ElementType

func (ManagedPrefixListOutput) ElementType() reflect.Type

func (ManagedPrefixListOutput) ToManagedPrefixListOutput

func (o ManagedPrefixListOutput) ToManagedPrefixListOutput() ManagedPrefixListOutput

func (ManagedPrefixListOutput) ToManagedPrefixListOutputWithContext

func (o ManagedPrefixListOutput) ToManagedPrefixListOutputWithContext(ctx context.Context) ManagedPrefixListOutput

func (ManagedPrefixListOutput) ToManagedPrefixListPtrOutput

func (o ManagedPrefixListOutput) ToManagedPrefixListPtrOutput() ManagedPrefixListPtrOutput

func (ManagedPrefixListOutput) ToManagedPrefixListPtrOutputWithContext

func (o ManagedPrefixListOutput) ToManagedPrefixListPtrOutputWithContext(ctx context.Context) ManagedPrefixListPtrOutput

type ManagedPrefixListPtrInput

type ManagedPrefixListPtrInput interface {
	pulumi.Input

	ToManagedPrefixListPtrOutput() ManagedPrefixListPtrOutput
	ToManagedPrefixListPtrOutputWithContext(ctx context.Context) ManagedPrefixListPtrOutput
}

type ManagedPrefixListPtrOutput

type ManagedPrefixListPtrOutput struct{ *pulumi.OutputState }

func (ManagedPrefixListPtrOutput) Elem added in v4.15.0

func (ManagedPrefixListPtrOutput) ElementType

func (ManagedPrefixListPtrOutput) ElementType() reflect.Type

func (ManagedPrefixListPtrOutput) ToManagedPrefixListPtrOutput

func (o ManagedPrefixListPtrOutput) ToManagedPrefixListPtrOutput() ManagedPrefixListPtrOutput

func (ManagedPrefixListPtrOutput) ToManagedPrefixListPtrOutputWithContext

func (o ManagedPrefixListPtrOutput) ToManagedPrefixListPtrOutputWithContext(ctx context.Context) ManagedPrefixListPtrOutput

type ManagedPrefixListState

type ManagedPrefixListState struct {
	// Address family (`IPv4` or `IPv6`) of this prefix list.
	AddressFamily pulumi.StringPtrInput
	// ARN of the prefix list.
	Arn pulumi.StringPtrInput
	// Configuration block for prefix list entry. Detailed below. Different entries may have overlapping CIDR blocks, but a particular CIDR should not be duplicated.
	Entries ManagedPrefixListEntryArrayInput
	// Maximum number of entries that this prefix list can contain.
	MaxEntries pulumi.IntPtrInput
	// Name of this resource. The name must not start with `com.amazonaws`.
	Name pulumi.StringPtrInput
	// ID of the AWS account that owns this prefix list.
	OwnerId pulumi.StringPtrInput
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// Latest version of this prefix list.
	Version pulumi.IntPtrInput
}

func (ManagedPrefixListState) ElementType

func (ManagedPrefixListState) ElementType() reflect.Type

type NatGateway

type NatGateway struct {
	pulumi.CustomResourceState

	// The Allocation ID of the Elastic IP address for the gateway. Required for `connectivityType` of `public`.
	AllocationId pulumi.StringPtrOutput `pulumi:"allocationId"`
	// Connectivity type for the gateway. Valid values are `private` and `public`. Defaults to `public`.
	ConnectivityType pulumi.StringPtrOutput `pulumi:"connectivityType"`
	// The ENI ID of the network interface created by the NAT gateway.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The private IP address of the NAT Gateway.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The public IP address of the NAT Gateway.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// The Subnet ID of the subnet in which to place the gateway.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a resource to create a VPC NAT Gateway.

## Example Usage ### Public NAT

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNatGateway(ctx, "example", &ec2.NatGatewayArgs{
			AllocationId: pulumi.Any(aws_eip.Example.Id),
			SubnetId:     pulumi.Any(aws_subnet.Example.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("gw NAT"),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			aws_internet_gateway.Example,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Private NAT

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNatGateway(ctx, "example", &ec2.NatGatewayArgs{
			ConnectivityType: pulumi.String("private"),
			SubnetId:         pulumi.Any(aws_subnet.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

NAT Gateways can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/natGateway:NatGateway private_gw nat-05dba92075d71c408

```

func GetNatGateway

func GetNatGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatGatewayState, opts ...pulumi.ResourceOption) (*NatGateway, error)

GetNatGateway gets an existing NatGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNatGateway

func NewNatGateway(ctx *pulumi.Context,
	name string, args *NatGatewayArgs, opts ...pulumi.ResourceOption) (*NatGateway, error)

NewNatGateway registers a new resource with the given unique name, arguments, and options.

func (*NatGateway) ElementType

func (*NatGateway) ElementType() reflect.Type

func (*NatGateway) ToNatGatewayOutput

func (i *NatGateway) ToNatGatewayOutput() NatGatewayOutput

func (*NatGateway) ToNatGatewayOutputWithContext

func (i *NatGateway) ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput

func (*NatGateway) ToNatGatewayPtrOutput

func (i *NatGateway) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (*NatGateway) ToNatGatewayPtrOutputWithContext

func (i *NatGateway) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayArgs

type NatGatewayArgs struct {
	// The Allocation ID of the Elastic IP address for the gateway. Required for `connectivityType` of `public`.
	AllocationId pulumi.StringPtrInput
	// Connectivity type for the gateway. Valid values are `private` and `public`. Defaults to `public`.
	ConnectivityType pulumi.StringPtrInput
	// The Subnet ID of the subnet in which to place the gateway.
	SubnetId pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a NatGateway resource.

func (NatGatewayArgs) ElementType

func (NatGatewayArgs) ElementType() reflect.Type

type NatGatewayArray

type NatGatewayArray []NatGatewayInput

func (NatGatewayArray) ElementType

func (NatGatewayArray) ElementType() reflect.Type

func (NatGatewayArray) ToNatGatewayArrayOutput

func (i NatGatewayArray) ToNatGatewayArrayOutput() NatGatewayArrayOutput

func (NatGatewayArray) ToNatGatewayArrayOutputWithContext

func (i NatGatewayArray) ToNatGatewayArrayOutputWithContext(ctx context.Context) NatGatewayArrayOutput

type NatGatewayArrayInput

type NatGatewayArrayInput interface {
	pulumi.Input

	ToNatGatewayArrayOutput() NatGatewayArrayOutput
	ToNatGatewayArrayOutputWithContext(context.Context) NatGatewayArrayOutput
}

NatGatewayArrayInput is an input type that accepts NatGatewayArray and NatGatewayArrayOutput values. You can construct a concrete instance of `NatGatewayArrayInput` via:

NatGatewayArray{ NatGatewayArgs{...} }

type NatGatewayArrayOutput

type NatGatewayArrayOutput struct{ *pulumi.OutputState }

func (NatGatewayArrayOutput) ElementType

func (NatGatewayArrayOutput) ElementType() reflect.Type

func (NatGatewayArrayOutput) Index

func (NatGatewayArrayOutput) ToNatGatewayArrayOutput

func (o NatGatewayArrayOutput) ToNatGatewayArrayOutput() NatGatewayArrayOutput

func (NatGatewayArrayOutput) ToNatGatewayArrayOutputWithContext

func (o NatGatewayArrayOutput) ToNatGatewayArrayOutputWithContext(ctx context.Context) NatGatewayArrayOutput

type NatGatewayInput

type NatGatewayInput interface {
	pulumi.Input

	ToNatGatewayOutput() NatGatewayOutput
	ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput
}

type NatGatewayMap

type NatGatewayMap map[string]NatGatewayInput

func (NatGatewayMap) ElementType

func (NatGatewayMap) ElementType() reflect.Type

func (NatGatewayMap) ToNatGatewayMapOutput

func (i NatGatewayMap) ToNatGatewayMapOutput() NatGatewayMapOutput

func (NatGatewayMap) ToNatGatewayMapOutputWithContext

func (i NatGatewayMap) ToNatGatewayMapOutputWithContext(ctx context.Context) NatGatewayMapOutput

type NatGatewayMapInput

type NatGatewayMapInput interface {
	pulumi.Input

	ToNatGatewayMapOutput() NatGatewayMapOutput
	ToNatGatewayMapOutputWithContext(context.Context) NatGatewayMapOutput
}

NatGatewayMapInput is an input type that accepts NatGatewayMap and NatGatewayMapOutput values. You can construct a concrete instance of `NatGatewayMapInput` via:

NatGatewayMap{ "key": NatGatewayArgs{...} }

type NatGatewayMapOutput

type NatGatewayMapOutput struct{ *pulumi.OutputState }

func (NatGatewayMapOutput) ElementType

func (NatGatewayMapOutput) ElementType() reflect.Type

func (NatGatewayMapOutput) MapIndex

func (NatGatewayMapOutput) ToNatGatewayMapOutput

func (o NatGatewayMapOutput) ToNatGatewayMapOutput() NatGatewayMapOutput

func (NatGatewayMapOutput) ToNatGatewayMapOutputWithContext

func (o NatGatewayMapOutput) ToNatGatewayMapOutputWithContext(ctx context.Context) NatGatewayMapOutput

type NatGatewayOutput

type NatGatewayOutput struct{ *pulumi.OutputState }

func (NatGatewayOutput) ElementType

func (NatGatewayOutput) ElementType() reflect.Type

func (NatGatewayOutput) ToNatGatewayOutput

func (o NatGatewayOutput) ToNatGatewayOutput() NatGatewayOutput

func (NatGatewayOutput) ToNatGatewayOutputWithContext

func (o NatGatewayOutput) ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput

func (NatGatewayOutput) ToNatGatewayPtrOutput

func (o NatGatewayOutput) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (NatGatewayOutput) ToNatGatewayPtrOutputWithContext

func (o NatGatewayOutput) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayPtrInput

type NatGatewayPtrInput interface {
	pulumi.Input

	ToNatGatewayPtrOutput() NatGatewayPtrOutput
	ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput
}

type NatGatewayPtrOutput

type NatGatewayPtrOutput struct{ *pulumi.OutputState }

func (NatGatewayPtrOutput) Elem added in v4.15.0

func (NatGatewayPtrOutput) ElementType

func (NatGatewayPtrOutput) ElementType() reflect.Type

func (NatGatewayPtrOutput) ToNatGatewayPtrOutput

func (o NatGatewayPtrOutput) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (NatGatewayPtrOutput) ToNatGatewayPtrOutputWithContext

func (o NatGatewayPtrOutput) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayState

type NatGatewayState struct {
	// The Allocation ID of the Elastic IP address for the gateway. Required for `connectivityType` of `public`.
	AllocationId pulumi.StringPtrInput
	// Connectivity type for the gateway. Valid values are `private` and `public`. Defaults to `public`.
	ConnectivityType pulumi.StringPtrInput
	// The ENI ID of the network interface created by the NAT gateway.
	NetworkInterfaceId pulumi.StringPtrInput
	// The private IP address of the NAT Gateway.
	PrivateIp pulumi.StringPtrInput
	// The public IP address of the NAT Gateway.
	PublicIp pulumi.StringPtrInput
	// The Subnet ID of the subnet in which to place the gateway.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (NatGatewayState) ElementType

func (NatGatewayState) ElementType() reflect.Type

type NetworkAcl

type NetworkAcl struct {
	pulumi.CustomResourceState

	// The ARN of the network ACL
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specifies an egress rule. Parameters defined below.
	Egress NetworkAclEgressArrayOutput `pulumi:"egress"`
	// Specifies an ingress rule. Parameters defined below.
	Ingress NetworkAclIngressArrayOutput `pulumi:"ingress"`
	// The ID of the AWS account that owns the network ACL.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A list of Subnet IDs to apply the ACL to
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The ID of the associated VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides an network ACL resource. You might set up network ACLs with rules similar to your security groups in order to add an additional layer of security to your VPC.

> **NOTE on Network ACLs and Network ACL Rules:** This provider currently provides both a standalone Network ACL Rule resource and a Network ACL resource with rules defined in-line. At this time you cannot use a Network ACL with in-line rules in conjunction with any Network ACL Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNetworkAcl(ctx, "main", &ec2.NetworkAclArgs{
			VpcId: pulumi.Any(aws_vpc.Main.Id),
			Egress: ec2.NetworkAclEgressArray{
				&ec2.NetworkAclEgressArgs{
					Protocol:  pulumi.String("tcp"),
					RuleNo:    pulumi.Int(200),
					Action:    pulumi.String("allow"),
					CidrBlock: pulumi.String("10.3.0.0/18"),
					FromPort:  pulumi.Int(443),
					ToPort:    pulumi.Int(443),
				},
			},
			Ingress: ec2.NetworkAclIngressArray{
				&ec2.NetworkAclIngressArgs{
					Protocol:  pulumi.String("tcp"),
					RuleNo:    pulumi.Int(100),
					Action:    pulumi.String("allow"),
					CidrBlock: pulumi.String("10.3.0.0/18"),
					FromPort:  pulumi.Int(80),
					ToPort:    pulumi.Int(80),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Network ACLs can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/networkAcl:NetworkAcl main acl-7aaabd18

```

func GetNetworkAcl

func GetNetworkAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclState, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

GetNetworkAcl gets an existing NetworkAcl resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkAcl

func NewNetworkAcl(ctx *pulumi.Context,
	name string, args *NetworkAclArgs, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

NewNetworkAcl registers a new resource with the given unique name, arguments, and options.

func (*NetworkAcl) ElementType

func (*NetworkAcl) ElementType() reflect.Type

func (*NetworkAcl) ToNetworkAclOutput

func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput

func (*NetworkAcl) ToNetworkAclOutputWithContext

func (i *NetworkAcl) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

func (*NetworkAcl) ToNetworkAclPtrOutput

func (i *NetworkAcl) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (*NetworkAcl) ToNetworkAclPtrOutputWithContext

func (i *NetworkAcl) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclArgs

type NetworkAclArgs struct {
	// Specifies an egress rule. Parameters defined below.
	Egress NetworkAclEgressArrayInput
	// Specifies an ingress rule. Parameters defined below.
	Ingress NetworkAclIngressArrayInput
	// A list of Subnet IDs to apply the ACL to
	SubnetIds pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// The ID of the associated VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a NetworkAcl resource.

func (NetworkAclArgs) ElementType

func (NetworkAclArgs) ElementType() reflect.Type

type NetworkAclArray

type NetworkAclArray []NetworkAclInput

func (NetworkAclArray) ElementType

func (NetworkAclArray) ElementType() reflect.Type

func (NetworkAclArray) ToNetworkAclArrayOutput

func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArray) ToNetworkAclArrayOutputWithContext

func (i NetworkAclArray) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclArrayInput

type NetworkAclArrayInput interface {
	pulumi.Input

	ToNetworkAclArrayOutput() NetworkAclArrayOutput
	ToNetworkAclArrayOutputWithContext(context.Context) NetworkAclArrayOutput
}

NetworkAclArrayInput is an input type that accepts NetworkAclArray and NetworkAclArrayOutput values. You can construct a concrete instance of `NetworkAclArrayInput` via:

NetworkAclArray{ NetworkAclArgs{...} }

type NetworkAclArrayOutput

type NetworkAclArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclArrayOutput) ElementType

func (NetworkAclArrayOutput) ElementType() reflect.Type

func (NetworkAclArrayOutput) Index

func (NetworkAclArrayOutput) ToNetworkAclArrayOutput

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclEgress

type NetworkAclEgress struct {
	// The action to take.
	Action string `pulumi:"action"`
	// The CIDR block to match. This must be a
	// valid network mask.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort int `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode *int `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType *int `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all'
	// protocol, you must specify a from and to port of 0.
	Protocol string `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo int `pulumi:"ruleNo"`
	// The to port to match.
	ToPort int `pulumi:"toPort"`
}

type NetworkAclEgressArgs

type NetworkAclEgressArgs struct {
	// The action to take.
	Action pulumi.StringInput `pulumi:"action"`
	// The CIDR block to match. This must be a
	// valid network mask.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode pulumi.IntPtrInput `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType pulumi.IntPtrInput `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all'
	// protocol, you must specify a from and to port of 0.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo pulumi.IntInput `pulumi:"ruleNo"`
	// The to port to match.
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (NetworkAclEgressArgs) ElementType

func (NetworkAclEgressArgs) ElementType() reflect.Type

func (NetworkAclEgressArgs) ToNetworkAclEgressOutput

func (i NetworkAclEgressArgs) ToNetworkAclEgressOutput() NetworkAclEgressOutput

func (NetworkAclEgressArgs) ToNetworkAclEgressOutputWithContext

func (i NetworkAclEgressArgs) ToNetworkAclEgressOutputWithContext(ctx context.Context) NetworkAclEgressOutput

type NetworkAclEgressArray

type NetworkAclEgressArray []NetworkAclEgressInput

func (NetworkAclEgressArray) ElementType

func (NetworkAclEgressArray) ElementType() reflect.Type

func (NetworkAclEgressArray) ToNetworkAclEgressArrayOutput

func (i NetworkAclEgressArray) ToNetworkAclEgressArrayOutput() NetworkAclEgressArrayOutput

func (NetworkAclEgressArray) ToNetworkAclEgressArrayOutputWithContext

func (i NetworkAclEgressArray) ToNetworkAclEgressArrayOutputWithContext(ctx context.Context) NetworkAclEgressArrayOutput

type NetworkAclEgressArrayInput

type NetworkAclEgressArrayInput interface {
	pulumi.Input

	ToNetworkAclEgressArrayOutput() NetworkAclEgressArrayOutput
	ToNetworkAclEgressArrayOutputWithContext(context.Context) NetworkAclEgressArrayOutput
}

NetworkAclEgressArrayInput is an input type that accepts NetworkAclEgressArray and NetworkAclEgressArrayOutput values. You can construct a concrete instance of `NetworkAclEgressArrayInput` via:

NetworkAclEgressArray{ NetworkAclEgressArgs{...} }

type NetworkAclEgressArrayOutput

type NetworkAclEgressArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclEgressArrayOutput) ElementType

func (NetworkAclEgressArrayOutput) Index

func (NetworkAclEgressArrayOutput) ToNetworkAclEgressArrayOutput

func (o NetworkAclEgressArrayOutput) ToNetworkAclEgressArrayOutput() NetworkAclEgressArrayOutput

func (NetworkAclEgressArrayOutput) ToNetworkAclEgressArrayOutputWithContext

func (o NetworkAclEgressArrayOutput) ToNetworkAclEgressArrayOutputWithContext(ctx context.Context) NetworkAclEgressArrayOutput

type NetworkAclEgressInput

type NetworkAclEgressInput interface {
	pulumi.Input

	ToNetworkAclEgressOutput() NetworkAclEgressOutput
	ToNetworkAclEgressOutputWithContext(context.Context) NetworkAclEgressOutput
}

NetworkAclEgressInput is an input type that accepts NetworkAclEgressArgs and NetworkAclEgressOutput values. You can construct a concrete instance of `NetworkAclEgressInput` via:

NetworkAclEgressArgs{...}

type NetworkAclEgressOutput

type NetworkAclEgressOutput struct{ *pulumi.OutputState }

func (NetworkAclEgressOutput) Action

The action to take.

func (NetworkAclEgressOutput) CidrBlock

The CIDR block to match. This must be a valid network mask.

func (NetworkAclEgressOutput) ElementType

func (NetworkAclEgressOutput) ElementType() reflect.Type

func (NetworkAclEgressOutput) FromPort

The from port to match.

func (NetworkAclEgressOutput) IcmpCode

The ICMP type code to be used. Default 0.

func (NetworkAclEgressOutput) IcmpType

The ICMP type to be used. Default 0.

func (NetworkAclEgressOutput) Ipv6CidrBlock

func (o NetworkAclEgressOutput) Ipv6CidrBlock() pulumi.StringPtrOutput

The IPv6 CIDR block.

func (NetworkAclEgressOutput) Protocol

The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.

func (NetworkAclEgressOutput) RuleNo

The rule number. Used for ordering.

func (NetworkAclEgressOutput) ToNetworkAclEgressOutput

func (o NetworkAclEgressOutput) ToNetworkAclEgressOutput() NetworkAclEgressOutput

func (NetworkAclEgressOutput) ToNetworkAclEgressOutputWithContext

func (o NetworkAclEgressOutput) ToNetworkAclEgressOutputWithContext(ctx context.Context) NetworkAclEgressOutput

func (NetworkAclEgressOutput) ToPort

The to port to match.

type NetworkAclIngress

type NetworkAclIngress struct {
	// The action to take.
	Action string `pulumi:"action"`
	// The CIDR block to match. This must be a
	// valid network mask.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort int `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode *int `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType *int `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all'
	// protocol, you must specify a from and to port of 0.
	Protocol string `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo int `pulumi:"ruleNo"`
	// The to port to match.
	ToPort int `pulumi:"toPort"`
}

type NetworkAclIngressArgs

type NetworkAclIngressArgs struct {
	// The action to take.
	Action pulumi.StringInput `pulumi:"action"`
	// The CIDR block to match. This must be a
	// valid network mask.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The from port to match.
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// The ICMP type code to be used. Default 0.
	IcmpCode pulumi.IntPtrInput `pulumi:"icmpCode"`
	// The ICMP type to be used. Default 0.
	IcmpType pulumi.IntPtrInput `pulumi:"icmpType"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// The protocol to match. If using the -1 'all'
	// protocol, you must specify a from and to port of 0.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The rule number. Used for ordering.
	RuleNo pulumi.IntInput `pulumi:"ruleNo"`
	// The to port to match.
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (NetworkAclIngressArgs) ElementType

func (NetworkAclIngressArgs) ElementType() reflect.Type

func (NetworkAclIngressArgs) ToNetworkAclIngressOutput

func (i NetworkAclIngressArgs) ToNetworkAclIngressOutput() NetworkAclIngressOutput

func (NetworkAclIngressArgs) ToNetworkAclIngressOutputWithContext

func (i NetworkAclIngressArgs) ToNetworkAclIngressOutputWithContext(ctx context.Context) NetworkAclIngressOutput

type NetworkAclIngressArray

type NetworkAclIngressArray []NetworkAclIngressInput

func (NetworkAclIngressArray) ElementType

func (NetworkAclIngressArray) ElementType() reflect.Type

func (NetworkAclIngressArray) ToNetworkAclIngressArrayOutput

func (i NetworkAclIngressArray) ToNetworkAclIngressArrayOutput() NetworkAclIngressArrayOutput

func (NetworkAclIngressArray) ToNetworkAclIngressArrayOutputWithContext

func (i NetworkAclIngressArray) ToNetworkAclIngressArrayOutputWithContext(ctx context.Context) NetworkAclIngressArrayOutput

type NetworkAclIngressArrayInput

type NetworkAclIngressArrayInput interface {
	pulumi.Input

	ToNetworkAclIngressArrayOutput() NetworkAclIngressArrayOutput
	ToNetworkAclIngressArrayOutputWithContext(context.Context) NetworkAclIngressArrayOutput
}

NetworkAclIngressArrayInput is an input type that accepts NetworkAclIngressArray and NetworkAclIngressArrayOutput values. You can construct a concrete instance of `NetworkAclIngressArrayInput` via:

NetworkAclIngressArray{ NetworkAclIngressArgs{...} }

type NetworkAclIngressArrayOutput

type NetworkAclIngressArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclIngressArrayOutput) ElementType

func (NetworkAclIngressArrayOutput) Index

func (NetworkAclIngressArrayOutput) ToNetworkAclIngressArrayOutput

func (o NetworkAclIngressArrayOutput) ToNetworkAclIngressArrayOutput() NetworkAclIngressArrayOutput

func (NetworkAclIngressArrayOutput) ToNetworkAclIngressArrayOutputWithContext

func (o NetworkAclIngressArrayOutput) ToNetworkAclIngressArrayOutputWithContext(ctx context.Context) NetworkAclIngressArrayOutput

type NetworkAclIngressInput

type NetworkAclIngressInput interface {
	pulumi.Input

	ToNetworkAclIngressOutput() NetworkAclIngressOutput
	ToNetworkAclIngressOutputWithContext(context.Context) NetworkAclIngressOutput
}

NetworkAclIngressInput is an input type that accepts NetworkAclIngressArgs and NetworkAclIngressOutput values. You can construct a concrete instance of `NetworkAclIngressInput` via:

NetworkAclIngressArgs{...}

type NetworkAclIngressOutput

type NetworkAclIngressOutput struct{ *pulumi.OutputState }

func (NetworkAclIngressOutput) Action

The action to take.

func (NetworkAclIngressOutput) CidrBlock

The CIDR block to match. This must be a valid network mask.

func (NetworkAclIngressOutput) ElementType

func (NetworkAclIngressOutput) ElementType() reflect.Type

func (NetworkAclIngressOutput) FromPort

The from port to match.

func (NetworkAclIngressOutput) IcmpCode

The ICMP type code to be used. Default 0.

func (NetworkAclIngressOutput) IcmpType

The ICMP type to be used. Default 0.

func (NetworkAclIngressOutput) Ipv6CidrBlock

The IPv6 CIDR block.

func (NetworkAclIngressOutput) Protocol

The protocol to match. If using the -1 'all' protocol, you must specify a from and to port of 0.

func (NetworkAclIngressOutput) RuleNo

The rule number. Used for ordering.

func (NetworkAclIngressOutput) ToNetworkAclIngressOutput

func (o NetworkAclIngressOutput) ToNetworkAclIngressOutput() NetworkAclIngressOutput

func (NetworkAclIngressOutput) ToNetworkAclIngressOutputWithContext

func (o NetworkAclIngressOutput) ToNetworkAclIngressOutputWithContext(ctx context.Context) NetworkAclIngressOutput

func (NetworkAclIngressOutput) ToPort

The to port to match.

type NetworkAclInput

type NetworkAclInput interface {
	pulumi.Input

	ToNetworkAclOutput() NetworkAclOutput
	ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput
}

type NetworkAclMap

type NetworkAclMap map[string]NetworkAclInput

func (NetworkAclMap) ElementType

func (NetworkAclMap) ElementType() reflect.Type

func (NetworkAclMap) ToNetworkAclMapOutput

func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMap) ToNetworkAclMapOutputWithContext

func (i NetworkAclMap) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclMapInput

type NetworkAclMapInput interface {
	pulumi.Input

	ToNetworkAclMapOutput() NetworkAclMapOutput
	ToNetworkAclMapOutputWithContext(context.Context) NetworkAclMapOutput
}

NetworkAclMapInput is an input type that accepts NetworkAclMap and NetworkAclMapOutput values. You can construct a concrete instance of `NetworkAclMapInput` via:

NetworkAclMap{ "key": NetworkAclArgs{...} }

type NetworkAclMapOutput

type NetworkAclMapOutput struct{ *pulumi.OutputState }

func (NetworkAclMapOutput) ElementType

func (NetworkAclMapOutput) ElementType() reflect.Type

func (NetworkAclMapOutput) MapIndex

func (NetworkAclMapOutput) ToNetworkAclMapOutput

func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMapOutput) ToNetworkAclMapOutputWithContext

func (o NetworkAclMapOutput) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclOutput

type NetworkAclOutput struct{ *pulumi.OutputState }

func (NetworkAclOutput) ElementType

func (NetworkAclOutput) ElementType() reflect.Type

func (NetworkAclOutput) ToNetworkAclOutput

func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclOutputWithContext

func (o NetworkAclOutput) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclPtrOutput

func (o NetworkAclOutput) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (NetworkAclOutput) ToNetworkAclPtrOutputWithContext

func (o NetworkAclOutput) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclPtrInput

type NetworkAclPtrInput interface {
	pulumi.Input

	ToNetworkAclPtrOutput() NetworkAclPtrOutput
	ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput
}

type NetworkAclPtrOutput

type NetworkAclPtrOutput struct{ *pulumi.OutputState }

func (NetworkAclPtrOutput) Elem added in v4.15.0

func (NetworkAclPtrOutput) ElementType

func (NetworkAclPtrOutput) ElementType() reflect.Type

func (NetworkAclPtrOutput) ToNetworkAclPtrOutput

func (o NetworkAclPtrOutput) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (NetworkAclPtrOutput) ToNetworkAclPtrOutputWithContext

func (o NetworkAclPtrOutput) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclRule

type NetworkAclRule struct {
	pulumi.CustomResourceState

	// The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ).
	CidrBlock pulumi.StringPtrOutput `pulumi:"cidrBlock"`
	// Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default `false`.
	Egress pulumi.BoolPtrOutput `pulumi:"egress"`
	// The from port to match.
	FromPort pulumi.IntPtrOutput `pulumi:"fromPort"`
	// ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1
	IcmpCode pulumi.StringPtrOutput `pulumi:"icmpCode"`
	// ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1
	IcmpType pulumi.StringPtrOutput `pulumi:"icmpType"`
	// The IPv6 CIDR block to allow or deny.
	Ipv6CidrBlock pulumi.StringPtrOutput `pulumi:"ipv6CidrBlock"`
	// The ID of the network ACL.
	NetworkAclId pulumi.StringOutput `pulumi:"networkAclId"`
	// The protocol. A value of -1 means all protocols.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// Indicates whether to allow or deny the traffic that matches the rule. Accepted values: `allow` | `deny`
	RuleAction pulumi.StringOutput `pulumi:"ruleAction"`
	// The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.
	RuleNumber pulumi.IntOutput `pulumi:"ruleNumber"`
	// The to port to match.
	ToPort pulumi.IntPtrOutput `pulumi:"toPort"`
}

Creates an entry (a rule) in a network ACL with the specified rule number.

> **NOTE on Network ACLs and Network ACL Rules:** This provider currently provides both a standalone Network ACL Rule resource and a Network ACL resource with rules defined in-line. At this time you cannot use a Network ACL with in-line rules in conjunction with any Network ACL Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		barNetworkAcl, err := ec2.NewNetworkAcl(ctx, "barNetworkAcl", &ec2.NetworkAclArgs{
			VpcId: pulumi.Any(aws_vpc.Foo.Id),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewNetworkAclRule(ctx, "barNetworkAclRule", &ec2.NetworkAclRuleArgs{
			NetworkAclId: barNetworkAcl.ID(),
			RuleNumber:   pulumi.Int(200),
			Egress:       pulumi.Bool(false),
			Protocol:     pulumi.String("tcp"),
			RuleAction:   pulumi.String("allow"),
			CidrBlock:    pulumi.Any(aws_vpc.Foo.Cidr_block),
			FromPort:     pulumi.Int(22),
			ToPort:       pulumi.Int(22),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **Note:** One of either `cidrBlock` or `ipv6CidrBlock` is required.

## Import

Individual rules can be imported using `NETWORK_ACL_ID:RULE_NUMBER:PROTOCOL:EGRESS`, where `PROTOCOL` can be a decimal (e.g. 6) or string (e.g. tcp) value. If importing a rule previously provisioned by the provider, the `PROTOCOL` must be the input value used at creation time. For more information on protocol numbers and keywords, see herehttps://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml For example, import a network ACL Rule with an argument like thisconsole

```sh

$ pulumi import aws:ec2/networkAclRule:NetworkAclRule my_rule acl-7aaabd18:100:tcp:false

```

Or by the procotol's decimal valueconsole

```sh

$ pulumi import aws:ec2/networkAclRule:NetworkAclRule my_rule acl-7aaabd18:100:6:false

```

func GetNetworkAclRule

func GetNetworkAclRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclRuleState, opts ...pulumi.ResourceOption) (*NetworkAclRule, error)

GetNetworkAclRule gets an existing NetworkAclRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkAclRule

func NewNetworkAclRule(ctx *pulumi.Context,
	name string, args *NetworkAclRuleArgs, opts ...pulumi.ResourceOption) (*NetworkAclRule, error)

NewNetworkAclRule registers a new resource with the given unique name, arguments, and options.

func (*NetworkAclRule) ElementType

func (*NetworkAclRule) ElementType() reflect.Type

func (*NetworkAclRule) ToNetworkAclRuleOutput

func (i *NetworkAclRule) ToNetworkAclRuleOutput() NetworkAclRuleOutput

func (*NetworkAclRule) ToNetworkAclRuleOutputWithContext

func (i *NetworkAclRule) ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput

func (*NetworkAclRule) ToNetworkAclRulePtrOutput

func (i *NetworkAclRule) ToNetworkAclRulePtrOutput() NetworkAclRulePtrOutput

func (*NetworkAclRule) ToNetworkAclRulePtrOutputWithContext

func (i *NetworkAclRule) ToNetworkAclRulePtrOutputWithContext(ctx context.Context) NetworkAclRulePtrOutput

type NetworkAclRuleArgs

type NetworkAclRuleArgs struct {
	// The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ).
	CidrBlock pulumi.StringPtrInput
	// Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default `false`.
	Egress pulumi.BoolPtrInput
	// The from port to match.
	FromPort pulumi.IntPtrInput
	// ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1
	IcmpCode pulumi.StringPtrInput
	// ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1
	IcmpType pulumi.StringPtrInput
	// The IPv6 CIDR block to allow or deny.
	Ipv6CidrBlock pulumi.StringPtrInput
	// The ID of the network ACL.
	NetworkAclId pulumi.StringInput
	// The protocol. A value of -1 means all protocols.
	Protocol pulumi.StringInput
	// Indicates whether to allow or deny the traffic that matches the rule. Accepted values: `allow` | `deny`
	RuleAction pulumi.StringInput
	// The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.
	RuleNumber pulumi.IntInput
	// The to port to match.
	ToPort pulumi.IntPtrInput
}

The set of arguments for constructing a NetworkAclRule resource.

func (NetworkAclRuleArgs) ElementType

func (NetworkAclRuleArgs) ElementType() reflect.Type

type NetworkAclRuleArray

type NetworkAclRuleArray []NetworkAclRuleInput

func (NetworkAclRuleArray) ElementType

func (NetworkAclRuleArray) ElementType() reflect.Type

func (NetworkAclRuleArray) ToNetworkAclRuleArrayOutput

func (i NetworkAclRuleArray) ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput

func (NetworkAclRuleArray) ToNetworkAclRuleArrayOutputWithContext

func (i NetworkAclRuleArray) ToNetworkAclRuleArrayOutputWithContext(ctx context.Context) NetworkAclRuleArrayOutput

type NetworkAclRuleArrayInput

type NetworkAclRuleArrayInput interface {
	pulumi.Input

	ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput
	ToNetworkAclRuleArrayOutputWithContext(context.Context) NetworkAclRuleArrayOutput
}

NetworkAclRuleArrayInput is an input type that accepts NetworkAclRuleArray and NetworkAclRuleArrayOutput values. You can construct a concrete instance of `NetworkAclRuleArrayInput` via:

NetworkAclRuleArray{ NetworkAclRuleArgs{...} }

type NetworkAclRuleArrayOutput

type NetworkAclRuleArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleArrayOutput) ElementType

func (NetworkAclRuleArrayOutput) ElementType() reflect.Type

func (NetworkAclRuleArrayOutput) Index

func (NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutput

func (o NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput

func (NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutputWithContext

func (o NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutputWithContext(ctx context.Context) NetworkAclRuleArrayOutput

type NetworkAclRuleInput

type NetworkAclRuleInput interface {
	pulumi.Input

	ToNetworkAclRuleOutput() NetworkAclRuleOutput
	ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput
}

type NetworkAclRuleMap

type NetworkAclRuleMap map[string]NetworkAclRuleInput

func (NetworkAclRuleMap) ElementType

func (NetworkAclRuleMap) ElementType() reflect.Type

func (NetworkAclRuleMap) ToNetworkAclRuleMapOutput

func (i NetworkAclRuleMap) ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput

func (NetworkAclRuleMap) ToNetworkAclRuleMapOutputWithContext

func (i NetworkAclRuleMap) ToNetworkAclRuleMapOutputWithContext(ctx context.Context) NetworkAclRuleMapOutput

type NetworkAclRuleMapInput

type NetworkAclRuleMapInput interface {
	pulumi.Input

	ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput
	ToNetworkAclRuleMapOutputWithContext(context.Context) NetworkAclRuleMapOutput
}

NetworkAclRuleMapInput is an input type that accepts NetworkAclRuleMap and NetworkAclRuleMapOutput values. You can construct a concrete instance of `NetworkAclRuleMapInput` via:

NetworkAclRuleMap{ "key": NetworkAclRuleArgs{...} }

type NetworkAclRuleMapOutput

type NetworkAclRuleMapOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleMapOutput) ElementType

func (NetworkAclRuleMapOutput) ElementType() reflect.Type

func (NetworkAclRuleMapOutput) MapIndex

func (NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutput

func (o NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput

func (NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutputWithContext

func (o NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutputWithContext(ctx context.Context) NetworkAclRuleMapOutput

type NetworkAclRuleOutput

type NetworkAclRuleOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleOutput) ElementType

func (NetworkAclRuleOutput) ElementType() reflect.Type

func (NetworkAclRuleOutput) ToNetworkAclRuleOutput

func (o NetworkAclRuleOutput) ToNetworkAclRuleOutput() NetworkAclRuleOutput

func (NetworkAclRuleOutput) ToNetworkAclRuleOutputWithContext

func (o NetworkAclRuleOutput) ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput

func (NetworkAclRuleOutput) ToNetworkAclRulePtrOutput

func (o NetworkAclRuleOutput) ToNetworkAclRulePtrOutput() NetworkAclRulePtrOutput

func (NetworkAclRuleOutput) ToNetworkAclRulePtrOutputWithContext

func (o NetworkAclRuleOutput) ToNetworkAclRulePtrOutputWithContext(ctx context.Context) NetworkAclRulePtrOutput

type NetworkAclRulePtrInput

type NetworkAclRulePtrInput interface {
	pulumi.Input

	ToNetworkAclRulePtrOutput() NetworkAclRulePtrOutput
	ToNetworkAclRulePtrOutputWithContext(ctx context.Context) NetworkAclRulePtrOutput
}

type NetworkAclRulePtrOutput

type NetworkAclRulePtrOutput struct{ *pulumi.OutputState }

func (NetworkAclRulePtrOutput) Elem added in v4.15.0

func (NetworkAclRulePtrOutput) ElementType

func (NetworkAclRulePtrOutput) ElementType() reflect.Type

func (NetworkAclRulePtrOutput) ToNetworkAclRulePtrOutput

func (o NetworkAclRulePtrOutput) ToNetworkAclRulePtrOutput() NetworkAclRulePtrOutput

func (NetworkAclRulePtrOutput) ToNetworkAclRulePtrOutputWithContext

func (o NetworkAclRulePtrOutput) ToNetworkAclRulePtrOutputWithContext(ctx context.Context) NetworkAclRulePtrOutput

type NetworkAclRuleState

type NetworkAclRuleState struct {
	// The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ).
	CidrBlock pulumi.StringPtrInput
	// Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default `false`.
	Egress pulumi.BoolPtrInput
	// The from port to match.
	FromPort pulumi.IntPtrInput
	// ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1
	IcmpCode pulumi.StringPtrInput
	// ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1
	IcmpType pulumi.StringPtrInput
	// The IPv6 CIDR block to allow or deny.
	Ipv6CidrBlock pulumi.StringPtrInput
	// The ID of the network ACL.
	NetworkAclId pulumi.StringPtrInput
	// The protocol. A value of -1 means all protocols.
	Protocol pulumi.StringPtrInput
	// Indicates whether to allow or deny the traffic that matches the rule. Accepted values: `allow` | `deny`
	RuleAction pulumi.StringPtrInput
	// The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.
	RuleNumber pulumi.IntPtrInput
	// The to port to match.
	ToPort pulumi.IntPtrInput
}

func (NetworkAclRuleState) ElementType

func (NetworkAclRuleState) ElementType() reflect.Type

type NetworkAclState

type NetworkAclState struct {
	// The ARN of the network ACL
	Arn pulumi.StringPtrInput
	// Specifies an egress rule. Parameters defined below.
	Egress NetworkAclEgressArrayInput
	// Specifies an ingress rule. Parameters defined below.
	Ingress NetworkAclIngressArrayInput
	// The ID of the AWS account that owns the network ACL.
	OwnerId pulumi.StringPtrInput
	// A list of Subnet IDs to apply the ACL to
	SubnetIds pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// The ID of the associated VPC.
	VpcId pulumi.StringPtrInput
}

func (NetworkAclState) ElementType

func (NetworkAclState) ElementType() reflect.Type

type NetworkInterface

type NetworkInterface struct {
	pulumi.CustomResourceState

	// Block to define the attachment of the ENI. Documented below.
	Attachments NetworkInterfaceAttachmentTypeArrayOutput `pulumi:"attachments"`
	// A description for the network interface.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Type of network interface to create. Set to `efa` for Elastic Fabric Adapter.
	InterfaceType pulumi.StringOutput `pulumi:"interfaceType"`
	// The number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific `ipv6Addresses`. If your subnet has the AssignIpv6AddressOnCreation attribute set to `true`, you can specify `0` to override this setting.
	Ipv6AddressCount pulumi.IntOutput `pulumi:"ipv6AddressCount"`
	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying `ipv6AddressCount`.
	Ipv6Addresses pulumi.StringArrayOutput `pulumi:"ipv6Addresses"`
	// The MAC address of the network interface.
	MacAddress pulumi.StringOutput `pulumi:"macAddress"`
	OutpostArn pulumi.StringOutput `pulumi:"outpostArn"`
	// The private DNS name of the network interface (IPv4).
	PrivateDnsName pulumi.StringOutput `pulumi:"privateDnsName"`
	PrivateIp      pulumi.StringOutput `pulumi:"privateIp"`
	// List of private IPs to assign to the ENI.
	PrivateIps pulumi.StringArrayOutput `pulumi:"privateIps"`
	// Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
	PrivateIpsCount pulumi.IntOutput `pulumi:"privateIpsCount"`
	// List of security group IDs to assign to the ENI.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// Whether to enable source destination checking for the ENI. Default true.
	SourceDestCheck pulumi.BoolPtrOutput `pulumi:"sourceDestCheck"`
	// Subnet ID to create the ENI in.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an Elastic network interface (ENI) resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNetworkInterface(ctx, "test", &ec2.NetworkInterfaceArgs{
			SubnetId: pulumi.Any(aws_subnet.Public_a.Id),
			PrivateIps: pulumi.StringArray{
				pulumi.String("10.0.0.50"),
			},
			SecurityGroups: pulumi.StringArray{
				pulumi.Any(aws_security_group.Web.Id),
			},
			Attachments: ec2.NetworkInterfaceAttachmentArray{
				&ec2.NetworkInterfaceAttachmentArgs{
					Instance:    pulumi.Any(aws_instance.Test.Id),
					DeviceIndex: pulumi.Int(1),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Network Interfaces can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/networkInterface:NetworkInterface test eni-e5aa89a3

```

func GetNetworkInterface

func GetNetworkInterface(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkInterfaceState, opts ...pulumi.ResourceOption) (*NetworkInterface, error)

GetNetworkInterface gets an existing NetworkInterface resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkInterface

func NewNetworkInterface(ctx *pulumi.Context,
	name string, args *NetworkInterfaceArgs, opts ...pulumi.ResourceOption) (*NetworkInterface, error)

NewNetworkInterface registers a new resource with the given unique name, arguments, and options.

func (*NetworkInterface) ElementType

func (*NetworkInterface) ElementType() reflect.Type

func (*NetworkInterface) ToNetworkInterfaceOutput

func (i *NetworkInterface) ToNetworkInterfaceOutput() NetworkInterfaceOutput

func (*NetworkInterface) ToNetworkInterfaceOutputWithContext

func (i *NetworkInterface) ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput

func (*NetworkInterface) ToNetworkInterfacePtrOutput

func (i *NetworkInterface) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (*NetworkInterface) ToNetworkInterfacePtrOutputWithContext

func (i *NetworkInterface) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfaceArgs

type NetworkInterfaceArgs struct {
	// Block to define the attachment of the ENI. Documented below.
	Attachments NetworkInterfaceAttachmentTypeArrayInput
	// A description for the network interface.
	Description pulumi.StringPtrInput
	// Type of network interface to create. Set to `efa` for Elastic Fabric Adapter.
	InterfaceType pulumi.StringPtrInput
	// The number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific `ipv6Addresses`. If your subnet has the AssignIpv6AddressOnCreation attribute set to `true`, you can specify `0` to override this setting.
	Ipv6AddressCount pulumi.IntPtrInput
	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying `ipv6AddressCount`.
	Ipv6Addresses pulumi.StringArrayInput
	PrivateIp     pulumi.StringPtrInput
	// List of private IPs to assign to the ENI.
	PrivateIps pulumi.StringArrayInput
	// Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
	PrivateIpsCount pulumi.IntPtrInput
	// List of security group IDs to assign to the ENI.
	SecurityGroups pulumi.StringArrayInput
	// Whether to enable source destination checking for the ENI. Default true.
	SourceDestCheck pulumi.BoolPtrInput
	// Subnet ID to create the ENI in.
	SubnetId pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a NetworkInterface resource.

func (NetworkInterfaceArgs) ElementType

func (NetworkInterfaceArgs) ElementType() reflect.Type

type NetworkInterfaceArray

type NetworkInterfaceArray []NetworkInterfaceInput

func (NetworkInterfaceArray) ElementType

func (NetworkInterfaceArray) ElementType() reflect.Type

func (NetworkInterfaceArray) ToNetworkInterfaceArrayOutput

func (i NetworkInterfaceArray) ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput

func (NetworkInterfaceArray) ToNetworkInterfaceArrayOutputWithContext

func (i NetworkInterfaceArray) ToNetworkInterfaceArrayOutputWithContext(ctx context.Context) NetworkInterfaceArrayOutput

type NetworkInterfaceArrayInput

type NetworkInterfaceArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput
	ToNetworkInterfaceArrayOutputWithContext(context.Context) NetworkInterfaceArrayOutput
}

NetworkInterfaceArrayInput is an input type that accepts NetworkInterfaceArray and NetworkInterfaceArrayOutput values. You can construct a concrete instance of `NetworkInterfaceArrayInput` via:

NetworkInterfaceArray{ NetworkInterfaceArgs{...} }

type NetworkInterfaceArrayOutput

type NetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceArrayOutput) ElementType

func (NetworkInterfaceArrayOutput) Index

func (NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutput

func (o NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput

func (NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutputWithContext

func (o NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutputWithContext(ctx context.Context) NetworkInterfaceArrayOutput

type NetworkInterfaceAttachment

type NetworkInterfaceAttachment struct {
	pulumi.CustomResourceState

	// The ENI Attachment ID.
	AttachmentId pulumi.StringOutput `pulumi:"attachmentId"`
	// Network interface index (int).
	DeviceIndex pulumi.IntOutput `pulumi:"deviceIndex"`
	// Instance ID to attach.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// ENI ID to attach.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The status of the Network Interface Attachment.
	Status pulumi.StringOutput `pulumi:"status"`
}

Attach an Elastic network interface (ENI) resource with EC2 instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewNetworkInterfaceAttachment(ctx, "test", &ec2.NetworkInterfaceAttachmentArgs{
			InstanceId:         pulumi.Any(aws_instance.Test.Id),
			NetworkInterfaceId: pulumi.Any(aws_network_interface.Test.Id),
			DeviceIndex:        pulumi.Int(0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNetworkInterfaceAttachment

func GetNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkInterfaceAttachmentState, opts ...pulumi.ResourceOption) (*NetworkInterfaceAttachment, error)

GetNetworkInterfaceAttachment gets an existing NetworkInterfaceAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkInterfaceAttachment

func NewNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, args *NetworkInterfaceAttachmentArgs, opts ...pulumi.ResourceOption) (*NetworkInterfaceAttachment, error)

NewNetworkInterfaceAttachment registers a new resource with the given unique name, arguments, and options.

func (*NetworkInterfaceAttachment) ElementType

func (*NetworkInterfaceAttachment) ElementType() reflect.Type

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutput

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutputWithContext

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutput

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutputWithContext

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentArgs

type NetworkInterfaceAttachmentArgs struct {
	// Network interface index (int).
	DeviceIndex pulumi.IntInput
	// Instance ID to attach.
	InstanceId pulumi.StringInput
	// ENI ID to attach.
	NetworkInterfaceId pulumi.StringInput
}

The set of arguments for constructing a NetworkInterfaceAttachment resource.

func (NetworkInterfaceAttachmentArgs) ElementType

type NetworkInterfaceAttachmentArray

type NetworkInterfaceAttachmentArray []NetworkInterfaceAttachmentInput

func (NetworkInterfaceAttachmentArray) ElementType

func (NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutput

func (i NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput

func (NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutputWithContext

func (i NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentArrayOutput

type NetworkInterfaceAttachmentArrayInput

type NetworkInterfaceAttachmentArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput
	ToNetworkInterfaceAttachmentArrayOutputWithContext(context.Context) NetworkInterfaceAttachmentArrayOutput
}

NetworkInterfaceAttachmentArrayInput is an input type that accepts NetworkInterfaceAttachmentArray and NetworkInterfaceAttachmentArrayOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentArrayInput` via:

NetworkInterfaceAttachmentArray{ NetworkInterfaceAttachmentArgs{...} }

type NetworkInterfaceAttachmentArrayOutput

type NetworkInterfaceAttachmentArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentArrayOutput) ElementType

func (NetworkInterfaceAttachmentArrayOutput) Index

func (NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutput

func (o NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput

func (NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutputWithContext

func (o NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentArrayOutput

type NetworkInterfaceAttachmentInput

type NetworkInterfaceAttachmentInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput
	ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput
}

type NetworkInterfaceAttachmentMap

type NetworkInterfaceAttachmentMap map[string]NetworkInterfaceAttachmentInput

func (NetworkInterfaceAttachmentMap) ElementType

func (NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutput

func (i NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput

func (NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutputWithContext

func (i NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentMapOutput

type NetworkInterfaceAttachmentMapInput

type NetworkInterfaceAttachmentMapInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput
	ToNetworkInterfaceAttachmentMapOutputWithContext(context.Context) NetworkInterfaceAttachmentMapOutput
}

NetworkInterfaceAttachmentMapInput is an input type that accepts NetworkInterfaceAttachmentMap and NetworkInterfaceAttachmentMapOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentMapInput` via:

NetworkInterfaceAttachmentMap{ "key": NetworkInterfaceAttachmentArgs{...} }

type NetworkInterfaceAttachmentMapOutput

type NetworkInterfaceAttachmentMapOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentMapOutput) ElementType

func (NetworkInterfaceAttachmentMapOutput) MapIndex

func (NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutput

func (o NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput

func (NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutputWithContext

func (o NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentMapOutput

type NetworkInterfaceAttachmentOutput

type NetworkInterfaceAttachmentOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentOutput) ElementType

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutput

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutputWithContext

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutput

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentPtrInput

type NetworkInterfaceAttachmentPtrInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput
	ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput
}

type NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentPtrOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentPtrOutput) Elem added in v4.15.0

func (NetworkInterfaceAttachmentPtrOutput) ElementType

func (NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutput

func (o NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext

func (o NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentState

type NetworkInterfaceAttachmentState struct {
	// The ENI Attachment ID.
	AttachmentId pulumi.StringPtrInput
	// Network interface index (int).
	DeviceIndex pulumi.IntPtrInput
	// Instance ID to attach.
	InstanceId pulumi.StringPtrInput
	// ENI ID to attach.
	NetworkInterfaceId pulumi.StringPtrInput
	// The status of the Network Interface Attachment.
	Status pulumi.StringPtrInput
}

func (NetworkInterfaceAttachmentState) ElementType

type NetworkInterfaceAttachmentType

type NetworkInterfaceAttachmentType struct {
	AttachmentId *string `pulumi:"attachmentId"`
	// Integer to define the devices index.
	DeviceIndex int `pulumi:"deviceIndex"`
	// ID of the instance to attach to.
	Instance string `pulumi:"instance"`
}

type NetworkInterfaceAttachmentTypeArgs

type NetworkInterfaceAttachmentTypeArgs struct {
	AttachmentId pulumi.StringPtrInput `pulumi:"attachmentId"`
	// Integer to define the devices index.
	DeviceIndex pulumi.IntInput `pulumi:"deviceIndex"`
	// ID of the instance to attach to.
	Instance pulumi.StringInput `pulumi:"instance"`
}

func (NetworkInterfaceAttachmentTypeArgs) ElementType

func (NetworkInterfaceAttachmentTypeArgs) ToNetworkInterfaceAttachmentTypeOutput

func (i NetworkInterfaceAttachmentTypeArgs) ToNetworkInterfaceAttachmentTypeOutput() NetworkInterfaceAttachmentTypeOutput

func (NetworkInterfaceAttachmentTypeArgs) ToNetworkInterfaceAttachmentTypeOutputWithContext

func (i NetworkInterfaceAttachmentTypeArgs) ToNetworkInterfaceAttachmentTypeOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentTypeOutput

type NetworkInterfaceAttachmentTypeArray

type NetworkInterfaceAttachmentTypeArray []NetworkInterfaceAttachmentTypeInput

func (NetworkInterfaceAttachmentTypeArray) ElementType

func (NetworkInterfaceAttachmentTypeArray) ToNetworkInterfaceAttachmentTypeArrayOutput

func (i NetworkInterfaceAttachmentTypeArray) ToNetworkInterfaceAttachmentTypeArrayOutput() NetworkInterfaceAttachmentTypeArrayOutput

func (NetworkInterfaceAttachmentTypeArray) ToNetworkInterfaceAttachmentTypeArrayOutputWithContext

func (i NetworkInterfaceAttachmentTypeArray) ToNetworkInterfaceAttachmentTypeArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentTypeArrayOutput

type NetworkInterfaceAttachmentTypeArrayInput

type NetworkInterfaceAttachmentTypeArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentTypeArrayOutput() NetworkInterfaceAttachmentTypeArrayOutput
	ToNetworkInterfaceAttachmentTypeArrayOutputWithContext(context.Context) NetworkInterfaceAttachmentTypeArrayOutput
}

NetworkInterfaceAttachmentTypeArrayInput is an input type that accepts NetworkInterfaceAttachmentTypeArray and NetworkInterfaceAttachmentTypeArrayOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentTypeArrayInput` via:

NetworkInterfaceAttachmentTypeArray{ NetworkInterfaceAttachmentTypeArgs{...} }

type NetworkInterfaceAttachmentTypeArrayOutput

type NetworkInterfaceAttachmentTypeArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentTypeArrayOutput) ElementType

func (NetworkInterfaceAttachmentTypeArrayOutput) Index

func (NetworkInterfaceAttachmentTypeArrayOutput) ToNetworkInterfaceAttachmentTypeArrayOutput

func (o NetworkInterfaceAttachmentTypeArrayOutput) ToNetworkInterfaceAttachmentTypeArrayOutput() NetworkInterfaceAttachmentTypeArrayOutput

func (NetworkInterfaceAttachmentTypeArrayOutput) ToNetworkInterfaceAttachmentTypeArrayOutputWithContext

func (o NetworkInterfaceAttachmentTypeArrayOutput) ToNetworkInterfaceAttachmentTypeArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentTypeArrayOutput

type NetworkInterfaceAttachmentTypeInput

type NetworkInterfaceAttachmentTypeInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentTypeOutput() NetworkInterfaceAttachmentTypeOutput
	ToNetworkInterfaceAttachmentTypeOutputWithContext(context.Context) NetworkInterfaceAttachmentTypeOutput
}

NetworkInterfaceAttachmentTypeInput is an input type that accepts NetworkInterfaceAttachmentTypeArgs and NetworkInterfaceAttachmentTypeOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentTypeInput` via:

NetworkInterfaceAttachmentTypeArgs{...}

type NetworkInterfaceAttachmentTypeOutput

type NetworkInterfaceAttachmentTypeOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentTypeOutput) AttachmentId

func (NetworkInterfaceAttachmentTypeOutput) DeviceIndex

Integer to define the devices index.

func (NetworkInterfaceAttachmentTypeOutput) ElementType

func (NetworkInterfaceAttachmentTypeOutput) Instance

ID of the instance to attach to.

func (NetworkInterfaceAttachmentTypeOutput) ToNetworkInterfaceAttachmentTypeOutput

func (o NetworkInterfaceAttachmentTypeOutput) ToNetworkInterfaceAttachmentTypeOutput() NetworkInterfaceAttachmentTypeOutput

func (NetworkInterfaceAttachmentTypeOutput) ToNetworkInterfaceAttachmentTypeOutputWithContext

func (o NetworkInterfaceAttachmentTypeOutput) ToNetworkInterfaceAttachmentTypeOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentTypeOutput

type NetworkInterfaceInput

type NetworkInterfaceInput interface {
	pulumi.Input

	ToNetworkInterfaceOutput() NetworkInterfaceOutput
	ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput
}

type NetworkInterfaceMap

type NetworkInterfaceMap map[string]NetworkInterfaceInput

func (NetworkInterfaceMap) ElementType

func (NetworkInterfaceMap) ElementType() reflect.Type

func (NetworkInterfaceMap) ToNetworkInterfaceMapOutput

func (i NetworkInterfaceMap) ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput

func (NetworkInterfaceMap) ToNetworkInterfaceMapOutputWithContext

func (i NetworkInterfaceMap) ToNetworkInterfaceMapOutputWithContext(ctx context.Context) NetworkInterfaceMapOutput

type NetworkInterfaceMapInput

type NetworkInterfaceMapInput interface {
	pulumi.Input

	ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput
	ToNetworkInterfaceMapOutputWithContext(context.Context) NetworkInterfaceMapOutput
}

NetworkInterfaceMapInput is an input type that accepts NetworkInterfaceMap and NetworkInterfaceMapOutput values. You can construct a concrete instance of `NetworkInterfaceMapInput` via:

NetworkInterfaceMap{ "key": NetworkInterfaceArgs{...} }

type NetworkInterfaceMapOutput

type NetworkInterfaceMapOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceMapOutput) ElementType

func (NetworkInterfaceMapOutput) ElementType() reflect.Type

func (NetworkInterfaceMapOutput) MapIndex

func (NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutput

func (o NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput

func (NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutputWithContext

func (o NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutputWithContext(ctx context.Context) NetworkInterfaceMapOutput

type NetworkInterfaceOutput

type NetworkInterfaceOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceOutput) ElementType

func (NetworkInterfaceOutput) ElementType() reflect.Type

func (NetworkInterfaceOutput) ToNetworkInterfaceOutput

func (o NetworkInterfaceOutput) ToNetworkInterfaceOutput() NetworkInterfaceOutput

func (NetworkInterfaceOutput) ToNetworkInterfaceOutputWithContext

func (o NetworkInterfaceOutput) ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput

func (NetworkInterfaceOutput) ToNetworkInterfacePtrOutput

func (o NetworkInterfaceOutput) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (NetworkInterfaceOutput) ToNetworkInterfacePtrOutputWithContext

func (o NetworkInterfaceOutput) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfacePtrInput

type NetworkInterfacePtrInput interface {
	pulumi.Input

	ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput
	ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput
}

type NetworkInterfacePtrOutput

type NetworkInterfacePtrOutput struct{ *pulumi.OutputState }

func (NetworkInterfacePtrOutput) Elem added in v4.15.0

func (NetworkInterfacePtrOutput) ElementType

func (NetworkInterfacePtrOutput) ElementType() reflect.Type

func (NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutput

func (o NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutputWithContext

func (o NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfaceSecurityGroupAttachment

type NetworkInterfaceSecurityGroupAttachment struct {
	pulumi.CustomResourceState

	// The ID of the network interface to attach to.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
}

This resource attaches a security group to an Elastic Network Interface (ENI). It can be used to attach a security group to any existing ENI, be it a secondary ENI or one attached as the primary interface on an instance.

> **NOTE on instances, interfaces, and security groups:** This provider currently provides the capability to assign security groups via the `ec2.Instance` and the `ec2.NetworkInterface` resources. Using this resource in conjunction with security groups provided in-line in those resources will cause conflicts, and will lead to spurious diffs and undefined behavior - please use one or the other.

## Example Usage

The following provides a very basic example of setting up an instance (provided by `instance`) in the default security group, creating a security group (provided by `sg`) and then attaching the security group to the instance's primary network interface via the `ec2.NetworkInterfaceSecurityGroupAttachment` resource, named `sgAttachment`:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		ami, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
			MostRecent: &opt0,
			Filters: []ec2.GetAmiFilter{
				ec2.GetAmiFilter{
					Name: "name",
					Values: []string{
						"amzn-ami-hvm-*",
					},
				},
			},
			Owners: []string{
				"amazon",
			},
		}, nil)
		if err != nil {
			return err
		}
		instance, err := ec2.NewInstance(ctx, "instance", &ec2.InstanceArgs{
			InstanceType: pulumi.String("t2.micro"),
			Ami:          pulumi.String(ami.Id),
			Tags: pulumi.StringMap{
				"type": pulumi.String("test-instance"),
			},
		})
		if err != nil {
			return err
		}
		sg, err := ec2.NewSecurityGroup(ctx, "sg", &ec2.SecurityGroupArgs{
			Tags: pulumi.StringMap{
				"type": pulumi.String("test-security-group"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewNetworkInterfaceSecurityGroupAttachment(ctx, "sgAttachment", &ec2.NetworkInterfaceSecurityGroupAttachmentArgs{
			SecurityGroupId:    sg.ID(),
			NetworkInterfaceId: instance.PrimaryNetworkInterfaceId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

In this example, `instance` is provided by the `ec2.Instance` data source, fetching an external instance, possibly not managed by this provider. `sgAttachment` then attaches to the output instance's `networkInterfaceId`:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "i-1234567890abcdef0"
		instance, err := ec2.LookupInstance(ctx, &ec2.LookupInstanceArgs{
			InstanceId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		sg, err := ec2.NewSecurityGroup(ctx, "sg", &ec2.SecurityGroupArgs{
			Tags: pulumi.StringMap{
				"type": pulumi.String("test-security-group"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewNetworkInterfaceSecurityGroupAttachment(ctx, "sgAttachment", &ec2.NetworkInterfaceSecurityGroupAttachmentArgs{
			SecurityGroupId:    sg.ID(),
			NetworkInterfaceId: pulumi.String(instance.NetworkInterfaceId),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNetworkInterfaceSecurityGroupAttachment

func GetNetworkInterfaceSecurityGroupAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkInterfaceSecurityGroupAttachmentState, opts ...pulumi.ResourceOption) (*NetworkInterfaceSecurityGroupAttachment, error)

GetNetworkInterfaceSecurityGroupAttachment gets an existing NetworkInterfaceSecurityGroupAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkInterfaceSecurityGroupAttachment

func NewNetworkInterfaceSecurityGroupAttachment(ctx *pulumi.Context,
	name string, args *NetworkInterfaceSecurityGroupAttachmentArgs, opts ...pulumi.ResourceOption) (*NetworkInterfaceSecurityGroupAttachment, error)

NewNetworkInterfaceSecurityGroupAttachment registers a new resource with the given unique name, arguments, and options.

func (*NetworkInterfaceSecurityGroupAttachment) ElementType

func (*NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentOutput

func (i *NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentOutput() NetworkInterfaceSecurityGroupAttachmentOutput

func (*NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentOutputWithContext

func (i *NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentOutput

func (*NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput

func (i *NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput() NetworkInterfaceSecurityGroupAttachmentPtrOutput

func (*NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext

func (i *NetworkInterfaceSecurityGroupAttachment) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentPtrOutput

type NetworkInterfaceSecurityGroupAttachmentArgs

type NetworkInterfaceSecurityGroupAttachmentArgs struct {
	// The ID of the network interface to attach to.
	NetworkInterfaceId pulumi.StringInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
}

The set of arguments for constructing a NetworkInterfaceSecurityGroupAttachment resource.

func (NetworkInterfaceSecurityGroupAttachmentArgs) ElementType

type NetworkInterfaceSecurityGroupAttachmentArray

type NetworkInterfaceSecurityGroupAttachmentArray []NetworkInterfaceSecurityGroupAttachmentInput

func (NetworkInterfaceSecurityGroupAttachmentArray) ElementType

func (NetworkInterfaceSecurityGroupAttachmentArray) ToNetworkInterfaceSecurityGroupAttachmentArrayOutput

func (i NetworkInterfaceSecurityGroupAttachmentArray) ToNetworkInterfaceSecurityGroupAttachmentArrayOutput() NetworkInterfaceSecurityGroupAttachmentArrayOutput

func (NetworkInterfaceSecurityGroupAttachmentArray) ToNetworkInterfaceSecurityGroupAttachmentArrayOutputWithContext

func (i NetworkInterfaceSecurityGroupAttachmentArray) ToNetworkInterfaceSecurityGroupAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentArrayOutput

type NetworkInterfaceSecurityGroupAttachmentArrayInput

type NetworkInterfaceSecurityGroupAttachmentArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceSecurityGroupAttachmentArrayOutput() NetworkInterfaceSecurityGroupAttachmentArrayOutput
	ToNetworkInterfaceSecurityGroupAttachmentArrayOutputWithContext(context.Context) NetworkInterfaceSecurityGroupAttachmentArrayOutput
}

NetworkInterfaceSecurityGroupAttachmentArrayInput is an input type that accepts NetworkInterfaceSecurityGroupAttachmentArray and NetworkInterfaceSecurityGroupAttachmentArrayOutput values. You can construct a concrete instance of `NetworkInterfaceSecurityGroupAttachmentArrayInput` via:

NetworkInterfaceSecurityGroupAttachmentArray{ NetworkInterfaceSecurityGroupAttachmentArgs{...} }

type NetworkInterfaceSecurityGroupAttachmentArrayOutput

type NetworkInterfaceSecurityGroupAttachmentArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceSecurityGroupAttachmentArrayOutput) ElementType

func (NetworkInterfaceSecurityGroupAttachmentArrayOutput) Index

func (NetworkInterfaceSecurityGroupAttachmentArrayOutput) ToNetworkInterfaceSecurityGroupAttachmentArrayOutput

func (o NetworkInterfaceSecurityGroupAttachmentArrayOutput) ToNetworkInterfaceSecurityGroupAttachmentArrayOutput() NetworkInterfaceSecurityGroupAttachmentArrayOutput

func (NetworkInterfaceSecurityGroupAttachmentArrayOutput) ToNetworkInterfaceSecurityGroupAttachmentArrayOutputWithContext

func (o NetworkInterfaceSecurityGroupAttachmentArrayOutput) ToNetworkInterfaceSecurityGroupAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentArrayOutput

type NetworkInterfaceSecurityGroupAttachmentInput

type NetworkInterfaceSecurityGroupAttachmentInput interface {
	pulumi.Input

	ToNetworkInterfaceSecurityGroupAttachmentOutput() NetworkInterfaceSecurityGroupAttachmentOutput
	ToNetworkInterfaceSecurityGroupAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentOutput
}

type NetworkInterfaceSecurityGroupAttachmentMap

type NetworkInterfaceSecurityGroupAttachmentMap map[string]NetworkInterfaceSecurityGroupAttachmentInput

func (NetworkInterfaceSecurityGroupAttachmentMap) ElementType

func (NetworkInterfaceSecurityGroupAttachmentMap) ToNetworkInterfaceSecurityGroupAttachmentMapOutput

func (i NetworkInterfaceSecurityGroupAttachmentMap) ToNetworkInterfaceSecurityGroupAttachmentMapOutput() NetworkInterfaceSecurityGroupAttachmentMapOutput

func (NetworkInterfaceSecurityGroupAttachmentMap) ToNetworkInterfaceSecurityGroupAttachmentMapOutputWithContext

func (i NetworkInterfaceSecurityGroupAttachmentMap) ToNetworkInterfaceSecurityGroupAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentMapOutput

type NetworkInterfaceSecurityGroupAttachmentMapInput

type NetworkInterfaceSecurityGroupAttachmentMapInput interface {
	pulumi.Input

	ToNetworkInterfaceSecurityGroupAttachmentMapOutput() NetworkInterfaceSecurityGroupAttachmentMapOutput
	ToNetworkInterfaceSecurityGroupAttachmentMapOutputWithContext(context.Context) NetworkInterfaceSecurityGroupAttachmentMapOutput
}

NetworkInterfaceSecurityGroupAttachmentMapInput is an input type that accepts NetworkInterfaceSecurityGroupAttachmentMap and NetworkInterfaceSecurityGroupAttachmentMapOutput values. You can construct a concrete instance of `NetworkInterfaceSecurityGroupAttachmentMapInput` via:

NetworkInterfaceSecurityGroupAttachmentMap{ "key": NetworkInterfaceSecurityGroupAttachmentArgs{...} }

type NetworkInterfaceSecurityGroupAttachmentMapOutput

type NetworkInterfaceSecurityGroupAttachmentMapOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceSecurityGroupAttachmentMapOutput) ElementType

func (NetworkInterfaceSecurityGroupAttachmentMapOutput) MapIndex

func (NetworkInterfaceSecurityGroupAttachmentMapOutput) ToNetworkInterfaceSecurityGroupAttachmentMapOutput

func (o NetworkInterfaceSecurityGroupAttachmentMapOutput) ToNetworkInterfaceSecurityGroupAttachmentMapOutput() NetworkInterfaceSecurityGroupAttachmentMapOutput

func (NetworkInterfaceSecurityGroupAttachmentMapOutput) ToNetworkInterfaceSecurityGroupAttachmentMapOutputWithContext

func (o NetworkInterfaceSecurityGroupAttachmentMapOutput) ToNetworkInterfaceSecurityGroupAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentMapOutput

type NetworkInterfaceSecurityGroupAttachmentOutput

type NetworkInterfaceSecurityGroupAttachmentOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceSecurityGroupAttachmentOutput) ElementType

func (NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentOutput

func (o NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentOutput() NetworkInterfaceSecurityGroupAttachmentOutput

func (NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentOutputWithContext

func (o NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentOutput

func (NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput

func (o NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput() NetworkInterfaceSecurityGroupAttachmentPtrOutput

func (NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext

func (o NetworkInterfaceSecurityGroupAttachmentOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentPtrOutput

type NetworkInterfaceSecurityGroupAttachmentPtrInput

type NetworkInterfaceSecurityGroupAttachmentPtrInput interface {
	pulumi.Input

	ToNetworkInterfaceSecurityGroupAttachmentPtrOutput() NetworkInterfaceSecurityGroupAttachmentPtrOutput
	ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentPtrOutput
}

type NetworkInterfaceSecurityGroupAttachmentPtrOutput

type NetworkInterfaceSecurityGroupAttachmentPtrOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceSecurityGroupAttachmentPtrOutput) Elem added in v4.15.0

func (NetworkInterfaceSecurityGroupAttachmentPtrOutput) ElementType

func (NetworkInterfaceSecurityGroupAttachmentPtrOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput

func (o NetworkInterfaceSecurityGroupAttachmentPtrOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutput() NetworkInterfaceSecurityGroupAttachmentPtrOutput

func (NetworkInterfaceSecurityGroupAttachmentPtrOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext

func (o NetworkInterfaceSecurityGroupAttachmentPtrOutput) ToNetworkInterfaceSecurityGroupAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceSecurityGroupAttachmentPtrOutput

type NetworkInterfaceSecurityGroupAttachmentState

type NetworkInterfaceSecurityGroupAttachmentState struct {
	// The ID of the network interface to attach to.
	NetworkInterfaceId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
}

func (NetworkInterfaceSecurityGroupAttachmentState) ElementType

type NetworkInterfaceState

type NetworkInterfaceState struct {
	// Block to define the attachment of the ENI. Documented below.
	Attachments NetworkInterfaceAttachmentTypeArrayInput
	// A description for the network interface.
	Description pulumi.StringPtrInput
	// Type of network interface to create. Set to `efa` for Elastic Fabric Adapter.
	InterfaceType pulumi.StringPtrInput
	// The number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific `ipv6Addresses`. If your subnet has the AssignIpv6AddressOnCreation attribute set to `true`, you can specify `0` to override this setting.
	Ipv6AddressCount pulumi.IntPtrInput
	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying `ipv6AddressCount`.
	Ipv6Addresses pulumi.StringArrayInput
	// The MAC address of the network interface.
	MacAddress pulumi.StringPtrInput
	OutpostArn pulumi.StringPtrInput
	// The private DNS name of the network interface (IPv4).
	PrivateDnsName pulumi.StringPtrInput
	PrivateIp      pulumi.StringPtrInput
	// List of private IPs to assign to the ENI.
	PrivateIps pulumi.StringArrayInput
	// Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
	PrivateIpsCount pulumi.IntPtrInput
	// List of security group IDs to assign to the ENI.
	SecurityGroups pulumi.StringArrayInput
	// Whether to enable source destination checking for the ENI. Default true.
	SourceDestCheck pulumi.BoolPtrInput
	// Subnet ID to create the ENI in.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (NetworkInterfaceState) ElementType

func (NetworkInterfaceState) ElementType() reflect.Type

type PeeringConnectionOptions

type PeeringConnectionOptions struct {
	pulumi.CustomResourceState

	// An optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter PeeringConnectionOptionsAccepterOutput `pulumi:"accepter"`
	// A optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester PeeringConnectionOptionsRequesterOutput `pulumi:"requester"`
	// The ID of the requester VPC peering connection.
	VpcPeeringConnectionId pulumi.StringOutput `pulumi:"vpcPeeringConnectionId"`
}

Provides a resource to manage VPC peering connection options.

> **NOTE on VPC Peering Connections and VPC Peering Connection Options:** This provider provides both a standalone VPC Peering Connection Options and a VPC Peering Connection resource with `accepter` and `requester` attributes. Do not manage options for the same VPC peering connection in both a VPC Peering Connection resource and a VPC Peering Connection Options resource. Doing so will cause a conflict of options and will overwrite the options. Using a VPC Peering Connection Options resource decouples management of the connection options from management of the VPC Peering Connection and allows options to be set correctly in cross-region and cross-account scenarios.

## Example Usage ### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooVpc, err := ec2.NewVpc(ctx, "fooVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		bar, err := ec2.NewVpc(ctx, "bar", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		fooVpcPeeringConnection, err := ec2.NewVpcPeeringConnection(ctx, "fooVpcPeeringConnection", &ec2.VpcPeeringConnectionArgs{
			VpcId:      fooVpc.ID(),
			PeerVpcId:  bar.ID(),
			AutoAccept: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewPeeringConnectionOptions(ctx, "fooPeeringConnectionOptions", &ec2.PeeringConnectionOptionsArgs{
			VpcPeeringConnectionId: fooVpcPeeringConnection.ID(),
			Accepter: &ec2.PeeringConnectionOptionsAccepterArgs{
				AllowRemoteVpcDnsResolution: pulumi.Bool(true),
			},
			Requester: &ec2.PeeringConnectionOptionsRequesterArgs{
				AllowVpcToRemoteClassicLink: pulumi.Bool(true),
				AllowClassicLinkToRemoteVpc: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Cross-Account Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/providers"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := providers.Newaws(ctx, "requester", nil)
		if err != nil {
			return err
		}
		_, err = providers.Newaws(ctx, "accepter", nil)
		if err != nil {
			return err
		}
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.0.0.0/16"),
			EnableDnsSupport:   pulumi.Bool(true),
			EnableDnsHostnames: pulumi.Bool(true),
		}, pulumi.Provider(aws.Requester))
		if err != nil {
			return err
		}
		peerVpc, err := ec2.NewVpc(ctx, "peerVpc", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.1.0.0/16"),
			EnableDnsSupport:   pulumi.Bool(true),
			EnableDnsHostnames: pulumi.Bool(true),
		}, pulumi.Provider(aws.Accepter))
		if err != nil {
			return err
		}
		peerCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		peerVpcPeeringConnection, err := ec2.NewVpcPeeringConnection(ctx, "peerVpcPeeringConnection", &ec2.VpcPeeringConnectionArgs{
			VpcId:       main.ID(),
			PeerVpcId:   peerVpc.ID(),
			PeerOwnerId: pulumi.String(peerCallerIdentity.AccountId),
			AutoAccept:  pulumi.Bool(false),
			Tags: pulumi.StringMap{
				"Side": pulumi.String("Requester"),
			},
		}, pulumi.Provider(aws.Requester))
		if err != nil {
			return err
		}
		peerVpcPeeringConnectionAccepter, err := ec2.NewVpcPeeringConnectionAccepter(ctx, "peerVpcPeeringConnectionAccepter", &ec2.VpcPeeringConnectionAccepterArgs{
			VpcPeeringConnectionId: peerVpcPeeringConnection.ID(),
			AutoAccept:             pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Side": pulumi.String("Accepter"),
			},
		}, pulumi.Provider(aws.Accepter))
		if err != nil {
			return err
		}
		_, err = ec2.NewPeeringConnectionOptions(ctx, "requesterPeeringConnectionOptions", &ec2.PeeringConnectionOptionsArgs{
			VpcPeeringConnectionId: peerVpcPeeringConnectionAccepter.ID(),
			Requester: &ec2.PeeringConnectionOptionsRequesterArgs{
				AllowRemoteVpcDnsResolution: pulumi.Bool(true),
			},
		}, pulumi.Provider(aws.Requester))
		if err != nil {
			return err
		}
		_, err = ec2.NewPeeringConnectionOptions(ctx, "accepterPeeringConnectionOptions", &ec2.PeeringConnectionOptionsArgs{
			VpcPeeringConnectionId: peerVpcPeeringConnectionAccepter.ID(),
			Accepter: &ec2.PeeringConnectionOptionsAccepterArgs{
				AllowRemoteVpcDnsResolution: pulumi.Bool(true),
			},
		}, pulumi.Provider(aws.Accepter))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Peering Connection Options can be imported using the `vpc peering id`, e.g.

```sh

$ pulumi import aws:ec2/peeringConnectionOptions:PeeringConnectionOptions foo pcx-111aaa111

```

func GetPeeringConnectionOptions

func GetPeeringConnectionOptions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PeeringConnectionOptionsState, opts ...pulumi.ResourceOption) (*PeeringConnectionOptions, error)

GetPeeringConnectionOptions gets an existing PeeringConnectionOptions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPeeringConnectionOptions

func NewPeeringConnectionOptions(ctx *pulumi.Context,
	name string, args *PeeringConnectionOptionsArgs, opts ...pulumi.ResourceOption) (*PeeringConnectionOptions, error)

NewPeeringConnectionOptions registers a new resource with the given unique name, arguments, and options.

func (*PeeringConnectionOptions) ElementType

func (*PeeringConnectionOptions) ElementType() reflect.Type

func (*PeeringConnectionOptions) ToPeeringConnectionOptionsOutput

func (i *PeeringConnectionOptions) ToPeeringConnectionOptionsOutput() PeeringConnectionOptionsOutput

func (*PeeringConnectionOptions) ToPeeringConnectionOptionsOutputWithContext

func (i *PeeringConnectionOptions) ToPeeringConnectionOptionsOutputWithContext(ctx context.Context) PeeringConnectionOptionsOutput

func (*PeeringConnectionOptions) ToPeeringConnectionOptionsPtrOutput

func (i *PeeringConnectionOptions) ToPeeringConnectionOptionsPtrOutput() PeeringConnectionOptionsPtrOutput

func (*PeeringConnectionOptions) ToPeeringConnectionOptionsPtrOutputWithContext

func (i *PeeringConnectionOptions) ToPeeringConnectionOptionsPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsPtrOutput

type PeeringConnectionOptionsAccepter

type PeeringConnectionOptionsAccepter struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC. This option is not supported for inter-region VPC peering.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection. This option is not supported for inter-region VPC peering.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type PeeringConnectionOptionsAccepterArgs

type PeeringConnectionOptionsAccepterArgs struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC. This option is not supported for inter-region VPC peering.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection. This option is not supported for inter-region VPC peering.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (PeeringConnectionOptionsAccepterArgs) ElementType

func (PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterOutput

func (i PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterOutput() PeeringConnectionOptionsAccepterOutput

func (PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterOutputWithContext

func (i PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterOutputWithContext(ctx context.Context) PeeringConnectionOptionsAccepterOutput

func (PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterPtrOutput

func (i PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterPtrOutput() PeeringConnectionOptionsAccepterPtrOutput

func (PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterPtrOutputWithContext

func (i PeeringConnectionOptionsAccepterArgs) ToPeeringConnectionOptionsAccepterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsAccepterPtrOutput

type PeeringConnectionOptionsAccepterInput

type PeeringConnectionOptionsAccepterInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsAccepterOutput() PeeringConnectionOptionsAccepterOutput
	ToPeeringConnectionOptionsAccepterOutputWithContext(context.Context) PeeringConnectionOptionsAccepterOutput
}

PeeringConnectionOptionsAccepterInput is an input type that accepts PeeringConnectionOptionsAccepterArgs and PeeringConnectionOptionsAccepterOutput values. You can construct a concrete instance of `PeeringConnectionOptionsAccepterInput` via:

PeeringConnectionOptionsAccepterArgs{...}

type PeeringConnectionOptionsAccepterOutput

type PeeringConnectionOptionsAccepterOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsAccepterOutput) AllowClassicLinkToRemoteVpc

func (o PeeringConnectionOptionsAccepterOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsAccepterOutput) AllowRemoteVpcDnsResolution

func (o PeeringConnectionOptionsAccepterOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

func (o PeeringConnectionOptionsAccepterOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsAccepterOutput) ElementType

func (PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterOutput

func (o PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterOutput() PeeringConnectionOptionsAccepterOutput

func (PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterOutputWithContext

func (o PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterOutputWithContext(ctx context.Context) PeeringConnectionOptionsAccepterOutput

func (PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterPtrOutput

func (o PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterPtrOutput() PeeringConnectionOptionsAccepterPtrOutput

func (PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterPtrOutputWithContext

func (o PeeringConnectionOptionsAccepterOutput) ToPeeringConnectionOptionsAccepterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsAccepterPtrOutput

type PeeringConnectionOptionsAccepterPtrInput

type PeeringConnectionOptionsAccepterPtrInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsAccepterPtrOutput() PeeringConnectionOptionsAccepterPtrOutput
	ToPeeringConnectionOptionsAccepterPtrOutputWithContext(context.Context) PeeringConnectionOptionsAccepterPtrOutput
}

PeeringConnectionOptionsAccepterPtrInput is an input type that accepts PeeringConnectionOptionsAccepterArgs, PeeringConnectionOptionsAccepterPtr and PeeringConnectionOptionsAccepterPtrOutput values. You can construct a concrete instance of `PeeringConnectionOptionsAccepterPtrInput` via:

        PeeringConnectionOptionsAccepterArgs{...}

or:

        nil

type PeeringConnectionOptionsAccepterPtrOutput

type PeeringConnectionOptionsAccepterPtrOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsAccepterPtrOutput) AllowClassicLinkToRemoteVpc

func (o PeeringConnectionOptionsAccepterPtrOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsAccepterPtrOutput) AllowRemoteVpcDnsResolution

func (o PeeringConnectionOptionsAccepterPtrOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

func (o PeeringConnectionOptionsAccepterPtrOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsAccepterPtrOutput) Elem

func (PeeringConnectionOptionsAccepterPtrOutput) ElementType

func (PeeringConnectionOptionsAccepterPtrOutput) ToPeeringConnectionOptionsAccepterPtrOutput

func (o PeeringConnectionOptionsAccepterPtrOutput) ToPeeringConnectionOptionsAccepterPtrOutput() PeeringConnectionOptionsAccepterPtrOutput

func (PeeringConnectionOptionsAccepterPtrOutput) ToPeeringConnectionOptionsAccepterPtrOutputWithContext

func (o PeeringConnectionOptionsAccepterPtrOutput) ToPeeringConnectionOptionsAccepterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsAccepterPtrOutput

type PeeringConnectionOptionsArgs

type PeeringConnectionOptionsArgs struct {
	// An optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter PeeringConnectionOptionsAccepterPtrInput
	// A optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester PeeringConnectionOptionsRequesterPtrInput
	// The ID of the requester VPC peering connection.
	VpcPeeringConnectionId pulumi.StringInput
}

The set of arguments for constructing a PeeringConnectionOptions resource.

func (PeeringConnectionOptionsArgs) ElementType

type PeeringConnectionOptionsArray

type PeeringConnectionOptionsArray []PeeringConnectionOptionsInput

func (PeeringConnectionOptionsArray) ElementType

func (PeeringConnectionOptionsArray) ToPeeringConnectionOptionsArrayOutput

func (i PeeringConnectionOptionsArray) ToPeeringConnectionOptionsArrayOutput() PeeringConnectionOptionsArrayOutput

func (PeeringConnectionOptionsArray) ToPeeringConnectionOptionsArrayOutputWithContext

func (i PeeringConnectionOptionsArray) ToPeeringConnectionOptionsArrayOutputWithContext(ctx context.Context) PeeringConnectionOptionsArrayOutput

type PeeringConnectionOptionsArrayInput

type PeeringConnectionOptionsArrayInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsArrayOutput() PeeringConnectionOptionsArrayOutput
	ToPeeringConnectionOptionsArrayOutputWithContext(context.Context) PeeringConnectionOptionsArrayOutput
}

PeeringConnectionOptionsArrayInput is an input type that accepts PeeringConnectionOptionsArray and PeeringConnectionOptionsArrayOutput values. You can construct a concrete instance of `PeeringConnectionOptionsArrayInput` via:

PeeringConnectionOptionsArray{ PeeringConnectionOptionsArgs{...} }

type PeeringConnectionOptionsArrayOutput

type PeeringConnectionOptionsArrayOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsArrayOutput) ElementType

func (PeeringConnectionOptionsArrayOutput) Index

func (PeeringConnectionOptionsArrayOutput) ToPeeringConnectionOptionsArrayOutput

func (o PeeringConnectionOptionsArrayOutput) ToPeeringConnectionOptionsArrayOutput() PeeringConnectionOptionsArrayOutput

func (PeeringConnectionOptionsArrayOutput) ToPeeringConnectionOptionsArrayOutputWithContext

func (o PeeringConnectionOptionsArrayOutput) ToPeeringConnectionOptionsArrayOutputWithContext(ctx context.Context) PeeringConnectionOptionsArrayOutput

type PeeringConnectionOptionsInput

type PeeringConnectionOptionsInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsOutput() PeeringConnectionOptionsOutput
	ToPeeringConnectionOptionsOutputWithContext(ctx context.Context) PeeringConnectionOptionsOutput
}

type PeeringConnectionOptionsMap

type PeeringConnectionOptionsMap map[string]PeeringConnectionOptionsInput

func (PeeringConnectionOptionsMap) ElementType

func (PeeringConnectionOptionsMap) ToPeeringConnectionOptionsMapOutput

func (i PeeringConnectionOptionsMap) ToPeeringConnectionOptionsMapOutput() PeeringConnectionOptionsMapOutput

func (PeeringConnectionOptionsMap) ToPeeringConnectionOptionsMapOutputWithContext

func (i PeeringConnectionOptionsMap) ToPeeringConnectionOptionsMapOutputWithContext(ctx context.Context) PeeringConnectionOptionsMapOutput

type PeeringConnectionOptionsMapInput

type PeeringConnectionOptionsMapInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsMapOutput() PeeringConnectionOptionsMapOutput
	ToPeeringConnectionOptionsMapOutputWithContext(context.Context) PeeringConnectionOptionsMapOutput
}

PeeringConnectionOptionsMapInput is an input type that accepts PeeringConnectionOptionsMap and PeeringConnectionOptionsMapOutput values. You can construct a concrete instance of `PeeringConnectionOptionsMapInput` via:

PeeringConnectionOptionsMap{ "key": PeeringConnectionOptionsArgs{...} }

type PeeringConnectionOptionsMapOutput

type PeeringConnectionOptionsMapOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsMapOutput) ElementType

func (PeeringConnectionOptionsMapOutput) MapIndex

func (PeeringConnectionOptionsMapOutput) ToPeeringConnectionOptionsMapOutput

func (o PeeringConnectionOptionsMapOutput) ToPeeringConnectionOptionsMapOutput() PeeringConnectionOptionsMapOutput

func (PeeringConnectionOptionsMapOutput) ToPeeringConnectionOptionsMapOutputWithContext

func (o PeeringConnectionOptionsMapOutput) ToPeeringConnectionOptionsMapOutputWithContext(ctx context.Context) PeeringConnectionOptionsMapOutput

type PeeringConnectionOptionsOutput

type PeeringConnectionOptionsOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsOutput) ElementType

func (PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsOutput

func (o PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsOutput() PeeringConnectionOptionsOutput

func (PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsOutputWithContext

func (o PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsOutputWithContext(ctx context.Context) PeeringConnectionOptionsOutput

func (PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsPtrOutput

func (o PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsPtrOutput() PeeringConnectionOptionsPtrOutput

func (PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsPtrOutputWithContext

func (o PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsPtrOutput

type PeeringConnectionOptionsPtrInput

type PeeringConnectionOptionsPtrInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsPtrOutput() PeeringConnectionOptionsPtrOutput
	ToPeeringConnectionOptionsPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsPtrOutput
}

type PeeringConnectionOptionsPtrOutput

type PeeringConnectionOptionsPtrOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsPtrOutput) Elem added in v4.15.0

func (PeeringConnectionOptionsPtrOutput) ElementType

func (PeeringConnectionOptionsPtrOutput) ToPeeringConnectionOptionsPtrOutput

func (o PeeringConnectionOptionsPtrOutput) ToPeeringConnectionOptionsPtrOutput() PeeringConnectionOptionsPtrOutput

func (PeeringConnectionOptionsPtrOutput) ToPeeringConnectionOptionsPtrOutputWithContext

func (o PeeringConnectionOptionsPtrOutput) ToPeeringConnectionOptionsPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsPtrOutput

type PeeringConnectionOptionsRequester

type PeeringConnectionOptionsRequester struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC. This option is not supported for inter-region VPC peering.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection. This option is not supported for inter-region VPC peering.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type PeeringConnectionOptionsRequesterArgs

type PeeringConnectionOptionsRequesterArgs struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC. This option is not supported for inter-region VPC peering.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection. This option is not supported for inter-region VPC peering.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (PeeringConnectionOptionsRequesterArgs) ElementType

func (PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterOutput

func (i PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterOutput() PeeringConnectionOptionsRequesterOutput

func (PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterOutputWithContext

func (i PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterOutputWithContext(ctx context.Context) PeeringConnectionOptionsRequesterOutput

func (PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterPtrOutput

func (i PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterPtrOutput() PeeringConnectionOptionsRequesterPtrOutput

func (PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterPtrOutputWithContext

func (i PeeringConnectionOptionsRequesterArgs) ToPeeringConnectionOptionsRequesterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsRequesterPtrOutput

type PeeringConnectionOptionsRequesterInput

type PeeringConnectionOptionsRequesterInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsRequesterOutput() PeeringConnectionOptionsRequesterOutput
	ToPeeringConnectionOptionsRequesterOutputWithContext(context.Context) PeeringConnectionOptionsRequesterOutput
}

PeeringConnectionOptionsRequesterInput is an input type that accepts PeeringConnectionOptionsRequesterArgs and PeeringConnectionOptionsRequesterOutput values. You can construct a concrete instance of `PeeringConnectionOptionsRequesterInput` via:

PeeringConnectionOptionsRequesterArgs{...}

type PeeringConnectionOptionsRequesterOutput

type PeeringConnectionOptionsRequesterOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsRequesterOutput) AllowClassicLinkToRemoteVpc

func (o PeeringConnectionOptionsRequesterOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsRequesterOutput) AllowRemoteVpcDnsResolution

func (o PeeringConnectionOptionsRequesterOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

func (o PeeringConnectionOptionsRequesterOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsRequesterOutput) ElementType

func (PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterOutput

func (o PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterOutput() PeeringConnectionOptionsRequesterOutput

func (PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterOutputWithContext

func (o PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterOutputWithContext(ctx context.Context) PeeringConnectionOptionsRequesterOutput

func (PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterPtrOutput

func (o PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterPtrOutput() PeeringConnectionOptionsRequesterPtrOutput

func (PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterPtrOutputWithContext

func (o PeeringConnectionOptionsRequesterOutput) ToPeeringConnectionOptionsRequesterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsRequesterPtrOutput

type PeeringConnectionOptionsRequesterPtrInput

type PeeringConnectionOptionsRequesterPtrInput interface {
	pulumi.Input

	ToPeeringConnectionOptionsRequesterPtrOutput() PeeringConnectionOptionsRequesterPtrOutput
	ToPeeringConnectionOptionsRequesterPtrOutputWithContext(context.Context) PeeringConnectionOptionsRequesterPtrOutput
}

PeeringConnectionOptionsRequesterPtrInput is an input type that accepts PeeringConnectionOptionsRequesterArgs, PeeringConnectionOptionsRequesterPtr and PeeringConnectionOptionsRequesterPtrOutput values. You can construct a concrete instance of `PeeringConnectionOptionsRequesterPtrInput` via:

        PeeringConnectionOptionsRequesterArgs{...}

or:

        nil

type PeeringConnectionOptionsRequesterPtrOutput

type PeeringConnectionOptionsRequesterPtrOutput struct{ *pulumi.OutputState }

func (PeeringConnectionOptionsRequesterPtrOutput) AllowClassicLinkToRemoteVpc

func (o PeeringConnectionOptionsRequesterPtrOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsRequesterPtrOutput) AllowRemoteVpcDnsResolution

func (o PeeringConnectionOptionsRequesterPtrOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

func (o PeeringConnectionOptionsRequesterPtrOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection. This option is not supported for inter-region VPC peering.

func (PeeringConnectionOptionsRequesterPtrOutput) Elem

func (PeeringConnectionOptionsRequesterPtrOutput) ElementType

func (PeeringConnectionOptionsRequesterPtrOutput) ToPeeringConnectionOptionsRequesterPtrOutput

func (o PeeringConnectionOptionsRequesterPtrOutput) ToPeeringConnectionOptionsRequesterPtrOutput() PeeringConnectionOptionsRequesterPtrOutput

func (PeeringConnectionOptionsRequesterPtrOutput) ToPeeringConnectionOptionsRequesterPtrOutputWithContext

func (o PeeringConnectionOptionsRequesterPtrOutput) ToPeeringConnectionOptionsRequesterPtrOutputWithContext(ctx context.Context) PeeringConnectionOptionsRequesterPtrOutput

type PeeringConnectionOptionsState

type PeeringConnectionOptionsState struct {
	// An optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter PeeringConnectionOptionsAccepterPtrInput
	// A optional configuration block that allows for [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester PeeringConnectionOptionsRequesterPtrInput
	// The ID of the requester VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrInput
}

func (PeeringConnectionOptionsState) ElementType

type PlacementGroup

type PlacementGroup struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the placement group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the placement group.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the placement group.
	PlacementGroupId pulumi.StringOutput `pulumi:"placementGroupId"`
	// The placement strategy. Can be `"cluster"`, `"partition"` or `"spread"`.
	Strategy pulumi.StringOutput `pulumi:"strategy"`
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an EC2 placement group. Read more about placement groups in [AWS Docs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewPlacementGroup(ctx, "web", &ec2.PlacementGroupArgs{
			Strategy: pulumi.String("cluster"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Placement groups can be imported using the `name`, e.g.

```sh

$ pulumi import aws:ec2/placementGroup:PlacementGroup prod_pg production-placement-group

```

func GetPlacementGroup

func GetPlacementGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PlacementGroupState, opts ...pulumi.ResourceOption) (*PlacementGroup, error)

GetPlacementGroup gets an existing PlacementGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPlacementGroup

func NewPlacementGroup(ctx *pulumi.Context,
	name string, args *PlacementGroupArgs, opts ...pulumi.ResourceOption) (*PlacementGroup, error)

NewPlacementGroup registers a new resource with the given unique name, arguments, and options.

func (*PlacementGroup) ElementType

func (*PlacementGroup) ElementType() reflect.Type

func (*PlacementGroup) ToPlacementGroupOutput

func (i *PlacementGroup) ToPlacementGroupOutput() PlacementGroupOutput

func (*PlacementGroup) ToPlacementGroupOutputWithContext

func (i *PlacementGroup) ToPlacementGroupOutputWithContext(ctx context.Context) PlacementGroupOutput

func (*PlacementGroup) ToPlacementGroupPtrOutput

func (i *PlacementGroup) ToPlacementGroupPtrOutput() PlacementGroupPtrOutput

func (*PlacementGroup) ToPlacementGroupPtrOutputWithContext

func (i *PlacementGroup) ToPlacementGroupPtrOutputWithContext(ctx context.Context) PlacementGroupPtrOutput

type PlacementGroupArgs

type PlacementGroupArgs struct {
	// The name of the placement group.
	Name pulumi.StringPtrInput
	// The placement strategy. Can be `"cluster"`, `"partition"` or `"spread"`.
	Strategy pulumi.StringInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a PlacementGroup resource.

func (PlacementGroupArgs) ElementType

func (PlacementGroupArgs) ElementType() reflect.Type

type PlacementGroupArray

type PlacementGroupArray []PlacementGroupInput

func (PlacementGroupArray) ElementType

func (PlacementGroupArray) ElementType() reflect.Type

func (PlacementGroupArray) ToPlacementGroupArrayOutput

func (i PlacementGroupArray) ToPlacementGroupArrayOutput() PlacementGroupArrayOutput

func (PlacementGroupArray) ToPlacementGroupArrayOutputWithContext

func (i PlacementGroupArray) ToPlacementGroupArrayOutputWithContext(ctx context.Context) PlacementGroupArrayOutput

type PlacementGroupArrayInput

type PlacementGroupArrayInput interface {
	pulumi.Input

	ToPlacementGroupArrayOutput() PlacementGroupArrayOutput
	ToPlacementGroupArrayOutputWithContext(context.Context) PlacementGroupArrayOutput
}

PlacementGroupArrayInput is an input type that accepts PlacementGroupArray and PlacementGroupArrayOutput values. You can construct a concrete instance of `PlacementGroupArrayInput` via:

PlacementGroupArray{ PlacementGroupArgs{...} }

type PlacementGroupArrayOutput

type PlacementGroupArrayOutput struct{ *pulumi.OutputState }

func (PlacementGroupArrayOutput) ElementType

func (PlacementGroupArrayOutput) ElementType() reflect.Type

func (PlacementGroupArrayOutput) Index

func (PlacementGroupArrayOutput) ToPlacementGroupArrayOutput

func (o PlacementGroupArrayOutput) ToPlacementGroupArrayOutput() PlacementGroupArrayOutput

func (PlacementGroupArrayOutput) ToPlacementGroupArrayOutputWithContext

func (o PlacementGroupArrayOutput) ToPlacementGroupArrayOutputWithContext(ctx context.Context) PlacementGroupArrayOutput

type PlacementGroupInput

type PlacementGroupInput interface {
	pulumi.Input

	ToPlacementGroupOutput() PlacementGroupOutput
	ToPlacementGroupOutputWithContext(ctx context.Context) PlacementGroupOutput
}

type PlacementGroupMap

type PlacementGroupMap map[string]PlacementGroupInput

func (PlacementGroupMap) ElementType

func (PlacementGroupMap) ElementType() reflect.Type

func (PlacementGroupMap) ToPlacementGroupMapOutput

func (i PlacementGroupMap) ToPlacementGroupMapOutput() PlacementGroupMapOutput

func (PlacementGroupMap) ToPlacementGroupMapOutputWithContext

func (i PlacementGroupMap) ToPlacementGroupMapOutputWithContext(ctx context.Context) PlacementGroupMapOutput

type PlacementGroupMapInput

type PlacementGroupMapInput interface {
	pulumi.Input

	ToPlacementGroupMapOutput() PlacementGroupMapOutput
	ToPlacementGroupMapOutputWithContext(context.Context) PlacementGroupMapOutput
}

PlacementGroupMapInput is an input type that accepts PlacementGroupMap and PlacementGroupMapOutput values. You can construct a concrete instance of `PlacementGroupMapInput` via:

PlacementGroupMap{ "key": PlacementGroupArgs{...} }

type PlacementGroupMapOutput

type PlacementGroupMapOutput struct{ *pulumi.OutputState }

func (PlacementGroupMapOutput) ElementType

func (PlacementGroupMapOutput) ElementType() reflect.Type

func (PlacementGroupMapOutput) MapIndex

func (PlacementGroupMapOutput) ToPlacementGroupMapOutput

func (o PlacementGroupMapOutput) ToPlacementGroupMapOutput() PlacementGroupMapOutput

func (PlacementGroupMapOutput) ToPlacementGroupMapOutputWithContext

func (o PlacementGroupMapOutput) ToPlacementGroupMapOutputWithContext(ctx context.Context) PlacementGroupMapOutput

type PlacementGroupOutput

type PlacementGroupOutput struct{ *pulumi.OutputState }

func (PlacementGroupOutput) ElementType

func (PlacementGroupOutput) ElementType() reflect.Type

func (PlacementGroupOutput) ToPlacementGroupOutput

func (o PlacementGroupOutput) ToPlacementGroupOutput() PlacementGroupOutput

func (PlacementGroupOutput) ToPlacementGroupOutputWithContext

func (o PlacementGroupOutput) ToPlacementGroupOutputWithContext(ctx context.Context) PlacementGroupOutput

func (PlacementGroupOutput) ToPlacementGroupPtrOutput

func (o PlacementGroupOutput) ToPlacementGroupPtrOutput() PlacementGroupPtrOutput

func (PlacementGroupOutput) ToPlacementGroupPtrOutputWithContext

func (o PlacementGroupOutput) ToPlacementGroupPtrOutputWithContext(ctx context.Context) PlacementGroupPtrOutput

type PlacementGroupPtrInput

type PlacementGroupPtrInput interface {
	pulumi.Input

	ToPlacementGroupPtrOutput() PlacementGroupPtrOutput
	ToPlacementGroupPtrOutputWithContext(ctx context.Context) PlacementGroupPtrOutput
}

type PlacementGroupPtrOutput

type PlacementGroupPtrOutput struct{ *pulumi.OutputState }

func (PlacementGroupPtrOutput) Elem added in v4.15.0

func (PlacementGroupPtrOutput) ElementType

func (PlacementGroupPtrOutput) ElementType() reflect.Type

func (PlacementGroupPtrOutput) ToPlacementGroupPtrOutput

func (o PlacementGroupPtrOutput) ToPlacementGroupPtrOutput() PlacementGroupPtrOutput

func (PlacementGroupPtrOutput) ToPlacementGroupPtrOutputWithContext

func (o PlacementGroupPtrOutput) ToPlacementGroupPtrOutputWithContext(ctx context.Context) PlacementGroupPtrOutput

type PlacementGroupState

type PlacementGroupState struct {
	// Amazon Resource Name (ARN) of the placement group.
	Arn pulumi.StringPtrInput
	// The name of the placement group.
	Name pulumi.StringPtrInput
	// The ID of the placement group.
	PlacementGroupId pulumi.StringPtrInput
	// The placement strategy. Can be `"cluster"`, `"partition"` or `"spread"`.
	Strategy pulumi.StringPtrInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (PlacementGroupState) ElementType

func (PlacementGroupState) ElementType() reflect.Type

type PlacementStrategy

type PlacementStrategy string

The strategy of the placement group determines how the instances are organized within the group. See https://docs.aws.amazon.com/cli/latest/reference/ec2/create-placement-group.html

func (PlacementStrategy) ElementType

func (PlacementStrategy) ElementType() reflect.Type

func (PlacementStrategy) ToPlacementStrategyOutput added in v4.13.0

func (e PlacementStrategy) ToPlacementStrategyOutput() PlacementStrategyOutput

func (PlacementStrategy) ToPlacementStrategyOutputWithContext added in v4.13.0

func (e PlacementStrategy) ToPlacementStrategyOutputWithContext(ctx context.Context) PlacementStrategyOutput

func (PlacementStrategy) ToPlacementStrategyPtrOutput added in v4.13.0

func (e PlacementStrategy) ToPlacementStrategyPtrOutput() PlacementStrategyPtrOutput

func (PlacementStrategy) ToPlacementStrategyPtrOutputWithContext added in v4.13.0

func (e PlacementStrategy) ToPlacementStrategyPtrOutputWithContext(ctx context.Context) PlacementStrategyPtrOutput

func (PlacementStrategy) ToStringOutput

func (e PlacementStrategy) ToStringOutput() pulumi.StringOutput

func (PlacementStrategy) ToStringOutputWithContext

func (e PlacementStrategy) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (PlacementStrategy) ToStringPtrOutput

func (e PlacementStrategy) ToStringPtrOutput() pulumi.StringPtrOutput

func (PlacementStrategy) ToStringPtrOutputWithContext

func (e PlacementStrategy) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type PlacementStrategyInput added in v4.13.0

type PlacementStrategyInput interface {
	pulumi.Input

	ToPlacementStrategyOutput() PlacementStrategyOutput
	ToPlacementStrategyOutputWithContext(context.Context) PlacementStrategyOutput
}

PlacementStrategyInput is an input type that accepts PlacementStrategyArgs and PlacementStrategyOutput values. You can construct a concrete instance of `PlacementStrategyInput` via:

PlacementStrategyArgs{...}

type PlacementStrategyOutput added in v4.13.0

type PlacementStrategyOutput struct{ *pulumi.OutputState }

func (PlacementStrategyOutput) ElementType added in v4.13.0

func (PlacementStrategyOutput) ElementType() reflect.Type

func (PlacementStrategyOutput) ToPlacementStrategyOutput added in v4.13.0

func (o PlacementStrategyOutput) ToPlacementStrategyOutput() PlacementStrategyOutput

func (PlacementStrategyOutput) ToPlacementStrategyOutputWithContext added in v4.13.0

func (o PlacementStrategyOutput) ToPlacementStrategyOutputWithContext(ctx context.Context) PlacementStrategyOutput

func (PlacementStrategyOutput) ToPlacementStrategyPtrOutput added in v4.13.0

func (o PlacementStrategyOutput) ToPlacementStrategyPtrOutput() PlacementStrategyPtrOutput

func (PlacementStrategyOutput) ToPlacementStrategyPtrOutputWithContext added in v4.13.0

func (o PlacementStrategyOutput) ToPlacementStrategyPtrOutputWithContext(ctx context.Context) PlacementStrategyPtrOutput

func (PlacementStrategyOutput) ToStringOutput added in v4.13.0

func (o PlacementStrategyOutput) ToStringOutput() pulumi.StringOutput

func (PlacementStrategyOutput) ToStringOutputWithContext added in v4.13.0

func (o PlacementStrategyOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (PlacementStrategyOutput) ToStringPtrOutput added in v4.13.0

func (o PlacementStrategyOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (PlacementStrategyOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o PlacementStrategyOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type PlacementStrategyPtrInput added in v4.13.0

type PlacementStrategyPtrInput interface {
	pulumi.Input

	ToPlacementStrategyPtrOutput() PlacementStrategyPtrOutput
	ToPlacementStrategyPtrOutputWithContext(context.Context) PlacementStrategyPtrOutput
}

func PlacementStrategyPtr added in v4.13.0

func PlacementStrategyPtr(v string) PlacementStrategyPtrInput

type PlacementStrategyPtrOutput added in v4.13.0

type PlacementStrategyPtrOutput struct{ *pulumi.OutputState }

func (PlacementStrategyPtrOutput) Elem added in v4.13.0

func (PlacementStrategyPtrOutput) ElementType added in v4.13.0

func (PlacementStrategyPtrOutput) ElementType() reflect.Type

func (PlacementStrategyPtrOutput) ToPlacementStrategyPtrOutput added in v4.13.0

func (o PlacementStrategyPtrOutput) ToPlacementStrategyPtrOutput() PlacementStrategyPtrOutput

func (PlacementStrategyPtrOutput) ToPlacementStrategyPtrOutputWithContext added in v4.13.0

func (o PlacementStrategyPtrOutput) ToPlacementStrategyPtrOutputWithContext(ctx context.Context) PlacementStrategyPtrOutput

func (PlacementStrategyPtrOutput) ToStringPtrOutput added in v4.13.0

func (o PlacementStrategyPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (PlacementStrategyPtrOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o PlacementStrategyPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtocolType

type ProtocolType string

func (ProtocolType) ElementType

func (ProtocolType) ElementType() reflect.Type

func (ProtocolType) ToProtocolTypeOutput added in v4.13.0

func (e ProtocolType) ToProtocolTypeOutput() ProtocolTypeOutput

func (ProtocolType) ToProtocolTypeOutputWithContext added in v4.13.0

func (e ProtocolType) ToProtocolTypeOutputWithContext(ctx context.Context) ProtocolTypeOutput

func (ProtocolType) ToProtocolTypePtrOutput added in v4.13.0

func (e ProtocolType) ToProtocolTypePtrOutput() ProtocolTypePtrOutput

func (ProtocolType) ToProtocolTypePtrOutputWithContext added in v4.13.0

func (e ProtocolType) ToProtocolTypePtrOutputWithContext(ctx context.Context) ProtocolTypePtrOutput

func (ProtocolType) ToStringOutput

func (e ProtocolType) ToStringOutput() pulumi.StringOutput

func (ProtocolType) ToStringOutputWithContext

func (e ProtocolType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtocolType) ToStringPtrOutput

func (e ProtocolType) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtocolType) ToStringPtrOutputWithContext

func (e ProtocolType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtocolTypeInput added in v4.13.0

type ProtocolTypeInput interface {
	pulumi.Input

	ToProtocolTypeOutput() ProtocolTypeOutput
	ToProtocolTypeOutputWithContext(context.Context) ProtocolTypeOutput
}

ProtocolTypeInput is an input type that accepts ProtocolTypeArgs and ProtocolTypeOutput values. You can construct a concrete instance of `ProtocolTypeInput` via:

ProtocolTypeArgs{...}

type ProtocolTypeOutput added in v4.13.0

type ProtocolTypeOutput struct{ *pulumi.OutputState }

func (ProtocolTypeOutput) ElementType added in v4.13.0

func (ProtocolTypeOutput) ElementType() reflect.Type

func (ProtocolTypeOutput) ToProtocolTypeOutput added in v4.13.0

func (o ProtocolTypeOutput) ToProtocolTypeOutput() ProtocolTypeOutput

func (ProtocolTypeOutput) ToProtocolTypeOutputWithContext added in v4.13.0

func (o ProtocolTypeOutput) ToProtocolTypeOutputWithContext(ctx context.Context) ProtocolTypeOutput

func (ProtocolTypeOutput) ToProtocolTypePtrOutput added in v4.13.0

func (o ProtocolTypeOutput) ToProtocolTypePtrOutput() ProtocolTypePtrOutput

func (ProtocolTypeOutput) ToProtocolTypePtrOutputWithContext added in v4.13.0

func (o ProtocolTypeOutput) ToProtocolTypePtrOutputWithContext(ctx context.Context) ProtocolTypePtrOutput

func (ProtocolTypeOutput) ToStringOutput added in v4.13.0

func (o ProtocolTypeOutput) ToStringOutput() pulumi.StringOutput

func (ProtocolTypeOutput) ToStringOutputWithContext added in v4.13.0

func (o ProtocolTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtocolTypeOutput) ToStringPtrOutput added in v4.13.0

func (o ProtocolTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtocolTypeOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o ProtocolTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtocolTypePtrInput added in v4.13.0

type ProtocolTypePtrInput interface {
	pulumi.Input

	ToProtocolTypePtrOutput() ProtocolTypePtrOutput
	ToProtocolTypePtrOutputWithContext(context.Context) ProtocolTypePtrOutput
}

func ProtocolTypePtr added in v4.13.0

func ProtocolTypePtr(v string) ProtocolTypePtrInput

type ProtocolTypePtrOutput added in v4.13.0

type ProtocolTypePtrOutput struct{ *pulumi.OutputState }

func (ProtocolTypePtrOutput) Elem added in v4.13.0

func (ProtocolTypePtrOutput) ElementType added in v4.13.0

func (ProtocolTypePtrOutput) ElementType() reflect.Type

func (ProtocolTypePtrOutput) ToProtocolTypePtrOutput added in v4.13.0

func (o ProtocolTypePtrOutput) ToProtocolTypePtrOutput() ProtocolTypePtrOutput

func (ProtocolTypePtrOutput) ToProtocolTypePtrOutputWithContext added in v4.13.0

func (o ProtocolTypePtrOutput) ToProtocolTypePtrOutputWithContext(ctx context.Context) ProtocolTypePtrOutput

func (ProtocolTypePtrOutput) ToStringPtrOutput added in v4.13.0

func (o ProtocolTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtocolTypePtrOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o ProtocolTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProxyProtocolPolicy

type ProxyProtocolPolicy struct {
	pulumi.CustomResourceState

	// List of instance ports to which the policy
	// should be applied. This can be specified if the protocol is SSL or TCP.
	InstancePorts pulumi.StringArrayOutput `pulumi:"instancePorts"`
	// The load balancer to which the policy
	// should be attached.
	LoadBalancer pulumi.StringOutput `pulumi:"loadBalancer"`
}

Provides a proxy protocol policy, which allows an ELB to carry a client connection information to a backend.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/elb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := elb.NewLoadBalancer(ctx, "lb", &elb.LoadBalancerArgs{
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-east-1a"),
			},
			Listeners: elb.LoadBalancerListenerArray{
				&elb.LoadBalancerListenerArgs{
					InstancePort:     pulumi.Int(25),
					InstanceProtocol: pulumi.String("tcp"),
					LbPort:           pulumi.Int(25),
					LbProtocol:       pulumi.String("tcp"),
				},
				&elb.LoadBalancerListenerArgs{
					InstancePort:     pulumi.Int(587),
					InstanceProtocol: pulumi.String("tcp"),
					LbPort:           pulumi.Int(587),
					LbProtocol:       pulumi.String("tcp"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewProxyProtocolPolicy(ctx, "smtp", &ec2.ProxyProtocolPolicyArgs{
			LoadBalancer: lb.Name,
			InstancePorts: pulumi.StringArray{
				pulumi.String("25"),
				pulumi.String("587"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetProxyProtocolPolicy

func GetProxyProtocolPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProxyProtocolPolicyState, opts ...pulumi.ResourceOption) (*ProxyProtocolPolicy, error)

GetProxyProtocolPolicy gets an existing ProxyProtocolPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProxyProtocolPolicy

func NewProxyProtocolPolicy(ctx *pulumi.Context,
	name string, args *ProxyProtocolPolicyArgs, opts ...pulumi.ResourceOption) (*ProxyProtocolPolicy, error)

NewProxyProtocolPolicy registers a new resource with the given unique name, arguments, and options.

func (*ProxyProtocolPolicy) ElementType

func (*ProxyProtocolPolicy) ElementType() reflect.Type

func (*ProxyProtocolPolicy) ToProxyProtocolPolicyOutput

func (i *ProxyProtocolPolicy) ToProxyProtocolPolicyOutput() ProxyProtocolPolicyOutput

func (*ProxyProtocolPolicy) ToProxyProtocolPolicyOutputWithContext

func (i *ProxyProtocolPolicy) ToProxyProtocolPolicyOutputWithContext(ctx context.Context) ProxyProtocolPolicyOutput

func (*ProxyProtocolPolicy) ToProxyProtocolPolicyPtrOutput

func (i *ProxyProtocolPolicy) ToProxyProtocolPolicyPtrOutput() ProxyProtocolPolicyPtrOutput

func (*ProxyProtocolPolicy) ToProxyProtocolPolicyPtrOutputWithContext

func (i *ProxyProtocolPolicy) ToProxyProtocolPolicyPtrOutputWithContext(ctx context.Context) ProxyProtocolPolicyPtrOutput

type ProxyProtocolPolicyArgs

type ProxyProtocolPolicyArgs struct {
	// List of instance ports to which the policy
	// should be applied. This can be specified if the protocol is SSL or TCP.
	InstancePorts pulumi.StringArrayInput
	// The load balancer to which the policy
	// should be attached.
	LoadBalancer pulumi.StringInput
}

The set of arguments for constructing a ProxyProtocolPolicy resource.

func (ProxyProtocolPolicyArgs) ElementType

func (ProxyProtocolPolicyArgs) ElementType() reflect.Type

type ProxyProtocolPolicyArray

type ProxyProtocolPolicyArray []ProxyProtocolPolicyInput

func (ProxyProtocolPolicyArray) ElementType

func (ProxyProtocolPolicyArray) ElementType() reflect.Type

func (ProxyProtocolPolicyArray) ToProxyProtocolPolicyArrayOutput

func (i ProxyProtocolPolicyArray) ToProxyProtocolPolicyArrayOutput() ProxyProtocolPolicyArrayOutput

func (ProxyProtocolPolicyArray) ToProxyProtocolPolicyArrayOutputWithContext

func (i ProxyProtocolPolicyArray) ToProxyProtocolPolicyArrayOutputWithContext(ctx context.Context) ProxyProtocolPolicyArrayOutput

type ProxyProtocolPolicyArrayInput

type ProxyProtocolPolicyArrayInput interface {
	pulumi.Input

	ToProxyProtocolPolicyArrayOutput() ProxyProtocolPolicyArrayOutput
	ToProxyProtocolPolicyArrayOutputWithContext(context.Context) ProxyProtocolPolicyArrayOutput
}

ProxyProtocolPolicyArrayInput is an input type that accepts ProxyProtocolPolicyArray and ProxyProtocolPolicyArrayOutput values. You can construct a concrete instance of `ProxyProtocolPolicyArrayInput` via:

ProxyProtocolPolicyArray{ ProxyProtocolPolicyArgs{...} }

type ProxyProtocolPolicyArrayOutput

type ProxyProtocolPolicyArrayOutput struct{ *pulumi.OutputState }

func (ProxyProtocolPolicyArrayOutput) ElementType

func (ProxyProtocolPolicyArrayOutput) Index

func (ProxyProtocolPolicyArrayOutput) ToProxyProtocolPolicyArrayOutput

func (o ProxyProtocolPolicyArrayOutput) ToProxyProtocolPolicyArrayOutput() ProxyProtocolPolicyArrayOutput

func (ProxyProtocolPolicyArrayOutput) ToProxyProtocolPolicyArrayOutputWithContext

func (o ProxyProtocolPolicyArrayOutput) ToProxyProtocolPolicyArrayOutputWithContext(ctx context.Context) ProxyProtocolPolicyArrayOutput

type ProxyProtocolPolicyInput

type ProxyProtocolPolicyInput interface {
	pulumi.Input

	ToProxyProtocolPolicyOutput() ProxyProtocolPolicyOutput
	ToProxyProtocolPolicyOutputWithContext(ctx context.Context) ProxyProtocolPolicyOutput
}

type ProxyProtocolPolicyMap

type ProxyProtocolPolicyMap map[string]ProxyProtocolPolicyInput

func (ProxyProtocolPolicyMap) ElementType

func (ProxyProtocolPolicyMap) ElementType() reflect.Type

func (ProxyProtocolPolicyMap) ToProxyProtocolPolicyMapOutput

func (i ProxyProtocolPolicyMap) ToProxyProtocolPolicyMapOutput() ProxyProtocolPolicyMapOutput

func (ProxyProtocolPolicyMap) ToProxyProtocolPolicyMapOutputWithContext

func (i ProxyProtocolPolicyMap) ToProxyProtocolPolicyMapOutputWithContext(ctx context.Context) ProxyProtocolPolicyMapOutput

type ProxyProtocolPolicyMapInput

type ProxyProtocolPolicyMapInput interface {
	pulumi.Input

	ToProxyProtocolPolicyMapOutput() ProxyProtocolPolicyMapOutput
	ToProxyProtocolPolicyMapOutputWithContext(context.Context) ProxyProtocolPolicyMapOutput
}

ProxyProtocolPolicyMapInput is an input type that accepts ProxyProtocolPolicyMap and ProxyProtocolPolicyMapOutput values. You can construct a concrete instance of `ProxyProtocolPolicyMapInput` via:

ProxyProtocolPolicyMap{ "key": ProxyProtocolPolicyArgs{...} }

type ProxyProtocolPolicyMapOutput

type ProxyProtocolPolicyMapOutput struct{ *pulumi.OutputState }

func (ProxyProtocolPolicyMapOutput) ElementType

func (ProxyProtocolPolicyMapOutput) MapIndex

func (ProxyProtocolPolicyMapOutput) ToProxyProtocolPolicyMapOutput

func (o ProxyProtocolPolicyMapOutput) ToProxyProtocolPolicyMapOutput() ProxyProtocolPolicyMapOutput

func (ProxyProtocolPolicyMapOutput) ToProxyProtocolPolicyMapOutputWithContext

func (o ProxyProtocolPolicyMapOutput) ToProxyProtocolPolicyMapOutputWithContext(ctx context.Context) ProxyProtocolPolicyMapOutput

type ProxyProtocolPolicyOutput

type ProxyProtocolPolicyOutput struct{ *pulumi.OutputState }

func (ProxyProtocolPolicyOutput) ElementType

func (ProxyProtocolPolicyOutput) ElementType() reflect.Type

func (ProxyProtocolPolicyOutput) ToProxyProtocolPolicyOutput

func (o ProxyProtocolPolicyOutput) ToProxyProtocolPolicyOutput() ProxyProtocolPolicyOutput

func (ProxyProtocolPolicyOutput) ToProxyProtocolPolicyOutputWithContext

func (o ProxyProtocolPolicyOutput) ToProxyProtocolPolicyOutputWithContext(ctx context.Context) ProxyProtocolPolicyOutput

func (ProxyProtocolPolicyOutput) ToProxyProtocolPolicyPtrOutput

func (o ProxyProtocolPolicyOutput) ToProxyProtocolPolicyPtrOutput() ProxyProtocolPolicyPtrOutput

func (ProxyProtocolPolicyOutput) ToProxyProtocolPolicyPtrOutputWithContext

func (o ProxyProtocolPolicyOutput) ToProxyProtocolPolicyPtrOutputWithContext(ctx context.Context) ProxyProtocolPolicyPtrOutput

type ProxyProtocolPolicyPtrInput

type ProxyProtocolPolicyPtrInput interface {
	pulumi.Input

	ToProxyProtocolPolicyPtrOutput() ProxyProtocolPolicyPtrOutput
	ToProxyProtocolPolicyPtrOutputWithContext(ctx context.Context) ProxyProtocolPolicyPtrOutput
}

type ProxyProtocolPolicyPtrOutput

type ProxyProtocolPolicyPtrOutput struct{ *pulumi.OutputState }

func (ProxyProtocolPolicyPtrOutput) Elem added in v4.15.0

func (ProxyProtocolPolicyPtrOutput) ElementType

func (ProxyProtocolPolicyPtrOutput) ToProxyProtocolPolicyPtrOutput

func (o ProxyProtocolPolicyPtrOutput) ToProxyProtocolPolicyPtrOutput() ProxyProtocolPolicyPtrOutput

func (ProxyProtocolPolicyPtrOutput) ToProxyProtocolPolicyPtrOutputWithContext

func (o ProxyProtocolPolicyPtrOutput) ToProxyProtocolPolicyPtrOutputWithContext(ctx context.Context) ProxyProtocolPolicyPtrOutput

type ProxyProtocolPolicyState

type ProxyProtocolPolicyState struct {
	// List of instance ports to which the policy
	// should be applied. This can be specified if the protocol is SSL or TCP.
	InstancePorts pulumi.StringArrayInput
	// The load balancer to which the policy
	// should be attached.
	LoadBalancer pulumi.StringPtrInput
}

func (ProxyProtocolPolicyState) ElementType

func (ProxyProtocolPolicyState) ElementType() reflect.Type

type Route

type Route struct {
	pulumi.CustomResourceState

	// Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.
	CarrierGatewayId pulumi.StringPtrOutput `pulumi:"carrierGatewayId"`
	// The destination CIDR block.
	DestinationCidrBlock pulumi.StringPtrOutput `pulumi:"destinationCidrBlock"`
	// The destination IPv6 CIDR block.
	DestinationIpv6CidrBlock pulumi.StringPtrOutput `pulumi:"destinationIpv6CidrBlock"`
	// The ID of a managed prefix list destination.
	DestinationPrefixListId pulumi.StringPtrOutput `pulumi:"destinationPrefixListId"`
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringPtrOutput `pulumi:"egressOnlyGatewayId"`
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId pulumi.StringPtrOutput `pulumi:"gatewayId"`
	// Identifier of an EC2 instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The AWS account ID of the owner of the EC2 instance.
	InstanceOwnerId pulumi.StringOutput `pulumi:"instanceOwnerId"`
	// Identifier of a Outpost local gateway.
	LocalGatewayId pulumi.StringPtrOutput `pulumi:"localGatewayId"`
	// Identifier of a VPC NAT gateway.
	NatGatewayId pulumi.StringPtrOutput `pulumi:"natGatewayId"`
	// Identifier of an EC2 network interface.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// How the route was created - `CreateRouteTable`, `CreateRoute` or `EnableVgwRoutePropagation`.
	Origin pulumi.StringOutput `pulumi:"origin"`
	// The ID of the routing table.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The state of the route - `active` or `blackhole`.
	State pulumi.StringOutput `pulumi:"state"`
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrOutput `pulumi:"transitGatewayId"`
	// Identifier of a VPC Endpoint.
	VpcEndpointId pulumi.StringPtrOutput `pulumi:"vpcEndpointId"`
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrOutput `pulumi:"vpcPeeringConnectionId"`
}

## Import

Individual routes can be imported using `ROUTETABLEID_DESTINATION`. For example, import a route in route table `rtb-656C65616E6F72` with an IPv4 destination CIDR of `10.42.0.0/16` like thisconsole

```sh

$ pulumi import aws:ec2/route:Route my_route rtb-656C65616E6F72_10.42.0.0/16

```

Import a route in route table `rtb-656C65616E6F72` with an IPv6 destination CIDR of `2620:0:2d0:200::8/125` similarlyconsole

```sh

$ pulumi import aws:ec2/route:Route my_route rtb-656C65616E6F72_2620:0:2d0:200::8/125

```

Import a route in route table `rtb-656C65616E6F72` with a managed prefix list destination of `pl-0570a1d2d725c16be` similarlyconsole

```sh

$ pulumi import aws:ec2/route:Route my_route rtb-656C65616E6F72_pl-0570a1d2d725c16be

```

func GetRoute

func GetRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteState, opts ...pulumi.ResourceOption) (*Route, error)

GetRoute gets an existing Route resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRoute

func NewRoute(ctx *pulumi.Context,
	name string, args *RouteArgs, opts ...pulumi.ResourceOption) (*Route, error)

NewRoute registers a new resource with the given unique name, arguments, and options.

func (*Route) ElementType

func (*Route) ElementType() reflect.Type

func (*Route) ToRouteOutput

func (i *Route) ToRouteOutput() RouteOutput

func (*Route) ToRouteOutputWithContext

func (i *Route) ToRouteOutputWithContext(ctx context.Context) RouteOutput

func (*Route) ToRoutePtrOutput

func (i *Route) ToRoutePtrOutput() RoutePtrOutput

func (*Route) ToRoutePtrOutputWithContext

func (i *Route) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RouteArgs

type RouteArgs struct {
	// Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.
	CarrierGatewayId pulumi.StringPtrInput
	// The destination CIDR block.
	DestinationCidrBlock pulumi.StringPtrInput
	// The destination IPv6 CIDR block.
	DestinationIpv6CidrBlock pulumi.StringPtrInput
	// The ID of a managed prefix list destination.
	DestinationPrefixListId pulumi.StringPtrInput
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringPtrInput
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId pulumi.StringPtrInput
	// Identifier of an EC2 instance.
	InstanceId pulumi.StringPtrInput
	// Identifier of a Outpost local gateway.
	LocalGatewayId pulumi.StringPtrInput
	// Identifier of a VPC NAT gateway.
	NatGatewayId pulumi.StringPtrInput
	// Identifier of an EC2 network interface.
	NetworkInterfaceId pulumi.StringPtrInput
	// The ID of the routing table.
	RouteTableId pulumi.StringInput
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// Identifier of a VPC Endpoint.
	VpcEndpointId pulumi.StringPtrInput
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrInput
}

The set of arguments for constructing a Route resource.

func (RouteArgs) ElementType

func (RouteArgs) ElementType() reflect.Type

type RouteArray

type RouteArray []RouteInput

func (RouteArray) ElementType

func (RouteArray) ElementType() reflect.Type

func (RouteArray) ToRouteArrayOutput

func (i RouteArray) ToRouteArrayOutput() RouteArrayOutput

func (RouteArray) ToRouteArrayOutputWithContext

func (i RouteArray) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteArrayInput

type RouteArrayInput interface {
	pulumi.Input

	ToRouteArrayOutput() RouteArrayOutput
	ToRouteArrayOutputWithContext(context.Context) RouteArrayOutput
}

RouteArrayInput is an input type that accepts RouteArray and RouteArrayOutput values. You can construct a concrete instance of `RouteArrayInput` via:

RouteArray{ RouteArgs{...} }

type RouteArrayOutput

type RouteArrayOutput struct{ *pulumi.OutputState }

func (RouteArrayOutput) ElementType

func (RouteArrayOutput) ElementType() reflect.Type

func (RouteArrayOutput) Index

func (RouteArrayOutput) ToRouteArrayOutput

func (o RouteArrayOutput) ToRouteArrayOutput() RouteArrayOutput

func (RouteArrayOutput) ToRouteArrayOutputWithContext

func (o RouteArrayOutput) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteInput

type RouteInput interface {
	pulumi.Input

	ToRouteOutput() RouteOutput
	ToRouteOutputWithContext(ctx context.Context) RouteOutput
}

type RouteMap

type RouteMap map[string]RouteInput

func (RouteMap) ElementType

func (RouteMap) ElementType() reflect.Type

func (RouteMap) ToRouteMapOutput

func (i RouteMap) ToRouteMapOutput() RouteMapOutput

func (RouteMap) ToRouteMapOutputWithContext

func (i RouteMap) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteMapInput

type RouteMapInput interface {
	pulumi.Input

	ToRouteMapOutput() RouteMapOutput
	ToRouteMapOutputWithContext(context.Context) RouteMapOutput
}

RouteMapInput is an input type that accepts RouteMap and RouteMapOutput values. You can construct a concrete instance of `RouteMapInput` via:

RouteMap{ "key": RouteArgs{...} }

type RouteMapOutput

type RouteMapOutput struct{ *pulumi.OutputState }

func (RouteMapOutput) ElementType

func (RouteMapOutput) ElementType() reflect.Type

func (RouteMapOutput) MapIndex

func (RouteMapOutput) ToRouteMapOutput

func (o RouteMapOutput) ToRouteMapOutput() RouteMapOutput

func (RouteMapOutput) ToRouteMapOutputWithContext

func (o RouteMapOutput) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteOutput

type RouteOutput struct{ *pulumi.OutputState }

func (RouteOutput) ElementType

func (RouteOutput) ElementType() reflect.Type

func (RouteOutput) ToRouteOutput

func (o RouteOutput) ToRouteOutput() RouteOutput

func (RouteOutput) ToRouteOutputWithContext

func (o RouteOutput) ToRouteOutputWithContext(ctx context.Context) RouteOutput

func (RouteOutput) ToRoutePtrOutput

func (o RouteOutput) ToRoutePtrOutput() RoutePtrOutput

func (RouteOutput) ToRoutePtrOutputWithContext

func (o RouteOutput) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RoutePtrInput

type RoutePtrInput interface {
	pulumi.Input

	ToRoutePtrOutput() RoutePtrOutput
	ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput
}

type RoutePtrOutput

type RoutePtrOutput struct{ *pulumi.OutputState }

func (RoutePtrOutput) Elem added in v4.15.0

func (o RoutePtrOutput) Elem() RouteOutput

func (RoutePtrOutput) ElementType

func (RoutePtrOutput) ElementType() reflect.Type

func (RoutePtrOutput) ToRoutePtrOutput

func (o RoutePtrOutput) ToRoutePtrOutput() RoutePtrOutput

func (RoutePtrOutput) ToRoutePtrOutputWithContext

func (o RoutePtrOutput) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RouteState

type RouteState struct {
	// Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.
	CarrierGatewayId pulumi.StringPtrInput
	// The destination CIDR block.
	DestinationCidrBlock pulumi.StringPtrInput
	// The destination IPv6 CIDR block.
	DestinationIpv6CidrBlock pulumi.StringPtrInput
	// The ID of a managed prefix list destination.
	DestinationPrefixListId pulumi.StringPtrInput
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringPtrInput
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId pulumi.StringPtrInput
	// Identifier of an EC2 instance.
	InstanceId pulumi.StringPtrInput
	// The AWS account ID of the owner of the EC2 instance.
	InstanceOwnerId pulumi.StringPtrInput
	// Identifier of a Outpost local gateway.
	LocalGatewayId pulumi.StringPtrInput
	// Identifier of a VPC NAT gateway.
	NatGatewayId pulumi.StringPtrInput
	// Identifier of an EC2 network interface.
	NetworkInterfaceId pulumi.StringPtrInput
	// How the route was created - `CreateRouteTable`, `CreateRoute` or `EnableVgwRoutePropagation`.
	Origin pulumi.StringPtrInput
	// The ID of the routing table.
	RouteTableId pulumi.StringPtrInput
	// The state of the route - `active` or `blackhole`.
	State pulumi.StringPtrInput
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// Identifier of a VPC Endpoint.
	VpcEndpointId pulumi.StringPtrInput
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrInput
}

func (RouteState) ElementType

func (RouteState) ElementType() reflect.Type

type RouteTable

type RouteTable struct {
	pulumi.CustomResourceState

	// The ARN of the route table.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The ID of the AWS account that owns the route table.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A list of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayOutput `pulumi:"propagatingVgws"`
	// A list of route objects. Their keys are documented below.
	Routes RouteTableRouteArrayOutput `pulumi:"routes"`
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to create a VPC routing table.

> **NOTE on Route Tables and Routes:** This provider currently provides both a standalone Route resource and a Route Table resource with routes defined in-line. At this time you cannot use a Route Table with in-line routes in conjunction with any Route resources. Doing so will cause a conflict of rule settings and will overwrite rules.

> **NOTE on `gatewayId` and `natGatewayId`:** The AWS API is very forgiving with these two attributes and the `ec2.RouteTable` resource can be created with a NAT ID specified as a Gateway ID attribute. This _will_ lead to a permanent diff between your configuration and statefile, as the API returns the correct parameters in the returned route table. If you're experiencing constant diffs in your `ec2.RouteTable` resources, the first thing to check is whether or not you're specifying a NAT ID instead of a Gateway ID, or vice-versa.

> **NOTE on `propagatingVgws` and the `ec2.VpnGatewayRoutePropagation` resource:** If the `propagatingVgws` argument is present, it's not supported to _also_ define route propagations using `ec2.VpnGatewayRoutePropagation`, since this resource will delete any propagating gateways not explicitly listed in `propagatingVgws`. Omit this argument when defining route propagation using the separate resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewRouteTable(ctx, "example", &ec2.RouteTableArgs{
			VpcId: pulumi.Any(aws_vpc.Example.Id),
			Routes: ec2.RouteTableRouteArray{
				&ec2.RouteTableRouteArgs{
					CidrBlock: pulumi.String("10.0.1.0/24"),
					GatewayId: pulumi.Any(aws_internet_gateway.Example.Id),
				},
				&ec2.RouteTableRouteArgs{
					Ipv6CidrBlock:       pulumi.String("::/0"),
					EgressOnlyGatewayId: pulumi.Any(aws_egress_only_internet_gateway.Example.Id),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To subsequently remove all managed routes:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewRouteTable(ctx, "example", &ec2.RouteTableArgs{
			VpcId:  pulumi.Any(aws_vpc.Example.Id),
			Routes: ec2.RouteTableRouteArray{},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Route Tables can be imported using the route table `id`. For example, to import route table `rtb-4e616f6d69`, use this command

```sh

$ pulumi import aws:ec2/routeTable:RouteTable public_rt rtb-4e616f6d69

```

func GetRouteTable

func GetRouteTable(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableState, opts ...pulumi.ResourceOption) (*RouteTable, error)

GetRouteTable gets an existing RouteTable resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteTable

func NewRouteTable(ctx *pulumi.Context,
	name string, args *RouteTableArgs, opts ...pulumi.ResourceOption) (*RouteTable, error)

NewRouteTable registers a new resource with the given unique name, arguments, and options.

func (*RouteTable) ElementType

func (*RouteTable) ElementType() reflect.Type

func (*RouteTable) ToRouteTableOutput

func (i *RouteTable) ToRouteTableOutput() RouteTableOutput

func (*RouteTable) ToRouteTableOutputWithContext

func (i *RouteTable) ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput

func (*RouteTable) ToRouteTablePtrOutput

func (i *RouteTable) ToRouteTablePtrOutput() RouteTablePtrOutput

func (*RouteTable) ToRouteTablePtrOutputWithContext

func (i *RouteTable) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTableArgs

type RouteTableArgs struct {
	// A list of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayInput
	// A list of route objects. Their keys are documented below.
	Routes RouteTableRouteArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a RouteTable resource.

func (RouteTableArgs) ElementType

func (RouteTableArgs) ElementType() reflect.Type

type RouteTableArray

type RouteTableArray []RouteTableInput

func (RouteTableArray) ElementType

func (RouteTableArray) ElementType() reflect.Type

func (RouteTableArray) ToRouteTableArrayOutput

func (i RouteTableArray) ToRouteTableArrayOutput() RouteTableArrayOutput

func (RouteTableArray) ToRouteTableArrayOutputWithContext

func (i RouteTableArray) ToRouteTableArrayOutputWithContext(ctx context.Context) RouteTableArrayOutput

type RouteTableArrayInput

type RouteTableArrayInput interface {
	pulumi.Input

	ToRouteTableArrayOutput() RouteTableArrayOutput
	ToRouteTableArrayOutputWithContext(context.Context) RouteTableArrayOutput
}

RouteTableArrayInput is an input type that accepts RouteTableArray and RouteTableArrayOutput values. You can construct a concrete instance of `RouteTableArrayInput` via:

RouteTableArray{ RouteTableArgs{...} }

type RouteTableArrayOutput

type RouteTableArrayOutput struct{ *pulumi.OutputState }

func (RouteTableArrayOutput) ElementType

func (RouteTableArrayOutput) ElementType() reflect.Type

func (RouteTableArrayOutput) Index

func (RouteTableArrayOutput) ToRouteTableArrayOutput

func (o RouteTableArrayOutput) ToRouteTableArrayOutput() RouteTableArrayOutput

func (RouteTableArrayOutput) ToRouteTableArrayOutputWithContext

func (o RouteTableArrayOutput) ToRouteTableArrayOutputWithContext(ctx context.Context) RouteTableArrayOutput

type RouteTableAssociation

type RouteTableAssociation struct {
	pulumi.CustomResourceState

	// The gateway ID to create an association. Conflicts with `subnetId`.
	GatewayId pulumi.StringPtrOutput `pulumi:"gatewayId"`
	// The ID of the routing table to associate with.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The subnet ID to create an association. Conflicts with `gatewayId`.
	SubnetId pulumi.StringPtrOutput `pulumi:"subnetId"`
}

Provides a resource to create an association between a route table and a subnet or a route table and an internet gateway or virtual private gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewRouteTableAssociation(ctx, "routeTableAssociation", &ec2.RouteTableAssociationArgs{
			SubnetId:     pulumi.Any(aws_subnet.Foo.Id),
			RouteTableId: pulumi.Any(aws_route_table.Bar.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewRouteTableAssociation(ctx, "routeTableAssociation", &ec2.RouteTableAssociationArgs{
			GatewayId:    pulumi.Any(aws_internet_gateway.Foo.Id),
			RouteTableId: pulumi.Any(aws_route_table.Bar.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

is already associated, will result in an error (e.g., `Resource.AlreadyAssociatedthe specified association for route table rtb-4176657279 conflicts with an existing association`) unless you first import the original association. EC2 Route Table Associations can be imported using the associated resource ID and Route Table ID separated by a forward slash (`/`). For example with EC2 Subnets

```sh

$ pulumi import aws:ec2/routeTableAssociation:RouteTableAssociation assoc subnet-6777656e646f6c796e/rtb-656c65616e6f72

```

For example with EC2 Internet Gateways

```sh

$ pulumi import aws:ec2/routeTableAssociation:RouteTableAssociation assoc igw-01b3a60780f8d034a/rtb-656c65616e6f72

```

func GetRouteTableAssociation

func GetRouteTableAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableAssociationState, opts ...pulumi.ResourceOption) (*RouteTableAssociation, error)

GetRouteTableAssociation gets an existing RouteTableAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteTableAssociation

func NewRouteTableAssociation(ctx *pulumi.Context,
	name string, args *RouteTableAssociationArgs, opts ...pulumi.ResourceOption) (*RouteTableAssociation, error)

NewRouteTableAssociation registers a new resource with the given unique name, arguments, and options.

func (*RouteTableAssociation) ElementType

func (*RouteTableAssociation) ElementType() reflect.Type

func (*RouteTableAssociation) ToRouteTableAssociationOutput

func (i *RouteTableAssociation) ToRouteTableAssociationOutput() RouteTableAssociationOutput

func (*RouteTableAssociation) ToRouteTableAssociationOutputWithContext

func (i *RouteTableAssociation) ToRouteTableAssociationOutputWithContext(ctx context.Context) RouteTableAssociationOutput

func (*RouteTableAssociation) ToRouteTableAssociationPtrOutput

func (i *RouteTableAssociation) ToRouteTableAssociationPtrOutput() RouteTableAssociationPtrOutput

func (*RouteTableAssociation) ToRouteTableAssociationPtrOutputWithContext

func (i *RouteTableAssociation) ToRouteTableAssociationPtrOutputWithContext(ctx context.Context) RouteTableAssociationPtrOutput

type RouteTableAssociationArgs

type RouteTableAssociationArgs struct {
	// The gateway ID to create an association. Conflicts with `subnetId`.
	GatewayId pulumi.StringPtrInput
	// The ID of the routing table to associate with.
	RouteTableId pulumi.StringInput
	// The subnet ID to create an association. Conflicts with `gatewayId`.
	SubnetId pulumi.StringPtrInput
}

The set of arguments for constructing a RouteTableAssociation resource.

func (RouteTableAssociationArgs) ElementType

func (RouteTableAssociationArgs) ElementType() reflect.Type

type RouteTableAssociationArray

type RouteTableAssociationArray []RouteTableAssociationInput

func (RouteTableAssociationArray) ElementType

func (RouteTableAssociationArray) ElementType() reflect.Type

func (RouteTableAssociationArray) ToRouteTableAssociationArrayOutput

func (i RouteTableAssociationArray) ToRouteTableAssociationArrayOutput() RouteTableAssociationArrayOutput

func (RouteTableAssociationArray) ToRouteTableAssociationArrayOutputWithContext

func (i RouteTableAssociationArray) ToRouteTableAssociationArrayOutputWithContext(ctx context.Context) RouteTableAssociationArrayOutput

type RouteTableAssociationArrayInput

type RouteTableAssociationArrayInput interface {
	pulumi.Input

	ToRouteTableAssociationArrayOutput() RouteTableAssociationArrayOutput
	ToRouteTableAssociationArrayOutputWithContext(context.Context) RouteTableAssociationArrayOutput
}

RouteTableAssociationArrayInput is an input type that accepts RouteTableAssociationArray and RouteTableAssociationArrayOutput values. You can construct a concrete instance of `RouteTableAssociationArrayInput` via:

RouteTableAssociationArray{ RouteTableAssociationArgs{...} }

type RouteTableAssociationArrayOutput

type RouteTableAssociationArrayOutput struct{ *pulumi.OutputState }

func (RouteTableAssociationArrayOutput) ElementType

func (RouteTableAssociationArrayOutput) Index

func (RouteTableAssociationArrayOutput) ToRouteTableAssociationArrayOutput

func (o RouteTableAssociationArrayOutput) ToRouteTableAssociationArrayOutput() RouteTableAssociationArrayOutput

func (RouteTableAssociationArrayOutput) ToRouteTableAssociationArrayOutputWithContext

func (o RouteTableAssociationArrayOutput) ToRouteTableAssociationArrayOutputWithContext(ctx context.Context) RouteTableAssociationArrayOutput

type RouteTableAssociationInput

type RouteTableAssociationInput interface {
	pulumi.Input

	ToRouteTableAssociationOutput() RouteTableAssociationOutput
	ToRouteTableAssociationOutputWithContext(ctx context.Context) RouteTableAssociationOutput
}

type RouteTableAssociationMap

type RouteTableAssociationMap map[string]RouteTableAssociationInput

func (RouteTableAssociationMap) ElementType

func (RouteTableAssociationMap) ElementType() reflect.Type

func (RouteTableAssociationMap) ToRouteTableAssociationMapOutput

func (i RouteTableAssociationMap) ToRouteTableAssociationMapOutput() RouteTableAssociationMapOutput

func (RouteTableAssociationMap) ToRouteTableAssociationMapOutputWithContext

func (i RouteTableAssociationMap) ToRouteTableAssociationMapOutputWithContext(ctx context.Context) RouteTableAssociationMapOutput

type RouteTableAssociationMapInput

type RouteTableAssociationMapInput interface {
	pulumi.Input

	ToRouteTableAssociationMapOutput() RouteTableAssociationMapOutput
	ToRouteTableAssociationMapOutputWithContext(context.Context) RouteTableAssociationMapOutput
}

RouteTableAssociationMapInput is an input type that accepts RouteTableAssociationMap and RouteTableAssociationMapOutput values. You can construct a concrete instance of `RouteTableAssociationMapInput` via:

RouteTableAssociationMap{ "key": RouteTableAssociationArgs{...} }

type RouteTableAssociationMapOutput

type RouteTableAssociationMapOutput struct{ *pulumi.OutputState }

func (RouteTableAssociationMapOutput) ElementType

func (RouteTableAssociationMapOutput) MapIndex

func (RouteTableAssociationMapOutput) ToRouteTableAssociationMapOutput

func (o RouteTableAssociationMapOutput) ToRouteTableAssociationMapOutput() RouteTableAssociationMapOutput

func (RouteTableAssociationMapOutput) ToRouteTableAssociationMapOutputWithContext

func (o RouteTableAssociationMapOutput) ToRouteTableAssociationMapOutputWithContext(ctx context.Context) RouteTableAssociationMapOutput

type RouteTableAssociationOutput

type RouteTableAssociationOutput struct{ *pulumi.OutputState }

func (RouteTableAssociationOutput) ElementType

func (RouteTableAssociationOutput) ToRouteTableAssociationOutput

func (o RouteTableAssociationOutput) ToRouteTableAssociationOutput() RouteTableAssociationOutput

func (RouteTableAssociationOutput) ToRouteTableAssociationOutputWithContext

func (o RouteTableAssociationOutput) ToRouteTableAssociationOutputWithContext(ctx context.Context) RouteTableAssociationOutput

func (RouteTableAssociationOutput) ToRouteTableAssociationPtrOutput

func (o RouteTableAssociationOutput) ToRouteTableAssociationPtrOutput() RouteTableAssociationPtrOutput

func (RouteTableAssociationOutput) ToRouteTableAssociationPtrOutputWithContext

func (o RouteTableAssociationOutput) ToRouteTableAssociationPtrOutputWithContext(ctx context.Context) RouteTableAssociationPtrOutput

type RouteTableAssociationPtrInput

type RouteTableAssociationPtrInput interface {
	pulumi.Input

	ToRouteTableAssociationPtrOutput() RouteTableAssociationPtrOutput
	ToRouteTableAssociationPtrOutputWithContext(ctx context.Context) RouteTableAssociationPtrOutput
}

type RouteTableAssociationPtrOutput

type RouteTableAssociationPtrOutput struct{ *pulumi.OutputState }

func (RouteTableAssociationPtrOutput) Elem added in v4.15.0

func (RouteTableAssociationPtrOutput) ElementType

func (RouteTableAssociationPtrOutput) ToRouteTableAssociationPtrOutput

func (o RouteTableAssociationPtrOutput) ToRouteTableAssociationPtrOutput() RouteTableAssociationPtrOutput

func (RouteTableAssociationPtrOutput) ToRouteTableAssociationPtrOutputWithContext

func (o RouteTableAssociationPtrOutput) ToRouteTableAssociationPtrOutputWithContext(ctx context.Context) RouteTableAssociationPtrOutput

type RouteTableAssociationState

type RouteTableAssociationState struct {
	// The gateway ID to create an association. Conflicts with `subnetId`.
	GatewayId pulumi.StringPtrInput
	// The ID of the routing table to associate with.
	RouteTableId pulumi.StringPtrInput
	// The subnet ID to create an association. Conflicts with `gatewayId`.
	SubnetId pulumi.StringPtrInput
}

func (RouteTableAssociationState) ElementType

func (RouteTableAssociationState) ElementType() reflect.Type

type RouteTableInput

type RouteTableInput interface {
	pulumi.Input

	ToRouteTableOutput() RouteTableOutput
	ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput
}

type RouteTableMap

type RouteTableMap map[string]RouteTableInput

func (RouteTableMap) ElementType

func (RouteTableMap) ElementType() reflect.Type

func (RouteTableMap) ToRouteTableMapOutput

func (i RouteTableMap) ToRouteTableMapOutput() RouteTableMapOutput

func (RouteTableMap) ToRouteTableMapOutputWithContext

func (i RouteTableMap) ToRouteTableMapOutputWithContext(ctx context.Context) RouteTableMapOutput

type RouteTableMapInput

type RouteTableMapInput interface {
	pulumi.Input

	ToRouteTableMapOutput() RouteTableMapOutput
	ToRouteTableMapOutputWithContext(context.Context) RouteTableMapOutput
}

RouteTableMapInput is an input type that accepts RouteTableMap and RouteTableMapOutput values. You can construct a concrete instance of `RouteTableMapInput` via:

RouteTableMap{ "key": RouteTableArgs{...} }

type RouteTableMapOutput

type RouteTableMapOutput struct{ *pulumi.OutputState }

func (RouteTableMapOutput) ElementType

func (RouteTableMapOutput) ElementType() reflect.Type

func (RouteTableMapOutput) MapIndex

func (RouteTableMapOutput) ToRouteTableMapOutput

func (o RouteTableMapOutput) ToRouteTableMapOutput() RouteTableMapOutput

func (RouteTableMapOutput) ToRouteTableMapOutputWithContext

func (o RouteTableMapOutput) ToRouteTableMapOutputWithContext(ctx context.Context) RouteTableMapOutput

type RouteTableOutput

type RouteTableOutput struct{ *pulumi.OutputState }

func (RouteTableOutput) ElementType

func (RouteTableOutput) ElementType() reflect.Type

func (RouteTableOutput) ToRouteTableOutput

func (o RouteTableOutput) ToRouteTableOutput() RouteTableOutput

func (RouteTableOutput) ToRouteTableOutputWithContext

func (o RouteTableOutput) ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput

func (RouteTableOutput) ToRouteTablePtrOutput

func (o RouteTableOutput) ToRouteTablePtrOutput() RouteTablePtrOutput

func (RouteTableOutput) ToRouteTablePtrOutputWithContext

func (o RouteTableOutput) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTablePtrInput

type RouteTablePtrInput interface {
	pulumi.Input

	ToRouteTablePtrOutput() RouteTablePtrOutput
	ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput
}

type RouteTablePtrOutput

type RouteTablePtrOutput struct{ *pulumi.OutputState }

func (RouteTablePtrOutput) Elem added in v4.15.0

func (RouteTablePtrOutput) ElementType

func (RouteTablePtrOutput) ElementType() reflect.Type

func (RouteTablePtrOutput) ToRouteTablePtrOutput

func (o RouteTablePtrOutput) ToRouteTablePtrOutput() RouteTablePtrOutput

func (RouteTablePtrOutput) ToRouteTablePtrOutputWithContext

func (o RouteTablePtrOutput) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTableRoute

type RouteTableRoute struct {
	// Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.
	CarrierGatewayId *string `pulumi:"carrierGatewayId"`
	// The CIDR block of the route.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId *string `pulumi:"destinationPrefixListId"`
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId *string `pulumi:"egressOnlyGatewayId"`
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId *string `pulumi:"gatewayId"`
	// Identifier of an EC2 instance.
	InstanceId *string `pulumi:"instanceId"`
	// The Ipv6 CIDR block of the route.
	Ipv6CidrBlock *string `pulumi:"ipv6CidrBlock"`
	// Identifier of a Outpost local gateway.
	LocalGatewayId *string `pulumi:"localGatewayId"`
	// Identifier of a VPC NAT gateway.
	NatGatewayId *string `pulumi:"natGatewayId"`
	// Identifier of an EC2 network interface.
	NetworkInterfaceId *string `pulumi:"networkInterfaceId"`
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId *string `pulumi:"transitGatewayId"`
	// Identifier of a VPC Endpoint.
	VpcEndpointId *string `pulumi:"vpcEndpointId"`
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId *string `pulumi:"vpcPeeringConnectionId"`
}

type RouteTableRouteArgs

type RouteTableRouteArgs struct {
	// Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.
	CarrierGatewayId pulumi.StringPtrInput `pulumi:"carrierGatewayId"`
	// The CIDR block of the route.
	CidrBlock pulumi.StringPtrInput `pulumi:"cidrBlock"`
	// The ID of a managed prefix list destination of the route.
	DestinationPrefixListId pulumi.StringPtrInput `pulumi:"destinationPrefixListId"`
	// Identifier of a VPC Egress Only Internet Gateway.
	EgressOnlyGatewayId pulumi.StringPtrInput `pulumi:"egressOnlyGatewayId"`
	// Identifier of a VPC internet gateway or a virtual private gateway.
	GatewayId pulumi.StringPtrInput `pulumi:"gatewayId"`
	// Identifier of an EC2 instance.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// The Ipv6 CIDR block of the route.
	Ipv6CidrBlock pulumi.StringPtrInput `pulumi:"ipv6CidrBlock"`
	// Identifier of a Outpost local gateway.
	LocalGatewayId pulumi.StringPtrInput `pulumi:"localGatewayId"`
	// Identifier of a VPC NAT gateway.
	NatGatewayId pulumi.StringPtrInput `pulumi:"natGatewayId"`
	// Identifier of an EC2 network interface.
	NetworkInterfaceId pulumi.StringPtrInput `pulumi:"networkInterfaceId"`
	// Identifier of an EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput `pulumi:"transitGatewayId"`
	// Identifier of a VPC Endpoint.
	VpcEndpointId pulumi.StringPtrInput `pulumi:"vpcEndpointId"`
	// Identifier of a VPC peering connection.
	VpcPeeringConnectionId pulumi.StringPtrInput `pulumi:"vpcPeeringConnectionId"`
}

func (RouteTableRouteArgs) ElementType

func (RouteTableRouteArgs) ElementType() reflect.Type

func (RouteTableRouteArgs) ToRouteTableRouteOutput

func (i RouteTableRouteArgs) ToRouteTableRouteOutput() RouteTableRouteOutput

func (RouteTableRouteArgs) ToRouteTableRouteOutputWithContext

func (i RouteTableRouteArgs) ToRouteTableRouteOutputWithContext(ctx context.Context) RouteTableRouteOutput

type RouteTableRouteArray

type RouteTableRouteArray []RouteTableRouteInput

func (RouteTableRouteArray) ElementType

func (RouteTableRouteArray) ElementType() reflect.Type

func (RouteTableRouteArray) ToRouteTableRouteArrayOutput

func (i RouteTableRouteArray) ToRouteTableRouteArrayOutput() RouteTableRouteArrayOutput

func (RouteTableRouteArray) ToRouteTableRouteArrayOutputWithContext

func (i RouteTableRouteArray) ToRouteTableRouteArrayOutputWithContext(ctx context.Context) RouteTableRouteArrayOutput

type RouteTableRouteArrayInput

type RouteTableRouteArrayInput interface {
	pulumi.Input

	ToRouteTableRouteArrayOutput() RouteTableRouteArrayOutput
	ToRouteTableRouteArrayOutputWithContext(context.Context) RouteTableRouteArrayOutput
}

RouteTableRouteArrayInput is an input type that accepts RouteTableRouteArray and RouteTableRouteArrayOutput values. You can construct a concrete instance of `RouteTableRouteArrayInput` via:

RouteTableRouteArray{ RouteTableRouteArgs{...} }

type RouteTableRouteArrayOutput

type RouteTableRouteArrayOutput struct{ *pulumi.OutputState }

func (RouteTableRouteArrayOutput) ElementType

func (RouteTableRouteArrayOutput) ElementType() reflect.Type

func (RouteTableRouteArrayOutput) Index

func (RouteTableRouteArrayOutput) ToRouteTableRouteArrayOutput

func (o RouteTableRouteArrayOutput) ToRouteTableRouteArrayOutput() RouteTableRouteArrayOutput

func (RouteTableRouteArrayOutput) ToRouteTableRouteArrayOutputWithContext

func (o RouteTableRouteArrayOutput) ToRouteTableRouteArrayOutputWithContext(ctx context.Context) RouteTableRouteArrayOutput

type RouteTableRouteInput

type RouteTableRouteInput interface {
	pulumi.Input

	ToRouteTableRouteOutput() RouteTableRouteOutput
	ToRouteTableRouteOutputWithContext(context.Context) RouteTableRouteOutput
}

RouteTableRouteInput is an input type that accepts RouteTableRouteArgs and RouteTableRouteOutput values. You can construct a concrete instance of `RouteTableRouteInput` via:

RouteTableRouteArgs{...}

type RouteTableRouteOutput

type RouteTableRouteOutput struct{ *pulumi.OutputState }

func (RouteTableRouteOutput) CarrierGatewayId

func (o RouteTableRouteOutput) CarrierGatewayId() pulumi.StringPtrOutput

Identifier of a carrier gateway. This attribute can only be used when the VPC contains a subnet which is associated with a Wavelength Zone.

func (RouteTableRouteOutput) CidrBlock

The CIDR block of the route.

func (RouteTableRouteOutput) DestinationPrefixListId

func (o RouteTableRouteOutput) DestinationPrefixListId() pulumi.StringPtrOutput

The ID of a managed prefix list destination of the route.

func (RouteTableRouteOutput) EgressOnlyGatewayId

func (o RouteTableRouteOutput) EgressOnlyGatewayId() pulumi.StringPtrOutput

Identifier of a VPC Egress Only Internet Gateway.

func (RouteTableRouteOutput) ElementType

func (RouteTableRouteOutput) ElementType() reflect.Type

func (RouteTableRouteOutput) GatewayId

Identifier of a VPC internet gateway or a virtual private gateway.

func (RouteTableRouteOutput) InstanceId

Identifier of an EC2 instance.

func (RouteTableRouteOutput) Ipv6CidrBlock

func (o RouteTableRouteOutput) Ipv6CidrBlock() pulumi.StringPtrOutput

The Ipv6 CIDR block of the route.

func (RouteTableRouteOutput) LocalGatewayId

func (o RouteTableRouteOutput) LocalGatewayId() pulumi.StringPtrOutput

Identifier of a Outpost local gateway.

func (RouteTableRouteOutput) NatGatewayId

func (o RouteTableRouteOutput) NatGatewayId() pulumi.StringPtrOutput

Identifier of a VPC NAT gateway.

func (RouteTableRouteOutput) NetworkInterfaceId

func (o RouteTableRouteOutput) NetworkInterfaceId() pulumi.StringPtrOutput

Identifier of an EC2 network interface.

func (RouteTableRouteOutput) ToRouteTableRouteOutput

func (o RouteTableRouteOutput) ToRouteTableRouteOutput() RouteTableRouteOutput

func (RouteTableRouteOutput) ToRouteTableRouteOutputWithContext

func (o RouteTableRouteOutput) ToRouteTableRouteOutputWithContext(ctx context.Context) RouteTableRouteOutput

func (RouteTableRouteOutput) TransitGatewayId

func (o RouteTableRouteOutput) TransitGatewayId() pulumi.StringPtrOutput

Identifier of an EC2 Transit Gateway.

func (RouteTableRouteOutput) VpcEndpointId

func (o RouteTableRouteOutput) VpcEndpointId() pulumi.StringPtrOutput

Identifier of a VPC Endpoint.

func (RouteTableRouteOutput) VpcPeeringConnectionId

func (o RouteTableRouteOutput) VpcPeeringConnectionId() pulumi.StringPtrOutput

Identifier of a VPC peering connection.

type RouteTableState

type RouteTableState struct {
	// The ARN of the route table.
	Arn pulumi.StringPtrInput
	// The ID of the AWS account that owns the route table.
	OwnerId pulumi.StringPtrInput
	// A list of virtual gateways for propagation.
	PropagatingVgws pulumi.StringArrayInput
	// A list of route objects. Their keys are documented below.
	Routes RouteTableRouteArrayInput
	// A map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID.
	VpcId pulumi.StringPtrInput
}

func (RouteTableState) ElementType

func (RouteTableState) ElementType() reflect.Type

type SecurityGroup

type SecurityGroup struct {
	pulumi.CustomResourceState

	// ARN of the security group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Description of this egress rule.
	Description pulumi.StringOutput `pulumi:"description"`
	// Configuration block for egress rules. Can be specified multiple times for each egress rule. Each egress block supports fields documented below.
	Egress SecurityGroupEgressArrayOutput `pulumi:"egress"`
	// Configuration block for egress rules. Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.
	Ingress SecurityGroupIngressArrayOutput `pulumi:"ingress"`
	// Name of the security group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// Owner ID.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default `false`.
	RevokeRulesOnDelete pulumi.BoolPtrOutput `pulumi:"revokeRulesOnDelete"`
	// Map of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a security group resource.

> **NOTE on Security Groups and Security Group Rules:** This provider currently provides both a standalone Security Group Rule resource (a single `ingress` or `egress` rule), and a Security Group resource with `ingress` and `egress` rules defined in-line. At this time you cannot use a Security Group with in-line rules in conjunction with any Security Group Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

> **NOTE:** Referencing Security Groups across VPC peering has certain restrictions. More information is available in the [VPC Peering User Guide](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-security-groups.html).

> **NOTE:** Due to [AWS Lambda improved VPC networking changes that began deploying in September 2019](https://aws.amazon.com/blogs/compute/announcing-improved-vpc-networking-for-aws-lambda-functions/), security groups associated with Lambda Functions can take up to 45 minutes to successfully delete.

## Example Usage ### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSecurityGroup(ctx, "allowTls", &ec2.SecurityGroupArgs{
			Description: pulumi.String("Allow TLS inbound traffic"),
			VpcId:       pulumi.Any(aws_vpc.Main.Id),
			Ingress: ec2.SecurityGroupIngressArray{
				&ec2.SecurityGroupIngressArgs{
					Description: pulumi.String("TLS from VPC"),
					FromPort:    pulumi.Int(443),
					ToPort:      pulumi.Int(443),
					Protocol:    pulumi.String("tcp"),
					CidrBlocks: pulumi.StringArray{
						pulumi.Any(aws_vpc.Main.Cidr_block),
					},
					Ipv6CidrBlocks: pulumi.StringArray{
						pulumi.Any(aws_vpc.Main.Ipv6_cidr_block),
					},
				},
			},
			Egress: ec2.SecurityGroupEgressArray{
				&ec2.SecurityGroupEgressArgs{
					FromPort: pulumi.Int(0),
					ToPort:   pulumi.Int(0),
					Protocol: pulumi.String("-1"),
					CidrBlocks: pulumi.StringArray{
						pulumi.String("0.0.0.0/0"),
					},
					Ipv6CidrBlocks: pulumi.StringArray{
						pulumi.String("::/0"),
					},
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("allow_tls"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE on Egress rules:** By default, AWS creates an `ALLOW ALL` egress rule when creating a new Security Group inside of a VPC. When creating a new Security Group inside a VPC, **this provider will remove this default rule**, and require you specifically re-create it if you desire that rule. We feel this leads to fewer surprises in terms of controlling your egress rules. If you desire this rule to be in place, you can use this `egress` block:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSecurityGroup(ctx, "example", &ec2.SecurityGroupArgs{
			Egress: ec2.SecurityGroupEgressArray{
				&ec2.SecurityGroupEgressArgs{
					CidrBlocks: pulumi.StringArray{
						pulumi.String("0.0.0.0/0"),
					},
					FromPort: pulumi.Int(0),
					Ipv6CidrBlocks: pulumi.StringArray{
						pulumi.String("::/0"),
					},
					Protocol: pulumi.String("-1"),
					ToPort:   pulumi.Int(0),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Usage With Prefix List IDs

Prefix Lists are either managed by AWS internally, or created by the customer using a Prefix List resource. Prefix Lists provided by AWS are associated with a prefix list name, or service name, that is linked to a specific region. Prefix list IDs are exported on VPC Endpoints, so you can use this format:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myEndpoint, err := ec2.NewVpcEndpoint(ctx, "myEndpoint", nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewSecurityGroup(ctx, "example", &ec2.SecurityGroupArgs{
			Egress: ec2.SecurityGroupEgressArray{
				&ec2.SecurityGroupEgressArgs{
					FromPort: pulumi.Int(0),
					ToPort:   pulumi.Int(0),
					Protocol: pulumi.String("-1"),
					PrefixListIds: pulumi.StringArray{
						myEndpoint.PrefixListId,
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

You can also find a specific Prefix List using the `ec2.getPrefixList` data source.

## Import

Security Groups can be imported using the `security group id`, e.g.

```sh

$ pulumi import aws:ec2/securityGroup:SecurityGroup elb_sg sg-903004f8

```

func GetSecurityGroup

func GetSecurityGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupState, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

GetSecurityGroup gets an existing SecurityGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSecurityGroup

func NewSecurityGroup(ctx *pulumi.Context,
	name string, args *SecurityGroupArgs, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

NewSecurityGroup registers a new resource with the given unique name, arguments, and options.

func (*SecurityGroup) ElementType

func (*SecurityGroup) ElementType() reflect.Type

func (*SecurityGroup) ToSecurityGroupOutput

func (i *SecurityGroup) ToSecurityGroupOutput() SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupOutputWithContext

func (i *SecurityGroup) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupPtrOutput

func (i *SecurityGroup) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (*SecurityGroup) ToSecurityGroupPtrOutputWithContext

func (i *SecurityGroup) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupArgs

type SecurityGroupArgs struct {
	// Description of this egress rule.
	Description pulumi.StringPtrInput
	// Configuration block for egress rules. Can be specified multiple times for each egress rule. Each egress block supports fields documented below.
	Egress SecurityGroupEgressArrayInput
	// Configuration block for egress rules. Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.
	Ingress SecurityGroupIngressArrayInput
	// Name of the security group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default `false`.
	RevokeRulesOnDelete pulumi.BoolPtrInput
	// Map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// VPC ID.
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a SecurityGroup resource.

func (SecurityGroupArgs) ElementType

func (SecurityGroupArgs) ElementType() reflect.Type

type SecurityGroupArray

type SecurityGroupArray []SecurityGroupInput

func (SecurityGroupArray) ElementType

func (SecurityGroupArray) ElementType() reflect.Type

func (SecurityGroupArray) ToSecurityGroupArrayOutput

func (i SecurityGroupArray) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArray) ToSecurityGroupArrayOutputWithContext

func (i SecurityGroupArray) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupArrayInput

type SecurityGroupArrayInput interface {
	pulumi.Input

	ToSecurityGroupArrayOutput() SecurityGroupArrayOutput
	ToSecurityGroupArrayOutputWithContext(context.Context) SecurityGroupArrayOutput
}

SecurityGroupArrayInput is an input type that accepts SecurityGroupArray and SecurityGroupArrayOutput values. You can construct a concrete instance of `SecurityGroupArrayInput` via:

SecurityGroupArray{ SecurityGroupArgs{...} }

type SecurityGroupArrayOutput

type SecurityGroupArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupArrayOutput) ElementType

func (SecurityGroupArrayOutput) ElementType() reflect.Type

func (SecurityGroupArrayOutput) Index

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutput

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupEgress

type SecurityGroupEgress struct {
	// List of CIDR blocks.
	CidrBlocks []string `pulumi:"cidrBlocks"`
	// Description of this egress rule.
	Description *string `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort int `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"`
	// List of Prefix List IDs.
	PrefixListIds []string `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0.  The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.
	Protocol string `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self *bool `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort int `pulumi:"toPort"`
}

type SecurityGroupEgressArgs

type SecurityGroupEgressArgs struct {
	// List of CIDR blocks.
	CidrBlocks pulumi.StringArrayInput `pulumi:"cidrBlocks"`
	// Description of this egress rule.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks pulumi.StringArrayInput `pulumi:"ipv6CidrBlocks"`
	// List of Prefix List IDs.
	PrefixListIds pulumi.StringArrayInput `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0.  The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self pulumi.BoolPtrInput `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (SecurityGroupEgressArgs) ElementType

func (SecurityGroupEgressArgs) ElementType() reflect.Type

func (SecurityGroupEgressArgs) ToSecurityGroupEgressOutput

func (i SecurityGroupEgressArgs) ToSecurityGroupEgressOutput() SecurityGroupEgressOutput

func (SecurityGroupEgressArgs) ToSecurityGroupEgressOutputWithContext

func (i SecurityGroupEgressArgs) ToSecurityGroupEgressOutputWithContext(ctx context.Context) SecurityGroupEgressOutput

type SecurityGroupEgressArray

type SecurityGroupEgressArray []SecurityGroupEgressInput

func (SecurityGroupEgressArray) ElementType

func (SecurityGroupEgressArray) ElementType() reflect.Type

func (SecurityGroupEgressArray) ToSecurityGroupEgressArrayOutput

func (i SecurityGroupEgressArray) ToSecurityGroupEgressArrayOutput() SecurityGroupEgressArrayOutput

func (SecurityGroupEgressArray) ToSecurityGroupEgressArrayOutputWithContext

func (i SecurityGroupEgressArray) ToSecurityGroupEgressArrayOutputWithContext(ctx context.Context) SecurityGroupEgressArrayOutput

type SecurityGroupEgressArrayInput

type SecurityGroupEgressArrayInput interface {
	pulumi.Input

	ToSecurityGroupEgressArrayOutput() SecurityGroupEgressArrayOutput
	ToSecurityGroupEgressArrayOutputWithContext(context.Context) SecurityGroupEgressArrayOutput
}

SecurityGroupEgressArrayInput is an input type that accepts SecurityGroupEgressArray and SecurityGroupEgressArrayOutput values. You can construct a concrete instance of `SecurityGroupEgressArrayInput` via:

SecurityGroupEgressArray{ SecurityGroupEgressArgs{...} }

type SecurityGroupEgressArrayOutput

type SecurityGroupEgressArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressArrayOutput) ElementType

func (SecurityGroupEgressArrayOutput) Index

func (SecurityGroupEgressArrayOutput) ToSecurityGroupEgressArrayOutput

func (o SecurityGroupEgressArrayOutput) ToSecurityGroupEgressArrayOutput() SecurityGroupEgressArrayOutput

func (SecurityGroupEgressArrayOutput) ToSecurityGroupEgressArrayOutputWithContext

func (o SecurityGroupEgressArrayOutput) ToSecurityGroupEgressArrayOutputWithContext(ctx context.Context) SecurityGroupEgressArrayOutput

type SecurityGroupEgressInput

type SecurityGroupEgressInput interface {
	pulumi.Input

	ToSecurityGroupEgressOutput() SecurityGroupEgressOutput
	ToSecurityGroupEgressOutputWithContext(context.Context) SecurityGroupEgressOutput
}

SecurityGroupEgressInput is an input type that accepts SecurityGroupEgressArgs and SecurityGroupEgressOutput values. You can construct a concrete instance of `SecurityGroupEgressInput` via:

SecurityGroupEgressArgs{...}

type SecurityGroupEgressOutput

type SecurityGroupEgressOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressOutput) CidrBlocks

List of CIDR blocks.

func (SecurityGroupEgressOutput) Description

Description of this egress rule.

func (SecurityGroupEgressOutput) ElementType

func (SecurityGroupEgressOutput) ElementType() reflect.Type

func (SecurityGroupEgressOutput) FromPort

Start port (or ICMP type number if protocol is `icmp`)

func (SecurityGroupEgressOutput) Ipv6CidrBlocks

List of IPv6 CIDR blocks.

func (SecurityGroupEgressOutput) PrefixListIds

List of Prefix List IDs.

func (SecurityGroupEgressOutput) Protocol

Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0. The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.

func (SecurityGroupEgressOutput) SecurityGroups

List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.

func (SecurityGroupEgressOutput) Self

Whether the security group itself will be added as a source to this egress rule.

func (SecurityGroupEgressOutput) ToPort

End range port (or ICMP code if protocol is `icmp`).

func (SecurityGroupEgressOutput) ToSecurityGroupEgressOutput

func (o SecurityGroupEgressOutput) ToSecurityGroupEgressOutput() SecurityGroupEgressOutput

func (SecurityGroupEgressOutput) ToSecurityGroupEgressOutputWithContext

func (o SecurityGroupEgressOutput) ToSecurityGroupEgressOutputWithContext(ctx context.Context) SecurityGroupEgressOutput

type SecurityGroupIngress

type SecurityGroupIngress struct {
	// List of CIDR blocks.
	CidrBlocks []string `pulumi:"cidrBlocks"`
	// Description of this egress rule.
	Description *string `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort int `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks []string `pulumi:"ipv6CidrBlocks"`
	// List of Prefix List IDs.
	PrefixListIds []string `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0.  The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.
	Protocol string `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self *bool `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort int `pulumi:"toPort"`
}

type SecurityGroupIngressArgs

type SecurityGroupIngressArgs struct {
	// List of CIDR blocks.
	CidrBlocks pulumi.StringArrayInput `pulumi:"cidrBlocks"`
	// Description of this egress rule.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Start port (or ICMP type number if protocol is `icmp`)
	FromPort pulumi.IntInput `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks.
	Ipv6CidrBlocks pulumi.StringArrayInput `pulumi:"ipv6CidrBlocks"`
	// List of Prefix List IDs.
	PrefixListIds pulumi.StringArrayInput `pulumi:"prefixListIds"`
	// Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0.  The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// Whether the security group itself will be added as a source to this egress rule.
	Self pulumi.BoolPtrInput `pulumi:"self"`
	// End range port (or ICMP code if protocol is `icmp`).
	ToPort pulumi.IntInput `pulumi:"toPort"`
}

func (SecurityGroupIngressArgs) ElementType

func (SecurityGroupIngressArgs) ElementType() reflect.Type

func (SecurityGroupIngressArgs) ToSecurityGroupIngressOutput

func (i SecurityGroupIngressArgs) ToSecurityGroupIngressOutput() SecurityGroupIngressOutput

func (SecurityGroupIngressArgs) ToSecurityGroupIngressOutputWithContext

func (i SecurityGroupIngressArgs) ToSecurityGroupIngressOutputWithContext(ctx context.Context) SecurityGroupIngressOutput

type SecurityGroupIngressArray

type SecurityGroupIngressArray []SecurityGroupIngressInput

func (SecurityGroupIngressArray) ElementType

func (SecurityGroupIngressArray) ElementType() reflect.Type

func (SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutput

func (i SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput

func (SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutputWithContext

func (i SecurityGroupIngressArray) ToSecurityGroupIngressArrayOutputWithContext(ctx context.Context) SecurityGroupIngressArrayOutput

type SecurityGroupIngressArrayInput

type SecurityGroupIngressArrayInput interface {
	pulumi.Input

	ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput
	ToSecurityGroupIngressArrayOutputWithContext(context.Context) SecurityGroupIngressArrayOutput
}

SecurityGroupIngressArrayInput is an input type that accepts SecurityGroupIngressArray and SecurityGroupIngressArrayOutput values. You can construct a concrete instance of `SecurityGroupIngressArrayInput` via:

SecurityGroupIngressArray{ SecurityGroupIngressArgs{...} }

type SecurityGroupIngressArrayOutput

type SecurityGroupIngressArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressArrayOutput) ElementType

func (SecurityGroupIngressArrayOutput) Index

func (SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutput

func (o SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutput() SecurityGroupIngressArrayOutput

func (SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutputWithContext

func (o SecurityGroupIngressArrayOutput) ToSecurityGroupIngressArrayOutputWithContext(ctx context.Context) SecurityGroupIngressArrayOutput

type SecurityGroupIngressInput

type SecurityGroupIngressInput interface {
	pulumi.Input

	ToSecurityGroupIngressOutput() SecurityGroupIngressOutput
	ToSecurityGroupIngressOutputWithContext(context.Context) SecurityGroupIngressOutput
}

SecurityGroupIngressInput is an input type that accepts SecurityGroupIngressArgs and SecurityGroupIngressOutput values. You can construct a concrete instance of `SecurityGroupIngressInput` via:

SecurityGroupIngressArgs{...}

type SecurityGroupIngressOutput

type SecurityGroupIngressOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressOutput) CidrBlocks

List of CIDR blocks.

func (SecurityGroupIngressOutput) Description

Description of this egress rule.

func (SecurityGroupIngressOutput) ElementType

func (SecurityGroupIngressOutput) ElementType() reflect.Type

func (SecurityGroupIngressOutput) FromPort

Start port (or ICMP type number if protocol is `icmp`)

func (SecurityGroupIngressOutput) Ipv6CidrBlocks

List of IPv6 CIDR blocks.

func (SecurityGroupIngressOutput) PrefixListIds

List of Prefix List IDs.

func (SecurityGroupIngressOutput) Protocol

Protocol. If you select a protocol of `-1` (semantically equivalent to `all`, which is not a valid value here), you must specify a `fromPort` and `toPort` equal to 0. The supported values are defined in the `IpProtocol` argument in the [IpPermission](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IpPermission.html) API reference. This argument is normalized to a lowercase value.

func (SecurityGroupIngressOutput) SecurityGroups

List of security group Group Names if using EC2-Classic, or Group IDs if using a VPC.

func (SecurityGroupIngressOutput) Self

Whether the security group itself will be added as a source to this egress rule.

func (SecurityGroupIngressOutput) ToPort

End range port (or ICMP code if protocol is `icmp`).

func (SecurityGroupIngressOutput) ToSecurityGroupIngressOutput

func (o SecurityGroupIngressOutput) ToSecurityGroupIngressOutput() SecurityGroupIngressOutput

func (SecurityGroupIngressOutput) ToSecurityGroupIngressOutputWithContext

func (o SecurityGroupIngressOutput) ToSecurityGroupIngressOutputWithContext(ctx context.Context) SecurityGroupIngressOutput

type SecurityGroupInput

type SecurityGroupInput interface {
	pulumi.Input

	ToSecurityGroupOutput() SecurityGroupOutput
	ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput
}

type SecurityGroupMap

type SecurityGroupMap map[string]SecurityGroupInput

func (SecurityGroupMap) ElementType

func (SecurityGroupMap) ElementType() reflect.Type

func (SecurityGroupMap) ToSecurityGroupMapOutput

func (i SecurityGroupMap) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMap) ToSecurityGroupMapOutputWithContext

func (i SecurityGroupMap) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupMapInput

type SecurityGroupMapInput interface {
	pulumi.Input

	ToSecurityGroupMapOutput() SecurityGroupMapOutput
	ToSecurityGroupMapOutputWithContext(context.Context) SecurityGroupMapOutput
}

SecurityGroupMapInput is an input type that accepts SecurityGroupMap and SecurityGroupMapOutput values. You can construct a concrete instance of `SecurityGroupMapInput` via:

SecurityGroupMap{ "key": SecurityGroupArgs{...} }

type SecurityGroupMapOutput

type SecurityGroupMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupMapOutput) ElementType

func (SecurityGroupMapOutput) ElementType() reflect.Type

func (SecurityGroupMapOutput) MapIndex

func (SecurityGroupMapOutput) ToSecurityGroupMapOutput

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupOutput

type SecurityGroupOutput struct{ *pulumi.OutputState }

func (SecurityGroupOutput) ElementType

func (SecurityGroupOutput) ElementType() reflect.Type

func (SecurityGroupOutput) ToSecurityGroupOutput

func (o SecurityGroupOutput) ToSecurityGroupOutput() SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupOutputWithContext

func (o SecurityGroupOutput) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupPtrOutput

func (o SecurityGroupOutput) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (SecurityGroupOutput) ToSecurityGroupPtrOutputWithContext

func (o SecurityGroupOutput) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupPtrInput

type SecurityGroupPtrInput interface {
	pulumi.Input

	ToSecurityGroupPtrOutput() SecurityGroupPtrOutput
	ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput
}

type SecurityGroupPtrOutput

type SecurityGroupPtrOutput struct{ *pulumi.OutputState }

func (SecurityGroupPtrOutput) Elem added in v4.15.0

func (SecurityGroupPtrOutput) ElementType

func (SecurityGroupPtrOutput) ElementType() reflect.Type

func (SecurityGroupPtrOutput) ToSecurityGroupPtrOutput

func (o SecurityGroupPtrOutput) ToSecurityGroupPtrOutput() SecurityGroupPtrOutput

func (SecurityGroupPtrOutput) ToSecurityGroupPtrOutputWithContext

func (o SecurityGroupPtrOutput) ToSecurityGroupPtrOutputWithContext(ctx context.Context) SecurityGroupPtrOutput

type SecurityGroupRule

type SecurityGroupRule struct {
	pulumi.CustomResourceState

	// List of CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	CidrBlocks pulumi.StringArrayOutput `pulumi:"cidrBlocks"`
	// Description of the rule.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Start port (or ICMP type number if protocol is "icmp" or "icmpv6").
	FromPort pulumi.IntOutput `pulumi:"fromPort"`
	// List of IPv6 CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	Ipv6CidrBlocks pulumi.StringArrayOutput `pulumi:"ipv6CidrBlocks"`
	// List of Prefix List IDs.
	PrefixListIds pulumi.StringArrayOutput `pulumi:"prefixListIds"`
	// Protocol. If not icmp, icmpv6, tcp, udp, or all use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// Security group to apply this rule to.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// Whether the security group itself will be added as a source to this ingress rule. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `sourceSecurityGroupId`.
	Self pulumi.BoolPtrOutput `pulumi:"self"`
	// Security group id to allow access to/from, depending on the `type`. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `self`.
	SourceSecurityGroupId pulumi.StringOutput `pulumi:"sourceSecurityGroupId"`
	// End port (or ICMP code if protocol is "icmp").
	ToPort pulumi.IntOutput `pulumi:"toPort"`
	// Type of rule being created. Valid options are `ingress` (inbound)
	// or `egress` (outbound).
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a security group rule resource. Represents a single `ingress` or `egress` group rule, which can be added to external Security Groups.

> **NOTE on Security Groups and Security Group Rules:** This provider currently provides both a standalone Security Group Rule resource (a single `ingress` or `egress` rule), and a Security Group resource with `ingress` and `egress` rules defined in-line. At this time you cannot use a Security Group with in-line rules in conjunction with any Security Group Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

> **NOTE:** Setting `protocol = "all"` or `protocol = -1` with `fromPort` and `toPort` will result in the EC2 API creating a security group rule with all ports open. This API behavior cannot be controlled by this provider and may generate warnings in the future.

> **NOTE:** Referencing Security Groups across VPC peering has certain restrictions. More information is available in the [VPC Peering User Guide](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-security-groups.html).

## Example Usage

Basic usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSecurityGroupRule(ctx, "example", &ec2.SecurityGroupRuleArgs{
			Type:     pulumi.String("ingress"),
			FromPort: pulumi.Int(0),
			ToPort:   pulumi.Int(65535),
			Protocol: pulumi.String("tcp"),
			CidrBlocks: pulumi.StringArray{
				pulumi.Any(aws_vpc.Example.Cidr_block),
			},
			Ipv6CidrBlocks: pulumi.StringArray{
				pulumi.Any(aws_vpc.Example.Ipv6_cidr_block),
			},
			SecurityGroupId: pulumi.String("sg-123456"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Usage With Prefix List IDs

Prefix Lists are either managed by AWS internally, or created by the customer using a Managed Prefix List resource. Prefix Lists provided by AWS are associated with a prefix list name, or service name, that is linked to a specific region.

Prefix list IDs are exported on VPC Endpoints, so you can use this format:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myEndpoint, err := ec2.NewVpcEndpoint(ctx, "myEndpoint", nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewSecurityGroupRule(ctx, "allowAll", &ec2.SecurityGroupRuleArgs{
			Type:     pulumi.String("egress"),
			ToPort:   pulumi.Int(0),
			Protocol: pulumi.String("-1"),
			PrefixListIds: pulumi.StringArray{
				myEndpoint.PrefixListId,
			},
			FromPort:        pulumi.Int(0),
			SecurityGroupId: pulumi.String("sg-123456"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

You can also find a specific Prefix List using the `ec2.getPrefixList` data source.

## Import

Security Group Rules can be imported using the `security_group_id`, `type`, `protocol`, `from_port`, `to_port`, and source(s)/destination(s) (e.g. `cidr_block`) separated by underscores (`_`). All parts are required. Not all rule permissions (e.g., not all of a rule's CIDR blocks) need to be imported for this provider to manage rule permissions. However, importing some of a rule's permissions but not others, and then making changes to the rule will result in the creation of an additional rule to capture the updated permissions. Rule permissions that were not imported are left intact in the original rule. Import an ingress rule in security group `sg-6e616f6d69` for TCP port 8000 with an IPv4 destination CIDR of `10.0.3.0/24`console

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule ingress sg-6e616f6d69_ingress_tcp_8000_8000_10.0.3.0/24

```

Import a rule with various IPv4 and IPv6 source CIDR blocksconsole

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule ingress sg-4973616163_ingress_tcp_100_121_10.1.0.0/16_2001:db8::/48_10.2.0.0/16_2002:db8::/48

```

Import a rule, applicable to all ports, with a protocol other than TCP/UDP/ICMP/ALL, e.g., Multicast Transport Protocol (MTP), using the IANA protocol number, e.g., 92. console

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule ingress sg-6777656e646f6c796e_ingress_92_0_65536_10.0.3.0/24_10.0.4.0/24

```

Import an egress rule with a prefix list ID destinationconsole

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule egress sg-62726f6479_egress_tcp_8000_8000_pl-6469726b

```

Import a rule applicable to all protocols and ports with a security group sourceconsole

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule ingress_rule sg-7472697374616e_ingress_all_0_65536_sg-6176657279

```

Import a rule that has itself and an IPv6 CIDR block as sourcesconsole

```sh

$ pulumi import aws:ec2/securityGroupRule:SecurityGroupRule rule_name sg-656c65616e6f72_ingress_tcp_80_80_self_2001:db8::/48

```

func GetSecurityGroupRule

func GetSecurityGroupRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupRule, error)

GetSecurityGroupRule gets an existing SecurityGroupRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSecurityGroupRule

func NewSecurityGroupRule(ctx *pulumi.Context,
	name string, args *SecurityGroupRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupRule, error)

NewSecurityGroupRule registers a new resource with the given unique name, arguments, and options.

func (*SecurityGroupRule) ElementType

func (*SecurityGroupRule) ElementType() reflect.Type

func (*SecurityGroupRule) ToSecurityGroupRuleOutput

func (i *SecurityGroupRule) ToSecurityGroupRuleOutput() SecurityGroupRuleOutput

func (*SecurityGroupRule) ToSecurityGroupRuleOutputWithContext

func (i *SecurityGroupRule) ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput

func (*SecurityGroupRule) ToSecurityGroupRulePtrOutput

func (i *SecurityGroupRule) ToSecurityGroupRulePtrOutput() SecurityGroupRulePtrOutput

func (*SecurityGroupRule) ToSecurityGroupRulePtrOutputWithContext

func (i *SecurityGroupRule) ToSecurityGroupRulePtrOutputWithContext(ctx context.Context) SecurityGroupRulePtrOutput

type SecurityGroupRuleArgs

type SecurityGroupRuleArgs struct {
	// List of CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	CidrBlocks pulumi.StringArrayInput
	// Description of the rule.
	Description pulumi.StringPtrInput
	// Start port (or ICMP type number if protocol is "icmp" or "icmpv6").
	FromPort pulumi.IntInput
	// List of IPv6 CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	Ipv6CidrBlocks pulumi.StringArrayInput
	// List of Prefix List IDs.
	PrefixListIds pulumi.StringArrayInput
	// Protocol. If not icmp, icmpv6, tcp, udp, or all use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)
	Protocol pulumi.StringInput
	// Security group to apply this rule to.
	SecurityGroupId pulumi.StringInput
	// Whether the security group itself will be added as a source to this ingress rule. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `sourceSecurityGroupId`.
	Self pulumi.BoolPtrInput
	// Security group id to allow access to/from, depending on the `type`. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `self`.
	SourceSecurityGroupId pulumi.StringPtrInput
	// End port (or ICMP code if protocol is "icmp").
	ToPort pulumi.IntInput
	// Type of rule being created. Valid options are `ingress` (inbound)
	// or `egress` (outbound).
	Type pulumi.StringInput
}

The set of arguments for constructing a SecurityGroupRule resource.

func (SecurityGroupRuleArgs) ElementType

func (SecurityGroupRuleArgs) ElementType() reflect.Type

type SecurityGroupRuleArray

type SecurityGroupRuleArray []SecurityGroupRuleInput

func (SecurityGroupRuleArray) ElementType

func (SecurityGroupRuleArray) ElementType() reflect.Type

func (SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutput

func (i SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput

func (SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutputWithContext

func (i SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupRuleArrayOutput

type SecurityGroupRuleArrayInput

type SecurityGroupRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput
	ToSecurityGroupRuleArrayOutputWithContext(context.Context) SecurityGroupRuleArrayOutput
}

SecurityGroupRuleArrayInput is an input type that accepts SecurityGroupRuleArray and SecurityGroupRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupRuleArrayInput` via:

SecurityGroupRuleArray{ SecurityGroupRuleArgs{...} }

type SecurityGroupRuleArrayOutput

type SecurityGroupRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleArrayOutput) ElementType

func (SecurityGroupRuleArrayOutput) Index

func (SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutput

func (o SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput

func (SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutputWithContext

func (o SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupRuleArrayOutput

type SecurityGroupRuleInput

type SecurityGroupRuleInput interface {
	pulumi.Input

	ToSecurityGroupRuleOutput() SecurityGroupRuleOutput
	ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput
}

type SecurityGroupRuleMap

type SecurityGroupRuleMap map[string]SecurityGroupRuleInput

func (SecurityGroupRuleMap) ElementType

func (SecurityGroupRuleMap) ElementType() reflect.Type

func (SecurityGroupRuleMap) ToSecurityGroupRuleMapOutput

func (i SecurityGroupRuleMap) ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput

func (SecurityGroupRuleMap) ToSecurityGroupRuleMapOutputWithContext

func (i SecurityGroupRuleMap) ToSecurityGroupRuleMapOutputWithContext(ctx context.Context) SecurityGroupRuleMapOutput

type SecurityGroupRuleMapInput

type SecurityGroupRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput
	ToSecurityGroupRuleMapOutputWithContext(context.Context) SecurityGroupRuleMapOutput
}

SecurityGroupRuleMapInput is an input type that accepts SecurityGroupRuleMap and SecurityGroupRuleMapOutput values. You can construct a concrete instance of `SecurityGroupRuleMapInput` via:

SecurityGroupRuleMap{ "key": SecurityGroupRuleArgs{...} }

type SecurityGroupRuleMapOutput

type SecurityGroupRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleMapOutput) ElementType

func (SecurityGroupRuleMapOutput) ElementType() reflect.Type

func (SecurityGroupRuleMapOutput) MapIndex

func (SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutput

func (o SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput

func (SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutputWithContext

func (o SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutputWithContext(ctx context.Context) SecurityGroupRuleMapOutput

type SecurityGroupRuleOutput

type SecurityGroupRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleOutput) ElementType

func (SecurityGroupRuleOutput) ElementType() reflect.Type

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutput

func (o SecurityGroupRuleOutput) ToSecurityGroupRuleOutput() SecurityGroupRuleOutput

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutputWithContext

func (o SecurityGroupRuleOutput) ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput

func (SecurityGroupRuleOutput) ToSecurityGroupRulePtrOutput

func (o SecurityGroupRuleOutput) ToSecurityGroupRulePtrOutput() SecurityGroupRulePtrOutput

func (SecurityGroupRuleOutput) ToSecurityGroupRulePtrOutputWithContext

func (o SecurityGroupRuleOutput) ToSecurityGroupRulePtrOutputWithContext(ctx context.Context) SecurityGroupRulePtrOutput

type SecurityGroupRulePtrInput

type SecurityGroupRulePtrInput interface {
	pulumi.Input

	ToSecurityGroupRulePtrOutput() SecurityGroupRulePtrOutput
	ToSecurityGroupRulePtrOutputWithContext(ctx context.Context) SecurityGroupRulePtrOutput
}

type SecurityGroupRulePtrOutput

type SecurityGroupRulePtrOutput struct{ *pulumi.OutputState }

func (SecurityGroupRulePtrOutput) Elem added in v4.15.0

func (SecurityGroupRulePtrOutput) ElementType

func (SecurityGroupRulePtrOutput) ElementType() reflect.Type

func (SecurityGroupRulePtrOutput) ToSecurityGroupRulePtrOutput

func (o SecurityGroupRulePtrOutput) ToSecurityGroupRulePtrOutput() SecurityGroupRulePtrOutput

func (SecurityGroupRulePtrOutput) ToSecurityGroupRulePtrOutputWithContext

func (o SecurityGroupRulePtrOutput) ToSecurityGroupRulePtrOutputWithContext(ctx context.Context) SecurityGroupRulePtrOutput

type SecurityGroupRuleState

type SecurityGroupRuleState struct {
	// List of CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	CidrBlocks pulumi.StringArrayInput
	// Description of the rule.
	Description pulumi.StringPtrInput
	// Start port (or ICMP type number if protocol is "icmp" or "icmpv6").
	FromPort pulumi.IntPtrInput
	// List of IPv6 CIDR blocks. Cannot be specified with `sourceSecurityGroupId` or `self`.
	Ipv6CidrBlocks pulumi.StringArrayInput
	// List of Prefix List IDs.
	PrefixListIds pulumi.StringArrayInput
	// Protocol. If not icmp, icmpv6, tcp, udp, or all use the [protocol number](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)
	Protocol pulumi.StringPtrInput
	// Security group to apply this rule to.
	SecurityGroupId pulumi.StringPtrInput
	// Whether the security group itself will be added as a source to this ingress rule. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `sourceSecurityGroupId`.
	Self pulumi.BoolPtrInput
	// Security group id to allow access to/from, depending on the `type`. Cannot be specified with `cidrBlocks`, `ipv6CidrBlocks`, or `self`.
	SourceSecurityGroupId pulumi.StringPtrInput
	// End port (or ICMP code if protocol is "icmp").
	ToPort pulumi.IntPtrInput
	// Type of rule being created. Valid options are `ingress` (inbound)
	// or `egress` (outbound).
	Type pulumi.StringPtrInput
}

func (SecurityGroupRuleState) ElementType

func (SecurityGroupRuleState) ElementType() reflect.Type

type SecurityGroupState

type SecurityGroupState struct {
	// ARN of the security group.
	Arn pulumi.StringPtrInput
	// Description of this egress rule.
	Description pulumi.StringPtrInput
	// Configuration block for egress rules. Can be specified multiple times for each egress rule. Each egress block supports fields documented below.
	Egress SecurityGroupEgressArrayInput
	// Configuration block for egress rules. Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.
	Ingress SecurityGroupIngressArrayInput
	// Name of the security group. If omitted, this provider will assign a random, unique name.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// Owner ID.
	OwnerId pulumi.StringPtrInput
	// Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default `false`.
	RevokeRulesOnDelete pulumi.BoolPtrInput
	// Map of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// VPC ID.
	VpcId pulumi.StringPtrInput
}

func (SecurityGroupState) ElementType

func (SecurityGroupState) ElementType() reflect.Type

type SnapshotCreateVolumePermission

type SnapshotCreateVolumePermission struct {
	pulumi.CustomResourceState

	// An AWS Account ID to add create volume permissions
	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// A snapshot ID
	SnapshotId pulumi.StringOutput `pulumi:"snapshotId"`
}

Adds permission to create volumes off of a given EBS Snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Size:             pulumi.Int(40),
		})
		if err != nil {
			return err
		}
		exampleSnapshot, err := ebs.NewSnapshot(ctx, "exampleSnapshot", &ebs.SnapshotArgs{
			VolumeId: example.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewSnapshotCreateVolumePermission(ctx, "examplePerm", &ec2.SnapshotCreateVolumePermissionArgs{
			SnapshotId: exampleSnapshot.ID(),
			AccountId:  pulumi.String("12345678"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSnapshotCreateVolumePermission

func GetSnapshotCreateVolumePermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotCreateVolumePermissionState, opts ...pulumi.ResourceOption) (*SnapshotCreateVolumePermission, error)

GetSnapshotCreateVolumePermission gets an existing SnapshotCreateVolumePermission resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSnapshotCreateVolumePermission

func NewSnapshotCreateVolumePermission(ctx *pulumi.Context,
	name string, args *SnapshotCreateVolumePermissionArgs, opts ...pulumi.ResourceOption) (*SnapshotCreateVolumePermission, error)

NewSnapshotCreateVolumePermission registers a new resource with the given unique name, arguments, and options.

func (*SnapshotCreateVolumePermission) ElementType

func (*SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionOutput

func (i *SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionOutput() SnapshotCreateVolumePermissionOutput

func (*SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionOutputWithContext

func (i *SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionOutput

func (*SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionPtrOutput

func (i *SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionPtrOutput() SnapshotCreateVolumePermissionPtrOutput

func (*SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionPtrOutputWithContext

func (i *SnapshotCreateVolumePermission) ToSnapshotCreateVolumePermissionPtrOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionPtrOutput

type SnapshotCreateVolumePermissionArgs

type SnapshotCreateVolumePermissionArgs struct {
	// An AWS Account ID to add create volume permissions
	AccountId pulumi.StringInput
	// A snapshot ID
	SnapshotId pulumi.StringInput
}

The set of arguments for constructing a SnapshotCreateVolumePermission resource.

func (SnapshotCreateVolumePermissionArgs) ElementType

type SnapshotCreateVolumePermissionArray

type SnapshotCreateVolumePermissionArray []SnapshotCreateVolumePermissionInput

func (SnapshotCreateVolumePermissionArray) ElementType

func (SnapshotCreateVolumePermissionArray) ToSnapshotCreateVolumePermissionArrayOutput

func (i SnapshotCreateVolumePermissionArray) ToSnapshotCreateVolumePermissionArrayOutput() SnapshotCreateVolumePermissionArrayOutput

func (SnapshotCreateVolumePermissionArray) ToSnapshotCreateVolumePermissionArrayOutputWithContext

func (i SnapshotCreateVolumePermissionArray) ToSnapshotCreateVolumePermissionArrayOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionArrayOutput

type SnapshotCreateVolumePermissionArrayInput

type SnapshotCreateVolumePermissionArrayInput interface {
	pulumi.Input

	ToSnapshotCreateVolumePermissionArrayOutput() SnapshotCreateVolumePermissionArrayOutput
	ToSnapshotCreateVolumePermissionArrayOutputWithContext(context.Context) SnapshotCreateVolumePermissionArrayOutput
}

SnapshotCreateVolumePermissionArrayInput is an input type that accepts SnapshotCreateVolumePermissionArray and SnapshotCreateVolumePermissionArrayOutput values. You can construct a concrete instance of `SnapshotCreateVolumePermissionArrayInput` via:

SnapshotCreateVolumePermissionArray{ SnapshotCreateVolumePermissionArgs{...} }

type SnapshotCreateVolumePermissionArrayOutput

type SnapshotCreateVolumePermissionArrayOutput struct{ *pulumi.OutputState }

func (SnapshotCreateVolumePermissionArrayOutput) ElementType

func (SnapshotCreateVolumePermissionArrayOutput) Index

func (SnapshotCreateVolumePermissionArrayOutput) ToSnapshotCreateVolumePermissionArrayOutput

func (o SnapshotCreateVolumePermissionArrayOutput) ToSnapshotCreateVolumePermissionArrayOutput() SnapshotCreateVolumePermissionArrayOutput

func (SnapshotCreateVolumePermissionArrayOutput) ToSnapshotCreateVolumePermissionArrayOutputWithContext

func (o SnapshotCreateVolumePermissionArrayOutput) ToSnapshotCreateVolumePermissionArrayOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionArrayOutput

type SnapshotCreateVolumePermissionInput

type SnapshotCreateVolumePermissionInput interface {
	pulumi.Input

	ToSnapshotCreateVolumePermissionOutput() SnapshotCreateVolumePermissionOutput
	ToSnapshotCreateVolumePermissionOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionOutput
}

type SnapshotCreateVolumePermissionMap

type SnapshotCreateVolumePermissionMap map[string]SnapshotCreateVolumePermissionInput

func (SnapshotCreateVolumePermissionMap) ElementType

func (SnapshotCreateVolumePermissionMap) ToSnapshotCreateVolumePermissionMapOutput

func (i SnapshotCreateVolumePermissionMap) ToSnapshotCreateVolumePermissionMapOutput() SnapshotCreateVolumePermissionMapOutput

func (SnapshotCreateVolumePermissionMap) ToSnapshotCreateVolumePermissionMapOutputWithContext

func (i SnapshotCreateVolumePermissionMap) ToSnapshotCreateVolumePermissionMapOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionMapOutput

type SnapshotCreateVolumePermissionMapInput

type SnapshotCreateVolumePermissionMapInput interface {
	pulumi.Input

	ToSnapshotCreateVolumePermissionMapOutput() SnapshotCreateVolumePermissionMapOutput
	ToSnapshotCreateVolumePermissionMapOutputWithContext(context.Context) SnapshotCreateVolumePermissionMapOutput
}

SnapshotCreateVolumePermissionMapInput is an input type that accepts SnapshotCreateVolumePermissionMap and SnapshotCreateVolumePermissionMapOutput values. You can construct a concrete instance of `SnapshotCreateVolumePermissionMapInput` via:

SnapshotCreateVolumePermissionMap{ "key": SnapshotCreateVolumePermissionArgs{...} }

type SnapshotCreateVolumePermissionMapOutput

type SnapshotCreateVolumePermissionMapOutput struct{ *pulumi.OutputState }

func (SnapshotCreateVolumePermissionMapOutput) ElementType

func (SnapshotCreateVolumePermissionMapOutput) MapIndex

func (SnapshotCreateVolumePermissionMapOutput) ToSnapshotCreateVolumePermissionMapOutput

func (o SnapshotCreateVolumePermissionMapOutput) ToSnapshotCreateVolumePermissionMapOutput() SnapshotCreateVolumePermissionMapOutput

func (SnapshotCreateVolumePermissionMapOutput) ToSnapshotCreateVolumePermissionMapOutputWithContext

func (o SnapshotCreateVolumePermissionMapOutput) ToSnapshotCreateVolumePermissionMapOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionMapOutput

type SnapshotCreateVolumePermissionOutput

type SnapshotCreateVolumePermissionOutput struct{ *pulumi.OutputState }

func (SnapshotCreateVolumePermissionOutput) ElementType

func (SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionOutput

func (o SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionOutput() SnapshotCreateVolumePermissionOutput

func (SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionOutputWithContext

func (o SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionOutput

func (SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionPtrOutput

func (o SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionPtrOutput() SnapshotCreateVolumePermissionPtrOutput

func (SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionPtrOutputWithContext

func (o SnapshotCreateVolumePermissionOutput) ToSnapshotCreateVolumePermissionPtrOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionPtrOutput

type SnapshotCreateVolumePermissionPtrInput

type SnapshotCreateVolumePermissionPtrInput interface {
	pulumi.Input

	ToSnapshotCreateVolumePermissionPtrOutput() SnapshotCreateVolumePermissionPtrOutput
	ToSnapshotCreateVolumePermissionPtrOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionPtrOutput
}

type SnapshotCreateVolumePermissionPtrOutput

type SnapshotCreateVolumePermissionPtrOutput struct{ *pulumi.OutputState }

func (SnapshotCreateVolumePermissionPtrOutput) Elem added in v4.15.0

func (SnapshotCreateVolumePermissionPtrOutput) ElementType

func (SnapshotCreateVolumePermissionPtrOutput) ToSnapshotCreateVolumePermissionPtrOutput

func (o SnapshotCreateVolumePermissionPtrOutput) ToSnapshotCreateVolumePermissionPtrOutput() SnapshotCreateVolumePermissionPtrOutput

func (SnapshotCreateVolumePermissionPtrOutput) ToSnapshotCreateVolumePermissionPtrOutputWithContext

func (o SnapshotCreateVolumePermissionPtrOutput) ToSnapshotCreateVolumePermissionPtrOutputWithContext(ctx context.Context) SnapshotCreateVolumePermissionPtrOutput

type SnapshotCreateVolumePermissionState

type SnapshotCreateVolumePermissionState struct {
	// An AWS Account ID to add create volume permissions
	AccountId pulumi.StringPtrInput
	// A snapshot ID
	SnapshotId pulumi.StringPtrInput
}

func (SnapshotCreateVolumePermissionState) ElementType

type SpotDatafeedSubscription

type SpotDatafeedSubscription struct {
	pulumi.CustomResourceState

	// The Amazon S3 bucket in which to store the Spot instance data feed.
	Bucket pulumi.StringOutput `pulumi:"bucket"`
	// Path of folder inside bucket to place spot pricing data.
	Prefix pulumi.StringPtrOutput `pulumi:"prefix"`
}

> **Note:** There is only a single subscription allowed per account.

To help you understand the charges for your Spot instances, Amazon EC2 provides a data feed that describes your Spot instance usage and pricing. This data feed is sent to an Amazon S3 bucket that you specify when you subscribe to the data feed.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultBucket, err := s3.NewBucket(ctx, "defaultBucket", nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewSpotDatafeedSubscription(ctx, "defaultSpotDatafeedSubscription", &ec2.SpotDatafeedSubscriptionArgs{
			Bucket: defaultBucket.Bucket,
			Prefix: pulumi.String("my_subdirectory"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

A Spot Datafeed Subscription can be imported using the word `spot-datafeed-subscription`, e.g.

```sh

$ pulumi import aws:ec2/spotDatafeedSubscription:SpotDatafeedSubscription mysubscription spot-datafeed-subscription

```

func GetSpotDatafeedSubscription

func GetSpotDatafeedSubscription(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SpotDatafeedSubscriptionState, opts ...pulumi.ResourceOption) (*SpotDatafeedSubscription, error)

GetSpotDatafeedSubscription gets an existing SpotDatafeedSubscription resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSpotDatafeedSubscription

func NewSpotDatafeedSubscription(ctx *pulumi.Context,
	name string, args *SpotDatafeedSubscriptionArgs, opts ...pulumi.ResourceOption) (*SpotDatafeedSubscription, error)

NewSpotDatafeedSubscription registers a new resource with the given unique name, arguments, and options.

func (*SpotDatafeedSubscription) ElementType

func (*SpotDatafeedSubscription) ElementType() reflect.Type

func (*SpotDatafeedSubscription) ToSpotDatafeedSubscriptionOutput

func (i *SpotDatafeedSubscription) ToSpotDatafeedSubscriptionOutput() SpotDatafeedSubscriptionOutput

func (*SpotDatafeedSubscription) ToSpotDatafeedSubscriptionOutputWithContext

func (i *SpotDatafeedSubscription) ToSpotDatafeedSubscriptionOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionOutput

func (*SpotDatafeedSubscription) ToSpotDatafeedSubscriptionPtrOutput

func (i *SpotDatafeedSubscription) ToSpotDatafeedSubscriptionPtrOutput() SpotDatafeedSubscriptionPtrOutput

func (*SpotDatafeedSubscription) ToSpotDatafeedSubscriptionPtrOutputWithContext

func (i *SpotDatafeedSubscription) ToSpotDatafeedSubscriptionPtrOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionPtrOutput

type SpotDatafeedSubscriptionArgs

type SpotDatafeedSubscriptionArgs struct {
	// The Amazon S3 bucket in which to store the Spot instance data feed.
	Bucket pulumi.StringInput
	// Path of folder inside bucket to place spot pricing data.
	Prefix pulumi.StringPtrInput
}

The set of arguments for constructing a SpotDatafeedSubscription resource.

func (SpotDatafeedSubscriptionArgs) ElementType

type SpotDatafeedSubscriptionArray

type SpotDatafeedSubscriptionArray []SpotDatafeedSubscriptionInput

func (SpotDatafeedSubscriptionArray) ElementType

func (SpotDatafeedSubscriptionArray) ToSpotDatafeedSubscriptionArrayOutput

func (i SpotDatafeedSubscriptionArray) ToSpotDatafeedSubscriptionArrayOutput() SpotDatafeedSubscriptionArrayOutput

func (SpotDatafeedSubscriptionArray) ToSpotDatafeedSubscriptionArrayOutputWithContext

func (i SpotDatafeedSubscriptionArray) ToSpotDatafeedSubscriptionArrayOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionArrayOutput

type SpotDatafeedSubscriptionArrayInput

type SpotDatafeedSubscriptionArrayInput interface {
	pulumi.Input

	ToSpotDatafeedSubscriptionArrayOutput() SpotDatafeedSubscriptionArrayOutput
	ToSpotDatafeedSubscriptionArrayOutputWithContext(context.Context) SpotDatafeedSubscriptionArrayOutput
}

SpotDatafeedSubscriptionArrayInput is an input type that accepts SpotDatafeedSubscriptionArray and SpotDatafeedSubscriptionArrayOutput values. You can construct a concrete instance of `SpotDatafeedSubscriptionArrayInput` via:

SpotDatafeedSubscriptionArray{ SpotDatafeedSubscriptionArgs{...} }

type SpotDatafeedSubscriptionArrayOutput

type SpotDatafeedSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (SpotDatafeedSubscriptionArrayOutput) ElementType

func (SpotDatafeedSubscriptionArrayOutput) Index

func (SpotDatafeedSubscriptionArrayOutput) ToSpotDatafeedSubscriptionArrayOutput

func (o SpotDatafeedSubscriptionArrayOutput) ToSpotDatafeedSubscriptionArrayOutput() SpotDatafeedSubscriptionArrayOutput

func (SpotDatafeedSubscriptionArrayOutput) ToSpotDatafeedSubscriptionArrayOutputWithContext

func (o SpotDatafeedSubscriptionArrayOutput) ToSpotDatafeedSubscriptionArrayOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionArrayOutput

type SpotDatafeedSubscriptionInput

type SpotDatafeedSubscriptionInput interface {
	pulumi.Input

	ToSpotDatafeedSubscriptionOutput() SpotDatafeedSubscriptionOutput
	ToSpotDatafeedSubscriptionOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionOutput
}

type SpotDatafeedSubscriptionMap

type SpotDatafeedSubscriptionMap map[string]SpotDatafeedSubscriptionInput

func (SpotDatafeedSubscriptionMap) ElementType

func (SpotDatafeedSubscriptionMap) ToSpotDatafeedSubscriptionMapOutput

func (i SpotDatafeedSubscriptionMap) ToSpotDatafeedSubscriptionMapOutput() SpotDatafeedSubscriptionMapOutput

func (SpotDatafeedSubscriptionMap) ToSpotDatafeedSubscriptionMapOutputWithContext

func (i SpotDatafeedSubscriptionMap) ToSpotDatafeedSubscriptionMapOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionMapOutput

type SpotDatafeedSubscriptionMapInput

type SpotDatafeedSubscriptionMapInput interface {
	pulumi.Input

	ToSpotDatafeedSubscriptionMapOutput() SpotDatafeedSubscriptionMapOutput
	ToSpotDatafeedSubscriptionMapOutputWithContext(context.Context) SpotDatafeedSubscriptionMapOutput
}

SpotDatafeedSubscriptionMapInput is an input type that accepts SpotDatafeedSubscriptionMap and SpotDatafeedSubscriptionMapOutput values. You can construct a concrete instance of `SpotDatafeedSubscriptionMapInput` via:

SpotDatafeedSubscriptionMap{ "key": SpotDatafeedSubscriptionArgs{...} }

type SpotDatafeedSubscriptionMapOutput

type SpotDatafeedSubscriptionMapOutput struct{ *pulumi.OutputState }

func (SpotDatafeedSubscriptionMapOutput) ElementType

func (SpotDatafeedSubscriptionMapOutput) MapIndex

func (SpotDatafeedSubscriptionMapOutput) ToSpotDatafeedSubscriptionMapOutput

func (o SpotDatafeedSubscriptionMapOutput) ToSpotDatafeedSubscriptionMapOutput() SpotDatafeedSubscriptionMapOutput

func (SpotDatafeedSubscriptionMapOutput) ToSpotDatafeedSubscriptionMapOutputWithContext

func (o SpotDatafeedSubscriptionMapOutput) ToSpotDatafeedSubscriptionMapOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionMapOutput

type SpotDatafeedSubscriptionOutput

type SpotDatafeedSubscriptionOutput struct{ *pulumi.OutputState }

func (SpotDatafeedSubscriptionOutput) ElementType

func (SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionOutput

func (o SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionOutput() SpotDatafeedSubscriptionOutput

func (SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionOutputWithContext

func (o SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionOutput

func (SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionPtrOutput

func (o SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionPtrOutput() SpotDatafeedSubscriptionPtrOutput

func (SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionPtrOutputWithContext

func (o SpotDatafeedSubscriptionOutput) ToSpotDatafeedSubscriptionPtrOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionPtrOutput

type SpotDatafeedSubscriptionPtrInput

type SpotDatafeedSubscriptionPtrInput interface {
	pulumi.Input

	ToSpotDatafeedSubscriptionPtrOutput() SpotDatafeedSubscriptionPtrOutput
	ToSpotDatafeedSubscriptionPtrOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionPtrOutput
}

type SpotDatafeedSubscriptionPtrOutput

type SpotDatafeedSubscriptionPtrOutput struct{ *pulumi.OutputState }

func (SpotDatafeedSubscriptionPtrOutput) Elem added in v4.15.0

func (SpotDatafeedSubscriptionPtrOutput) ElementType

func (SpotDatafeedSubscriptionPtrOutput) ToSpotDatafeedSubscriptionPtrOutput

func (o SpotDatafeedSubscriptionPtrOutput) ToSpotDatafeedSubscriptionPtrOutput() SpotDatafeedSubscriptionPtrOutput

func (SpotDatafeedSubscriptionPtrOutput) ToSpotDatafeedSubscriptionPtrOutputWithContext

func (o SpotDatafeedSubscriptionPtrOutput) ToSpotDatafeedSubscriptionPtrOutputWithContext(ctx context.Context) SpotDatafeedSubscriptionPtrOutput

type SpotDatafeedSubscriptionState

type SpotDatafeedSubscriptionState struct {
	// The Amazon S3 bucket in which to store the Spot instance data feed.
	Bucket pulumi.StringPtrInput
	// Path of folder inside bucket to place spot pricing data.
	Prefix pulumi.StringPtrInput
}

func (SpotDatafeedSubscriptionState) ElementType

type SpotFleetRequest

type SpotFleetRequest struct {
	pulumi.CustomResourceState

	// Indicates how to allocate the target capacity across
	// the Spot pools specified by the Spot fleet request. The default is
	// `lowestPrice`.
	AllocationStrategy pulumi.StringPtrOutput `pulumi:"allocationStrategy"`
	ClientToken        pulumi.StringOutput    `pulumi:"clientToken"`
	// Indicates whether running Spot
	// instances should be terminated if the target capacity of the Spot fleet
	// request is decreased below the current size of the Spot fleet.
	ExcessCapacityTerminationPolicy pulumi.StringPtrOutput `pulumi:"excessCapacityTerminationPolicy"`
	// The type of fleet request. Indicates whether the Spot Fleet only requests the target
	// capacity or also attempts to maintain it. Default is `maintain`.
	FleetType pulumi.StringPtrOutput `pulumi:"fleetType"`
	// Grants the Spot fleet permission to terminate
	// Spot instances on your behalf when you cancel its Spot fleet request using
	// CancelSpotFleetRequests or when the Spot fleet request expires, if you set
	// terminateInstancesWithExpiration.
	IamFleetRole pulumi.StringOutput `pulumi:"iamFleetRole"`
	// Indicates whether a Spot
	// instance stops or terminates when it is interrupted. Default is
	// `terminate`.
	InstanceInterruptionBehaviour pulumi.StringPtrOutput `pulumi:"instanceInterruptionBehaviour"`
	// The number of Spot pools across which to allocate your target Spot capacity.
	// Valid only when `allocationStrategy` is set to `lowestPrice`. Spot Fleet selects
	// the cheapest Spot pools and evenly allocates your target Spot capacity across
	// the number of Spot pools that you specify.
	InstancePoolsToUseCount pulumi.IntPtrOutput `pulumi:"instancePoolsToUseCount"`
	// Used to define the launch configuration of the
	// spot-fleet request. Can be specified multiple times to define different bids
	// across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchSpecifications SpotFleetRequestLaunchSpecificationArrayOutput `pulumi:"launchSpecifications"`
	// Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchTemplateConfigs SpotFleetRequestLaunchTemplateConfigArrayOutput `pulumi:"launchTemplateConfigs"`
	// A list of elastic load balancer names to add to the Spot fleet.
	LoadBalancers pulumi.StringArrayOutput `pulumi:"loadBalancers"`
	// The order of the launch template overrides to use in fulfilling On-Demand capacity. the possible values are: `lowestPrice` and `prioritized`. the default is `lowestPrice`.
	OnDemandAllocationStrategy pulumi.StringPtrOutput `pulumi:"onDemandAllocationStrategy"`
	// The maximum amount per hour for On-Demand Instances that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
	OnDemandMaxTotalPrice pulumi.StringPtrOutput `pulumi:"onDemandMaxTotalPrice"`
	// The number of On-Demand units to request. If the request type is `maintain`, you can specify a target capacity of 0 and add capacity later.
	OnDemandTargetCapacity pulumi.IntPtrOutput `pulumi:"onDemandTargetCapacity"`
	// Indicates whether Spot fleet should replace unhealthy instances. Default `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrOutput `pulumi:"replaceUnhealthyInstances"`
	// Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
	SpotMaintenanceStrategies SpotFleetRequestSpotMaintenanceStrategiesPtrOutput `pulumi:"spotMaintenanceStrategies"`
	// The maximum spot bid for this override request.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// The state of the Spot fleet request.
	SpotRequestState pulumi.StringOutput `pulumi:"spotRequestState"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The number of units to request. You can choose to set the
	// target capacity in terms of instances or a performance characteristic that is
	// important to your application workload, such as vCPUs, memory, or I/O.
	TargetCapacity pulumi.IntOutput `pulumi:"targetCapacity"`
	// A list of `alb.TargetGroup` ARNs, for use with Application Load Balancing.
	TargetGroupArns pulumi.StringArrayOutput `pulumi:"targetGroupArns"`
	// Indicates whether running Spot
	// instances should be terminated when the Spot fleet request expires.
	TerminateInstancesWithExpiration pulumi.BoolPtrOutput `pulumi:"terminateInstancesWithExpiration"`
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringPtrOutput `pulumi:"validFrom"`
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
	ValidUntil pulumi.StringPtrOutput `pulumi:"validUntil"`
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrOutput `pulumi:"waitForFulfillment"`
}

Provides an EC2 Spot Fleet Request resource. This allows a fleet of Spot instances to be requested on the Spot market.

## Example Usage ### Using launch specifications

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSpotFleetRequest(ctx, "cheapCompute", &ec2.SpotFleetRequestArgs{
			IamFleetRole:       pulumi.String("arn:aws:iam::12345678:role/spot-fleet"),
			SpotPrice:          pulumi.String("0.03"),
			AllocationStrategy: pulumi.String("diversified"),
			TargetCapacity:     pulumi.Int(6),
			ValidUntil:         pulumi.String("2019-11-04T20:44:20Z"),
			LaunchSpecifications: ec2.SpotFleetRequestLaunchSpecificationArray{
				&ec2.SpotFleetRequestLaunchSpecificationArgs{
					InstanceType:          pulumi.String("m4.10xlarge"),
					Ami:                   pulumi.String("ami-1234"),
					SpotPrice:             pulumi.String("2.793"),
					PlacementTenancy:      pulumi.String("dedicated"),
					IamInstanceProfileArn: pulumi.Any(aws_iam_instance_profile.Example.Arn),
				},
				&ec2.SpotFleetRequestLaunchSpecificationArgs{
					InstanceType:          pulumi.String("m4.4xlarge"),
					Ami:                   pulumi.String("ami-5678"),
					KeyName:               pulumi.String("my-key"),
					SpotPrice:             pulumi.String("1.117"),
					IamInstanceProfileArn: pulumi.Any(aws_iam_instance_profile.Example.Arn),
					AvailabilityZone:      pulumi.String("us-west-1a"),
					SubnetId:              pulumi.String("subnet-1234"),
					WeightedCapacity:      pulumi.String("35"),
					RootBlockDevices: ec2.SpotFleetRequestLaunchSpecificationRootBlockDeviceArray{
						&ec2.SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs{
							VolumeSize: pulumi.Int(300),
							VolumeType: pulumi.String("gp2"),
						},
					},
					Tags: pulumi.StringMap{
						"Name": pulumi.String("spot-fleet-example"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Using launch templates

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooLaunchTemplate, err := ec2.NewLaunchTemplate(ctx, "fooLaunchTemplate", &ec2.LaunchTemplateArgs{
			ImageId:      pulumi.String("ami-516b9131"),
			InstanceType: pulumi.String("m1.small"),
			KeyName:      pulumi.String("some-key"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewSpotFleetRequest(ctx, "fooSpotFleetRequest", &ec2.SpotFleetRequestArgs{
			IamFleetRole:   pulumi.String("arn:aws:iam::12345678:role/spot-fleet"),
			SpotPrice:      pulumi.String("0.005"),
			TargetCapacity: pulumi.Int(2),
			ValidUntil:     pulumi.String("2019-11-04T20:44:20Z"),
			LaunchTemplateConfigs: ec2.SpotFleetRequestLaunchTemplateConfigArray{
				&ec2.SpotFleetRequestLaunchTemplateConfigArgs{
					LaunchTemplateSpecification: &ec2.SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs{
						Id:      fooLaunchTemplate.ID(),
						Version: fooLaunchTemplate.LatestVersion,
					},
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			aws_iam_policy_attachment.Test - attach,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE:** This provider does not support the functionality where multiple `subnetId` or `availabilityZone` parameters can be specified in the same launch configuration block. If you want to specify multiple values, then separate launch configuration blocks should be used: ### Using multiple launch specifications

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSpotFleetRequest(ctx, "foo", &ec2.SpotFleetRequestArgs{
			IamFleetRole: pulumi.String("arn:aws:iam::12345678:role/spot-fleet"),
			LaunchSpecifications: ec2.SpotFleetRequestLaunchSpecificationArray{
				&ec2.SpotFleetRequestLaunchSpecificationArgs{
					Ami:              pulumi.String("ami-d06a90b0"),
					AvailabilityZone: pulumi.String("us-west-2a"),
					InstanceType:     pulumi.String("m1.small"),
					KeyName:          pulumi.String("my-key"),
				},
				&ec2.SpotFleetRequestLaunchSpecificationArgs{
					Ami:              pulumi.String("ami-d06a90b0"),
					AvailabilityZone: pulumi.String("us-west-2a"),
					InstanceType:     pulumi.String("m5.large"),
					KeyName:          pulumi.String("my-key"),
				},
			},
			SpotPrice:      pulumi.String("0.005"),
			TargetCapacity: pulumi.Int(2),
			ValidUntil:     pulumi.String("2019-11-04T20:44:20Z"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Using multiple launch configurations

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.GetSubnetIds(ctx, &ec2.GetSubnetIdsArgs{
			VpcId: _var.Vpc_id,
		}, nil)
		if err != nil {
			return err
		}
		fooLaunchTemplate, err := ec2.NewLaunchTemplate(ctx, "fooLaunchTemplate", &ec2.LaunchTemplateArgs{
			ImageId:      pulumi.String("ami-516b9131"),
			InstanceType: pulumi.String("m1.small"),
			KeyName:      pulumi.String("some-key"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewSpotFleetRequest(ctx, "fooSpotFleetRequest", &ec2.SpotFleetRequestArgs{
			IamFleetRole:   pulumi.String("arn:aws:iam::12345678:role/spot-fleet"),
			SpotPrice:      pulumi.String("0.005"),
			TargetCapacity: pulumi.Int(2),
			ValidUntil:     pulumi.String("2019-11-04T20:44:20Z"),
			LaunchTemplateConfigs: ec2.SpotFleetRequestLaunchTemplateConfigArray{
				&ec2.SpotFleetRequestLaunchTemplateConfigArgs{
					LaunchTemplateSpecification: &ec2.SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs{
						Id:      fooLaunchTemplate.ID(),
						Version: fooLaunchTemplate.LatestVersion,
					},
					Overrides: ec2.SpotFleetRequestLaunchTemplateConfigOverrideArray{
						&ec2.SpotFleetRequestLaunchTemplateConfigOverrideArgs{
							SubnetId: pulumi.Any(data.Aws_subnets.Example.Ids[0]),
						},
						&ec2.SpotFleetRequestLaunchTemplateConfigOverrideArgs{
							SubnetId: pulumi.Any(data.Aws_subnets.Example.Ids[1]),
						},
						&ec2.SpotFleetRequestLaunchTemplateConfigOverrideArgs{
							SubnetId: pulumi.Any(data.Aws_subnets.Example.Ids[2]),
						},
					},
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			aws_iam_policy_attachment.Test - attach,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Spot Fleet Requests can be imported using `id`, e.g.

```sh

$ pulumi import aws:ec2/spotFleetRequest:SpotFleetRequest fleet sfr-005e9ec8-5546-4c31-b317-31a62325411e

```

func GetSpotFleetRequest

func GetSpotFleetRequest(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SpotFleetRequestState, opts ...pulumi.ResourceOption) (*SpotFleetRequest, error)

GetSpotFleetRequest gets an existing SpotFleetRequest resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSpotFleetRequest

func NewSpotFleetRequest(ctx *pulumi.Context,
	name string, args *SpotFleetRequestArgs, opts ...pulumi.ResourceOption) (*SpotFleetRequest, error)

NewSpotFleetRequest registers a new resource with the given unique name, arguments, and options.

func (*SpotFleetRequest) ElementType

func (*SpotFleetRequest) ElementType() reflect.Type

func (*SpotFleetRequest) ToSpotFleetRequestOutput

func (i *SpotFleetRequest) ToSpotFleetRequestOutput() SpotFleetRequestOutput

func (*SpotFleetRequest) ToSpotFleetRequestOutputWithContext

func (i *SpotFleetRequest) ToSpotFleetRequestOutputWithContext(ctx context.Context) SpotFleetRequestOutput

func (*SpotFleetRequest) ToSpotFleetRequestPtrOutput

func (i *SpotFleetRequest) ToSpotFleetRequestPtrOutput() SpotFleetRequestPtrOutput

func (*SpotFleetRequest) ToSpotFleetRequestPtrOutputWithContext

func (i *SpotFleetRequest) ToSpotFleetRequestPtrOutputWithContext(ctx context.Context) SpotFleetRequestPtrOutput

type SpotFleetRequestArgs

type SpotFleetRequestArgs struct {
	// Indicates how to allocate the target capacity across
	// the Spot pools specified by the Spot fleet request. The default is
	// `lowestPrice`.
	AllocationStrategy pulumi.StringPtrInput
	// Indicates whether running Spot
	// instances should be terminated if the target capacity of the Spot fleet
	// request is decreased below the current size of the Spot fleet.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// The type of fleet request. Indicates whether the Spot Fleet only requests the target
	// capacity or also attempts to maintain it. Default is `maintain`.
	FleetType pulumi.StringPtrInput
	// Grants the Spot fleet permission to terminate
	// Spot instances on your behalf when you cancel its Spot fleet request using
	// CancelSpotFleetRequests or when the Spot fleet request expires, if you set
	// terminateInstancesWithExpiration.
	IamFleetRole pulumi.StringInput
	// Indicates whether a Spot
	// instance stops or terminates when it is interrupted. Default is
	// `terminate`.
	InstanceInterruptionBehaviour pulumi.StringPtrInput
	// The number of Spot pools across which to allocate your target Spot capacity.
	// Valid only when `allocationStrategy` is set to `lowestPrice`. Spot Fleet selects
	// the cheapest Spot pools and evenly allocates your target Spot capacity across
	// the number of Spot pools that you specify.
	InstancePoolsToUseCount pulumi.IntPtrInput
	// Used to define the launch configuration of the
	// spot-fleet request. Can be specified multiple times to define different bids
	// across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchSpecifications SpotFleetRequestLaunchSpecificationArrayInput
	// Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchTemplateConfigs SpotFleetRequestLaunchTemplateConfigArrayInput
	// A list of elastic load balancer names to add to the Spot fleet.
	LoadBalancers pulumi.StringArrayInput
	// The order of the launch template overrides to use in fulfilling On-Demand capacity. the possible values are: `lowestPrice` and `prioritized`. the default is `lowestPrice`.
	OnDemandAllocationStrategy pulumi.StringPtrInput
	// The maximum amount per hour for On-Demand Instances that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
	OnDemandMaxTotalPrice pulumi.StringPtrInput
	// The number of On-Demand units to request. If the request type is `maintain`, you can specify a target capacity of 0 and add capacity later.
	OnDemandTargetCapacity pulumi.IntPtrInput
	// Indicates whether Spot fleet should replace unhealthy instances. Default `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrInput
	// Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
	SpotMaintenanceStrategies SpotFleetRequestSpotMaintenanceStrategiesPtrInput
	// The maximum spot bid for this override request.
	SpotPrice pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The number of units to request. You can choose to set the
	// target capacity in terms of instances or a performance characteristic that is
	// important to your application workload, such as vCPUs, memory, or I/O.
	TargetCapacity pulumi.IntInput
	// A list of `alb.TargetGroup` ARNs, for use with Application Load Balancing.
	TargetGroupArns pulumi.StringArrayInput
	// Indicates whether running Spot
	// instances should be terminated when the Spot fleet request expires.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringPtrInput
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
	ValidUntil pulumi.StringPtrInput
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrInput
}

The set of arguments for constructing a SpotFleetRequest resource.

func (SpotFleetRequestArgs) ElementType

func (SpotFleetRequestArgs) ElementType() reflect.Type

type SpotFleetRequestArray

type SpotFleetRequestArray []SpotFleetRequestInput

func (SpotFleetRequestArray) ElementType

func (SpotFleetRequestArray) ElementType() reflect.Type

func (SpotFleetRequestArray) ToSpotFleetRequestArrayOutput

func (i SpotFleetRequestArray) ToSpotFleetRequestArrayOutput() SpotFleetRequestArrayOutput

func (SpotFleetRequestArray) ToSpotFleetRequestArrayOutputWithContext

func (i SpotFleetRequestArray) ToSpotFleetRequestArrayOutputWithContext(ctx context.Context) SpotFleetRequestArrayOutput

type SpotFleetRequestArrayInput

type SpotFleetRequestArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestArrayOutput() SpotFleetRequestArrayOutput
	ToSpotFleetRequestArrayOutputWithContext(context.Context) SpotFleetRequestArrayOutput
}

SpotFleetRequestArrayInput is an input type that accepts SpotFleetRequestArray and SpotFleetRequestArrayOutput values. You can construct a concrete instance of `SpotFleetRequestArrayInput` via:

SpotFleetRequestArray{ SpotFleetRequestArgs{...} }

type SpotFleetRequestArrayOutput

type SpotFleetRequestArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestArrayOutput) ElementType

func (SpotFleetRequestArrayOutput) Index

func (SpotFleetRequestArrayOutput) ToSpotFleetRequestArrayOutput

func (o SpotFleetRequestArrayOutput) ToSpotFleetRequestArrayOutput() SpotFleetRequestArrayOutput

func (SpotFleetRequestArrayOutput) ToSpotFleetRequestArrayOutputWithContext

func (o SpotFleetRequestArrayOutput) ToSpotFleetRequestArrayOutputWithContext(ctx context.Context) SpotFleetRequestArrayOutput

type SpotFleetRequestInput

type SpotFleetRequestInput interface {
	pulumi.Input

	ToSpotFleetRequestOutput() SpotFleetRequestOutput
	ToSpotFleetRequestOutputWithContext(ctx context.Context) SpotFleetRequestOutput
}

type SpotFleetRequestLaunchSpecification

type SpotFleetRequestLaunchSpecification struct {
	Ami                      string `pulumi:"ami"`
	AssociatePublicIpAddress *bool  `pulumi:"associatePublicIpAddress"`
	// The availability zone in which to place the request.
	AvailabilityZone      *string                                                   `pulumi:"availabilityZone"`
	EbsBlockDevices       []SpotFleetRequestLaunchSpecificationEbsBlockDevice       `pulumi:"ebsBlockDevices"`
	EbsOptimized          *bool                                                     `pulumi:"ebsOptimized"`
	EphemeralBlockDevices []SpotFleetRequestLaunchSpecificationEphemeralBlockDevice `pulumi:"ephemeralBlockDevices"`
	IamInstanceProfile    *string                                                   `pulumi:"iamInstanceProfile"`
	IamInstanceProfileArn *string                                                   `pulumi:"iamInstanceProfileArn"`
	// The type of instance to request.
	InstanceType     string                                               `pulumi:"instanceType"`
	KeyName          *string                                              `pulumi:"keyName"`
	Monitoring       *bool                                                `pulumi:"monitoring"`
	PlacementGroup   *string                                              `pulumi:"placementGroup"`
	PlacementTenancy *string                                              `pulumi:"placementTenancy"`
	RootBlockDevices []SpotFleetRequestLaunchSpecificationRootBlockDevice `pulumi:"rootBlockDevices"`
	// The maximum spot bid for this override request.
	SpotPrice *string `pulumi:"spotPrice"`
	// The subnet in which to launch the requested instance.
	SubnetId *string `pulumi:"subnetId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags                map[string]string `pulumi:"tags"`
	UserData            *string           `pulumi:"userData"`
	VpcSecurityGroupIds []string          `pulumi:"vpcSecurityGroupIds"`
	// The capacity added to the fleet by a fulfilled request.
	WeightedCapacity *string `pulumi:"weightedCapacity"`
}

type SpotFleetRequestLaunchSpecificationArgs

type SpotFleetRequestLaunchSpecificationArgs struct {
	Ami                      pulumi.StringInput  `pulumi:"ami"`
	AssociatePublicIpAddress pulumi.BoolPtrInput `pulumi:"associatePublicIpAddress"`
	// The availability zone in which to place the request.
	AvailabilityZone      pulumi.StringPtrInput                                             `pulumi:"availabilityZone"`
	EbsBlockDevices       SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayInput       `pulumi:"ebsBlockDevices"`
	EbsOptimized          pulumi.BoolPtrInput                                               `pulumi:"ebsOptimized"`
	EphemeralBlockDevices SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayInput `pulumi:"ephemeralBlockDevices"`
	IamInstanceProfile    pulumi.StringPtrInput                                             `pulumi:"iamInstanceProfile"`
	IamInstanceProfileArn pulumi.StringPtrInput                                             `pulumi:"iamInstanceProfileArn"`
	// The type of instance to request.
	InstanceType     pulumi.StringInput                                           `pulumi:"instanceType"`
	KeyName          pulumi.StringPtrInput                                        `pulumi:"keyName"`
	Monitoring       pulumi.BoolPtrInput                                          `pulumi:"monitoring"`
	PlacementGroup   pulumi.StringPtrInput                                        `pulumi:"placementGroup"`
	PlacementTenancy pulumi.StringPtrInput                                        `pulumi:"placementTenancy"`
	RootBlockDevices SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayInput `pulumi:"rootBlockDevices"`
	// The maximum spot bid for this override request.
	SpotPrice pulumi.StringPtrInput `pulumi:"spotPrice"`
	// The subnet in which to launch the requested instance.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags                pulumi.StringMapInput   `pulumi:"tags"`
	UserData            pulumi.StringPtrInput   `pulumi:"userData"`
	VpcSecurityGroupIds pulumi.StringArrayInput `pulumi:"vpcSecurityGroupIds"`
	// The capacity added to the fleet by a fulfilled request.
	WeightedCapacity pulumi.StringPtrInput `pulumi:"weightedCapacity"`
}

func (SpotFleetRequestLaunchSpecificationArgs) ElementType

func (SpotFleetRequestLaunchSpecificationArgs) ToSpotFleetRequestLaunchSpecificationOutput

func (i SpotFleetRequestLaunchSpecificationArgs) ToSpotFleetRequestLaunchSpecificationOutput() SpotFleetRequestLaunchSpecificationOutput

func (SpotFleetRequestLaunchSpecificationArgs) ToSpotFleetRequestLaunchSpecificationOutputWithContext

func (i SpotFleetRequestLaunchSpecificationArgs) ToSpotFleetRequestLaunchSpecificationOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationOutput

type SpotFleetRequestLaunchSpecificationArray

type SpotFleetRequestLaunchSpecificationArray []SpotFleetRequestLaunchSpecificationInput

func (SpotFleetRequestLaunchSpecificationArray) ElementType

func (SpotFleetRequestLaunchSpecificationArray) ToSpotFleetRequestLaunchSpecificationArrayOutput

func (i SpotFleetRequestLaunchSpecificationArray) ToSpotFleetRequestLaunchSpecificationArrayOutput() SpotFleetRequestLaunchSpecificationArrayOutput

func (SpotFleetRequestLaunchSpecificationArray) ToSpotFleetRequestLaunchSpecificationArrayOutputWithContext

func (i SpotFleetRequestLaunchSpecificationArray) ToSpotFleetRequestLaunchSpecificationArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationArrayOutput

type SpotFleetRequestLaunchSpecificationArrayInput

type SpotFleetRequestLaunchSpecificationArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationArrayOutput() SpotFleetRequestLaunchSpecificationArrayOutput
	ToSpotFleetRequestLaunchSpecificationArrayOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationArrayOutput
}

SpotFleetRequestLaunchSpecificationArrayInput is an input type that accepts SpotFleetRequestLaunchSpecificationArray and SpotFleetRequestLaunchSpecificationArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationArrayInput` via:

SpotFleetRequestLaunchSpecificationArray{ SpotFleetRequestLaunchSpecificationArgs{...} }

type SpotFleetRequestLaunchSpecificationArrayOutput

type SpotFleetRequestLaunchSpecificationArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationArrayOutput) ElementType

func (SpotFleetRequestLaunchSpecificationArrayOutput) Index

func (SpotFleetRequestLaunchSpecificationArrayOutput) ToSpotFleetRequestLaunchSpecificationArrayOutput

func (o SpotFleetRequestLaunchSpecificationArrayOutput) ToSpotFleetRequestLaunchSpecificationArrayOutput() SpotFleetRequestLaunchSpecificationArrayOutput

func (SpotFleetRequestLaunchSpecificationArrayOutput) ToSpotFleetRequestLaunchSpecificationArrayOutputWithContext

func (o SpotFleetRequestLaunchSpecificationArrayOutput) ToSpotFleetRequestLaunchSpecificationArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationArrayOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDevice

type SpotFleetRequestLaunchSpecificationEbsBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	DeviceName          string  `pulumi:"deviceName"`
	Encrypted           *bool   `pulumi:"encrypted"`
	Iops                *int    `pulumi:"iops"`
	KmsKeyId            *string `pulumi:"kmsKeyId"`
	SnapshotId          *string `pulumi:"snapshotId"`
	Throughput          *int    `pulumi:"throughput"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	DeviceName          pulumi.StringInput    `pulumi:"deviceName"`
	Encrypted           pulumi.BoolPtrInput   `pulumi:"encrypted"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	KmsKeyId            pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	SnapshotId          pulumi.StringPtrInput `pulumi:"snapshotId"`
	Throughput          pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs) ElementType

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

func (i SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput() SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutputWithContext

func (i SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray []SpotFleetRequestLaunchSpecificationEbsBlockDeviceInput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray) ElementType

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

func (i SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput() SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutputWithContext

func (i SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayInput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput() SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput
	ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput
}

SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayInput is an input type that accepts SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray and SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayInput` via:

SpotFleetRequestLaunchSpecificationEbsBlockDeviceArray{ SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs{...} }

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput) ElementType

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput) Index

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutputWithContext

func (o SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceInput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput() SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput
	ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput
}

SpotFleetRequestLaunchSpecificationEbsBlockDeviceInput is an input type that accepts SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs and SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationEbsBlockDeviceInput` via:

SpotFleetRequestLaunchSpecificationEbsBlockDeviceArgs{...}

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) DeleteOnTermination

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) DeviceName

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) ElementType

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) Encrypted

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) Iops

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) KmsKeyId

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) SnapshotId

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) Throughput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutputWithContext

func (o SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEbsBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) VolumeSize

func (SpotFleetRequestLaunchSpecificationEbsBlockDeviceOutput) VolumeType

type SpotFleetRequestLaunchSpecificationEphemeralBlockDevice

type SpotFleetRequestLaunchSpecificationEphemeralBlockDevice struct {
	DeviceName  string `pulumi:"deviceName"`
	VirtualName string `pulumi:"virtualName"`
}

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs struct {
	DeviceName  pulumi.StringInput `pulumi:"deviceName"`
	VirtualName pulumi.StringInput `pulumi:"virtualName"`
}

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs) ElementType

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutputWithContext

func (i SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray []SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceInput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray) ElementType

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutputWithContext

func (i SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayInput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput() SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput
	ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput
}

SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayInput is an input type that accepts SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray and SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayInput` via:

SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArray{ SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs{...} }

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput) ElementType

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput) Index

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutputWithContext

func (o SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceInput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput() SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput
	ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput
}

SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceInput is an input type that accepts SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs and SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceInput` via:

SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceArgs{...}

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) DeviceName

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) ElementType

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutputWithContext

func (o SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationEphemeralBlockDeviceOutput) VirtualName

type SpotFleetRequestLaunchSpecificationInput

type SpotFleetRequestLaunchSpecificationInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationOutput() SpotFleetRequestLaunchSpecificationOutput
	ToSpotFleetRequestLaunchSpecificationOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationOutput
}

SpotFleetRequestLaunchSpecificationInput is an input type that accepts SpotFleetRequestLaunchSpecificationArgs and SpotFleetRequestLaunchSpecificationOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationInput` via:

SpotFleetRequestLaunchSpecificationArgs{...}

type SpotFleetRequestLaunchSpecificationOutput

type SpotFleetRequestLaunchSpecificationOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationOutput) Ami

func (SpotFleetRequestLaunchSpecificationOutput) AssociatePublicIpAddress

func (o SpotFleetRequestLaunchSpecificationOutput) AssociatePublicIpAddress() pulumi.BoolPtrOutput

func (SpotFleetRequestLaunchSpecificationOutput) AvailabilityZone

The availability zone in which to place the request.

func (SpotFleetRequestLaunchSpecificationOutput) EbsBlockDevices

func (SpotFleetRequestLaunchSpecificationOutput) EbsOptimized

func (SpotFleetRequestLaunchSpecificationOutput) ElementType

func (SpotFleetRequestLaunchSpecificationOutput) EphemeralBlockDevices

func (SpotFleetRequestLaunchSpecificationOutput) IamInstanceProfile

func (SpotFleetRequestLaunchSpecificationOutput) IamInstanceProfileArn

func (SpotFleetRequestLaunchSpecificationOutput) InstanceType

The type of instance to request.

func (SpotFleetRequestLaunchSpecificationOutput) KeyName

func (SpotFleetRequestLaunchSpecificationOutput) Monitoring

func (SpotFleetRequestLaunchSpecificationOutput) PlacementGroup

func (SpotFleetRequestLaunchSpecificationOutput) PlacementTenancy

func (SpotFleetRequestLaunchSpecificationOutput) RootBlockDevices

func (SpotFleetRequestLaunchSpecificationOutput) SpotPrice

The maximum spot bid for this override request.

func (SpotFleetRequestLaunchSpecificationOutput) SubnetId

The subnet in which to launch the requested instance.

func (SpotFleetRequestLaunchSpecificationOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SpotFleetRequestLaunchSpecificationOutput) ToSpotFleetRequestLaunchSpecificationOutput

func (o SpotFleetRequestLaunchSpecificationOutput) ToSpotFleetRequestLaunchSpecificationOutput() SpotFleetRequestLaunchSpecificationOutput

func (SpotFleetRequestLaunchSpecificationOutput) ToSpotFleetRequestLaunchSpecificationOutputWithContext

func (o SpotFleetRequestLaunchSpecificationOutput) ToSpotFleetRequestLaunchSpecificationOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationOutput

func (SpotFleetRequestLaunchSpecificationOutput) UserData

func (SpotFleetRequestLaunchSpecificationOutput) VpcSecurityGroupIds

func (SpotFleetRequestLaunchSpecificationOutput) WeightedCapacity

The capacity added to the fleet by a fulfilled request.

type SpotFleetRequestLaunchSpecificationRootBlockDevice

type SpotFleetRequestLaunchSpecificationRootBlockDevice struct {
	DeleteOnTermination *bool   `pulumi:"deleteOnTermination"`
	Encrypted           *bool   `pulumi:"encrypted"`
	Iops                *int    `pulumi:"iops"`
	KmsKeyId            *string `pulumi:"kmsKeyId"`
	Throughput          *int    `pulumi:"throughput"`
	VolumeSize          *int    `pulumi:"volumeSize"`
	VolumeType          *string `pulumi:"volumeType"`
}

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs struct {
	DeleteOnTermination pulumi.BoolPtrInput   `pulumi:"deleteOnTermination"`
	Encrypted           pulumi.BoolPtrInput   `pulumi:"encrypted"`
	Iops                pulumi.IntPtrInput    `pulumi:"iops"`
	KmsKeyId            pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	Throughput          pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeSize          pulumi.IntPtrInput    `pulumi:"volumeSize"`
	VolumeType          pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs) ElementType

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutputWithContext

func (i SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArray

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArray []SpotFleetRequestLaunchSpecificationRootBlockDeviceInput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArray) ElementType

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

func (i SpotFleetRequestLaunchSpecificationRootBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput() SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutputWithContext

func (i SpotFleetRequestLaunchSpecificationRootBlockDeviceArray) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayInput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput() SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput
	ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput
}

SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayInput is an input type that accepts SpotFleetRequestLaunchSpecificationRootBlockDeviceArray and SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayInput` via:

SpotFleetRequestLaunchSpecificationRootBlockDeviceArray{ SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs{...} }

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput) ElementType

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput) Index

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutputWithContext

func (o SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceArrayOutput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceInput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutput() SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput
	ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutputWithContext(context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput
}

SpotFleetRequestLaunchSpecificationRootBlockDeviceInput is an input type that accepts SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs and SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchSpecificationRootBlockDeviceInput` via:

SpotFleetRequestLaunchSpecificationRootBlockDeviceArgs{...}

type SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput

type SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) DeleteOnTermination

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) ElementType

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) Encrypted

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) Iops

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) KmsKeyId

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) Throughput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutputWithContext

func (o SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) ToSpotFleetRequestLaunchSpecificationRootBlockDeviceOutputWithContext(ctx context.Context) SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) VolumeSize

func (SpotFleetRequestLaunchSpecificationRootBlockDeviceOutput) VolumeType

type SpotFleetRequestLaunchTemplateConfig

type SpotFleetRequestLaunchTemplateConfig struct {
	// Launch template specification. See Launch Template Specification below for more details.
	LaunchTemplateSpecification SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecification `pulumi:"launchTemplateSpecification"`
	// One or more override configurations. See Overrides below for more details.
	Overrides []SpotFleetRequestLaunchTemplateConfigOverride `pulumi:"overrides"`
}

type SpotFleetRequestLaunchTemplateConfigArgs

type SpotFleetRequestLaunchTemplateConfigArgs struct {
	// Launch template specification. See Launch Template Specification below for more details.
	LaunchTemplateSpecification SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationInput `pulumi:"launchTemplateSpecification"`
	// One or more override configurations. See Overrides below for more details.
	Overrides SpotFleetRequestLaunchTemplateConfigOverrideArrayInput `pulumi:"overrides"`
}

func (SpotFleetRequestLaunchTemplateConfigArgs) ElementType

func (SpotFleetRequestLaunchTemplateConfigArgs) ToSpotFleetRequestLaunchTemplateConfigOutput

func (i SpotFleetRequestLaunchTemplateConfigArgs) ToSpotFleetRequestLaunchTemplateConfigOutput() SpotFleetRequestLaunchTemplateConfigOutput

func (SpotFleetRequestLaunchTemplateConfigArgs) ToSpotFleetRequestLaunchTemplateConfigOutputWithContext

func (i SpotFleetRequestLaunchTemplateConfigArgs) ToSpotFleetRequestLaunchTemplateConfigOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOutput

type SpotFleetRequestLaunchTemplateConfigArray

type SpotFleetRequestLaunchTemplateConfigArray []SpotFleetRequestLaunchTemplateConfigInput

func (SpotFleetRequestLaunchTemplateConfigArray) ElementType

func (SpotFleetRequestLaunchTemplateConfigArray) ToSpotFleetRequestLaunchTemplateConfigArrayOutput

func (i SpotFleetRequestLaunchTemplateConfigArray) ToSpotFleetRequestLaunchTemplateConfigArrayOutput() SpotFleetRequestLaunchTemplateConfigArrayOutput

func (SpotFleetRequestLaunchTemplateConfigArray) ToSpotFleetRequestLaunchTemplateConfigArrayOutputWithContext

func (i SpotFleetRequestLaunchTemplateConfigArray) ToSpotFleetRequestLaunchTemplateConfigArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigArrayOutput

type SpotFleetRequestLaunchTemplateConfigArrayInput

type SpotFleetRequestLaunchTemplateConfigArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchTemplateConfigArrayOutput() SpotFleetRequestLaunchTemplateConfigArrayOutput
	ToSpotFleetRequestLaunchTemplateConfigArrayOutputWithContext(context.Context) SpotFleetRequestLaunchTemplateConfigArrayOutput
}

SpotFleetRequestLaunchTemplateConfigArrayInput is an input type that accepts SpotFleetRequestLaunchTemplateConfigArray and SpotFleetRequestLaunchTemplateConfigArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchTemplateConfigArrayInput` via:

SpotFleetRequestLaunchTemplateConfigArray{ SpotFleetRequestLaunchTemplateConfigArgs{...} }

type SpotFleetRequestLaunchTemplateConfigArrayOutput

type SpotFleetRequestLaunchTemplateConfigArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchTemplateConfigArrayOutput) ElementType

func (SpotFleetRequestLaunchTemplateConfigArrayOutput) Index

func (SpotFleetRequestLaunchTemplateConfigArrayOutput) ToSpotFleetRequestLaunchTemplateConfigArrayOutput

func (o SpotFleetRequestLaunchTemplateConfigArrayOutput) ToSpotFleetRequestLaunchTemplateConfigArrayOutput() SpotFleetRequestLaunchTemplateConfigArrayOutput

func (SpotFleetRequestLaunchTemplateConfigArrayOutput) ToSpotFleetRequestLaunchTemplateConfigArrayOutputWithContext

func (o SpotFleetRequestLaunchTemplateConfigArrayOutput) ToSpotFleetRequestLaunchTemplateConfigArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigArrayOutput

type SpotFleetRequestLaunchTemplateConfigInput

type SpotFleetRequestLaunchTemplateConfigInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchTemplateConfigOutput() SpotFleetRequestLaunchTemplateConfigOutput
	ToSpotFleetRequestLaunchTemplateConfigOutputWithContext(context.Context) SpotFleetRequestLaunchTemplateConfigOutput
}

SpotFleetRequestLaunchTemplateConfigInput is an input type that accepts SpotFleetRequestLaunchTemplateConfigArgs and SpotFleetRequestLaunchTemplateConfigOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchTemplateConfigInput` via:

SpotFleetRequestLaunchTemplateConfigArgs{...}

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecification

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecification struct {
	// The ID of the launch template. Conflicts with `name`.
	Id *string `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name *string `pulumi:"name"`
	// Template version. Unlike the autoscaling equivalent, does not support `$Latest` or `$Default`, so use the launchTemplate resource's attribute, e.g. `"${aws_launch_template.foo.latest_version}"`. It will use the default version if omitted.
	Version *string `pulumi:"version"`
}

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs struct {
	// The ID of the launch template. Conflicts with `name`.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Template version. Unlike the autoscaling equivalent, does not support `$Latest` or `$Default`, so use the launchTemplate resource's attribute, e.g. `"${aws_launch_template.foo.latest_version}"`. It will use the default version if omitted.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs) ElementType

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext

func (i SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationInput

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput() SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput
	ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(context.Context) SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput
}

SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationInput is an input type that accepts SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs and SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationInput` via:

SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationArgs{...}

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput

type SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) ElementType

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) Id

The ID of the launch template. Conflicts with `name`.

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) Name

The name of the launch template. Conflicts with `id`.

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext

func (o SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) ToSpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput

func (SpotFleetRequestLaunchTemplateConfigLaunchTemplateSpecificationOutput) Version

Template version. Unlike the autoscaling equivalent, does not support `$Latest` or `$Default`, so use the launchTemplate resource's attribute, e.g. `"${aws_launch_template.foo.latest_version}"`. It will use the default version if omitted.

type SpotFleetRequestLaunchTemplateConfigOutput

type SpotFleetRequestLaunchTemplateConfigOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchTemplateConfigOutput) ElementType

func (SpotFleetRequestLaunchTemplateConfigOutput) LaunchTemplateSpecification

Launch template specification. See Launch Template Specification below for more details.

func (SpotFleetRequestLaunchTemplateConfigOutput) Overrides

One or more override configurations. See Overrides below for more details.

func (SpotFleetRequestLaunchTemplateConfigOutput) ToSpotFleetRequestLaunchTemplateConfigOutput

func (o SpotFleetRequestLaunchTemplateConfigOutput) ToSpotFleetRequestLaunchTemplateConfigOutput() SpotFleetRequestLaunchTemplateConfigOutput

func (SpotFleetRequestLaunchTemplateConfigOutput) ToSpotFleetRequestLaunchTemplateConfigOutputWithContext

func (o SpotFleetRequestLaunchTemplateConfigOutput) ToSpotFleetRequestLaunchTemplateConfigOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOutput

type SpotFleetRequestLaunchTemplateConfigOverride

type SpotFleetRequestLaunchTemplateConfigOverride struct {
	// The availability zone in which to place the request.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// The type of instance to request.
	InstanceType *string `pulumi:"instanceType"`
	// The priority for the launch template override. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority.
	Priority *float64 `pulumi:"priority"`
	// The maximum spot bid for this override request.
	SpotPrice *string `pulumi:"spotPrice"`
	// The subnet in which to launch the requested instance.
	SubnetId *string `pulumi:"subnetId"`
	// The capacity added to the fleet by a fulfilled request.
	WeightedCapacity *float64 `pulumi:"weightedCapacity"`
}

type SpotFleetRequestLaunchTemplateConfigOverrideArgs

type SpotFleetRequestLaunchTemplateConfigOverrideArgs struct {
	// The availability zone in which to place the request.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// The type of instance to request.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// The priority for the launch template override. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority.
	Priority pulumi.Float64PtrInput `pulumi:"priority"`
	// The maximum spot bid for this override request.
	SpotPrice pulumi.StringPtrInput `pulumi:"spotPrice"`
	// The subnet in which to launch the requested instance.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// The capacity added to the fleet by a fulfilled request.
	WeightedCapacity pulumi.Float64PtrInput `pulumi:"weightedCapacity"`
}

func (SpotFleetRequestLaunchTemplateConfigOverrideArgs) ElementType

func (SpotFleetRequestLaunchTemplateConfigOverrideArgs) ToSpotFleetRequestLaunchTemplateConfigOverrideOutput

func (i SpotFleetRequestLaunchTemplateConfigOverrideArgs) ToSpotFleetRequestLaunchTemplateConfigOverrideOutput() SpotFleetRequestLaunchTemplateConfigOverrideOutput

func (SpotFleetRequestLaunchTemplateConfigOverrideArgs) ToSpotFleetRequestLaunchTemplateConfigOverrideOutputWithContext

func (i SpotFleetRequestLaunchTemplateConfigOverrideArgs) ToSpotFleetRequestLaunchTemplateConfigOverrideOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOverrideOutput

type SpotFleetRequestLaunchTemplateConfigOverrideArray

type SpotFleetRequestLaunchTemplateConfigOverrideArray []SpotFleetRequestLaunchTemplateConfigOverrideInput

func (SpotFleetRequestLaunchTemplateConfigOverrideArray) ElementType

func (SpotFleetRequestLaunchTemplateConfigOverrideArray) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

func (i SpotFleetRequestLaunchTemplateConfigOverrideArray) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutput() SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

func (SpotFleetRequestLaunchTemplateConfigOverrideArray) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutputWithContext

func (i SpotFleetRequestLaunchTemplateConfigOverrideArray) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

type SpotFleetRequestLaunchTemplateConfigOverrideArrayInput

type SpotFleetRequestLaunchTemplateConfigOverrideArrayInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutput() SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput
	ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutputWithContext(context.Context) SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput
}

SpotFleetRequestLaunchTemplateConfigOverrideArrayInput is an input type that accepts SpotFleetRequestLaunchTemplateConfigOverrideArray and SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchTemplateConfigOverrideArrayInput` via:

SpotFleetRequestLaunchTemplateConfigOverrideArray{ SpotFleetRequestLaunchTemplateConfigOverrideArgs{...} }

type SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

type SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput) ElementType

func (SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput) Index

func (SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

func (SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutputWithContext

func (o SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideArrayOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOverrideArrayOutput

type SpotFleetRequestLaunchTemplateConfigOverrideInput

type SpotFleetRequestLaunchTemplateConfigOverrideInput interface {
	pulumi.Input

	ToSpotFleetRequestLaunchTemplateConfigOverrideOutput() SpotFleetRequestLaunchTemplateConfigOverrideOutput
	ToSpotFleetRequestLaunchTemplateConfigOverrideOutputWithContext(context.Context) SpotFleetRequestLaunchTemplateConfigOverrideOutput
}

SpotFleetRequestLaunchTemplateConfigOverrideInput is an input type that accepts SpotFleetRequestLaunchTemplateConfigOverrideArgs and SpotFleetRequestLaunchTemplateConfigOverrideOutput values. You can construct a concrete instance of `SpotFleetRequestLaunchTemplateConfigOverrideInput` via:

SpotFleetRequestLaunchTemplateConfigOverrideArgs{...}

type SpotFleetRequestLaunchTemplateConfigOverrideOutput

type SpotFleetRequestLaunchTemplateConfigOverrideOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) AvailabilityZone

The availability zone in which to place the request.

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) ElementType

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) InstanceType

The type of instance to request.

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) Priority

The priority for the launch template override. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority.

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) SpotPrice

The maximum spot bid for this override request.

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) SubnetId

The subnet in which to launch the requested instance.

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideOutput

func (o SpotFleetRequestLaunchTemplateConfigOverrideOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideOutput() SpotFleetRequestLaunchTemplateConfigOverrideOutput

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideOutputWithContext

func (o SpotFleetRequestLaunchTemplateConfigOverrideOutput) ToSpotFleetRequestLaunchTemplateConfigOverrideOutputWithContext(ctx context.Context) SpotFleetRequestLaunchTemplateConfigOverrideOutput

func (SpotFleetRequestLaunchTemplateConfigOverrideOutput) WeightedCapacity

The capacity added to the fleet by a fulfilled request.

type SpotFleetRequestMap

type SpotFleetRequestMap map[string]SpotFleetRequestInput

func (SpotFleetRequestMap) ElementType

func (SpotFleetRequestMap) ElementType() reflect.Type

func (SpotFleetRequestMap) ToSpotFleetRequestMapOutput

func (i SpotFleetRequestMap) ToSpotFleetRequestMapOutput() SpotFleetRequestMapOutput

func (SpotFleetRequestMap) ToSpotFleetRequestMapOutputWithContext

func (i SpotFleetRequestMap) ToSpotFleetRequestMapOutputWithContext(ctx context.Context) SpotFleetRequestMapOutput

type SpotFleetRequestMapInput

type SpotFleetRequestMapInput interface {
	pulumi.Input

	ToSpotFleetRequestMapOutput() SpotFleetRequestMapOutput
	ToSpotFleetRequestMapOutputWithContext(context.Context) SpotFleetRequestMapOutput
}

SpotFleetRequestMapInput is an input type that accepts SpotFleetRequestMap and SpotFleetRequestMapOutput values. You can construct a concrete instance of `SpotFleetRequestMapInput` via:

SpotFleetRequestMap{ "key": SpotFleetRequestArgs{...} }

type SpotFleetRequestMapOutput

type SpotFleetRequestMapOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestMapOutput) ElementType

func (SpotFleetRequestMapOutput) ElementType() reflect.Type

func (SpotFleetRequestMapOutput) MapIndex

func (SpotFleetRequestMapOutput) ToSpotFleetRequestMapOutput

func (o SpotFleetRequestMapOutput) ToSpotFleetRequestMapOutput() SpotFleetRequestMapOutput

func (SpotFleetRequestMapOutput) ToSpotFleetRequestMapOutputWithContext

func (o SpotFleetRequestMapOutput) ToSpotFleetRequestMapOutputWithContext(ctx context.Context) SpotFleetRequestMapOutput

type SpotFleetRequestOutput

type SpotFleetRequestOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestOutput) ElementType

func (SpotFleetRequestOutput) ElementType() reflect.Type

func (SpotFleetRequestOutput) ToSpotFleetRequestOutput

func (o SpotFleetRequestOutput) ToSpotFleetRequestOutput() SpotFleetRequestOutput

func (SpotFleetRequestOutput) ToSpotFleetRequestOutputWithContext

func (o SpotFleetRequestOutput) ToSpotFleetRequestOutputWithContext(ctx context.Context) SpotFleetRequestOutput

func (SpotFleetRequestOutput) ToSpotFleetRequestPtrOutput

func (o SpotFleetRequestOutput) ToSpotFleetRequestPtrOutput() SpotFleetRequestPtrOutput

func (SpotFleetRequestOutput) ToSpotFleetRequestPtrOutputWithContext

func (o SpotFleetRequestOutput) ToSpotFleetRequestPtrOutputWithContext(ctx context.Context) SpotFleetRequestPtrOutput

type SpotFleetRequestPtrInput

type SpotFleetRequestPtrInput interface {
	pulumi.Input

	ToSpotFleetRequestPtrOutput() SpotFleetRequestPtrOutput
	ToSpotFleetRequestPtrOutputWithContext(ctx context.Context) SpotFleetRequestPtrOutput
}

type SpotFleetRequestPtrOutput

type SpotFleetRequestPtrOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestPtrOutput) Elem added in v4.15.0

func (SpotFleetRequestPtrOutput) ElementType

func (SpotFleetRequestPtrOutput) ElementType() reflect.Type

func (SpotFleetRequestPtrOutput) ToSpotFleetRequestPtrOutput

func (o SpotFleetRequestPtrOutput) ToSpotFleetRequestPtrOutput() SpotFleetRequestPtrOutput

func (SpotFleetRequestPtrOutput) ToSpotFleetRequestPtrOutputWithContext

func (o SpotFleetRequestPtrOutput) ToSpotFleetRequestPtrOutputWithContext(ctx context.Context) SpotFleetRequestPtrOutput

type SpotFleetRequestSpotMaintenanceStrategies

type SpotFleetRequestSpotMaintenanceStrategies struct {
	// Nested argument containing the capacity rebalance for your fleet request. Defined below.
	CapacityRebalance *SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalance `pulumi:"capacityRebalance"`
}

type SpotFleetRequestSpotMaintenanceStrategiesArgs

type SpotFleetRequestSpotMaintenanceStrategiesArgs struct {
	// Nested argument containing the capacity rebalance for your fleet request. Defined below.
	CapacityRebalance SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrInput `pulumi:"capacityRebalance"`
}

func (SpotFleetRequestSpotMaintenanceStrategiesArgs) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesOutput

func (i SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesOutput() SpotFleetRequestSpotMaintenanceStrategiesOutput

func (SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesOutputWithContext

func (i SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesOutput

func (SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (i SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput() SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext

func (i SpotFleetRequestSpotMaintenanceStrategiesArgs) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalance

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalance struct {
	// The replacement strategy to use. Only available for spot fleets with `fleetType` set to `maintain`. Valid values: `launch`.
	ReplacementStrategy *string `pulumi:"replacementStrategy"`
}

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs struct {
	// The replacement strategy to use. Only available for spot fleets with `fleetType` set to `maintain`. Valid values: `launch`.
	ReplacementStrategy pulumi.StringPtrInput `pulumi:"replacementStrategy"`
}

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutputWithContext

func (i SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (i SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceInput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceInput interface {
	pulumi.Input

	ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput() SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput
	ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutputWithContext(context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput
}

SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceInput is an input type that accepts SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs and SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput values. You can construct a concrete instance of `SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceInput` via:

SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs{...}

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ReplacementStrategy

The replacement strategy to use. Only available for spot fleets with `fleetType` set to `maintain`. Valid values: `launch`.

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrInput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrInput interface {
	pulumi.Input

	ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput() SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput
	ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput
}

SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrInput is an input type that accepts SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs, SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtr and SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput values. You can construct a concrete instance of `SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrInput` via:

        SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalanceArgs{...}

or:

        nil

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) Elem

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) ReplacementStrategy

The replacement strategy to use. Only available for spot fleets with `fleetType` set to `maintain`. Valid values: `launch`.

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesCapacityRebalancePtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesInput

type SpotFleetRequestSpotMaintenanceStrategiesInput interface {
	pulumi.Input

	ToSpotFleetRequestSpotMaintenanceStrategiesOutput() SpotFleetRequestSpotMaintenanceStrategiesOutput
	ToSpotFleetRequestSpotMaintenanceStrategiesOutputWithContext(context.Context) SpotFleetRequestSpotMaintenanceStrategiesOutput
}

SpotFleetRequestSpotMaintenanceStrategiesInput is an input type that accepts SpotFleetRequestSpotMaintenanceStrategiesArgs and SpotFleetRequestSpotMaintenanceStrategiesOutput values. You can construct a concrete instance of `SpotFleetRequestSpotMaintenanceStrategiesInput` via:

SpotFleetRequestSpotMaintenanceStrategiesArgs{...}

type SpotFleetRequestSpotMaintenanceStrategiesOutput

type SpotFleetRequestSpotMaintenanceStrategiesOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) CapacityRebalance

Nested argument containing the capacity rebalance for your fleet request. Defined below.

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesOutput

func (o SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesOutput() SpotFleetRequestSpotMaintenanceStrategiesOutput

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesOutput

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (o SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput() SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesPtrInput

type SpotFleetRequestSpotMaintenanceStrategiesPtrInput interface {
	pulumi.Input

	ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput() SpotFleetRequestSpotMaintenanceStrategiesPtrOutput
	ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext(context.Context) SpotFleetRequestSpotMaintenanceStrategiesPtrOutput
}

SpotFleetRequestSpotMaintenanceStrategiesPtrInput is an input type that accepts SpotFleetRequestSpotMaintenanceStrategiesArgs, SpotFleetRequestSpotMaintenanceStrategiesPtr and SpotFleetRequestSpotMaintenanceStrategiesPtrOutput values. You can construct a concrete instance of `SpotFleetRequestSpotMaintenanceStrategiesPtrInput` via:

        SpotFleetRequestSpotMaintenanceStrategiesArgs{...}

or:

        nil

type SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

type SpotFleetRequestSpotMaintenanceStrategiesPtrOutput struct{ *pulumi.OutputState }

func (SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) CapacityRebalance

Nested argument containing the capacity rebalance for your fleet request. Defined below.

func (SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) Elem

func (SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) ElementType

func (SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (o SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutput() SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

func (SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext

func (o SpotFleetRequestSpotMaintenanceStrategiesPtrOutput) ToSpotFleetRequestSpotMaintenanceStrategiesPtrOutputWithContext(ctx context.Context) SpotFleetRequestSpotMaintenanceStrategiesPtrOutput

type SpotFleetRequestState

type SpotFleetRequestState struct {
	// Indicates how to allocate the target capacity across
	// the Spot pools specified by the Spot fleet request. The default is
	// `lowestPrice`.
	AllocationStrategy pulumi.StringPtrInput
	ClientToken        pulumi.StringPtrInput
	// Indicates whether running Spot
	// instances should be terminated if the target capacity of the Spot fleet
	// request is decreased below the current size of the Spot fleet.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// The type of fleet request. Indicates whether the Spot Fleet only requests the target
	// capacity or also attempts to maintain it. Default is `maintain`.
	FleetType pulumi.StringPtrInput
	// Grants the Spot fleet permission to terminate
	// Spot instances on your behalf when you cancel its Spot fleet request using
	// CancelSpotFleetRequests or when the Spot fleet request expires, if you set
	// terminateInstancesWithExpiration.
	IamFleetRole pulumi.StringPtrInput
	// Indicates whether a Spot
	// instance stops or terminates when it is interrupted. Default is
	// `terminate`.
	InstanceInterruptionBehaviour pulumi.StringPtrInput
	// The number of Spot pools across which to allocate your target Spot capacity.
	// Valid only when `allocationStrategy` is set to `lowestPrice`. Spot Fleet selects
	// the cheapest Spot pools and evenly allocates your target Spot capacity across
	// the number of Spot pools that you specify.
	InstancePoolsToUseCount pulumi.IntPtrInput
	// Used to define the launch configuration of the
	// spot-fleet request. Can be specified multiple times to define different bids
	// across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchSpecifications SpotFleetRequestLaunchSpecificationArrayInput
	// Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
	LaunchTemplateConfigs SpotFleetRequestLaunchTemplateConfigArrayInput
	// A list of elastic load balancer names to add to the Spot fleet.
	LoadBalancers pulumi.StringArrayInput
	// The order of the launch template overrides to use in fulfilling On-Demand capacity. the possible values are: `lowestPrice` and `prioritized`. the default is `lowestPrice`.
	OnDemandAllocationStrategy pulumi.StringPtrInput
	// The maximum amount per hour for On-Demand Instances that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
	OnDemandMaxTotalPrice pulumi.StringPtrInput
	// The number of On-Demand units to request. If the request type is `maintain`, you can specify a target capacity of 0 and add capacity later.
	OnDemandTargetCapacity pulumi.IntPtrInput
	// Indicates whether Spot fleet should replace unhealthy instances. Default `false`.
	ReplaceUnhealthyInstances pulumi.BoolPtrInput
	// Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
	SpotMaintenanceStrategies SpotFleetRequestSpotMaintenanceStrategiesPtrInput
	// The maximum spot bid for this override request.
	SpotPrice pulumi.StringPtrInput
	// The state of the Spot fleet request.
	SpotRequestState pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The number of units to request. You can choose to set the
	// target capacity in terms of instances or a performance characteristic that is
	// important to your application workload, such as vCPUs, memory, or I/O.
	TargetCapacity pulumi.IntPtrInput
	// A list of `alb.TargetGroup` ARNs, for use with Application Load Balancing.
	TargetGroupArns pulumi.StringArrayInput
	// Indicates whether running Spot
	// instances should be terminated when the Spot fleet request expires.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringPtrInput
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
	ValidUntil pulumi.StringPtrInput
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrInput
}

func (SpotFleetRequestState) ElementType

func (SpotFleetRequestState) ElementType() reflect.Type

type SpotInstanceRequest

type SpotInstanceRequest struct {
	pulumi.CustomResourceState

	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringOutput `pulumi:"ami"`
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolOutput `pulumi:"associatePublicIpAddress"`
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
	// The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.
	// Note that you can't specify an Availability Zone group or a launch group if you specify a duration.
	BlockDurationMinutes pulumi.IntPtrOutput `pulumi:"blockDurationMinutes"`
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification SpotInstanceRequestCapacityReservationSpecificationOutput `pulumi:"capacityReservationSpecification"`
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntOutput `pulumi:"cpuCoreCount"`
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntOutput `pulumi:"cpuThreadsPerCore"`
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification SpotInstanceRequestCreditSpecificationPtrOutput `pulumi:"creditSpecification"`
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolOutput `pulumi:"disableApiTermination"`
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices SpotInstanceRequestEbsBlockDeviceArrayOutput `pulumi:"ebsBlockDevices"`
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolOutput `pulumi:"ebsOptimized"`
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions SpotInstanceRequestEnclaveOptionsOutput `pulumi:"enclaveOptions"`
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices SpotInstanceRequestEphemeralBlockDeviceArrayOutput `pulumi:"ephemeralBlockDevices"`
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrOutput `pulumi:"getPasswordData"`
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrOutput `pulumi:"hibernation"`
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringOutput `pulumi:"hostId"`
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.StringPtrOutput `pulumi:"iamInstanceProfile"`
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringOutput `pulumi:"instanceInitiatedShutdownBehavior"`
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`.
	InstanceInterruptionBehavior pulumi.StringOutput `pulumi:"instanceInterruptionBehavior"`
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`. Use the argument `instanceInterruptionBehavior` instead.
	//
	// Deprecated: Use the parameter "instance_interruption_behavior" instead.
	InstanceInterruptionBehaviour pulumi.StringOutput `pulumi:"instanceInterruptionBehaviour"`
	InstanceState                 pulumi.StringOutput `pulumi:"instanceState"`
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntOutput `pulumi:"ipv6AddressCount"`
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayOutput `pulumi:"ipv6Addresses"`
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// A launch group is a group of spot instances that launch together and terminate together.
	// If left empty instances are launched and terminated individually.
	LaunchGroup pulumi.StringPtrOutput `pulumi:"launchGroup"`
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate SpotInstanceRequestLaunchTemplatePtrOutput `pulumi:"launchTemplate"`
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions SpotInstanceRequestMetadataOptionsOutput `pulumi:"metadataOptions"`
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolOutput `pulumi:"monitoring"`
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces SpotInstanceRequestNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	OutpostArn        pulumi.StringOutput                            `pulumi:"outpostArn"`
	PasswordData      pulumi.StringOutput                            `pulumi:"passwordData"`
	// Placement Group to start the instance in.
	PlacementGroup            pulumi.StringOutput `pulumi:"placementGroup"`
	PrimaryNetworkInterfaceId pulumi.StringOutput `pulumi:"primaryNetworkInterfaceId"`
	// The private DNS name assigned to the instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC
	PrivateDns pulumi.StringOutput `pulumi:"privateDns"`
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The public DNS name assigned to the instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC
	PublicDns pulumi.StringOutput `pulumi:"publicDns"`
	// The public IP address assigned to the instance, if applicable.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice SpotInstanceRequestRootBlockDeviceOutput `pulumi:"rootBlockDevice"`
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayOutput `pulumi:"secondaryPrivateIps"`
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrOutput `pulumi:"sourceDestCheck"`
	// The current [bid
	// status](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html)
	// of the Spot Instance Request.
	// * `spotRequestState` The current [request
	//   state](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html#creating-spot-request-status)
	//   of the Spot Instance Request.
	SpotBidStatus pulumi.StringOutput `pulumi:"spotBidStatus"`
	// The Instance ID (if any) that is currently fulfilling
	// the Spot Instance request.
	SpotInstanceId pulumi.StringOutput `pulumi:"spotInstanceId"`
	// The maximum price to request on the spot market.
	SpotPrice        pulumi.StringOutput `pulumi:"spotPrice"`
	SpotRequestState pulumi.StringOutput `pulumi:"spotRequestState"`
	// If set to `one-time`, after
	// the instance is terminated, the spot request will be closed.
	SpotType pulumi.StringPtrOutput `pulumi:"spotType"`
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringOutput `pulumi:"tenancy"`
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringOutput `pulumi:"userData"`
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringOutput `pulumi:"userDataBase64"`
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringOutput `pulumi:"validFrom"`
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.
	ValidUntil pulumi.StringOutput `pulumi:"validUntil"`
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapOutput `pulumi:"volumeTags"`
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayOutput `pulumi:"vpcSecurityGroupIds"`
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrOutput `pulumi:"waitForFulfillment"`
}

Provides an EC2 Spot Instance Request resource. This allows instances to be requested on the spot market.

By default this provider creates Spot Instance Requests with a `persistent` type, which means that for the duration of their lifetime, AWS will launch an instance with the configured details if and when the spot market will accept the requested price.

On destruction, this provider will make an attempt to terminate the associated Spot Instance if there is one present.

Spot Instances requests with a `one-time` type will close the spot request when the instance is terminated either by the request being below the current spot price availability or by a user.

> **NOTE:** Because their behavior depends on the live status of the spot market, Spot Instance Requests have a unique lifecycle that makes them behave differently than other resources. Most importantly: there is __no guarantee__ that a Spot Instance exists to fulfill the request at any given point in time. See the [AWS Spot Instance documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) for more information.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSpotInstanceRequest(ctx, "cheapWorker", &ec2.SpotInstanceRequestArgs{
			Ami:          pulumi.String("ami-1234"),
			InstanceType: pulumi.String("c4.xlarge"),
			SpotPrice:    pulumi.String("0.03"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("CheapWorker"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSpotInstanceRequest

func GetSpotInstanceRequest(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SpotInstanceRequestState, opts ...pulumi.ResourceOption) (*SpotInstanceRequest, error)

GetSpotInstanceRequest gets an existing SpotInstanceRequest resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSpotInstanceRequest

func NewSpotInstanceRequest(ctx *pulumi.Context,
	name string, args *SpotInstanceRequestArgs, opts ...pulumi.ResourceOption) (*SpotInstanceRequest, error)

NewSpotInstanceRequest registers a new resource with the given unique name, arguments, and options.

func (*SpotInstanceRequest) ElementType

func (*SpotInstanceRequest) ElementType() reflect.Type

func (*SpotInstanceRequest) ToSpotInstanceRequestOutput

func (i *SpotInstanceRequest) ToSpotInstanceRequestOutput() SpotInstanceRequestOutput

func (*SpotInstanceRequest) ToSpotInstanceRequestOutputWithContext

func (i *SpotInstanceRequest) ToSpotInstanceRequestOutputWithContext(ctx context.Context) SpotInstanceRequestOutput

func (*SpotInstanceRequest) ToSpotInstanceRequestPtrOutput

func (i *SpotInstanceRequest) ToSpotInstanceRequestPtrOutput() SpotInstanceRequestPtrOutput

func (*SpotInstanceRequest) ToSpotInstanceRequestPtrOutputWithContext

func (i *SpotInstanceRequest) ToSpotInstanceRequestPtrOutputWithContext(ctx context.Context) SpotInstanceRequestPtrOutput

type SpotInstanceRequestArgs

type SpotInstanceRequestArgs struct {
	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringPtrInput
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringPtrInput
	// The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
	// The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.
	// Note that you can't specify an Availability Zone group or a launch group if you specify a duration.
	BlockDurationMinutes pulumi.IntPtrInput
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification SpotInstanceRequestCapacityReservationSpecificationPtrInput
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntPtrInput
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntPtrInput
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification SpotInstanceRequestCreditSpecificationPtrInput
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolPtrInput
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices SpotInstanceRequestEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions SpotInstanceRequestEnclaveOptionsPtrInput
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices SpotInstanceRequestEphemeralBlockDeviceArrayInput
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrInput
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrInput
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringPtrInput
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.StringPtrInput
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`.
	InstanceInterruptionBehavior pulumi.StringPtrInput
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`. Use the argument `instanceInterruptionBehavior` instead.
	//
	// Deprecated: Use the parameter "instance_interruption_behavior" instead.
	InstanceInterruptionBehaviour pulumi.StringPtrInput
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringPtrInput
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntPtrInput
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayInput
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringPtrInput
	// A launch group is a group of spot instances that launch together and terminate together.
	// If left empty instances are launched and terminated individually.
	LaunchGroup pulumi.StringPtrInput
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate SpotInstanceRequestLaunchTemplatePtrInput
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions SpotInstanceRequestMetadataOptionsPtrInput
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces SpotInstanceRequestNetworkInterfaceArrayInput
	// Placement Group to start the instance in.
	PlacementGroup pulumi.StringPtrInput
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringPtrInput
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice SpotInstanceRequestRootBlockDevicePtrInput
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayInput
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	SecurityGroups pulumi.StringArrayInput
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrInput
	// The maximum price to request on the spot market.
	SpotPrice pulumi.StringPtrInput
	// If set to `one-time`, after
	// the instance is terminated, the spot request will be closed.
	SpotType pulumi.StringPtrInput
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringPtrInput
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringPtrInput
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.
	ValidUntil pulumi.StringPtrInput
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrInput
}

The set of arguments for constructing a SpotInstanceRequest resource.

func (SpotInstanceRequestArgs) ElementType

func (SpotInstanceRequestArgs) ElementType() reflect.Type

type SpotInstanceRequestArray

type SpotInstanceRequestArray []SpotInstanceRequestInput

func (SpotInstanceRequestArray) ElementType

func (SpotInstanceRequestArray) ElementType() reflect.Type

func (SpotInstanceRequestArray) ToSpotInstanceRequestArrayOutput

func (i SpotInstanceRequestArray) ToSpotInstanceRequestArrayOutput() SpotInstanceRequestArrayOutput

func (SpotInstanceRequestArray) ToSpotInstanceRequestArrayOutputWithContext

func (i SpotInstanceRequestArray) ToSpotInstanceRequestArrayOutputWithContext(ctx context.Context) SpotInstanceRequestArrayOutput

type SpotInstanceRequestArrayInput

type SpotInstanceRequestArrayInput interface {
	pulumi.Input

	ToSpotInstanceRequestArrayOutput() SpotInstanceRequestArrayOutput
	ToSpotInstanceRequestArrayOutputWithContext(context.Context) SpotInstanceRequestArrayOutput
}

SpotInstanceRequestArrayInput is an input type that accepts SpotInstanceRequestArray and SpotInstanceRequestArrayOutput values. You can construct a concrete instance of `SpotInstanceRequestArrayInput` via:

SpotInstanceRequestArray{ SpotInstanceRequestArgs{...} }

type SpotInstanceRequestArrayOutput

type SpotInstanceRequestArrayOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestArrayOutput) ElementType

func (SpotInstanceRequestArrayOutput) Index

func (SpotInstanceRequestArrayOutput) ToSpotInstanceRequestArrayOutput

func (o SpotInstanceRequestArrayOutput) ToSpotInstanceRequestArrayOutput() SpotInstanceRequestArrayOutput

func (SpotInstanceRequestArrayOutput) ToSpotInstanceRequestArrayOutputWithContext

func (o SpotInstanceRequestArrayOutput) ToSpotInstanceRequestArrayOutputWithContext(ctx context.Context) SpotInstanceRequestArrayOutput

type SpotInstanceRequestCapacityReservationSpecification added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecification struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).
	CapacityReservationPreference *string `pulumi:"capacityReservationPreference"`
	// Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.
	CapacityReservationTarget *SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTarget `pulumi:"capacityReservationTarget"`
}

type SpotInstanceRequestCapacityReservationSpecificationArgs added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationArgs struct {
	// Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).
	CapacityReservationPreference pulumi.StringPtrInput `pulumi:"capacityReservationPreference"`
	// Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.
	CapacityReservationTarget SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrInput `pulumi:"capacityReservationTarget"`
}

func (SpotInstanceRequestCapacityReservationSpecificationArgs) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationOutputWithContext added in v4.6.0

func (i SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationOutputWithContext(ctx context.Context) SpotInstanceRequestCapacityReservationSpecificationOutput

func (SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutput added in v4.6.0

func (i SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutput() SpotInstanceRequestCapacityReservationSpecificationPtrOutput

func (SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (i SpotInstanceRequestCapacityReservationSpecificationArgs) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCapacityReservationSpecificationPtrOutput

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTarget added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTarget struct {
	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId *string `pulumi:"capacityReservationId"`
}

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs struct {
	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId pulumi.StringPtrInput `pulumi:"capacityReservationId"`
}

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutputWithContext added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetInput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetInput interface {
	pulumi.Input

	ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput() SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput
	ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutputWithContext(context.Context) SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput
}

SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetInput is an input type that accepts SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs and SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput values. You can construct a concrete instance of `SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetInput` via:

SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs{...}

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) CapacityReservationId added in v4.6.0

The ID of the Capacity Reservation in which to run the instance.

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutputWithContext added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrInput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput() SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput
	ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext(context.Context) SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput
}

SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrInput is an input type that accepts SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs, SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtr and SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput values. You can construct a concrete instance of `SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrInput` via:

        SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetArgs{...}

or:

        nil

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput) CapacityReservationId added in v4.6.0

The ID of the Capacity Reservation in which to run the instance.

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput) Elem added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutput) ToSpotInstanceRequestCapacityReservationSpecificationCapacityReservationTargetPtrOutputWithContext added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationInput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationInput interface {
	pulumi.Input

	ToSpotInstanceRequestCapacityReservationSpecificationOutput() SpotInstanceRequestCapacityReservationSpecificationOutput
	ToSpotInstanceRequestCapacityReservationSpecificationOutputWithContext(context.Context) SpotInstanceRequestCapacityReservationSpecificationOutput
}

SpotInstanceRequestCapacityReservationSpecificationInput is an input type that accepts SpotInstanceRequestCapacityReservationSpecificationArgs and SpotInstanceRequestCapacityReservationSpecificationOutput values. You can construct a concrete instance of `SpotInstanceRequestCapacityReservationSpecificationInput` via:

SpotInstanceRequestCapacityReservationSpecificationArgs{...}

type SpotInstanceRequestCapacityReservationSpecificationOutput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCapacityReservationSpecificationOutput) CapacityReservationPreference added in v4.6.0

Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).

func (SpotInstanceRequestCapacityReservationSpecificationOutput) CapacityReservationTarget added in v4.6.0

Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.

func (SpotInstanceRequestCapacityReservationSpecificationOutput) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationOutputWithContext added in v4.6.0

func (o SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationOutputWithContext(ctx context.Context) SpotInstanceRequestCapacityReservationSpecificationOutput

func (SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (o SpotInstanceRequestCapacityReservationSpecificationOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCapacityReservationSpecificationPtrOutput

type SpotInstanceRequestCapacityReservationSpecificationPtrInput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestCapacityReservationSpecificationPtrOutput() SpotInstanceRequestCapacityReservationSpecificationPtrOutput
	ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext(context.Context) SpotInstanceRequestCapacityReservationSpecificationPtrOutput
}

SpotInstanceRequestCapacityReservationSpecificationPtrInput is an input type that accepts SpotInstanceRequestCapacityReservationSpecificationArgs, SpotInstanceRequestCapacityReservationSpecificationPtr and SpotInstanceRequestCapacityReservationSpecificationPtrOutput values. You can construct a concrete instance of `SpotInstanceRequestCapacityReservationSpecificationPtrInput` via:

        SpotInstanceRequestCapacityReservationSpecificationArgs{...}

or:

        nil

type SpotInstanceRequestCapacityReservationSpecificationPtrOutput added in v4.6.0

type SpotInstanceRequestCapacityReservationSpecificationPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) CapacityReservationPreference added in v4.6.0

Indicates the instance's Capacity Reservation preferences. Can be `"open"` or `"none"`. (Default: `"open"`).

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) CapacityReservationTarget added in v4.6.0

Information about the target Capacity Reservation. See Capacity Reservation Target below for more details.

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) Elem added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) ElementType added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutput added in v4.6.0

func (SpotInstanceRequestCapacityReservationSpecificationPtrOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext added in v4.6.0

func (o SpotInstanceRequestCapacityReservationSpecificationPtrOutput) ToSpotInstanceRequestCapacityReservationSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCapacityReservationSpecificationPtrOutput

type SpotInstanceRequestCreditSpecification

type SpotInstanceRequestCreditSpecification struct {
	// Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits *string `pulumi:"cpuCredits"`
}

type SpotInstanceRequestCreditSpecificationArgs

type SpotInstanceRequestCreditSpecificationArgs struct {
	// Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.
	CpuCredits pulumi.StringPtrInput `pulumi:"cpuCredits"`
}

func (SpotInstanceRequestCreditSpecificationArgs) ElementType

func (SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationOutput

func (i SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationOutput() SpotInstanceRequestCreditSpecificationOutput

func (SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationOutputWithContext

func (i SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationOutputWithContext(ctx context.Context) SpotInstanceRequestCreditSpecificationOutput

func (SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationPtrOutput

func (i SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationPtrOutput() SpotInstanceRequestCreditSpecificationPtrOutput

func (SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext

func (i SpotInstanceRequestCreditSpecificationArgs) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCreditSpecificationPtrOutput

type SpotInstanceRequestCreditSpecificationInput

type SpotInstanceRequestCreditSpecificationInput interface {
	pulumi.Input

	ToSpotInstanceRequestCreditSpecificationOutput() SpotInstanceRequestCreditSpecificationOutput
	ToSpotInstanceRequestCreditSpecificationOutputWithContext(context.Context) SpotInstanceRequestCreditSpecificationOutput
}

SpotInstanceRequestCreditSpecificationInput is an input type that accepts SpotInstanceRequestCreditSpecificationArgs and SpotInstanceRequestCreditSpecificationOutput values. You can construct a concrete instance of `SpotInstanceRequestCreditSpecificationInput` via:

SpotInstanceRequestCreditSpecificationArgs{...}

type SpotInstanceRequestCreditSpecificationOutput

type SpotInstanceRequestCreditSpecificationOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCreditSpecificationOutput) CpuCredits

Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (SpotInstanceRequestCreditSpecificationOutput) ElementType

func (SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationOutput

func (o SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationOutput() SpotInstanceRequestCreditSpecificationOutput

func (SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationOutputWithContext

func (o SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationOutputWithContext(ctx context.Context) SpotInstanceRequestCreditSpecificationOutput

func (SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationPtrOutput

func (o SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationPtrOutput() SpotInstanceRequestCreditSpecificationPtrOutput

func (SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext

func (o SpotInstanceRequestCreditSpecificationOutput) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCreditSpecificationPtrOutput

type SpotInstanceRequestCreditSpecificationPtrInput

type SpotInstanceRequestCreditSpecificationPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestCreditSpecificationPtrOutput() SpotInstanceRequestCreditSpecificationPtrOutput
	ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext(context.Context) SpotInstanceRequestCreditSpecificationPtrOutput
}

SpotInstanceRequestCreditSpecificationPtrInput is an input type that accepts SpotInstanceRequestCreditSpecificationArgs, SpotInstanceRequestCreditSpecificationPtr and SpotInstanceRequestCreditSpecificationPtrOutput values. You can construct a concrete instance of `SpotInstanceRequestCreditSpecificationPtrInput` via:

        SpotInstanceRequestCreditSpecificationArgs{...}

or:

        nil

type SpotInstanceRequestCreditSpecificationPtrOutput

type SpotInstanceRequestCreditSpecificationPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestCreditSpecificationPtrOutput) CpuCredits

Credit option for CPU usage. Valid values include `standard` or `unlimited`. T3 instances are launched as unlimited by default. T2 instances are launched as standard by default.

func (SpotInstanceRequestCreditSpecificationPtrOutput) Elem

func (SpotInstanceRequestCreditSpecificationPtrOutput) ElementType

func (SpotInstanceRequestCreditSpecificationPtrOutput) ToSpotInstanceRequestCreditSpecificationPtrOutput

func (o SpotInstanceRequestCreditSpecificationPtrOutput) ToSpotInstanceRequestCreditSpecificationPtrOutput() SpotInstanceRequestCreditSpecificationPtrOutput

func (SpotInstanceRequestCreditSpecificationPtrOutput) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext

func (o SpotInstanceRequestCreditSpecificationPtrOutput) ToSpotInstanceRequestCreditSpecificationPtrOutputWithContext(ctx context.Context) SpotInstanceRequestCreditSpecificationPtrOutput

type SpotInstanceRequestEbsBlockDevice

type SpotInstanceRequestEbsBlockDevice struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName string `pulumi:"deviceName"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.
	Encrypted *bool `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops *int `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// Snapshot ID to mount.
	SnapshotId *string `pulumi:"snapshotId"`
	// A map of tags to assign to the device.
	Tags map[string]string `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput *int    `pulumi:"throughput"`
	VolumeId   *string `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize *int `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType *string `pulumi:"volumeType"`
}

type SpotInstanceRequestEbsBlockDeviceArgs

type SpotInstanceRequestEbsBlockDeviceArgs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// Snapshot ID to mount.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// A map of tags to assign to the device.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeId   pulumi.StringPtrInput `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (SpotInstanceRequestEbsBlockDeviceArgs) ElementType

func (SpotInstanceRequestEbsBlockDeviceArgs) ToSpotInstanceRequestEbsBlockDeviceOutput

func (i SpotInstanceRequestEbsBlockDeviceArgs) ToSpotInstanceRequestEbsBlockDeviceOutput() SpotInstanceRequestEbsBlockDeviceOutput

func (SpotInstanceRequestEbsBlockDeviceArgs) ToSpotInstanceRequestEbsBlockDeviceOutputWithContext

func (i SpotInstanceRequestEbsBlockDeviceArgs) ToSpotInstanceRequestEbsBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestEbsBlockDeviceOutput

type SpotInstanceRequestEbsBlockDeviceArray

type SpotInstanceRequestEbsBlockDeviceArray []SpotInstanceRequestEbsBlockDeviceInput

func (SpotInstanceRequestEbsBlockDeviceArray) ElementType

func (SpotInstanceRequestEbsBlockDeviceArray) ToSpotInstanceRequestEbsBlockDeviceArrayOutput

func (i SpotInstanceRequestEbsBlockDeviceArray) ToSpotInstanceRequestEbsBlockDeviceArrayOutput() SpotInstanceRequestEbsBlockDeviceArrayOutput

func (SpotInstanceRequestEbsBlockDeviceArray) ToSpotInstanceRequestEbsBlockDeviceArrayOutputWithContext

func (i SpotInstanceRequestEbsBlockDeviceArray) ToSpotInstanceRequestEbsBlockDeviceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestEbsBlockDeviceArrayOutput

type SpotInstanceRequestEbsBlockDeviceArrayInput

type SpotInstanceRequestEbsBlockDeviceArrayInput interface {
	pulumi.Input

	ToSpotInstanceRequestEbsBlockDeviceArrayOutput() SpotInstanceRequestEbsBlockDeviceArrayOutput
	ToSpotInstanceRequestEbsBlockDeviceArrayOutputWithContext(context.Context) SpotInstanceRequestEbsBlockDeviceArrayOutput
}

SpotInstanceRequestEbsBlockDeviceArrayInput is an input type that accepts SpotInstanceRequestEbsBlockDeviceArray and SpotInstanceRequestEbsBlockDeviceArrayOutput values. You can construct a concrete instance of `SpotInstanceRequestEbsBlockDeviceArrayInput` via:

SpotInstanceRequestEbsBlockDeviceArray{ SpotInstanceRequestEbsBlockDeviceArgs{...} }

type SpotInstanceRequestEbsBlockDeviceArrayOutput

type SpotInstanceRequestEbsBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEbsBlockDeviceArrayOutput) ElementType

func (SpotInstanceRequestEbsBlockDeviceArrayOutput) Index

func (SpotInstanceRequestEbsBlockDeviceArrayOutput) ToSpotInstanceRequestEbsBlockDeviceArrayOutput

func (o SpotInstanceRequestEbsBlockDeviceArrayOutput) ToSpotInstanceRequestEbsBlockDeviceArrayOutput() SpotInstanceRequestEbsBlockDeviceArrayOutput

func (SpotInstanceRequestEbsBlockDeviceArrayOutput) ToSpotInstanceRequestEbsBlockDeviceArrayOutputWithContext

func (o SpotInstanceRequestEbsBlockDeviceArrayOutput) ToSpotInstanceRequestEbsBlockDeviceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestEbsBlockDeviceArrayOutput

type SpotInstanceRequestEbsBlockDeviceInput

type SpotInstanceRequestEbsBlockDeviceInput interface {
	pulumi.Input

	ToSpotInstanceRequestEbsBlockDeviceOutput() SpotInstanceRequestEbsBlockDeviceOutput
	ToSpotInstanceRequestEbsBlockDeviceOutputWithContext(context.Context) SpotInstanceRequestEbsBlockDeviceOutput
}

SpotInstanceRequestEbsBlockDeviceInput is an input type that accepts SpotInstanceRequestEbsBlockDeviceArgs and SpotInstanceRequestEbsBlockDeviceOutput values. You can construct a concrete instance of `SpotInstanceRequestEbsBlockDeviceInput` via:

SpotInstanceRequestEbsBlockDeviceArgs{...}

type SpotInstanceRequestEbsBlockDeviceOutput

type SpotInstanceRequestEbsBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEbsBlockDeviceOutput) DeleteOnTermination

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (SpotInstanceRequestEbsBlockDeviceOutput) DeviceName

Name of the device to mount.

func (SpotInstanceRequestEbsBlockDeviceOutput) ElementType

func (SpotInstanceRequestEbsBlockDeviceOutput) Encrypted

Enables [EBS encryption](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) on the volume. Defaults to `false`. Cannot be used with `snapshotId`. Must be configured to perform drift detection.

func (SpotInstanceRequestEbsBlockDeviceOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (SpotInstanceRequestEbsBlockDeviceOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (SpotInstanceRequestEbsBlockDeviceOutput) SnapshotId

Snapshot ID to mount.

func (SpotInstanceRequestEbsBlockDeviceOutput) Tags

A map of tags to assign to the device.

func (SpotInstanceRequestEbsBlockDeviceOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (SpotInstanceRequestEbsBlockDeviceOutput) ToSpotInstanceRequestEbsBlockDeviceOutput

func (o SpotInstanceRequestEbsBlockDeviceOutput) ToSpotInstanceRequestEbsBlockDeviceOutput() SpotInstanceRequestEbsBlockDeviceOutput

func (SpotInstanceRequestEbsBlockDeviceOutput) ToSpotInstanceRequestEbsBlockDeviceOutputWithContext

func (o SpotInstanceRequestEbsBlockDeviceOutput) ToSpotInstanceRequestEbsBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestEbsBlockDeviceOutput

func (SpotInstanceRequestEbsBlockDeviceOutput) VolumeId

func (SpotInstanceRequestEbsBlockDeviceOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (SpotInstanceRequestEbsBlockDeviceOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type SpotInstanceRequestEnclaveOptions

type SpotInstanceRequestEnclaveOptions struct {
	// Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.
	Enabled *bool `pulumi:"enabled"`
}

type SpotInstanceRequestEnclaveOptionsArgs

type SpotInstanceRequestEnclaveOptionsArgs struct {
	// Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (SpotInstanceRequestEnclaveOptionsArgs) ElementType

func (SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsOutput

func (i SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsOutput() SpotInstanceRequestEnclaveOptionsOutput

func (SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsOutputWithContext

func (i SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsOutputWithContext(ctx context.Context) SpotInstanceRequestEnclaveOptionsOutput

func (SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsPtrOutput

func (i SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsPtrOutput() SpotInstanceRequestEnclaveOptionsPtrOutput

func (SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext

func (i SpotInstanceRequestEnclaveOptionsArgs) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestEnclaveOptionsPtrOutput

type SpotInstanceRequestEnclaveOptionsInput

type SpotInstanceRequestEnclaveOptionsInput interface {
	pulumi.Input

	ToSpotInstanceRequestEnclaveOptionsOutput() SpotInstanceRequestEnclaveOptionsOutput
	ToSpotInstanceRequestEnclaveOptionsOutputWithContext(context.Context) SpotInstanceRequestEnclaveOptionsOutput
}

SpotInstanceRequestEnclaveOptionsInput is an input type that accepts SpotInstanceRequestEnclaveOptionsArgs and SpotInstanceRequestEnclaveOptionsOutput values. You can construct a concrete instance of `SpotInstanceRequestEnclaveOptionsInput` via:

SpotInstanceRequestEnclaveOptionsArgs{...}

type SpotInstanceRequestEnclaveOptionsOutput

type SpotInstanceRequestEnclaveOptionsOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEnclaveOptionsOutput) ElementType

func (SpotInstanceRequestEnclaveOptionsOutput) Enabled

Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.

func (SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsOutput

func (o SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsOutput() SpotInstanceRequestEnclaveOptionsOutput

func (SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsOutputWithContext

func (o SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsOutputWithContext(ctx context.Context) SpotInstanceRequestEnclaveOptionsOutput

func (SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutput

func (o SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutput() SpotInstanceRequestEnclaveOptionsPtrOutput

func (SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext

func (o SpotInstanceRequestEnclaveOptionsOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestEnclaveOptionsPtrOutput

type SpotInstanceRequestEnclaveOptionsPtrInput

type SpotInstanceRequestEnclaveOptionsPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestEnclaveOptionsPtrOutput() SpotInstanceRequestEnclaveOptionsPtrOutput
	ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext(context.Context) SpotInstanceRequestEnclaveOptionsPtrOutput
}

SpotInstanceRequestEnclaveOptionsPtrInput is an input type that accepts SpotInstanceRequestEnclaveOptionsArgs, SpotInstanceRequestEnclaveOptionsPtr and SpotInstanceRequestEnclaveOptionsPtrOutput values. You can construct a concrete instance of `SpotInstanceRequestEnclaveOptionsPtrInput` via:

        SpotInstanceRequestEnclaveOptionsArgs{...}

or:

        nil

type SpotInstanceRequestEnclaveOptionsPtrOutput

type SpotInstanceRequestEnclaveOptionsPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEnclaveOptionsPtrOutput) Elem

func (SpotInstanceRequestEnclaveOptionsPtrOutput) ElementType

func (SpotInstanceRequestEnclaveOptionsPtrOutput) Enabled

Whether Nitro Enclaves will be enabled on the instance. Defaults to `false`.

func (SpotInstanceRequestEnclaveOptionsPtrOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutput

func (o SpotInstanceRequestEnclaveOptionsPtrOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutput() SpotInstanceRequestEnclaveOptionsPtrOutput

func (SpotInstanceRequestEnclaveOptionsPtrOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext

func (o SpotInstanceRequestEnclaveOptionsPtrOutput) ToSpotInstanceRequestEnclaveOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestEnclaveOptionsPtrOutput

type SpotInstanceRequestEphemeralBlockDevice

type SpotInstanceRequestEphemeralBlockDevice struct {
	// The name of the block device to mount on the instance.
	DeviceName string `pulumi:"deviceName"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice *bool `pulumi:"noDevice"`
	// [Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).
	VirtualName *string `pulumi:"virtualName"`
}

type SpotInstanceRequestEphemeralBlockDeviceArgs

type SpotInstanceRequestEphemeralBlockDeviceArgs struct {
	// The name of the block device to mount on the instance.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Suppresses the specified device included in the AMI's block device mapping.
	NoDevice pulumi.BoolPtrInput `pulumi:"noDevice"`
	// [Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

func (SpotInstanceRequestEphemeralBlockDeviceArgs) ElementType

func (SpotInstanceRequestEphemeralBlockDeviceArgs) ToSpotInstanceRequestEphemeralBlockDeviceOutput

func (i SpotInstanceRequestEphemeralBlockDeviceArgs) ToSpotInstanceRequestEphemeralBlockDeviceOutput() SpotInstanceRequestEphemeralBlockDeviceOutput

func (SpotInstanceRequestEphemeralBlockDeviceArgs) ToSpotInstanceRequestEphemeralBlockDeviceOutputWithContext

func (i SpotInstanceRequestEphemeralBlockDeviceArgs) ToSpotInstanceRequestEphemeralBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestEphemeralBlockDeviceOutput

type SpotInstanceRequestEphemeralBlockDeviceArray

type SpotInstanceRequestEphemeralBlockDeviceArray []SpotInstanceRequestEphemeralBlockDeviceInput

func (SpotInstanceRequestEphemeralBlockDeviceArray) ElementType

func (SpotInstanceRequestEphemeralBlockDeviceArray) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutput

func (i SpotInstanceRequestEphemeralBlockDeviceArray) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutput() SpotInstanceRequestEphemeralBlockDeviceArrayOutput

func (SpotInstanceRequestEphemeralBlockDeviceArray) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutputWithContext

func (i SpotInstanceRequestEphemeralBlockDeviceArray) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestEphemeralBlockDeviceArrayOutput

type SpotInstanceRequestEphemeralBlockDeviceArrayInput

type SpotInstanceRequestEphemeralBlockDeviceArrayInput interface {
	pulumi.Input

	ToSpotInstanceRequestEphemeralBlockDeviceArrayOutput() SpotInstanceRequestEphemeralBlockDeviceArrayOutput
	ToSpotInstanceRequestEphemeralBlockDeviceArrayOutputWithContext(context.Context) SpotInstanceRequestEphemeralBlockDeviceArrayOutput
}

SpotInstanceRequestEphemeralBlockDeviceArrayInput is an input type that accepts SpotInstanceRequestEphemeralBlockDeviceArray and SpotInstanceRequestEphemeralBlockDeviceArrayOutput values. You can construct a concrete instance of `SpotInstanceRequestEphemeralBlockDeviceArrayInput` via:

SpotInstanceRequestEphemeralBlockDeviceArray{ SpotInstanceRequestEphemeralBlockDeviceArgs{...} }

type SpotInstanceRequestEphemeralBlockDeviceArrayOutput

type SpotInstanceRequestEphemeralBlockDeviceArrayOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEphemeralBlockDeviceArrayOutput) ElementType

func (SpotInstanceRequestEphemeralBlockDeviceArrayOutput) Index

func (SpotInstanceRequestEphemeralBlockDeviceArrayOutput) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutput

func (o SpotInstanceRequestEphemeralBlockDeviceArrayOutput) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutput() SpotInstanceRequestEphemeralBlockDeviceArrayOutput

func (SpotInstanceRequestEphemeralBlockDeviceArrayOutput) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutputWithContext

func (o SpotInstanceRequestEphemeralBlockDeviceArrayOutput) ToSpotInstanceRequestEphemeralBlockDeviceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestEphemeralBlockDeviceArrayOutput

type SpotInstanceRequestEphemeralBlockDeviceInput

type SpotInstanceRequestEphemeralBlockDeviceInput interface {
	pulumi.Input

	ToSpotInstanceRequestEphemeralBlockDeviceOutput() SpotInstanceRequestEphemeralBlockDeviceOutput
	ToSpotInstanceRequestEphemeralBlockDeviceOutputWithContext(context.Context) SpotInstanceRequestEphemeralBlockDeviceOutput
}

SpotInstanceRequestEphemeralBlockDeviceInput is an input type that accepts SpotInstanceRequestEphemeralBlockDeviceArgs and SpotInstanceRequestEphemeralBlockDeviceOutput values. You can construct a concrete instance of `SpotInstanceRequestEphemeralBlockDeviceInput` via:

SpotInstanceRequestEphemeralBlockDeviceArgs{...}

type SpotInstanceRequestEphemeralBlockDeviceOutput

type SpotInstanceRequestEphemeralBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestEphemeralBlockDeviceOutput) DeviceName

The name of the block device to mount on the instance.

func (SpotInstanceRequestEphemeralBlockDeviceOutput) ElementType

func (SpotInstanceRequestEphemeralBlockDeviceOutput) NoDevice

Suppresses the specified device included in the AMI's block device mapping.

func (SpotInstanceRequestEphemeralBlockDeviceOutput) ToSpotInstanceRequestEphemeralBlockDeviceOutput

func (o SpotInstanceRequestEphemeralBlockDeviceOutput) ToSpotInstanceRequestEphemeralBlockDeviceOutput() SpotInstanceRequestEphemeralBlockDeviceOutput

func (SpotInstanceRequestEphemeralBlockDeviceOutput) ToSpotInstanceRequestEphemeralBlockDeviceOutputWithContext

func (o SpotInstanceRequestEphemeralBlockDeviceOutput) ToSpotInstanceRequestEphemeralBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestEphemeralBlockDeviceOutput

func (SpotInstanceRequestEphemeralBlockDeviceOutput) VirtualName

[Instance Store Device Name](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#InstanceStoreDeviceNames) (e.g. `ephemeral0`).

type SpotInstanceRequestInput

type SpotInstanceRequestInput interface {
	pulumi.Input

	ToSpotInstanceRequestOutput() SpotInstanceRequestOutput
	ToSpotInstanceRequestOutputWithContext(ctx context.Context) SpotInstanceRequestOutput
}

type SpotInstanceRequestLaunchTemplate added in v4.14.0

type SpotInstanceRequestLaunchTemplate struct {
	// The ID of the launch template. Conflicts with `name`.
	Id *string `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name *string `pulumi:"name"`
	// Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.
	Version *string `pulumi:"version"`
}

type SpotInstanceRequestLaunchTemplateArgs added in v4.14.0

type SpotInstanceRequestLaunchTemplateArgs struct {
	// The ID of the launch template. Conflicts with `name`.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The name of the launch template. Conflicts with `id`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (SpotInstanceRequestLaunchTemplateArgs) ElementType added in v4.14.0

func (SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplateOutput added in v4.14.0

func (i SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplateOutput() SpotInstanceRequestLaunchTemplateOutput

func (SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplateOutputWithContext added in v4.14.0

func (i SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplateOutputWithContext(ctx context.Context) SpotInstanceRequestLaunchTemplateOutput

func (SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplatePtrOutput added in v4.14.0

func (i SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplatePtrOutput() SpotInstanceRequestLaunchTemplatePtrOutput

func (SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext added in v4.14.0

func (i SpotInstanceRequestLaunchTemplateArgs) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext(ctx context.Context) SpotInstanceRequestLaunchTemplatePtrOutput

type SpotInstanceRequestLaunchTemplateInput added in v4.14.0

type SpotInstanceRequestLaunchTemplateInput interface {
	pulumi.Input

	ToSpotInstanceRequestLaunchTemplateOutput() SpotInstanceRequestLaunchTemplateOutput
	ToSpotInstanceRequestLaunchTemplateOutputWithContext(context.Context) SpotInstanceRequestLaunchTemplateOutput
}

SpotInstanceRequestLaunchTemplateInput is an input type that accepts SpotInstanceRequestLaunchTemplateArgs and SpotInstanceRequestLaunchTemplateOutput values. You can construct a concrete instance of `SpotInstanceRequestLaunchTemplateInput` via:

SpotInstanceRequestLaunchTemplateArgs{...}

type SpotInstanceRequestLaunchTemplateOutput added in v4.14.0

type SpotInstanceRequestLaunchTemplateOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestLaunchTemplateOutput) ElementType added in v4.14.0

func (SpotInstanceRequestLaunchTemplateOutput) Id added in v4.14.0

The ID of the launch template. Conflicts with `name`.

func (SpotInstanceRequestLaunchTemplateOutput) Name added in v4.14.0

The name of the launch template. Conflicts with `id`.

func (SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplateOutput added in v4.14.0

func (o SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplateOutput() SpotInstanceRequestLaunchTemplateOutput

func (SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplateOutputWithContext added in v4.14.0

func (o SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplateOutputWithContext(ctx context.Context) SpotInstanceRequestLaunchTemplateOutput

func (SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplatePtrOutput added in v4.14.0

func (o SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplatePtrOutput() SpotInstanceRequestLaunchTemplatePtrOutput

func (SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext added in v4.14.0

func (o SpotInstanceRequestLaunchTemplateOutput) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext(ctx context.Context) SpotInstanceRequestLaunchTemplatePtrOutput

func (SpotInstanceRequestLaunchTemplateOutput) Version added in v4.14.0

Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.

type SpotInstanceRequestLaunchTemplatePtrInput added in v4.14.0

type SpotInstanceRequestLaunchTemplatePtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestLaunchTemplatePtrOutput() SpotInstanceRequestLaunchTemplatePtrOutput
	ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext(context.Context) SpotInstanceRequestLaunchTemplatePtrOutput
}

SpotInstanceRequestLaunchTemplatePtrInput is an input type that accepts SpotInstanceRequestLaunchTemplateArgs, SpotInstanceRequestLaunchTemplatePtr and SpotInstanceRequestLaunchTemplatePtrOutput values. You can construct a concrete instance of `SpotInstanceRequestLaunchTemplatePtrInput` via:

        SpotInstanceRequestLaunchTemplateArgs{...}

or:

        nil

type SpotInstanceRequestLaunchTemplatePtrOutput added in v4.14.0

type SpotInstanceRequestLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestLaunchTemplatePtrOutput) Elem added in v4.14.0

func (SpotInstanceRequestLaunchTemplatePtrOutput) ElementType added in v4.14.0

func (SpotInstanceRequestLaunchTemplatePtrOutput) Id added in v4.14.0

The ID of the launch template. Conflicts with `name`.

func (SpotInstanceRequestLaunchTemplatePtrOutput) Name added in v4.14.0

The name of the launch template. Conflicts with `id`.

func (SpotInstanceRequestLaunchTemplatePtrOutput) ToSpotInstanceRequestLaunchTemplatePtrOutput added in v4.14.0

func (o SpotInstanceRequestLaunchTemplatePtrOutput) ToSpotInstanceRequestLaunchTemplatePtrOutput() SpotInstanceRequestLaunchTemplatePtrOutput

func (SpotInstanceRequestLaunchTemplatePtrOutput) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext added in v4.14.0

func (o SpotInstanceRequestLaunchTemplatePtrOutput) ToSpotInstanceRequestLaunchTemplatePtrOutputWithContext(ctx context.Context) SpotInstanceRequestLaunchTemplatePtrOutput

func (SpotInstanceRequestLaunchTemplatePtrOutput) Version added in v4.14.0

Template version. Can be a specific version number, `$Latest` or `$Default`. The default value is `$Default`.

type SpotInstanceRequestMap

type SpotInstanceRequestMap map[string]SpotInstanceRequestInput

func (SpotInstanceRequestMap) ElementType

func (SpotInstanceRequestMap) ElementType() reflect.Type

func (SpotInstanceRequestMap) ToSpotInstanceRequestMapOutput

func (i SpotInstanceRequestMap) ToSpotInstanceRequestMapOutput() SpotInstanceRequestMapOutput

func (SpotInstanceRequestMap) ToSpotInstanceRequestMapOutputWithContext

func (i SpotInstanceRequestMap) ToSpotInstanceRequestMapOutputWithContext(ctx context.Context) SpotInstanceRequestMapOutput

type SpotInstanceRequestMapInput

type SpotInstanceRequestMapInput interface {
	pulumi.Input

	ToSpotInstanceRequestMapOutput() SpotInstanceRequestMapOutput
	ToSpotInstanceRequestMapOutputWithContext(context.Context) SpotInstanceRequestMapOutput
}

SpotInstanceRequestMapInput is an input type that accepts SpotInstanceRequestMap and SpotInstanceRequestMapOutput values. You can construct a concrete instance of `SpotInstanceRequestMapInput` via:

SpotInstanceRequestMap{ "key": SpotInstanceRequestArgs{...} }

type SpotInstanceRequestMapOutput

type SpotInstanceRequestMapOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestMapOutput) ElementType

func (SpotInstanceRequestMapOutput) MapIndex

func (SpotInstanceRequestMapOutput) ToSpotInstanceRequestMapOutput

func (o SpotInstanceRequestMapOutput) ToSpotInstanceRequestMapOutput() SpotInstanceRequestMapOutput

func (SpotInstanceRequestMapOutput) ToSpotInstanceRequestMapOutputWithContext

func (o SpotInstanceRequestMapOutput) ToSpotInstanceRequestMapOutputWithContext(ctx context.Context) SpotInstanceRequestMapOutput

type SpotInstanceRequestMetadataOptions

type SpotInstanceRequestMetadataOptions struct {
	// Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
	HttpEndpoint *string `pulumi:"httpEndpoint"`
	// Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
	HttpPutResponseHopLimit *int `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.
	HttpTokens *string `pulumi:"httpTokens"`
}

type SpotInstanceRequestMetadataOptionsArgs

type SpotInstanceRequestMetadataOptionsArgs struct {
	// Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
	HttpEndpoint pulumi.StringPtrInput `pulumi:"httpEndpoint"`
	// Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
	HttpPutResponseHopLimit pulumi.IntPtrInput `pulumi:"httpPutResponseHopLimit"`
	// Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.
	HttpTokens pulumi.StringPtrInput `pulumi:"httpTokens"`
}

func (SpotInstanceRequestMetadataOptionsArgs) ElementType

func (SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsOutput

func (i SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsOutput() SpotInstanceRequestMetadataOptionsOutput

func (SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsOutputWithContext

func (i SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsOutputWithContext(ctx context.Context) SpotInstanceRequestMetadataOptionsOutput

func (SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsPtrOutput

func (i SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsPtrOutput() SpotInstanceRequestMetadataOptionsPtrOutput

func (SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext

func (i SpotInstanceRequestMetadataOptionsArgs) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestMetadataOptionsPtrOutput

type SpotInstanceRequestMetadataOptionsInput

type SpotInstanceRequestMetadataOptionsInput interface {
	pulumi.Input

	ToSpotInstanceRequestMetadataOptionsOutput() SpotInstanceRequestMetadataOptionsOutput
	ToSpotInstanceRequestMetadataOptionsOutputWithContext(context.Context) SpotInstanceRequestMetadataOptionsOutput
}

SpotInstanceRequestMetadataOptionsInput is an input type that accepts SpotInstanceRequestMetadataOptionsArgs and SpotInstanceRequestMetadataOptionsOutput values. You can construct a concrete instance of `SpotInstanceRequestMetadataOptionsInput` via:

SpotInstanceRequestMetadataOptionsArgs{...}

type SpotInstanceRequestMetadataOptionsOutput

type SpotInstanceRequestMetadataOptionsOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestMetadataOptionsOutput) ElementType

func (SpotInstanceRequestMetadataOptionsOutput) HttpEndpoint

Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.

func (SpotInstanceRequestMetadataOptionsOutput) HttpPutResponseHopLimit

func (o SpotInstanceRequestMetadataOptionsOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.

func (SpotInstanceRequestMetadataOptionsOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.

func (SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsOutput

func (o SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsOutput() SpotInstanceRequestMetadataOptionsOutput

func (SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsOutputWithContext

func (o SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsOutputWithContext(ctx context.Context) SpotInstanceRequestMetadataOptionsOutput

func (SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsPtrOutput

func (o SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsPtrOutput() SpotInstanceRequestMetadataOptionsPtrOutput

func (SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext

func (o SpotInstanceRequestMetadataOptionsOutput) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestMetadataOptionsPtrOutput

type SpotInstanceRequestMetadataOptionsPtrInput

type SpotInstanceRequestMetadataOptionsPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestMetadataOptionsPtrOutput() SpotInstanceRequestMetadataOptionsPtrOutput
	ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext(context.Context) SpotInstanceRequestMetadataOptionsPtrOutput
}

SpotInstanceRequestMetadataOptionsPtrInput is an input type that accepts SpotInstanceRequestMetadataOptionsArgs, SpotInstanceRequestMetadataOptionsPtr and SpotInstanceRequestMetadataOptionsPtrOutput values. You can construct a concrete instance of `SpotInstanceRequestMetadataOptionsPtrInput` via:

        SpotInstanceRequestMetadataOptionsArgs{...}

or:

        nil

type SpotInstanceRequestMetadataOptionsPtrOutput

type SpotInstanceRequestMetadataOptionsPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestMetadataOptionsPtrOutput) Elem

func (SpotInstanceRequestMetadataOptionsPtrOutput) ElementType

func (SpotInstanceRequestMetadataOptionsPtrOutput) HttpEndpoint

Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.

func (SpotInstanceRequestMetadataOptionsPtrOutput) HttpPutResponseHopLimit

Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.

func (SpotInstanceRequestMetadataOptionsPtrOutput) HttpTokens

Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`. Defaults to `optional`.

func (SpotInstanceRequestMetadataOptionsPtrOutput) ToSpotInstanceRequestMetadataOptionsPtrOutput

func (o SpotInstanceRequestMetadataOptionsPtrOutput) ToSpotInstanceRequestMetadataOptionsPtrOutput() SpotInstanceRequestMetadataOptionsPtrOutput

func (SpotInstanceRequestMetadataOptionsPtrOutput) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext

func (o SpotInstanceRequestMetadataOptionsPtrOutput) ToSpotInstanceRequestMetadataOptionsPtrOutputWithContext(ctx context.Context) SpotInstanceRequestMetadataOptionsPtrOutput

type SpotInstanceRequestNetworkInterface

type SpotInstanceRequestNetworkInterface struct {
	// Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Integer index of the network interface attachment. Limited by instance type.
	DeviceIndex int `pulumi:"deviceIndex"`
	// ID of the network interface to attach.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
}

type SpotInstanceRequestNetworkInterfaceArgs

type SpotInstanceRequestNetworkInterfaceArgs struct {
	// Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Integer index of the network interface attachment. Limited by instance type.
	DeviceIndex pulumi.IntInput `pulumi:"deviceIndex"`
	// ID of the network interface to attach.
	NetworkInterfaceId pulumi.StringInput `pulumi:"networkInterfaceId"`
}

func (SpotInstanceRequestNetworkInterfaceArgs) ElementType

func (SpotInstanceRequestNetworkInterfaceArgs) ToSpotInstanceRequestNetworkInterfaceOutput

func (i SpotInstanceRequestNetworkInterfaceArgs) ToSpotInstanceRequestNetworkInterfaceOutput() SpotInstanceRequestNetworkInterfaceOutput

func (SpotInstanceRequestNetworkInterfaceArgs) ToSpotInstanceRequestNetworkInterfaceOutputWithContext

func (i SpotInstanceRequestNetworkInterfaceArgs) ToSpotInstanceRequestNetworkInterfaceOutputWithContext(ctx context.Context) SpotInstanceRequestNetworkInterfaceOutput

type SpotInstanceRequestNetworkInterfaceArray

type SpotInstanceRequestNetworkInterfaceArray []SpotInstanceRequestNetworkInterfaceInput

func (SpotInstanceRequestNetworkInterfaceArray) ElementType

func (SpotInstanceRequestNetworkInterfaceArray) ToSpotInstanceRequestNetworkInterfaceArrayOutput

func (i SpotInstanceRequestNetworkInterfaceArray) ToSpotInstanceRequestNetworkInterfaceArrayOutput() SpotInstanceRequestNetworkInterfaceArrayOutput

func (SpotInstanceRequestNetworkInterfaceArray) ToSpotInstanceRequestNetworkInterfaceArrayOutputWithContext

func (i SpotInstanceRequestNetworkInterfaceArray) ToSpotInstanceRequestNetworkInterfaceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestNetworkInterfaceArrayOutput

type SpotInstanceRequestNetworkInterfaceArrayInput

type SpotInstanceRequestNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToSpotInstanceRequestNetworkInterfaceArrayOutput() SpotInstanceRequestNetworkInterfaceArrayOutput
	ToSpotInstanceRequestNetworkInterfaceArrayOutputWithContext(context.Context) SpotInstanceRequestNetworkInterfaceArrayOutput
}

SpotInstanceRequestNetworkInterfaceArrayInput is an input type that accepts SpotInstanceRequestNetworkInterfaceArray and SpotInstanceRequestNetworkInterfaceArrayOutput values. You can construct a concrete instance of `SpotInstanceRequestNetworkInterfaceArrayInput` via:

SpotInstanceRequestNetworkInterfaceArray{ SpotInstanceRequestNetworkInterfaceArgs{...} }

type SpotInstanceRequestNetworkInterfaceArrayOutput

type SpotInstanceRequestNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestNetworkInterfaceArrayOutput) ElementType

func (SpotInstanceRequestNetworkInterfaceArrayOutput) Index

func (SpotInstanceRequestNetworkInterfaceArrayOutput) ToSpotInstanceRequestNetworkInterfaceArrayOutput

func (o SpotInstanceRequestNetworkInterfaceArrayOutput) ToSpotInstanceRequestNetworkInterfaceArrayOutput() SpotInstanceRequestNetworkInterfaceArrayOutput

func (SpotInstanceRequestNetworkInterfaceArrayOutput) ToSpotInstanceRequestNetworkInterfaceArrayOutputWithContext

func (o SpotInstanceRequestNetworkInterfaceArrayOutput) ToSpotInstanceRequestNetworkInterfaceArrayOutputWithContext(ctx context.Context) SpotInstanceRequestNetworkInterfaceArrayOutput

type SpotInstanceRequestNetworkInterfaceInput

type SpotInstanceRequestNetworkInterfaceInput interface {
	pulumi.Input

	ToSpotInstanceRequestNetworkInterfaceOutput() SpotInstanceRequestNetworkInterfaceOutput
	ToSpotInstanceRequestNetworkInterfaceOutputWithContext(context.Context) SpotInstanceRequestNetworkInterfaceOutput
}

SpotInstanceRequestNetworkInterfaceInput is an input type that accepts SpotInstanceRequestNetworkInterfaceArgs and SpotInstanceRequestNetworkInterfaceOutput values. You can construct a concrete instance of `SpotInstanceRequestNetworkInterfaceInput` via:

SpotInstanceRequestNetworkInterfaceArgs{...}

type SpotInstanceRequestNetworkInterfaceOutput

type SpotInstanceRequestNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestNetworkInterfaceOutput) DeleteOnTermination

Whether or not to delete the network interface on instance termination. Defaults to `false`. Currently, the only valid value is `false`, as this is only supported when creating new network interfaces when launching an instance.

func (SpotInstanceRequestNetworkInterfaceOutput) DeviceIndex

Integer index of the network interface attachment. Limited by instance type.

func (SpotInstanceRequestNetworkInterfaceOutput) ElementType

func (SpotInstanceRequestNetworkInterfaceOutput) NetworkInterfaceId

ID of the network interface to attach.

func (SpotInstanceRequestNetworkInterfaceOutput) ToSpotInstanceRequestNetworkInterfaceOutput

func (o SpotInstanceRequestNetworkInterfaceOutput) ToSpotInstanceRequestNetworkInterfaceOutput() SpotInstanceRequestNetworkInterfaceOutput

func (SpotInstanceRequestNetworkInterfaceOutput) ToSpotInstanceRequestNetworkInterfaceOutputWithContext

func (o SpotInstanceRequestNetworkInterfaceOutput) ToSpotInstanceRequestNetworkInterfaceOutputWithContext(ctx context.Context) SpotInstanceRequestNetworkInterfaceOutput

type SpotInstanceRequestOutput

type SpotInstanceRequestOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestOutput) ElementType

func (SpotInstanceRequestOutput) ElementType() reflect.Type

func (SpotInstanceRequestOutput) ToSpotInstanceRequestOutput

func (o SpotInstanceRequestOutput) ToSpotInstanceRequestOutput() SpotInstanceRequestOutput

func (SpotInstanceRequestOutput) ToSpotInstanceRequestOutputWithContext

func (o SpotInstanceRequestOutput) ToSpotInstanceRequestOutputWithContext(ctx context.Context) SpotInstanceRequestOutput

func (SpotInstanceRequestOutput) ToSpotInstanceRequestPtrOutput

func (o SpotInstanceRequestOutput) ToSpotInstanceRequestPtrOutput() SpotInstanceRequestPtrOutput

func (SpotInstanceRequestOutput) ToSpotInstanceRequestPtrOutputWithContext

func (o SpotInstanceRequestOutput) ToSpotInstanceRequestPtrOutputWithContext(ctx context.Context) SpotInstanceRequestPtrOutput

type SpotInstanceRequestPtrInput

type SpotInstanceRequestPtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestPtrOutput() SpotInstanceRequestPtrOutput
	ToSpotInstanceRequestPtrOutputWithContext(ctx context.Context) SpotInstanceRequestPtrOutput
}

type SpotInstanceRequestPtrOutput

type SpotInstanceRequestPtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestPtrOutput) Elem added in v4.15.0

func (SpotInstanceRequestPtrOutput) ElementType

func (SpotInstanceRequestPtrOutput) ToSpotInstanceRequestPtrOutput

func (o SpotInstanceRequestPtrOutput) ToSpotInstanceRequestPtrOutput() SpotInstanceRequestPtrOutput

func (SpotInstanceRequestPtrOutput) ToSpotInstanceRequestPtrOutputWithContext

func (o SpotInstanceRequestPtrOutput) ToSpotInstanceRequestPtrOutputWithContext(ctx context.Context) SpotInstanceRequestPtrOutput

type SpotInstanceRequestRootBlockDevice

type SpotInstanceRequestRootBlockDevice struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName *string `pulumi:"deviceName"`
	// Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.
	Encrypted *bool `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops *int `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// A map of tags to assign to the device.
	Tags map[string]string `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput *int    `pulumi:"throughput"`
	VolumeId   *string `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize *int `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType *string `pulumi:"volumeType"`
}

type SpotInstanceRequestRootBlockDeviceArgs

type SpotInstanceRequestRootBlockDeviceArgs struct {
	// Whether the volume should be destroyed on instance termination. Defaults to `true`.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Name of the device to mount.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// A map of tags to assign to the device.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.
	Throughput pulumi.IntPtrInput    `pulumi:"throughput"`
	VolumeId   pulumi.StringPtrInput `pulumi:"volumeId"`
	// Size of the volume in gibibytes (GiB).
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

func (SpotInstanceRequestRootBlockDeviceArgs) ElementType

func (SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDeviceOutput

func (i SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDeviceOutput() SpotInstanceRequestRootBlockDeviceOutput

func (SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDeviceOutputWithContext

func (i SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestRootBlockDeviceOutput

func (SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDevicePtrOutput

func (i SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDevicePtrOutput() SpotInstanceRequestRootBlockDevicePtrOutput

func (SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext

func (i SpotInstanceRequestRootBlockDeviceArgs) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext(ctx context.Context) SpotInstanceRequestRootBlockDevicePtrOutput

type SpotInstanceRequestRootBlockDeviceInput

type SpotInstanceRequestRootBlockDeviceInput interface {
	pulumi.Input

	ToSpotInstanceRequestRootBlockDeviceOutput() SpotInstanceRequestRootBlockDeviceOutput
	ToSpotInstanceRequestRootBlockDeviceOutputWithContext(context.Context) SpotInstanceRequestRootBlockDeviceOutput
}

SpotInstanceRequestRootBlockDeviceInput is an input type that accepts SpotInstanceRequestRootBlockDeviceArgs and SpotInstanceRequestRootBlockDeviceOutput values. You can construct a concrete instance of `SpotInstanceRequestRootBlockDeviceInput` via:

SpotInstanceRequestRootBlockDeviceArgs{...}

type SpotInstanceRequestRootBlockDeviceOutput

type SpotInstanceRequestRootBlockDeviceOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestRootBlockDeviceOutput) DeleteOnTermination

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (SpotInstanceRequestRootBlockDeviceOutput) DeviceName

Name of the device to mount.

func (SpotInstanceRequestRootBlockDeviceOutput) ElementType

func (SpotInstanceRequestRootBlockDeviceOutput) Encrypted

Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.

func (SpotInstanceRequestRootBlockDeviceOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (SpotInstanceRequestRootBlockDeviceOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (SpotInstanceRequestRootBlockDeviceOutput) Tags

A map of tags to assign to the device.

func (SpotInstanceRequestRootBlockDeviceOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDeviceOutput

func (o SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDeviceOutput() SpotInstanceRequestRootBlockDeviceOutput

func (SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDeviceOutputWithContext

func (o SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDeviceOutputWithContext(ctx context.Context) SpotInstanceRequestRootBlockDeviceOutput

func (SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDevicePtrOutput

func (o SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDevicePtrOutput() SpotInstanceRequestRootBlockDevicePtrOutput

func (SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext

func (o SpotInstanceRequestRootBlockDeviceOutput) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext(ctx context.Context) SpotInstanceRequestRootBlockDevicePtrOutput

func (SpotInstanceRequestRootBlockDeviceOutput) VolumeId

func (SpotInstanceRequestRootBlockDeviceOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (SpotInstanceRequestRootBlockDeviceOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type SpotInstanceRequestRootBlockDevicePtrInput

type SpotInstanceRequestRootBlockDevicePtrInput interface {
	pulumi.Input

	ToSpotInstanceRequestRootBlockDevicePtrOutput() SpotInstanceRequestRootBlockDevicePtrOutput
	ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext(context.Context) SpotInstanceRequestRootBlockDevicePtrOutput
}

SpotInstanceRequestRootBlockDevicePtrInput is an input type that accepts SpotInstanceRequestRootBlockDeviceArgs, SpotInstanceRequestRootBlockDevicePtr and SpotInstanceRequestRootBlockDevicePtrOutput values. You can construct a concrete instance of `SpotInstanceRequestRootBlockDevicePtrInput` via:

        SpotInstanceRequestRootBlockDeviceArgs{...}

or:

        nil

type SpotInstanceRequestRootBlockDevicePtrOutput

type SpotInstanceRequestRootBlockDevicePtrOutput struct{ *pulumi.OutputState }

func (SpotInstanceRequestRootBlockDevicePtrOutput) DeleteOnTermination

Whether the volume should be destroyed on instance termination. Defaults to `true`.

func (SpotInstanceRequestRootBlockDevicePtrOutput) DeviceName

Name of the device to mount.

func (SpotInstanceRequestRootBlockDevicePtrOutput) Elem

func (SpotInstanceRequestRootBlockDevicePtrOutput) ElementType

func (SpotInstanceRequestRootBlockDevicePtrOutput) Encrypted

Whether to enable volume encryption. Defaults to `false`. Must be configured to perform drift detection.

func (SpotInstanceRequestRootBlockDevicePtrOutput) Iops

Amount of provisioned [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html). Only valid for volumeType of `io1`, `io2` or `gp3`.

func (SpotInstanceRequestRootBlockDevicePtrOutput) KmsKeyId

Amazon Resource Name (ARN) of the KMS Key to use when encrypting the volume. Must be configured to perform drift detection.

func (SpotInstanceRequestRootBlockDevicePtrOutput) Tags

A map of tags to assign to the device.

func (SpotInstanceRequestRootBlockDevicePtrOutput) Throughput

Throughput to provision for a volume in mebibytes per second (MiB/s). This is only valid for `volumeType` of `gp3`.

func (SpotInstanceRequestRootBlockDevicePtrOutput) ToSpotInstanceRequestRootBlockDevicePtrOutput

func (o SpotInstanceRequestRootBlockDevicePtrOutput) ToSpotInstanceRequestRootBlockDevicePtrOutput() SpotInstanceRequestRootBlockDevicePtrOutput

func (SpotInstanceRequestRootBlockDevicePtrOutput) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext

func (o SpotInstanceRequestRootBlockDevicePtrOutput) ToSpotInstanceRequestRootBlockDevicePtrOutputWithContext(ctx context.Context) SpotInstanceRequestRootBlockDevicePtrOutput

func (SpotInstanceRequestRootBlockDevicePtrOutput) VolumeId

func (SpotInstanceRequestRootBlockDevicePtrOutput) VolumeSize

Size of the volume in gibibytes (GiB).

func (SpotInstanceRequestRootBlockDevicePtrOutput) VolumeType

Type of volume. Valid values include `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1`, or `st1`. Defaults to `gp2`.

type SpotInstanceRequestState

type SpotInstanceRequestState struct {
	// AMI to use for the instance. Required unless `launchTemplate` is specified and the Launch Template specifes an AMI. If an AMI is specified in the Launch Template, setting `ami` will override the AMI specified in the Launch Template.
	Ami pulumi.StringPtrInput
	Arn pulumi.StringPtrInput
	// Whether to associate a public IP address with an instance in a VPC.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// AZ to start the instance in.
	AvailabilityZone pulumi.StringPtrInput
	// The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
	// The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.
	// Note that you can't specify an Availability Zone group or a launch group if you specify a duration.
	BlockDurationMinutes pulumi.IntPtrInput
	// Describes an instance's Capacity Reservation targeting option. See Capacity Reservation Specification below for more details.
	CapacityReservationSpecification SpotInstanceRequestCapacityReservationSpecificationPtrInput
	// Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options [CPU Cores and Threads Per CPU Core Per Instance Type](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-supported-instances-values) - specifying this option for unsupported instance types will return an error from the EC2 API.
	CpuCoreCount pulumi.IntPtrInput
	// If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See [Optimizing CPU Options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) for more information.
	CpuThreadsPerCore pulumi.IntPtrInput
	// Configuration block for customizing the credit specification of the instance. See Credit Specification below for more details. the provider will only perform drift detection of its value when present in a configuration. Removing this configuration on existing instances will only stop managing it. It will not change the configuration back to the default for the instance type.
	CreditSpecification SpotInstanceRequestCreditSpecificationPtrInput
	// If true, enables [EC2 Instance Termination Protection](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingDisableAPITermination).
	DisableApiTermination pulumi.BoolPtrInput
	// One or more configuration blocks with additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection. When accessing this as an attribute reference, it is a set of objects.
	EbsBlockDevices SpotInstanceRequestEbsBlockDeviceArrayInput
	// If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the [EBS Optimized section](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) of the AWS User Guide for more information.
	EbsOptimized pulumi.BoolPtrInput
	// Enable Nitro Enclaves on launched instances. See Enclave Options below for more details.
	EnclaveOptions SpotInstanceRequestEnclaveOptionsPtrInput
	// One or more configuration blocks to customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a set of objects.
	EphemeralBlockDevices SpotInstanceRequestEphemeralBlockDeviceArrayInput
	// If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the `passwordData` attribute. See [GetPasswordData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetPasswordData.html) for more information.
	GetPasswordData pulumi.BoolPtrInput
	// If true, the launched EC2 instance will support hibernation.
	Hibernation pulumi.BoolPtrInput
	// ID of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
	HostId pulumi.StringPtrInput
	// IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the [EC2 documentation](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html#roles-usingrole-ec2instance-permissions), notably `iam:PassRole`.
	IamInstanceProfile pulumi.StringPtrInput
	// Shutdown behavior for the instance. Amazon defaults this to `stop` for EBS-backed instances and `terminate` for instance-store instances. Cannot be set on instance-store instances. See [Shutdown Behavior](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior) for more information.
	InstanceInitiatedShutdownBehavior pulumi.StringPtrInput
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`.
	InstanceInterruptionBehavior pulumi.StringPtrInput
	// Indicates Spot instance behavior when it is interrupted. Valid values are `terminate`, `stop`, or `hibernate`. Default value is `terminate`. Use the argument `instanceInterruptionBehavior` instead.
	//
	// Deprecated: Use the parameter "instance_interruption_behavior" instead.
	InstanceInterruptionBehaviour pulumi.StringPtrInput
	InstanceState                 pulumi.StringPtrInput
	// The instance type to use for the instance. Updates to this field will trigger a stop/start of the EC2 instance.
	InstanceType pulumi.StringPtrInput
	// A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
	Ipv6AddressCount pulumi.IntPtrInput
	// Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
	Ipv6Addresses pulumi.StringArrayInput
	// Key name of the Key Pair to use for the instance; which can be managed using the `ec2.KeyPair` resource.
	KeyName pulumi.StringPtrInput
	// A launch group is a group of spot instances that launch together and terminate together.
	// If left empty instances are launched and terminated individually.
	LaunchGroup pulumi.StringPtrInput
	// Specifies a Launch Template to configure the instance. Parameters configured on this resource will override the corresponding parameters in the Launch Template.
	// See Launch Template Specification below for more details.
	LaunchTemplate SpotInstanceRequestLaunchTemplatePtrInput
	// Customize the metadata options of the instance. See Metadata Options below for more details.
	MetadataOptions SpotInstanceRequestMetadataOptionsPtrInput
	// If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
	Monitoring pulumi.BoolPtrInput
	// Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
	NetworkInterfaces SpotInstanceRequestNetworkInterfaceArrayInput
	OutpostArn        pulumi.StringPtrInput
	PasswordData      pulumi.StringPtrInput
	// Placement Group to start the instance in.
	PlacementGroup            pulumi.StringPtrInput
	PrimaryNetworkInterfaceId pulumi.StringPtrInput
	// The private DNS name assigned to the instance. Can only be
	// used inside the Amazon EC2, and only available if you've enabled DNS hostnames
	// for your VPC
	PrivateDns pulumi.StringPtrInput
	// Private IP address to associate with the instance in a VPC.
	PrivateIp pulumi.StringPtrInput
	// The public DNS name assigned to the instance. For EC2-VPC, this
	// is only available if you've enabled DNS hostnames for your VPC
	PublicDns pulumi.StringPtrInput
	// The public IP address assigned to the instance, if applicable.
	PublicIp pulumi.StringPtrInput
	// Configuration block to customize details about the root block device of the instance. See Block Devices below for details. When accessing this as an attribute reference, it is a list containing one object.
	RootBlockDevice SpotInstanceRequestRootBlockDevicePtrInput
	// A list of secondary private IPv4 addresses to assign to the instance's primary network interface (eth0) in a VPC. Can only be assigned to the primary network interface (eth0) attached at instance creation, not a pre-existing network interface i.e. referenced in a `networkInterface` block. Refer to the [Elastic network interfaces documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) to see the maximum number of private IP addresses allowed per instance type.
	SecondaryPrivateIps pulumi.StringArrayInput
	// A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
	SecurityGroups pulumi.StringArrayInput
	// Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
	SourceDestCheck pulumi.BoolPtrInput
	// The current [bid
	// status](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html)
	// of the Spot Instance Request.
	// * `spotRequestState` The current [request
	//   state](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html#creating-spot-request-status)
	//   of the Spot Instance Request.
	SpotBidStatus pulumi.StringPtrInput
	// The Instance ID (if any) that is currently fulfilling
	// the Spot Instance request.
	SpotInstanceId pulumi.StringPtrInput
	// The maximum price to request on the spot market.
	SpotPrice        pulumi.StringPtrInput
	SpotRequestState pulumi.StringPtrInput
	// If set to `one-time`, after
	// the instance is terminated, the spot request will be closed.
	SpotType pulumi.StringPtrInput
	// VPC Subnet ID to launch in.
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. Note that these tags apply to the instance and not block storage devices. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// Tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the import-instance command.
	Tenancy pulumi.StringPtrInput
	// User data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see `userDataBase64` instead.
	UserData pulumi.StringPtrInput
	// Can be used instead of `userData` to pass base64-encoded binary data directly. Use this instead of `userData` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 pulumi.StringPtrInput
	// The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
	ValidFrom pulumi.StringPtrInput
	// The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.
	ValidUntil pulumi.StringPtrInput
	// A map of tags to assign, at instance-creation time, to root and EBS volumes.
	VolumeTags pulumi.StringMapInput
	// A list of security group IDs to associate with.
	VpcSecurityGroupIds pulumi.StringArrayInput
	// If set, this provider will
	// wait for the Spot Request to be fulfilled, and will throw an error if the
	// timeout of 10m is reached.
	WaitForFulfillment pulumi.BoolPtrInput
}

func (SpotInstanceRequestState) ElementType

func (SpotInstanceRequestState) ElementType() reflect.Type

type Subnet

type Subnet struct {
	pulumi.CustomResourceState

	// The ARN of the subnet.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specify true to indicate
	// that network interfaces created in the specified subnet should be
	// assigned an IPv6 address. Default is `false`
	AssignIpv6AddressOnCreation pulumi.BoolPtrOutput `pulumi:"assignIpv6AddressOnCreation"`
	// The AZ for the subnet.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The AZ ID of the subnet.
	AvailabilityZoneId pulumi.StringOutput `pulumi:"availabilityZoneId"`
	// The CIDR block for the subnet.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The customer owned IPv4 address pool. Typically used with the `mapCustomerOwnedIpOnLaunch` argument. The `outpostArn` argument must be specified when configured.
	CustomerOwnedIpv4Pool pulumi.StringPtrOutput `pulumi:"customerOwnedIpv4Pool"`
	// The IPv6 network range for the subnet,
	// in CIDR notation. The subnet size must use a /64 prefix length.
	Ipv6CidrBlock pulumi.StringPtrOutput `pulumi:"ipv6CidrBlock"`
	// The association ID for the IPv6 CIDR block.
	Ipv6CidrBlockAssociationId pulumi.StringOutput `pulumi:"ipv6CidrBlockAssociationId"`
	// Specify `true` to indicate that network interfaces created in the subnet should be assigned a customer owned IP address. The `customerOwnedIpv4Pool` and `outpostArn` arguments must be specified when set to `true`. Default is `false`.
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrOutput `pulumi:"mapCustomerOwnedIpOnLaunch"`
	// Specify true to indicate
	// that instances launched into the subnet should be assigned
	// a public IP address. Default is `false`.
	MapPublicIpOnLaunch pulumi.BoolPtrOutput `pulumi:"mapPublicIpOnLaunch"`
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrOutput `pulumi:"outpostArn"`
	// The ID of the AWS account that owns the subnet.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides an VPC subnet resource.

> **NOTE:** Due to [AWS Lambda improved VPC networking changes that began deploying in September 2019](https://aws.amazon.com/blogs/compute/announcing-improved-vpc-networking-for-aws-lambda-functions/), subnets associated with Lambda Functions can take up to 45 minutes to successfully delete.

## Example Usage ### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewSubnet(ctx, "main", &ec2.SubnetArgs{
			VpcId:     pulumi.Any(aws_vpc.Main.Id),
			CidrBlock: pulumi.String("10.0.1.0/24"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Subnets In Secondary VPC CIDR Blocks

When managing subnets in one of a VPC's secondary CIDR blocks created using a `ec2.VpcIpv4CidrBlockAssociation` resource, it is recommended to reference that resource's `vpcId` attribute to ensure correct dependency ordering.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		secondaryCidr, err := ec2.NewVpcIpv4CidrBlockAssociation(ctx, "secondaryCidr", &ec2.VpcIpv4CidrBlockAssociationArgs{
			VpcId:     pulumi.Any(aws_vpc.Main.Id),
			CidrBlock: pulumi.String("172.2.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewSubnet(ctx, "inSecondaryCidr", &ec2.SubnetArgs{
			VpcId:     secondaryCidr.VpcId,
			CidrBlock: pulumi.String("172.2.0.0/24"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Subnets can be imported using the `subnet id`, e.g.

```sh

$ pulumi import aws:ec2/subnet:Subnet public_subnet subnet-9d4a7b6c

```

func GetSubnet

func GetSubnet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetState, opts ...pulumi.ResourceOption) (*Subnet, error)

GetSubnet gets an existing Subnet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSubnet

func NewSubnet(ctx *pulumi.Context,
	name string, args *SubnetArgs, opts ...pulumi.ResourceOption) (*Subnet, error)

NewSubnet registers a new resource with the given unique name, arguments, and options.

func (*Subnet) ElementType

func (*Subnet) ElementType() reflect.Type

func (*Subnet) ToSubnetOutput

func (i *Subnet) ToSubnetOutput() SubnetOutput

func (*Subnet) ToSubnetOutputWithContext

func (i *Subnet) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

func (*Subnet) ToSubnetPtrOutput

func (i *Subnet) ToSubnetPtrOutput() SubnetPtrOutput

func (*Subnet) ToSubnetPtrOutputWithContext

func (i *Subnet) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetArgs

type SubnetArgs struct {
	// Specify true to indicate
	// that network interfaces created in the specified subnet should be
	// assigned an IPv6 address. Default is `false`
	AssignIpv6AddressOnCreation pulumi.BoolPtrInput
	// The AZ for the subnet.
	AvailabilityZone pulumi.StringPtrInput
	// The AZ ID of the subnet.
	AvailabilityZoneId pulumi.StringPtrInput
	// The CIDR block for the subnet.
	CidrBlock pulumi.StringInput
	// The customer owned IPv4 address pool. Typically used with the `mapCustomerOwnedIpOnLaunch` argument. The `outpostArn` argument must be specified when configured.
	CustomerOwnedIpv4Pool pulumi.StringPtrInput
	// The IPv6 network range for the subnet,
	// in CIDR notation. The subnet size must use a /64 prefix length.
	Ipv6CidrBlock pulumi.StringPtrInput
	// Specify `true` to indicate that network interfaces created in the subnet should be assigned a customer owned IP address. The `customerOwnedIpv4Pool` and `outpostArn` arguments must be specified when set to `true`. Default is `false`.
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrInput
	// Specify true to indicate
	// that instances launched into the subnet should be assigned
	// a public IP address. Default is `false`.
	MapPublicIpOnLaunch pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a Subnet resource.

func (SubnetArgs) ElementType

func (SubnetArgs) ElementType() reflect.Type

type SubnetArray

type SubnetArray []SubnetInput

func (SubnetArray) ElementType

func (SubnetArray) ElementType() reflect.Type

func (SubnetArray) ToSubnetArrayOutput

func (i SubnetArray) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArray) ToSubnetArrayOutputWithContext

func (i SubnetArray) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetArrayInput

type SubnetArrayInput interface {
	pulumi.Input

	ToSubnetArrayOutput() SubnetArrayOutput
	ToSubnetArrayOutputWithContext(context.Context) SubnetArrayOutput
}

SubnetArrayInput is an input type that accepts SubnetArray and SubnetArrayOutput values. You can construct a concrete instance of `SubnetArrayInput` via:

SubnetArray{ SubnetArgs{...} }

type SubnetArrayOutput

type SubnetArrayOutput struct{ *pulumi.OutputState }

func (SubnetArrayOutput) ElementType

func (SubnetArrayOutput) ElementType() reflect.Type

func (SubnetArrayOutput) Index

func (SubnetArrayOutput) ToSubnetArrayOutput

func (o SubnetArrayOutput) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArrayOutput) ToSubnetArrayOutputWithContext

func (o SubnetArrayOutput) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetInput

type SubnetInput interface {
	pulumi.Input

	ToSubnetOutput() SubnetOutput
	ToSubnetOutputWithContext(ctx context.Context) SubnetOutput
}

type SubnetMap

type SubnetMap map[string]SubnetInput

func (SubnetMap) ElementType

func (SubnetMap) ElementType() reflect.Type

func (SubnetMap) ToSubnetMapOutput

func (i SubnetMap) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMap) ToSubnetMapOutputWithContext

func (i SubnetMap) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetMapInput

type SubnetMapInput interface {
	pulumi.Input

	ToSubnetMapOutput() SubnetMapOutput
	ToSubnetMapOutputWithContext(context.Context) SubnetMapOutput
}

SubnetMapInput is an input type that accepts SubnetMap and SubnetMapOutput values. You can construct a concrete instance of `SubnetMapInput` via:

SubnetMap{ "key": SubnetArgs{...} }

type SubnetMapOutput

type SubnetMapOutput struct{ *pulumi.OutputState }

func (SubnetMapOutput) ElementType

func (SubnetMapOutput) ElementType() reflect.Type

func (SubnetMapOutput) MapIndex

func (SubnetMapOutput) ToSubnetMapOutput

func (o SubnetMapOutput) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMapOutput) ToSubnetMapOutputWithContext

func (o SubnetMapOutput) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetOutput

type SubnetOutput struct{ *pulumi.OutputState }

func (SubnetOutput) ElementType

func (SubnetOutput) ElementType() reflect.Type

func (SubnetOutput) ToSubnetOutput

func (o SubnetOutput) ToSubnetOutput() SubnetOutput

func (SubnetOutput) ToSubnetOutputWithContext

func (o SubnetOutput) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

func (SubnetOutput) ToSubnetPtrOutput

func (o SubnetOutput) ToSubnetPtrOutput() SubnetPtrOutput

func (SubnetOutput) ToSubnetPtrOutputWithContext

func (o SubnetOutput) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetPtrInput

type SubnetPtrInput interface {
	pulumi.Input

	ToSubnetPtrOutput() SubnetPtrOutput
	ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput
}

type SubnetPtrOutput

type SubnetPtrOutput struct{ *pulumi.OutputState }

func (SubnetPtrOutput) Elem added in v4.15.0

func (o SubnetPtrOutput) Elem() SubnetOutput

func (SubnetPtrOutput) ElementType

func (SubnetPtrOutput) ElementType() reflect.Type

func (SubnetPtrOutput) ToSubnetPtrOutput

func (o SubnetPtrOutput) ToSubnetPtrOutput() SubnetPtrOutput

func (SubnetPtrOutput) ToSubnetPtrOutputWithContext

func (o SubnetPtrOutput) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetState

type SubnetState struct {
	// The ARN of the subnet.
	Arn pulumi.StringPtrInput
	// Specify true to indicate
	// that network interfaces created in the specified subnet should be
	// assigned an IPv6 address. Default is `false`
	AssignIpv6AddressOnCreation pulumi.BoolPtrInput
	// The AZ for the subnet.
	AvailabilityZone pulumi.StringPtrInput
	// The AZ ID of the subnet.
	AvailabilityZoneId pulumi.StringPtrInput
	// The CIDR block for the subnet.
	CidrBlock pulumi.StringPtrInput
	// The customer owned IPv4 address pool. Typically used with the `mapCustomerOwnedIpOnLaunch` argument. The `outpostArn` argument must be specified when configured.
	CustomerOwnedIpv4Pool pulumi.StringPtrInput
	// The IPv6 network range for the subnet,
	// in CIDR notation. The subnet size must use a /64 prefix length.
	Ipv6CidrBlock pulumi.StringPtrInput
	// The association ID for the IPv6 CIDR block.
	Ipv6CidrBlockAssociationId pulumi.StringPtrInput
	// Specify `true` to indicate that network interfaces created in the subnet should be assigned a customer owned IP address. The `customerOwnedIpv4Pool` and `outpostArn` arguments must be specified when set to `true`. Default is `false`.
	MapCustomerOwnedIpOnLaunch pulumi.BoolPtrInput
	// Specify true to indicate
	// that instances launched into the subnet should be assigned
	// a public IP address. Default is `false`.
	MapPublicIpOnLaunch pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrInput
	// The ID of the AWS account that owns the subnet.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID.
	VpcId pulumi.StringPtrInput
}

func (SubnetState) ElementType

func (SubnetState) ElementType() reflect.Type

type Tag

type Tag struct {
	pulumi.CustomResourceState

	// The tag name.
	Key pulumi.StringOutput `pulumi:"key"`
	// The ID of the EC2 resource to manage the tag for.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// The value of the tag.
	Value pulumi.StringOutput `pulumi:"value"`
}

Manages an individual EC2 resource tag. This resource should only be used in cases where EC2 resources are created outside the provider (e.g. AMIs), being shared via Resource Access Manager (RAM), or implicitly created by other means (e.g. Transit Gateway VPN Attachments).

> **NOTE:** This tagging resource should not be combined with the providers resource for managing the parent resource. For example, using `ec2.Vpc` and `ec2.Tag` to manage tags of the same VPC will cause a perpetual difference where the `ec2.Vpc` resource will try to remove the tag being added by the `ec2.Tag` resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "exampleTransitGateway", nil)
		if err != nil {
			return err
		}
		exampleCustomerGateway, err := ec2.NewCustomerGateway(ctx, "exampleCustomerGateway", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.0.0.1"),
			Type:      pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		exampleVpnConnection, err := ec2.NewVpnConnection(ctx, "exampleVpnConnection", &ec2.VpnConnectionArgs{
			CustomerGatewayId: exampleCustomerGateway.ID(),
			TransitGatewayId:  exampleTransitGateway.ID(),
			Type:              exampleCustomerGateway.Type,
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewTag(ctx, "exampleTag", &ec2.TagArgs{
			ResourceId: exampleVpnConnection.TransitGatewayAttachmentId,
			Key:        pulumi.String("Name"),
			Value:      pulumi.String("Hello World"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_tag` can be imported by using the EC2 resource identifier and key, separated by a comma (`,`), e.g.

```sh

$ pulumi import aws:ec2/tag:Tag example tgw-attach-1234567890abcdef,Name

```

func GetTag

func GetTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagState, opts ...pulumi.ResourceOption) (*Tag, error)

GetTag gets an existing Tag resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTag

func NewTag(ctx *pulumi.Context,
	name string, args *TagArgs, opts ...pulumi.ResourceOption) (*Tag, error)

NewTag registers a new resource with the given unique name, arguments, and options.

func (*Tag) ElementType

func (*Tag) ElementType() reflect.Type

func (*Tag) ToTagOutput

func (i *Tag) ToTagOutput() TagOutput

func (*Tag) ToTagOutputWithContext

func (i *Tag) ToTagOutputWithContext(ctx context.Context) TagOutput

func (*Tag) ToTagPtrOutput

func (i *Tag) ToTagPtrOutput() TagPtrOutput

func (*Tag) ToTagPtrOutputWithContext

func (i *Tag) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagArgs

type TagArgs struct {
	// The tag name.
	Key pulumi.StringInput
	// The ID of the EC2 resource to manage the tag for.
	ResourceId pulumi.StringInput
	// The value of the tag.
	Value pulumi.StringInput
}

The set of arguments for constructing a Tag resource.

func (TagArgs) ElementType

func (TagArgs) ElementType() reflect.Type

type TagArray

type TagArray []TagInput

func (TagArray) ElementType

func (TagArray) ElementType() reflect.Type

func (TagArray) ToTagArrayOutput

func (i TagArray) ToTagArrayOutput() TagArrayOutput

func (TagArray) ToTagArrayOutputWithContext

func (i TagArray) ToTagArrayOutputWithContext(ctx context.Context) TagArrayOutput

type TagArrayInput

type TagArrayInput interface {
	pulumi.Input

	ToTagArrayOutput() TagArrayOutput
	ToTagArrayOutputWithContext(context.Context) TagArrayOutput
}

TagArrayInput is an input type that accepts TagArray and TagArrayOutput values. You can construct a concrete instance of `TagArrayInput` via:

TagArray{ TagArgs{...} }

type TagArrayOutput

type TagArrayOutput struct{ *pulumi.OutputState }

func (TagArrayOutput) ElementType

func (TagArrayOutput) ElementType() reflect.Type

func (TagArrayOutput) Index

func (TagArrayOutput) ToTagArrayOutput

func (o TagArrayOutput) ToTagArrayOutput() TagArrayOutput

func (TagArrayOutput) ToTagArrayOutputWithContext

func (o TagArrayOutput) ToTagArrayOutputWithContext(ctx context.Context) TagArrayOutput

type TagInput

type TagInput interface {
	pulumi.Input

	ToTagOutput() TagOutput
	ToTagOutputWithContext(ctx context.Context) TagOutput
}

type TagMap

type TagMap map[string]TagInput

func (TagMap) ElementType

func (TagMap) ElementType() reflect.Type

func (TagMap) ToTagMapOutput

func (i TagMap) ToTagMapOutput() TagMapOutput

func (TagMap) ToTagMapOutputWithContext

func (i TagMap) ToTagMapOutputWithContext(ctx context.Context) TagMapOutput

type TagMapInput

type TagMapInput interface {
	pulumi.Input

	ToTagMapOutput() TagMapOutput
	ToTagMapOutputWithContext(context.Context) TagMapOutput
}

TagMapInput is an input type that accepts TagMap and TagMapOutput values. You can construct a concrete instance of `TagMapInput` via:

TagMap{ "key": TagArgs{...} }

type TagMapOutput

type TagMapOutput struct{ *pulumi.OutputState }

func (TagMapOutput) ElementType

func (TagMapOutput) ElementType() reflect.Type

func (TagMapOutput) MapIndex

func (o TagMapOutput) MapIndex(k pulumi.StringInput) TagOutput

func (TagMapOutput) ToTagMapOutput

func (o TagMapOutput) ToTagMapOutput() TagMapOutput

func (TagMapOutput) ToTagMapOutputWithContext

func (o TagMapOutput) ToTagMapOutputWithContext(ctx context.Context) TagMapOutput

type TagOutput

type TagOutput struct{ *pulumi.OutputState }

func (TagOutput) ElementType

func (TagOutput) ElementType() reflect.Type

func (TagOutput) ToTagOutput

func (o TagOutput) ToTagOutput() TagOutput

func (TagOutput) ToTagOutputWithContext

func (o TagOutput) ToTagOutputWithContext(ctx context.Context) TagOutput

func (TagOutput) ToTagPtrOutput

func (o TagOutput) ToTagPtrOutput() TagPtrOutput

func (TagOutput) ToTagPtrOutputWithContext

func (o TagOutput) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagPtrInput

type TagPtrInput interface {
	pulumi.Input

	ToTagPtrOutput() TagPtrOutput
	ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput
}

type TagPtrOutput

type TagPtrOutput struct{ *pulumi.OutputState }

func (TagPtrOutput) Elem added in v4.15.0

func (o TagPtrOutput) Elem() TagOutput

func (TagPtrOutput) ElementType

func (TagPtrOutput) ElementType() reflect.Type

func (TagPtrOutput) ToTagPtrOutput

func (o TagPtrOutput) ToTagPtrOutput() TagPtrOutput

func (TagPtrOutput) ToTagPtrOutputWithContext

func (o TagPtrOutput) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagState

type TagState struct {
	// The tag name.
	Key pulumi.StringPtrInput
	// The ID of the EC2 resource to manage the tag for.
	ResourceId pulumi.StringPtrInput
	// The value of the tag.
	Value pulumi.StringPtrInput
}

func (TagState) ElementType

func (TagState) ElementType() reflect.Type

type Tenancy

type Tenancy string

func (Tenancy) ElementType

func (Tenancy) ElementType() reflect.Type

func (Tenancy) ToStringOutput

func (e Tenancy) ToStringOutput() pulumi.StringOutput

func (Tenancy) ToStringOutputWithContext

func (e Tenancy) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (Tenancy) ToStringPtrOutput

func (e Tenancy) ToStringPtrOutput() pulumi.StringPtrOutput

func (Tenancy) ToStringPtrOutputWithContext

func (e Tenancy) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

func (Tenancy) ToTenancyOutput added in v4.13.0

func (e Tenancy) ToTenancyOutput() TenancyOutput

func (Tenancy) ToTenancyOutputWithContext added in v4.13.0

func (e Tenancy) ToTenancyOutputWithContext(ctx context.Context) TenancyOutput

func (Tenancy) ToTenancyPtrOutput added in v4.13.0

func (e Tenancy) ToTenancyPtrOutput() TenancyPtrOutput

func (Tenancy) ToTenancyPtrOutputWithContext added in v4.13.0

func (e Tenancy) ToTenancyPtrOutputWithContext(ctx context.Context) TenancyPtrOutput

type TenancyInput added in v4.13.0

type TenancyInput interface {
	pulumi.Input

	ToTenancyOutput() TenancyOutput
	ToTenancyOutputWithContext(context.Context) TenancyOutput
}

TenancyInput is an input type that accepts TenancyArgs and TenancyOutput values. You can construct a concrete instance of `TenancyInput` via:

TenancyArgs{...}

type TenancyOutput added in v4.13.0

type TenancyOutput struct{ *pulumi.OutputState }

func (TenancyOutput) ElementType added in v4.13.0

func (TenancyOutput) ElementType() reflect.Type

func (TenancyOutput) ToStringOutput added in v4.13.0

func (o TenancyOutput) ToStringOutput() pulumi.StringOutput

func (TenancyOutput) ToStringOutputWithContext added in v4.13.0

func (o TenancyOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (TenancyOutput) ToStringPtrOutput added in v4.13.0

func (o TenancyOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (TenancyOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o TenancyOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

func (TenancyOutput) ToTenancyOutput added in v4.13.0

func (o TenancyOutput) ToTenancyOutput() TenancyOutput

func (TenancyOutput) ToTenancyOutputWithContext added in v4.13.0

func (o TenancyOutput) ToTenancyOutputWithContext(ctx context.Context) TenancyOutput

func (TenancyOutput) ToTenancyPtrOutput added in v4.13.0

func (o TenancyOutput) ToTenancyPtrOutput() TenancyPtrOutput

func (TenancyOutput) ToTenancyPtrOutputWithContext added in v4.13.0

func (o TenancyOutput) ToTenancyPtrOutputWithContext(ctx context.Context) TenancyPtrOutput

type TenancyPtrInput added in v4.13.0

type TenancyPtrInput interface {
	pulumi.Input

	ToTenancyPtrOutput() TenancyPtrOutput
	ToTenancyPtrOutputWithContext(context.Context) TenancyPtrOutput
}

func TenancyPtr added in v4.13.0

func TenancyPtr(v string) TenancyPtrInput

type TenancyPtrOutput added in v4.13.0

type TenancyPtrOutput struct{ *pulumi.OutputState }

func (TenancyPtrOutput) Elem added in v4.13.0

func (TenancyPtrOutput) ElementType added in v4.13.0

func (TenancyPtrOutput) ElementType() reflect.Type

func (TenancyPtrOutput) ToStringPtrOutput added in v4.13.0

func (o TenancyPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (TenancyPtrOutput) ToStringPtrOutputWithContext added in v4.13.0

func (o TenancyPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

func (TenancyPtrOutput) ToTenancyPtrOutput added in v4.13.0

func (o TenancyPtrOutput) ToTenancyPtrOutput() TenancyPtrOutput

func (TenancyPtrOutput) ToTenancyPtrOutputWithContext added in v4.13.0

func (o TenancyPtrOutput) ToTenancyPtrOutputWithContext(ctx context.Context) TenancyPtrOutput

type TrafficMirrorFilter

type TrafficMirrorFilter struct {
	pulumi.CustomResourceState

	// The ARN of the traffic mirror filter.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A description of the filter.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// List of amazon network services that should be mirrored. Valid values: `amazon-dns`.
	NetworkServices pulumi.StringArrayOutput `pulumi:"networkServices"`
	Tags            pulumi.StringMapOutput   `pulumi:"tags"`
	TagsAll         pulumi.StringMapOutput   `pulumi:"tagsAll"`
}

Provides an Traffic mirror filter.\ Read [limits and considerations](https://docs.aws.amazon.com/vpc/latest/mirroring/traffic-mirroring-considerations.html) for traffic mirroring

## Example Usage

To create a basic traffic mirror filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewTrafficMirrorFilter(ctx, "foo", &ec2.TrafficMirrorFilterArgs{
			Description: pulumi.String("traffic mirror filter - example"),
			NetworkServices: pulumi.StringArray{
				pulumi.String("amazon-dns"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Traffic mirror filter can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/trafficMirrorFilter:TrafficMirrorFilter foo tmf-0fbb93ddf38198f64

```

func GetTrafficMirrorFilter

func GetTrafficMirrorFilter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficMirrorFilterState, opts ...pulumi.ResourceOption) (*TrafficMirrorFilter, error)

GetTrafficMirrorFilter gets an existing TrafficMirrorFilter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficMirrorFilter

func NewTrafficMirrorFilter(ctx *pulumi.Context,
	name string, args *TrafficMirrorFilterArgs, opts ...pulumi.ResourceOption) (*TrafficMirrorFilter, error)

NewTrafficMirrorFilter registers a new resource with the given unique name, arguments, and options.

func (*TrafficMirrorFilter) ElementType

func (*TrafficMirrorFilter) ElementType() reflect.Type

func (*TrafficMirrorFilter) ToTrafficMirrorFilterOutput

func (i *TrafficMirrorFilter) ToTrafficMirrorFilterOutput() TrafficMirrorFilterOutput

func (*TrafficMirrorFilter) ToTrafficMirrorFilterOutputWithContext

func (i *TrafficMirrorFilter) ToTrafficMirrorFilterOutputWithContext(ctx context.Context) TrafficMirrorFilterOutput

func (*TrafficMirrorFilter) ToTrafficMirrorFilterPtrOutput

func (i *TrafficMirrorFilter) ToTrafficMirrorFilterPtrOutput() TrafficMirrorFilterPtrOutput

func (*TrafficMirrorFilter) ToTrafficMirrorFilterPtrOutputWithContext

func (i *TrafficMirrorFilter) ToTrafficMirrorFilterPtrOutputWithContext(ctx context.Context) TrafficMirrorFilterPtrOutput

type TrafficMirrorFilterArgs

type TrafficMirrorFilterArgs struct {
	// A description of the filter.
	Description pulumi.StringPtrInput
	// List of amazon network services that should be mirrored. Valid values: `amazon-dns`.
	NetworkServices pulumi.StringArrayInput
	Tags            pulumi.StringMapInput
	TagsAll         pulumi.StringMapInput
}

The set of arguments for constructing a TrafficMirrorFilter resource.

func (TrafficMirrorFilterArgs) ElementType

func (TrafficMirrorFilterArgs) ElementType() reflect.Type

type TrafficMirrorFilterArray

type TrafficMirrorFilterArray []TrafficMirrorFilterInput

func (TrafficMirrorFilterArray) ElementType

func (TrafficMirrorFilterArray) ElementType() reflect.Type

func (TrafficMirrorFilterArray) ToTrafficMirrorFilterArrayOutput

func (i TrafficMirrorFilterArray) ToTrafficMirrorFilterArrayOutput() TrafficMirrorFilterArrayOutput

func (TrafficMirrorFilterArray) ToTrafficMirrorFilterArrayOutputWithContext

func (i TrafficMirrorFilterArray) ToTrafficMirrorFilterArrayOutputWithContext(ctx context.Context) TrafficMirrorFilterArrayOutput

type TrafficMirrorFilterArrayInput

type TrafficMirrorFilterArrayInput interface {
	pulumi.Input

	ToTrafficMirrorFilterArrayOutput() TrafficMirrorFilterArrayOutput
	ToTrafficMirrorFilterArrayOutputWithContext(context.Context) TrafficMirrorFilterArrayOutput
}

TrafficMirrorFilterArrayInput is an input type that accepts TrafficMirrorFilterArray and TrafficMirrorFilterArrayOutput values. You can construct a concrete instance of `TrafficMirrorFilterArrayInput` via:

TrafficMirrorFilterArray{ TrafficMirrorFilterArgs{...} }

type TrafficMirrorFilterArrayOutput

type TrafficMirrorFilterArrayOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterArrayOutput) ElementType

func (TrafficMirrorFilterArrayOutput) Index

func (TrafficMirrorFilterArrayOutput) ToTrafficMirrorFilterArrayOutput

func (o TrafficMirrorFilterArrayOutput) ToTrafficMirrorFilterArrayOutput() TrafficMirrorFilterArrayOutput

func (TrafficMirrorFilterArrayOutput) ToTrafficMirrorFilterArrayOutputWithContext

func (o TrafficMirrorFilterArrayOutput) ToTrafficMirrorFilterArrayOutputWithContext(ctx context.Context) TrafficMirrorFilterArrayOutput

type TrafficMirrorFilterInput

type TrafficMirrorFilterInput interface {
	pulumi.Input

	ToTrafficMirrorFilterOutput() TrafficMirrorFilterOutput
	ToTrafficMirrorFilterOutputWithContext(ctx context.Context) TrafficMirrorFilterOutput
}

type TrafficMirrorFilterMap

type TrafficMirrorFilterMap map[string]TrafficMirrorFilterInput

func (TrafficMirrorFilterMap) ElementType

func (TrafficMirrorFilterMap) ElementType() reflect.Type

func (TrafficMirrorFilterMap) ToTrafficMirrorFilterMapOutput

func (i TrafficMirrorFilterMap) ToTrafficMirrorFilterMapOutput() TrafficMirrorFilterMapOutput

func (TrafficMirrorFilterMap) ToTrafficMirrorFilterMapOutputWithContext

func (i TrafficMirrorFilterMap) ToTrafficMirrorFilterMapOutputWithContext(ctx context.Context) TrafficMirrorFilterMapOutput

type TrafficMirrorFilterMapInput

type TrafficMirrorFilterMapInput interface {
	pulumi.Input

	ToTrafficMirrorFilterMapOutput() TrafficMirrorFilterMapOutput
	ToTrafficMirrorFilterMapOutputWithContext(context.Context) TrafficMirrorFilterMapOutput
}

TrafficMirrorFilterMapInput is an input type that accepts TrafficMirrorFilterMap and TrafficMirrorFilterMapOutput values. You can construct a concrete instance of `TrafficMirrorFilterMapInput` via:

TrafficMirrorFilterMap{ "key": TrafficMirrorFilterArgs{...} }

type TrafficMirrorFilterMapOutput

type TrafficMirrorFilterMapOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterMapOutput) ElementType

func (TrafficMirrorFilterMapOutput) MapIndex

func (TrafficMirrorFilterMapOutput) ToTrafficMirrorFilterMapOutput

func (o TrafficMirrorFilterMapOutput) ToTrafficMirrorFilterMapOutput() TrafficMirrorFilterMapOutput

func (TrafficMirrorFilterMapOutput) ToTrafficMirrorFilterMapOutputWithContext

func (o TrafficMirrorFilterMapOutput) ToTrafficMirrorFilterMapOutputWithContext(ctx context.Context) TrafficMirrorFilterMapOutput

type TrafficMirrorFilterOutput

type TrafficMirrorFilterOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterOutput) ElementType

func (TrafficMirrorFilterOutput) ElementType() reflect.Type

func (TrafficMirrorFilterOutput) ToTrafficMirrorFilterOutput

func (o TrafficMirrorFilterOutput) ToTrafficMirrorFilterOutput() TrafficMirrorFilterOutput

func (TrafficMirrorFilterOutput) ToTrafficMirrorFilterOutputWithContext

func (o TrafficMirrorFilterOutput) ToTrafficMirrorFilterOutputWithContext(ctx context.Context) TrafficMirrorFilterOutput

func (TrafficMirrorFilterOutput) ToTrafficMirrorFilterPtrOutput

func (o TrafficMirrorFilterOutput) ToTrafficMirrorFilterPtrOutput() TrafficMirrorFilterPtrOutput

func (TrafficMirrorFilterOutput) ToTrafficMirrorFilterPtrOutputWithContext

func (o TrafficMirrorFilterOutput) ToTrafficMirrorFilterPtrOutputWithContext(ctx context.Context) TrafficMirrorFilterPtrOutput

type TrafficMirrorFilterPtrInput

type TrafficMirrorFilterPtrInput interface {
	pulumi.Input

	ToTrafficMirrorFilterPtrOutput() TrafficMirrorFilterPtrOutput
	ToTrafficMirrorFilterPtrOutputWithContext(ctx context.Context) TrafficMirrorFilterPtrOutput
}

type TrafficMirrorFilterPtrOutput

type TrafficMirrorFilterPtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterPtrOutput) Elem added in v4.15.0

func (TrafficMirrorFilterPtrOutput) ElementType

func (TrafficMirrorFilterPtrOutput) ToTrafficMirrorFilterPtrOutput

func (o TrafficMirrorFilterPtrOutput) ToTrafficMirrorFilterPtrOutput() TrafficMirrorFilterPtrOutput

func (TrafficMirrorFilterPtrOutput) ToTrafficMirrorFilterPtrOutputWithContext

func (o TrafficMirrorFilterPtrOutput) ToTrafficMirrorFilterPtrOutputWithContext(ctx context.Context) TrafficMirrorFilterPtrOutput

type TrafficMirrorFilterRule

type TrafficMirrorFilterRule struct {
	pulumi.CustomResourceState

	// ARN of the traffic mirror filter rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Description of the traffic mirror filter rule.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Destination CIDR block to assign to the Traffic Mirror rule.
	DestinationCidrBlock pulumi.StringOutput `pulumi:"destinationCidrBlock"`
	// Destination port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	DestinationPortRange TrafficMirrorFilterRuleDestinationPortRangePtrOutput `pulumi:"destinationPortRange"`
	// Protocol number, for example 17 (UDP), to assign to the Traffic Mirror rule. For information about the protocol value, see [Protocol Numbers](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) on the Internet Assigned Numbers Authority (IANA) website.
	Protocol pulumi.IntPtrOutput `pulumi:"protocol"`
	// Action to take (accept | reject) on the filtered traffic. Valid values are `accept` and `reject`
	RuleAction pulumi.StringOutput `pulumi:"ruleAction"`
	// Number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.
	RuleNumber pulumi.IntOutput `pulumi:"ruleNumber"`
	// Source CIDR block to assign to the Traffic Mirror rule.
	SourceCidrBlock pulumi.StringOutput `pulumi:"sourceCidrBlock"`
	// Source port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	SourcePortRange TrafficMirrorFilterRuleSourcePortRangePtrOutput `pulumi:"sourcePortRange"`
	// Direction of traffic to be captured. Valid values are `ingress` and `egress`
	TrafficDirection pulumi.StringOutput `pulumi:"trafficDirection"`
	// ID of the traffic mirror filter to which this rule should be added
	TrafficMirrorFilterId pulumi.StringOutput `pulumi:"trafficMirrorFilterId"`
}

Provides an Traffic mirror filter rule.\ Read [limits and considerations](https://docs.aws.amazon.com/vpc/latest/mirroring/traffic-mirroring-considerations.html) for traffic mirroring

## Example Usage

To create a basic traffic mirror session

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		filter, err := ec2.NewTrafficMirrorFilter(ctx, "filter", &ec2.TrafficMirrorFilterArgs{
			Description: pulumi.String("traffic mirror filter - example"),
			NetworkServices: pulumi.StringArray{
				pulumi.String("amazon-dns"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewTrafficMirrorFilterRule(ctx, "ruleout", &ec2.TrafficMirrorFilterRuleArgs{
			Description:           pulumi.String("test rule"),
			TrafficMirrorFilterId: filter.ID(),
			DestinationCidrBlock:  pulumi.String("10.0.0.0/8"),
			SourceCidrBlock:       pulumi.String("10.0.0.0/8"),
			RuleNumber:            pulumi.Int(1),
			RuleAction:            pulumi.String("accept"),
			TrafficDirection:      pulumi.String("egress"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewTrafficMirrorFilterRule(ctx, "rulein", &ec2.TrafficMirrorFilterRuleArgs{
			Description:           pulumi.String("test rule"),
			TrafficMirrorFilterId: filter.ID(),
			DestinationCidrBlock:  pulumi.String("10.0.0.0/8"),
			SourceCidrBlock:       pulumi.String("10.0.0.0/8"),
			RuleNumber:            pulumi.Int(1),
			RuleAction:            pulumi.String("accept"),
			TrafficDirection:      pulumi.String("ingress"),
			Protocol:              pulumi.Int(6),
			DestinationPortRange: &ec2.TrafficMirrorFilterRuleDestinationPortRangeArgs{
				FromPort: pulumi.Int(22),
				ToPort:   pulumi.Int(53),
			},
			SourcePortRange: &ec2.TrafficMirrorFilterRuleSourcePortRangeArgs{
				FromPort: pulumi.Int(0),
				ToPort:   pulumi.Int(10),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Traffic mirror rules can be imported using the `traffic_mirror_filter_id` and `id` separated by `:` e.g.

```sh

$ pulumi import aws:ec2/trafficMirrorFilterRule:TrafficMirrorFilterRule rule tmf-0fbb93ddf38198f64:tmfr-05a458f06445d0aee

```

func GetTrafficMirrorFilterRule

func GetTrafficMirrorFilterRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficMirrorFilterRuleState, opts ...pulumi.ResourceOption) (*TrafficMirrorFilterRule, error)

GetTrafficMirrorFilterRule gets an existing TrafficMirrorFilterRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficMirrorFilterRule

func NewTrafficMirrorFilterRule(ctx *pulumi.Context,
	name string, args *TrafficMirrorFilterRuleArgs, opts ...pulumi.ResourceOption) (*TrafficMirrorFilterRule, error)

NewTrafficMirrorFilterRule registers a new resource with the given unique name, arguments, and options.

func (*TrafficMirrorFilterRule) ElementType

func (*TrafficMirrorFilterRule) ElementType() reflect.Type

func (*TrafficMirrorFilterRule) ToTrafficMirrorFilterRuleOutput

func (i *TrafficMirrorFilterRule) ToTrafficMirrorFilterRuleOutput() TrafficMirrorFilterRuleOutput

func (*TrafficMirrorFilterRule) ToTrafficMirrorFilterRuleOutputWithContext

func (i *TrafficMirrorFilterRule) ToTrafficMirrorFilterRuleOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleOutput

func (*TrafficMirrorFilterRule) ToTrafficMirrorFilterRulePtrOutput

func (i *TrafficMirrorFilterRule) ToTrafficMirrorFilterRulePtrOutput() TrafficMirrorFilterRulePtrOutput

func (*TrafficMirrorFilterRule) ToTrafficMirrorFilterRulePtrOutputWithContext

func (i *TrafficMirrorFilterRule) ToTrafficMirrorFilterRulePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRulePtrOutput

type TrafficMirrorFilterRuleArgs

type TrafficMirrorFilterRuleArgs struct {
	// Description of the traffic mirror filter rule.
	Description pulumi.StringPtrInput
	// Destination CIDR block to assign to the Traffic Mirror rule.
	DestinationCidrBlock pulumi.StringInput
	// Destination port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	DestinationPortRange TrafficMirrorFilterRuleDestinationPortRangePtrInput
	// Protocol number, for example 17 (UDP), to assign to the Traffic Mirror rule. For information about the protocol value, see [Protocol Numbers](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) on the Internet Assigned Numbers Authority (IANA) website.
	Protocol pulumi.IntPtrInput
	// Action to take (accept | reject) on the filtered traffic. Valid values are `accept` and `reject`
	RuleAction pulumi.StringInput
	// Number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.
	RuleNumber pulumi.IntInput
	// Source CIDR block to assign to the Traffic Mirror rule.
	SourceCidrBlock pulumi.StringInput
	// Source port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	SourcePortRange TrafficMirrorFilterRuleSourcePortRangePtrInput
	// Direction of traffic to be captured. Valid values are `ingress` and `egress`
	TrafficDirection pulumi.StringInput
	// ID of the traffic mirror filter to which this rule should be added
	TrafficMirrorFilterId pulumi.StringInput
}

The set of arguments for constructing a TrafficMirrorFilterRule resource.

func (TrafficMirrorFilterRuleArgs) ElementType

type TrafficMirrorFilterRuleArray

type TrafficMirrorFilterRuleArray []TrafficMirrorFilterRuleInput

func (TrafficMirrorFilterRuleArray) ElementType

func (TrafficMirrorFilterRuleArray) ToTrafficMirrorFilterRuleArrayOutput

func (i TrafficMirrorFilterRuleArray) ToTrafficMirrorFilterRuleArrayOutput() TrafficMirrorFilterRuleArrayOutput

func (TrafficMirrorFilterRuleArray) ToTrafficMirrorFilterRuleArrayOutputWithContext

func (i TrafficMirrorFilterRuleArray) ToTrafficMirrorFilterRuleArrayOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleArrayOutput

type TrafficMirrorFilterRuleArrayInput

type TrafficMirrorFilterRuleArrayInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleArrayOutput() TrafficMirrorFilterRuleArrayOutput
	ToTrafficMirrorFilterRuleArrayOutputWithContext(context.Context) TrafficMirrorFilterRuleArrayOutput
}

TrafficMirrorFilterRuleArrayInput is an input type that accepts TrafficMirrorFilterRuleArray and TrafficMirrorFilterRuleArrayOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleArrayInput` via:

TrafficMirrorFilterRuleArray{ TrafficMirrorFilterRuleArgs{...} }

type TrafficMirrorFilterRuleArrayOutput

type TrafficMirrorFilterRuleArrayOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleArrayOutput) ElementType

func (TrafficMirrorFilterRuleArrayOutput) Index

func (TrafficMirrorFilterRuleArrayOutput) ToTrafficMirrorFilterRuleArrayOutput

func (o TrafficMirrorFilterRuleArrayOutput) ToTrafficMirrorFilterRuleArrayOutput() TrafficMirrorFilterRuleArrayOutput

func (TrafficMirrorFilterRuleArrayOutput) ToTrafficMirrorFilterRuleArrayOutputWithContext

func (o TrafficMirrorFilterRuleArrayOutput) ToTrafficMirrorFilterRuleArrayOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleArrayOutput

type TrafficMirrorFilterRuleDestinationPortRange

type TrafficMirrorFilterRuleDestinationPortRange struct {
	// Starting port of the range
	FromPort *int `pulumi:"fromPort"`
	// Ending port of the range
	ToPort *int `pulumi:"toPort"`
}

type TrafficMirrorFilterRuleDestinationPortRangeArgs

type TrafficMirrorFilterRuleDestinationPortRangeArgs struct {
	// Starting port of the range
	FromPort pulumi.IntPtrInput `pulumi:"fromPort"`
	// Ending port of the range
	ToPort pulumi.IntPtrInput `pulumi:"toPort"`
}

func (TrafficMirrorFilterRuleDestinationPortRangeArgs) ElementType

func (TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangeOutput

func (i TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangeOutput() TrafficMirrorFilterRuleDestinationPortRangeOutput

func (TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangeOutputWithContext

func (i TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangeOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleDestinationPortRangeOutput

func (TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput

func (i TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput() TrafficMirrorFilterRuleDestinationPortRangePtrOutput

func (TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext

func (i TrafficMirrorFilterRuleDestinationPortRangeArgs) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleDestinationPortRangePtrOutput

type TrafficMirrorFilterRuleDestinationPortRangeInput

type TrafficMirrorFilterRuleDestinationPortRangeInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleDestinationPortRangeOutput() TrafficMirrorFilterRuleDestinationPortRangeOutput
	ToTrafficMirrorFilterRuleDestinationPortRangeOutputWithContext(context.Context) TrafficMirrorFilterRuleDestinationPortRangeOutput
}

TrafficMirrorFilterRuleDestinationPortRangeInput is an input type that accepts TrafficMirrorFilterRuleDestinationPortRangeArgs and TrafficMirrorFilterRuleDestinationPortRangeOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleDestinationPortRangeInput` via:

TrafficMirrorFilterRuleDestinationPortRangeArgs{...}

type TrafficMirrorFilterRuleDestinationPortRangeOutput

type TrafficMirrorFilterRuleDestinationPortRangeOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ElementType

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) FromPort

Starting port of the range

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ToPort

Ending port of the range

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangeOutput

func (o TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangeOutput() TrafficMirrorFilterRuleDestinationPortRangeOutput

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangeOutputWithContext

func (o TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangeOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleDestinationPortRangeOutput

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput

func (o TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput() TrafficMirrorFilterRuleDestinationPortRangePtrOutput

func (TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext

func (o TrafficMirrorFilterRuleDestinationPortRangeOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleDestinationPortRangePtrOutput

type TrafficMirrorFilterRuleDestinationPortRangePtrInput

type TrafficMirrorFilterRuleDestinationPortRangePtrInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput() TrafficMirrorFilterRuleDestinationPortRangePtrOutput
	ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext(context.Context) TrafficMirrorFilterRuleDestinationPortRangePtrOutput
}

TrafficMirrorFilterRuleDestinationPortRangePtrInput is an input type that accepts TrafficMirrorFilterRuleDestinationPortRangeArgs, TrafficMirrorFilterRuleDestinationPortRangePtr and TrafficMirrorFilterRuleDestinationPortRangePtrOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleDestinationPortRangePtrInput` via:

        TrafficMirrorFilterRuleDestinationPortRangeArgs{...}

or:

        nil

type TrafficMirrorFilterRuleDestinationPortRangePtrOutput

type TrafficMirrorFilterRuleDestinationPortRangePtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) Elem

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) ElementType

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) FromPort

Starting port of the range

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) ToPort

Ending port of the range

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutput

func (TrafficMirrorFilterRuleDestinationPortRangePtrOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext

func (o TrafficMirrorFilterRuleDestinationPortRangePtrOutput) ToTrafficMirrorFilterRuleDestinationPortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleDestinationPortRangePtrOutput

type TrafficMirrorFilterRuleInput

type TrafficMirrorFilterRuleInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleOutput() TrafficMirrorFilterRuleOutput
	ToTrafficMirrorFilterRuleOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleOutput
}

type TrafficMirrorFilterRuleMap

type TrafficMirrorFilterRuleMap map[string]TrafficMirrorFilterRuleInput

func (TrafficMirrorFilterRuleMap) ElementType

func (TrafficMirrorFilterRuleMap) ElementType() reflect.Type

func (TrafficMirrorFilterRuleMap) ToTrafficMirrorFilterRuleMapOutput

func (i TrafficMirrorFilterRuleMap) ToTrafficMirrorFilterRuleMapOutput() TrafficMirrorFilterRuleMapOutput

func (TrafficMirrorFilterRuleMap) ToTrafficMirrorFilterRuleMapOutputWithContext

func (i TrafficMirrorFilterRuleMap) ToTrafficMirrorFilterRuleMapOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleMapOutput

type TrafficMirrorFilterRuleMapInput

type TrafficMirrorFilterRuleMapInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleMapOutput() TrafficMirrorFilterRuleMapOutput
	ToTrafficMirrorFilterRuleMapOutputWithContext(context.Context) TrafficMirrorFilterRuleMapOutput
}

TrafficMirrorFilterRuleMapInput is an input type that accepts TrafficMirrorFilterRuleMap and TrafficMirrorFilterRuleMapOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleMapInput` via:

TrafficMirrorFilterRuleMap{ "key": TrafficMirrorFilterRuleArgs{...} }

type TrafficMirrorFilterRuleMapOutput

type TrafficMirrorFilterRuleMapOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleMapOutput) ElementType

func (TrafficMirrorFilterRuleMapOutput) MapIndex

func (TrafficMirrorFilterRuleMapOutput) ToTrafficMirrorFilterRuleMapOutput

func (o TrafficMirrorFilterRuleMapOutput) ToTrafficMirrorFilterRuleMapOutput() TrafficMirrorFilterRuleMapOutput

func (TrafficMirrorFilterRuleMapOutput) ToTrafficMirrorFilterRuleMapOutputWithContext

func (o TrafficMirrorFilterRuleMapOutput) ToTrafficMirrorFilterRuleMapOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleMapOutput

type TrafficMirrorFilterRuleOutput

type TrafficMirrorFilterRuleOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleOutput) ElementType

func (TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRuleOutput

func (o TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRuleOutput() TrafficMirrorFilterRuleOutput

func (TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRuleOutputWithContext

func (o TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRuleOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleOutput

func (TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRulePtrOutput

func (o TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRulePtrOutput() TrafficMirrorFilterRulePtrOutput

func (TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRulePtrOutputWithContext

func (o TrafficMirrorFilterRuleOutput) ToTrafficMirrorFilterRulePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRulePtrOutput

type TrafficMirrorFilterRulePtrInput

type TrafficMirrorFilterRulePtrInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRulePtrOutput() TrafficMirrorFilterRulePtrOutput
	ToTrafficMirrorFilterRulePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRulePtrOutput
}

type TrafficMirrorFilterRulePtrOutput

type TrafficMirrorFilterRulePtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRulePtrOutput) Elem added in v4.15.0

func (TrafficMirrorFilterRulePtrOutput) ElementType

func (TrafficMirrorFilterRulePtrOutput) ToTrafficMirrorFilterRulePtrOutput

func (o TrafficMirrorFilterRulePtrOutput) ToTrafficMirrorFilterRulePtrOutput() TrafficMirrorFilterRulePtrOutput

func (TrafficMirrorFilterRulePtrOutput) ToTrafficMirrorFilterRulePtrOutputWithContext

func (o TrafficMirrorFilterRulePtrOutput) ToTrafficMirrorFilterRulePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRulePtrOutput

type TrafficMirrorFilterRuleSourcePortRange

type TrafficMirrorFilterRuleSourcePortRange struct {
	// Starting port of the range
	FromPort *int `pulumi:"fromPort"`
	// Ending port of the range
	ToPort *int `pulumi:"toPort"`
}

type TrafficMirrorFilterRuleSourcePortRangeArgs

type TrafficMirrorFilterRuleSourcePortRangeArgs struct {
	// Starting port of the range
	FromPort pulumi.IntPtrInput `pulumi:"fromPort"`
	// Ending port of the range
	ToPort pulumi.IntPtrInput `pulumi:"toPort"`
}

func (TrafficMirrorFilterRuleSourcePortRangeArgs) ElementType

func (TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangeOutput

func (i TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangeOutput() TrafficMirrorFilterRuleSourcePortRangeOutput

func (TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangeOutputWithContext

func (i TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangeOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleSourcePortRangeOutput

func (TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput

func (i TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput() TrafficMirrorFilterRuleSourcePortRangePtrOutput

func (TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext

func (i TrafficMirrorFilterRuleSourcePortRangeArgs) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleSourcePortRangePtrOutput

type TrafficMirrorFilterRuleSourcePortRangeInput

type TrafficMirrorFilterRuleSourcePortRangeInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleSourcePortRangeOutput() TrafficMirrorFilterRuleSourcePortRangeOutput
	ToTrafficMirrorFilterRuleSourcePortRangeOutputWithContext(context.Context) TrafficMirrorFilterRuleSourcePortRangeOutput
}

TrafficMirrorFilterRuleSourcePortRangeInput is an input type that accepts TrafficMirrorFilterRuleSourcePortRangeArgs and TrafficMirrorFilterRuleSourcePortRangeOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleSourcePortRangeInput` via:

TrafficMirrorFilterRuleSourcePortRangeArgs{...}

type TrafficMirrorFilterRuleSourcePortRangeOutput

type TrafficMirrorFilterRuleSourcePortRangeOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ElementType

func (TrafficMirrorFilterRuleSourcePortRangeOutput) FromPort

Starting port of the range

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ToPort

Ending port of the range

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangeOutput

func (o TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangeOutput() TrafficMirrorFilterRuleSourcePortRangeOutput

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangeOutputWithContext

func (o TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangeOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleSourcePortRangeOutput

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput

func (o TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput() TrafficMirrorFilterRuleSourcePortRangePtrOutput

func (TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext

func (o TrafficMirrorFilterRuleSourcePortRangeOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleSourcePortRangePtrOutput

type TrafficMirrorFilterRuleSourcePortRangePtrInput

type TrafficMirrorFilterRuleSourcePortRangePtrInput interface {
	pulumi.Input

	ToTrafficMirrorFilterRuleSourcePortRangePtrOutput() TrafficMirrorFilterRuleSourcePortRangePtrOutput
	ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext(context.Context) TrafficMirrorFilterRuleSourcePortRangePtrOutput
}

TrafficMirrorFilterRuleSourcePortRangePtrInput is an input type that accepts TrafficMirrorFilterRuleSourcePortRangeArgs, TrafficMirrorFilterRuleSourcePortRangePtr and TrafficMirrorFilterRuleSourcePortRangePtrOutput values. You can construct a concrete instance of `TrafficMirrorFilterRuleSourcePortRangePtrInput` via:

        TrafficMirrorFilterRuleSourcePortRangeArgs{...}

or:

        nil

type TrafficMirrorFilterRuleSourcePortRangePtrOutput

type TrafficMirrorFilterRuleSourcePortRangePtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) Elem

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) ElementType

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) FromPort

Starting port of the range

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) ToPort

Ending port of the range

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput

func (o TrafficMirrorFilterRuleSourcePortRangePtrOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutput() TrafficMirrorFilterRuleSourcePortRangePtrOutput

func (TrafficMirrorFilterRuleSourcePortRangePtrOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext

func (o TrafficMirrorFilterRuleSourcePortRangePtrOutput) ToTrafficMirrorFilterRuleSourcePortRangePtrOutputWithContext(ctx context.Context) TrafficMirrorFilterRuleSourcePortRangePtrOutput

type TrafficMirrorFilterRuleState

type TrafficMirrorFilterRuleState struct {
	// ARN of the traffic mirror filter rule.
	Arn pulumi.StringPtrInput
	// Description of the traffic mirror filter rule.
	Description pulumi.StringPtrInput
	// Destination CIDR block to assign to the Traffic Mirror rule.
	DestinationCidrBlock pulumi.StringPtrInput
	// Destination port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	DestinationPortRange TrafficMirrorFilterRuleDestinationPortRangePtrInput
	// Protocol number, for example 17 (UDP), to assign to the Traffic Mirror rule. For information about the protocol value, see [Protocol Numbers](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) on the Internet Assigned Numbers Authority (IANA) website.
	Protocol pulumi.IntPtrInput
	// Action to take (accept | reject) on the filtered traffic. Valid values are `accept` and `reject`
	RuleAction pulumi.StringPtrInput
	// Number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.
	RuleNumber pulumi.IntPtrInput
	// Source CIDR block to assign to the Traffic Mirror rule.
	SourceCidrBlock pulumi.StringPtrInput
	// Source port range. Supported only when the protocol is set to TCP(6) or UDP(17). See Traffic mirror port range documented below
	SourcePortRange TrafficMirrorFilterRuleSourcePortRangePtrInput
	// Direction of traffic to be captured. Valid values are `ingress` and `egress`
	TrafficDirection pulumi.StringPtrInput
	// ID of the traffic mirror filter to which this rule should be added
	TrafficMirrorFilterId pulumi.StringPtrInput
}

func (TrafficMirrorFilterRuleState) ElementType

type TrafficMirrorFilterState

type TrafficMirrorFilterState struct {
	// The ARN of the traffic mirror filter.
	Arn pulumi.StringPtrInput
	// A description of the filter.
	Description pulumi.StringPtrInput
	// List of amazon network services that should be mirrored. Valid values: `amazon-dns`.
	NetworkServices pulumi.StringArrayInput
	Tags            pulumi.StringMapInput
	TagsAll         pulumi.StringMapInput
}

func (TrafficMirrorFilterState) ElementType

func (TrafficMirrorFilterState) ElementType() reflect.Type

type TrafficMirrorSession

type TrafficMirrorSession struct {
	pulumi.CustomResourceState

	// The ARN of the traffic mirror session.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A description of the traffic mirror session.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ID of the source network interface. Not all network interfaces are eligible as mirror sources. On EC2 instances only nitro based instances support mirroring.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The AWS account ID of the session owner.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror.
	PacketLength pulumi.IntPtrOutput `pulumi:"packetLength"`
	// - The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.
	SessionNumber pulumi.IntOutput       `pulumi:"sessionNumber"`
	Tags          pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll       pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ID of the traffic mirror filter to be used
	TrafficMirrorFilterId pulumi.StringOutput `pulumi:"trafficMirrorFilterId"`
	// ID of the traffic mirror target to be used
	TrafficMirrorTargetId pulumi.StringOutput `pulumi:"trafficMirrorTargetId"`
	// - The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.
	VirtualNetworkId pulumi.IntOutput `pulumi:"virtualNetworkId"`
}

Provides an Traffic mirror session.\ Read [limits and considerations](https://docs.aws.amazon.com/vpc/latest/mirroring/traffic-mirroring-considerations.html) for traffic mirroring

## Example Usage

To create a basic traffic mirror session

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		filter, err := ec2.NewTrafficMirrorFilter(ctx, "filter", &ec2.TrafficMirrorFilterArgs{
			Description: pulumi.String("traffic mirror filter - example"),
			NetworkServices: pulumi.StringArray{
				pulumi.String("amazon-dns"),
			},
		})
		if err != nil {
			return err
		}
		target, err := ec2.NewTrafficMirrorTarget(ctx, "target", &ec2.TrafficMirrorTargetArgs{
			NetworkLoadBalancerArn: pulumi.Any(aws_lb.Lb.Arn),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewTrafficMirrorSession(ctx, "session", &ec2.TrafficMirrorSessionArgs{
			Description:           pulumi.String("traffic mirror session - example"),
			NetworkInterfaceId:    pulumi.Any(aws_instance.Test.Primary_network_interface_id),
			SessionNumber:         pulumi.Int(1),
			TrafficMirrorFilterId: filter.ID(),
			TrafficMirrorTargetId: target.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Traffic mirror sessions can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/trafficMirrorSession:TrafficMirrorSession session tms-0d8aa3ca35897b82e

```

func GetTrafficMirrorSession

func GetTrafficMirrorSession(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficMirrorSessionState, opts ...pulumi.ResourceOption) (*TrafficMirrorSession, error)

GetTrafficMirrorSession gets an existing TrafficMirrorSession resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficMirrorSession

func NewTrafficMirrorSession(ctx *pulumi.Context,
	name string, args *TrafficMirrorSessionArgs, opts ...pulumi.ResourceOption) (*TrafficMirrorSession, error)

NewTrafficMirrorSession registers a new resource with the given unique name, arguments, and options.

func (*TrafficMirrorSession) ElementType

func (*TrafficMirrorSession) ElementType() reflect.Type

func (*TrafficMirrorSession) ToTrafficMirrorSessionOutput

func (i *TrafficMirrorSession) ToTrafficMirrorSessionOutput() TrafficMirrorSessionOutput

func (*TrafficMirrorSession) ToTrafficMirrorSessionOutputWithContext

func (i *TrafficMirrorSession) ToTrafficMirrorSessionOutputWithContext(ctx context.Context) TrafficMirrorSessionOutput

func (*TrafficMirrorSession) ToTrafficMirrorSessionPtrOutput

func (i *TrafficMirrorSession) ToTrafficMirrorSessionPtrOutput() TrafficMirrorSessionPtrOutput

func (*TrafficMirrorSession) ToTrafficMirrorSessionPtrOutputWithContext

func (i *TrafficMirrorSession) ToTrafficMirrorSessionPtrOutputWithContext(ctx context.Context) TrafficMirrorSessionPtrOutput

type TrafficMirrorSessionArgs

type TrafficMirrorSessionArgs struct {
	// A description of the traffic mirror session.
	Description pulumi.StringPtrInput
	// ID of the source network interface. Not all network interfaces are eligible as mirror sources. On EC2 instances only nitro based instances support mirroring.
	NetworkInterfaceId pulumi.StringInput
	// The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror.
	PacketLength pulumi.IntPtrInput
	// - The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.
	SessionNumber pulumi.IntInput
	Tags          pulumi.StringMapInput
	TagsAll       pulumi.StringMapInput
	// ID of the traffic mirror filter to be used
	TrafficMirrorFilterId pulumi.StringInput
	// ID of the traffic mirror target to be used
	TrafficMirrorTargetId pulumi.StringInput
	// - The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.
	VirtualNetworkId pulumi.IntPtrInput
}

The set of arguments for constructing a TrafficMirrorSession resource.

func (TrafficMirrorSessionArgs) ElementType

func (TrafficMirrorSessionArgs) ElementType() reflect.Type

type TrafficMirrorSessionArray

type TrafficMirrorSessionArray []TrafficMirrorSessionInput

func (TrafficMirrorSessionArray) ElementType

func (TrafficMirrorSessionArray) ElementType() reflect.Type

func (TrafficMirrorSessionArray) ToTrafficMirrorSessionArrayOutput

func (i TrafficMirrorSessionArray) ToTrafficMirrorSessionArrayOutput() TrafficMirrorSessionArrayOutput

func (TrafficMirrorSessionArray) ToTrafficMirrorSessionArrayOutputWithContext

func (i TrafficMirrorSessionArray) ToTrafficMirrorSessionArrayOutputWithContext(ctx context.Context) TrafficMirrorSessionArrayOutput

type TrafficMirrorSessionArrayInput

type TrafficMirrorSessionArrayInput interface {
	pulumi.Input

	ToTrafficMirrorSessionArrayOutput() TrafficMirrorSessionArrayOutput
	ToTrafficMirrorSessionArrayOutputWithContext(context.Context) TrafficMirrorSessionArrayOutput
}

TrafficMirrorSessionArrayInput is an input type that accepts TrafficMirrorSessionArray and TrafficMirrorSessionArrayOutput values. You can construct a concrete instance of `TrafficMirrorSessionArrayInput` via:

TrafficMirrorSessionArray{ TrafficMirrorSessionArgs{...} }

type TrafficMirrorSessionArrayOutput

type TrafficMirrorSessionArrayOutput struct{ *pulumi.OutputState }

func (TrafficMirrorSessionArrayOutput) ElementType

func (TrafficMirrorSessionArrayOutput) Index

func (TrafficMirrorSessionArrayOutput) ToTrafficMirrorSessionArrayOutput

func (o TrafficMirrorSessionArrayOutput) ToTrafficMirrorSessionArrayOutput() TrafficMirrorSessionArrayOutput

func (TrafficMirrorSessionArrayOutput) ToTrafficMirrorSessionArrayOutputWithContext

func (o TrafficMirrorSessionArrayOutput) ToTrafficMirrorSessionArrayOutputWithContext(ctx context.Context) TrafficMirrorSessionArrayOutput

type TrafficMirrorSessionInput

type TrafficMirrorSessionInput interface {
	pulumi.Input

	ToTrafficMirrorSessionOutput() TrafficMirrorSessionOutput
	ToTrafficMirrorSessionOutputWithContext(ctx context.Context) TrafficMirrorSessionOutput
}

type TrafficMirrorSessionMap

type TrafficMirrorSessionMap map[string]TrafficMirrorSessionInput

func (TrafficMirrorSessionMap) ElementType

func (TrafficMirrorSessionMap) ElementType() reflect.Type

func (TrafficMirrorSessionMap) ToTrafficMirrorSessionMapOutput

func (i TrafficMirrorSessionMap) ToTrafficMirrorSessionMapOutput() TrafficMirrorSessionMapOutput

func (TrafficMirrorSessionMap) ToTrafficMirrorSessionMapOutputWithContext

func (i TrafficMirrorSessionMap) ToTrafficMirrorSessionMapOutputWithContext(ctx context.Context) TrafficMirrorSessionMapOutput

type TrafficMirrorSessionMapInput

type TrafficMirrorSessionMapInput interface {
	pulumi.Input

	ToTrafficMirrorSessionMapOutput() TrafficMirrorSessionMapOutput
	ToTrafficMirrorSessionMapOutputWithContext(context.Context) TrafficMirrorSessionMapOutput
}

TrafficMirrorSessionMapInput is an input type that accepts TrafficMirrorSessionMap and TrafficMirrorSessionMapOutput values. You can construct a concrete instance of `TrafficMirrorSessionMapInput` via:

TrafficMirrorSessionMap{ "key": TrafficMirrorSessionArgs{...} }

type TrafficMirrorSessionMapOutput

type TrafficMirrorSessionMapOutput struct{ *pulumi.OutputState }

func (TrafficMirrorSessionMapOutput) ElementType

func (TrafficMirrorSessionMapOutput) MapIndex

func (TrafficMirrorSessionMapOutput) ToTrafficMirrorSessionMapOutput

func (o TrafficMirrorSessionMapOutput) ToTrafficMirrorSessionMapOutput() TrafficMirrorSessionMapOutput

func (TrafficMirrorSessionMapOutput) ToTrafficMirrorSessionMapOutputWithContext

func (o TrafficMirrorSessionMapOutput) ToTrafficMirrorSessionMapOutputWithContext(ctx context.Context) TrafficMirrorSessionMapOutput

type TrafficMirrorSessionOutput

type TrafficMirrorSessionOutput struct{ *pulumi.OutputState }

func (TrafficMirrorSessionOutput) ElementType

func (TrafficMirrorSessionOutput) ElementType() reflect.Type

func (TrafficMirrorSessionOutput) ToTrafficMirrorSessionOutput

func (o TrafficMirrorSessionOutput) ToTrafficMirrorSessionOutput() TrafficMirrorSessionOutput

func (TrafficMirrorSessionOutput) ToTrafficMirrorSessionOutputWithContext

func (o TrafficMirrorSessionOutput) ToTrafficMirrorSessionOutputWithContext(ctx context.Context) TrafficMirrorSessionOutput

func (TrafficMirrorSessionOutput) ToTrafficMirrorSessionPtrOutput

func (o TrafficMirrorSessionOutput) ToTrafficMirrorSessionPtrOutput() TrafficMirrorSessionPtrOutput

func (TrafficMirrorSessionOutput) ToTrafficMirrorSessionPtrOutputWithContext

func (o TrafficMirrorSessionOutput) ToTrafficMirrorSessionPtrOutputWithContext(ctx context.Context) TrafficMirrorSessionPtrOutput

type TrafficMirrorSessionPtrInput

type TrafficMirrorSessionPtrInput interface {
	pulumi.Input

	ToTrafficMirrorSessionPtrOutput() TrafficMirrorSessionPtrOutput
	ToTrafficMirrorSessionPtrOutputWithContext(ctx context.Context) TrafficMirrorSessionPtrOutput
}

type TrafficMirrorSessionPtrOutput

type TrafficMirrorSessionPtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorSessionPtrOutput) Elem added in v4.15.0

func (TrafficMirrorSessionPtrOutput) ElementType

func (TrafficMirrorSessionPtrOutput) ToTrafficMirrorSessionPtrOutput

func (o TrafficMirrorSessionPtrOutput) ToTrafficMirrorSessionPtrOutput() TrafficMirrorSessionPtrOutput

func (TrafficMirrorSessionPtrOutput) ToTrafficMirrorSessionPtrOutputWithContext

func (o TrafficMirrorSessionPtrOutput) ToTrafficMirrorSessionPtrOutputWithContext(ctx context.Context) TrafficMirrorSessionPtrOutput

type TrafficMirrorSessionState

type TrafficMirrorSessionState struct {
	// The ARN of the traffic mirror session.
	Arn pulumi.StringPtrInput
	// A description of the traffic mirror session.
	Description pulumi.StringPtrInput
	// ID of the source network interface. Not all network interfaces are eligible as mirror sources. On EC2 instances only nitro based instances support mirroring.
	NetworkInterfaceId pulumi.StringPtrInput
	// The AWS account ID of the session owner.
	OwnerId pulumi.StringPtrInput
	// The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror.
	PacketLength pulumi.IntPtrInput
	// - The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.
	SessionNumber pulumi.IntPtrInput
	Tags          pulumi.StringMapInput
	TagsAll       pulumi.StringMapInput
	// ID of the traffic mirror filter to be used
	TrafficMirrorFilterId pulumi.StringPtrInput
	// ID of the traffic mirror target to be used
	TrafficMirrorTargetId pulumi.StringPtrInput
	// - The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.
	VirtualNetworkId pulumi.IntPtrInput
}

func (TrafficMirrorSessionState) ElementType

func (TrafficMirrorSessionState) ElementType() reflect.Type

type TrafficMirrorTarget

type TrafficMirrorTarget struct {
	pulumi.CustomResourceState

	// The ARN of the traffic mirror target.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A description of the traffic mirror session.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The network interface ID that is associated with the target.
	NetworkInterfaceId pulumi.StringPtrOutput `pulumi:"networkInterfaceId"`
	// The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
	NetworkLoadBalancerArn pulumi.StringPtrOutput `pulumi:"networkLoadBalancerArn"`
	// The ID of the AWS account that owns the traffic mirror target.
	OwnerId pulumi.StringOutput    `pulumi:"ownerId"`
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a Traffic mirror target.\ Read [limits and considerations](https://docs.aws.amazon.com/vpc/latest/mirroring/traffic-mirroring-considerations.html) for traffic mirroring

## Example Usage

To create a basic traffic mirror session

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewTrafficMirrorTarget(ctx, "nlb", &ec2.TrafficMirrorTargetArgs{
			Description:            pulumi.String("NLB target"),
			NetworkLoadBalancerArn: pulumi.Any(aws_lb.Lb.Arn),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewTrafficMirrorTarget(ctx, "eni", &ec2.TrafficMirrorTargetArgs{
			Description:        pulumi.String("ENI target"),
			NetworkInterfaceId: pulumi.Any(aws_instance.Test.Primary_network_interface_id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Traffic mirror targets can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ec2/trafficMirrorTarget:TrafficMirrorTarget target tmt-0c13a005422b86606

```

func GetTrafficMirrorTarget

func GetTrafficMirrorTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficMirrorTargetState, opts ...pulumi.ResourceOption) (*TrafficMirrorTarget, error)

GetTrafficMirrorTarget gets an existing TrafficMirrorTarget resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficMirrorTarget

func NewTrafficMirrorTarget(ctx *pulumi.Context,
	name string, args *TrafficMirrorTargetArgs, opts ...pulumi.ResourceOption) (*TrafficMirrorTarget, error)

NewTrafficMirrorTarget registers a new resource with the given unique name, arguments, and options.

func (*TrafficMirrorTarget) ElementType

func (*TrafficMirrorTarget) ElementType() reflect.Type

func (*TrafficMirrorTarget) ToTrafficMirrorTargetOutput

func (i *TrafficMirrorTarget) ToTrafficMirrorTargetOutput() TrafficMirrorTargetOutput

func (*TrafficMirrorTarget) ToTrafficMirrorTargetOutputWithContext

func (i *TrafficMirrorTarget) ToTrafficMirrorTargetOutputWithContext(ctx context.Context) TrafficMirrorTargetOutput

func (*TrafficMirrorTarget) ToTrafficMirrorTargetPtrOutput

func (i *TrafficMirrorTarget) ToTrafficMirrorTargetPtrOutput() TrafficMirrorTargetPtrOutput

func (*TrafficMirrorTarget) ToTrafficMirrorTargetPtrOutputWithContext

func (i *TrafficMirrorTarget) ToTrafficMirrorTargetPtrOutputWithContext(ctx context.Context) TrafficMirrorTargetPtrOutput

type TrafficMirrorTargetArgs

type TrafficMirrorTargetArgs struct {
	// A description of the traffic mirror session.
	Description pulumi.StringPtrInput
	// The network interface ID that is associated with the target.
	NetworkInterfaceId pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
	NetworkLoadBalancerArn pulumi.StringPtrInput
	Tags                   pulumi.StringMapInput
	TagsAll                pulumi.StringMapInput
}

The set of arguments for constructing a TrafficMirrorTarget resource.

func (TrafficMirrorTargetArgs) ElementType

func (TrafficMirrorTargetArgs) ElementType() reflect.Type

type TrafficMirrorTargetArray

type TrafficMirrorTargetArray []TrafficMirrorTargetInput

func (TrafficMirrorTargetArray) ElementType

func (TrafficMirrorTargetArray) ElementType() reflect.Type

func (TrafficMirrorTargetArray) ToTrafficMirrorTargetArrayOutput

func (i TrafficMirrorTargetArray) ToTrafficMirrorTargetArrayOutput() TrafficMirrorTargetArrayOutput

func (TrafficMirrorTargetArray) ToTrafficMirrorTargetArrayOutputWithContext

func (i TrafficMirrorTargetArray) ToTrafficMirrorTargetArrayOutputWithContext(ctx context.Context) TrafficMirrorTargetArrayOutput

type TrafficMirrorTargetArrayInput

type TrafficMirrorTargetArrayInput interface {
	pulumi.Input

	ToTrafficMirrorTargetArrayOutput() TrafficMirrorTargetArrayOutput
	ToTrafficMirrorTargetArrayOutputWithContext(context.Context) TrafficMirrorTargetArrayOutput
}

TrafficMirrorTargetArrayInput is an input type that accepts TrafficMirrorTargetArray and TrafficMirrorTargetArrayOutput values. You can construct a concrete instance of `TrafficMirrorTargetArrayInput` via:

TrafficMirrorTargetArray{ TrafficMirrorTargetArgs{...} }

type TrafficMirrorTargetArrayOutput

type TrafficMirrorTargetArrayOutput struct{ *pulumi.OutputState }

func (TrafficMirrorTargetArrayOutput) ElementType

func (TrafficMirrorTargetArrayOutput) Index

func (TrafficMirrorTargetArrayOutput) ToTrafficMirrorTargetArrayOutput

func (o TrafficMirrorTargetArrayOutput) ToTrafficMirrorTargetArrayOutput() TrafficMirrorTargetArrayOutput

func (TrafficMirrorTargetArrayOutput) ToTrafficMirrorTargetArrayOutputWithContext

func (o TrafficMirrorTargetArrayOutput) ToTrafficMirrorTargetArrayOutputWithContext(ctx context.Context) TrafficMirrorTargetArrayOutput

type TrafficMirrorTargetInput

type TrafficMirrorTargetInput interface {
	pulumi.Input

	ToTrafficMirrorTargetOutput() TrafficMirrorTargetOutput
	ToTrafficMirrorTargetOutputWithContext(ctx context.Context) TrafficMirrorTargetOutput
}

type TrafficMirrorTargetMap

type TrafficMirrorTargetMap map[string]TrafficMirrorTargetInput

func (TrafficMirrorTargetMap) ElementType

func (TrafficMirrorTargetMap) ElementType() reflect.Type

func (TrafficMirrorTargetMap) ToTrafficMirrorTargetMapOutput

func (i TrafficMirrorTargetMap) ToTrafficMirrorTargetMapOutput() TrafficMirrorTargetMapOutput

func (TrafficMirrorTargetMap) ToTrafficMirrorTargetMapOutputWithContext

func (i TrafficMirrorTargetMap) ToTrafficMirrorTargetMapOutputWithContext(ctx context.Context) TrafficMirrorTargetMapOutput

type TrafficMirrorTargetMapInput

type TrafficMirrorTargetMapInput interface {
	pulumi.Input

	ToTrafficMirrorTargetMapOutput() TrafficMirrorTargetMapOutput
	ToTrafficMirrorTargetMapOutputWithContext(context.Context) TrafficMirrorTargetMapOutput
}

TrafficMirrorTargetMapInput is an input type that accepts TrafficMirrorTargetMap and TrafficMirrorTargetMapOutput values. You can construct a concrete instance of `TrafficMirrorTargetMapInput` via:

TrafficMirrorTargetMap{ "key": TrafficMirrorTargetArgs{...} }

type TrafficMirrorTargetMapOutput

type TrafficMirrorTargetMapOutput struct{ *pulumi.OutputState }

func (TrafficMirrorTargetMapOutput) ElementType

func (TrafficMirrorTargetMapOutput) MapIndex

func (TrafficMirrorTargetMapOutput) ToTrafficMirrorTargetMapOutput

func (o TrafficMirrorTargetMapOutput) ToTrafficMirrorTargetMapOutput() TrafficMirrorTargetMapOutput

func (TrafficMirrorTargetMapOutput) ToTrafficMirrorTargetMapOutputWithContext

func (o TrafficMirrorTargetMapOutput) ToTrafficMirrorTargetMapOutputWithContext(ctx context.Context) TrafficMirrorTargetMapOutput

type TrafficMirrorTargetOutput

type TrafficMirrorTargetOutput struct{ *pulumi.OutputState }

func (TrafficMirrorTargetOutput) ElementType

func (TrafficMirrorTargetOutput) ElementType() reflect.Type

func (TrafficMirrorTargetOutput) ToTrafficMirrorTargetOutput

func (o TrafficMirrorTargetOutput) ToTrafficMirrorTargetOutput() TrafficMirrorTargetOutput

func (TrafficMirrorTargetOutput) ToTrafficMirrorTargetOutputWithContext

func (o TrafficMirrorTargetOutput) ToTrafficMirrorTargetOutputWithContext(ctx context.Context) TrafficMirrorTargetOutput

func (TrafficMirrorTargetOutput) ToTrafficMirrorTargetPtrOutput

func (o TrafficMirrorTargetOutput) ToTrafficMirrorTargetPtrOutput() TrafficMirrorTargetPtrOutput

func (TrafficMirrorTargetOutput) ToTrafficMirrorTargetPtrOutputWithContext

func (o TrafficMirrorTargetOutput) ToTrafficMirrorTargetPtrOutputWithContext(ctx context.Context) TrafficMirrorTargetPtrOutput

type TrafficMirrorTargetPtrInput

type TrafficMirrorTargetPtrInput interface {
	pulumi.Input

	ToTrafficMirrorTargetPtrOutput() TrafficMirrorTargetPtrOutput
	ToTrafficMirrorTargetPtrOutputWithContext(ctx context.Context) TrafficMirrorTargetPtrOutput
}

type TrafficMirrorTargetPtrOutput

type TrafficMirrorTargetPtrOutput struct{ *pulumi.OutputState }

func (TrafficMirrorTargetPtrOutput) Elem added in v4.15.0

func (TrafficMirrorTargetPtrOutput) ElementType

func (TrafficMirrorTargetPtrOutput) ToTrafficMirrorTargetPtrOutput

func (o TrafficMirrorTargetPtrOutput) ToTrafficMirrorTargetPtrOutput() TrafficMirrorTargetPtrOutput

func (TrafficMirrorTargetPtrOutput) ToTrafficMirrorTargetPtrOutputWithContext

func (o TrafficMirrorTargetPtrOutput) ToTrafficMirrorTargetPtrOutputWithContext(ctx context.Context) TrafficMirrorTargetPtrOutput

type TrafficMirrorTargetState

type TrafficMirrorTargetState struct {
	// The ARN of the traffic mirror target.
	Arn pulumi.StringPtrInput
	// A description of the traffic mirror session.
	Description pulumi.StringPtrInput
	// The network interface ID that is associated with the target.
	NetworkInterfaceId pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
	NetworkLoadBalancerArn pulumi.StringPtrInput
	// The ID of the AWS account that owns the traffic mirror target.
	OwnerId pulumi.StringPtrInput
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

func (TrafficMirrorTargetState) ElementType

func (TrafficMirrorTargetState) ElementType() reflect.Type

type TransitGatewayPeeringAttachmentAccepter

type TransitGatewayPeeringAttachmentAccepter struct {
	pulumi.CustomResourceState

	// Identifier of the AWS account that owns the EC2 TGW peering.
	PeerAccountId pulumi.StringOutput `pulumi:"peerAccountId"`
	PeerRegion    pulumi.StringOutput `pulumi:"peerRegion"`
	// Identifier of EC2 Transit Gateway to peer with.
	PeerTransitGatewayId pulumi.StringOutput    `pulumi:"peerTransitGatewayId"`
	Tags                 pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll              pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The ID of the EC2 Transit Gateway Peering Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringOutput `pulumi:"transitGatewayAttachmentId"`
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"`
}

Manages the accepter's side of an EC2 Transit Gateway Peering Attachment.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewTransitGatewayPeeringAttachmentAccepter(ctx, "example", &ec2.TransitGatewayPeeringAttachmentAccepterArgs{
			TransitGatewayAttachmentId: pulumi.Any(aws_ec2_transit_gateway_peering_attachment.Example.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Example cross-account attachment"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_ec2_transit_gateway_peering_attachment_accepter` can be imported by using the EC2 Transit Gateway Attachment identifier, e.g.

```sh

$ pulumi import aws:ec2/transitGatewayPeeringAttachmentAccepter:TransitGatewayPeeringAttachmentAccepter example tgw-attach-12345678

```

func GetTransitGatewayPeeringAttachmentAccepter

func GetTransitGatewayPeeringAttachmentAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayPeeringAttachmentAccepterState, opts ...pulumi.ResourceOption) (*TransitGatewayPeeringAttachmentAccepter, error)

GetTransitGatewayPeeringAttachmentAccepter gets an existing TransitGatewayPeeringAttachmentAccepter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTransitGatewayPeeringAttachmentAccepter

func NewTransitGatewayPeeringAttachmentAccepter(ctx *pulumi.Context,
	name string, args *TransitGatewayPeeringAttachmentAccepterArgs, opts ...pulumi.ResourceOption) (*TransitGatewayPeeringAttachmentAccepter, error)

NewTransitGatewayPeeringAttachmentAccepter registers a new resource with the given unique name, arguments, and options.

func (*TransitGatewayPeeringAttachmentAccepter) ElementType

func (*TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterOutput

func (i *TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterOutput() TransitGatewayPeeringAttachmentAccepterOutput

func (*TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterOutputWithContext

func (i *TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterOutput

func (*TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterPtrOutput

func (i *TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterPtrOutput() TransitGatewayPeeringAttachmentAccepterPtrOutput

func (*TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext

func (i *TransitGatewayPeeringAttachmentAccepter) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterPtrOutput

type TransitGatewayPeeringAttachmentAccepterArgs

type TransitGatewayPeeringAttachmentAccepterArgs struct {
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The ID of the EC2 Transit Gateway Peering Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringInput
}

The set of arguments for constructing a TransitGatewayPeeringAttachmentAccepter resource.

func (TransitGatewayPeeringAttachmentAccepterArgs) ElementType

type TransitGatewayPeeringAttachmentAccepterArray

type TransitGatewayPeeringAttachmentAccepterArray []TransitGatewayPeeringAttachmentAccepterInput

func (TransitGatewayPeeringAttachmentAccepterArray) ElementType

func (TransitGatewayPeeringAttachmentAccepterArray) ToTransitGatewayPeeringAttachmentAccepterArrayOutput

func (i TransitGatewayPeeringAttachmentAccepterArray) ToTransitGatewayPeeringAttachmentAccepterArrayOutput() TransitGatewayPeeringAttachmentAccepterArrayOutput

func (TransitGatewayPeeringAttachmentAccepterArray) ToTransitGatewayPeeringAttachmentAccepterArrayOutputWithContext

func (i TransitGatewayPeeringAttachmentAccepterArray) ToTransitGatewayPeeringAttachmentAccepterArrayOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterArrayOutput

type TransitGatewayPeeringAttachmentAccepterArrayInput

type TransitGatewayPeeringAttachmentAccepterArrayInput interface {
	pulumi.Input

	ToTransitGatewayPeeringAttachmentAccepterArrayOutput() TransitGatewayPeeringAttachmentAccepterArrayOutput
	ToTransitGatewayPeeringAttachmentAccepterArrayOutputWithContext(context.Context) TransitGatewayPeeringAttachmentAccepterArrayOutput
}

TransitGatewayPeeringAttachmentAccepterArrayInput is an input type that accepts TransitGatewayPeeringAttachmentAccepterArray and TransitGatewayPeeringAttachmentAccepterArrayOutput values. You can construct a concrete instance of `TransitGatewayPeeringAttachmentAccepterArrayInput` via:

TransitGatewayPeeringAttachmentAccepterArray{ TransitGatewayPeeringAttachmentAccepterArgs{...} }

type TransitGatewayPeeringAttachmentAccepterArrayOutput

type TransitGatewayPeeringAttachmentAccepterArrayOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringAttachmentAccepterArrayOutput) ElementType

func (TransitGatewayPeeringAttachmentAccepterArrayOutput) Index

func (TransitGatewayPeeringAttachmentAccepterArrayOutput) ToTransitGatewayPeeringAttachmentAccepterArrayOutput

func (o TransitGatewayPeeringAttachmentAccepterArrayOutput) ToTransitGatewayPeeringAttachmentAccepterArrayOutput() TransitGatewayPeeringAttachmentAccepterArrayOutput

func (TransitGatewayPeeringAttachmentAccepterArrayOutput) ToTransitGatewayPeeringAttachmentAccepterArrayOutputWithContext

func (o TransitGatewayPeeringAttachmentAccepterArrayOutput) ToTransitGatewayPeeringAttachmentAccepterArrayOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterArrayOutput

type TransitGatewayPeeringAttachmentAccepterInput

type TransitGatewayPeeringAttachmentAccepterInput interface {
	pulumi.Input

	ToTransitGatewayPeeringAttachmentAccepterOutput() TransitGatewayPeeringAttachmentAccepterOutput
	ToTransitGatewayPeeringAttachmentAccepterOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterOutput
}

type TransitGatewayPeeringAttachmentAccepterMap

type TransitGatewayPeeringAttachmentAccepterMap map[string]TransitGatewayPeeringAttachmentAccepterInput

func (TransitGatewayPeeringAttachmentAccepterMap) ElementType

func (TransitGatewayPeeringAttachmentAccepterMap) ToTransitGatewayPeeringAttachmentAccepterMapOutput

func (i TransitGatewayPeeringAttachmentAccepterMap) ToTransitGatewayPeeringAttachmentAccepterMapOutput() TransitGatewayPeeringAttachmentAccepterMapOutput

func (TransitGatewayPeeringAttachmentAccepterMap) ToTransitGatewayPeeringAttachmentAccepterMapOutputWithContext

func (i TransitGatewayPeeringAttachmentAccepterMap) ToTransitGatewayPeeringAttachmentAccepterMapOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterMapOutput

type TransitGatewayPeeringAttachmentAccepterMapInput

type TransitGatewayPeeringAttachmentAccepterMapInput interface {
	pulumi.Input

	ToTransitGatewayPeeringAttachmentAccepterMapOutput() TransitGatewayPeeringAttachmentAccepterMapOutput
	ToTransitGatewayPeeringAttachmentAccepterMapOutputWithContext(context.Context) TransitGatewayPeeringAttachmentAccepterMapOutput
}

TransitGatewayPeeringAttachmentAccepterMapInput is an input type that accepts TransitGatewayPeeringAttachmentAccepterMap and TransitGatewayPeeringAttachmentAccepterMapOutput values. You can construct a concrete instance of `TransitGatewayPeeringAttachmentAccepterMapInput` via:

TransitGatewayPeeringAttachmentAccepterMap{ "key": TransitGatewayPeeringAttachmentAccepterArgs{...} }

type TransitGatewayPeeringAttachmentAccepterMapOutput

type TransitGatewayPeeringAttachmentAccepterMapOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringAttachmentAccepterMapOutput) ElementType

func (TransitGatewayPeeringAttachmentAccepterMapOutput) MapIndex

func (TransitGatewayPeeringAttachmentAccepterMapOutput) ToTransitGatewayPeeringAttachmentAccepterMapOutput

func (o TransitGatewayPeeringAttachmentAccepterMapOutput) ToTransitGatewayPeeringAttachmentAccepterMapOutput() TransitGatewayPeeringAttachmentAccepterMapOutput

func (TransitGatewayPeeringAttachmentAccepterMapOutput) ToTransitGatewayPeeringAttachmentAccepterMapOutputWithContext

func (o TransitGatewayPeeringAttachmentAccepterMapOutput) ToTransitGatewayPeeringAttachmentAccepterMapOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterMapOutput

type TransitGatewayPeeringAttachmentAccepterOutput

type TransitGatewayPeeringAttachmentAccepterOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringAttachmentAccepterOutput) ElementType

func (TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterOutput

func (o TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterOutput() TransitGatewayPeeringAttachmentAccepterOutput

func (TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterOutputWithContext

func (o TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterOutput

func (TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutput

func (o TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutput() TransitGatewayPeeringAttachmentAccepterPtrOutput

func (TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext

func (o TransitGatewayPeeringAttachmentAccepterOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterPtrOutput

type TransitGatewayPeeringAttachmentAccepterPtrInput

type TransitGatewayPeeringAttachmentAccepterPtrInput interface {
	pulumi.Input

	ToTransitGatewayPeeringAttachmentAccepterPtrOutput() TransitGatewayPeeringAttachmentAccepterPtrOutput
	ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterPtrOutput
}

type TransitGatewayPeeringAttachmentAccepterPtrOutput

type TransitGatewayPeeringAttachmentAccepterPtrOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringAttachmentAccepterPtrOutput) Elem added in v4.15.0

func (TransitGatewayPeeringAttachmentAccepterPtrOutput) ElementType

func (TransitGatewayPeeringAttachmentAccepterPtrOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutput

func (o TransitGatewayPeeringAttachmentAccepterPtrOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutput() TransitGatewayPeeringAttachmentAccepterPtrOutput

func (TransitGatewayPeeringAttachmentAccepterPtrOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext

func (o TransitGatewayPeeringAttachmentAccepterPtrOutput) ToTransitGatewayPeeringAttachmentAccepterPtrOutputWithContext(ctx context.Context) TransitGatewayPeeringAttachmentAccepterPtrOutput

type TransitGatewayPeeringAttachmentAccepterState

type TransitGatewayPeeringAttachmentAccepterState struct {
	// Identifier of the AWS account that owns the EC2 TGW peering.
	PeerAccountId pulumi.StringPtrInput
	PeerRegion    pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway to peer with.
	PeerTransitGatewayId pulumi.StringPtrInput
	Tags                 pulumi.StringMapInput
	TagsAll              pulumi.StringMapInput
	// The ID of the EC2 Transit Gateway Peering Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
}

func (TransitGatewayPeeringAttachmentAccepterState) ElementType

type VolumeAttachment

type VolumeAttachment struct {
	pulumi.CustomResourceState

	// The device name to expose to the instance (for
	// example, `/dev/sdh` or `xvdh`).  See [Device Naming on Linux Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html#available-ec2-device-names) and [Device Naming on Windows Instances](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/device_naming.html#available-ec2-device-names) for more information.
	DeviceName pulumi.StringOutput `pulumi:"deviceName"`
	// Set to `true` if you want to force the
	// volume to detach. Useful if previous attempts failed, but use this option only
	// as a last resort, as this can result in **data loss**. See
	// [Detaching an Amazon EBS Volume from an Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html) for more information.
	ForceDetach pulumi.BoolPtrOutput `pulumi:"forceDetach"`
	// ID of the Instance to attach to
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Set this to true if you do not wish
	// to detach the volume from the instance to which it is attached at destroy
	// time, and instead just remove the attachment from this provider state. This is
	// useful when destroying an instance which has volumes created by some other
	// means attached.
	SkipDestroy pulumi.BoolPtrOutput `pulumi:"skipDestroy"`
	// ID of the Volume to be attached
	VolumeId pulumi.StringOutput `pulumi:"volumeId"`
}

Provides an AWS EBS Volume Attachment as a top level resource, to attach and detach volumes from AWS Instances.

> **NOTE on EBS block devices:** If you use `ebsBlockDevice` on an `ec2.Instance`, this provider will assume management over the full set of non-root EBS block devices for the instance, and treats additional block devices as drift. For this reason, `ebsBlockDevice` cannot be mixed with external `ebs.Volume` + `awsEbsVolumeAttachment` resources for a given instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		web, err := ec2.NewInstance(ctx, "web", &ec2.InstanceArgs{
			Ami:              pulumi.String("ami-21f78e11"),
			AvailabilityZone: pulumi.String("us-west-2a"),
			InstanceType:     pulumi.String("t2.micro"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		example, err := ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Size:             pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVolumeAttachment(ctx, "ebsAtt", &ec2.VolumeAttachmentArgs{
			DeviceName: pulumi.String("/dev/sdh"),
			VolumeId:   example.ID(),
			InstanceId: web.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EBS Volume Attachments can be imported using `DEVICE_NAME:VOLUME_ID:INSTANCE_ID`, e.g.

```sh

$ pulumi import aws:ec2/volumeAttachment:VolumeAttachment example /dev/sdh:vol-049df61146c4d7901:i-12345678

```

[1]https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html#available-ec2-device-names [2]https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/device_naming.html#available-ec2-device-names [3]https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html

func GetVolumeAttachment

func GetVolumeAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VolumeAttachmentState, opts ...pulumi.ResourceOption) (*VolumeAttachment, error)

GetVolumeAttachment gets an existing VolumeAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVolumeAttachment

func NewVolumeAttachment(ctx *pulumi.Context,
	name string, args *VolumeAttachmentArgs, opts ...pulumi.ResourceOption) (*VolumeAttachment, error)

NewVolumeAttachment registers a new resource with the given unique name, arguments, and options.

func (*VolumeAttachment) ElementType

func (*VolumeAttachment) ElementType() reflect.Type

func (*VolumeAttachment) ToVolumeAttachmentOutput

func (i *VolumeAttachment) ToVolumeAttachmentOutput() VolumeAttachmentOutput

func (*VolumeAttachment) ToVolumeAttachmentOutputWithContext

func (i *VolumeAttachment) ToVolumeAttachmentOutputWithContext(ctx context.Context) VolumeAttachmentOutput

func (*VolumeAttachment) ToVolumeAttachmentPtrOutput

func (i *VolumeAttachment) ToVolumeAttachmentPtrOutput() VolumeAttachmentPtrOutput

func (*VolumeAttachment) ToVolumeAttachmentPtrOutputWithContext

func (i *VolumeAttachment) ToVolumeAttachmentPtrOutputWithContext(ctx context.Context) VolumeAttachmentPtrOutput

type VolumeAttachmentArgs

type VolumeAttachmentArgs struct {
	// The device name to expose to the instance (for
	// example, `/dev/sdh` or `xvdh`).  See [Device Naming on Linux Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html#available-ec2-device-names) and [Device Naming on Windows Instances](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/device_naming.html#available-ec2-device-names) for more information.
	DeviceName pulumi.StringInput
	// Set to `true` if you want to force the
	// volume to detach. Useful if previous attempts failed, but use this option only
	// as a last resort, as this can result in **data loss**. See
	// [Detaching an Amazon EBS Volume from an Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html) for more information.
	ForceDetach pulumi.BoolPtrInput
	// ID of the Instance to attach to
	InstanceId pulumi.StringInput
	// Set this to true if you do not wish
	// to detach the volume from the instance to which it is attached at destroy
	// time, and instead just remove the attachment from this provider state. This is
	// useful when destroying an instance which has volumes created by some other
	// means attached.
	SkipDestroy pulumi.BoolPtrInput
	// ID of the Volume to be attached
	VolumeId pulumi.StringInput
}

The set of arguments for constructing a VolumeAttachment resource.

func (VolumeAttachmentArgs) ElementType

func (VolumeAttachmentArgs) ElementType() reflect.Type

type VolumeAttachmentArray

type VolumeAttachmentArray []VolumeAttachmentInput

func (VolumeAttachmentArray) ElementType

func (VolumeAttachmentArray) ElementType() reflect.Type

func (VolumeAttachmentArray) ToVolumeAttachmentArrayOutput

func (i VolumeAttachmentArray) ToVolumeAttachmentArrayOutput() VolumeAttachmentArrayOutput

func (VolumeAttachmentArray) ToVolumeAttachmentArrayOutputWithContext

func (i VolumeAttachmentArray) ToVolumeAttachmentArrayOutputWithContext(ctx context.Context) VolumeAttachmentArrayOutput

type VolumeAttachmentArrayInput

type VolumeAttachmentArrayInput interface {
	pulumi.Input

	ToVolumeAttachmentArrayOutput() VolumeAttachmentArrayOutput
	ToVolumeAttachmentArrayOutputWithContext(context.Context) VolumeAttachmentArrayOutput
}

VolumeAttachmentArrayInput is an input type that accepts VolumeAttachmentArray and VolumeAttachmentArrayOutput values. You can construct a concrete instance of `VolumeAttachmentArrayInput` via:

VolumeAttachmentArray{ VolumeAttachmentArgs{...} }

type VolumeAttachmentArrayOutput

type VolumeAttachmentArrayOutput struct{ *pulumi.OutputState }

func (VolumeAttachmentArrayOutput) ElementType

func (VolumeAttachmentArrayOutput) Index

func (VolumeAttachmentArrayOutput) ToVolumeAttachmentArrayOutput

func (o VolumeAttachmentArrayOutput) ToVolumeAttachmentArrayOutput() VolumeAttachmentArrayOutput

func (VolumeAttachmentArrayOutput) ToVolumeAttachmentArrayOutputWithContext

func (o VolumeAttachmentArrayOutput) ToVolumeAttachmentArrayOutputWithContext(ctx context.Context) VolumeAttachmentArrayOutput

type VolumeAttachmentInput

type VolumeAttachmentInput interface {
	pulumi.Input

	ToVolumeAttachmentOutput() VolumeAttachmentOutput
	ToVolumeAttachmentOutputWithContext(ctx context.Context) VolumeAttachmentOutput
}

type VolumeAttachmentMap

type VolumeAttachmentMap map[string]VolumeAttachmentInput

func (VolumeAttachmentMap) ElementType

func (VolumeAttachmentMap) ElementType() reflect.Type

func (VolumeAttachmentMap) ToVolumeAttachmentMapOutput

func (i VolumeAttachmentMap) ToVolumeAttachmentMapOutput() VolumeAttachmentMapOutput

func (VolumeAttachmentMap) ToVolumeAttachmentMapOutputWithContext

func (i VolumeAttachmentMap) ToVolumeAttachmentMapOutputWithContext(ctx context.Context) VolumeAttachmentMapOutput

type VolumeAttachmentMapInput

type VolumeAttachmentMapInput interface {
	pulumi.Input

	ToVolumeAttachmentMapOutput() VolumeAttachmentMapOutput
	ToVolumeAttachmentMapOutputWithContext(context.Context) VolumeAttachmentMapOutput
}

VolumeAttachmentMapInput is an input type that accepts VolumeAttachmentMap and VolumeAttachmentMapOutput values. You can construct a concrete instance of `VolumeAttachmentMapInput` via:

VolumeAttachmentMap{ "key": VolumeAttachmentArgs{...} }

type VolumeAttachmentMapOutput

type VolumeAttachmentMapOutput struct{ *pulumi.OutputState }

func (VolumeAttachmentMapOutput) ElementType

func (VolumeAttachmentMapOutput) ElementType() reflect.Type

func (VolumeAttachmentMapOutput) MapIndex

func (VolumeAttachmentMapOutput) ToVolumeAttachmentMapOutput

func (o VolumeAttachmentMapOutput) ToVolumeAttachmentMapOutput() VolumeAttachmentMapOutput

func (VolumeAttachmentMapOutput) ToVolumeAttachmentMapOutputWithContext

func (o VolumeAttachmentMapOutput) ToVolumeAttachmentMapOutputWithContext(ctx context.Context) VolumeAttachmentMapOutput

type VolumeAttachmentOutput

type VolumeAttachmentOutput struct{ *pulumi.OutputState }

func (VolumeAttachmentOutput) ElementType

func (VolumeAttachmentOutput) ElementType() reflect.Type

func (VolumeAttachmentOutput) ToVolumeAttachmentOutput

func (o VolumeAttachmentOutput) ToVolumeAttachmentOutput() VolumeAttachmentOutput

func (VolumeAttachmentOutput) ToVolumeAttachmentOutputWithContext

func (o VolumeAttachmentOutput) ToVolumeAttachmentOutputWithContext(ctx context.Context) VolumeAttachmentOutput

func (VolumeAttachmentOutput) ToVolumeAttachmentPtrOutput

func (o VolumeAttachmentOutput) ToVolumeAttachmentPtrOutput() VolumeAttachmentPtrOutput

func (VolumeAttachmentOutput) ToVolumeAttachmentPtrOutputWithContext

func (o VolumeAttachmentOutput) ToVolumeAttachmentPtrOutputWithContext(ctx context.Context) VolumeAttachmentPtrOutput

type VolumeAttachmentPtrInput

type VolumeAttachmentPtrInput interface {
	pulumi.Input

	ToVolumeAttachmentPtrOutput() VolumeAttachmentPtrOutput
	ToVolumeAttachmentPtrOutputWithContext(ctx context.Context) VolumeAttachmentPtrOutput
}

type VolumeAttachmentPtrOutput

type VolumeAttachmentPtrOutput struct{ *pulumi.OutputState }

func (VolumeAttachmentPtrOutput) Elem added in v4.15.0

func (VolumeAttachmentPtrOutput) ElementType

func (VolumeAttachmentPtrOutput) ElementType() reflect.Type

func (VolumeAttachmentPtrOutput) ToVolumeAttachmentPtrOutput

func (o VolumeAttachmentPtrOutput) ToVolumeAttachmentPtrOutput() VolumeAttachmentPtrOutput

func (VolumeAttachmentPtrOutput) ToVolumeAttachmentPtrOutputWithContext

func (o VolumeAttachmentPtrOutput) ToVolumeAttachmentPtrOutputWithContext(ctx context.Context) VolumeAttachmentPtrOutput

type VolumeAttachmentState

type VolumeAttachmentState struct {
	// The device name to expose to the instance (for
	// example, `/dev/sdh` or `xvdh`).  See [Device Naming on Linux Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html#available-ec2-device-names) and [Device Naming on Windows Instances](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/device_naming.html#available-ec2-device-names) for more information.
	DeviceName pulumi.StringPtrInput
	// Set to `true` if you want to force the
	// volume to detach. Useful if previous attempts failed, but use this option only
	// as a last resort, as this can result in **data loss**. See
	// [Detaching an Amazon EBS Volume from an Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html) for more information.
	ForceDetach pulumi.BoolPtrInput
	// ID of the Instance to attach to
	InstanceId pulumi.StringPtrInput
	// Set this to true if you do not wish
	// to detach the volume from the instance to which it is attached at destroy
	// time, and instead just remove the attachment from this provider state. This is
	// useful when destroying an instance which has volumes created by some other
	// means attached.
	SkipDestroy pulumi.BoolPtrInput
	// ID of the Volume to be attached
	VolumeId pulumi.StringPtrInput
}

func (VolumeAttachmentState) ElementType

func (VolumeAttachmentState) ElementType() reflect.Type

type Vpc

type Vpc struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of VPC
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Requests an Amazon-provided IPv6 CIDR
	// block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or
	// the size of the CIDR block. Default is `false`.
	AssignGeneratedIpv6CidrBlock pulumi.BoolPtrOutput `pulumi:"assignGeneratedIpv6CidrBlock"`
	// The CIDR block for the VPC.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The ID of the network ACL created by default on VPC creation
	DefaultNetworkAclId pulumi.StringOutput `pulumi:"defaultNetworkAclId"`
	// The ID of the route table created by default on VPC creation
	DefaultRouteTableId pulumi.StringOutput `pulumi:"defaultRouteTableId"`
	// The ID of the security group created by default on VPC creation
	DefaultSecurityGroupId pulumi.StringOutput `pulumi:"defaultSecurityGroupId"`
	DhcpOptionsId          pulumi.StringOutput `pulumi:"dhcpOptionsId"`
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink pulumi.BoolOutput `pulumi:"enableClassiclink"`
	// A boolean flag to enable/disable ClassicLink DNS Support for the VPC.
	// Only valid in regions and accounts that support EC2 Classic.
	EnableClassiclinkDnsSupport pulumi.BoolOutput `pulumi:"enableClassiclinkDnsSupport"`
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolOutput `pulumi:"enableDnsHostnames"`
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrOutput `pulumi:"enableDnsSupport"`
	// A tenancy option for instances launched into the VPC. Default is `default`, which
	// makes your instances shared on the host. Using either of the other options (`dedicated` or `host`) costs at least $2/hr.
	InstanceTenancy pulumi.StringPtrOutput `pulumi:"instanceTenancy"`
	// The association ID for the IPv6 CIDR block.
	Ipv6AssociationId pulumi.StringOutput `pulumi:"ipv6AssociationId"`
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringOutput `pulumi:"ipv6CidrBlock"`
	// The ID of the main route table associated with
	// this VPC. Note that you can change a VPC's main route table by using an
	// `ec2.MainRouteTableAssociation`.
	MainRouteTableId pulumi.StringOutput `pulumi:"mainRouteTableId"`
	// The ID of the AWS account that owns the VPC.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a VPC resource.

## Example Usage

Basic usage:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Basic usage with tags:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock:       pulumi.String("10.0.0.0/16"),
			InstanceTenancy: pulumi.String("default"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPCs can be imported using the `vpc id`, e.g.

```sh

$ pulumi import aws:ec2/vpc:Vpc test_vpc vpc-a01106c2

```

func GetVpc

func GetVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcState, opts ...pulumi.ResourceOption) (*Vpc, error)

GetVpc gets an existing Vpc resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpc

func NewVpc(ctx *pulumi.Context,
	name string, args *VpcArgs, opts ...pulumi.ResourceOption) (*Vpc, error)

NewVpc registers a new resource with the given unique name, arguments, and options.

func (*Vpc) ElementType

func (*Vpc) ElementType() reflect.Type

func (*Vpc) ToVpcOutput

func (i *Vpc) ToVpcOutput() VpcOutput

func (*Vpc) ToVpcOutputWithContext

func (i *Vpc) ToVpcOutputWithContext(ctx context.Context) VpcOutput

func (*Vpc) ToVpcPtrOutput

func (i *Vpc) ToVpcPtrOutput() VpcPtrOutput

func (*Vpc) ToVpcPtrOutputWithContext

func (i *Vpc) ToVpcPtrOutputWithContext(ctx context.Context) VpcPtrOutput

type VpcArgs

type VpcArgs struct {
	// Requests an Amazon-provided IPv6 CIDR
	// block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or
	// the size of the CIDR block. Default is `false`.
	AssignGeneratedIpv6CidrBlock pulumi.BoolPtrInput
	// The CIDR block for the VPC.
	CidrBlock pulumi.StringInput
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink pulumi.BoolPtrInput
	// A boolean flag to enable/disable ClassicLink DNS Support for the VPC.
	// Only valid in regions and accounts that support EC2 Classic.
	EnableClassiclinkDnsSupport pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrInput
	// A tenancy option for instances launched into the VPC. Default is `default`, which
	// makes your instances shared on the host. Using either of the other options (`dedicated` or `host`) costs at least $2/hr.
	InstanceTenancy pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a Vpc resource.

func (VpcArgs) ElementType

func (VpcArgs) ElementType() reflect.Type

type VpcArray

type VpcArray []VpcInput

func (VpcArray) ElementType

func (VpcArray) ElementType() reflect.Type

func (VpcArray) ToVpcArrayOutput

func (i VpcArray) ToVpcArrayOutput() VpcArrayOutput

func (VpcArray) ToVpcArrayOutputWithContext

func (i VpcArray) ToVpcArrayOutputWithContext(ctx context.Context) VpcArrayOutput

type VpcArrayInput

type VpcArrayInput interface {
	pulumi.Input

	ToVpcArrayOutput() VpcArrayOutput
	ToVpcArrayOutputWithContext(context.Context) VpcArrayOutput
}

VpcArrayInput is an input type that accepts VpcArray and VpcArrayOutput values. You can construct a concrete instance of `VpcArrayInput` via:

VpcArray{ VpcArgs{...} }

type VpcArrayOutput

type VpcArrayOutput struct{ *pulumi.OutputState }

func (VpcArrayOutput) ElementType

func (VpcArrayOutput) ElementType() reflect.Type

func (VpcArrayOutput) Index

func (VpcArrayOutput) ToVpcArrayOutput

func (o VpcArrayOutput) ToVpcArrayOutput() VpcArrayOutput

func (VpcArrayOutput) ToVpcArrayOutputWithContext

func (o VpcArrayOutput) ToVpcArrayOutputWithContext(ctx context.Context) VpcArrayOutput

type VpcDhcpOptions

type VpcDhcpOptions struct {
	pulumi.CustomResourceState

	// The ARN of the DHCP Options Set.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the `search` value in the `/etc/resolv.conf` file.
	DomainName pulumi.StringPtrOutput `pulumi:"domainName"`
	// List of name servers to configure in `/etc/resolv.conf`. If you want to use the default AWS nameservers you should set this to `AmazonProvidedDNS`.
	DomainNameServers pulumi.StringArrayOutput `pulumi:"domainNameServers"`
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayOutput `pulumi:"netbiosNameServers"`
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrOutput `pulumi:"netbiosNodeType"`
	// List of NTP servers to configure.
	NtpServers pulumi.StringArrayOutput `pulumi:"ntpServers"`
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a VPC DHCP Options resource.

## Example Usage

Basic usage:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcDhcpOptions(ctx, "dnsResolver", &ec2.VpcDhcpOptionsArgs{
			DomainNameServers: pulumi.StringArray{
				pulumi.String("8.8.8.8"),
				pulumi.String("8.8.4.4"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Full usage:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcDhcpOptions(ctx, "foo", &ec2.VpcDhcpOptionsArgs{
			DomainName: pulumi.String("service.consul"),
			DomainNameServers: pulumi.StringArray{
				pulumi.String("127.0.0.1"),
				pulumi.String("10.0.0.2"),
			},
			NetbiosNameServers: pulumi.StringArray{
				pulumi.String("127.0.0.1"),
			},
			NetbiosNodeType: pulumi.String("2"),
			NtpServers: pulumi.StringArray{
				pulumi.String("127.0.0.1"),
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("foo-name"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Remarks

* Notice that all arguments are optional but you have to specify at least one argument. * `domainNameServers`, `netbiosNameServers`, `ntpServers` are limited by AWS to maximum four servers only. * To actually use the DHCP Options Set you need to associate it to a VPC using `ec2.VpcDhcpOptionsAssociation`. * If you delete a DHCP Options Set, all VPCs using it will be associated to AWS's `default` DHCP Option Set. * In most cases unless you're configuring your own DNS you'll want to set `domainNameServers` to `AmazonProvidedDNS`.

## Import

VPC DHCP Options can be imported using the `dhcp options id`, e.g.

```sh

$ pulumi import aws:ec2/vpcDhcpOptions:VpcDhcpOptions my_options dopt-d9070ebb

```

func GetVpcDhcpOptions

func GetVpcDhcpOptions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcDhcpOptionsState, opts ...pulumi.ResourceOption) (*VpcDhcpOptions, error)

GetVpcDhcpOptions gets an existing VpcDhcpOptions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcDhcpOptions

func NewVpcDhcpOptions(ctx *pulumi.Context,
	name string, args *VpcDhcpOptionsArgs, opts ...pulumi.ResourceOption) (*VpcDhcpOptions, error)

NewVpcDhcpOptions registers a new resource with the given unique name, arguments, and options.

func (*VpcDhcpOptions) ElementType

func (*VpcDhcpOptions) ElementType() reflect.Type

func (*VpcDhcpOptions) ToVpcDhcpOptionsOutput

func (i *VpcDhcpOptions) ToVpcDhcpOptionsOutput() VpcDhcpOptionsOutput

func (*VpcDhcpOptions) ToVpcDhcpOptionsOutputWithContext

func (i *VpcDhcpOptions) ToVpcDhcpOptionsOutputWithContext(ctx context.Context) VpcDhcpOptionsOutput

func (*VpcDhcpOptions) ToVpcDhcpOptionsPtrOutput

func (i *VpcDhcpOptions) ToVpcDhcpOptionsPtrOutput() VpcDhcpOptionsPtrOutput

func (*VpcDhcpOptions) ToVpcDhcpOptionsPtrOutputWithContext

func (i *VpcDhcpOptions) ToVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsPtrOutput

type VpcDhcpOptionsArgs

type VpcDhcpOptionsArgs struct {
	// the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the `search` value in the `/etc/resolv.conf` file.
	DomainName pulumi.StringPtrInput
	// List of name servers to configure in `/etc/resolv.conf`. If you want to use the default AWS nameservers you should set this to `AmazonProvidedDNS`.
	DomainNameServers pulumi.StringArrayInput
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayInput
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrInput
	// List of NTP servers to configure.
	NtpServers pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a VpcDhcpOptions resource.

func (VpcDhcpOptionsArgs) ElementType

func (VpcDhcpOptionsArgs) ElementType() reflect.Type

type VpcDhcpOptionsArray

type VpcDhcpOptionsArray []VpcDhcpOptionsInput

func (VpcDhcpOptionsArray) ElementType

func (VpcDhcpOptionsArray) ElementType() reflect.Type

func (VpcDhcpOptionsArray) ToVpcDhcpOptionsArrayOutput

func (i VpcDhcpOptionsArray) ToVpcDhcpOptionsArrayOutput() VpcDhcpOptionsArrayOutput

func (VpcDhcpOptionsArray) ToVpcDhcpOptionsArrayOutputWithContext

func (i VpcDhcpOptionsArray) ToVpcDhcpOptionsArrayOutputWithContext(ctx context.Context) VpcDhcpOptionsArrayOutput

type VpcDhcpOptionsArrayInput

type VpcDhcpOptionsArrayInput interface {
	pulumi.Input

	ToVpcDhcpOptionsArrayOutput() VpcDhcpOptionsArrayOutput
	ToVpcDhcpOptionsArrayOutputWithContext(context.Context) VpcDhcpOptionsArrayOutput
}

VpcDhcpOptionsArrayInput is an input type that accepts VpcDhcpOptionsArray and VpcDhcpOptionsArrayOutput values. You can construct a concrete instance of `VpcDhcpOptionsArrayInput` via:

VpcDhcpOptionsArray{ VpcDhcpOptionsArgs{...} }

type VpcDhcpOptionsArrayOutput

type VpcDhcpOptionsArrayOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsArrayOutput) ElementType

func (VpcDhcpOptionsArrayOutput) ElementType() reflect.Type

func (VpcDhcpOptionsArrayOutput) Index

func (VpcDhcpOptionsArrayOutput) ToVpcDhcpOptionsArrayOutput

func (o VpcDhcpOptionsArrayOutput) ToVpcDhcpOptionsArrayOutput() VpcDhcpOptionsArrayOutput

func (VpcDhcpOptionsArrayOutput) ToVpcDhcpOptionsArrayOutputWithContext

func (o VpcDhcpOptionsArrayOutput) ToVpcDhcpOptionsArrayOutputWithContext(ctx context.Context) VpcDhcpOptionsArrayOutput

type VpcDhcpOptionsAssociation

type VpcDhcpOptionsAssociation struct {
	pulumi.CustomResourceState

	// The ID of the DHCP Options Set to associate to the VPC.
	DhcpOptionsId pulumi.StringOutput `pulumi:"dhcpOptionsId"`
	// The ID of the VPC to which we would like to associate a DHCP Options Set.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a VPC DHCP Options Association resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcDhcpOptionsAssociation(ctx, "dnsResolver", &ec2.VpcDhcpOptionsAssociationArgs{
			VpcId:         pulumi.Any(aws_vpc.Foo.Id),
			DhcpOptionsId: pulumi.Any(aws_vpc_dhcp_options.Foo.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Remarks

* You can only associate one DHCP Options Set to a given VPC ID. * Removing the DHCP Options Association automatically sets AWS's `default` DHCP Options Set to the VPC.

## Import

DHCP associations can be imported by providing the VPC ID associated with the options

```sh

$ pulumi import aws:ec2/vpcDhcpOptionsAssociation:VpcDhcpOptionsAssociation imported vpc-0f001273ec18911b1

```

func GetVpcDhcpOptionsAssociation

func GetVpcDhcpOptionsAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcDhcpOptionsAssociationState, opts ...pulumi.ResourceOption) (*VpcDhcpOptionsAssociation, error)

GetVpcDhcpOptionsAssociation gets an existing VpcDhcpOptionsAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcDhcpOptionsAssociation

func NewVpcDhcpOptionsAssociation(ctx *pulumi.Context,
	name string, args *VpcDhcpOptionsAssociationArgs, opts ...pulumi.ResourceOption) (*VpcDhcpOptionsAssociation, error)

NewVpcDhcpOptionsAssociation registers a new resource with the given unique name, arguments, and options.

func (*VpcDhcpOptionsAssociation) ElementType

func (*VpcDhcpOptionsAssociation) ElementType() reflect.Type

func (*VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationOutput

func (i *VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationOutput() VpcDhcpOptionsAssociationOutput

func (*VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationOutputWithContext

func (i *VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationOutput

func (*VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationPtrOutput

func (i *VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationPtrOutput() VpcDhcpOptionsAssociationPtrOutput

func (*VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationPtrOutputWithContext

func (i *VpcDhcpOptionsAssociation) ToVpcDhcpOptionsAssociationPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationPtrOutput

type VpcDhcpOptionsAssociationArgs

type VpcDhcpOptionsAssociationArgs struct {
	// The ID of the DHCP Options Set to associate to the VPC.
	DhcpOptionsId pulumi.StringInput
	// The ID of the VPC to which we would like to associate a DHCP Options Set.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcDhcpOptionsAssociation resource.

func (VpcDhcpOptionsAssociationArgs) ElementType

type VpcDhcpOptionsAssociationArray

type VpcDhcpOptionsAssociationArray []VpcDhcpOptionsAssociationInput

func (VpcDhcpOptionsAssociationArray) ElementType

func (VpcDhcpOptionsAssociationArray) ToVpcDhcpOptionsAssociationArrayOutput

func (i VpcDhcpOptionsAssociationArray) ToVpcDhcpOptionsAssociationArrayOutput() VpcDhcpOptionsAssociationArrayOutput

func (VpcDhcpOptionsAssociationArray) ToVpcDhcpOptionsAssociationArrayOutputWithContext

func (i VpcDhcpOptionsAssociationArray) ToVpcDhcpOptionsAssociationArrayOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationArrayOutput

type VpcDhcpOptionsAssociationArrayInput

type VpcDhcpOptionsAssociationArrayInput interface {
	pulumi.Input

	ToVpcDhcpOptionsAssociationArrayOutput() VpcDhcpOptionsAssociationArrayOutput
	ToVpcDhcpOptionsAssociationArrayOutputWithContext(context.Context) VpcDhcpOptionsAssociationArrayOutput
}

VpcDhcpOptionsAssociationArrayInput is an input type that accepts VpcDhcpOptionsAssociationArray and VpcDhcpOptionsAssociationArrayOutput values. You can construct a concrete instance of `VpcDhcpOptionsAssociationArrayInput` via:

VpcDhcpOptionsAssociationArray{ VpcDhcpOptionsAssociationArgs{...} }

type VpcDhcpOptionsAssociationArrayOutput

type VpcDhcpOptionsAssociationArrayOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsAssociationArrayOutput) ElementType

func (VpcDhcpOptionsAssociationArrayOutput) Index

func (VpcDhcpOptionsAssociationArrayOutput) ToVpcDhcpOptionsAssociationArrayOutput

func (o VpcDhcpOptionsAssociationArrayOutput) ToVpcDhcpOptionsAssociationArrayOutput() VpcDhcpOptionsAssociationArrayOutput

func (VpcDhcpOptionsAssociationArrayOutput) ToVpcDhcpOptionsAssociationArrayOutputWithContext

func (o VpcDhcpOptionsAssociationArrayOutput) ToVpcDhcpOptionsAssociationArrayOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationArrayOutput

type VpcDhcpOptionsAssociationInput

type VpcDhcpOptionsAssociationInput interface {
	pulumi.Input

	ToVpcDhcpOptionsAssociationOutput() VpcDhcpOptionsAssociationOutput
	ToVpcDhcpOptionsAssociationOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationOutput
}

type VpcDhcpOptionsAssociationMap

type VpcDhcpOptionsAssociationMap map[string]VpcDhcpOptionsAssociationInput

func (VpcDhcpOptionsAssociationMap) ElementType

func (VpcDhcpOptionsAssociationMap) ToVpcDhcpOptionsAssociationMapOutput

func (i VpcDhcpOptionsAssociationMap) ToVpcDhcpOptionsAssociationMapOutput() VpcDhcpOptionsAssociationMapOutput

func (VpcDhcpOptionsAssociationMap) ToVpcDhcpOptionsAssociationMapOutputWithContext

func (i VpcDhcpOptionsAssociationMap) ToVpcDhcpOptionsAssociationMapOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationMapOutput

type VpcDhcpOptionsAssociationMapInput

type VpcDhcpOptionsAssociationMapInput interface {
	pulumi.Input

	ToVpcDhcpOptionsAssociationMapOutput() VpcDhcpOptionsAssociationMapOutput
	ToVpcDhcpOptionsAssociationMapOutputWithContext(context.Context) VpcDhcpOptionsAssociationMapOutput
}

VpcDhcpOptionsAssociationMapInput is an input type that accepts VpcDhcpOptionsAssociationMap and VpcDhcpOptionsAssociationMapOutput values. You can construct a concrete instance of `VpcDhcpOptionsAssociationMapInput` via:

VpcDhcpOptionsAssociationMap{ "key": VpcDhcpOptionsAssociationArgs{...} }

type VpcDhcpOptionsAssociationMapOutput

type VpcDhcpOptionsAssociationMapOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsAssociationMapOutput) ElementType

func (VpcDhcpOptionsAssociationMapOutput) MapIndex

func (VpcDhcpOptionsAssociationMapOutput) ToVpcDhcpOptionsAssociationMapOutput

func (o VpcDhcpOptionsAssociationMapOutput) ToVpcDhcpOptionsAssociationMapOutput() VpcDhcpOptionsAssociationMapOutput

func (VpcDhcpOptionsAssociationMapOutput) ToVpcDhcpOptionsAssociationMapOutputWithContext

func (o VpcDhcpOptionsAssociationMapOutput) ToVpcDhcpOptionsAssociationMapOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationMapOutput

type VpcDhcpOptionsAssociationOutput

type VpcDhcpOptionsAssociationOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsAssociationOutput) ElementType

func (VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationOutput

func (o VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationOutput() VpcDhcpOptionsAssociationOutput

func (VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationOutputWithContext

func (o VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationOutput

func (VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationPtrOutput

func (o VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationPtrOutput() VpcDhcpOptionsAssociationPtrOutput

func (VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationPtrOutputWithContext

func (o VpcDhcpOptionsAssociationOutput) ToVpcDhcpOptionsAssociationPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationPtrOutput

type VpcDhcpOptionsAssociationPtrInput

type VpcDhcpOptionsAssociationPtrInput interface {
	pulumi.Input

	ToVpcDhcpOptionsAssociationPtrOutput() VpcDhcpOptionsAssociationPtrOutput
	ToVpcDhcpOptionsAssociationPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationPtrOutput
}

type VpcDhcpOptionsAssociationPtrOutput

type VpcDhcpOptionsAssociationPtrOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsAssociationPtrOutput) Elem added in v4.15.0

func (VpcDhcpOptionsAssociationPtrOutput) ElementType

func (VpcDhcpOptionsAssociationPtrOutput) ToVpcDhcpOptionsAssociationPtrOutput

func (o VpcDhcpOptionsAssociationPtrOutput) ToVpcDhcpOptionsAssociationPtrOutput() VpcDhcpOptionsAssociationPtrOutput

func (VpcDhcpOptionsAssociationPtrOutput) ToVpcDhcpOptionsAssociationPtrOutputWithContext

func (o VpcDhcpOptionsAssociationPtrOutput) ToVpcDhcpOptionsAssociationPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsAssociationPtrOutput

type VpcDhcpOptionsAssociationState

type VpcDhcpOptionsAssociationState struct {
	// The ID of the DHCP Options Set to associate to the VPC.
	DhcpOptionsId pulumi.StringPtrInput
	// The ID of the VPC to which we would like to associate a DHCP Options Set.
	VpcId pulumi.StringPtrInput
}

func (VpcDhcpOptionsAssociationState) ElementType

type VpcDhcpOptionsInput

type VpcDhcpOptionsInput interface {
	pulumi.Input

	ToVpcDhcpOptionsOutput() VpcDhcpOptionsOutput
	ToVpcDhcpOptionsOutputWithContext(ctx context.Context) VpcDhcpOptionsOutput
}

type VpcDhcpOptionsMap

type VpcDhcpOptionsMap map[string]VpcDhcpOptionsInput

func (VpcDhcpOptionsMap) ElementType

func (VpcDhcpOptionsMap) ElementType() reflect.Type

func (VpcDhcpOptionsMap) ToVpcDhcpOptionsMapOutput

func (i VpcDhcpOptionsMap) ToVpcDhcpOptionsMapOutput() VpcDhcpOptionsMapOutput

func (VpcDhcpOptionsMap) ToVpcDhcpOptionsMapOutputWithContext

func (i VpcDhcpOptionsMap) ToVpcDhcpOptionsMapOutputWithContext(ctx context.Context) VpcDhcpOptionsMapOutput

type VpcDhcpOptionsMapInput

type VpcDhcpOptionsMapInput interface {
	pulumi.Input

	ToVpcDhcpOptionsMapOutput() VpcDhcpOptionsMapOutput
	ToVpcDhcpOptionsMapOutputWithContext(context.Context) VpcDhcpOptionsMapOutput
}

VpcDhcpOptionsMapInput is an input type that accepts VpcDhcpOptionsMap and VpcDhcpOptionsMapOutput values. You can construct a concrete instance of `VpcDhcpOptionsMapInput` via:

VpcDhcpOptionsMap{ "key": VpcDhcpOptionsArgs{...} }

type VpcDhcpOptionsMapOutput

type VpcDhcpOptionsMapOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsMapOutput) ElementType

func (VpcDhcpOptionsMapOutput) ElementType() reflect.Type

func (VpcDhcpOptionsMapOutput) MapIndex

func (VpcDhcpOptionsMapOutput) ToVpcDhcpOptionsMapOutput

func (o VpcDhcpOptionsMapOutput) ToVpcDhcpOptionsMapOutput() VpcDhcpOptionsMapOutput

func (VpcDhcpOptionsMapOutput) ToVpcDhcpOptionsMapOutputWithContext

func (o VpcDhcpOptionsMapOutput) ToVpcDhcpOptionsMapOutputWithContext(ctx context.Context) VpcDhcpOptionsMapOutput

type VpcDhcpOptionsOutput

type VpcDhcpOptionsOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsOutput) ElementType

func (VpcDhcpOptionsOutput) ElementType() reflect.Type

func (VpcDhcpOptionsOutput) ToVpcDhcpOptionsOutput

func (o VpcDhcpOptionsOutput) ToVpcDhcpOptionsOutput() VpcDhcpOptionsOutput

func (VpcDhcpOptionsOutput) ToVpcDhcpOptionsOutputWithContext

func (o VpcDhcpOptionsOutput) ToVpcDhcpOptionsOutputWithContext(ctx context.Context) VpcDhcpOptionsOutput

func (VpcDhcpOptionsOutput) ToVpcDhcpOptionsPtrOutput

func (o VpcDhcpOptionsOutput) ToVpcDhcpOptionsPtrOutput() VpcDhcpOptionsPtrOutput

func (VpcDhcpOptionsOutput) ToVpcDhcpOptionsPtrOutputWithContext

func (o VpcDhcpOptionsOutput) ToVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsPtrOutput

type VpcDhcpOptionsPtrInput

type VpcDhcpOptionsPtrInput interface {
	pulumi.Input

	ToVpcDhcpOptionsPtrOutput() VpcDhcpOptionsPtrOutput
	ToVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsPtrOutput
}

type VpcDhcpOptionsPtrOutput

type VpcDhcpOptionsPtrOutput struct{ *pulumi.OutputState }

func (VpcDhcpOptionsPtrOutput) Elem added in v4.15.0

func (VpcDhcpOptionsPtrOutput) ElementType

func (VpcDhcpOptionsPtrOutput) ElementType() reflect.Type

func (VpcDhcpOptionsPtrOutput) ToVpcDhcpOptionsPtrOutput

func (o VpcDhcpOptionsPtrOutput) ToVpcDhcpOptionsPtrOutput() VpcDhcpOptionsPtrOutput

func (VpcDhcpOptionsPtrOutput) ToVpcDhcpOptionsPtrOutputWithContext

func (o VpcDhcpOptionsPtrOutput) ToVpcDhcpOptionsPtrOutputWithContext(ctx context.Context) VpcDhcpOptionsPtrOutput

type VpcDhcpOptionsState

type VpcDhcpOptionsState struct {
	// The ARN of the DHCP Options Set.
	Arn pulumi.StringPtrInput
	// the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the `search` value in the `/etc/resolv.conf` file.
	DomainName pulumi.StringPtrInput
	// List of name servers to configure in `/etc/resolv.conf`. If you want to use the default AWS nameservers you should set this to `AmazonProvidedDNS`.
	DomainNameServers pulumi.StringArrayInput
	// List of NETBIOS name servers.
	NetbiosNameServers pulumi.StringArrayInput
	// The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt).
	NetbiosNodeType pulumi.StringPtrInput
	// List of NTP servers to configure.
	NtpServers pulumi.StringArrayInput
	// The ID of the AWS account that owns the DHCP options set.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (VpcDhcpOptionsState) ElementType

func (VpcDhcpOptionsState) ElementType() reflect.Type

type VpcEndpoint

type VpcEndpoint struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the VPC endpoint.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrOutput `pulumi:"autoAccept"`
	// The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type `Gateway`.
	CidrBlocks pulumi.StringArrayOutput `pulumi:"cidrBlocks"`
	// The DNS entries for the VPC Endpoint. Applicable for endpoints of type `Interface`. DNS blocks are documented below.
	DnsEntries VpcEndpointDnsEntryArrayOutput `pulumi:"dnsEntries"`
	// One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type `Interface`.
	NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"`
	// The ID of the AWS account that owns the VPC endpoint.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All `Gateway` and some `Interface` endpoints support policies - see the [relevant AWS documentation](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) for more details.
	Policy pulumi.StringOutput `pulumi:"policy"`
	// The prefix list ID of the exposed AWS service. Applicable for endpoints of type `Gateway`.
	PrefixListId pulumi.StringOutput `pulumi:"prefixListId"`
	// Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type `Interface`.
	// Defaults to `false`.
	PrivateDnsEnabled pulumi.BoolPtrOutput `pulumi:"privateDnsEnabled"`
	// Whether or not the VPC Endpoint is being managed by its service - `true` or `false`.
	RequesterManaged pulumi.BoolOutput `pulumi:"requesterManaged"`
	// One or more route table IDs. Applicable for endpoints of type `Gateway`.
	RouteTableIds pulumi.StringArrayOutput `pulumi:"routeTableIds"`
	// The ID of one or more security groups to associate with the network interface. Required for endpoints of type `Interface`.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// The service name. For AWS services the service name is usually in the form `com.amazonaws.<region>.<service>` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.<region>.notebook`).
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// The state of the VPC endpoint.
	State pulumi.StringOutput `pulumi:"state"`
	// The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type `GatewayLoadBalancer` and `Interface`.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC endpoint type, `Gateway`, `GatewayLoadBalancer`, or `Interface`. Defaults to `Gateway`.
	VpcEndpointType pulumi.StringPtrOutput `pulumi:"vpcEndpointType"`
	// The ID of the VPC in which the endpoint will be used.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a VPC Endpoint resource.

> **NOTE on VPC Endpoints and VPC Endpoint Associations:** This provider provides both standalone VPC Endpoint Associations for Route Tables - (an association between a VPC endpoint and a single `routeTableId`) and Subnets - (an association between a VPC endpoint and a single `subnetId`) and a VPC Endpoint resource with `routeTableIds` and `subnetIds` attributes. Do not use the same resource ID in both a VPC Endpoint resource and a VPC Endpoint Association resource. Doing so will cause a conflict of associations and will overwrite the association.

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpoint(ctx, "s3", &ec2.VpcEndpointArgs{
			VpcId:       pulumi.Any(aws_vpc.Main.Id),
			ServiceName: pulumi.String("com.amazonaws.us-west-2.s3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Basic w/ Tags

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpoint(ctx, "s3", &ec2.VpcEndpointArgs{
			VpcId:       pulumi.Any(aws_vpc.Main.Id),
			ServiceName: pulumi.String("com.amazonaws.us-west-2.s3"),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Interface Endpoint Type

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpoint(ctx, "ec2", &ec2.VpcEndpointArgs{
			VpcId:           pulumi.Any(aws_vpc.Main.Id),
			ServiceName:     pulumi.String("com.amazonaws.us-west-2.ec2"),
			VpcEndpointType: pulumi.String("Interface"),
			SecurityGroupIds: pulumi.StringArray{
				pulumi.Any(aws_security_group.Sg1.Id),
			},
			PrivateDnsEnabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Gateway Load Balancer Endpoint Type

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleVpcEndpointService, err := ec2.NewVpcEndpointService(ctx, "exampleVpcEndpointService", &ec2.VpcEndpointServiceArgs{
			AcceptanceRequired: pulumi.Bool(false),
			AllowedPrincipals: pulumi.StringArray{
				pulumi.String(current.Arn),
			},
			GatewayLoadBalancerArns: pulumi.StringArray{
				pulumi.Any(aws_lb.Example.Arn),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcEndpoint(ctx, "exampleVpcEndpoint", &ec2.VpcEndpointArgs{
			ServiceName: exampleVpcEndpointService.ServiceName,
			SubnetIds: pulumi.StringArray{
				pulumi.Any(aws_subnet.Example.Id),
			},
			VpcEndpointType: exampleVpcEndpointService.ServiceType,
			VpcId:           pulumi.Any(aws_vpc.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Endpoints can be imported using the `vpc endpoint id`, e.g.

```sh

$ pulumi import aws:ec2/vpcEndpoint:VpcEndpoint endpoint1 vpce-3ecf2a57

```

func GetVpcEndpoint

func GetVpcEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointState, opts ...pulumi.ResourceOption) (*VpcEndpoint, error)

GetVpcEndpoint gets an existing VpcEndpoint resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpoint

func NewVpcEndpoint(ctx *pulumi.Context,
	name string, args *VpcEndpointArgs, opts ...pulumi.ResourceOption) (*VpcEndpoint, error)

NewVpcEndpoint registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpoint) ElementType

func (*VpcEndpoint) ElementType() reflect.Type

func (*VpcEndpoint) ToVpcEndpointOutput

func (i *VpcEndpoint) ToVpcEndpointOutput() VpcEndpointOutput

func (*VpcEndpoint) ToVpcEndpointOutputWithContext

func (i *VpcEndpoint) ToVpcEndpointOutputWithContext(ctx context.Context) VpcEndpointOutput

func (*VpcEndpoint) ToVpcEndpointPtrOutput

func (i *VpcEndpoint) ToVpcEndpointPtrOutput() VpcEndpointPtrOutput

func (*VpcEndpoint) ToVpcEndpointPtrOutputWithContext

func (i *VpcEndpoint) ToVpcEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointPtrOutput

type VpcEndpointArgs

type VpcEndpointArgs struct {
	// Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrInput
	// A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All `Gateway` and some `Interface` endpoints support policies - see the [relevant AWS documentation](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) for more details.
	Policy pulumi.StringPtrInput
	// Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type `Interface`.
	// Defaults to `false`.
	PrivateDnsEnabled pulumi.BoolPtrInput
	// One or more route table IDs. Applicable for endpoints of type `Gateway`.
	RouteTableIds pulumi.StringArrayInput
	// The ID of one or more security groups to associate with the network interface. Required for endpoints of type `Interface`.
	SecurityGroupIds pulumi.StringArrayInput
	// The service name. For AWS services the service name is usually in the form `com.amazonaws.<region>.<service>` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.<region>.notebook`).
	ServiceName pulumi.StringInput
	// The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type `GatewayLoadBalancer` and `Interface`.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC endpoint type, `Gateway`, `GatewayLoadBalancer`, or `Interface`. Defaults to `Gateway`.
	VpcEndpointType pulumi.StringPtrInput
	// The ID of the VPC in which the endpoint will be used.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcEndpoint resource.

func (VpcEndpointArgs) ElementType

func (VpcEndpointArgs) ElementType() reflect.Type

type VpcEndpointArray

type VpcEndpointArray []VpcEndpointInput

func (VpcEndpointArray) ElementType

func (VpcEndpointArray) ElementType() reflect.Type

func (VpcEndpointArray) ToVpcEndpointArrayOutput

func (i VpcEndpointArray) ToVpcEndpointArrayOutput() VpcEndpointArrayOutput

func (VpcEndpointArray) ToVpcEndpointArrayOutputWithContext

func (i VpcEndpointArray) ToVpcEndpointArrayOutputWithContext(ctx context.Context) VpcEndpointArrayOutput

type VpcEndpointArrayInput

type VpcEndpointArrayInput interface {
	pulumi.Input

	ToVpcEndpointArrayOutput() VpcEndpointArrayOutput
	ToVpcEndpointArrayOutputWithContext(context.Context) VpcEndpointArrayOutput
}

VpcEndpointArrayInput is an input type that accepts VpcEndpointArray and VpcEndpointArrayOutput values. You can construct a concrete instance of `VpcEndpointArrayInput` via:

VpcEndpointArray{ VpcEndpointArgs{...} }

type VpcEndpointArrayOutput

type VpcEndpointArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointArrayOutput) ElementType

func (VpcEndpointArrayOutput) ElementType() reflect.Type

func (VpcEndpointArrayOutput) Index

func (VpcEndpointArrayOutput) ToVpcEndpointArrayOutput

func (o VpcEndpointArrayOutput) ToVpcEndpointArrayOutput() VpcEndpointArrayOutput

func (VpcEndpointArrayOutput) ToVpcEndpointArrayOutputWithContext

func (o VpcEndpointArrayOutput) ToVpcEndpointArrayOutputWithContext(ctx context.Context) VpcEndpointArrayOutput

type VpcEndpointConnectionNotification

type VpcEndpointConnectionNotification struct {
	pulumi.CustomResourceState

	// One or more endpoint [events](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVpcEndpointConnectionNotification.html#API_CreateVpcEndpointConnectionNotification_RequestParameters) for which to receive notifications.
	ConnectionEvents pulumi.StringArrayOutput `pulumi:"connectionEvents"`
	// The ARN of the SNS topic for the notifications.
	ConnectionNotificationArn pulumi.StringOutput `pulumi:"connectionNotificationArn"`
	// The type of notification.
	NotificationType pulumi.StringOutput `pulumi:"notificationType"`
	// The state of the notification.
	State pulumi.StringOutput `pulumi:"state"`
	// The ID of the VPC Endpoint to receive notifications for.
	VpcEndpointId pulumi.StringPtrOutput `pulumi:"vpcEndpointId"`
	// The ID of the VPC Endpoint Service to receive notifications for.
	VpcEndpointServiceId pulumi.StringPtrOutput `pulumi:"vpcEndpointServiceId"`
}

Provides a VPC Endpoint connection notification resource. Connection notifications notify subscribers of VPC Endpoint events.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := sns.NewTopic(ctx, "topic", &sns.TopicArgs{
			Policy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "{\n", "    \"Version\":\"2012-10-17\",\n", "    \"Statement\":[{\n", "        \"Effect\": \"Allow\",\n", "        \"Principal\": {\n", "            \"Service\": \"vpce.amazonaws.com\"\n", "        },\n", "        \"Action\": \"SNS:Publish\",\n", "        \"Resource\": \"arn:aws:sns:*:*:vpce-notification-topic\"\n", "    }]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		fooVpcEndpointService, err := ec2.NewVpcEndpointService(ctx, "fooVpcEndpointService", &ec2.VpcEndpointServiceArgs{
			AcceptanceRequired: pulumi.Bool(false),
			NetworkLoadBalancerArns: pulumi.StringArray{
				pulumi.Any(aws_lb.Test.Arn),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcEndpointConnectionNotification(ctx, "fooVpcEndpointConnectionNotification", &ec2.VpcEndpointConnectionNotificationArgs{
			VpcEndpointServiceId:      fooVpcEndpointService.ID(),
			ConnectionNotificationArn: topic.Arn,
			ConnectionEvents: pulumi.StringArray{
				pulumi.String("Accept"),
				pulumi.String("Reject"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Endpoint connection notifications can be imported using the `VPC endpoint connection notification id`, e.g.

```sh

$ pulumi import aws:ec2/vpcEndpointConnectionNotification:VpcEndpointConnectionNotification foo vpce-nfn-09e6ed3b4efba2263

```

func GetVpcEndpointConnectionNotification

func GetVpcEndpointConnectionNotification(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointConnectionNotificationState, opts ...pulumi.ResourceOption) (*VpcEndpointConnectionNotification, error)

GetVpcEndpointConnectionNotification gets an existing VpcEndpointConnectionNotification resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpointConnectionNotification

func NewVpcEndpointConnectionNotification(ctx *pulumi.Context,
	name string, args *VpcEndpointConnectionNotificationArgs, opts ...pulumi.ResourceOption) (*VpcEndpointConnectionNotification, error)

NewVpcEndpointConnectionNotification registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpointConnectionNotification) ElementType

func (*VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationOutput

func (i *VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationOutput() VpcEndpointConnectionNotificationOutput

func (*VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationOutputWithContext

func (i *VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationOutput

func (*VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationPtrOutput

func (i *VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationPtrOutput() VpcEndpointConnectionNotificationPtrOutput

func (*VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationPtrOutputWithContext

func (i *VpcEndpointConnectionNotification) ToVpcEndpointConnectionNotificationPtrOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationPtrOutput

type VpcEndpointConnectionNotificationArgs

type VpcEndpointConnectionNotificationArgs struct {
	// One or more endpoint [events](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVpcEndpointConnectionNotification.html#API_CreateVpcEndpointConnectionNotification_RequestParameters) for which to receive notifications.
	ConnectionEvents pulumi.StringArrayInput
	// The ARN of the SNS topic for the notifications.
	ConnectionNotificationArn pulumi.StringInput
	// The ID of the VPC Endpoint to receive notifications for.
	VpcEndpointId pulumi.StringPtrInput
	// The ID of the VPC Endpoint Service to receive notifications for.
	VpcEndpointServiceId pulumi.StringPtrInput
}

The set of arguments for constructing a VpcEndpointConnectionNotification resource.

func (VpcEndpointConnectionNotificationArgs) ElementType

type VpcEndpointConnectionNotificationArray

type VpcEndpointConnectionNotificationArray []VpcEndpointConnectionNotificationInput

func (VpcEndpointConnectionNotificationArray) ElementType

func (VpcEndpointConnectionNotificationArray) ToVpcEndpointConnectionNotificationArrayOutput

func (i VpcEndpointConnectionNotificationArray) ToVpcEndpointConnectionNotificationArrayOutput() VpcEndpointConnectionNotificationArrayOutput

func (VpcEndpointConnectionNotificationArray) ToVpcEndpointConnectionNotificationArrayOutputWithContext

func (i VpcEndpointConnectionNotificationArray) ToVpcEndpointConnectionNotificationArrayOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationArrayOutput

type VpcEndpointConnectionNotificationArrayInput

type VpcEndpointConnectionNotificationArrayInput interface {
	pulumi.Input

	ToVpcEndpointConnectionNotificationArrayOutput() VpcEndpointConnectionNotificationArrayOutput
	ToVpcEndpointConnectionNotificationArrayOutputWithContext(context.Context) VpcEndpointConnectionNotificationArrayOutput
}

VpcEndpointConnectionNotificationArrayInput is an input type that accepts VpcEndpointConnectionNotificationArray and VpcEndpointConnectionNotificationArrayOutput values. You can construct a concrete instance of `VpcEndpointConnectionNotificationArrayInput` via:

VpcEndpointConnectionNotificationArray{ VpcEndpointConnectionNotificationArgs{...} }

type VpcEndpointConnectionNotificationArrayOutput

type VpcEndpointConnectionNotificationArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointConnectionNotificationArrayOutput) ElementType

func (VpcEndpointConnectionNotificationArrayOutput) Index

func (VpcEndpointConnectionNotificationArrayOutput) ToVpcEndpointConnectionNotificationArrayOutput

func (o VpcEndpointConnectionNotificationArrayOutput) ToVpcEndpointConnectionNotificationArrayOutput() VpcEndpointConnectionNotificationArrayOutput

func (VpcEndpointConnectionNotificationArrayOutput) ToVpcEndpointConnectionNotificationArrayOutputWithContext

func (o VpcEndpointConnectionNotificationArrayOutput) ToVpcEndpointConnectionNotificationArrayOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationArrayOutput

type VpcEndpointConnectionNotificationInput

type VpcEndpointConnectionNotificationInput interface {
	pulumi.Input

	ToVpcEndpointConnectionNotificationOutput() VpcEndpointConnectionNotificationOutput
	ToVpcEndpointConnectionNotificationOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationOutput
}

type VpcEndpointConnectionNotificationMap

type VpcEndpointConnectionNotificationMap map[string]VpcEndpointConnectionNotificationInput

func (VpcEndpointConnectionNotificationMap) ElementType

func (VpcEndpointConnectionNotificationMap) ToVpcEndpointConnectionNotificationMapOutput

func (i VpcEndpointConnectionNotificationMap) ToVpcEndpointConnectionNotificationMapOutput() VpcEndpointConnectionNotificationMapOutput

func (VpcEndpointConnectionNotificationMap) ToVpcEndpointConnectionNotificationMapOutputWithContext

func (i VpcEndpointConnectionNotificationMap) ToVpcEndpointConnectionNotificationMapOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationMapOutput

type VpcEndpointConnectionNotificationMapInput

type VpcEndpointConnectionNotificationMapInput interface {
	pulumi.Input

	ToVpcEndpointConnectionNotificationMapOutput() VpcEndpointConnectionNotificationMapOutput
	ToVpcEndpointConnectionNotificationMapOutputWithContext(context.Context) VpcEndpointConnectionNotificationMapOutput
}

VpcEndpointConnectionNotificationMapInput is an input type that accepts VpcEndpointConnectionNotificationMap and VpcEndpointConnectionNotificationMapOutput values. You can construct a concrete instance of `VpcEndpointConnectionNotificationMapInput` via:

VpcEndpointConnectionNotificationMap{ "key": VpcEndpointConnectionNotificationArgs{...} }

type VpcEndpointConnectionNotificationMapOutput

type VpcEndpointConnectionNotificationMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointConnectionNotificationMapOutput) ElementType

func (VpcEndpointConnectionNotificationMapOutput) MapIndex

func (VpcEndpointConnectionNotificationMapOutput) ToVpcEndpointConnectionNotificationMapOutput

func (o VpcEndpointConnectionNotificationMapOutput) ToVpcEndpointConnectionNotificationMapOutput() VpcEndpointConnectionNotificationMapOutput

func (VpcEndpointConnectionNotificationMapOutput) ToVpcEndpointConnectionNotificationMapOutputWithContext

func (o VpcEndpointConnectionNotificationMapOutput) ToVpcEndpointConnectionNotificationMapOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationMapOutput

type VpcEndpointConnectionNotificationOutput

type VpcEndpointConnectionNotificationOutput struct{ *pulumi.OutputState }

func (VpcEndpointConnectionNotificationOutput) ElementType

func (VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationOutput

func (o VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationOutput() VpcEndpointConnectionNotificationOutput

func (VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationOutputWithContext

func (o VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationOutput

func (VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationPtrOutput

func (o VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationPtrOutput() VpcEndpointConnectionNotificationPtrOutput

func (VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationPtrOutputWithContext

func (o VpcEndpointConnectionNotificationOutput) ToVpcEndpointConnectionNotificationPtrOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationPtrOutput

type VpcEndpointConnectionNotificationPtrInput

type VpcEndpointConnectionNotificationPtrInput interface {
	pulumi.Input

	ToVpcEndpointConnectionNotificationPtrOutput() VpcEndpointConnectionNotificationPtrOutput
	ToVpcEndpointConnectionNotificationPtrOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationPtrOutput
}

type VpcEndpointConnectionNotificationPtrOutput

type VpcEndpointConnectionNotificationPtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointConnectionNotificationPtrOutput) Elem added in v4.15.0

func (VpcEndpointConnectionNotificationPtrOutput) ElementType

func (VpcEndpointConnectionNotificationPtrOutput) ToVpcEndpointConnectionNotificationPtrOutput

func (o VpcEndpointConnectionNotificationPtrOutput) ToVpcEndpointConnectionNotificationPtrOutput() VpcEndpointConnectionNotificationPtrOutput

func (VpcEndpointConnectionNotificationPtrOutput) ToVpcEndpointConnectionNotificationPtrOutputWithContext

func (o VpcEndpointConnectionNotificationPtrOutput) ToVpcEndpointConnectionNotificationPtrOutputWithContext(ctx context.Context) VpcEndpointConnectionNotificationPtrOutput

type VpcEndpointConnectionNotificationState

type VpcEndpointConnectionNotificationState struct {
	// One or more endpoint [events](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVpcEndpointConnectionNotification.html#API_CreateVpcEndpointConnectionNotification_RequestParameters) for which to receive notifications.
	ConnectionEvents pulumi.StringArrayInput
	// The ARN of the SNS topic for the notifications.
	ConnectionNotificationArn pulumi.StringPtrInput
	// The type of notification.
	NotificationType pulumi.StringPtrInput
	// The state of the notification.
	State pulumi.StringPtrInput
	// The ID of the VPC Endpoint to receive notifications for.
	VpcEndpointId pulumi.StringPtrInput
	// The ID of the VPC Endpoint Service to receive notifications for.
	VpcEndpointServiceId pulumi.StringPtrInput
}

func (VpcEndpointConnectionNotificationState) ElementType

type VpcEndpointDnsEntry

type VpcEndpointDnsEntry struct {
	// The DNS name.
	DnsName *string `pulumi:"dnsName"`
	// The ID of the private hosted zone.
	HostedZoneId *string `pulumi:"hostedZoneId"`
}

type VpcEndpointDnsEntryArgs

type VpcEndpointDnsEntryArgs struct {
	// The DNS name.
	DnsName pulumi.StringPtrInput `pulumi:"dnsName"`
	// The ID of the private hosted zone.
	HostedZoneId pulumi.StringPtrInput `pulumi:"hostedZoneId"`
}

func (VpcEndpointDnsEntryArgs) ElementType

func (VpcEndpointDnsEntryArgs) ElementType() reflect.Type

func (VpcEndpointDnsEntryArgs) ToVpcEndpointDnsEntryOutput

func (i VpcEndpointDnsEntryArgs) ToVpcEndpointDnsEntryOutput() VpcEndpointDnsEntryOutput

func (VpcEndpointDnsEntryArgs) ToVpcEndpointDnsEntryOutputWithContext

func (i VpcEndpointDnsEntryArgs) ToVpcEndpointDnsEntryOutputWithContext(ctx context.Context) VpcEndpointDnsEntryOutput

type VpcEndpointDnsEntryArray

type VpcEndpointDnsEntryArray []VpcEndpointDnsEntryInput

func (VpcEndpointDnsEntryArray) ElementType

func (VpcEndpointDnsEntryArray) ElementType() reflect.Type

func (VpcEndpointDnsEntryArray) ToVpcEndpointDnsEntryArrayOutput

func (i VpcEndpointDnsEntryArray) ToVpcEndpointDnsEntryArrayOutput() VpcEndpointDnsEntryArrayOutput

func (VpcEndpointDnsEntryArray) ToVpcEndpointDnsEntryArrayOutputWithContext

func (i VpcEndpointDnsEntryArray) ToVpcEndpointDnsEntryArrayOutputWithContext(ctx context.Context) VpcEndpointDnsEntryArrayOutput

type VpcEndpointDnsEntryArrayInput

type VpcEndpointDnsEntryArrayInput interface {
	pulumi.Input

	ToVpcEndpointDnsEntryArrayOutput() VpcEndpointDnsEntryArrayOutput
	ToVpcEndpointDnsEntryArrayOutputWithContext(context.Context) VpcEndpointDnsEntryArrayOutput
}

VpcEndpointDnsEntryArrayInput is an input type that accepts VpcEndpointDnsEntryArray and VpcEndpointDnsEntryArrayOutput values. You can construct a concrete instance of `VpcEndpointDnsEntryArrayInput` via:

VpcEndpointDnsEntryArray{ VpcEndpointDnsEntryArgs{...} }

type VpcEndpointDnsEntryArrayOutput

type VpcEndpointDnsEntryArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointDnsEntryArrayOutput) ElementType

func (VpcEndpointDnsEntryArrayOutput) Index

func (VpcEndpointDnsEntryArrayOutput) ToVpcEndpointDnsEntryArrayOutput

func (o VpcEndpointDnsEntryArrayOutput) ToVpcEndpointDnsEntryArrayOutput() VpcEndpointDnsEntryArrayOutput

func (VpcEndpointDnsEntryArrayOutput) ToVpcEndpointDnsEntryArrayOutputWithContext

func (o VpcEndpointDnsEntryArrayOutput) ToVpcEndpointDnsEntryArrayOutputWithContext(ctx context.Context) VpcEndpointDnsEntryArrayOutput

type VpcEndpointDnsEntryInput

type VpcEndpointDnsEntryInput interface {
	pulumi.Input

	ToVpcEndpointDnsEntryOutput() VpcEndpointDnsEntryOutput
	ToVpcEndpointDnsEntryOutputWithContext(context.Context) VpcEndpointDnsEntryOutput
}

VpcEndpointDnsEntryInput is an input type that accepts VpcEndpointDnsEntryArgs and VpcEndpointDnsEntryOutput values. You can construct a concrete instance of `VpcEndpointDnsEntryInput` via:

VpcEndpointDnsEntryArgs{...}

type VpcEndpointDnsEntryOutput

type VpcEndpointDnsEntryOutput struct{ *pulumi.OutputState }

func (VpcEndpointDnsEntryOutput) DnsName

The DNS name.

func (VpcEndpointDnsEntryOutput) ElementType

func (VpcEndpointDnsEntryOutput) ElementType() reflect.Type

func (VpcEndpointDnsEntryOutput) HostedZoneId

The ID of the private hosted zone.

func (VpcEndpointDnsEntryOutput) ToVpcEndpointDnsEntryOutput

func (o VpcEndpointDnsEntryOutput) ToVpcEndpointDnsEntryOutput() VpcEndpointDnsEntryOutput

func (VpcEndpointDnsEntryOutput) ToVpcEndpointDnsEntryOutputWithContext

func (o VpcEndpointDnsEntryOutput) ToVpcEndpointDnsEntryOutputWithContext(ctx context.Context) VpcEndpointDnsEntryOutput

type VpcEndpointInput

type VpcEndpointInput interface {
	pulumi.Input

	ToVpcEndpointOutput() VpcEndpointOutput
	ToVpcEndpointOutputWithContext(ctx context.Context) VpcEndpointOutput
}

type VpcEndpointMap

type VpcEndpointMap map[string]VpcEndpointInput

func (VpcEndpointMap) ElementType

func (VpcEndpointMap) ElementType() reflect.Type

func (VpcEndpointMap) ToVpcEndpointMapOutput

func (i VpcEndpointMap) ToVpcEndpointMapOutput() VpcEndpointMapOutput

func (VpcEndpointMap) ToVpcEndpointMapOutputWithContext

func (i VpcEndpointMap) ToVpcEndpointMapOutputWithContext(ctx context.Context) VpcEndpointMapOutput

type VpcEndpointMapInput

type VpcEndpointMapInput interface {
	pulumi.Input

	ToVpcEndpointMapOutput() VpcEndpointMapOutput
	ToVpcEndpointMapOutputWithContext(context.Context) VpcEndpointMapOutput
}

VpcEndpointMapInput is an input type that accepts VpcEndpointMap and VpcEndpointMapOutput values. You can construct a concrete instance of `VpcEndpointMapInput` via:

VpcEndpointMap{ "key": VpcEndpointArgs{...} }

type VpcEndpointMapOutput

type VpcEndpointMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointMapOutput) ElementType

func (VpcEndpointMapOutput) ElementType() reflect.Type

func (VpcEndpointMapOutput) MapIndex

func (VpcEndpointMapOutput) ToVpcEndpointMapOutput

func (o VpcEndpointMapOutput) ToVpcEndpointMapOutput() VpcEndpointMapOutput

func (VpcEndpointMapOutput) ToVpcEndpointMapOutputWithContext

func (o VpcEndpointMapOutput) ToVpcEndpointMapOutputWithContext(ctx context.Context) VpcEndpointMapOutput

type VpcEndpointOutput

type VpcEndpointOutput struct{ *pulumi.OutputState }

func (VpcEndpointOutput) ElementType

func (VpcEndpointOutput) ElementType() reflect.Type

func (VpcEndpointOutput) ToVpcEndpointOutput

func (o VpcEndpointOutput) ToVpcEndpointOutput() VpcEndpointOutput

func (VpcEndpointOutput) ToVpcEndpointOutputWithContext

func (o VpcEndpointOutput) ToVpcEndpointOutputWithContext(ctx context.Context) VpcEndpointOutput

func (VpcEndpointOutput) ToVpcEndpointPtrOutput

func (o VpcEndpointOutput) ToVpcEndpointPtrOutput() VpcEndpointPtrOutput

func (VpcEndpointOutput) ToVpcEndpointPtrOutputWithContext

func (o VpcEndpointOutput) ToVpcEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointPtrOutput

type VpcEndpointPtrInput

type VpcEndpointPtrInput interface {
	pulumi.Input

	ToVpcEndpointPtrOutput() VpcEndpointPtrOutput
	ToVpcEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointPtrOutput
}

type VpcEndpointPtrOutput

type VpcEndpointPtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointPtrOutput) Elem added in v4.15.0

func (VpcEndpointPtrOutput) ElementType

func (VpcEndpointPtrOutput) ElementType() reflect.Type

func (VpcEndpointPtrOutput) ToVpcEndpointPtrOutput

func (o VpcEndpointPtrOutput) ToVpcEndpointPtrOutput() VpcEndpointPtrOutput

func (VpcEndpointPtrOutput) ToVpcEndpointPtrOutputWithContext

func (o VpcEndpointPtrOutput) ToVpcEndpointPtrOutputWithContext(ctx context.Context) VpcEndpointPtrOutput

type VpcEndpointRouteTableAssociation

type VpcEndpointRouteTableAssociation struct {
	pulumi.CustomResourceState

	// Identifier of the EC2 Route Table to be associated with the VPC Endpoint.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.
	VpcEndpointId pulumi.StringOutput `pulumi:"vpcEndpointId"`
}

Manages a VPC Endpoint Route Table Association

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpointRouteTableAssociation(ctx, "example", &ec2.VpcEndpointRouteTableAssociationArgs{
			RouteTableId:  pulumi.Any(aws_route_table.Example.Id),
			VpcEndpointId: pulumi.Any(aws_vpc_endpoint.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Endpoint Route Table Associations can be imported using `vpc_endpoint_id` together with `route_table_id`, e.g.

```sh

$ pulumi import aws:ec2/vpcEndpointRouteTableAssociation:VpcEndpointRouteTableAssociation example vpce-aaaaaaaa/rtb-bbbbbbbb

```

func GetVpcEndpointRouteTableAssociation

func GetVpcEndpointRouteTableAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointRouteTableAssociationState, opts ...pulumi.ResourceOption) (*VpcEndpointRouteTableAssociation, error)

GetVpcEndpointRouteTableAssociation gets an existing VpcEndpointRouteTableAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpointRouteTableAssociation

func NewVpcEndpointRouteTableAssociation(ctx *pulumi.Context,
	name string, args *VpcEndpointRouteTableAssociationArgs, opts ...pulumi.ResourceOption) (*VpcEndpointRouteTableAssociation, error)

NewVpcEndpointRouteTableAssociation registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpointRouteTableAssociation) ElementType

func (*VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationOutput

func (i *VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationOutput() VpcEndpointRouteTableAssociationOutput

func (*VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationOutputWithContext

func (i *VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationOutput

func (*VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationPtrOutput

func (i *VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationPtrOutput() VpcEndpointRouteTableAssociationPtrOutput

func (*VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationPtrOutputWithContext

func (i *VpcEndpointRouteTableAssociation) ToVpcEndpointRouteTableAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationPtrOutput

type VpcEndpointRouteTableAssociationArgs

type VpcEndpointRouteTableAssociationArgs struct {
	// Identifier of the EC2 Route Table to be associated with the VPC Endpoint.
	RouteTableId pulumi.StringInput
	// Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.
	VpcEndpointId pulumi.StringInput
}

The set of arguments for constructing a VpcEndpointRouteTableAssociation resource.

func (VpcEndpointRouteTableAssociationArgs) ElementType

type VpcEndpointRouteTableAssociationArray

type VpcEndpointRouteTableAssociationArray []VpcEndpointRouteTableAssociationInput

func (VpcEndpointRouteTableAssociationArray) ElementType

func (VpcEndpointRouteTableAssociationArray) ToVpcEndpointRouteTableAssociationArrayOutput

func (i VpcEndpointRouteTableAssociationArray) ToVpcEndpointRouteTableAssociationArrayOutput() VpcEndpointRouteTableAssociationArrayOutput

func (VpcEndpointRouteTableAssociationArray) ToVpcEndpointRouteTableAssociationArrayOutputWithContext

func (i VpcEndpointRouteTableAssociationArray) ToVpcEndpointRouteTableAssociationArrayOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationArrayOutput

type VpcEndpointRouteTableAssociationArrayInput

type VpcEndpointRouteTableAssociationArrayInput interface {
	pulumi.Input

	ToVpcEndpointRouteTableAssociationArrayOutput() VpcEndpointRouteTableAssociationArrayOutput
	ToVpcEndpointRouteTableAssociationArrayOutputWithContext(context.Context) VpcEndpointRouteTableAssociationArrayOutput
}

VpcEndpointRouteTableAssociationArrayInput is an input type that accepts VpcEndpointRouteTableAssociationArray and VpcEndpointRouteTableAssociationArrayOutput values. You can construct a concrete instance of `VpcEndpointRouteTableAssociationArrayInput` via:

VpcEndpointRouteTableAssociationArray{ VpcEndpointRouteTableAssociationArgs{...} }

type VpcEndpointRouteTableAssociationArrayOutput

type VpcEndpointRouteTableAssociationArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointRouteTableAssociationArrayOutput) ElementType

func (VpcEndpointRouteTableAssociationArrayOutput) Index

func (VpcEndpointRouteTableAssociationArrayOutput) ToVpcEndpointRouteTableAssociationArrayOutput

func (o VpcEndpointRouteTableAssociationArrayOutput) ToVpcEndpointRouteTableAssociationArrayOutput() VpcEndpointRouteTableAssociationArrayOutput

func (VpcEndpointRouteTableAssociationArrayOutput) ToVpcEndpointRouteTableAssociationArrayOutputWithContext

func (o VpcEndpointRouteTableAssociationArrayOutput) ToVpcEndpointRouteTableAssociationArrayOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationArrayOutput

type VpcEndpointRouteTableAssociationInput

type VpcEndpointRouteTableAssociationInput interface {
	pulumi.Input

	ToVpcEndpointRouteTableAssociationOutput() VpcEndpointRouteTableAssociationOutput
	ToVpcEndpointRouteTableAssociationOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationOutput
}

type VpcEndpointRouteTableAssociationMap

type VpcEndpointRouteTableAssociationMap map[string]VpcEndpointRouteTableAssociationInput

func (VpcEndpointRouteTableAssociationMap) ElementType

func (VpcEndpointRouteTableAssociationMap) ToVpcEndpointRouteTableAssociationMapOutput

func (i VpcEndpointRouteTableAssociationMap) ToVpcEndpointRouteTableAssociationMapOutput() VpcEndpointRouteTableAssociationMapOutput

func (VpcEndpointRouteTableAssociationMap) ToVpcEndpointRouteTableAssociationMapOutputWithContext

func (i VpcEndpointRouteTableAssociationMap) ToVpcEndpointRouteTableAssociationMapOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationMapOutput

type VpcEndpointRouteTableAssociationMapInput

type VpcEndpointRouteTableAssociationMapInput interface {
	pulumi.Input

	ToVpcEndpointRouteTableAssociationMapOutput() VpcEndpointRouteTableAssociationMapOutput
	ToVpcEndpointRouteTableAssociationMapOutputWithContext(context.Context) VpcEndpointRouteTableAssociationMapOutput
}

VpcEndpointRouteTableAssociationMapInput is an input type that accepts VpcEndpointRouteTableAssociationMap and VpcEndpointRouteTableAssociationMapOutput values. You can construct a concrete instance of `VpcEndpointRouteTableAssociationMapInput` via:

VpcEndpointRouteTableAssociationMap{ "key": VpcEndpointRouteTableAssociationArgs{...} }

type VpcEndpointRouteTableAssociationMapOutput

type VpcEndpointRouteTableAssociationMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointRouteTableAssociationMapOutput) ElementType

func (VpcEndpointRouteTableAssociationMapOutput) MapIndex

func (VpcEndpointRouteTableAssociationMapOutput) ToVpcEndpointRouteTableAssociationMapOutput

func (o VpcEndpointRouteTableAssociationMapOutput) ToVpcEndpointRouteTableAssociationMapOutput() VpcEndpointRouteTableAssociationMapOutput

func (VpcEndpointRouteTableAssociationMapOutput) ToVpcEndpointRouteTableAssociationMapOutputWithContext

func (o VpcEndpointRouteTableAssociationMapOutput) ToVpcEndpointRouteTableAssociationMapOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationMapOutput

type VpcEndpointRouteTableAssociationOutput

type VpcEndpointRouteTableAssociationOutput struct{ *pulumi.OutputState }

func (VpcEndpointRouteTableAssociationOutput) ElementType

func (VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationOutput

func (o VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationOutput() VpcEndpointRouteTableAssociationOutput

func (VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationOutputWithContext

func (o VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationOutput

func (VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationPtrOutput

func (o VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationPtrOutput() VpcEndpointRouteTableAssociationPtrOutput

func (VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationPtrOutputWithContext

func (o VpcEndpointRouteTableAssociationOutput) ToVpcEndpointRouteTableAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationPtrOutput

type VpcEndpointRouteTableAssociationPtrInput

type VpcEndpointRouteTableAssociationPtrInput interface {
	pulumi.Input

	ToVpcEndpointRouteTableAssociationPtrOutput() VpcEndpointRouteTableAssociationPtrOutput
	ToVpcEndpointRouteTableAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationPtrOutput
}

type VpcEndpointRouteTableAssociationPtrOutput

type VpcEndpointRouteTableAssociationPtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointRouteTableAssociationPtrOutput) Elem added in v4.15.0

func (VpcEndpointRouteTableAssociationPtrOutput) ElementType

func (VpcEndpointRouteTableAssociationPtrOutput) ToVpcEndpointRouteTableAssociationPtrOutput

func (o VpcEndpointRouteTableAssociationPtrOutput) ToVpcEndpointRouteTableAssociationPtrOutput() VpcEndpointRouteTableAssociationPtrOutput

func (VpcEndpointRouteTableAssociationPtrOutput) ToVpcEndpointRouteTableAssociationPtrOutputWithContext

func (o VpcEndpointRouteTableAssociationPtrOutput) ToVpcEndpointRouteTableAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointRouteTableAssociationPtrOutput

type VpcEndpointRouteTableAssociationState

type VpcEndpointRouteTableAssociationState struct {
	// Identifier of the EC2 Route Table to be associated with the VPC Endpoint.
	RouteTableId pulumi.StringPtrInput
	// Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.
	VpcEndpointId pulumi.StringPtrInput
}

func (VpcEndpointRouteTableAssociationState) ElementType

type VpcEndpointService

type VpcEndpointService struct {
	pulumi.CustomResourceState

	// Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - `true` or `false`.
	AcceptanceRequired pulumi.BoolOutput `pulumi:"acceptanceRequired"`
	// The ARNs of one or more principals allowed to discover the endpoint service.
	AllowedPrincipals pulumi.StringArrayOutput `pulumi:"allowedPrincipals"`
	// The Amazon Resource Name (ARN) of the VPC endpoint service.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The Availability Zones in which the service is available.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The DNS names for the service.
	BaseEndpointDnsNames pulumi.StringArrayOutput `pulumi:"baseEndpointDnsNames"`
	// Amazon Resource Names (ARNs) of one or more Gateway Load Balancers for the endpoint service.
	GatewayLoadBalancerArns pulumi.StringArrayOutput `pulumi:"gatewayLoadBalancerArns"`
	// Whether or not the service manages its VPC endpoints - `true` or `false`.
	ManagesVpcEndpoints pulumi.BoolOutput `pulumi:"managesVpcEndpoints"`
	// Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service.
	NetworkLoadBalancerArns pulumi.StringArrayOutput `pulumi:"networkLoadBalancerArns"`
	// The private DNS name for the service.
	PrivateDnsName pulumi.StringOutput `pulumi:"privateDnsName"`
	// List of objects containing information about the endpoint service private DNS name configuration.
	PrivateDnsNameConfigurations VpcEndpointServicePrivateDnsNameConfigurationArrayOutput `pulumi:"privateDnsNameConfigurations"`
	// The service name.
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// The service type, `Gateway` or `Interface`.
	ServiceType pulumi.StringOutput `pulumi:"serviceType"`
	// Verification state of the VPC endpoint service. Consumers of the endpoint service can use the private name only when the state is `verified`.
	State pulumi.StringOutput `pulumi:"state"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a VPC Endpoint Service resource. Service consumers can create an _Interface_ VPC Endpoint to connect to the service.

> **NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals:** This provider provides both a standalone VPC Endpoint Service Allowed Principal resource and a VPC Endpoint Service resource with an `allowedPrincipals` attribute. Do not use the same principal ARN in both a VPC Endpoint Service resource and a VPC Endpoint Service Allowed Principal resource. Doing so will cause a conflict and will overwrite the association.

## Example Usage ### Network Load Balancers

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpointService(ctx, "example", &ec2.VpcEndpointServiceArgs{
			AcceptanceRequired: pulumi.Bool(false),
			NetworkLoadBalancerArns: pulumi.StringArray{
				pulumi.Any(aws_lb.Example.Arn),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Gateway Load Balancers

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpointService(ctx, "example", &ec2.VpcEndpointServiceArgs{
			AcceptanceRequired: pulumi.Bool(false),
			GatewayLoadBalancerArns: pulumi.StringArray{
				pulumi.Any(aws_lb.Example.Arn),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Endpoint Services can be imported using the `VPC endpoint service id`, e.g.

```sh

$ pulumi import aws:ec2/vpcEndpointService:VpcEndpointService foo vpce-svc-0f97a19d3fa8220bc

```

func GetVpcEndpointService

func GetVpcEndpointService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointServiceState, opts ...pulumi.ResourceOption) (*VpcEndpointService, error)

GetVpcEndpointService gets an existing VpcEndpointService resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpointService

func NewVpcEndpointService(ctx *pulumi.Context,
	name string, args *VpcEndpointServiceArgs, opts ...pulumi.ResourceOption) (*VpcEndpointService, error)

NewVpcEndpointService registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpointService) ElementType

func (*VpcEndpointService) ElementType() reflect.Type

func (*VpcEndpointService) ToVpcEndpointServiceOutput

func (i *VpcEndpointService) ToVpcEndpointServiceOutput() VpcEndpointServiceOutput

func (*VpcEndpointService) ToVpcEndpointServiceOutputWithContext

func (i *VpcEndpointService) ToVpcEndpointServiceOutputWithContext(ctx context.Context) VpcEndpointServiceOutput

func (*VpcEndpointService) ToVpcEndpointServicePtrOutput

func (i *VpcEndpointService) ToVpcEndpointServicePtrOutput() VpcEndpointServicePtrOutput

func (*VpcEndpointService) ToVpcEndpointServicePtrOutputWithContext

func (i *VpcEndpointService) ToVpcEndpointServicePtrOutputWithContext(ctx context.Context) VpcEndpointServicePtrOutput

type VpcEndpointServiceAllowedPrinciple

type VpcEndpointServiceAllowedPrinciple struct {
	pulumi.CustomResourceState

	// The ARN of the principal to allow permissions.
	PrincipalArn pulumi.StringOutput `pulumi:"principalArn"`
	// The ID of the VPC endpoint service to allow permission.
	VpcEndpointServiceId pulumi.StringOutput `pulumi:"vpcEndpointServiceId"`
}

Provides a resource to allow a principal to discover a VPC endpoint service.

> **NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals:** This provider provides both a standalone VPC Endpoint Service Allowed Principal resource and a VPC Endpoint Service resource with an `allowedPrincipals` attribute. Do not use the same principal ARN in both a VPC Endpoint Service resource and a VPC Endpoint Service Allowed Principal resource. Doing so will cause a conflict and will overwrite the association.

## Example Usage

Basic usage:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcEndpointServiceAllowedPrinciple(ctx, "allowMeToFoo", &ec2.VpcEndpointServiceAllowedPrincipleArgs{
			VpcEndpointServiceId: pulumi.Any(aws_vpc_endpoint_service.Foo.Id),
			PrincipalArn:         pulumi.String(current.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetVpcEndpointServiceAllowedPrinciple

func GetVpcEndpointServiceAllowedPrinciple(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointServiceAllowedPrincipleState, opts ...pulumi.ResourceOption) (*VpcEndpointServiceAllowedPrinciple, error)

GetVpcEndpointServiceAllowedPrinciple gets an existing VpcEndpointServiceAllowedPrinciple resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpointServiceAllowedPrinciple

func NewVpcEndpointServiceAllowedPrinciple(ctx *pulumi.Context,
	name string, args *VpcEndpointServiceAllowedPrincipleArgs, opts ...pulumi.ResourceOption) (*VpcEndpointServiceAllowedPrinciple, error)

NewVpcEndpointServiceAllowedPrinciple registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpointServiceAllowedPrinciple) ElementType

func (*VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrincipleOutput

func (i *VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrincipleOutput() VpcEndpointServiceAllowedPrincipleOutput

func (*VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrincipleOutputWithContext

func (i *VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrincipleOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleOutput

func (*VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrinciplePtrOutput

func (i *VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrinciplePtrOutput() VpcEndpointServiceAllowedPrinciplePtrOutput

func (*VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext

func (i *VpcEndpointServiceAllowedPrinciple) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrinciplePtrOutput

type VpcEndpointServiceAllowedPrincipleArgs

type VpcEndpointServiceAllowedPrincipleArgs struct {
	// The ARN of the principal to allow permissions.
	PrincipalArn pulumi.StringInput
	// The ID of the VPC endpoint service to allow permission.
	VpcEndpointServiceId pulumi.StringInput
}

The set of arguments for constructing a VpcEndpointServiceAllowedPrinciple resource.

func (VpcEndpointServiceAllowedPrincipleArgs) ElementType

type VpcEndpointServiceAllowedPrincipleArray

type VpcEndpointServiceAllowedPrincipleArray []VpcEndpointServiceAllowedPrincipleInput

func (VpcEndpointServiceAllowedPrincipleArray) ElementType

func (VpcEndpointServiceAllowedPrincipleArray) ToVpcEndpointServiceAllowedPrincipleArrayOutput

func (i VpcEndpointServiceAllowedPrincipleArray) ToVpcEndpointServiceAllowedPrincipleArrayOutput() VpcEndpointServiceAllowedPrincipleArrayOutput

func (VpcEndpointServiceAllowedPrincipleArray) ToVpcEndpointServiceAllowedPrincipleArrayOutputWithContext

func (i VpcEndpointServiceAllowedPrincipleArray) ToVpcEndpointServiceAllowedPrincipleArrayOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleArrayOutput

type VpcEndpointServiceAllowedPrincipleArrayInput

type VpcEndpointServiceAllowedPrincipleArrayInput interface {
	pulumi.Input

	ToVpcEndpointServiceAllowedPrincipleArrayOutput() VpcEndpointServiceAllowedPrincipleArrayOutput
	ToVpcEndpointServiceAllowedPrincipleArrayOutputWithContext(context.Context) VpcEndpointServiceAllowedPrincipleArrayOutput
}

VpcEndpointServiceAllowedPrincipleArrayInput is an input type that accepts VpcEndpointServiceAllowedPrincipleArray and VpcEndpointServiceAllowedPrincipleArrayOutput values. You can construct a concrete instance of `VpcEndpointServiceAllowedPrincipleArrayInput` via:

VpcEndpointServiceAllowedPrincipleArray{ VpcEndpointServiceAllowedPrincipleArgs{...} }

type VpcEndpointServiceAllowedPrincipleArrayOutput

type VpcEndpointServiceAllowedPrincipleArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceAllowedPrincipleArrayOutput) ElementType

func (VpcEndpointServiceAllowedPrincipleArrayOutput) Index

func (VpcEndpointServiceAllowedPrincipleArrayOutput) ToVpcEndpointServiceAllowedPrincipleArrayOutput

func (o VpcEndpointServiceAllowedPrincipleArrayOutput) ToVpcEndpointServiceAllowedPrincipleArrayOutput() VpcEndpointServiceAllowedPrincipleArrayOutput

func (VpcEndpointServiceAllowedPrincipleArrayOutput) ToVpcEndpointServiceAllowedPrincipleArrayOutputWithContext

func (o VpcEndpointServiceAllowedPrincipleArrayOutput) ToVpcEndpointServiceAllowedPrincipleArrayOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleArrayOutput

type VpcEndpointServiceAllowedPrincipleInput

type VpcEndpointServiceAllowedPrincipleInput interface {
	pulumi.Input

	ToVpcEndpointServiceAllowedPrincipleOutput() VpcEndpointServiceAllowedPrincipleOutput
	ToVpcEndpointServiceAllowedPrincipleOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleOutput
}

type VpcEndpointServiceAllowedPrincipleMap

type VpcEndpointServiceAllowedPrincipleMap map[string]VpcEndpointServiceAllowedPrincipleInput

func (VpcEndpointServiceAllowedPrincipleMap) ElementType

func (VpcEndpointServiceAllowedPrincipleMap) ToVpcEndpointServiceAllowedPrincipleMapOutput

func (i VpcEndpointServiceAllowedPrincipleMap) ToVpcEndpointServiceAllowedPrincipleMapOutput() VpcEndpointServiceAllowedPrincipleMapOutput

func (VpcEndpointServiceAllowedPrincipleMap) ToVpcEndpointServiceAllowedPrincipleMapOutputWithContext

func (i VpcEndpointServiceAllowedPrincipleMap) ToVpcEndpointServiceAllowedPrincipleMapOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleMapOutput

type VpcEndpointServiceAllowedPrincipleMapInput

type VpcEndpointServiceAllowedPrincipleMapInput interface {
	pulumi.Input

	ToVpcEndpointServiceAllowedPrincipleMapOutput() VpcEndpointServiceAllowedPrincipleMapOutput
	ToVpcEndpointServiceAllowedPrincipleMapOutputWithContext(context.Context) VpcEndpointServiceAllowedPrincipleMapOutput
}

VpcEndpointServiceAllowedPrincipleMapInput is an input type that accepts VpcEndpointServiceAllowedPrincipleMap and VpcEndpointServiceAllowedPrincipleMapOutput values. You can construct a concrete instance of `VpcEndpointServiceAllowedPrincipleMapInput` via:

VpcEndpointServiceAllowedPrincipleMap{ "key": VpcEndpointServiceAllowedPrincipleArgs{...} }

type VpcEndpointServiceAllowedPrincipleMapOutput

type VpcEndpointServiceAllowedPrincipleMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceAllowedPrincipleMapOutput) ElementType

func (VpcEndpointServiceAllowedPrincipleMapOutput) MapIndex

func (VpcEndpointServiceAllowedPrincipleMapOutput) ToVpcEndpointServiceAllowedPrincipleMapOutput

func (o VpcEndpointServiceAllowedPrincipleMapOutput) ToVpcEndpointServiceAllowedPrincipleMapOutput() VpcEndpointServiceAllowedPrincipleMapOutput

func (VpcEndpointServiceAllowedPrincipleMapOutput) ToVpcEndpointServiceAllowedPrincipleMapOutputWithContext

func (o VpcEndpointServiceAllowedPrincipleMapOutput) ToVpcEndpointServiceAllowedPrincipleMapOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleMapOutput

type VpcEndpointServiceAllowedPrincipleOutput

type VpcEndpointServiceAllowedPrincipleOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceAllowedPrincipleOutput) ElementType

func (VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrincipleOutput

func (o VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrincipleOutput() VpcEndpointServiceAllowedPrincipleOutput

func (VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrincipleOutputWithContext

func (o VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrincipleOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrincipleOutput

func (VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutput

func (o VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutput() VpcEndpointServiceAllowedPrinciplePtrOutput

func (VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext

func (o VpcEndpointServiceAllowedPrincipleOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrinciplePtrOutput

type VpcEndpointServiceAllowedPrinciplePtrInput

type VpcEndpointServiceAllowedPrinciplePtrInput interface {
	pulumi.Input

	ToVpcEndpointServiceAllowedPrinciplePtrOutput() VpcEndpointServiceAllowedPrinciplePtrOutput
	ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrinciplePtrOutput
}

type VpcEndpointServiceAllowedPrinciplePtrOutput

type VpcEndpointServiceAllowedPrinciplePtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceAllowedPrinciplePtrOutput) Elem added in v4.15.0

func (VpcEndpointServiceAllowedPrinciplePtrOutput) ElementType

func (VpcEndpointServiceAllowedPrinciplePtrOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutput

func (o VpcEndpointServiceAllowedPrinciplePtrOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutput() VpcEndpointServiceAllowedPrinciplePtrOutput

func (VpcEndpointServiceAllowedPrinciplePtrOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext

func (o VpcEndpointServiceAllowedPrinciplePtrOutput) ToVpcEndpointServiceAllowedPrinciplePtrOutputWithContext(ctx context.Context) VpcEndpointServiceAllowedPrinciplePtrOutput

type VpcEndpointServiceAllowedPrincipleState

type VpcEndpointServiceAllowedPrincipleState struct {
	// The ARN of the principal to allow permissions.
	PrincipalArn pulumi.StringPtrInput
	// The ID of the VPC endpoint service to allow permission.
	VpcEndpointServiceId pulumi.StringPtrInput
}

func (VpcEndpointServiceAllowedPrincipleState) ElementType

type VpcEndpointServiceArgs

type VpcEndpointServiceArgs struct {
	// Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - `true` or `false`.
	AcceptanceRequired pulumi.BoolInput
	// The ARNs of one or more principals allowed to discover the endpoint service.
	AllowedPrincipals pulumi.StringArrayInput
	// Amazon Resource Names (ARNs) of one or more Gateway Load Balancers for the endpoint service.
	GatewayLoadBalancerArns pulumi.StringArrayInput
	// Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service.
	NetworkLoadBalancerArns pulumi.StringArrayInput
	// The private DNS name for the service.
	PrivateDnsName pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a VpcEndpointService resource.

func (VpcEndpointServiceArgs) ElementType

func (VpcEndpointServiceArgs) ElementType() reflect.Type

type VpcEndpointServiceArray

type VpcEndpointServiceArray []VpcEndpointServiceInput

func (VpcEndpointServiceArray) ElementType

func (VpcEndpointServiceArray) ElementType() reflect.Type

func (VpcEndpointServiceArray) ToVpcEndpointServiceArrayOutput

func (i VpcEndpointServiceArray) ToVpcEndpointServiceArrayOutput() VpcEndpointServiceArrayOutput

func (VpcEndpointServiceArray) ToVpcEndpointServiceArrayOutputWithContext

func (i VpcEndpointServiceArray) ToVpcEndpointServiceArrayOutputWithContext(ctx context.Context) VpcEndpointServiceArrayOutput

type VpcEndpointServiceArrayInput

type VpcEndpointServiceArrayInput interface {
	pulumi.Input

	ToVpcEndpointServiceArrayOutput() VpcEndpointServiceArrayOutput
	ToVpcEndpointServiceArrayOutputWithContext(context.Context) VpcEndpointServiceArrayOutput
}

VpcEndpointServiceArrayInput is an input type that accepts VpcEndpointServiceArray and VpcEndpointServiceArrayOutput values. You can construct a concrete instance of `VpcEndpointServiceArrayInput` via:

VpcEndpointServiceArray{ VpcEndpointServiceArgs{...} }

type VpcEndpointServiceArrayOutput

type VpcEndpointServiceArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceArrayOutput) ElementType

func (VpcEndpointServiceArrayOutput) Index

func (VpcEndpointServiceArrayOutput) ToVpcEndpointServiceArrayOutput

func (o VpcEndpointServiceArrayOutput) ToVpcEndpointServiceArrayOutput() VpcEndpointServiceArrayOutput

func (VpcEndpointServiceArrayOutput) ToVpcEndpointServiceArrayOutputWithContext

func (o VpcEndpointServiceArrayOutput) ToVpcEndpointServiceArrayOutputWithContext(ctx context.Context) VpcEndpointServiceArrayOutput

type VpcEndpointServiceInput

type VpcEndpointServiceInput interface {
	pulumi.Input

	ToVpcEndpointServiceOutput() VpcEndpointServiceOutput
	ToVpcEndpointServiceOutputWithContext(ctx context.Context) VpcEndpointServiceOutput
}

type VpcEndpointServiceMap

type VpcEndpointServiceMap map[string]VpcEndpointServiceInput

func (VpcEndpointServiceMap) ElementType

func (VpcEndpointServiceMap) ElementType() reflect.Type

func (VpcEndpointServiceMap) ToVpcEndpointServiceMapOutput

func (i VpcEndpointServiceMap) ToVpcEndpointServiceMapOutput() VpcEndpointServiceMapOutput

func (VpcEndpointServiceMap) ToVpcEndpointServiceMapOutputWithContext

func (i VpcEndpointServiceMap) ToVpcEndpointServiceMapOutputWithContext(ctx context.Context) VpcEndpointServiceMapOutput

type VpcEndpointServiceMapInput

type VpcEndpointServiceMapInput interface {
	pulumi.Input

	ToVpcEndpointServiceMapOutput() VpcEndpointServiceMapOutput
	ToVpcEndpointServiceMapOutputWithContext(context.Context) VpcEndpointServiceMapOutput
}

VpcEndpointServiceMapInput is an input type that accepts VpcEndpointServiceMap and VpcEndpointServiceMapOutput values. You can construct a concrete instance of `VpcEndpointServiceMapInput` via:

VpcEndpointServiceMap{ "key": VpcEndpointServiceArgs{...} }

type VpcEndpointServiceMapOutput

type VpcEndpointServiceMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceMapOutput) ElementType

func (VpcEndpointServiceMapOutput) MapIndex

func (VpcEndpointServiceMapOutput) ToVpcEndpointServiceMapOutput

func (o VpcEndpointServiceMapOutput) ToVpcEndpointServiceMapOutput() VpcEndpointServiceMapOutput

func (VpcEndpointServiceMapOutput) ToVpcEndpointServiceMapOutputWithContext

func (o VpcEndpointServiceMapOutput) ToVpcEndpointServiceMapOutputWithContext(ctx context.Context) VpcEndpointServiceMapOutput

type VpcEndpointServiceOutput

type VpcEndpointServiceOutput struct{ *pulumi.OutputState }

func (VpcEndpointServiceOutput) ElementType

func (VpcEndpointServiceOutput) ElementType() reflect.Type

func (VpcEndpointServiceOutput) ToVpcEndpointServiceOutput

func (o VpcEndpointServiceOutput) ToVpcEndpointServiceOutput() VpcEndpointServiceOutput

func (VpcEndpointServiceOutput) ToVpcEndpointServiceOutputWithContext

func (o VpcEndpointServiceOutput) ToVpcEndpointServiceOutputWithContext(ctx context.Context) VpcEndpointServiceOutput

func (VpcEndpointServiceOutput) ToVpcEndpointServicePtrOutput

func (o VpcEndpointServiceOutput) ToVpcEndpointServicePtrOutput() VpcEndpointServicePtrOutput

func (VpcEndpointServiceOutput) ToVpcEndpointServicePtrOutputWithContext

func (o VpcEndpointServiceOutput) ToVpcEndpointServicePtrOutputWithContext(ctx context.Context) VpcEndpointServicePtrOutput

type VpcEndpointServicePrivateDnsNameConfiguration

type VpcEndpointServicePrivateDnsNameConfiguration struct {
	// Name of the record subdomain the service provider needs to create.
	Name *string `pulumi:"name"`
	// Verification state of the VPC endpoint service. Consumers of the endpoint service can use the private name only when the state is `verified`.
	State *string `pulumi:"state"`
	// Endpoint service verification type, for example `TXT`.
	Type *string `pulumi:"type"`
	// Value the service provider adds to the private DNS name domain record before verification.
	Value *string `pulumi:"value"`
}

type VpcEndpointServicePrivateDnsNameConfigurationArgs

type VpcEndpointServicePrivateDnsNameConfigurationArgs struct {
	// Name of the record subdomain the service provider needs to create.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Verification state of the VPC endpoint service. Consumers of the endpoint service can use the private name only when the state is `verified`.
	State pulumi.StringPtrInput `pulumi:"state"`
	// Endpoint service verification type, for example `TXT`.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// Value the service provider adds to the private DNS name domain record before verification.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (VpcEndpointServicePrivateDnsNameConfigurationArgs) ElementType

func (VpcEndpointServicePrivateDnsNameConfigurationArgs) ToVpcEndpointServicePrivateDnsNameConfigurationOutput

func (i VpcEndpointServicePrivateDnsNameConfigurationArgs) ToVpcEndpointServicePrivateDnsNameConfigurationOutput() VpcEndpointServicePrivateDnsNameConfigurationOutput

func (VpcEndpointServicePrivateDnsNameConfigurationArgs) ToVpcEndpointServicePrivateDnsNameConfigurationOutputWithContext

func (i VpcEndpointServicePrivateDnsNameConfigurationArgs) ToVpcEndpointServicePrivateDnsNameConfigurationOutputWithContext(ctx context.Context) VpcEndpointServicePrivateDnsNameConfigurationOutput

type VpcEndpointServicePrivateDnsNameConfigurationArray

type VpcEndpointServicePrivateDnsNameConfigurationArray []VpcEndpointServicePrivateDnsNameConfigurationInput

func (VpcEndpointServicePrivateDnsNameConfigurationArray) ElementType

func (VpcEndpointServicePrivateDnsNameConfigurationArray) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutput

func (i VpcEndpointServicePrivateDnsNameConfigurationArray) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutput() VpcEndpointServicePrivateDnsNameConfigurationArrayOutput

func (VpcEndpointServicePrivateDnsNameConfigurationArray) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutputWithContext

func (i VpcEndpointServicePrivateDnsNameConfigurationArray) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutputWithContext(ctx context.Context) VpcEndpointServicePrivateDnsNameConfigurationArrayOutput

type VpcEndpointServicePrivateDnsNameConfigurationArrayInput

type VpcEndpointServicePrivateDnsNameConfigurationArrayInput interface {
	pulumi.Input

	ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutput() VpcEndpointServicePrivateDnsNameConfigurationArrayOutput
	ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutputWithContext(context.Context) VpcEndpointServicePrivateDnsNameConfigurationArrayOutput
}

VpcEndpointServicePrivateDnsNameConfigurationArrayInput is an input type that accepts VpcEndpointServicePrivateDnsNameConfigurationArray and VpcEndpointServicePrivateDnsNameConfigurationArrayOutput values. You can construct a concrete instance of `VpcEndpointServicePrivateDnsNameConfigurationArrayInput` via:

VpcEndpointServicePrivateDnsNameConfigurationArray{ VpcEndpointServicePrivateDnsNameConfigurationArgs{...} }

type VpcEndpointServicePrivateDnsNameConfigurationArrayOutput

type VpcEndpointServicePrivateDnsNameConfigurationArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointServicePrivateDnsNameConfigurationArrayOutput) ElementType

func (VpcEndpointServicePrivateDnsNameConfigurationArrayOutput) Index

func (VpcEndpointServicePrivateDnsNameConfigurationArrayOutput) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutput

func (VpcEndpointServicePrivateDnsNameConfigurationArrayOutput) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutputWithContext

func (o VpcEndpointServicePrivateDnsNameConfigurationArrayOutput) ToVpcEndpointServicePrivateDnsNameConfigurationArrayOutputWithContext(ctx context.Context) VpcEndpointServicePrivateDnsNameConfigurationArrayOutput

type VpcEndpointServicePrivateDnsNameConfigurationInput

type VpcEndpointServicePrivateDnsNameConfigurationInput interface {
	pulumi.Input

	ToVpcEndpointServicePrivateDnsNameConfigurationOutput() VpcEndpointServicePrivateDnsNameConfigurationOutput
	ToVpcEndpointServicePrivateDnsNameConfigurationOutputWithContext(context.Context) VpcEndpointServicePrivateDnsNameConfigurationOutput
}

VpcEndpointServicePrivateDnsNameConfigurationInput is an input type that accepts VpcEndpointServicePrivateDnsNameConfigurationArgs and VpcEndpointServicePrivateDnsNameConfigurationOutput values. You can construct a concrete instance of `VpcEndpointServicePrivateDnsNameConfigurationInput` via:

VpcEndpointServicePrivateDnsNameConfigurationArgs{...}

type VpcEndpointServicePrivateDnsNameConfigurationOutput

type VpcEndpointServicePrivateDnsNameConfigurationOutput struct{ *pulumi.OutputState }

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) ElementType

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) Name

Name of the record subdomain the service provider needs to create.

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) State

Verification state of the VPC endpoint service. Consumers of the endpoint service can use the private name only when the state is `verified`.

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) ToVpcEndpointServicePrivateDnsNameConfigurationOutput

func (o VpcEndpointServicePrivateDnsNameConfigurationOutput) ToVpcEndpointServicePrivateDnsNameConfigurationOutput() VpcEndpointServicePrivateDnsNameConfigurationOutput

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) ToVpcEndpointServicePrivateDnsNameConfigurationOutputWithContext

func (o VpcEndpointServicePrivateDnsNameConfigurationOutput) ToVpcEndpointServicePrivateDnsNameConfigurationOutputWithContext(ctx context.Context) VpcEndpointServicePrivateDnsNameConfigurationOutput

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) Type

Endpoint service verification type, for example `TXT`.

func (VpcEndpointServicePrivateDnsNameConfigurationOutput) Value

Value the service provider adds to the private DNS name domain record before verification.

type VpcEndpointServicePtrInput

type VpcEndpointServicePtrInput interface {
	pulumi.Input

	ToVpcEndpointServicePtrOutput() VpcEndpointServicePtrOutput
	ToVpcEndpointServicePtrOutputWithContext(ctx context.Context) VpcEndpointServicePtrOutput
}

type VpcEndpointServicePtrOutput

type VpcEndpointServicePtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointServicePtrOutput) Elem added in v4.15.0

func (VpcEndpointServicePtrOutput) ElementType

func (VpcEndpointServicePtrOutput) ToVpcEndpointServicePtrOutput

func (o VpcEndpointServicePtrOutput) ToVpcEndpointServicePtrOutput() VpcEndpointServicePtrOutput

func (VpcEndpointServicePtrOutput) ToVpcEndpointServicePtrOutputWithContext

func (o VpcEndpointServicePtrOutput) ToVpcEndpointServicePtrOutputWithContext(ctx context.Context) VpcEndpointServicePtrOutput

type VpcEndpointServiceState

type VpcEndpointServiceState struct {
	// Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - `true` or `false`.
	AcceptanceRequired pulumi.BoolPtrInput
	// The ARNs of one or more principals allowed to discover the endpoint service.
	AllowedPrincipals pulumi.StringArrayInput
	// The Amazon Resource Name (ARN) of the VPC endpoint service.
	Arn pulumi.StringPtrInput
	// The Availability Zones in which the service is available.
	AvailabilityZones pulumi.StringArrayInput
	// The DNS names for the service.
	BaseEndpointDnsNames pulumi.StringArrayInput
	// Amazon Resource Names (ARNs) of one or more Gateway Load Balancers for the endpoint service.
	GatewayLoadBalancerArns pulumi.StringArrayInput
	// Whether or not the service manages its VPC endpoints - `true` or `false`.
	ManagesVpcEndpoints pulumi.BoolPtrInput
	// Amazon Resource Names (ARNs) of one or more Network Load Balancers for the endpoint service.
	NetworkLoadBalancerArns pulumi.StringArrayInput
	// The private DNS name for the service.
	PrivateDnsName pulumi.StringPtrInput
	// List of objects containing information about the endpoint service private DNS name configuration.
	PrivateDnsNameConfigurations VpcEndpointServicePrivateDnsNameConfigurationArrayInput
	// The service name.
	ServiceName pulumi.StringPtrInput
	// The service type, `Gateway` or `Interface`.
	ServiceType pulumi.StringPtrInput
	// Verification state of the VPC endpoint service. Consumers of the endpoint service can use the private name only when the state is `verified`.
	State pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (VpcEndpointServiceState) ElementType

func (VpcEndpointServiceState) ElementType() reflect.Type

type VpcEndpointState

type VpcEndpointState struct {
	// The Amazon Resource Name (ARN) of the VPC endpoint.
	Arn pulumi.StringPtrInput
	// Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrInput
	// The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type `Gateway`.
	CidrBlocks pulumi.StringArrayInput
	// The DNS entries for the VPC Endpoint. Applicable for endpoints of type `Interface`. DNS blocks are documented below.
	DnsEntries VpcEndpointDnsEntryArrayInput
	// One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type `Interface`.
	NetworkInterfaceIds pulumi.StringArrayInput
	// The ID of the AWS account that owns the VPC endpoint.
	OwnerId pulumi.StringPtrInput
	// A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All `Gateway` and some `Interface` endpoints support policies - see the [relevant AWS documentation](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html) for more details.
	Policy pulumi.StringPtrInput
	// The prefix list ID of the exposed AWS service. Applicable for endpoints of type `Gateway`.
	PrefixListId pulumi.StringPtrInput
	// Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type `Interface`.
	// Defaults to `false`.
	PrivateDnsEnabled pulumi.BoolPtrInput
	// Whether or not the VPC Endpoint is being managed by its service - `true` or `false`.
	RequesterManaged pulumi.BoolPtrInput
	// One or more route table IDs. Applicable for endpoints of type `Gateway`.
	RouteTableIds pulumi.StringArrayInput
	// The ID of one or more security groups to associate with the network interface. Required for endpoints of type `Interface`.
	SecurityGroupIds pulumi.StringArrayInput
	// The service name. For AWS services the service name is usually in the form `com.amazonaws.<region>.<service>` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.<region>.notebook`).
	ServiceName pulumi.StringPtrInput
	// The state of the VPC endpoint.
	State pulumi.StringPtrInput
	// The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type `GatewayLoadBalancer` and `Interface`.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC endpoint type, `Gateway`, `GatewayLoadBalancer`, or `Interface`. Defaults to `Gateway`.
	VpcEndpointType pulumi.StringPtrInput
	// The ID of the VPC in which the endpoint will be used.
	VpcId pulumi.StringPtrInput
}

func (VpcEndpointState) ElementType

func (VpcEndpointState) ElementType() reflect.Type

type VpcEndpointSubnetAssociation

type VpcEndpointSubnetAssociation struct {
	pulumi.CustomResourceState

	// The ID of the subnet to be associated with the VPC endpoint.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// The ID of the VPC endpoint with which the subnet will be associated.
	VpcEndpointId pulumi.StringOutput `pulumi:"vpcEndpointId"`
}

Provides a resource to create an association between a VPC endpoint and a subnet.

> **NOTE on VPC Endpoints and VPC Endpoint Subnet Associations:** This provider provides both a standalone VPC Endpoint Subnet Association (an association between a VPC endpoint and a single `subnetId`) and a VPC Endpoint resource with a `subnetIds` attribute. Do not use the same subnet ID in both a VPC Endpoint resource and a VPC Endpoint Subnet Association resource. Doing so will cause a conflict of associations and will overwrite the association.

## Example Usage

Basic usage:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcEndpointSubnetAssociation(ctx, "snEc2", &ec2.VpcEndpointSubnetAssociationArgs{
			VpcEndpointId: pulumi.Any(aws_vpc_endpoint.Ec2.Id),
			SubnetId:      pulumi.Any(aws_subnet.Sn.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetVpcEndpointSubnetAssociation

func GetVpcEndpointSubnetAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcEndpointSubnetAssociationState, opts ...pulumi.ResourceOption) (*VpcEndpointSubnetAssociation, error)

GetVpcEndpointSubnetAssociation gets an existing VpcEndpointSubnetAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcEndpointSubnetAssociation

func NewVpcEndpointSubnetAssociation(ctx *pulumi.Context,
	name string, args *VpcEndpointSubnetAssociationArgs, opts ...pulumi.ResourceOption) (*VpcEndpointSubnetAssociation, error)

NewVpcEndpointSubnetAssociation registers a new resource with the given unique name, arguments, and options.

func (*VpcEndpointSubnetAssociation) ElementType

func (*VpcEndpointSubnetAssociation) ElementType() reflect.Type

func (*VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationOutput

func (i *VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationOutput() VpcEndpointSubnetAssociationOutput

func (*VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationOutputWithContext

func (i *VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationOutput

func (*VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationPtrOutput

func (i *VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationPtrOutput() VpcEndpointSubnetAssociationPtrOutput

func (*VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationPtrOutputWithContext

func (i *VpcEndpointSubnetAssociation) ToVpcEndpointSubnetAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationPtrOutput

type VpcEndpointSubnetAssociationArgs

type VpcEndpointSubnetAssociationArgs struct {
	// The ID of the subnet to be associated with the VPC endpoint.
	SubnetId pulumi.StringInput
	// The ID of the VPC endpoint with which the subnet will be associated.
	VpcEndpointId pulumi.StringInput
}

The set of arguments for constructing a VpcEndpointSubnetAssociation resource.

func (VpcEndpointSubnetAssociationArgs) ElementType

type VpcEndpointSubnetAssociationArray

type VpcEndpointSubnetAssociationArray []VpcEndpointSubnetAssociationInput

func (VpcEndpointSubnetAssociationArray) ElementType

func (VpcEndpointSubnetAssociationArray) ToVpcEndpointSubnetAssociationArrayOutput

func (i VpcEndpointSubnetAssociationArray) ToVpcEndpointSubnetAssociationArrayOutput() VpcEndpointSubnetAssociationArrayOutput

func (VpcEndpointSubnetAssociationArray) ToVpcEndpointSubnetAssociationArrayOutputWithContext

func (i VpcEndpointSubnetAssociationArray) ToVpcEndpointSubnetAssociationArrayOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationArrayOutput

type VpcEndpointSubnetAssociationArrayInput

type VpcEndpointSubnetAssociationArrayInput interface {
	pulumi.Input

	ToVpcEndpointSubnetAssociationArrayOutput() VpcEndpointSubnetAssociationArrayOutput
	ToVpcEndpointSubnetAssociationArrayOutputWithContext(context.Context) VpcEndpointSubnetAssociationArrayOutput
}

VpcEndpointSubnetAssociationArrayInput is an input type that accepts VpcEndpointSubnetAssociationArray and VpcEndpointSubnetAssociationArrayOutput values. You can construct a concrete instance of `VpcEndpointSubnetAssociationArrayInput` via:

VpcEndpointSubnetAssociationArray{ VpcEndpointSubnetAssociationArgs{...} }

type VpcEndpointSubnetAssociationArrayOutput

type VpcEndpointSubnetAssociationArrayOutput struct{ *pulumi.OutputState }

func (VpcEndpointSubnetAssociationArrayOutput) ElementType

func (VpcEndpointSubnetAssociationArrayOutput) Index

func (VpcEndpointSubnetAssociationArrayOutput) ToVpcEndpointSubnetAssociationArrayOutput

func (o VpcEndpointSubnetAssociationArrayOutput) ToVpcEndpointSubnetAssociationArrayOutput() VpcEndpointSubnetAssociationArrayOutput

func (VpcEndpointSubnetAssociationArrayOutput) ToVpcEndpointSubnetAssociationArrayOutputWithContext

func (o VpcEndpointSubnetAssociationArrayOutput) ToVpcEndpointSubnetAssociationArrayOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationArrayOutput

type VpcEndpointSubnetAssociationInput

type VpcEndpointSubnetAssociationInput interface {
	pulumi.Input

	ToVpcEndpointSubnetAssociationOutput() VpcEndpointSubnetAssociationOutput
	ToVpcEndpointSubnetAssociationOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationOutput
}

type VpcEndpointSubnetAssociationMap

type VpcEndpointSubnetAssociationMap map[string]VpcEndpointSubnetAssociationInput

func (VpcEndpointSubnetAssociationMap) ElementType

func (VpcEndpointSubnetAssociationMap) ToVpcEndpointSubnetAssociationMapOutput

func (i VpcEndpointSubnetAssociationMap) ToVpcEndpointSubnetAssociationMapOutput() VpcEndpointSubnetAssociationMapOutput

func (VpcEndpointSubnetAssociationMap) ToVpcEndpointSubnetAssociationMapOutputWithContext

func (i VpcEndpointSubnetAssociationMap) ToVpcEndpointSubnetAssociationMapOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationMapOutput

type VpcEndpointSubnetAssociationMapInput

type VpcEndpointSubnetAssociationMapInput interface {
	pulumi.Input

	ToVpcEndpointSubnetAssociationMapOutput() VpcEndpointSubnetAssociationMapOutput
	ToVpcEndpointSubnetAssociationMapOutputWithContext(context.Context) VpcEndpointSubnetAssociationMapOutput
}

VpcEndpointSubnetAssociationMapInput is an input type that accepts VpcEndpointSubnetAssociationMap and VpcEndpointSubnetAssociationMapOutput values. You can construct a concrete instance of `VpcEndpointSubnetAssociationMapInput` via:

VpcEndpointSubnetAssociationMap{ "key": VpcEndpointSubnetAssociationArgs{...} }

type VpcEndpointSubnetAssociationMapOutput

type VpcEndpointSubnetAssociationMapOutput struct{ *pulumi.OutputState }

func (VpcEndpointSubnetAssociationMapOutput) ElementType

func (VpcEndpointSubnetAssociationMapOutput) MapIndex

func (VpcEndpointSubnetAssociationMapOutput) ToVpcEndpointSubnetAssociationMapOutput

func (o VpcEndpointSubnetAssociationMapOutput) ToVpcEndpointSubnetAssociationMapOutput() VpcEndpointSubnetAssociationMapOutput

func (VpcEndpointSubnetAssociationMapOutput) ToVpcEndpointSubnetAssociationMapOutputWithContext

func (o VpcEndpointSubnetAssociationMapOutput) ToVpcEndpointSubnetAssociationMapOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationMapOutput

type VpcEndpointSubnetAssociationOutput

type VpcEndpointSubnetAssociationOutput struct{ *pulumi.OutputState }

func (VpcEndpointSubnetAssociationOutput) ElementType

func (VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationOutput

func (o VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationOutput() VpcEndpointSubnetAssociationOutput

func (VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationOutputWithContext

func (o VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationOutput

func (VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationPtrOutput

func (o VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationPtrOutput() VpcEndpointSubnetAssociationPtrOutput

func (VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationPtrOutputWithContext

func (o VpcEndpointSubnetAssociationOutput) ToVpcEndpointSubnetAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationPtrOutput

type VpcEndpointSubnetAssociationPtrInput

type VpcEndpointSubnetAssociationPtrInput interface {
	pulumi.Input

	ToVpcEndpointSubnetAssociationPtrOutput() VpcEndpointSubnetAssociationPtrOutput
	ToVpcEndpointSubnetAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationPtrOutput
}

type VpcEndpointSubnetAssociationPtrOutput

type VpcEndpointSubnetAssociationPtrOutput struct{ *pulumi.OutputState }

func (VpcEndpointSubnetAssociationPtrOutput) Elem added in v4.15.0

func (VpcEndpointSubnetAssociationPtrOutput) ElementType

func (VpcEndpointSubnetAssociationPtrOutput) ToVpcEndpointSubnetAssociationPtrOutput

func (o VpcEndpointSubnetAssociationPtrOutput) ToVpcEndpointSubnetAssociationPtrOutput() VpcEndpointSubnetAssociationPtrOutput

func (VpcEndpointSubnetAssociationPtrOutput) ToVpcEndpointSubnetAssociationPtrOutputWithContext

func (o VpcEndpointSubnetAssociationPtrOutput) ToVpcEndpointSubnetAssociationPtrOutputWithContext(ctx context.Context) VpcEndpointSubnetAssociationPtrOutput

type VpcEndpointSubnetAssociationState

type VpcEndpointSubnetAssociationState struct {
	// The ID of the subnet to be associated with the VPC endpoint.
	SubnetId pulumi.StringPtrInput
	// The ID of the VPC endpoint with which the subnet will be associated.
	VpcEndpointId pulumi.StringPtrInput
}

func (VpcEndpointSubnetAssociationState) ElementType

type VpcInput

type VpcInput interface {
	pulumi.Input

	ToVpcOutput() VpcOutput
	ToVpcOutputWithContext(ctx context.Context) VpcOutput
}

type VpcIpv4CidrBlockAssociation

type VpcIpv4CidrBlockAssociation struct {
	pulumi.CustomResourceState

	// The additional IPv4 CIDR block to associate with the VPC.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to associate additional IPv4 CIDR blocks with a VPC.

When a VPC is created, a primary IPv4 CIDR block for the VPC must be specified. The `ec2.VpcIpv4CidrBlockAssociation` resource allows further IPv4 CIDR blocks to be added to the VPC.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcIpv4CidrBlockAssociation(ctx, "secondaryCidr", &ec2.VpcIpv4CidrBlockAssociationArgs{
			VpcId:     main.ID(),
			CidrBlock: pulumi.String("172.2.0.0/16"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_vpc_ipv4_cidr_block_association` can be imported by using the VPC CIDR Association ID, e.g.

```sh

$ pulumi import aws:ec2/vpcIpv4CidrBlockAssociation:VpcIpv4CidrBlockAssociation example vpc-cidr-assoc-xxxxxxxx

```

func GetVpcIpv4CidrBlockAssociation

func GetVpcIpv4CidrBlockAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcIpv4CidrBlockAssociationState, opts ...pulumi.ResourceOption) (*VpcIpv4CidrBlockAssociation, error)

GetVpcIpv4CidrBlockAssociation gets an existing VpcIpv4CidrBlockAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcIpv4CidrBlockAssociation

func NewVpcIpv4CidrBlockAssociation(ctx *pulumi.Context,
	name string, args *VpcIpv4CidrBlockAssociationArgs, opts ...pulumi.ResourceOption) (*VpcIpv4CidrBlockAssociation, error)

NewVpcIpv4CidrBlockAssociation registers a new resource with the given unique name, arguments, and options.

func (*VpcIpv4CidrBlockAssociation) ElementType

func (*VpcIpv4CidrBlockAssociation) ElementType() reflect.Type

func (*VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationOutput

func (i *VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationOutput() VpcIpv4CidrBlockAssociationOutput

func (*VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationOutputWithContext

func (i *VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationOutput

func (*VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationPtrOutput

func (i *VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationPtrOutput() VpcIpv4CidrBlockAssociationPtrOutput

func (*VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext

func (i *VpcIpv4CidrBlockAssociation) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationPtrOutput

type VpcIpv4CidrBlockAssociationArgs

type VpcIpv4CidrBlockAssociationArgs struct {
	// The additional IPv4 CIDR block to associate with the VPC.
	CidrBlock pulumi.StringInput
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcIpv4CidrBlockAssociation resource.

func (VpcIpv4CidrBlockAssociationArgs) ElementType

type VpcIpv4CidrBlockAssociationArray

type VpcIpv4CidrBlockAssociationArray []VpcIpv4CidrBlockAssociationInput

func (VpcIpv4CidrBlockAssociationArray) ElementType

func (VpcIpv4CidrBlockAssociationArray) ToVpcIpv4CidrBlockAssociationArrayOutput

func (i VpcIpv4CidrBlockAssociationArray) ToVpcIpv4CidrBlockAssociationArrayOutput() VpcIpv4CidrBlockAssociationArrayOutput

func (VpcIpv4CidrBlockAssociationArray) ToVpcIpv4CidrBlockAssociationArrayOutputWithContext

func (i VpcIpv4CidrBlockAssociationArray) ToVpcIpv4CidrBlockAssociationArrayOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationArrayOutput

type VpcIpv4CidrBlockAssociationArrayInput

type VpcIpv4CidrBlockAssociationArrayInput interface {
	pulumi.Input

	ToVpcIpv4CidrBlockAssociationArrayOutput() VpcIpv4CidrBlockAssociationArrayOutput
	ToVpcIpv4CidrBlockAssociationArrayOutputWithContext(context.Context) VpcIpv4CidrBlockAssociationArrayOutput
}

VpcIpv4CidrBlockAssociationArrayInput is an input type that accepts VpcIpv4CidrBlockAssociationArray and VpcIpv4CidrBlockAssociationArrayOutput values. You can construct a concrete instance of `VpcIpv4CidrBlockAssociationArrayInput` via:

VpcIpv4CidrBlockAssociationArray{ VpcIpv4CidrBlockAssociationArgs{...} }

type VpcIpv4CidrBlockAssociationArrayOutput

type VpcIpv4CidrBlockAssociationArrayOutput struct{ *pulumi.OutputState }

func (VpcIpv4CidrBlockAssociationArrayOutput) ElementType

func (VpcIpv4CidrBlockAssociationArrayOutput) Index

func (VpcIpv4CidrBlockAssociationArrayOutput) ToVpcIpv4CidrBlockAssociationArrayOutput

func (o VpcIpv4CidrBlockAssociationArrayOutput) ToVpcIpv4CidrBlockAssociationArrayOutput() VpcIpv4CidrBlockAssociationArrayOutput

func (VpcIpv4CidrBlockAssociationArrayOutput) ToVpcIpv4CidrBlockAssociationArrayOutputWithContext

func (o VpcIpv4CidrBlockAssociationArrayOutput) ToVpcIpv4CidrBlockAssociationArrayOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationArrayOutput

type VpcIpv4CidrBlockAssociationInput

type VpcIpv4CidrBlockAssociationInput interface {
	pulumi.Input

	ToVpcIpv4CidrBlockAssociationOutput() VpcIpv4CidrBlockAssociationOutput
	ToVpcIpv4CidrBlockAssociationOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationOutput
}

type VpcIpv4CidrBlockAssociationMap

type VpcIpv4CidrBlockAssociationMap map[string]VpcIpv4CidrBlockAssociationInput

func (VpcIpv4CidrBlockAssociationMap) ElementType

func (VpcIpv4CidrBlockAssociationMap) ToVpcIpv4CidrBlockAssociationMapOutput

func (i VpcIpv4CidrBlockAssociationMap) ToVpcIpv4CidrBlockAssociationMapOutput() VpcIpv4CidrBlockAssociationMapOutput

func (VpcIpv4CidrBlockAssociationMap) ToVpcIpv4CidrBlockAssociationMapOutputWithContext

func (i VpcIpv4CidrBlockAssociationMap) ToVpcIpv4CidrBlockAssociationMapOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationMapOutput

type VpcIpv4CidrBlockAssociationMapInput

type VpcIpv4CidrBlockAssociationMapInput interface {
	pulumi.Input

	ToVpcIpv4CidrBlockAssociationMapOutput() VpcIpv4CidrBlockAssociationMapOutput
	ToVpcIpv4CidrBlockAssociationMapOutputWithContext(context.Context) VpcIpv4CidrBlockAssociationMapOutput
}

VpcIpv4CidrBlockAssociationMapInput is an input type that accepts VpcIpv4CidrBlockAssociationMap and VpcIpv4CidrBlockAssociationMapOutput values. You can construct a concrete instance of `VpcIpv4CidrBlockAssociationMapInput` via:

VpcIpv4CidrBlockAssociationMap{ "key": VpcIpv4CidrBlockAssociationArgs{...} }

type VpcIpv4CidrBlockAssociationMapOutput

type VpcIpv4CidrBlockAssociationMapOutput struct{ *pulumi.OutputState }

func (VpcIpv4CidrBlockAssociationMapOutput) ElementType

func (VpcIpv4CidrBlockAssociationMapOutput) MapIndex

func (VpcIpv4CidrBlockAssociationMapOutput) ToVpcIpv4CidrBlockAssociationMapOutput

func (o VpcIpv4CidrBlockAssociationMapOutput) ToVpcIpv4CidrBlockAssociationMapOutput() VpcIpv4CidrBlockAssociationMapOutput

func (VpcIpv4CidrBlockAssociationMapOutput) ToVpcIpv4CidrBlockAssociationMapOutputWithContext

func (o VpcIpv4CidrBlockAssociationMapOutput) ToVpcIpv4CidrBlockAssociationMapOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationMapOutput

type VpcIpv4CidrBlockAssociationOutput

type VpcIpv4CidrBlockAssociationOutput struct{ *pulumi.OutputState }

func (VpcIpv4CidrBlockAssociationOutput) ElementType

func (VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationOutput

func (o VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationOutput() VpcIpv4CidrBlockAssociationOutput

func (VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationOutputWithContext

func (o VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationOutput

func (VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationPtrOutput

func (o VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationPtrOutput() VpcIpv4CidrBlockAssociationPtrOutput

func (VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext

func (o VpcIpv4CidrBlockAssociationOutput) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationPtrOutput

type VpcIpv4CidrBlockAssociationPtrInput

type VpcIpv4CidrBlockAssociationPtrInput interface {
	pulumi.Input

	ToVpcIpv4CidrBlockAssociationPtrOutput() VpcIpv4CidrBlockAssociationPtrOutput
	ToVpcIpv4CidrBlockAssociationPtrOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationPtrOutput
}

type VpcIpv4CidrBlockAssociationPtrOutput

type VpcIpv4CidrBlockAssociationPtrOutput struct{ *pulumi.OutputState }

func (VpcIpv4CidrBlockAssociationPtrOutput) Elem added in v4.15.0

func (VpcIpv4CidrBlockAssociationPtrOutput) ElementType

func (VpcIpv4CidrBlockAssociationPtrOutput) ToVpcIpv4CidrBlockAssociationPtrOutput

func (o VpcIpv4CidrBlockAssociationPtrOutput) ToVpcIpv4CidrBlockAssociationPtrOutput() VpcIpv4CidrBlockAssociationPtrOutput

func (VpcIpv4CidrBlockAssociationPtrOutput) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext

func (o VpcIpv4CidrBlockAssociationPtrOutput) ToVpcIpv4CidrBlockAssociationPtrOutputWithContext(ctx context.Context) VpcIpv4CidrBlockAssociationPtrOutput

type VpcIpv4CidrBlockAssociationState

type VpcIpv4CidrBlockAssociationState struct {
	// The additional IPv4 CIDR block to associate with the VPC.
	CidrBlock pulumi.StringPtrInput
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringPtrInput
}

func (VpcIpv4CidrBlockAssociationState) ElementType

type VpcMap

type VpcMap map[string]VpcInput

func (VpcMap) ElementType

func (VpcMap) ElementType() reflect.Type

func (VpcMap) ToVpcMapOutput

func (i VpcMap) ToVpcMapOutput() VpcMapOutput

func (VpcMap) ToVpcMapOutputWithContext

func (i VpcMap) ToVpcMapOutputWithContext(ctx context.Context) VpcMapOutput

type VpcMapInput

type VpcMapInput interface {
	pulumi.Input

	ToVpcMapOutput() VpcMapOutput
	ToVpcMapOutputWithContext(context.Context) VpcMapOutput
}

VpcMapInput is an input type that accepts VpcMap and VpcMapOutput values. You can construct a concrete instance of `VpcMapInput` via:

VpcMap{ "key": VpcArgs{...} }

type VpcMapOutput

type VpcMapOutput struct{ *pulumi.OutputState }

func (VpcMapOutput) ElementType

func (VpcMapOutput) ElementType() reflect.Type

func (VpcMapOutput) MapIndex

func (o VpcMapOutput) MapIndex(k pulumi.StringInput) VpcOutput

func (VpcMapOutput) ToVpcMapOutput

func (o VpcMapOutput) ToVpcMapOutput() VpcMapOutput

func (VpcMapOutput) ToVpcMapOutputWithContext

func (o VpcMapOutput) ToVpcMapOutputWithContext(ctx context.Context) VpcMapOutput

type VpcOutput

type VpcOutput struct{ *pulumi.OutputState }

func (VpcOutput) ElementType

func (VpcOutput) ElementType() reflect.Type

func (VpcOutput) ToVpcOutput

func (o VpcOutput) ToVpcOutput() VpcOutput

func (VpcOutput) ToVpcOutputWithContext

func (o VpcOutput) ToVpcOutputWithContext(ctx context.Context) VpcOutput

func (VpcOutput) ToVpcPtrOutput

func (o VpcOutput) ToVpcPtrOutput() VpcPtrOutput

func (VpcOutput) ToVpcPtrOutputWithContext

func (o VpcOutput) ToVpcPtrOutputWithContext(ctx context.Context) VpcPtrOutput

type VpcPeeringConnection

type VpcPeeringConnection struct {
	pulumi.CustomResourceState

	// The status of the VPC Peering Connection request.
	AcceptStatus pulumi.StringOutput `pulumi:"acceptStatus"`
	// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter VpcPeeringConnectionAccepterTypeOutput `pulumi:"accepter"`
	// Accept the peering (both VPCs need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrOutput `pulumi:"autoAccept"`
	// The AWS account ID of the owner of the peer VPC.
	// Defaults to the account ID the [AWS provider](https://www.terraform.io/docs/providers/aws/index.html) is currently connected to.
	PeerOwnerId pulumi.StringOutput `pulumi:"peerOwnerId"`
	// The region of the accepter VPC of the VPC Peering Connection. `autoAccept` must be `false`,
	// and use the `ec2.VpcPeeringConnectionAccepter` to manage the accepter side.
	PeerRegion pulumi.StringOutput `pulumi:"peerRegion"`
	// The ID of the VPC with which you are creating the VPC Peering Connection.
	PeerVpcId pulumi.StringOutput `pulumi:"peerVpcId"`
	// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester VpcPeeringConnectionRequesterOutput `pulumi:"requester"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The ID of the requester VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to manage a VPC peering connection.

> **NOTE on VPC Peering Connections and VPC Peering Connection Options:** This provider provides both a standalone VPC Peering Connection Options and a VPC Peering Connection resource with `accepter` and `requester` attributes. Do not manage options for the same VPC peering connection in both a VPC Peering Connection resource and a VPC Peering Connection Options resource. Doing so will cause a conflict of options and will overwrite the options. Using a VPC Peering Connection Options resource decouples management of the connection options from management of the VPC Peering Connection and allows options to be set correctly in cross-account scenarios.

> **Note:** For cross-account (requester's AWS account differs from the accepter's AWS account) or inter-region VPC Peering Connections use the `ec2.VpcPeeringConnection` resource to manage the requester's side of the connection and use the `ec2.VpcPeeringConnectionAccepter` resource to manage the accepter's side of the connection.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcPeeringConnection(ctx, "foo", &ec2.VpcPeeringConnectionArgs{
			PeerOwnerId: pulumi.Any(_var.Peer_owner_id),
			PeerVpcId:   pulumi.Any(aws_vpc.Bar.Id),
			VpcId:       pulumi.Any(aws_vpc.Foo.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Basic usage with connection options:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpcPeeringConnection(ctx, "foo", &ec2.VpcPeeringConnectionArgs{
			PeerOwnerId: pulumi.Any(_var.Peer_owner_id),
			PeerVpcId:   pulumi.Any(aws_vpc.Bar.Id),
			VpcId:       pulumi.Any(aws_vpc.Foo.Id),
			Accepter: &ec2.VpcPeeringConnectionAccepterArgs{
				AllowRemoteVpcDnsResolution: pulumi.Bool(true),
			},
			Requester: &ec2.VpcPeeringConnectionRequesterArgs{
				AllowRemoteVpcDnsResolution: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Basic usage with tags:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooVpc, err := ec2.NewVpc(ctx, "fooVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		bar, err := ec2.NewVpc(ctx, "bar", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.2.0.0/16"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcPeeringConnection(ctx, "fooVpcPeeringConnection", &ec2.VpcPeeringConnectionArgs{
			PeerOwnerId: pulumi.Any(_var.Peer_owner_id),
			PeerVpcId:   bar.ID(),
			VpcId:       fooVpc.ID(),
			AutoAccept:  pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("VPC Peering between foo and bar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Basic usage with region:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooVpc, err := ec2.NewVpc(ctx, "fooVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		}, pulumi.Provider(aws.Us-west-2))
		if err != nil {
			return err
		}
		bar, err := ec2.NewVpc(ctx, "bar", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.2.0.0/16"),
		}, pulumi.Provider(aws.Us-east-1))
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcPeeringConnection(ctx, "fooVpcPeeringConnection", &ec2.VpcPeeringConnectionArgs{
			PeerOwnerId: pulumi.Any(_var.Peer_owner_id),
			PeerVpcId:   bar.ID(),
			VpcId:       fooVpc.ID(),
			PeerRegion:  pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Notes

If both VPCs are not in the same AWS account do not enable the `autoAccept` attribute. The accepter can manage its side of the connection using the `ec2.VpcPeeringConnectionAccepter` resource or accept the connection manually using the AWS Management Console, AWS CLI, through SDKs, etc.

## Import

VPC Peering resources can be imported using the `vpc peering id`, e.g.

```sh

$ pulumi import aws:ec2/vpcPeeringConnection:VpcPeeringConnection test_connection pcx-111aaa111

```

[1]/docs/providers/aws/index.html

func GetVpcPeeringConnection

func GetVpcPeeringConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcPeeringConnectionState, opts ...pulumi.ResourceOption) (*VpcPeeringConnection, error)

GetVpcPeeringConnection gets an existing VpcPeeringConnection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcPeeringConnection

func NewVpcPeeringConnection(ctx *pulumi.Context,
	name string, args *VpcPeeringConnectionArgs, opts ...pulumi.ResourceOption) (*VpcPeeringConnection, error)

NewVpcPeeringConnection registers a new resource with the given unique name, arguments, and options.

func (*VpcPeeringConnection) ElementType

func (*VpcPeeringConnection) ElementType() reflect.Type

func (*VpcPeeringConnection) ToVpcPeeringConnectionOutput

func (i *VpcPeeringConnection) ToVpcPeeringConnectionOutput() VpcPeeringConnectionOutput

func (*VpcPeeringConnection) ToVpcPeeringConnectionOutputWithContext

func (i *VpcPeeringConnection) ToVpcPeeringConnectionOutputWithContext(ctx context.Context) VpcPeeringConnectionOutput

func (*VpcPeeringConnection) ToVpcPeeringConnectionPtrOutput

func (i *VpcPeeringConnection) ToVpcPeeringConnectionPtrOutput() VpcPeeringConnectionPtrOutput

func (*VpcPeeringConnection) ToVpcPeeringConnectionPtrOutputWithContext

func (i *VpcPeeringConnection) ToVpcPeeringConnectionPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionPtrOutput

type VpcPeeringConnectionAccepter

type VpcPeeringConnectionAccepter struct {
	pulumi.CustomResourceState

	// The status of the VPC Peering Connection request.
	AcceptStatus pulumi.StringOutput `pulumi:"acceptStatus"`
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the accepter VPC.
	Accepter VpcPeeringConnectionAccepterAccepterOutput `pulumi:"accepter"`
	// Whether or not to accept the peering request. Defaults to `false`.
	AutoAccept pulumi.BoolPtrOutput `pulumi:"autoAccept"`
	// The AWS account ID of the owner of the requester VPC.
	PeerOwnerId pulumi.StringOutput `pulumi:"peerOwnerId"`
	// The region of the accepter VPC.
	PeerRegion pulumi.StringOutput `pulumi:"peerRegion"`
	// The ID of the requester VPC.
	PeerVpcId pulumi.StringOutput `pulumi:"peerVpcId"`
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the requester VPC.
	Requester VpcPeeringConnectionAccepterRequesterOutput `pulumi:"requester"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The ID of the accepter VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The VPC Peering Connection ID to manage.
	VpcPeeringConnectionId pulumi.StringOutput `pulumi:"vpcPeeringConnectionId"`
}

Provides a resource to manage the accepter's side of a VPC Peering Connection.

When a cross-account (requester's AWS account differs from the accepter's AWS account) or an inter-region VPC Peering Connection is created, a VPC Peering Connection resource is automatically created in the accepter's account. The requester can use the `ec2.VpcPeeringConnection` resource to manage its side of the connection and the accepter can use the `ec2.VpcPeeringConnectionAccepter` resource to "adopt" its side of the connection into management.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/providers"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := providers.Newaws(ctx, "peer", &providers.awsArgs{
			Region: "us-west-2",
		})
		if err != nil {
			return err
		}
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		peerVpc, err := ec2.NewVpc(ctx, "peerVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		}, pulumi.Provider(aws.Peer))
		if err != nil {
			return err
		}
		peerCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		peerVpcPeeringConnection, err := ec2.NewVpcPeeringConnection(ctx, "peerVpcPeeringConnection", &ec2.VpcPeeringConnectionArgs{
			VpcId:       main.ID(),
			PeerVpcId:   peerVpc.ID(),
			PeerOwnerId: pulumi.String(peerCallerIdentity.AccountId),
			PeerRegion:  pulumi.String("us-west-2"),
			AutoAccept:  pulumi.Bool(false),
			Tags: pulumi.StringMap{
				"Side": pulumi.String("Requester"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpcPeeringConnectionAccepter(ctx, "peerVpcPeeringConnectionAccepter", &ec2.VpcPeeringConnectionAccepterArgs{
			VpcPeeringConnectionId: peerVpcPeeringConnection.ID(),
			AutoAccept:             pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Side": pulumi.String("Accepter"),
			},
		}, pulumi.Provider(aws.Peer))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPC Peering Connection Accepters can be imported by using the Peering Connection ID, e.g.

```sh

$ pulumi import aws:ec2/vpcPeeringConnectionAccepter:VpcPeeringConnectionAccepter example pcx-12345678

```

Certain resource arguments, like `auto_accept`, do not have an EC2 API method for reading the information after peering connection creation. If the argument is set in the provider configuration on an imported resource, this provder will always show a difference. To workaround this behavior, either omit the argument from the configuration or use [`ignoreChanges`](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to hide the difference, e.g. terraform resource "aws_vpc_peering_connection_accepter" "example" {

... other configuration ...

There is no AWS EC2 API for reading auto_accept

lifecycle {

ignore_changes = [auto_accept]

} }

func GetVpcPeeringConnectionAccepter

func GetVpcPeeringConnectionAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcPeeringConnectionAccepterState, opts ...pulumi.ResourceOption) (*VpcPeeringConnectionAccepter, error)

GetVpcPeeringConnectionAccepter gets an existing VpcPeeringConnectionAccepter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcPeeringConnectionAccepter

func NewVpcPeeringConnectionAccepter(ctx *pulumi.Context,
	name string, args *VpcPeeringConnectionAccepterArgs, opts ...pulumi.ResourceOption) (*VpcPeeringConnectionAccepter, error)

NewVpcPeeringConnectionAccepter registers a new resource with the given unique name, arguments, and options.

func (*VpcPeeringConnectionAccepter) ElementType

func (*VpcPeeringConnectionAccepter) ElementType() reflect.Type

func (*VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterOutput

func (i *VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterOutput() VpcPeeringConnectionAccepterOutput

func (*VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterOutputWithContext

func (i *VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterOutput

func (*VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterPtrOutput

func (i *VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterPtrOutput() VpcPeeringConnectionAccepterPtrOutput

func (*VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterPtrOutputWithContext

func (i *VpcPeeringConnectionAccepter) ToVpcPeeringConnectionAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterPtrOutput

type VpcPeeringConnectionAccepterAccepter

type VpcPeeringConnectionAccepterAccepter struct {
	// Indicates whether a local ClassicLink connection can communicate
	// with the peer VPC over the VPC Peering Connection.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Indicates whether a local VPC can resolve public DNS hostnames to
	// private IP addresses when queried from instances in a peer VPC.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Indicates whether a local VPC can communicate with a ClassicLink
	// connection in the peer VPC over the VPC Peering Connection.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type VpcPeeringConnectionAccepterAccepterArgs

type VpcPeeringConnectionAccepterAccepterArgs struct {
	// Indicates whether a local ClassicLink connection can communicate
	// with the peer VPC over the VPC Peering Connection.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Indicates whether a local VPC can resolve public DNS hostnames to
	// private IP addresses when queried from instances in a peer VPC.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Indicates whether a local VPC can communicate with a ClassicLink
	// connection in the peer VPC over the VPC Peering Connection.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (VpcPeeringConnectionAccepterAccepterArgs) ElementType

func (VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterOutput

func (i VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterOutput() VpcPeeringConnectionAccepterAccepterOutput

func (VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterOutputWithContext

func (i VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterAccepterOutput

func (VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterPtrOutput

func (i VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterPtrOutput() VpcPeeringConnectionAccepterAccepterPtrOutput

func (VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext

func (i VpcPeeringConnectionAccepterAccepterArgs) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterAccepterPtrOutput

type VpcPeeringConnectionAccepterAccepterInput

type VpcPeeringConnectionAccepterAccepterInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterAccepterOutput() VpcPeeringConnectionAccepterAccepterOutput
	ToVpcPeeringConnectionAccepterAccepterOutputWithContext(context.Context) VpcPeeringConnectionAccepterAccepterOutput
}

VpcPeeringConnectionAccepterAccepterInput is an input type that accepts VpcPeeringConnectionAccepterAccepterArgs and VpcPeeringConnectionAccepterAccepterOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterAccepterInput` via:

VpcPeeringConnectionAccepterAccepterArgs{...}

type VpcPeeringConnectionAccepterAccepterOutput

type VpcPeeringConnectionAccepterAccepterOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterAccepterOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionAccepterAccepterOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterAccepterOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionAccepterAccepterOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

func (o VpcPeeringConnectionAccepterAccepterOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterAccepterOutput) ElementType

func (VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterOutput

func (o VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterOutput() VpcPeeringConnectionAccepterAccepterOutput

func (VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterOutputWithContext

func (o VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterAccepterOutput

func (VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutput

func (o VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutput() VpcPeeringConnectionAccepterAccepterPtrOutput

func (VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterAccepterOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterAccepterPtrOutput

type VpcPeeringConnectionAccepterAccepterPtrInput

type VpcPeeringConnectionAccepterAccepterPtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterAccepterPtrOutput() VpcPeeringConnectionAccepterAccepterPtrOutput
	ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext(context.Context) VpcPeeringConnectionAccepterAccepterPtrOutput
}

VpcPeeringConnectionAccepterAccepterPtrInput is an input type that accepts VpcPeeringConnectionAccepterAccepterArgs, VpcPeeringConnectionAccepterAccepterPtr and VpcPeeringConnectionAccepterAccepterPtrOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterAccepterPtrInput` via:

        VpcPeeringConnectionAccepterAccepterArgs{...}

or:

        nil

type VpcPeeringConnectionAccepterAccepterPtrOutput

type VpcPeeringConnectionAccepterAccepterPtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterAccepterPtrOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionAccepterAccepterPtrOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterAccepterPtrOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionAccepterAccepterPtrOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

func (o VpcPeeringConnectionAccepterAccepterPtrOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterAccepterPtrOutput) Elem

func (VpcPeeringConnectionAccepterAccepterPtrOutput) ElementType

func (VpcPeeringConnectionAccepterAccepterPtrOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutput

func (o VpcPeeringConnectionAccepterAccepterPtrOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutput() VpcPeeringConnectionAccepterAccepterPtrOutput

func (VpcPeeringConnectionAccepterAccepterPtrOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterAccepterPtrOutput) ToVpcPeeringConnectionAccepterAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterAccepterPtrOutput

type VpcPeeringConnectionAccepterArgs

type VpcPeeringConnectionAccepterArgs struct {
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the accepter VPC.
	Accepter VpcPeeringConnectionAccepterAccepterPtrInput
	// Whether or not to accept the peering request. Defaults to `false`.
	AutoAccept pulumi.BoolPtrInput
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the requester VPC.
	Requester VpcPeeringConnectionAccepterRequesterPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC Peering Connection ID to manage.
	VpcPeeringConnectionId pulumi.StringInput
}

The set of arguments for constructing a VpcPeeringConnectionAccepter resource.

func (VpcPeeringConnectionAccepterArgs) ElementType

type VpcPeeringConnectionAccepterArray

type VpcPeeringConnectionAccepterArray []VpcPeeringConnectionAccepterInput

func (VpcPeeringConnectionAccepterArray) ElementType

func (VpcPeeringConnectionAccepterArray) ToVpcPeeringConnectionAccepterArrayOutput

func (i VpcPeeringConnectionAccepterArray) ToVpcPeeringConnectionAccepterArrayOutput() VpcPeeringConnectionAccepterArrayOutput

func (VpcPeeringConnectionAccepterArray) ToVpcPeeringConnectionAccepterArrayOutputWithContext

func (i VpcPeeringConnectionAccepterArray) ToVpcPeeringConnectionAccepterArrayOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterArrayOutput

type VpcPeeringConnectionAccepterArrayInput

type VpcPeeringConnectionAccepterArrayInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterArrayOutput() VpcPeeringConnectionAccepterArrayOutput
	ToVpcPeeringConnectionAccepterArrayOutputWithContext(context.Context) VpcPeeringConnectionAccepterArrayOutput
}

VpcPeeringConnectionAccepterArrayInput is an input type that accepts VpcPeeringConnectionAccepterArray and VpcPeeringConnectionAccepterArrayOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterArrayInput` via:

VpcPeeringConnectionAccepterArray{ VpcPeeringConnectionAccepterArgs{...} }

type VpcPeeringConnectionAccepterArrayOutput

type VpcPeeringConnectionAccepterArrayOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterArrayOutput) ElementType

func (VpcPeeringConnectionAccepterArrayOutput) Index

func (VpcPeeringConnectionAccepterArrayOutput) ToVpcPeeringConnectionAccepterArrayOutput

func (o VpcPeeringConnectionAccepterArrayOutput) ToVpcPeeringConnectionAccepterArrayOutput() VpcPeeringConnectionAccepterArrayOutput

func (VpcPeeringConnectionAccepterArrayOutput) ToVpcPeeringConnectionAccepterArrayOutputWithContext

func (o VpcPeeringConnectionAccepterArrayOutput) ToVpcPeeringConnectionAccepterArrayOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterArrayOutput

type VpcPeeringConnectionAccepterInput

type VpcPeeringConnectionAccepterInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterOutput() VpcPeeringConnectionAccepterOutput
	ToVpcPeeringConnectionAccepterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterOutput
}

type VpcPeeringConnectionAccepterMap

type VpcPeeringConnectionAccepterMap map[string]VpcPeeringConnectionAccepterInput

func (VpcPeeringConnectionAccepterMap) ElementType

func (VpcPeeringConnectionAccepterMap) ToVpcPeeringConnectionAccepterMapOutput

func (i VpcPeeringConnectionAccepterMap) ToVpcPeeringConnectionAccepterMapOutput() VpcPeeringConnectionAccepterMapOutput

func (VpcPeeringConnectionAccepterMap) ToVpcPeeringConnectionAccepterMapOutputWithContext

func (i VpcPeeringConnectionAccepterMap) ToVpcPeeringConnectionAccepterMapOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterMapOutput

type VpcPeeringConnectionAccepterMapInput

type VpcPeeringConnectionAccepterMapInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterMapOutput() VpcPeeringConnectionAccepterMapOutput
	ToVpcPeeringConnectionAccepterMapOutputWithContext(context.Context) VpcPeeringConnectionAccepterMapOutput
}

VpcPeeringConnectionAccepterMapInput is an input type that accepts VpcPeeringConnectionAccepterMap and VpcPeeringConnectionAccepterMapOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterMapInput` via:

VpcPeeringConnectionAccepterMap{ "key": VpcPeeringConnectionAccepterArgs{...} }

type VpcPeeringConnectionAccepterMapOutput

type VpcPeeringConnectionAccepterMapOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterMapOutput) ElementType

func (VpcPeeringConnectionAccepterMapOutput) MapIndex

func (VpcPeeringConnectionAccepterMapOutput) ToVpcPeeringConnectionAccepterMapOutput

func (o VpcPeeringConnectionAccepterMapOutput) ToVpcPeeringConnectionAccepterMapOutput() VpcPeeringConnectionAccepterMapOutput

func (VpcPeeringConnectionAccepterMapOutput) ToVpcPeeringConnectionAccepterMapOutputWithContext

func (o VpcPeeringConnectionAccepterMapOutput) ToVpcPeeringConnectionAccepterMapOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterMapOutput

type VpcPeeringConnectionAccepterOutput

type VpcPeeringConnectionAccepterOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterOutput) ElementType

func (VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterOutput

func (o VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterOutput() VpcPeeringConnectionAccepterOutput

func (VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterOutputWithContext

func (o VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterOutput

func (VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterPtrOutput

func (o VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterPtrOutput() VpcPeeringConnectionAccepterPtrOutput

func (VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterOutput) ToVpcPeeringConnectionAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterPtrOutput

type VpcPeeringConnectionAccepterPtrInput

type VpcPeeringConnectionAccepterPtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterPtrOutput() VpcPeeringConnectionAccepterPtrOutput
	ToVpcPeeringConnectionAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterPtrOutput
}

type VpcPeeringConnectionAccepterPtrOutput

type VpcPeeringConnectionAccepterPtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterPtrOutput) Elem added in v4.15.0

func (VpcPeeringConnectionAccepterPtrOutput) ElementType

func (VpcPeeringConnectionAccepterPtrOutput) ToVpcPeeringConnectionAccepterPtrOutput

func (o VpcPeeringConnectionAccepterPtrOutput) ToVpcPeeringConnectionAccepterPtrOutput() VpcPeeringConnectionAccepterPtrOutput

func (VpcPeeringConnectionAccepterPtrOutput) ToVpcPeeringConnectionAccepterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterPtrOutput) ToVpcPeeringConnectionAccepterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterPtrOutput

type VpcPeeringConnectionAccepterRequester

type VpcPeeringConnectionAccepterRequester struct {
	// Indicates whether a local ClassicLink connection can communicate
	// with the peer VPC over the VPC Peering Connection.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Indicates whether a local VPC can resolve public DNS hostnames to
	// private IP addresses when queried from instances in a peer VPC.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Indicates whether a local VPC can communicate with a ClassicLink
	// connection in the peer VPC over the VPC Peering Connection.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type VpcPeeringConnectionAccepterRequesterArgs

type VpcPeeringConnectionAccepterRequesterArgs struct {
	// Indicates whether a local ClassicLink connection can communicate
	// with the peer VPC over the VPC Peering Connection.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Indicates whether a local VPC can resolve public DNS hostnames to
	// private IP addresses when queried from instances in a peer VPC.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Indicates whether a local VPC can communicate with a ClassicLink
	// connection in the peer VPC over the VPC Peering Connection.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (VpcPeeringConnectionAccepterRequesterArgs) ElementType

func (VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterOutput

func (i VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterOutput() VpcPeeringConnectionAccepterRequesterOutput

func (VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterOutputWithContext

func (i VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterRequesterOutput

func (VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterPtrOutput

func (i VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterPtrOutput() VpcPeeringConnectionAccepterRequesterPtrOutput

func (VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext

func (i VpcPeeringConnectionAccepterRequesterArgs) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterRequesterPtrOutput

type VpcPeeringConnectionAccepterRequesterInput

type VpcPeeringConnectionAccepterRequesterInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterRequesterOutput() VpcPeeringConnectionAccepterRequesterOutput
	ToVpcPeeringConnectionAccepterRequesterOutputWithContext(context.Context) VpcPeeringConnectionAccepterRequesterOutput
}

VpcPeeringConnectionAccepterRequesterInput is an input type that accepts VpcPeeringConnectionAccepterRequesterArgs and VpcPeeringConnectionAccepterRequesterOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterRequesterInput` via:

VpcPeeringConnectionAccepterRequesterArgs{...}

type VpcPeeringConnectionAccepterRequesterOutput

type VpcPeeringConnectionAccepterRequesterOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterRequesterOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionAccepterRequesterOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterRequesterOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionAccepterRequesterOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

func (o VpcPeeringConnectionAccepterRequesterOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterRequesterOutput) ElementType

func (VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterOutput

func (o VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterOutput() VpcPeeringConnectionAccepterRequesterOutput

func (VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterOutputWithContext

func (o VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterRequesterOutput

func (VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutput

func (o VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutput() VpcPeeringConnectionAccepterRequesterPtrOutput

func (VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterRequesterOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterRequesterPtrOutput

type VpcPeeringConnectionAccepterRequesterPtrInput

type VpcPeeringConnectionAccepterRequesterPtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterRequesterPtrOutput() VpcPeeringConnectionAccepterRequesterPtrOutput
	ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext(context.Context) VpcPeeringConnectionAccepterRequesterPtrOutput
}

VpcPeeringConnectionAccepterRequesterPtrInput is an input type that accepts VpcPeeringConnectionAccepterRequesterArgs, VpcPeeringConnectionAccepterRequesterPtr and VpcPeeringConnectionAccepterRequesterPtrOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterRequesterPtrInput` via:

        VpcPeeringConnectionAccepterRequesterArgs{...}

or:

        nil

type VpcPeeringConnectionAccepterRequesterPtrOutput

type VpcPeeringConnectionAccepterRequesterPtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterRequesterPtrOutput) AllowClassicLinkToRemoteVpc

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterRequesterPtrOutput) AllowRemoteVpcDnsResolution

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC Peering Connection.

func (VpcPeeringConnectionAccepterRequesterPtrOutput) Elem

func (VpcPeeringConnectionAccepterRequesterPtrOutput) ElementType

func (VpcPeeringConnectionAccepterRequesterPtrOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutput

func (o VpcPeeringConnectionAccepterRequesterPtrOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutput() VpcPeeringConnectionAccepterRequesterPtrOutput

func (VpcPeeringConnectionAccepterRequesterPtrOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext

func (o VpcPeeringConnectionAccepterRequesterPtrOutput) ToVpcPeeringConnectionAccepterRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterRequesterPtrOutput

type VpcPeeringConnectionAccepterState

type VpcPeeringConnectionAccepterState struct {
	// The status of the VPC Peering Connection request.
	AcceptStatus pulumi.StringPtrInput
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the accepter VPC.
	Accepter VpcPeeringConnectionAccepterAccepterPtrInput
	// Whether or not to accept the peering request. Defaults to `false`.
	AutoAccept pulumi.BoolPtrInput
	// The AWS account ID of the owner of the requester VPC.
	PeerOwnerId pulumi.StringPtrInput
	// The region of the accepter VPC.
	PeerRegion pulumi.StringPtrInput
	// The ID of the requester VPC.
	PeerVpcId pulumi.StringPtrInput
	// A configuration block that describes [VPC Peering Connection]
	// (https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options set for the requester VPC.
	Requester VpcPeeringConnectionAccepterRequesterPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The ID of the accepter VPC.
	VpcId pulumi.StringPtrInput
	// The VPC Peering Connection ID to manage.
	VpcPeeringConnectionId pulumi.StringPtrInput
}

func (VpcPeeringConnectionAccepterState) ElementType

type VpcPeeringConnectionAccepterType

type VpcPeeringConnectionAccepterType struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC. This is
	// [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for
	// inter-region VPC peering.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type VpcPeeringConnectionAccepterTypeArgs

type VpcPeeringConnectionAccepterTypeArgs struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC. This is
	// [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for
	// inter-region VPC peering.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (VpcPeeringConnectionAccepterTypeArgs) ElementType

func (VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypeOutput

func (i VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypeOutput() VpcPeeringConnectionAccepterTypeOutput

func (VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypeOutputWithContext

func (i VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypeOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterTypeOutput

func (VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypePtrOutput

func (i VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypePtrOutput() VpcPeeringConnectionAccepterTypePtrOutput

func (VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext

func (i VpcPeeringConnectionAccepterTypeArgs) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterTypePtrOutput

type VpcPeeringConnectionAccepterTypeInput

type VpcPeeringConnectionAccepterTypeInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterTypeOutput() VpcPeeringConnectionAccepterTypeOutput
	ToVpcPeeringConnectionAccepterTypeOutputWithContext(context.Context) VpcPeeringConnectionAccepterTypeOutput
}

VpcPeeringConnectionAccepterTypeInput is an input type that accepts VpcPeeringConnectionAccepterTypeArgs and VpcPeeringConnectionAccepterTypeOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterTypeInput` via:

VpcPeeringConnectionAccepterTypeArgs{...}

type VpcPeeringConnectionAccepterTypeOutput

type VpcPeeringConnectionAccepterTypeOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterTypeOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionAccepterTypeOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC.

func (VpcPeeringConnectionAccepterTypeOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionAccepterTypeOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. This is [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for inter-region VPC peering.

func (o VpcPeeringConnectionAccepterTypeOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection.

func (VpcPeeringConnectionAccepterTypeOutput) ElementType

func (VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypeOutput

func (o VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypeOutput() VpcPeeringConnectionAccepterTypeOutput

func (VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypeOutputWithContext

func (o VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypeOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterTypeOutput

func (VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypePtrOutput

func (o VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypePtrOutput() VpcPeeringConnectionAccepterTypePtrOutput

func (VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext

func (o VpcPeeringConnectionAccepterTypeOutput) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterTypePtrOutput

type VpcPeeringConnectionAccepterTypePtrInput

type VpcPeeringConnectionAccepterTypePtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionAccepterTypePtrOutput() VpcPeeringConnectionAccepterTypePtrOutput
	ToVpcPeeringConnectionAccepterTypePtrOutputWithContext(context.Context) VpcPeeringConnectionAccepterTypePtrOutput
}

VpcPeeringConnectionAccepterTypePtrInput is an input type that accepts VpcPeeringConnectionAccepterTypeArgs, VpcPeeringConnectionAccepterTypePtr and VpcPeeringConnectionAccepterTypePtrOutput values. You can construct a concrete instance of `VpcPeeringConnectionAccepterTypePtrInput` via:

        VpcPeeringConnectionAccepterTypeArgs{...}

or:

        nil

type VpcPeeringConnectionAccepterTypePtrOutput

type VpcPeeringConnectionAccepterTypePtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionAccepterTypePtrOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionAccepterTypePtrOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC.

func (VpcPeeringConnectionAccepterTypePtrOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionAccepterTypePtrOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. This is [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for inter-region VPC peering.

func (o VpcPeeringConnectionAccepterTypePtrOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection.

func (VpcPeeringConnectionAccepterTypePtrOutput) Elem

func (VpcPeeringConnectionAccepterTypePtrOutput) ElementType

func (VpcPeeringConnectionAccepterTypePtrOutput) ToVpcPeeringConnectionAccepterTypePtrOutput

func (o VpcPeeringConnectionAccepterTypePtrOutput) ToVpcPeeringConnectionAccepterTypePtrOutput() VpcPeeringConnectionAccepterTypePtrOutput

func (VpcPeeringConnectionAccepterTypePtrOutput) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext

func (o VpcPeeringConnectionAccepterTypePtrOutput) ToVpcPeeringConnectionAccepterTypePtrOutputWithContext(ctx context.Context) VpcPeeringConnectionAccepterTypePtrOutput

type VpcPeeringConnectionArgs

type VpcPeeringConnectionArgs struct {
	// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter VpcPeeringConnectionAccepterTypePtrInput
	// Accept the peering (both VPCs need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrInput
	// The AWS account ID of the owner of the peer VPC.
	// Defaults to the account ID the [AWS provider](https://www.terraform.io/docs/providers/aws/index.html) is currently connected to.
	PeerOwnerId pulumi.StringPtrInput
	// The region of the accepter VPC of the VPC Peering Connection. `autoAccept` must be `false`,
	// and use the `ec2.VpcPeeringConnectionAccepter` to manage the accepter side.
	PeerRegion pulumi.StringPtrInput
	// The ID of the VPC with which you are creating the VPC Peering Connection.
	PeerVpcId pulumi.StringInput
	// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester VpcPeeringConnectionRequesterPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The ID of the requester VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcPeeringConnection resource.

func (VpcPeeringConnectionArgs) ElementType

func (VpcPeeringConnectionArgs) ElementType() reflect.Type

type VpcPeeringConnectionArray

type VpcPeeringConnectionArray []VpcPeeringConnectionInput

func (VpcPeeringConnectionArray) ElementType

func (VpcPeeringConnectionArray) ElementType() reflect.Type

func (VpcPeeringConnectionArray) ToVpcPeeringConnectionArrayOutput

func (i VpcPeeringConnectionArray) ToVpcPeeringConnectionArrayOutput() VpcPeeringConnectionArrayOutput

func (VpcPeeringConnectionArray) ToVpcPeeringConnectionArrayOutputWithContext

func (i VpcPeeringConnectionArray) ToVpcPeeringConnectionArrayOutputWithContext(ctx context.Context) VpcPeeringConnectionArrayOutput

type VpcPeeringConnectionArrayInput

type VpcPeeringConnectionArrayInput interface {
	pulumi.Input

	ToVpcPeeringConnectionArrayOutput() VpcPeeringConnectionArrayOutput
	ToVpcPeeringConnectionArrayOutputWithContext(context.Context) VpcPeeringConnectionArrayOutput
}

VpcPeeringConnectionArrayInput is an input type that accepts VpcPeeringConnectionArray and VpcPeeringConnectionArrayOutput values. You can construct a concrete instance of `VpcPeeringConnectionArrayInput` via:

VpcPeeringConnectionArray{ VpcPeeringConnectionArgs{...} }

type VpcPeeringConnectionArrayOutput

type VpcPeeringConnectionArrayOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionArrayOutput) ElementType

func (VpcPeeringConnectionArrayOutput) Index

func (VpcPeeringConnectionArrayOutput) ToVpcPeeringConnectionArrayOutput

func (o VpcPeeringConnectionArrayOutput) ToVpcPeeringConnectionArrayOutput() VpcPeeringConnectionArrayOutput

func (VpcPeeringConnectionArrayOutput) ToVpcPeeringConnectionArrayOutputWithContext

func (o VpcPeeringConnectionArrayOutput) ToVpcPeeringConnectionArrayOutputWithContext(ctx context.Context) VpcPeeringConnectionArrayOutput

type VpcPeeringConnectionInput

type VpcPeeringConnectionInput interface {
	pulumi.Input

	ToVpcPeeringConnectionOutput() VpcPeeringConnectionOutput
	ToVpcPeeringConnectionOutputWithContext(ctx context.Context) VpcPeeringConnectionOutput
}

type VpcPeeringConnectionMap

type VpcPeeringConnectionMap map[string]VpcPeeringConnectionInput

func (VpcPeeringConnectionMap) ElementType

func (VpcPeeringConnectionMap) ElementType() reflect.Type

func (VpcPeeringConnectionMap) ToVpcPeeringConnectionMapOutput

func (i VpcPeeringConnectionMap) ToVpcPeeringConnectionMapOutput() VpcPeeringConnectionMapOutput

func (VpcPeeringConnectionMap) ToVpcPeeringConnectionMapOutputWithContext

func (i VpcPeeringConnectionMap) ToVpcPeeringConnectionMapOutputWithContext(ctx context.Context) VpcPeeringConnectionMapOutput

type VpcPeeringConnectionMapInput

type VpcPeeringConnectionMapInput interface {
	pulumi.Input

	ToVpcPeeringConnectionMapOutput() VpcPeeringConnectionMapOutput
	ToVpcPeeringConnectionMapOutputWithContext(context.Context) VpcPeeringConnectionMapOutput
}

VpcPeeringConnectionMapInput is an input type that accepts VpcPeeringConnectionMap and VpcPeeringConnectionMapOutput values. You can construct a concrete instance of `VpcPeeringConnectionMapInput` via:

VpcPeeringConnectionMap{ "key": VpcPeeringConnectionArgs{...} }

type VpcPeeringConnectionMapOutput

type VpcPeeringConnectionMapOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionMapOutput) ElementType

func (VpcPeeringConnectionMapOutput) MapIndex

func (VpcPeeringConnectionMapOutput) ToVpcPeeringConnectionMapOutput

func (o VpcPeeringConnectionMapOutput) ToVpcPeeringConnectionMapOutput() VpcPeeringConnectionMapOutput

func (VpcPeeringConnectionMapOutput) ToVpcPeeringConnectionMapOutputWithContext

func (o VpcPeeringConnectionMapOutput) ToVpcPeeringConnectionMapOutputWithContext(ctx context.Context) VpcPeeringConnectionMapOutput

type VpcPeeringConnectionOutput

type VpcPeeringConnectionOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionOutput) ElementType

func (VpcPeeringConnectionOutput) ElementType() reflect.Type

func (VpcPeeringConnectionOutput) ToVpcPeeringConnectionOutput

func (o VpcPeeringConnectionOutput) ToVpcPeeringConnectionOutput() VpcPeeringConnectionOutput

func (VpcPeeringConnectionOutput) ToVpcPeeringConnectionOutputWithContext

func (o VpcPeeringConnectionOutput) ToVpcPeeringConnectionOutputWithContext(ctx context.Context) VpcPeeringConnectionOutput

func (VpcPeeringConnectionOutput) ToVpcPeeringConnectionPtrOutput

func (o VpcPeeringConnectionOutput) ToVpcPeeringConnectionPtrOutput() VpcPeeringConnectionPtrOutput

func (VpcPeeringConnectionOutput) ToVpcPeeringConnectionPtrOutputWithContext

func (o VpcPeeringConnectionOutput) ToVpcPeeringConnectionPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionPtrOutput

type VpcPeeringConnectionPtrInput

type VpcPeeringConnectionPtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionPtrOutput() VpcPeeringConnectionPtrOutput
	ToVpcPeeringConnectionPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionPtrOutput
}

type VpcPeeringConnectionPtrOutput

type VpcPeeringConnectionPtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionPtrOutput) Elem added in v4.15.0

func (VpcPeeringConnectionPtrOutput) ElementType

func (VpcPeeringConnectionPtrOutput) ToVpcPeeringConnectionPtrOutput

func (o VpcPeeringConnectionPtrOutput) ToVpcPeeringConnectionPtrOutput() VpcPeeringConnectionPtrOutput

func (VpcPeeringConnectionPtrOutput) ToVpcPeeringConnectionPtrOutputWithContext

func (o VpcPeeringConnectionPtrOutput) ToVpcPeeringConnectionPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionPtrOutput

type VpcPeeringConnectionRequester

type VpcPeeringConnectionRequester struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC.
	AllowClassicLinkToRemoteVpc *bool `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC. This is
	// [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for
	// inter-region VPC peering.
	AllowRemoteVpcDnsResolution *bool `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection.
	AllowVpcToRemoteClassicLink *bool `pulumi:"allowVpcToRemoteClassicLink"`
}

type VpcPeeringConnectionRequesterArgs

type VpcPeeringConnectionRequesterArgs struct {
	// Allow a local linked EC2-Classic instance to communicate
	// with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection
	// to the remote VPC.
	AllowClassicLinkToRemoteVpc pulumi.BoolPtrInput `pulumi:"allowClassicLinkToRemoteVpc"`
	// Allow a local VPC to resolve public DNS hostnames to
	// private IP addresses when queried from instances in the peer VPC. This is
	// [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for
	// inter-region VPC peering.
	AllowRemoteVpcDnsResolution pulumi.BoolPtrInput `pulumi:"allowRemoteVpcDnsResolution"`
	// Allow a local VPC to communicate with a linked EC2-Classic
	// instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink
	// connection.
	AllowVpcToRemoteClassicLink pulumi.BoolPtrInput `pulumi:"allowVpcToRemoteClassicLink"`
}

func (VpcPeeringConnectionRequesterArgs) ElementType

func (VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterOutput

func (i VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterOutput() VpcPeeringConnectionRequesterOutput

func (VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterOutputWithContext

func (i VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterOutputWithContext(ctx context.Context) VpcPeeringConnectionRequesterOutput

func (VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterPtrOutput

func (i VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterPtrOutput() VpcPeeringConnectionRequesterPtrOutput

func (VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterPtrOutputWithContext

func (i VpcPeeringConnectionRequesterArgs) ToVpcPeeringConnectionRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionRequesterPtrOutput

type VpcPeeringConnectionRequesterInput

type VpcPeeringConnectionRequesterInput interface {
	pulumi.Input

	ToVpcPeeringConnectionRequesterOutput() VpcPeeringConnectionRequesterOutput
	ToVpcPeeringConnectionRequesterOutputWithContext(context.Context) VpcPeeringConnectionRequesterOutput
}

VpcPeeringConnectionRequesterInput is an input type that accepts VpcPeeringConnectionRequesterArgs and VpcPeeringConnectionRequesterOutput values. You can construct a concrete instance of `VpcPeeringConnectionRequesterInput` via:

VpcPeeringConnectionRequesterArgs{...}

type VpcPeeringConnectionRequesterOutput

type VpcPeeringConnectionRequesterOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionRequesterOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionRequesterOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC.

func (VpcPeeringConnectionRequesterOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionRequesterOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. This is [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for inter-region VPC peering.

func (o VpcPeeringConnectionRequesterOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection.

func (VpcPeeringConnectionRequesterOutput) ElementType

func (VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterOutput

func (o VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterOutput() VpcPeeringConnectionRequesterOutput

func (VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterOutputWithContext

func (o VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterOutputWithContext(ctx context.Context) VpcPeeringConnectionRequesterOutput

func (VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterPtrOutput

func (o VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterPtrOutput() VpcPeeringConnectionRequesterPtrOutput

func (VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterPtrOutputWithContext

func (o VpcPeeringConnectionRequesterOutput) ToVpcPeeringConnectionRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionRequesterPtrOutput

type VpcPeeringConnectionRequesterPtrInput

type VpcPeeringConnectionRequesterPtrInput interface {
	pulumi.Input

	ToVpcPeeringConnectionRequesterPtrOutput() VpcPeeringConnectionRequesterPtrOutput
	ToVpcPeeringConnectionRequesterPtrOutputWithContext(context.Context) VpcPeeringConnectionRequesterPtrOutput
}

VpcPeeringConnectionRequesterPtrInput is an input type that accepts VpcPeeringConnectionRequesterArgs, VpcPeeringConnectionRequesterPtr and VpcPeeringConnectionRequesterPtrOutput values. You can construct a concrete instance of `VpcPeeringConnectionRequesterPtrInput` via:

        VpcPeeringConnectionRequesterArgs{...}

or:

        nil

type VpcPeeringConnectionRequesterPtrOutput

type VpcPeeringConnectionRequesterPtrOutput struct{ *pulumi.OutputState }

func (VpcPeeringConnectionRequesterPtrOutput) AllowClassicLinkToRemoteVpc

func (o VpcPeeringConnectionRequesterPtrOutput) AllowClassicLinkToRemoteVpc() pulumi.BoolPtrOutput

Allow a local linked EC2-Classic instance to communicate with instances in a peer VPC. This enables an outbound communication from the local ClassicLink connection to the remote VPC.

func (VpcPeeringConnectionRequesterPtrOutput) AllowRemoteVpcDnsResolution

func (o VpcPeeringConnectionRequesterPtrOutput) AllowRemoteVpcDnsResolution() pulumi.BoolPtrOutput

Allow a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. This is [not supported](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html) for inter-region VPC peering.

func (o VpcPeeringConnectionRequesterPtrOutput) AllowVpcToRemoteClassicLink() pulumi.BoolPtrOutput

Allow a local VPC to communicate with a linked EC2-Classic instance in a peer VPC. This enables an outbound communication from the local VPC to the remote ClassicLink connection.

func (VpcPeeringConnectionRequesterPtrOutput) Elem

func (VpcPeeringConnectionRequesterPtrOutput) ElementType

func (VpcPeeringConnectionRequesterPtrOutput) ToVpcPeeringConnectionRequesterPtrOutput

func (o VpcPeeringConnectionRequesterPtrOutput) ToVpcPeeringConnectionRequesterPtrOutput() VpcPeeringConnectionRequesterPtrOutput

func (VpcPeeringConnectionRequesterPtrOutput) ToVpcPeeringConnectionRequesterPtrOutputWithContext

func (o VpcPeeringConnectionRequesterPtrOutput) ToVpcPeeringConnectionRequesterPtrOutputWithContext(ctx context.Context) VpcPeeringConnectionRequesterPtrOutput

type VpcPeeringConnectionState

type VpcPeeringConnectionState struct {
	// The status of the VPC Peering Connection request.
	AcceptStatus pulumi.StringPtrInput
	// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts
	// the peering connection (a maximum of one).
	Accepter VpcPeeringConnectionAccepterTypePtrInput
	// Accept the peering (both VPCs need to be in the same AWS account).
	AutoAccept pulumi.BoolPtrInput
	// The AWS account ID of the owner of the peer VPC.
	// Defaults to the account ID the [AWS provider](https://www.terraform.io/docs/providers/aws/index.html) is currently connected to.
	PeerOwnerId pulumi.StringPtrInput
	// The region of the accepter VPC of the VPC Peering Connection. `autoAccept` must be `false`,
	// and use the `ec2.VpcPeeringConnectionAccepter` to manage the accepter side.
	PeerRegion pulumi.StringPtrInput
	// The ID of the VPC with which you are creating the VPC Peering Connection.
	PeerVpcId pulumi.StringPtrInput
	// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests
	// the peering connection (a maximum of one).
	Requester VpcPeeringConnectionRequesterPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The ID of the requester VPC.
	VpcId pulumi.StringPtrInput
}

func (VpcPeeringConnectionState) ElementType

func (VpcPeeringConnectionState) ElementType() reflect.Type

type VpcPtrInput

type VpcPtrInput interface {
	pulumi.Input

	ToVpcPtrOutput() VpcPtrOutput
	ToVpcPtrOutputWithContext(ctx context.Context) VpcPtrOutput
}

type VpcPtrOutput

type VpcPtrOutput struct{ *pulumi.OutputState }

func (VpcPtrOutput) Elem added in v4.15.0

func (o VpcPtrOutput) Elem() VpcOutput

func (VpcPtrOutput) ElementType

func (VpcPtrOutput) ElementType() reflect.Type

func (VpcPtrOutput) ToVpcPtrOutput

func (o VpcPtrOutput) ToVpcPtrOutput() VpcPtrOutput

func (VpcPtrOutput) ToVpcPtrOutputWithContext

func (o VpcPtrOutput) ToVpcPtrOutputWithContext(ctx context.Context) VpcPtrOutput

type VpcState

type VpcState struct {
	// Amazon Resource Name (ARN) of VPC
	Arn pulumi.StringPtrInput
	// Requests an Amazon-provided IPv6 CIDR
	// block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or
	// the size of the CIDR block. Default is `false`.
	AssignGeneratedIpv6CidrBlock pulumi.BoolPtrInput
	// The CIDR block for the VPC.
	CidrBlock pulumi.StringPtrInput
	// The ID of the network ACL created by default on VPC creation
	DefaultNetworkAclId pulumi.StringPtrInput
	// The ID of the route table created by default on VPC creation
	DefaultRouteTableId pulumi.StringPtrInput
	// The ID of the security group created by default on VPC creation
	DefaultSecurityGroupId pulumi.StringPtrInput
	DhcpOptionsId          pulumi.StringPtrInput
	// A boolean flag to enable/disable ClassicLink
	// for the VPC. Only valid in regions and accounts that support EC2 Classic.
	// See the [ClassicLink documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) for more information. Defaults false.
	EnableClassiclink pulumi.BoolPtrInput
	// A boolean flag to enable/disable ClassicLink DNS Support for the VPC.
	// Only valid in regions and accounts that support EC2 Classic.
	EnableClassiclinkDnsSupport pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
	EnableDnsHostnames pulumi.BoolPtrInput
	// A boolean flag to enable/disable DNS support in the VPC. Defaults true.
	EnableDnsSupport pulumi.BoolPtrInput
	// A tenancy option for instances launched into the VPC. Default is `default`, which
	// makes your instances shared on the host. Using either of the other options (`dedicated` or `host`) costs at least $2/hr.
	InstanceTenancy pulumi.StringPtrInput
	// The association ID for the IPv6 CIDR block.
	Ipv6AssociationId pulumi.StringPtrInput
	// The IPv6 CIDR block.
	Ipv6CidrBlock pulumi.StringPtrInput
	// The ID of the main route table associated with
	// this VPC. Note that you can change a VPC's main route table by using an
	// `ec2.MainRouteTableAssociation`.
	MainRouteTableId pulumi.StringPtrInput
	// The ID of the AWS account that owns the VPC.
	OwnerId pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (VpcState) ElementType

func (VpcState) ElementType() reflect.Type

type VpnConnection

type VpnConnection struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the VPN Connection.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The configuration information for the VPN connection's customer gateway (in the native XML format).
	CustomerGatewayConfiguration pulumi.StringOutput `pulumi:"customerGatewayConfiguration"`
	// The ID of the customer gateway.
	CustomerGatewayId pulumi.StringOutput `pulumi:"customerGatewayId"`
	// Indicate whether to enable acceleration for the VPN connection. Supports only EC2 Transit Gateway.
	EnableAcceleration pulumi.BoolOutput `pulumi:"enableAcceleration"`
	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv4NetworkCidr pulumi.StringOutput `pulumi:"localIpv4NetworkCidr"`
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv6NetworkCidr pulumi.StringOutput `pulumi:"localIpv6NetworkCidr"`
	// The IPv4 CIDR on the AWS side of the VPN connection.
	RemoteIpv4NetworkCidr pulumi.StringOutput `pulumi:"remoteIpv4NetworkCidr"`
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	RemoteIpv6NetworkCidr pulumi.StringOutput               `pulumi:"remoteIpv6NetworkCidr"`
	Routes                VpnConnectionRouteTypeArrayOutput `pulumi:"routes"`
	// Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don't support BGP.
	StaticRoutesOnly pulumi.BoolOutput `pulumi:"staticRoutesOnly"`
	// Tags to apply to the connection. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// When associated with an EC2 Transit Gateway (`transitGatewayId` argument), the attachment ID. See also the `ec2.Tag` for tagging the EC2 Transit Gateway VPN Attachment.
	TransitGatewayAttachmentId pulumi.StringOutput `pulumi:"transitGatewayAttachmentId"`
	// The ID of the EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrOutput `pulumi:"transitGatewayId"`
	// The public IP address of the first VPN tunnel.
	Tunnel1Address pulumi.StringOutput `pulumi:"tunnel1Address"`
	// The bgp asn number of the first VPN tunnel.
	Tunnel1BgpAsn pulumi.StringOutput `pulumi:"tunnel1BgpAsn"`
	// The bgp holdtime of the first VPN tunnel.
	Tunnel1BgpHoldtime pulumi.IntOutput `pulumi:"tunnel1BgpHoldtime"`
	// The RFC 6890 link-local address of the first VPN tunnel (Customer Gateway Side).
	Tunnel1CgwInsideAddress pulumi.StringOutput `pulumi:"tunnel1CgwInsideAddress"`
	// The action to take after DPD timeout occurs for the first VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel1DpdTimeoutAction pulumi.StringPtrOutput `pulumi:"tunnel1DpdTimeoutAction"`
	// The number of seconds after which a DPD timeout occurs for the first VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel1DpdTimeoutSeconds pulumi.IntPtrOutput `pulumi:"tunnel1DpdTimeoutSeconds"`
	// The IKE versions that are permitted for the first VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel1IkeVersions pulumi.StringArrayOutput `pulumi:"tunnel1IkeVersions"`
	// The CIDR block of the inside IP addresses for the first VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel1InsideCidr pulumi.StringOutput `pulumi:"tunnel1InsideCidr"`
	// The range of inside IPv6 addresses for the first VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel1InsideIpv6Cidr pulumi.StringOutput `pulumi:"tunnel1InsideIpv6Cidr"`
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel1Phase1DhGroupNumbers pulumi.IntArrayOutput `pulumi:"tunnel1Phase1DhGroupNumbers"`
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase1EncryptionAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel1Phase1EncryptionAlgorithms"`
	// One or more integrity algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase1IntegrityAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel1Phase1IntegrityAlgorithms"`
	// The lifetime for phase 1 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel1Phase1LifetimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel1Phase1LifetimeSeconds"`
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel1Phase2DhGroupNumbers pulumi.IntArrayOutput `pulumi:"tunnel1Phase2DhGroupNumbers"`
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase2EncryptionAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel1Phase2EncryptionAlgorithms"`
	// List of one or more integrity algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase2IntegrityAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel1Phase2IntegrityAlgorithms"`
	// The lifetime for phase 2 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel1Phase2LifetimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel1Phase2LifetimeSeconds"`
	// The preshared key of the first VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel1PresharedKey pulumi.StringOutput `pulumi:"tunnel1PresharedKey"`
	// The percentage of the rekey window for the first VPN tunnel (determined by `tunnel1RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel1RekeyFuzzPercentage pulumi.IntPtrOutput `pulumi:"tunnel1RekeyFuzzPercentage"`
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the first VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel1RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel1Phase2LifetimeSeconds`.
	Tunnel1RekeyMarginTimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel1RekeyMarginTimeSeconds"`
	// The number of packets in an IKE replay window for the first VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel1ReplayWindowSize pulumi.IntPtrOutput `pulumi:"tunnel1ReplayWindowSize"`
	// The action to take when the establishing the tunnel for the first VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel1StartupAction pulumi.StringPtrOutput `pulumi:"tunnel1StartupAction"`
	// The RFC 6890 link-local address of the first VPN tunnel (VPN Gateway Side).
	Tunnel1VgwInsideAddress pulumi.StringOutput `pulumi:"tunnel1VgwInsideAddress"`
	// The public IP address of the second VPN tunnel.
	Tunnel2Address pulumi.StringOutput `pulumi:"tunnel2Address"`
	// The bgp asn number of the second VPN tunnel.
	Tunnel2BgpAsn pulumi.StringOutput `pulumi:"tunnel2BgpAsn"`
	// The bgp holdtime of the second VPN tunnel.
	Tunnel2BgpHoldtime pulumi.IntOutput `pulumi:"tunnel2BgpHoldtime"`
	// The RFC 6890 link-local address of the second VPN tunnel (Customer Gateway Side).
	Tunnel2CgwInsideAddress pulumi.StringOutput `pulumi:"tunnel2CgwInsideAddress"`
	// The action to take after DPD timeout occurs for the second VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel2DpdTimeoutAction pulumi.StringPtrOutput `pulumi:"tunnel2DpdTimeoutAction"`
	// The number of seconds after which a DPD timeout occurs for the second VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel2DpdTimeoutSeconds pulumi.IntPtrOutput `pulumi:"tunnel2DpdTimeoutSeconds"`
	// The IKE versions that are permitted for the second VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel2IkeVersions pulumi.StringArrayOutput `pulumi:"tunnel2IkeVersions"`
	// The CIDR block of the inside IP addresses for the second VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel2InsideCidr pulumi.StringOutput `pulumi:"tunnel2InsideCidr"`
	// The range of inside IPv6 addresses for the second VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel2InsideIpv6Cidr pulumi.StringOutput `pulumi:"tunnel2InsideIpv6Cidr"`
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel2Phase1DhGroupNumbers pulumi.IntArrayOutput `pulumi:"tunnel2Phase1DhGroupNumbers"`
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase1EncryptionAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel2Phase1EncryptionAlgorithms"`
	// One or more integrity algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase1IntegrityAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel2Phase1IntegrityAlgorithms"`
	// The lifetime for phase 1 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel2Phase1LifetimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel2Phase1LifetimeSeconds"`
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel2Phase2DhGroupNumbers pulumi.IntArrayOutput `pulumi:"tunnel2Phase2DhGroupNumbers"`
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase2EncryptionAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel2Phase2EncryptionAlgorithms"`
	// List of one or more integrity algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase2IntegrityAlgorithms pulumi.StringArrayOutput `pulumi:"tunnel2Phase2IntegrityAlgorithms"`
	// The lifetime for phase 2 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel2Phase2LifetimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel2Phase2LifetimeSeconds"`
	// The preshared key of the second VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel2PresharedKey pulumi.StringOutput `pulumi:"tunnel2PresharedKey"`
	// The percentage of the rekey window for the second VPN tunnel (determined by `tunnel2RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel2RekeyFuzzPercentage pulumi.IntPtrOutput `pulumi:"tunnel2RekeyFuzzPercentage"`
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the second VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel2RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel2Phase2LifetimeSeconds`.
	Tunnel2RekeyMarginTimeSeconds pulumi.IntPtrOutput `pulumi:"tunnel2RekeyMarginTimeSeconds"`
	// The number of packets in an IKE replay window for the second VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel2ReplayWindowSize pulumi.IntPtrOutput `pulumi:"tunnel2ReplayWindowSize"`
	// The action to take when the establishing the tunnel for the second VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel2StartupAction pulumi.StringPtrOutput `pulumi:"tunnel2StartupAction"`
	// The RFC 6890 link-local address of the second VPN tunnel (VPN Gateway Side).
	Tunnel2VgwInsideAddress pulumi.StringOutput `pulumi:"tunnel2VgwInsideAddress"`
	// Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. Valid values are `ipv4 | ipv6`. `ipv6` Supports only EC2 Transit Gateway.
	TunnelInsideIpVersion pulumi.StringOutput `pulumi:"tunnelInsideIpVersion"`
	// The type of VPN connection. The only type AWS supports at this time is "ipsec.1".
	Type           pulumi.StringOutput                  `pulumi:"type"`
	VgwTelemetries VpnConnectionVgwTelemetryArrayOutput `pulumi:"vgwTelemetries"`
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringPtrOutput `pulumi:"vpnGatewayId"`
}

Manages an EC2 VPN connection. These objects can be connected to customer gateways, and allow you to establish tunnels between your network and Amazon.

> **Note:** The CIDR blocks in the arguments `tunnel1InsideCidr` and `tunnel2InsideCidr` must have a prefix of /30 and be a part of a specific range. [Read more about this in the AWS documentation](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_VpnTunnelOptionsSpecification.html).

## Example Usage ### EC2 Transit Gateway

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "exampleTransitGateway", nil)
		if err != nil {
			return err
		}
		exampleCustomerGateway, err := ec2.NewCustomerGateway(ctx, "exampleCustomerGateway", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.0.0.1"),
			Type:      pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpnConnection(ctx, "exampleVpnConnection", &ec2.VpnConnectionArgs{
			CustomerGatewayId: exampleCustomerGateway.ID(),
			TransitGatewayId:  exampleTransitGateway.ID(),
			Type:              exampleCustomerGateway.Type,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Virtual Private Gateway

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := ec2.NewVpc(ctx, "vpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		vpnGateway, err := ec2.NewVpnGateway(ctx, "vpnGateway", &ec2.VpnGatewayArgs{
			VpcId: vpc.ID(),
		})
		if err != nil {
			return err
		}
		customerGateway, err := ec2.NewCustomerGateway(ctx, "customerGateway", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.0.0.1"),
			Type:      pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpnConnection(ctx, "main", &ec2.VpnConnectionArgs{
			VpnGatewayId:      vpnGateway.ID(),
			CustomerGatewayId: customerGateway.ID(),
			Type:              pulumi.String("ipsec.1"),
			StaticRoutesOnly:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN Connections can be imported using the `vpn connection id`, e.g.

```sh

$ pulumi import aws:ec2/vpnConnection:VpnConnection testvpnconnection vpn-40f41529

```

func GetVpnConnection

func GetVpnConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpnConnectionState, opts ...pulumi.ResourceOption) (*VpnConnection, error)

GetVpnConnection gets an existing VpnConnection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpnConnection

func NewVpnConnection(ctx *pulumi.Context,
	name string, args *VpnConnectionArgs, opts ...pulumi.ResourceOption) (*VpnConnection, error)

NewVpnConnection registers a new resource with the given unique name, arguments, and options.

func (*VpnConnection) ElementType

func (*VpnConnection) ElementType() reflect.Type

func (*VpnConnection) ToVpnConnectionOutput

func (i *VpnConnection) ToVpnConnectionOutput() VpnConnectionOutput

func (*VpnConnection) ToVpnConnectionOutputWithContext

func (i *VpnConnection) ToVpnConnectionOutputWithContext(ctx context.Context) VpnConnectionOutput

func (*VpnConnection) ToVpnConnectionPtrOutput

func (i *VpnConnection) ToVpnConnectionPtrOutput() VpnConnectionPtrOutput

func (*VpnConnection) ToVpnConnectionPtrOutputWithContext

func (i *VpnConnection) ToVpnConnectionPtrOutputWithContext(ctx context.Context) VpnConnectionPtrOutput

type VpnConnectionArgs

type VpnConnectionArgs struct {
	// The ID of the customer gateway.
	CustomerGatewayId pulumi.StringInput
	// Indicate whether to enable acceleration for the VPN connection. Supports only EC2 Transit Gateway.
	EnableAcceleration pulumi.BoolPtrInput
	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv4NetworkCidr pulumi.StringPtrInput
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv6NetworkCidr pulumi.StringPtrInput
	// The IPv4 CIDR on the AWS side of the VPN connection.
	RemoteIpv4NetworkCidr pulumi.StringPtrInput
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	RemoteIpv6NetworkCidr pulumi.StringPtrInput
	// Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don't support BGP.
	StaticRoutesOnly pulumi.BoolPtrInput
	// Tags to apply to the connection. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// The ID of the EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// The action to take after DPD timeout occurs for the first VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel1DpdTimeoutAction pulumi.StringPtrInput
	// The number of seconds after which a DPD timeout occurs for the first VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel1DpdTimeoutSeconds pulumi.IntPtrInput
	// The IKE versions that are permitted for the first VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel1IkeVersions pulumi.StringArrayInput
	// The CIDR block of the inside IP addresses for the first VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel1InsideCidr pulumi.StringPtrInput
	// The range of inside IPv6 addresses for the first VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel1InsideIpv6Cidr pulumi.StringPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel1Phase1DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase1EncryptionAlgorithms pulumi.StringArrayInput
	// One or more integrity algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase1IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 1 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel1Phase1LifetimeSeconds pulumi.IntPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel1Phase2DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase2EncryptionAlgorithms pulumi.StringArrayInput
	// List of one or more integrity algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase2IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 2 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel1Phase2LifetimeSeconds pulumi.IntPtrInput
	// The preshared key of the first VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel1PresharedKey pulumi.StringPtrInput
	// The percentage of the rekey window for the first VPN tunnel (determined by `tunnel1RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel1RekeyFuzzPercentage pulumi.IntPtrInput
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the first VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel1RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel1Phase2LifetimeSeconds`.
	Tunnel1RekeyMarginTimeSeconds pulumi.IntPtrInput
	// The number of packets in an IKE replay window for the first VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel1ReplayWindowSize pulumi.IntPtrInput
	// The action to take when the establishing the tunnel for the first VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel1StartupAction pulumi.StringPtrInput
	// The action to take after DPD timeout occurs for the second VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel2DpdTimeoutAction pulumi.StringPtrInput
	// The number of seconds after which a DPD timeout occurs for the second VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel2DpdTimeoutSeconds pulumi.IntPtrInput
	// The IKE versions that are permitted for the second VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel2IkeVersions pulumi.StringArrayInput
	// The CIDR block of the inside IP addresses for the second VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel2InsideCidr pulumi.StringPtrInput
	// The range of inside IPv6 addresses for the second VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel2InsideIpv6Cidr pulumi.StringPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel2Phase1DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase1EncryptionAlgorithms pulumi.StringArrayInput
	// One or more integrity algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase1IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 1 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel2Phase1LifetimeSeconds pulumi.IntPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel2Phase2DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase2EncryptionAlgorithms pulumi.StringArrayInput
	// List of one or more integrity algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase2IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 2 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel2Phase2LifetimeSeconds pulumi.IntPtrInput
	// The preshared key of the second VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel2PresharedKey pulumi.StringPtrInput
	// The percentage of the rekey window for the second VPN tunnel (determined by `tunnel2RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel2RekeyFuzzPercentage pulumi.IntPtrInput
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the second VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel2RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel2Phase2LifetimeSeconds`.
	Tunnel2RekeyMarginTimeSeconds pulumi.IntPtrInput
	// The number of packets in an IKE replay window for the second VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel2ReplayWindowSize pulumi.IntPtrInput
	// The action to take when the establishing the tunnel for the second VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel2StartupAction pulumi.StringPtrInput
	// Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. Valid values are `ipv4 | ipv6`. `ipv6` Supports only EC2 Transit Gateway.
	TunnelInsideIpVersion pulumi.StringPtrInput
	// The type of VPN connection. The only type AWS supports at this time is "ipsec.1".
	Type pulumi.StringInput
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringPtrInput
}

The set of arguments for constructing a VpnConnection resource.

func (VpnConnectionArgs) ElementType

func (VpnConnectionArgs) ElementType() reflect.Type

type VpnConnectionArray

type VpnConnectionArray []VpnConnectionInput

func (VpnConnectionArray) ElementType

func (VpnConnectionArray) ElementType() reflect.Type

func (VpnConnectionArray) ToVpnConnectionArrayOutput

func (i VpnConnectionArray) ToVpnConnectionArrayOutput() VpnConnectionArrayOutput

func (VpnConnectionArray) ToVpnConnectionArrayOutputWithContext

func (i VpnConnectionArray) ToVpnConnectionArrayOutputWithContext(ctx context.Context) VpnConnectionArrayOutput

type VpnConnectionArrayInput

type VpnConnectionArrayInput interface {
	pulumi.Input

	ToVpnConnectionArrayOutput() VpnConnectionArrayOutput
	ToVpnConnectionArrayOutputWithContext(context.Context) VpnConnectionArrayOutput
}

VpnConnectionArrayInput is an input type that accepts VpnConnectionArray and VpnConnectionArrayOutput values. You can construct a concrete instance of `VpnConnectionArrayInput` via:

VpnConnectionArray{ VpnConnectionArgs{...} }

type VpnConnectionArrayOutput

type VpnConnectionArrayOutput struct{ *pulumi.OutputState }

func (VpnConnectionArrayOutput) ElementType

func (VpnConnectionArrayOutput) ElementType() reflect.Type

func (VpnConnectionArrayOutput) Index

func (VpnConnectionArrayOutput) ToVpnConnectionArrayOutput

func (o VpnConnectionArrayOutput) ToVpnConnectionArrayOutput() VpnConnectionArrayOutput

func (VpnConnectionArrayOutput) ToVpnConnectionArrayOutputWithContext

func (o VpnConnectionArrayOutput) ToVpnConnectionArrayOutputWithContext(ctx context.Context) VpnConnectionArrayOutput

type VpnConnectionInput

type VpnConnectionInput interface {
	pulumi.Input

	ToVpnConnectionOutput() VpnConnectionOutput
	ToVpnConnectionOutputWithContext(ctx context.Context) VpnConnectionOutput
}

type VpnConnectionMap

type VpnConnectionMap map[string]VpnConnectionInput

func (VpnConnectionMap) ElementType

func (VpnConnectionMap) ElementType() reflect.Type

func (VpnConnectionMap) ToVpnConnectionMapOutput

func (i VpnConnectionMap) ToVpnConnectionMapOutput() VpnConnectionMapOutput

func (VpnConnectionMap) ToVpnConnectionMapOutputWithContext

func (i VpnConnectionMap) ToVpnConnectionMapOutputWithContext(ctx context.Context) VpnConnectionMapOutput

type VpnConnectionMapInput

type VpnConnectionMapInput interface {
	pulumi.Input

	ToVpnConnectionMapOutput() VpnConnectionMapOutput
	ToVpnConnectionMapOutputWithContext(context.Context) VpnConnectionMapOutput
}

VpnConnectionMapInput is an input type that accepts VpnConnectionMap and VpnConnectionMapOutput values. You can construct a concrete instance of `VpnConnectionMapInput` via:

VpnConnectionMap{ "key": VpnConnectionArgs{...} }

type VpnConnectionMapOutput

type VpnConnectionMapOutput struct{ *pulumi.OutputState }

func (VpnConnectionMapOutput) ElementType

func (VpnConnectionMapOutput) ElementType() reflect.Type

func (VpnConnectionMapOutput) MapIndex

func (VpnConnectionMapOutput) ToVpnConnectionMapOutput

func (o VpnConnectionMapOutput) ToVpnConnectionMapOutput() VpnConnectionMapOutput

func (VpnConnectionMapOutput) ToVpnConnectionMapOutputWithContext

func (o VpnConnectionMapOutput) ToVpnConnectionMapOutputWithContext(ctx context.Context) VpnConnectionMapOutput

type VpnConnectionOutput

type VpnConnectionOutput struct{ *pulumi.OutputState }

func (VpnConnectionOutput) ElementType

func (VpnConnectionOutput) ElementType() reflect.Type

func (VpnConnectionOutput) ToVpnConnectionOutput

func (o VpnConnectionOutput) ToVpnConnectionOutput() VpnConnectionOutput

func (VpnConnectionOutput) ToVpnConnectionOutputWithContext

func (o VpnConnectionOutput) ToVpnConnectionOutputWithContext(ctx context.Context) VpnConnectionOutput

func (VpnConnectionOutput) ToVpnConnectionPtrOutput

func (o VpnConnectionOutput) ToVpnConnectionPtrOutput() VpnConnectionPtrOutput

func (VpnConnectionOutput) ToVpnConnectionPtrOutputWithContext

func (o VpnConnectionOutput) ToVpnConnectionPtrOutputWithContext(ctx context.Context) VpnConnectionPtrOutput

type VpnConnectionPtrInput

type VpnConnectionPtrInput interface {
	pulumi.Input

	ToVpnConnectionPtrOutput() VpnConnectionPtrOutput
	ToVpnConnectionPtrOutputWithContext(ctx context.Context) VpnConnectionPtrOutput
}

type VpnConnectionPtrOutput

type VpnConnectionPtrOutput struct{ *pulumi.OutputState }

func (VpnConnectionPtrOutput) Elem added in v4.15.0

func (VpnConnectionPtrOutput) ElementType

func (VpnConnectionPtrOutput) ElementType() reflect.Type

func (VpnConnectionPtrOutput) ToVpnConnectionPtrOutput

func (o VpnConnectionPtrOutput) ToVpnConnectionPtrOutput() VpnConnectionPtrOutput

func (VpnConnectionPtrOutput) ToVpnConnectionPtrOutputWithContext

func (o VpnConnectionPtrOutput) ToVpnConnectionPtrOutputWithContext(ctx context.Context) VpnConnectionPtrOutput

type VpnConnectionRoute

type VpnConnectionRoute struct {
	pulumi.CustomResourceState

	// The CIDR block associated with the local subnet of the customer network.
	DestinationCidrBlock pulumi.StringOutput `pulumi:"destinationCidrBlock"`
	// The ID of the VPN connection.
	VpnConnectionId pulumi.StringOutput `pulumi:"vpnConnectionId"`
}

Provides a static route between a VPN connection and a customer gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := ec2.NewVpc(ctx, "vpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		vpnGateway, err := ec2.NewVpnGateway(ctx, "vpnGateway", &ec2.VpnGatewayArgs{
			VpcId: vpc.ID(),
		})
		if err != nil {
			return err
		}
		customerGateway, err := ec2.NewCustomerGateway(ctx, "customerGateway", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.0.0.1"),
			Type:      pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		main, err := ec2.NewVpnConnection(ctx, "main", &ec2.VpnConnectionArgs{
			VpnGatewayId:      vpnGateway.ID(),
			CustomerGatewayId: customerGateway.ID(),
			Type:              pulumi.String("ipsec.1"),
			StaticRoutesOnly:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpnConnectionRoute(ctx, "office", &ec2.VpnConnectionRouteArgs{
			DestinationCidrBlock: pulumi.String("192.168.10.0/24"),
			VpnConnectionId:      main.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetVpnConnectionRoute

func GetVpnConnectionRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpnConnectionRouteState, opts ...pulumi.ResourceOption) (*VpnConnectionRoute, error)

GetVpnConnectionRoute gets an existing VpnConnectionRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpnConnectionRoute

func NewVpnConnectionRoute(ctx *pulumi.Context,
	name string, args *VpnConnectionRouteArgs, opts ...pulumi.ResourceOption) (*VpnConnectionRoute, error)

NewVpnConnectionRoute registers a new resource with the given unique name, arguments, and options.

func (*VpnConnectionRoute) ElementType

func (*VpnConnectionRoute) ElementType() reflect.Type

func (*VpnConnectionRoute) ToVpnConnectionRouteOutput

func (i *VpnConnectionRoute) ToVpnConnectionRouteOutput() VpnConnectionRouteOutput

func (*VpnConnectionRoute) ToVpnConnectionRouteOutputWithContext

func (i *VpnConnectionRoute) ToVpnConnectionRouteOutputWithContext(ctx context.Context) VpnConnectionRouteOutput

func (*VpnConnectionRoute) ToVpnConnectionRoutePtrOutput

func (i *VpnConnectionRoute) ToVpnConnectionRoutePtrOutput() VpnConnectionRoutePtrOutput

func (*VpnConnectionRoute) ToVpnConnectionRoutePtrOutputWithContext

func (i *VpnConnectionRoute) ToVpnConnectionRoutePtrOutputWithContext(ctx context.Context) VpnConnectionRoutePtrOutput

type VpnConnectionRouteArgs

type VpnConnectionRouteArgs struct {
	// The CIDR block associated with the local subnet of the customer network.
	DestinationCidrBlock pulumi.StringInput
	// The ID of the VPN connection.
	VpnConnectionId pulumi.StringInput
}

The set of arguments for constructing a VpnConnectionRoute resource.

func (VpnConnectionRouteArgs) ElementType

func (VpnConnectionRouteArgs) ElementType() reflect.Type

type VpnConnectionRouteArray

type VpnConnectionRouteArray []VpnConnectionRouteInput

func (VpnConnectionRouteArray) ElementType

func (VpnConnectionRouteArray) ElementType() reflect.Type

func (VpnConnectionRouteArray) ToVpnConnectionRouteArrayOutput

func (i VpnConnectionRouteArray) ToVpnConnectionRouteArrayOutput() VpnConnectionRouteArrayOutput

func (VpnConnectionRouteArray) ToVpnConnectionRouteArrayOutputWithContext

func (i VpnConnectionRouteArray) ToVpnConnectionRouteArrayOutputWithContext(ctx context.Context) VpnConnectionRouteArrayOutput

type VpnConnectionRouteArrayInput

type VpnConnectionRouteArrayInput interface {
	pulumi.Input

	ToVpnConnectionRouteArrayOutput() VpnConnectionRouteArrayOutput
	ToVpnConnectionRouteArrayOutputWithContext(context.Context) VpnConnectionRouteArrayOutput
}

VpnConnectionRouteArrayInput is an input type that accepts VpnConnectionRouteArray and VpnConnectionRouteArrayOutput values. You can construct a concrete instance of `VpnConnectionRouteArrayInput` via:

VpnConnectionRouteArray{ VpnConnectionRouteArgs{...} }

type VpnConnectionRouteArrayOutput

type VpnConnectionRouteArrayOutput struct{ *pulumi.OutputState }

func (VpnConnectionRouteArrayOutput) ElementType

func (VpnConnectionRouteArrayOutput) Index

func (VpnConnectionRouteArrayOutput) ToVpnConnectionRouteArrayOutput

func (o VpnConnectionRouteArrayOutput) ToVpnConnectionRouteArrayOutput() VpnConnectionRouteArrayOutput

func (VpnConnectionRouteArrayOutput) ToVpnConnectionRouteArrayOutputWithContext

func (o VpnConnectionRouteArrayOutput) ToVpnConnectionRouteArrayOutputWithContext(ctx context.Context) VpnConnectionRouteArrayOutput

type VpnConnectionRouteInput

type VpnConnectionRouteInput interface {
	pulumi.Input

	ToVpnConnectionRouteOutput() VpnConnectionRouteOutput
	ToVpnConnectionRouteOutputWithContext(ctx context.Context) VpnConnectionRouteOutput
}

type VpnConnectionRouteMap

type VpnConnectionRouteMap map[string]VpnConnectionRouteInput

func (VpnConnectionRouteMap) ElementType

func (VpnConnectionRouteMap) ElementType() reflect.Type

func (VpnConnectionRouteMap) ToVpnConnectionRouteMapOutput

func (i VpnConnectionRouteMap) ToVpnConnectionRouteMapOutput() VpnConnectionRouteMapOutput

func (VpnConnectionRouteMap) ToVpnConnectionRouteMapOutputWithContext

func (i VpnConnectionRouteMap) ToVpnConnectionRouteMapOutputWithContext(ctx context.Context) VpnConnectionRouteMapOutput

type VpnConnectionRouteMapInput

type VpnConnectionRouteMapInput interface {
	pulumi.Input

	ToVpnConnectionRouteMapOutput() VpnConnectionRouteMapOutput
	ToVpnConnectionRouteMapOutputWithContext(context.Context) VpnConnectionRouteMapOutput
}

VpnConnectionRouteMapInput is an input type that accepts VpnConnectionRouteMap and VpnConnectionRouteMapOutput values. You can construct a concrete instance of `VpnConnectionRouteMapInput` via:

VpnConnectionRouteMap{ "key": VpnConnectionRouteArgs{...} }

type VpnConnectionRouteMapOutput

type VpnConnectionRouteMapOutput struct{ *pulumi.OutputState }

func (VpnConnectionRouteMapOutput) ElementType

func (VpnConnectionRouteMapOutput) MapIndex

func (VpnConnectionRouteMapOutput) ToVpnConnectionRouteMapOutput

func (o VpnConnectionRouteMapOutput) ToVpnConnectionRouteMapOutput() VpnConnectionRouteMapOutput

func (VpnConnectionRouteMapOutput) ToVpnConnectionRouteMapOutputWithContext

func (o VpnConnectionRouteMapOutput) ToVpnConnectionRouteMapOutputWithContext(ctx context.Context) VpnConnectionRouteMapOutput

type VpnConnectionRouteOutput

type VpnConnectionRouteOutput struct{ *pulumi.OutputState }

func (VpnConnectionRouteOutput) ElementType

func (VpnConnectionRouteOutput) ElementType() reflect.Type

func (VpnConnectionRouteOutput) ToVpnConnectionRouteOutput

func (o VpnConnectionRouteOutput) ToVpnConnectionRouteOutput() VpnConnectionRouteOutput

func (VpnConnectionRouteOutput) ToVpnConnectionRouteOutputWithContext

func (o VpnConnectionRouteOutput) ToVpnConnectionRouteOutputWithContext(ctx context.Context) VpnConnectionRouteOutput

func (VpnConnectionRouteOutput) ToVpnConnectionRoutePtrOutput

func (o VpnConnectionRouteOutput) ToVpnConnectionRoutePtrOutput() VpnConnectionRoutePtrOutput

func (VpnConnectionRouteOutput) ToVpnConnectionRoutePtrOutputWithContext

func (o VpnConnectionRouteOutput) ToVpnConnectionRoutePtrOutputWithContext(ctx context.Context) VpnConnectionRoutePtrOutput

type VpnConnectionRoutePtrInput

type VpnConnectionRoutePtrInput interface {
	pulumi.Input

	ToVpnConnectionRoutePtrOutput() VpnConnectionRoutePtrOutput
	ToVpnConnectionRoutePtrOutputWithContext(ctx context.Context) VpnConnectionRoutePtrOutput
}

type VpnConnectionRoutePtrOutput

type VpnConnectionRoutePtrOutput struct{ *pulumi.OutputState }

func (VpnConnectionRoutePtrOutput) Elem added in v4.15.0

func (VpnConnectionRoutePtrOutput) ElementType

func (VpnConnectionRoutePtrOutput) ToVpnConnectionRoutePtrOutput

func (o VpnConnectionRoutePtrOutput) ToVpnConnectionRoutePtrOutput() VpnConnectionRoutePtrOutput

func (VpnConnectionRoutePtrOutput) ToVpnConnectionRoutePtrOutputWithContext

func (o VpnConnectionRoutePtrOutput) ToVpnConnectionRoutePtrOutputWithContext(ctx context.Context) VpnConnectionRoutePtrOutput

type VpnConnectionRouteState

type VpnConnectionRouteState struct {
	// The CIDR block associated with the local subnet of the customer network.
	DestinationCidrBlock pulumi.StringPtrInput
	// The ID of the VPN connection.
	VpnConnectionId pulumi.StringPtrInput
}

func (VpnConnectionRouteState) ElementType

func (VpnConnectionRouteState) ElementType() reflect.Type

type VpnConnectionRouteType

type VpnConnectionRouteType struct {
	DestinationCidrBlock *string `pulumi:"destinationCidrBlock"`
	Source               *string `pulumi:"source"`
	State                *string `pulumi:"state"`
}

type VpnConnectionRouteTypeArgs

type VpnConnectionRouteTypeArgs struct {
	DestinationCidrBlock pulumi.StringPtrInput `pulumi:"destinationCidrBlock"`
	Source               pulumi.StringPtrInput `pulumi:"source"`
	State                pulumi.StringPtrInput `pulumi:"state"`
}

func (VpnConnectionRouteTypeArgs) ElementType

func (VpnConnectionRouteTypeArgs) ElementType() reflect.Type

func (VpnConnectionRouteTypeArgs) ToVpnConnectionRouteTypeOutput

func (i VpnConnectionRouteTypeArgs) ToVpnConnectionRouteTypeOutput() VpnConnectionRouteTypeOutput

func (VpnConnectionRouteTypeArgs) ToVpnConnectionRouteTypeOutputWithContext

func (i VpnConnectionRouteTypeArgs) ToVpnConnectionRouteTypeOutputWithContext(ctx context.Context) VpnConnectionRouteTypeOutput

type VpnConnectionRouteTypeArray

type VpnConnectionRouteTypeArray []VpnConnectionRouteTypeInput

func (VpnConnectionRouteTypeArray) ElementType

func (VpnConnectionRouteTypeArray) ToVpnConnectionRouteTypeArrayOutput

func (i VpnConnectionRouteTypeArray) ToVpnConnectionRouteTypeArrayOutput() VpnConnectionRouteTypeArrayOutput

func (VpnConnectionRouteTypeArray) ToVpnConnectionRouteTypeArrayOutputWithContext

func (i VpnConnectionRouteTypeArray) ToVpnConnectionRouteTypeArrayOutputWithContext(ctx context.Context) VpnConnectionRouteTypeArrayOutput

type VpnConnectionRouteTypeArrayInput

type VpnConnectionRouteTypeArrayInput interface {
	pulumi.Input

	ToVpnConnectionRouteTypeArrayOutput() VpnConnectionRouteTypeArrayOutput
	ToVpnConnectionRouteTypeArrayOutputWithContext(context.Context) VpnConnectionRouteTypeArrayOutput
}

VpnConnectionRouteTypeArrayInput is an input type that accepts VpnConnectionRouteTypeArray and VpnConnectionRouteTypeArrayOutput values. You can construct a concrete instance of `VpnConnectionRouteTypeArrayInput` via:

VpnConnectionRouteTypeArray{ VpnConnectionRouteTypeArgs{...} }

type VpnConnectionRouteTypeArrayOutput

type VpnConnectionRouteTypeArrayOutput struct{ *pulumi.OutputState }

func (VpnConnectionRouteTypeArrayOutput) ElementType

func (VpnConnectionRouteTypeArrayOutput) Index

func (VpnConnectionRouteTypeArrayOutput) ToVpnConnectionRouteTypeArrayOutput

func (o VpnConnectionRouteTypeArrayOutput) ToVpnConnectionRouteTypeArrayOutput() VpnConnectionRouteTypeArrayOutput

func (VpnConnectionRouteTypeArrayOutput) ToVpnConnectionRouteTypeArrayOutputWithContext

func (o VpnConnectionRouteTypeArrayOutput) ToVpnConnectionRouteTypeArrayOutputWithContext(ctx context.Context) VpnConnectionRouteTypeArrayOutput

type VpnConnectionRouteTypeInput

type VpnConnectionRouteTypeInput interface {
	pulumi.Input

	ToVpnConnectionRouteTypeOutput() VpnConnectionRouteTypeOutput
	ToVpnConnectionRouteTypeOutputWithContext(context.Context) VpnConnectionRouteTypeOutput
}

VpnConnectionRouteTypeInput is an input type that accepts VpnConnectionRouteTypeArgs and VpnConnectionRouteTypeOutput values. You can construct a concrete instance of `VpnConnectionRouteTypeInput` via:

VpnConnectionRouteTypeArgs{...}

type VpnConnectionRouteTypeOutput

type VpnConnectionRouteTypeOutput struct{ *pulumi.OutputState }

func (VpnConnectionRouteTypeOutput) DestinationCidrBlock

func (o VpnConnectionRouteTypeOutput) DestinationCidrBlock() pulumi.StringPtrOutput

func (VpnConnectionRouteTypeOutput) ElementType

func (VpnConnectionRouteTypeOutput) Source

func (VpnConnectionRouteTypeOutput) State

func (VpnConnectionRouteTypeOutput) ToVpnConnectionRouteTypeOutput

func (o VpnConnectionRouteTypeOutput) ToVpnConnectionRouteTypeOutput() VpnConnectionRouteTypeOutput

func (VpnConnectionRouteTypeOutput) ToVpnConnectionRouteTypeOutputWithContext

func (o VpnConnectionRouteTypeOutput) ToVpnConnectionRouteTypeOutputWithContext(ctx context.Context) VpnConnectionRouteTypeOutput

type VpnConnectionState

type VpnConnectionState struct {
	// Amazon Resource Name (ARN) of the VPN Connection.
	Arn pulumi.StringPtrInput
	// The configuration information for the VPN connection's customer gateway (in the native XML format).
	CustomerGatewayConfiguration pulumi.StringPtrInput
	// The ID of the customer gateway.
	CustomerGatewayId pulumi.StringPtrInput
	// Indicate whether to enable acceleration for the VPN connection. Supports only EC2 Transit Gateway.
	EnableAcceleration pulumi.BoolPtrInput
	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv4NetworkCidr pulumi.StringPtrInput
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv6NetworkCidr pulumi.StringPtrInput
	// The IPv4 CIDR on the AWS side of the VPN connection.
	RemoteIpv4NetworkCidr pulumi.StringPtrInput
	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	RemoteIpv6NetworkCidr pulumi.StringPtrInput
	Routes                VpnConnectionRouteTypeArrayInput
	// Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don't support BGP.
	StaticRoutesOnly pulumi.BoolPtrInput
	// Tags to apply to the connection. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// When associated with an EC2 Transit Gateway (`transitGatewayId` argument), the attachment ID. See also the `ec2.Tag` for tagging the EC2 Transit Gateway VPN Attachment.
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// The ID of the EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// The public IP address of the first VPN tunnel.
	Tunnel1Address pulumi.StringPtrInput
	// The bgp asn number of the first VPN tunnel.
	Tunnel1BgpAsn pulumi.StringPtrInput
	// The bgp holdtime of the first VPN tunnel.
	Tunnel1BgpHoldtime pulumi.IntPtrInput
	// The RFC 6890 link-local address of the first VPN tunnel (Customer Gateway Side).
	Tunnel1CgwInsideAddress pulumi.StringPtrInput
	// The action to take after DPD timeout occurs for the first VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel1DpdTimeoutAction pulumi.StringPtrInput
	// The number of seconds after which a DPD timeout occurs for the first VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel1DpdTimeoutSeconds pulumi.IntPtrInput
	// The IKE versions that are permitted for the first VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel1IkeVersions pulumi.StringArrayInput
	// The CIDR block of the inside IP addresses for the first VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel1InsideCidr pulumi.StringPtrInput
	// The range of inside IPv6 addresses for the first VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel1InsideIpv6Cidr pulumi.StringPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel1Phase1DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase1EncryptionAlgorithms pulumi.StringArrayInput
	// One or more integrity algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase1IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 1 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel1Phase1LifetimeSeconds pulumi.IntPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel1Phase2DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel1Phase2EncryptionAlgorithms pulumi.StringArrayInput
	// List of one or more integrity algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel1Phase2IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 2 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel1Phase2LifetimeSeconds pulumi.IntPtrInput
	// The preshared key of the first VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel1PresharedKey pulumi.StringPtrInput
	// The percentage of the rekey window for the first VPN tunnel (determined by `tunnel1RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel1RekeyFuzzPercentage pulumi.IntPtrInput
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the first VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel1RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel1Phase2LifetimeSeconds`.
	Tunnel1RekeyMarginTimeSeconds pulumi.IntPtrInput
	// The number of packets in an IKE replay window for the first VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel1ReplayWindowSize pulumi.IntPtrInput
	// The action to take when the establishing the tunnel for the first VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel1StartupAction pulumi.StringPtrInput
	// The RFC 6890 link-local address of the first VPN tunnel (VPN Gateway Side).
	Tunnel1VgwInsideAddress pulumi.StringPtrInput
	// The public IP address of the second VPN tunnel.
	Tunnel2Address pulumi.StringPtrInput
	// The bgp asn number of the second VPN tunnel.
	Tunnel2BgpAsn pulumi.StringPtrInput
	// The bgp holdtime of the second VPN tunnel.
	Tunnel2BgpHoldtime pulumi.IntPtrInput
	// The RFC 6890 link-local address of the second VPN tunnel (Customer Gateway Side).
	Tunnel2CgwInsideAddress pulumi.StringPtrInput
	// The action to take after DPD timeout occurs for the second VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
	Tunnel2DpdTimeoutAction pulumi.StringPtrInput
	// The number of seconds after which a DPD timeout occurs for the second VPN tunnel. Valid value is equal or higher than `30`.
	Tunnel2DpdTimeoutSeconds pulumi.IntPtrInput
	// The IKE versions that are permitted for the second VPN tunnel. Valid values are `ikev1 | ikev2`.
	Tunnel2IkeVersions pulumi.StringArrayInput
	// The CIDR block of the inside IP addresses for the second VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
	Tunnel2InsideCidr pulumi.StringPtrInput
	// The range of inside IPv6 addresses for the second VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
	Tunnel2InsideIpv6Cidr pulumi.StringPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `  2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
	Tunnel2Phase1DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase1EncryptionAlgorithms pulumi.StringArrayInput
	// One or more integrity algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase1IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 1 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `28800`.
	Tunnel2Phase1LifetimeSeconds pulumi.IntPtrInput
	// List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
	Tunnel2Phase2DhGroupNumbers pulumi.IntArrayInput
	// List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
	Tunnel2Phase2EncryptionAlgorithms pulumi.StringArrayInput
	// List of one or more integrity algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
	Tunnel2Phase2IntegrityAlgorithms pulumi.StringArrayInput
	// The lifetime for phase 2 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `3600`.
	Tunnel2Phase2LifetimeSeconds pulumi.IntPtrInput
	// The preshared key of the second VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
	Tunnel2PresharedKey pulumi.StringPtrInput
	// The percentage of the rekey window for the second VPN tunnel (determined by `tunnel2RekeyMarginTimeSeconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
	Tunnel2RekeyFuzzPercentage pulumi.IntPtrInput
	// The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the second VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel2RekeyFuzzPercentage`. Valid value is between `60` and half of `tunnel2Phase2LifetimeSeconds`.
	Tunnel2RekeyMarginTimeSeconds pulumi.IntPtrInput
	// The number of packets in an IKE replay window for the second VPN tunnel. Valid value is between `64` and `2048`.
	Tunnel2ReplayWindowSize pulumi.IntPtrInput
	// The action to take when the establishing the tunnel for the second VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
	Tunnel2StartupAction pulumi.StringPtrInput
	// The RFC 6890 link-local address of the second VPN tunnel (VPN Gateway Side).
	Tunnel2VgwInsideAddress pulumi.StringPtrInput
	// Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. Valid values are `ipv4 | ipv6`. `ipv6` Supports only EC2 Transit Gateway.
	TunnelInsideIpVersion pulumi.StringPtrInput
	// The type of VPN connection. The only type AWS supports at this time is "ipsec.1".
	Type           pulumi.StringPtrInput
	VgwTelemetries VpnConnectionVgwTelemetryArrayInput
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringPtrInput
}

func (VpnConnectionState) ElementType

func (VpnConnectionState) ElementType() reflect.Type

type VpnConnectionVgwTelemetry

type VpnConnectionVgwTelemetry struct {
	AcceptedRouteCount *int    `pulumi:"acceptedRouteCount"`
	LastStatusChange   *string `pulumi:"lastStatusChange"`
	OutsideIpAddress   *string `pulumi:"outsideIpAddress"`
	Status             *string `pulumi:"status"`
	StatusMessage      *string `pulumi:"statusMessage"`
}

type VpnConnectionVgwTelemetryArgs

type VpnConnectionVgwTelemetryArgs struct {
	AcceptedRouteCount pulumi.IntPtrInput    `pulumi:"acceptedRouteCount"`
	LastStatusChange   pulumi.StringPtrInput `pulumi:"lastStatusChange"`
	OutsideIpAddress   pulumi.StringPtrInput `pulumi:"outsideIpAddress"`
	Status             pulumi.StringPtrInput `pulumi:"status"`
	StatusMessage      pulumi.StringPtrInput `pulumi:"statusMessage"`
}

func (VpnConnectionVgwTelemetryArgs) ElementType

func (VpnConnectionVgwTelemetryArgs) ToVpnConnectionVgwTelemetryOutput

func (i VpnConnectionVgwTelemetryArgs) ToVpnConnectionVgwTelemetryOutput() VpnConnectionVgwTelemetryOutput

func (VpnConnectionVgwTelemetryArgs) ToVpnConnectionVgwTelemetryOutputWithContext

func (i VpnConnectionVgwTelemetryArgs) ToVpnConnectionVgwTelemetryOutputWithContext(ctx context.Context) VpnConnectionVgwTelemetryOutput

type VpnConnectionVgwTelemetryArray

type VpnConnectionVgwTelemetryArray []VpnConnectionVgwTelemetryInput

func (VpnConnectionVgwTelemetryArray) ElementType

func (VpnConnectionVgwTelemetryArray) ToVpnConnectionVgwTelemetryArrayOutput

func (i VpnConnectionVgwTelemetryArray) ToVpnConnectionVgwTelemetryArrayOutput() VpnConnectionVgwTelemetryArrayOutput

func (VpnConnectionVgwTelemetryArray) ToVpnConnectionVgwTelemetryArrayOutputWithContext

func (i VpnConnectionVgwTelemetryArray) ToVpnConnectionVgwTelemetryArrayOutputWithContext(ctx context.Context) VpnConnectionVgwTelemetryArrayOutput

type VpnConnectionVgwTelemetryArrayInput

type VpnConnectionVgwTelemetryArrayInput interface {
	pulumi.Input

	ToVpnConnectionVgwTelemetryArrayOutput() VpnConnectionVgwTelemetryArrayOutput
	ToVpnConnectionVgwTelemetryArrayOutputWithContext(context.Context) VpnConnectionVgwTelemetryArrayOutput
}

VpnConnectionVgwTelemetryArrayInput is an input type that accepts VpnConnectionVgwTelemetryArray and VpnConnectionVgwTelemetryArrayOutput values. You can construct a concrete instance of `VpnConnectionVgwTelemetryArrayInput` via:

VpnConnectionVgwTelemetryArray{ VpnConnectionVgwTelemetryArgs{...} }

type VpnConnectionVgwTelemetryArrayOutput

type VpnConnectionVgwTelemetryArrayOutput struct{ *pulumi.OutputState }

func (VpnConnectionVgwTelemetryArrayOutput) ElementType

func (VpnConnectionVgwTelemetryArrayOutput) Index

func (VpnConnectionVgwTelemetryArrayOutput) ToVpnConnectionVgwTelemetryArrayOutput

func (o VpnConnectionVgwTelemetryArrayOutput) ToVpnConnectionVgwTelemetryArrayOutput() VpnConnectionVgwTelemetryArrayOutput

func (VpnConnectionVgwTelemetryArrayOutput) ToVpnConnectionVgwTelemetryArrayOutputWithContext

func (o VpnConnectionVgwTelemetryArrayOutput) ToVpnConnectionVgwTelemetryArrayOutputWithContext(ctx context.Context) VpnConnectionVgwTelemetryArrayOutput

type VpnConnectionVgwTelemetryInput

type VpnConnectionVgwTelemetryInput interface {
	pulumi.Input

	ToVpnConnectionVgwTelemetryOutput() VpnConnectionVgwTelemetryOutput
	ToVpnConnectionVgwTelemetryOutputWithContext(context.Context) VpnConnectionVgwTelemetryOutput
}

VpnConnectionVgwTelemetryInput is an input type that accepts VpnConnectionVgwTelemetryArgs and VpnConnectionVgwTelemetryOutput values. You can construct a concrete instance of `VpnConnectionVgwTelemetryInput` via:

VpnConnectionVgwTelemetryArgs{...}

type VpnConnectionVgwTelemetryOutput

type VpnConnectionVgwTelemetryOutput struct{ *pulumi.OutputState }

func (VpnConnectionVgwTelemetryOutput) AcceptedRouteCount

func (o VpnConnectionVgwTelemetryOutput) AcceptedRouteCount() pulumi.IntPtrOutput

func (VpnConnectionVgwTelemetryOutput) ElementType

func (VpnConnectionVgwTelemetryOutput) LastStatusChange

func (VpnConnectionVgwTelemetryOutput) OutsideIpAddress

func (VpnConnectionVgwTelemetryOutput) Status

func (VpnConnectionVgwTelemetryOutput) StatusMessage

func (VpnConnectionVgwTelemetryOutput) ToVpnConnectionVgwTelemetryOutput

func (o VpnConnectionVgwTelemetryOutput) ToVpnConnectionVgwTelemetryOutput() VpnConnectionVgwTelemetryOutput

func (VpnConnectionVgwTelemetryOutput) ToVpnConnectionVgwTelemetryOutputWithContext

func (o VpnConnectionVgwTelemetryOutput) ToVpnConnectionVgwTelemetryOutputWithContext(ctx context.Context) VpnConnectionVgwTelemetryOutput

type VpnGateway

type VpnGateway struct {
	pulumi.CustomResourceState

	// The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don't specify an ASN, the virtual private gateway is created with the default ASN.
	AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"`
	// Amazon Resource Name (ARN) of the VPN Gateway.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The Availability Zone for the virtual private gateway.
	AvailabilityZone pulumi.StringPtrOutput `pulumi:"availabilityZone"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The VPC ID to create in.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource to create a VPC VPN Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpnGateway(ctx, "vpnGw", &ec2.VpnGatewayArgs{
			VpcId: pulumi.Any(aws_vpc.Main.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("main"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN Gateways can be imported using the `vpn gateway id`, e.g.

```sh

$ pulumi import aws:ec2/vpnGateway:VpnGateway testvpngateway vgw-9a4cacf3

```

func GetVpnGateway

func GetVpnGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpnGatewayState, opts ...pulumi.ResourceOption) (*VpnGateway, error)

GetVpnGateway gets an existing VpnGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpnGateway

func NewVpnGateway(ctx *pulumi.Context,
	name string, args *VpnGatewayArgs, opts ...pulumi.ResourceOption) (*VpnGateway, error)

NewVpnGateway registers a new resource with the given unique name, arguments, and options.

func (*VpnGateway) ElementType

func (*VpnGateway) ElementType() reflect.Type

func (*VpnGateway) ToVpnGatewayOutput

func (i *VpnGateway) ToVpnGatewayOutput() VpnGatewayOutput

func (*VpnGateway) ToVpnGatewayOutputWithContext

func (i *VpnGateway) ToVpnGatewayOutputWithContext(ctx context.Context) VpnGatewayOutput

func (*VpnGateway) ToVpnGatewayPtrOutput

func (i *VpnGateway) ToVpnGatewayPtrOutput() VpnGatewayPtrOutput

func (*VpnGateway) ToVpnGatewayPtrOutputWithContext

func (i *VpnGateway) ToVpnGatewayPtrOutputWithContext(ctx context.Context) VpnGatewayPtrOutput

type VpnGatewayArgs

type VpnGatewayArgs struct {
	// The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don't specify an ASN, the virtual private gateway is created with the default ASN.
	AmazonSideAsn pulumi.StringPtrInput
	// The Availability Zone for the virtual private gateway.
	AvailabilityZone pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a VpnGateway resource.

func (VpnGatewayArgs) ElementType

func (VpnGatewayArgs) ElementType() reflect.Type

type VpnGatewayArray

type VpnGatewayArray []VpnGatewayInput

func (VpnGatewayArray) ElementType

func (VpnGatewayArray) ElementType() reflect.Type

func (VpnGatewayArray) ToVpnGatewayArrayOutput

func (i VpnGatewayArray) ToVpnGatewayArrayOutput() VpnGatewayArrayOutput

func (VpnGatewayArray) ToVpnGatewayArrayOutputWithContext

func (i VpnGatewayArray) ToVpnGatewayArrayOutputWithContext(ctx context.Context) VpnGatewayArrayOutput

type VpnGatewayArrayInput

type VpnGatewayArrayInput interface {
	pulumi.Input

	ToVpnGatewayArrayOutput() VpnGatewayArrayOutput
	ToVpnGatewayArrayOutputWithContext(context.Context) VpnGatewayArrayOutput
}

VpnGatewayArrayInput is an input type that accepts VpnGatewayArray and VpnGatewayArrayOutput values. You can construct a concrete instance of `VpnGatewayArrayInput` via:

VpnGatewayArray{ VpnGatewayArgs{...} }

type VpnGatewayArrayOutput

type VpnGatewayArrayOutput struct{ *pulumi.OutputState }

func (VpnGatewayArrayOutput) ElementType

func (VpnGatewayArrayOutput) ElementType() reflect.Type

func (VpnGatewayArrayOutput) Index

func (VpnGatewayArrayOutput) ToVpnGatewayArrayOutput

func (o VpnGatewayArrayOutput) ToVpnGatewayArrayOutput() VpnGatewayArrayOutput

func (VpnGatewayArrayOutput) ToVpnGatewayArrayOutputWithContext

func (o VpnGatewayArrayOutput) ToVpnGatewayArrayOutputWithContext(ctx context.Context) VpnGatewayArrayOutput

type VpnGatewayAttachment

type VpnGatewayAttachment struct {
	pulumi.CustomResourceState

	// The ID of the VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringOutput `pulumi:"vpnGatewayId"`
}

Provides a Virtual Private Gateway attachment resource, allowing for an existing hardware VPN gateway to be attached and/or detached from a VPC.

> **Note:** The `ec2.VpnGateway` resource can also automatically attach the Virtual Private Gateway it creates to an existing VPC by setting the `vpcId` attribute accordingly.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network, err := ec2.NewVpc(ctx, "network", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		vpn, err := ec2.NewVpnGateway(ctx, "vpn", &ec2.VpnGatewayArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example-vpn-gateway"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ec2.NewVpnGatewayAttachment(ctx, "vpnAttachment", &ec2.VpnGatewayAttachmentArgs{
			VpcId:        network.ID(),
			VpnGatewayId: vpn.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

See [Virtual Private Cloud](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Introduction.html) and [Virtual Private Gateway](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) user guides for more information.

## Import

This resource does not support importing.

func GetVpnGatewayAttachment

func GetVpnGatewayAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpnGatewayAttachmentState, opts ...pulumi.ResourceOption) (*VpnGatewayAttachment, error)

GetVpnGatewayAttachment gets an existing VpnGatewayAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpnGatewayAttachment

func NewVpnGatewayAttachment(ctx *pulumi.Context,
	name string, args *VpnGatewayAttachmentArgs, opts ...pulumi.ResourceOption) (*VpnGatewayAttachment, error)

NewVpnGatewayAttachment registers a new resource with the given unique name, arguments, and options.

func (*VpnGatewayAttachment) ElementType

func (*VpnGatewayAttachment) ElementType() reflect.Type

func (*VpnGatewayAttachment) ToVpnGatewayAttachmentOutput

func (i *VpnGatewayAttachment) ToVpnGatewayAttachmentOutput() VpnGatewayAttachmentOutput

func (*VpnGatewayAttachment) ToVpnGatewayAttachmentOutputWithContext

func (i *VpnGatewayAttachment) ToVpnGatewayAttachmentOutputWithContext(ctx context.Context) VpnGatewayAttachmentOutput

func (*VpnGatewayAttachment) ToVpnGatewayAttachmentPtrOutput

func (i *VpnGatewayAttachment) ToVpnGatewayAttachmentPtrOutput() VpnGatewayAttachmentPtrOutput

func (*VpnGatewayAttachment) ToVpnGatewayAttachmentPtrOutputWithContext

func (i *VpnGatewayAttachment) ToVpnGatewayAttachmentPtrOutputWithContext(ctx context.Context) VpnGatewayAttachmentPtrOutput

type VpnGatewayAttachmentArgs

type VpnGatewayAttachmentArgs struct {
	// The ID of the VPC.
	VpcId pulumi.StringInput
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringInput
}

The set of arguments for constructing a VpnGatewayAttachment resource.

func (VpnGatewayAttachmentArgs) ElementType

func (VpnGatewayAttachmentArgs) ElementType() reflect.Type

type VpnGatewayAttachmentArray

type VpnGatewayAttachmentArray []VpnGatewayAttachmentInput

func (VpnGatewayAttachmentArray) ElementType

func (VpnGatewayAttachmentArray) ElementType() reflect.Type

func (VpnGatewayAttachmentArray) ToVpnGatewayAttachmentArrayOutput

func (i VpnGatewayAttachmentArray) ToVpnGatewayAttachmentArrayOutput() VpnGatewayAttachmentArrayOutput

func (VpnGatewayAttachmentArray) ToVpnGatewayAttachmentArrayOutputWithContext

func (i VpnGatewayAttachmentArray) ToVpnGatewayAttachmentArrayOutputWithContext(ctx context.Context) VpnGatewayAttachmentArrayOutput

type VpnGatewayAttachmentArrayInput

type VpnGatewayAttachmentArrayInput interface {
	pulumi.Input

	ToVpnGatewayAttachmentArrayOutput() VpnGatewayAttachmentArrayOutput
	ToVpnGatewayAttachmentArrayOutputWithContext(context.Context) VpnGatewayAttachmentArrayOutput
}

VpnGatewayAttachmentArrayInput is an input type that accepts VpnGatewayAttachmentArray and VpnGatewayAttachmentArrayOutput values. You can construct a concrete instance of `VpnGatewayAttachmentArrayInput` via:

VpnGatewayAttachmentArray{ VpnGatewayAttachmentArgs{...} }

type VpnGatewayAttachmentArrayOutput

type VpnGatewayAttachmentArrayOutput struct{ *pulumi.OutputState }

func (VpnGatewayAttachmentArrayOutput) ElementType

func (VpnGatewayAttachmentArrayOutput) Index

func (VpnGatewayAttachmentArrayOutput) ToVpnGatewayAttachmentArrayOutput

func (o VpnGatewayAttachmentArrayOutput) ToVpnGatewayAttachmentArrayOutput() VpnGatewayAttachmentArrayOutput

func (VpnGatewayAttachmentArrayOutput) ToVpnGatewayAttachmentArrayOutputWithContext

func (o VpnGatewayAttachmentArrayOutput) ToVpnGatewayAttachmentArrayOutputWithContext(ctx context.Context) VpnGatewayAttachmentArrayOutput

type VpnGatewayAttachmentInput

type VpnGatewayAttachmentInput interface {
	pulumi.Input

	ToVpnGatewayAttachmentOutput() VpnGatewayAttachmentOutput
	ToVpnGatewayAttachmentOutputWithContext(ctx context.Context) VpnGatewayAttachmentOutput
}

type VpnGatewayAttachmentMap

type VpnGatewayAttachmentMap map[string]VpnGatewayAttachmentInput

func (VpnGatewayAttachmentMap) ElementType

func (VpnGatewayAttachmentMap) ElementType() reflect.Type

func (VpnGatewayAttachmentMap) ToVpnGatewayAttachmentMapOutput

func (i VpnGatewayAttachmentMap) ToVpnGatewayAttachmentMapOutput() VpnGatewayAttachmentMapOutput

func (VpnGatewayAttachmentMap) ToVpnGatewayAttachmentMapOutputWithContext

func (i VpnGatewayAttachmentMap) ToVpnGatewayAttachmentMapOutputWithContext(ctx context.Context) VpnGatewayAttachmentMapOutput

type VpnGatewayAttachmentMapInput

type VpnGatewayAttachmentMapInput interface {
	pulumi.Input

	ToVpnGatewayAttachmentMapOutput() VpnGatewayAttachmentMapOutput
	ToVpnGatewayAttachmentMapOutputWithContext(context.Context) VpnGatewayAttachmentMapOutput
}

VpnGatewayAttachmentMapInput is an input type that accepts VpnGatewayAttachmentMap and VpnGatewayAttachmentMapOutput values. You can construct a concrete instance of `VpnGatewayAttachmentMapInput` via:

VpnGatewayAttachmentMap{ "key": VpnGatewayAttachmentArgs{...} }

type VpnGatewayAttachmentMapOutput

type VpnGatewayAttachmentMapOutput struct{ *pulumi.OutputState }

func (VpnGatewayAttachmentMapOutput) ElementType

func (VpnGatewayAttachmentMapOutput) MapIndex

func (VpnGatewayAttachmentMapOutput) ToVpnGatewayAttachmentMapOutput

func (o VpnGatewayAttachmentMapOutput) ToVpnGatewayAttachmentMapOutput() VpnGatewayAttachmentMapOutput

func (VpnGatewayAttachmentMapOutput) ToVpnGatewayAttachmentMapOutputWithContext

func (o VpnGatewayAttachmentMapOutput) ToVpnGatewayAttachmentMapOutputWithContext(ctx context.Context) VpnGatewayAttachmentMapOutput

type VpnGatewayAttachmentOutput

type VpnGatewayAttachmentOutput struct{ *pulumi.OutputState }

func (VpnGatewayAttachmentOutput) ElementType

func (VpnGatewayAttachmentOutput) ElementType() reflect.Type

func (VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentOutput

func (o VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentOutput() VpnGatewayAttachmentOutput

func (VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentOutputWithContext

func (o VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentOutputWithContext(ctx context.Context) VpnGatewayAttachmentOutput

func (VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentPtrOutput

func (o VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentPtrOutput() VpnGatewayAttachmentPtrOutput

func (VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentPtrOutputWithContext

func (o VpnGatewayAttachmentOutput) ToVpnGatewayAttachmentPtrOutputWithContext(ctx context.Context) VpnGatewayAttachmentPtrOutput

type VpnGatewayAttachmentPtrInput

type VpnGatewayAttachmentPtrInput interface {
	pulumi.Input

	ToVpnGatewayAttachmentPtrOutput() VpnGatewayAttachmentPtrOutput
	ToVpnGatewayAttachmentPtrOutputWithContext(ctx context.Context) VpnGatewayAttachmentPtrOutput
}

type VpnGatewayAttachmentPtrOutput

type VpnGatewayAttachmentPtrOutput struct{ *pulumi.OutputState }

func (VpnGatewayAttachmentPtrOutput) Elem added in v4.15.0

func (VpnGatewayAttachmentPtrOutput) ElementType

func (VpnGatewayAttachmentPtrOutput) ToVpnGatewayAttachmentPtrOutput

func (o VpnGatewayAttachmentPtrOutput) ToVpnGatewayAttachmentPtrOutput() VpnGatewayAttachmentPtrOutput

func (VpnGatewayAttachmentPtrOutput) ToVpnGatewayAttachmentPtrOutputWithContext

func (o VpnGatewayAttachmentPtrOutput) ToVpnGatewayAttachmentPtrOutputWithContext(ctx context.Context) VpnGatewayAttachmentPtrOutput

type VpnGatewayAttachmentState

type VpnGatewayAttachmentState struct {
	// The ID of the VPC.
	VpcId pulumi.StringPtrInput
	// The ID of the Virtual Private Gateway.
	VpnGatewayId pulumi.StringPtrInput
}

func (VpnGatewayAttachmentState) ElementType

func (VpnGatewayAttachmentState) ElementType() reflect.Type

type VpnGatewayInput

type VpnGatewayInput interface {
	pulumi.Input

	ToVpnGatewayOutput() VpnGatewayOutput
	ToVpnGatewayOutputWithContext(ctx context.Context) VpnGatewayOutput
}

type VpnGatewayMap

type VpnGatewayMap map[string]VpnGatewayInput

func (VpnGatewayMap) ElementType

func (VpnGatewayMap) ElementType() reflect.Type

func (VpnGatewayMap) ToVpnGatewayMapOutput

func (i VpnGatewayMap) ToVpnGatewayMapOutput() VpnGatewayMapOutput

func (VpnGatewayMap) ToVpnGatewayMapOutputWithContext

func (i VpnGatewayMap) ToVpnGatewayMapOutputWithContext(ctx context.Context) VpnGatewayMapOutput

type VpnGatewayMapInput

type VpnGatewayMapInput interface {
	pulumi.Input

	ToVpnGatewayMapOutput() VpnGatewayMapOutput
	ToVpnGatewayMapOutputWithContext(context.Context) VpnGatewayMapOutput
}

VpnGatewayMapInput is an input type that accepts VpnGatewayMap and VpnGatewayMapOutput values. You can construct a concrete instance of `VpnGatewayMapInput` via:

VpnGatewayMap{ "key": VpnGatewayArgs{...} }

type VpnGatewayMapOutput

type VpnGatewayMapOutput struct{ *pulumi.OutputState }

func (VpnGatewayMapOutput) ElementType

func (VpnGatewayMapOutput) ElementType() reflect.Type

func (VpnGatewayMapOutput) MapIndex

func (VpnGatewayMapOutput) ToVpnGatewayMapOutput

func (o VpnGatewayMapOutput) ToVpnGatewayMapOutput() VpnGatewayMapOutput

func (VpnGatewayMapOutput) ToVpnGatewayMapOutputWithContext

func (o VpnGatewayMapOutput) ToVpnGatewayMapOutputWithContext(ctx context.Context) VpnGatewayMapOutput

type VpnGatewayOutput

type VpnGatewayOutput struct{ *pulumi.OutputState }

func (VpnGatewayOutput) ElementType

func (VpnGatewayOutput) ElementType() reflect.Type

func (VpnGatewayOutput) ToVpnGatewayOutput

func (o VpnGatewayOutput) ToVpnGatewayOutput() VpnGatewayOutput

func (VpnGatewayOutput) ToVpnGatewayOutputWithContext

func (o VpnGatewayOutput) ToVpnGatewayOutputWithContext(ctx context.Context) VpnGatewayOutput

func (VpnGatewayOutput) ToVpnGatewayPtrOutput

func (o VpnGatewayOutput) ToVpnGatewayPtrOutput() VpnGatewayPtrOutput

func (VpnGatewayOutput) ToVpnGatewayPtrOutputWithContext

func (o VpnGatewayOutput) ToVpnGatewayPtrOutputWithContext(ctx context.Context) VpnGatewayPtrOutput

type VpnGatewayPtrInput

type VpnGatewayPtrInput interface {
	pulumi.Input

	ToVpnGatewayPtrOutput() VpnGatewayPtrOutput
	ToVpnGatewayPtrOutputWithContext(ctx context.Context) VpnGatewayPtrOutput
}

type VpnGatewayPtrOutput

type VpnGatewayPtrOutput struct{ *pulumi.OutputState }

func (VpnGatewayPtrOutput) Elem added in v4.15.0

func (VpnGatewayPtrOutput) ElementType

func (VpnGatewayPtrOutput) ElementType() reflect.Type

func (VpnGatewayPtrOutput) ToVpnGatewayPtrOutput

func (o VpnGatewayPtrOutput) ToVpnGatewayPtrOutput() VpnGatewayPtrOutput

func (VpnGatewayPtrOutput) ToVpnGatewayPtrOutputWithContext

func (o VpnGatewayPtrOutput) ToVpnGatewayPtrOutputWithContext(ctx context.Context) VpnGatewayPtrOutput

type VpnGatewayRoutePropagation

type VpnGatewayRoutePropagation struct {
	pulumi.CustomResourceState

	// The id of the `ec2.RouteTable` to propagate routes into.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The id of the `ec2.VpnGateway` to propagate routes from.
	VpnGatewayId pulumi.StringOutput `pulumi:"vpnGatewayId"`
}

Requests automatic route propagation between a VPN gateway and a route table.

> **Note:** This resource should not be used with a route table that has the `propagatingVgws` argument set. If that argument is set, any route propagation not explicitly listed in its value will be removed.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewVpnGatewayRoutePropagation(ctx, "example", &ec2.VpnGatewayRoutePropagationArgs{
			VpnGatewayId: pulumi.Any(aws_vpn_gateway.Example.Id),
			RouteTableId: pulumi.Any(aws_route_table.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetVpnGatewayRoutePropagation

func GetVpnGatewayRoutePropagation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpnGatewayRoutePropagationState, opts ...pulumi.ResourceOption) (*VpnGatewayRoutePropagation, error)

GetVpnGatewayRoutePropagation gets an existing VpnGatewayRoutePropagation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpnGatewayRoutePropagation

func NewVpnGatewayRoutePropagation(ctx *pulumi.Context,
	name string, args *VpnGatewayRoutePropagationArgs, opts ...pulumi.ResourceOption) (*VpnGatewayRoutePropagation, error)

NewVpnGatewayRoutePropagation registers a new resource with the given unique name, arguments, and options.

func (*VpnGatewayRoutePropagation) ElementType

func (*VpnGatewayRoutePropagation) ElementType() reflect.Type

func (*VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationOutput

func (i *VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationOutput() VpnGatewayRoutePropagationOutput

func (*VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationOutputWithContext

func (i *VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationOutput

func (*VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationPtrOutput

func (i *VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationPtrOutput() VpnGatewayRoutePropagationPtrOutput

func (*VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationPtrOutputWithContext

func (i *VpnGatewayRoutePropagation) ToVpnGatewayRoutePropagationPtrOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationPtrOutput

type VpnGatewayRoutePropagationArgs

type VpnGatewayRoutePropagationArgs struct {
	// The id of the `ec2.RouteTable` to propagate routes into.
	RouteTableId pulumi.StringInput
	// The id of the `ec2.VpnGateway` to propagate routes from.
	VpnGatewayId pulumi.StringInput
}

The set of arguments for constructing a VpnGatewayRoutePropagation resource.

func (VpnGatewayRoutePropagationArgs) ElementType

type VpnGatewayRoutePropagationArray

type VpnGatewayRoutePropagationArray []VpnGatewayRoutePropagationInput

func (VpnGatewayRoutePropagationArray) ElementType

func (VpnGatewayRoutePropagationArray) ToVpnGatewayRoutePropagationArrayOutput

func (i VpnGatewayRoutePropagationArray) ToVpnGatewayRoutePropagationArrayOutput() VpnGatewayRoutePropagationArrayOutput

func (VpnGatewayRoutePropagationArray) ToVpnGatewayRoutePropagationArrayOutputWithContext

func (i VpnGatewayRoutePropagationArray) ToVpnGatewayRoutePropagationArrayOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationArrayOutput

type VpnGatewayRoutePropagationArrayInput

type VpnGatewayRoutePropagationArrayInput interface {
	pulumi.Input

	ToVpnGatewayRoutePropagationArrayOutput() VpnGatewayRoutePropagationArrayOutput
	ToVpnGatewayRoutePropagationArrayOutputWithContext(context.Context) VpnGatewayRoutePropagationArrayOutput
}

VpnGatewayRoutePropagationArrayInput is an input type that accepts VpnGatewayRoutePropagationArray and VpnGatewayRoutePropagationArrayOutput values. You can construct a concrete instance of `VpnGatewayRoutePropagationArrayInput` via:

VpnGatewayRoutePropagationArray{ VpnGatewayRoutePropagationArgs{...} }

type VpnGatewayRoutePropagationArrayOutput

type VpnGatewayRoutePropagationArrayOutput struct{ *pulumi.OutputState }

func (VpnGatewayRoutePropagationArrayOutput) ElementType

func (VpnGatewayRoutePropagationArrayOutput) Index

func (VpnGatewayRoutePropagationArrayOutput) ToVpnGatewayRoutePropagationArrayOutput

func (o VpnGatewayRoutePropagationArrayOutput) ToVpnGatewayRoutePropagationArrayOutput() VpnGatewayRoutePropagationArrayOutput

func (VpnGatewayRoutePropagationArrayOutput) ToVpnGatewayRoutePropagationArrayOutputWithContext

func (o VpnGatewayRoutePropagationArrayOutput) ToVpnGatewayRoutePropagationArrayOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationArrayOutput

type VpnGatewayRoutePropagationInput

type VpnGatewayRoutePropagationInput interface {
	pulumi.Input

	ToVpnGatewayRoutePropagationOutput() VpnGatewayRoutePropagationOutput
	ToVpnGatewayRoutePropagationOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationOutput
}

type VpnGatewayRoutePropagationMap

type VpnGatewayRoutePropagationMap map[string]VpnGatewayRoutePropagationInput

func (VpnGatewayRoutePropagationMap) ElementType

func (VpnGatewayRoutePropagationMap) ToVpnGatewayRoutePropagationMapOutput

func (i VpnGatewayRoutePropagationMap) ToVpnGatewayRoutePropagationMapOutput() VpnGatewayRoutePropagationMapOutput

func (VpnGatewayRoutePropagationMap) ToVpnGatewayRoutePropagationMapOutputWithContext

func (i VpnGatewayRoutePropagationMap) ToVpnGatewayRoutePropagationMapOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationMapOutput

type VpnGatewayRoutePropagationMapInput

type VpnGatewayRoutePropagationMapInput interface {
	pulumi.Input

	ToVpnGatewayRoutePropagationMapOutput() VpnGatewayRoutePropagationMapOutput
	ToVpnGatewayRoutePropagationMapOutputWithContext(context.Context) VpnGatewayRoutePropagationMapOutput
}

VpnGatewayRoutePropagationMapInput is an input type that accepts VpnGatewayRoutePropagationMap and VpnGatewayRoutePropagationMapOutput values. You can construct a concrete instance of `VpnGatewayRoutePropagationMapInput` via:

VpnGatewayRoutePropagationMap{ "key": VpnGatewayRoutePropagationArgs{...} }

type VpnGatewayRoutePropagationMapOutput

type VpnGatewayRoutePropagationMapOutput struct{ *pulumi.OutputState }

func (VpnGatewayRoutePropagationMapOutput) ElementType

func (VpnGatewayRoutePropagationMapOutput) MapIndex

func (VpnGatewayRoutePropagationMapOutput) ToVpnGatewayRoutePropagationMapOutput

func (o VpnGatewayRoutePropagationMapOutput) ToVpnGatewayRoutePropagationMapOutput() VpnGatewayRoutePropagationMapOutput

func (VpnGatewayRoutePropagationMapOutput) ToVpnGatewayRoutePropagationMapOutputWithContext

func (o VpnGatewayRoutePropagationMapOutput) ToVpnGatewayRoutePropagationMapOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationMapOutput

type VpnGatewayRoutePropagationOutput

type VpnGatewayRoutePropagationOutput struct{ *pulumi.OutputState }

func (VpnGatewayRoutePropagationOutput) ElementType

func (VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationOutput

func (o VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationOutput() VpnGatewayRoutePropagationOutput

func (VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationOutputWithContext

func (o VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationOutput

func (VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationPtrOutput

func (o VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationPtrOutput() VpnGatewayRoutePropagationPtrOutput

func (VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationPtrOutputWithContext

func (o VpnGatewayRoutePropagationOutput) ToVpnGatewayRoutePropagationPtrOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationPtrOutput

type VpnGatewayRoutePropagationPtrInput

type VpnGatewayRoutePropagationPtrInput interface {
	pulumi.Input

	ToVpnGatewayRoutePropagationPtrOutput() VpnGatewayRoutePropagationPtrOutput
	ToVpnGatewayRoutePropagationPtrOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationPtrOutput
}

type VpnGatewayRoutePropagationPtrOutput

type VpnGatewayRoutePropagationPtrOutput struct{ *pulumi.OutputState }

func (VpnGatewayRoutePropagationPtrOutput) Elem added in v4.15.0

func (VpnGatewayRoutePropagationPtrOutput) ElementType

func (VpnGatewayRoutePropagationPtrOutput) ToVpnGatewayRoutePropagationPtrOutput

func (o VpnGatewayRoutePropagationPtrOutput) ToVpnGatewayRoutePropagationPtrOutput() VpnGatewayRoutePropagationPtrOutput

func (VpnGatewayRoutePropagationPtrOutput) ToVpnGatewayRoutePropagationPtrOutputWithContext

func (o VpnGatewayRoutePropagationPtrOutput) ToVpnGatewayRoutePropagationPtrOutputWithContext(ctx context.Context) VpnGatewayRoutePropagationPtrOutput

type VpnGatewayRoutePropagationState

type VpnGatewayRoutePropagationState struct {
	// The id of the `ec2.RouteTable` to propagate routes into.
	RouteTableId pulumi.StringPtrInput
	// The id of the `ec2.VpnGateway` to propagate routes from.
	VpnGatewayId pulumi.StringPtrInput
}

func (VpnGatewayRoutePropagationState) ElementType

type VpnGatewayState

type VpnGatewayState struct {
	// The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don't specify an ASN, the virtual private gateway is created with the default ASN.
	AmazonSideAsn pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the VPN Gateway.
	Arn pulumi.StringPtrInput
	// The Availability Zone for the virtual private gateway.
	AvailabilityZone pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The VPC ID to create in.
	VpcId pulumi.StringPtrInput
}

func (VpnGatewayState) ElementType

func (VpnGatewayState) ElementType() reflect.Type

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL