aviatrix

package
v0.0.11 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type AviatrixAccount

type AviatrixAccount struct {
	pulumi.CustomResourceState

	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Alibaba Cloud Access Key. Required when creating an account for Alibaba Cloud.
	AlicloudAccessKey pulumi.StringPtrOutput `pulumi:"alicloudAccessKey"`
	// Alibaba Cloud Account number to associate with Aviatrix account. Required when creating an account for Alibaba Cloud.
	AlicloudAccountId pulumi.StringPtrOutput `pulumi:"alicloudAccountId"`
	// Alibaba Cloud Secret Key. Required when creating an account for Alibaba Cloud.
	AlicloudSecretKey pulumi.StringPtrOutput `pulumi:"alicloudSecretKey"`
	// Azure ARM Application ID. Required when creating an account for Azure.
	ArmApplicationId pulumi.StringPtrOutput `pulumi:"armApplicationId"`
	// Azure ARM Application key. Required when creating an account for Azure.
	ArmApplicationKey pulumi.StringPtrOutput `pulumi:"armApplicationKey"`
	// Azure ARM Directory ID. Required when creating an account for Azure.
	ArmDirectoryId pulumi.StringPtrOutput `pulumi:"armDirectoryId"`
	// Azure ARM Subscription ID. Required when creating an account for Azure.
	ArmSubscriptionId pulumi.StringPtrOutput `pulumi:"armSubscriptionId"`
	// Enable account audit.
	AuditAccount pulumi.BoolPtrOutput `pulumi:"auditAccount"`
	// AWS Access Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsAccessKey pulumi.StringPtrOutput `pulumi:"awsAccessKey"`
	// AWS Account number to associate with Aviatrix account. Required when creating an account for AWS.
	AwsAccountNumber pulumi.StringPtrOutput `pulumi:"awsAccountNumber"`
	// (Optional) AWS Top Secret Region or Secret Region Custom Certificate Authority file name on the controller. Available as of provider R2.19.5+.
	AwsCaCertPath pulumi.StringOutput `pulumi:"awsCaCertPath"`
	// A separate AWS App role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleEc2` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleApp pulumi.StringPtrOutput `pulumi:"awsGatewayRoleApp"`
	// A separate AWS EC2 role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleApp` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleEc2 pulumi.StringPtrOutput `pulumi:"awsGatewayRoleEc2"`
	// AWS IAM-role based flag, this option is for UserConnect.
	AwsIam pulumi.BoolPtrOutput `pulumi:"awsIam"`
	// AWS App role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleApp pulumi.StringOutput `pulumi:"awsRoleApp"`
	// AWS EC2 role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleEc2 pulumi.StringOutput `pulumi:"awsRoleEc2"`
	// AWS Secret Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsSecretKey pulumi.StringPtrOutput `pulumi:"awsSecretKey"`
	// AWSChina Access Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccessKey pulumi.StringPtrOutput `pulumi:"awschinaAccessKey"`
	// AWSChina Account number to associate with Aviatrix account. Required when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccountNumber pulumi.StringPtrOutput `pulumi:"awschinaAccountNumber"`
	// AWSChina IAM-role based flag. Available as of provider version 2.19+.
	AwschinaIam pulumi.BoolPtrOutput `pulumi:"awschinaIam"`
	// AWSChina App role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleApp pulumi.StringOutput `pulumi:"awschinaRoleApp"`
	// AWSChina EC2 role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleEc2 pulumi.StringOutput `pulumi:"awschinaRoleEc2"`
	// AWSChina Secret Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaSecretKey pulumi.StringPtrOutput `pulumi:"awschinaSecretKey"`
	// AWS Access Key. Required when creating an account for AWSGov.
	AwsgovAccessKey pulumi.StringPtrOutput `pulumi:"awsgovAccessKey"`
	// AWSGov Account number to associate with Aviatrix account. Required when creating an account for AWSGov.
	AwsgovAccountNumber pulumi.StringPtrOutput `pulumi:"awsgovAccountNumber"`
	// AWSGov IAM-role based flag. Available as of provider version 2.19+.
	AwsgovIam pulumi.BoolPtrOutput `pulumi:"awsgovIam"`
	// AWSGov App role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleApp pulumi.StringOutput `pulumi:"awsgovRoleApp"`
	// AWSGov EC2 role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleEc2 pulumi.StringOutput `pulumi:"awsgovRoleEc2"`
	// AWS Secret Key. Required when creating an account for AWSGov.
	AwsgovSecretKey pulumi.StringPtrOutput `pulumi:"awsgovSecretKey"`
	// AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssAccountNumber pulumi.StringPtrOutput `pulumi:"awssAccountNumber"`
	// AWS Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCaChainCert pulumi.StringPtrOutput `pulumi:"awssCaChainCert"`
	// AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAccountName pulumi.StringPtrOutput `pulumi:"awssCapAccountName"`
	// AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAgency pulumi.StringPtrOutput `pulumi:"awssCapAgency"`
	// AWS Secret Region CAP Certificate local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCert pulumi.StringPtrOutput `pulumi:"awssCapCert"`
	// AWS Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCertKey pulumi.StringPtrOutput `pulumi:"awssCapCertKey"`
	// (Optional) AWS Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertKeyPath pulumi.StringOutput `pulumi:"awssCapCertKeyPath"`
	// (Optional) AWS Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertPath pulumi.StringOutput `pulumi:"awssCapCertPath"`
	// AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapRoleName pulumi.StringPtrOutput `pulumi:"awssCapRoleName"`
	// AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapUrl pulumi.StringPtrOutput `pulumi:"awssCapUrl"`
	// AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsAccountNumber pulumi.StringPtrOutput `pulumi:"awstsAccountNumber"`
	// AWS Top Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCaChainCert pulumi.StringPtrOutput `pulumi:"awstsCaChainCert"`
	// AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapAgency pulumi.StringPtrOutput `pulumi:"awstsCapAgency"`
	// AWS Top Secret Region CAP Certificate local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCert pulumi.StringPtrOutput `pulumi:"awstsCapCert"`
	// AWS Top Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCertKey pulumi.StringPtrOutput `pulumi:"awstsCapCertKey"`
	// (Optional) AWS Top Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwstsCapCertKeyPath pulumi.StringOutput `pulumi:"awstsCapCertKeyPath"`
	// (Optional) AWS Top Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwstsCapCertPath pulumi.StringOutput `pulumi:"awstsCapCertPath"`
	// AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapMission pulumi.StringPtrOutput `pulumi:"awstsCapMission"`
	// AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapRoleName pulumi.StringPtrOutput `pulumi:"awstsCapRoleName"`
	// AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapUrl pulumi.StringPtrOutput `pulumi:"awstsCapUrl"`
	// AzureChina ARM Application ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationId pulumi.StringPtrOutput `pulumi:"azurechinaApplicationId"`
	// AzureChina ARM Application key. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationKey pulumi.StringPtrOutput `pulumi:"azurechinaApplicationKey"`
	// AzureChina ARM Directory ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaDirectoryId pulumi.StringPtrOutput `pulumi:"azurechinaDirectoryId"`
	// AzureChina ARM Subscription ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaSubscriptionId pulumi.StringPtrOutput `pulumi:"azurechinaSubscriptionId"`
	// AzureGov ARM Application ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationId pulumi.StringPtrOutput `pulumi:"azuregovApplicationId"`
	// AzureGov ARM Application key. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationKey pulumi.StringPtrOutput `pulumi:"azuregovApplicationKey"`
	// AzureGov ARM Directory ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovDirectoryId pulumi.StringPtrOutput `pulumi:"azuregovDirectoryId"`
	// AzureGov ARM Subscription ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovSubscriptionId pulumi.StringPtrOutput `pulumi:"azuregovSubscriptionId"`
	// Type of cloud service provider. Only AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina and Alibaba Cloud are supported currently. Enter 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, 32 for AzureGov, 256 for AWSGov, 1024 for AWSChina or 2048 for AzureChina, 8192 for Alibaba Cloud.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// GCloud Project Credentials [local filepath].json. Required when creating an account for GCP.
	GcloudProjectCredentialsFilepath pulumi.StringPtrOutput `pulumi:"gcloudProjectCredentialsFilepath"`
	// GCloud Project ID.
	GcloudProjectId pulumi.StringPtrOutput `pulumi:"gcloudProjectId"`
	// Oracle OCI API Private Key local file path. Required when creating an account for OCI.
	OciApiPrivateKeyFilepath pulumi.StringPtrOutput `pulumi:"ociApiPrivateKeyFilepath"`
	// Oracle OCI Compartment ID. Required when creating an account for OCI.
	OciCompartmentId pulumi.StringPtrOutput `pulumi:"ociCompartmentId"`
	// Oracle OCI Tenancy ID. Required when creating an account for OCI.
	OciTenancyId pulumi.StringPtrOutput `pulumi:"ociTenancyId"`
	// Oracle OCI User ID. Required when creating an account for OCI.
	OciUserId pulumi.StringPtrOutput `pulumi:"ociUserId"`
	// A list of existing RBAC group names. This attribute should only be used when creating an account. Updating this attribute will have no effect. Available as of provider version R2.23.0+.
	RbacGroups pulumi.StringArrayOutput `pulumi:"rbacGroups"`
}

The **aviatrix_account** resource allows the creation and management of Aviatrix cloud accounts.

> **NOTE:** With the release of Controller 5.4 (compatible with Aviatrix provider R2.13), Role-Based Access Control (RBAC) is now integrated into the Accounts workflow. Any **aviatrix_account** created in 5.3 by default will have admin privileges (attached to the 'admin' RBAC permission group). In 5.4, any new accounts created will not be attached to any RBAC group unless otherwise specified through the **aviatrix_rbac_group_access_account_attachment** resource.

## Import

**account** can be imported using the `account_name` (when doing import, need to leave sensitive attributes blank), e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAccount:AviatrixAccount test account_name

```

func GetAviatrixAccount

func GetAviatrixAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAccountState, opts ...pulumi.ResourceOption) (*AviatrixAccount, error)

GetAviatrixAccount gets an existing AviatrixAccount 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 NewAviatrixAccount

func NewAviatrixAccount(ctx *pulumi.Context,
	name string, args *AviatrixAccountArgs, opts ...pulumi.ResourceOption) (*AviatrixAccount, error)

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

func (*AviatrixAccount) ElementType

func (*AviatrixAccount) ElementType() reflect.Type

func (*AviatrixAccount) ToAviatrixAccountOutput

func (i *AviatrixAccount) ToAviatrixAccountOutput() AviatrixAccountOutput

func (*AviatrixAccount) ToAviatrixAccountOutputWithContext

func (i *AviatrixAccount) ToAviatrixAccountOutputWithContext(ctx context.Context) AviatrixAccountOutput

type AviatrixAccountArgs

type AviatrixAccountArgs struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccountName pulumi.StringInput
	// Alibaba Cloud Access Key. Required when creating an account for Alibaba Cloud.
	AlicloudAccessKey pulumi.StringPtrInput
	// Alibaba Cloud Account number to associate with Aviatrix account. Required when creating an account for Alibaba Cloud.
	AlicloudAccountId pulumi.StringPtrInput
	// Alibaba Cloud Secret Key. Required when creating an account for Alibaba Cloud.
	AlicloudSecretKey pulumi.StringPtrInput
	// Azure ARM Application ID. Required when creating an account for Azure.
	ArmApplicationId pulumi.StringPtrInput
	// Azure ARM Application key. Required when creating an account for Azure.
	ArmApplicationKey pulumi.StringPtrInput
	// Azure ARM Directory ID. Required when creating an account for Azure.
	ArmDirectoryId pulumi.StringPtrInput
	// Azure ARM Subscription ID. Required when creating an account for Azure.
	ArmSubscriptionId pulumi.StringPtrInput
	// Enable account audit.
	AuditAccount pulumi.BoolPtrInput
	// AWS Access Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsAccessKey pulumi.StringPtrInput
	// AWS Account number to associate with Aviatrix account. Required when creating an account for AWS.
	AwsAccountNumber pulumi.StringPtrInput
	// A separate AWS App role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleEc2` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleApp pulumi.StringPtrInput
	// A separate AWS EC2 role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleApp` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleEc2 pulumi.StringPtrInput
	// AWS IAM-role based flag, this option is for UserConnect.
	AwsIam pulumi.BoolPtrInput
	// AWS App role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleApp pulumi.StringPtrInput
	// AWS EC2 role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleEc2 pulumi.StringPtrInput
	// AWS Secret Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsSecretKey pulumi.StringPtrInput
	// AWSChina Access Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccessKey pulumi.StringPtrInput
	// AWSChina Account number to associate with Aviatrix account. Required when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccountNumber pulumi.StringPtrInput
	// AWSChina IAM-role based flag. Available as of provider version 2.19+.
	AwschinaIam pulumi.BoolPtrInput
	// AWSChina App role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleApp pulumi.StringPtrInput
	// AWSChina EC2 role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleEc2 pulumi.StringPtrInput
	// AWSChina Secret Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaSecretKey pulumi.StringPtrInput
	// AWS Access Key. Required when creating an account for AWSGov.
	AwsgovAccessKey pulumi.StringPtrInput
	// AWSGov Account number to associate with Aviatrix account. Required when creating an account for AWSGov.
	AwsgovAccountNumber pulumi.StringPtrInput
	// AWSGov IAM-role based flag. Available as of provider version 2.19+.
	AwsgovIam pulumi.BoolPtrInput
	// AWSGov App role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleApp pulumi.StringPtrInput
	// AWSGov EC2 role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleEc2 pulumi.StringPtrInput
	// AWS Secret Key. Required when creating an account for AWSGov.
	AwsgovSecretKey pulumi.StringPtrInput
	// AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssAccountNumber pulumi.StringPtrInput
	// AWS Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCaChainCert pulumi.StringPtrInput
	// AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAccountName pulumi.StringPtrInput
	// AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAgency pulumi.StringPtrInput
	// AWS Secret Region CAP Certificate local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCert pulumi.StringPtrInput
	// AWS Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCertKey pulumi.StringPtrInput
	// AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapRoleName pulumi.StringPtrInput
	// AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapUrl pulumi.StringPtrInput
	// AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsAccountNumber pulumi.StringPtrInput
	// AWS Top Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCaChainCert pulumi.StringPtrInput
	// AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapAgency pulumi.StringPtrInput
	// AWS Top Secret Region CAP Certificate local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCert pulumi.StringPtrInput
	// AWS Top Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCertKey pulumi.StringPtrInput
	// AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapMission pulumi.StringPtrInput
	// AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapRoleName pulumi.StringPtrInput
	// AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapUrl pulumi.StringPtrInput
	// AzureChina ARM Application ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationId pulumi.StringPtrInput
	// AzureChina ARM Application key. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationKey pulumi.StringPtrInput
	// AzureChina ARM Directory ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaDirectoryId pulumi.StringPtrInput
	// AzureChina ARM Subscription ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaSubscriptionId pulumi.StringPtrInput
	// AzureGov ARM Application ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationId pulumi.StringPtrInput
	// AzureGov ARM Application key. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationKey pulumi.StringPtrInput
	// AzureGov ARM Directory ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovDirectoryId pulumi.StringPtrInput
	// AzureGov ARM Subscription ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovSubscriptionId pulumi.StringPtrInput
	// Type of cloud service provider. Only AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina and Alibaba Cloud are supported currently. Enter 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, 32 for AzureGov, 256 for AWSGov, 1024 for AWSChina or 2048 for AzureChina, 8192 for Alibaba Cloud.
	CloudType pulumi.IntInput
	// GCloud Project Credentials [local filepath].json. Required when creating an account for GCP.
	GcloudProjectCredentialsFilepath pulumi.StringPtrInput
	// GCloud Project ID.
	GcloudProjectId pulumi.StringPtrInput
	// Oracle OCI API Private Key local file path. Required when creating an account for OCI.
	OciApiPrivateKeyFilepath pulumi.StringPtrInput
	// Oracle OCI Compartment ID. Required when creating an account for OCI.
	OciCompartmentId pulumi.StringPtrInput
	// Oracle OCI Tenancy ID. Required when creating an account for OCI.
	OciTenancyId pulumi.StringPtrInput
	// Oracle OCI User ID. Required when creating an account for OCI.
	OciUserId pulumi.StringPtrInput
	// A list of existing RBAC group names. This attribute should only be used when creating an account. Updating this attribute will have no effect. Available as of provider version R2.23.0+.
	RbacGroups pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixAccount resource.

func (AviatrixAccountArgs) ElementType

func (AviatrixAccountArgs) ElementType() reflect.Type

type AviatrixAccountArray

type AviatrixAccountArray []AviatrixAccountInput

func (AviatrixAccountArray) ElementType

func (AviatrixAccountArray) ElementType() reflect.Type

func (AviatrixAccountArray) ToAviatrixAccountArrayOutput

func (i AviatrixAccountArray) ToAviatrixAccountArrayOutput() AviatrixAccountArrayOutput

func (AviatrixAccountArray) ToAviatrixAccountArrayOutputWithContext

func (i AviatrixAccountArray) ToAviatrixAccountArrayOutputWithContext(ctx context.Context) AviatrixAccountArrayOutput

type AviatrixAccountArrayInput

type AviatrixAccountArrayInput interface {
	pulumi.Input

	ToAviatrixAccountArrayOutput() AviatrixAccountArrayOutput
	ToAviatrixAccountArrayOutputWithContext(context.Context) AviatrixAccountArrayOutput
}

AviatrixAccountArrayInput is an input type that accepts AviatrixAccountArray and AviatrixAccountArrayOutput values. You can construct a concrete instance of `AviatrixAccountArrayInput` via:

AviatrixAccountArray{ AviatrixAccountArgs{...} }

type AviatrixAccountArrayOutput

type AviatrixAccountArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAccountArrayOutput) ElementType

func (AviatrixAccountArrayOutput) ElementType() reflect.Type

func (AviatrixAccountArrayOutput) Index

func (AviatrixAccountArrayOutput) ToAviatrixAccountArrayOutput

func (o AviatrixAccountArrayOutput) ToAviatrixAccountArrayOutput() AviatrixAccountArrayOutput

func (AviatrixAccountArrayOutput) ToAviatrixAccountArrayOutputWithContext

func (o AviatrixAccountArrayOutput) ToAviatrixAccountArrayOutputWithContext(ctx context.Context) AviatrixAccountArrayOutput

type AviatrixAccountInput

type AviatrixAccountInput interface {
	pulumi.Input

	ToAviatrixAccountOutput() AviatrixAccountOutput
	ToAviatrixAccountOutputWithContext(ctx context.Context) AviatrixAccountOutput
}

type AviatrixAccountMap

type AviatrixAccountMap map[string]AviatrixAccountInput

func (AviatrixAccountMap) ElementType

func (AviatrixAccountMap) ElementType() reflect.Type

func (AviatrixAccountMap) ToAviatrixAccountMapOutput

func (i AviatrixAccountMap) ToAviatrixAccountMapOutput() AviatrixAccountMapOutput

func (AviatrixAccountMap) ToAviatrixAccountMapOutputWithContext

func (i AviatrixAccountMap) ToAviatrixAccountMapOutputWithContext(ctx context.Context) AviatrixAccountMapOutput

type AviatrixAccountMapInput

type AviatrixAccountMapInput interface {
	pulumi.Input

	ToAviatrixAccountMapOutput() AviatrixAccountMapOutput
	ToAviatrixAccountMapOutputWithContext(context.Context) AviatrixAccountMapOutput
}

AviatrixAccountMapInput is an input type that accepts AviatrixAccountMap and AviatrixAccountMapOutput values. You can construct a concrete instance of `AviatrixAccountMapInput` via:

AviatrixAccountMap{ "key": AviatrixAccountArgs{...} }

type AviatrixAccountMapOutput

type AviatrixAccountMapOutput struct{ *pulumi.OutputState }

func (AviatrixAccountMapOutput) ElementType

func (AviatrixAccountMapOutput) ElementType() reflect.Type

func (AviatrixAccountMapOutput) MapIndex

func (AviatrixAccountMapOutput) ToAviatrixAccountMapOutput

func (o AviatrixAccountMapOutput) ToAviatrixAccountMapOutput() AviatrixAccountMapOutput

func (AviatrixAccountMapOutput) ToAviatrixAccountMapOutputWithContext

func (o AviatrixAccountMapOutput) ToAviatrixAccountMapOutputWithContext(ctx context.Context) AviatrixAccountMapOutput

type AviatrixAccountOutput

type AviatrixAccountOutput struct{ *pulumi.OutputState }

func (AviatrixAccountOutput) AccountName

func (o AviatrixAccountOutput) AccountName() pulumi.StringOutput

Account name. This can be used for logging in to CloudN console or UserConnect controller.

func (AviatrixAccountOutput) AlicloudAccessKey

func (o AviatrixAccountOutput) AlicloudAccessKey() pulumi.StringPtrOutput

Alibaba Cloud Access Key. Required when creating an account for Alibaba Cloud.

func (AviatrixAccountOutput) AlicloudAccountId

func (o AviatrixAccountOutput) AlicloudAccountId() pulumi.StringPtrOutput

Alibaba Cloud Account number to associate with Aviatrix account. Required when creating an account for Alibaba Cloud.

func (AviatrixAccountOutput) AlicloudSecretKey

func (o AviatrixAccountOutput) AlicloudSecretKey() pulumi.StringPtrOutput

Alibaba Cloud Secret Key. Required when creating an account for Alibaba Cloud.

func (AviatrixAccountOutput) ArmApplicationId

func (o AviatrixAccountOutput) ArmApplicationId() pulumi.StringPtrOutput

Azure ARM Application ID. Required when creating an account for Azure.

func (AviatrixAccountOutput) ArmApplicationKey

func (o AviatrixAccountOutput) ArmApplicationKey() pulumi.StringPtrOutput

Azure ARM Application key. Required when creating an account for Azure.

func (AviatrixAccountOutput) ArmDirectoryId

func (o AviatrixAccountOutput) ArmDirectoryId() pulumi.StringPtrOutput

Azure ARM Directory ID. Required when creating an account for Azure.

func (AviatrixAccountOutput) ArmSubscriptionId

func (o AviatrixAccountOutput) ArmSubscriptionId() pulumi.StringPtrOutput

Azure ARM Subscription ID. Required when creating an account for Azure.

func (AviatrixAccountOutput) AuditAccount

func (o AviatrixAccountOutput) AuditAccount() pulumi.BoolPtrOutput

Enable account audit.

func (AviatrixAccountOutput) AwsAccessKey

func (o AviatrixAccountOutput) AwsAccessKey() pulumi.StringPtrOutput

AWS Access Key. Required when `awsIam` is "false" and when creating an account for AWS.

func (AviatrixAccountOutput) AwsAccountNumber

func (o AviatrixAccountOutput) AwsAccountNumber() pulumi.StringPtrOutput

AWS Account number to associate with Aviatrix account. Required when creating an account for AWS.

func (AviatrixAccountOutput) AwsCaCertPath

func (o AviatrixAccountOutput) AwsCaCertPath() pulumi.StringOutput

(Optional) AWS Top Secret Region or Secret Region Custom Certificate Authority file name on the controller. Available as of provider R2.19.5+.

func (AviatrixAccountOutput) AwsGatewayRoleApp

func (o AviatrixAccountOutput) AwsGatewayRoleApp() pulumi.StringPtrOutput

A separate AWS App role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleEc2` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.

func (AviatrixAccountOutput) AwsGatewayRoleEc2

func (o AviatrixAccountOutput) AwsGatewayRoleEc2() pulumi.StringPtrOutput

A separate AWS EC2 role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleApp` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.

func (AviatrixAccountOutput) AwsIam

AWS IAM-role based flag, this option is for UserConnect.

func (AviatrixAccountOutput) AwsRoleApp

func (o AviatrixAccountOutput) AwsRoleApp() pulumi.StringOutput

AWS App role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.

func (AviatrixAccountOutput) AwsRoleEc2

func (o AviatrixAccountOutput) AwsRoleEc2() pulumi.StringOutput

AWS EC2 role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.

func (AviatrixAccountOutput) AwsSecretKey

func (o AviatrixAccountOutput) AwsSecretKey() pulumi.StringPtrOutput

AWS Secret Key. Required when `awsIam` is "false" and when creating an account for AWS.

func (AviatrixAccountOutput) AwschinaAccessKey

func (o AviatrixAccountOutput) AwschinaAccessKey() pulumi.StringPtrOutput

AWSChina Access Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwschinaAccountNumber

func (o AviatrixAccountOutput) AwschinaAccountNumber() pulumi.StringPtrOutput

AWSChina Account number to associate with Aviatrix account. Required when creating an account for AWSChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwschinaIam

func (o AviatrixAccountOutput) AwschinaIam() pulumi.BoolPtrOutput

AWSChina IAM-role based flag. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwschinaRoleApp

func (o AviatrixAccountOutput) AwschinaRoleApp() pulumi.StringOutput

AWSChina App role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwschinaRoleEc2

func (o AviatrixAccountOutput) AwschinaRoleEc2() pulumi.StringOutput

AWSChina EC2 role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwschinaSecretKey

func (o AviatrixAccountOutput) AwschinaSecretKey() pulumi.StringPtrOutput

AWSChina Secret Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwsgovAccessKey

func (o AviatrixAccountOutput) AwsgovAccessKey() pulumi.StringPtrOutput

AWS Access Key. Required when creating an account for AWSGov.

func (AviatrixAccountOutput) AwsgovAccountNumber

func (o AviatrixAccountOutput) AwsgovAccountNumber() pulumi.StringPtrOutput

AWSGov Account number to associate with Aviatrix account. Required when creating an account for AWSGov.

func (AviatrixAccountOutput) AwsgovIam

AWSGov IAM-role based flag. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwsgovRoleApp

func (o AviatrixAccountOutput) AwsgovRoleApp() pulumi.StringOutput

AWSGov App role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwsgovRoleEc2

func (o AviatrixAccountOutput) AwsgovRoleEc2() pulumi.StringOutput

AWSGov EC2 role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AwsgovSecretKey

func (o AviatrixAccountOutput) AwsgovSecretKey() pulumi.StringPtrOutput

AWS Secret Key. Required when creating an account for AWSGov.

func (AviatrixAccountOutput) AwssAccountNumber

func (o AviatrixAccountOutput) AwssAccountNumber() pulumi.StringPtrOutput

AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCaChainCert

func (o AviatrixAccountOutput) AwssCaChainCert() pulumi.StringPtrOutput

AWS Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapAccountName

func (o AviatrixAccountOutput) AwssCapAccountName() pulumi.StringPtrOutput

AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapAgency

func (o AviatrixAccountOutput) AwssCapAgency() pulumi.StringPtrOutput

AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapCert

AWS Secret Region CAP Certificate local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapCertKey

func (o AviatrixAccountOutput) AwssCapCertKey() pulumi.StringPtrOutput

AWS Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapCertKeyPath

func (o AviatrixAccountOutput) AwssCapCertKeyPath() pulumi.StringOutput

(Optional) AWS Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.

func (AviatrixAccountOutput) AwssCapCertPath

func (o AviatrixAccountOutput) AwssCapCertPath() pulumi.StringOutput

(Optional) AWS Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.

func (AviatrixAccountOutput) AwssCapRoleName

func (o AviatrixAccountOutput) AwssCapRoleName() pulumi.StringPtrOutput

AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwssCapUrl

AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsAccountNumber

func (o AviatrixAccountOutput) AwstsAccountNumber() pulumi.StringPtrOutput

AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCaChainCert

func (o AviatrixAccountOutput) AwstsCaChainCert() pulumi.StringPtrOutput

AWS Top Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapAgency

func (o AviatrixAccountOutput) AwstsCapAgency() pulumi.StringPtrOutput

AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapCert

func (o AviatrixAccountOutput) AwstsCapCert() pulumi.StringPtrOutput

AWS Top Secret Region CAP Certificate local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapCertKey

func (o AviatrixAccountOutput) AwstsCapCertKey() pulumi.StringPtrOutput

AWS Top Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapCertKeyPath

func (o AviatrixAccountOutput) AwstsCapCertKeyPath() pulumi.StringOutput

(Optional) AWS Top Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.

func (AviatrixAccountOutput) AwstsCapCertPath

func (o AviatrixAccountOutput) AwstsCapCertPath() pulumi.StringOutput

(Optional) AWS Top Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.

func (AviatrixAccountOutput) AwstsCapMission

func (o AviatrixAccountOutput) AwstsCapMission() pulumi.StringPtrOutput

AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapRoleName

func (o AviatrixAccountOutput) AwstsCapRoleName() pulumi.StringPtrOutput

AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AwstsCapUrl

AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (AviatrixAccountOutput) AzurechinaApplicationId

func (o AviatrixAccountOutput) AzurechinaApplicationId() pulumi.StringPtrOutput

AzureChina ARM Application ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AzurechinaApplicationKey

func (o AviatrixAccountOutput) AzurechinaApplicationKey() pulumi.StringPtrOutput

AzureChina ARM Application key. Required when creating an account for AzureChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AzurechinaDirectoryId

func (o AviatrixAccountOutput) AzurechinaDirectoryId() pulumi.StringPtrOutput

AzureChina ARM Directory ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AzurechinaSubscriptionId

func (o AviatrixAccountOutput) AzurechinaSubscriptionId() pulumi.StringPtrOutput

AzureChina ARM Subscription ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.

func (AviatrixAccountOutput) AzuregovApplicationId

func (o AviatrixAccountOutput) AzuregovApplicationId() pulumi.StringPtrOutput

AzureGov ARM Application ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.

func (AviatrixAccountOutput) AzuregovApplicationKey

func (o AviatrixAccountOutput) AzuregovApplicationKey() pulumi.StringPtrOutput

AzureGov ARM Application key. Required when creating an account for AzureGov. Available as of provider version R2.19+.

func (AviatrixAccountOutput) AzuregovDirectoryId

func (o AviatrixAccountOutput) AzuregovDirectoryId() pulumi.StringPtrOutput

AzureGov ARM Directory ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.

func (AviatrixAccountOutput) AzuregovSubscriptionId

func (o AviatrixAccountOutput) AzuregovSubscriptionId() pulumi.StringPtrOutput

AzureGov ARM Subscription ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.

func (AviatrixAccountOutput) CloudType

func (o AviatrixAccountOutput) CloudType() pulumi.IntOutput

Type of cloud service provider. Only AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina and Alibaba Cloud are supported currently. Enter 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, 32 for AzureGov, 256 for AWSGov, 1024 for AWSChina or 2048 for AzureChina, 8192 for Alibaba Cloud.

func (AviatrixAccountOutput) ElementType

func (AviatrixAccountOutput) ElementType() reflect.Type

func (AviatrixAccountOutput) GcloudProjectCredentialsFilepath

func (o AviatrixAccountOutput) GcloudProjectCredentialsFilepath() pulumi.StringPtrOutput

GCloud Project Credentials [local filepath].json. Required when creating an account for GCP.

func (AviatrixAccountOutput) GcloudProjectId

func (o AviatrixAccountOutput) GcloudProjectId() pulumi.StringPtrOutput

GCloud Project ID.

func (AviatrixAccountOutput) OciApiPrivateKeyFilepath

func (o AviatrixAccountOutput) OciApiPrivateKeyFilepath() pulumi.StringPtrOutput

Oracle OCI API Private Key local file path. Required when creating an account for OCI.

func (AviatrixAccountOutput) OciCompartmentId

func (o AviatrixAccountOutput) OciCompartmentId() pulumi.StringPtrOutput

Oracle OCI Compartment ID. Required when creating an account for OCI.

func (AviatrixAccountOutput) OciTenancyId

func (o AviatrixAccountOutput) OciTenancyId() pulumi.StringPtrOutput

Oracle OCI Tenancy ID. Required when creating an account for OCI.

func (AviatrixAccountOutput) OciUserId

Oracle OCI User ID. Required when creating an account for OCI.

func (AviatrixAccountOutput) RbacGroups

A list of existing RBAC group names. This attribute should only be used when creating an account. Updating this attribute will have no effect. Available as of provider version R2.23.0+.

func (AviatrixAccountOutput) ToAviatrixAccountOutput

func (o AviatrixAccountOutput) ToAviatrixAccountOutput() AviatrixAccountOutput

func (AviatrixAccountOutput) ToAviatrixAccountOutputWithContext

func (o AviatrixAccountOutput) ToAviatrixAccountOutputWithContext(ctx context.Context) AviatrixAccountOutput

type AviatrixAccountState

type AviatrixAccountState struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccountName pulumi.StringPtrInput
	// Alibaba Cloud Access Key. Required when creating an account for Alibaba Cloud.
	AlicloudAccessKey pulumi.StringPtrInput
	// Alibaba Cloud Account number to associate with Aviatrix account. Required when creating an account for Alibaba Cloud.
	AlicloudAccountId pulumi.StringPtrInput
	// Alibaba Cloud Secret Key. Required when creating an account for Alibaba Cloud.
	AlicloudSecretKey pulumi.StringPtrInput
	// Azure ARM Application ID. Required when creating an account for Azure.
	ArmApplicationId pulumi.StringPtrInput
	// Azure ARM Application key. Required when creating an account for Azure.
	ArmApplicationKey pulumi.StringPtrInput
	// Azure ARM Directory ID. Required when creating an account for Azure.
	ArmDirectoryId pulumi.StringPtrInput
	// Azure ARM Subscription ID. Required when creating an account for Azure.
	ArmSubscriptionId pulumi.StringPtrInput
	// Enable account audit.
	AuditAccount pulumi.BoolPtrInput
	// AWS Access Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsAccessKey pulumi.StringPtrInput
	// AWS Account number to associate with Aviatrix account. Required when creating an account for AWS.
	AwsAccountNumber pulumi.StringPtrInput
	// (Optional) AWS Top Secret Region or Secret Region Custom Certificate Authority file name on the controller. Available as of provider R2.19.5+.
	AwsCaCertPath pulumi.StringPtrInput
	// A separate AWS App role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleEc2` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleApp pulumi.StringPtrInput
	// A separate AWS EC2 role ARN to assign to gateways created by the controller. Required when `awsGatewayRoleApp` is set. Only allowed when `awsIam`, `awsgovIam`, or `awschinaIam` is "true" when creating an account for AWS, AWSGov or AWSChina, respectively. Available as of provider version R2.19+.
	AwsGatewayRoleEc2 pulumi.StringPtrInput
	// AWS IAM-role based flag, this option is for UserConnect.
	AwsIam pulumi.BoolPtrInput
	// AWS App role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleApp pulumi.StringPtrInput
	// AWS EC2 role ARN, this option is for UserConnect. Required when `awsIam` is "true" and when creating an account for AWS.
	AwsRoleEc2 pulumi.StringPtrInput
	// AWS Secret Key. Required when `awsIam` is "false" and when creating an account for AWS.
	AwsSecretKey pulumi.StringPtrInput
	// AWSChina Access Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccessKey pulumi.StringPtrInput
	// AWSChina Account number to associate with Aviatrix account. Required when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaAccountNumber pulumi.StringPtrInput
	// AWSChina IAM-role based flag. Available as of provider version 2.19+.
	AwschinaIam pulumi.BoolPtrInput
	// AWSChina App role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleApp pulumi.StringPtrInput
	// AWSChina EC2 role ARN. Available when `awschinaIam` is "true" and when creating an account for AWSChina. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwschinaRoleEc2 pulumi.StringPtrInput
	// AWSChina Secret Key. Required when `awschinaIam` is "false" and when creating an account for AWSChina. Available as of provider version 2.19+.
	AwschinaSecretKey pulumi.StringPtrInput
	// AWS Access Key. Required when creating an account for AWSGov.
	AwsgovAccessKey pulumi.StringPtrInput
	// AWSGov Account number to associate with Aviatrix account. Required when creating an account for AWSGov.
	AwsgovAccountNumber pulumi.StringPtrInput
	// AWSGov IAM-role based flag. Available as of provider version 2.19+.
	AwsgovIam pulumi.BoolPtrInput
	// AWSGov App role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleApp pulumi.StringPtrInput
	// AWSGov EC2 role ARN. Available when `awsgovIam` is "true" and when creating an account for AWSGov. If left empty, the ARN will be computed. Available as of provider version 2.19+.
	AwsgovRoleEc2 pulumi.StringPtrInput
	// AWS Secret Key. Required when creating an account for AWSGov.
	AwsgovSecretKey pulumi.StringPtrInput
	// AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssAccountNumber pulumi.StringPtrInput
	// AWS Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCaChainCert pulumi.StringPtrInput
	// AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAccountName pulumi.StringPtrInput
	// AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAgency pulumi.StringPtrInput
	// AWS Secret Region CAP Certificate local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCert pulumi.StringPtrInput
	// AWS Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapCertKey pulumi.StringPtrInput
	// (Optional) AWS Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertKeyPath pulumi.StringPtrInput
	// (Optional) AWS Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertPath pulumi.StringPtrInput
	// AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapRoleName pulumi.StringPtrInput
	// AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapUrl pulumi.StringPtrInput
	// AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsAccountNumber pulumi.StringPtrInput
	// AWS Top Secret Region Custom Certificate Authority local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCaChainCert pulumi.StringPtrInput
	// AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapAgency pulumi.StringPtrInput
	// AWS Top Secret Region CAP Certificate local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCert pulumi.StringPtrInput
	// AWS Top Secret Region CAP Certificate Key local file path. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapCertKey pulumi.StringPtrInput
	// (Optional) AWS Top Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwstsCapCertKeyPath pulumi.StringPtrInput
	// (Optional) AWS Top Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwstsCapCertPath pulumi.StringPtrInput
	// AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapMission pulumi.StringPtrInput
	// AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapRoleName pulumi.StringPtrInput
	// AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapUrl pulumi.StringPtrInput
	// AzureChina ARM Application ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationId pulumi.StringPtrInput
	// AzureChina ARM Application key. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaApplicationKey pulumi.StringPtrInput
	// AzureChina ARM Directory ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaDirectoryId pulumi.StringPtrInput
	// AzureChina ARM Subscription ID. Required when creating an account for AzureChina. Available as of provider version 2.19+.
	AzurechinaSubscriptionId pulumi.StringPtrInput
	// AzureGov ARM Application ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationId pulumi.StringPtrInput
	// AzureGov ARM Application key. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovApplicationKey pulumi.StringPtrInput
	// AzureGov ARM Directory ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovDirectoryId pulumi.StringPtrInput
	// AzureGov ARM Subscription ID. Required when creating an account for AzureGov. Available as of provider version R2.19+.
	AzuregovSubscriptionId pulumi.StringPtrInput
	// Type of cloud service provider. Only AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina and Alibaba Cloud are supported currently. Enter 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, 32 for AzureGov, 256 for AWSGov, 1024 for AWSChina or 2048 for AzureChina, 8192 for Alibaba Cloud.
	CloudType pulumi.IntPtrInput
	// GCloud Project Credentials [local filepath].json. Required when creating an account for GCP.
	GcloudProjectCredentialsFilepath pulumi.StringPtrInput
	// GCloud Project ID.
	GcloudProjectId pulumi.StringPtrInput
	// Oracle OCI API Private Key local file path. Required when creating an account for OCI.
	OciApiPrivateKeyFilepath pulumi.StringPtrInput
	// Oracle OCI Compartment ID. Required when creating an account for OCI.
	OciCompartmentId pulumi.StringPtrInput
	// Oracle OCI Tenancy ID. Required when creating an account for OCI.
	OciTenancyId pulumi.StringPtrInput
	// Oracle OCI User ID. Required when creating an account for OCI.
	OciUserId pulumi.StringPtrInput
	// A list of existing RBAC group names. This attribute should only be used when creating an account. Updating this attribute will have no effect. Available as of provider version R2.23.0+.
	RbacGroups pulumi.StringArrayInput
}

func (AviatrixAccountState) ElementType

func (AviatrixAccountState) ElementType() reflect.Type

type AviatrixAccountUser

type AviatrixAccountUser struct {
	pulumi.CustomResourceState

	// Email of address of account user to be created.
	Email pulumi.StringOutput `pulumi:"email"`
	// Login password for the account user to be created. If password is changed, current account will be destroyed and a new account will be created.
	Password pulumi.StringOutput `pulumi:"password"`
	// Name of account user to be created. It can only include alphanumeric characters(lower case only), hyphens, dots or underscores. 1 to 80 in length. No spaces are allowed.
	Username pulumi.StringOutput `pulumi:"username"`
}

The **aviatrix_account_user** resource allows the creation and management of Aviatrix user accounts.

> **NOTE:** With the release of Controller 5.4 (compatible with Aviatrix provider R2.13), Role-Based Access Control (RBAC) is now integrated into the Accounts workflow. Any **aviatrix_account_user** created in 5.3 by default will have admin privileges (attached to the 'admin' RBAC permission group). In 5.4, any new account users created will no longer have the option to specify an `accountName`, but rather have the option to attach the user to specific RBAC groups through the **aviatrix_rbac_group_user_attachment** resource for more granular security control. Account users created in 5.4 will have minimal access (read_only) unless otherwise specified in the RBAC group permissions that the users are attached to.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAccountUser(ctx, "testAccountuser", &aviatrix.AviatrixAccountUserArgs{
			Email:    pulumi.String("username1@testdomain.com"),
			Password: pulumi.String("passwordforuser1-1234"),
			Username: pulumi.String("username1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**account_user** can be imported using the `username` (when doing import, need to leave `password` argument blank), e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAccountUser:AviatrixAccountUser test username

```

func GetAviatrixAccountUser

func GetAviatrixAccountUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAccountUserState, opts ...pulumi.ResourceOption) (*AviatrixAccountUser, error)

GetAviatrixAccountUser gets an existing AviatrixAccountUser 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 NewAviatrixAccountUser

func NewAviatrixAccountUser(ctx *pulumi.Context,
	name string, args *AviatrixAccountUserArgs, opts ...pulumi.ResourceOption) (*AviatrixAccountUser, error)

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

func (*AviatrixAccountUser) ElementType

func (*AviatrixAccountUser) ElementType() reflect.Type

func (*AviatrixAccountUser) ToAviatrixAccountUserOutput

func (i *AviatrixAccountUser) ToAviatrixAccountUserOutput() AviatrixAccountUserOutput

func (*AviatrixAccountUser) ToAviatrixAccountUserOutputWithContext

func (i *AviatrixAccountUser) ToAviatrixAccountUserOutputWithContext(ctx context.Context) AviatrixAccountUserOutput

type AviatrixAccountUserArgs

type AviatrixAccountUserArgs struct {
	// Email of address of account user to be created.
	Email pulumi.StringInput
	// Login password for the account user to be created. If password is changed, current account will be destroyed and a new account will be created.
	Password pulumi.StringInput
	// Name of account user to be created. It can only include alphanumeric characters(lower case only), hyphens, dots or underscores. 1 to 80 in length. No spaces are allowed.
	Username pulumi.StringInput
}

The set of arguments for constructing a AviatrixAccountUser resource.

func (AviatrixAccountUserArgs) ElementType

func (AviatrixAccountUserArgs) ElementType() reflect.Type

type AviatrixAccountUserArray

type AviatrixAccountUserArray []AviatrixAccountUserInput

func (AviatrixAccountUserArray) ElementType

func (AviatrixAccountUserArray) ElementType() reflect.Type

func (AviatrixAccountUserArray) ToAviatrixAccountUserArrayOutput

func (i AviatrixAccountUserArray) ToAviatrixAccountUserArrayOutput() AviatrixAccountUserArrayOutput

func (AviatrixAccountUserArray) ToAviatrixAccountUserArrayOutputWithContext

func (i AviatrixAccountUserArray) ToAviatrixAccountUserArrayOutputWithContext(ctx context.Context) AviatrixAccountUserArrayOutput

type AviatrixAccountUserArrayInput

type AviatrixAccountUserArrayInput interface {
	pulumi.Input

	ToAviatrixAccountUserArrayOutput() AviatrixAccountUserArrayOutput
	ToAviatrixAccountUserArrayOutputWithContext(context.Context) AviatrixAccountUserArrayOutput
}

AviatrixAccountUserArrayInput is an input type that accepts AviatrixAccountUserArray and AviatrixAccountUserArrayOutput values. You can construct a concrete instance of `AviatrixAccountUserArrayInput` via:

AviatrixAccountUserArray{ AviatrixAccountUserArgs{...} }

type AviatrixAccountUserArrayOutput

type AviatrixAccountUserArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAccountUserArrayOutput) ElementType

func (AviatrixAccountUserArrayOutput) Index

func (AviatrixAccountUserArrayOutput) ToAviatrixAccountUserArrayOutput

func (o AviatrixAccountUserArrayOutput) ToAviatrixAccountUserArrayOutput() AviatrixAccountUserArrayOutput

func (AviatrixAccountUserArrayOutput) ToAviatrixAccountUserArrayOutputWithContext

func (o AviatrixAccountUserArrayOutput) ToAviatrixAccountUserArrayOutputWithContext(ctx context.Context) AviatrixAccountUserArrayOutput

type AviatrixAccountUserInput

type AviatrixAccountUserInput interface {
	pulumi.Input

	ToAviatrixAccountUserOutput() AviatrixAccountUserOutput
	ToAviatrixAccountUserOutputWithContext(ctx context.Context) AviatrixAccountUserOutput
}

type AviatrixAccountUserMap

type AviatrixAccountUserMap map[string]AviatrixAccountUserInput

func (AviatrixAccountUserMap) ElementType

func (AviatrixAccountUserMap) ElementType() reflect.Type

func (AviatrixAccountUserMap) ToAviatrixAccountUserMapOutput

func (i AviatrixAccountUserMap) ToAviatrixAccountUserMapOutput() AviatrixAccountUserMapOutput

func (AviatrixAccountUserMap) ToAviatrixAccountUserMapOutputWithContext

func (i AviatrixAccountUserMap) ToAviatrixAccountUserMapOutputWithContext(ctx context.Context) AviatrixAccountUserMapOutput

type AviatrixAccountUserMapInput

type AviatrixAccountUserMapInput interface {
	pulumi.Input

	ToAviatrixAccountUserMapOutput() AviatrixAccountUserMapOutput
	ToAviatrixAccountUserMapOutputWithContext(context.Context) AviatrixAccountUserMapOutput
}

AviatrixAccountUserMapInput is an input type that accepts AviatrixAccountUserMap and AviatrixAccountUserMapOutput values. You can construct a concrete instance of `AviatrixAccountUserMapInput` via:

AviatrixAccountUserMap{ "key": AviatrixAccountUserArgs{...} }

type AviatrixAccountUserMapOutput

type AviatrixAccountUserMapOutput struct{ *pulumi.OutputState }

func (AviatrixAccountUserMapOutput) ElementType

func (AviatrixAccountUserMapOutput) MapIndex

func (AviatrixAccountUserMapOutput) ToAviatrixAccountUserMapOutput

func (o AviatrixAccountUserMapOutput) ToAviatrixAccountUserMapOutput() AviatrixAccountUserMapOutput

func (AviatrixAccountUserMapOutput) ToAviatrixAccountUserMapOutputWithContext

func (o AviatrixAccountUserMapOutput) ToAviatrixAccountUserMapOutputWithContext(ctx context.Context) AviatrixAccountUserMapOutput

type AviatrixAccountUserOutput

type AviatrixAccountUserOutput struct{ *pulumi.OutputState }

func (AviatrixAccountUserOutput) ElementType

func (AviatrixAccountUserOutput) ElementType() reflect.Type

func (AviatrixAccountUserOutput) Email

Email of address of account user to be created.

func (AviatrixAccountUserOutput) Password

Login password for the account user to be created. If password is changed, current account will be destroyed and a new account will be created.

func (AviatrixAccountUserOutput) ToAviatrixAccountUserOutput

func (o AviatrixAccountUserOutput) ToAviatrixAccountUserOutput() AviatrixAccountUserOutput

func (AviatrixAccountUserOutput) ToAviatrixAccountUserOutputWithContext

func (o AviatrixAccountUserOutput) ToAviatrixAccountUserOutputWithContext(ctx context.Context) AviatrixAccountUserOutput

func (AviatrixAccountUserOutput) Username

Name of account user to be created. It can only include alphanumeric characters(lower case only), hyphens, dots or underscores. 1 to 80 in length. No spaces are allowed.

type AviatrixAccountUserState

type AviatrixAccountUserState struct {
	// Email of address of account user to be created.
	Email pulumi.StringPtrInput
	// Login password for the account user to be created. If password is changed, current account will be destroyed and a new account will be created.
	Password pulumi.StringPtrInput
	// Name of account user to be created. It can only include alphanumeric characters(lower case only), hyphens, dots or underscores. 1 to 80 in length. No spaces are allowed.
	Username pulumi.StringPtrInput
}

func (AviatrixAccountUserState) ElementType

func (AviatrixAccountUserState) ElementType() reflect.Type

type AviatrixAppDomain

type AviatrixAppDomain struct {
	pulumi.CustomResourceState

	// Name of the App Domain.
	Name pulumi.StringOutput `pulumi:"name"`
	// Block containing match expressions to filter the App Domain.
	Selector AviatrixAppDomainSelectorOutput `pulumi:"selector"`
	// UUID of the App Domain.
	Uuid pulumi.StringOutput `pulumi:"uuid"`
}

!> **WARNING** **aviatrix_app_domain** is part of the Micro-segmentation private preview feature for R2.22.0. If you wish to enable a private preview mode feature, please contact your sales representative or Aviatrix Support. The **aviatrix_app_domain** resource handles the creation and management of App Domains. Available as of Provider R2.22.0+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAppDomain(ctx, "testAppDomainIp", &aviatrix.AviatrixAppDomainArgs{
			Selector: &AviatrixAppDomainSelectorArgs{
				MatchExpressions: AviatrixAppDomainSelectorMatchExpressionArray{
					&AviatrixAppDomainSelectorMatchExpressionArgs{
						AccountName: pulumi.String("devops"),
						Region:      pulumi.String("us-west-2"),
						Tags: pulumi.StringMap{
							"k3": pulumi.String("v3"),
						},
						Type: pulumi.String("vm"),
					},
					&AviatrixAppDomainSelectorMatchExpressionArgs{
						Cidr: pulumi.String("10.0.0.0/16"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_app_domain** can be imported using the `uuid`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAppDomain:AviatrixAppDomain test 41984f8b-5a37-4272-89b3-57c79e9ff77c

```

func GetAviatrixAppDomain

func GetAviatrixAppDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAppDomainState, opts ...pulumi.ResourceOption) (*AviatrixAppDomain, error)

GetAviatrixAppDomain gets an existing AviatrixAppDomain 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 NewAviatrixAppDomain

func NewAviatrixAppDomain(ctx *pulumi.Context,
	name string, args *AviatrixAppDomainArgs, opts ...pulumi.ResourceOption) (*AviatrixAppDomain, error)

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

func (*AviatrixAppDomain) ElementType

func (*AviatrixAppDomain) ElementType() reflect.Type

func (*AviatrixAppDomain) ToAviatrixAppDomainOutput

func (i *AviatrixAppDomain) ToAviatrixAppDomainOutput() AviatrixAppDomainOutput

func (*AviatrixAppDomain) ToAviatrixAppDomainOutputWithContext

func (i *AviatrixAppDomain) ToAviatrixAppDomainOutputWithContext(ctx context.Context) AviatrixAppDomainOutput

type AviatrixAppDomainArgs

type AviatrixAppDomainArgs struct {
	// Name of the App Domain.
	Name pulumi.StringPtrInput
	// Block containing match expressions to filter the App Domain.
	Selector AviatrixAppDomainSelectorInput
}

The set of arguments for constructing a AviatrixAppDomain resource.

func (AviatrixAppDomainArgs) ElementType

func (AviatrixAppDomainArgs) ElementType() reflect.Type

type AviatrixAppDomainArray

type AviatrixAppDomainArray []AviatrixAppDomainInput

func (AviatrixAppDomainArray) ElementType

func (AviatrixAppDomainArray) ElementType() reflect.Type

func (AviatrixAppDomainArray) ToAviatrixAppDomainArrayOutput

func (i AviatrixAppDomainArray) ToAviatrixAppDomainArrayOutput() AviatrixAppDomainArrayOutput

func (AviatrixAppDomainArray) ToAviatrixAppDomainArrayOutputWithContext

func (i AviatrixAppDomainArray) ToAviatrixAppDomainArrayOutputWithContext(ctx context.Context) AviatrixAppDomainArrayOutput

type AviatrixAppDomainArrayInput

type AviatrixAppDomainArrayInput interface {
	pulumi.Input

	ToAviatrixAppDomainArrayOutput() AviatrixAppDomainArrayOutput
	ToAviatrixAppDomainArrayOutputWithContext(context.Context) AviatrixAppDomainArrayOutput
}

AviatrixAppDomainArrayInput is an input type that accepts AviatrixAppDomainArray and AviatrixAppDomainArrayOutput values. You can construct a concrete instance of `AviatrixAppDomainArrayInput` via:

AviatrixAppDomainArray{ AviatrixAppDomainArgs{...} }

type AviatrixAppDomainArrayOutput

type AviatrixAppDomainArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainArrayOutput) ElementType

func (AviatrixAppDomainArrayOutput) Index

func (AviatrixAppDomainArrayOutput) ToAviatrixAppDomainArrayOutput

func (o AviatrixAppDomainArrayOutput) ToAviatrixAppDomainArrayOutput() AviatrixAppDomainArrayOutput

func (AviatrixAppDomainArrayOutput) ToAviatrixAppDomainArrayOutputWithContext

func (o AviatrixAppDomainArrayOutput) ToAviatrixAppDomainArrayOutputWithContext(ctx context.Context) AviatrixAppDomainArrayOutput

type AviatrixAppDomainInput

type AviatrixAppDomainInput interface {
	pulumi.Input

	ToAviatrixAppDomainOutput() AviatrixAppDomainOutput
	ToAviatrixAppDomainOutputWithContext(ctx context.Context) AviatrixAppDomainOutput
}

type AviatrixAppDomainMap

type AviatrixAppDomainMap map[string]AviatrixAppDomainInput

func (AviatrixAppDomainMap) ElementType

func (AviatrixAppDomainMap) ElementType() reflect.Type

func (AviatrixAppDomainMap) ToAviatrixAppDomainMapOutput

func (i AviatrixAppDomainMap) ToAviatrixAppDomainMapOutput() AviatrixAppDomainMapOutput

func (AviatrixAppDomainMap) ToAviatrixAppDomainMapOutputWithContext

func (i AviatrixAppDomainMap) ToAviatrixAppDomainMapOutputWithContext(ctx context.Context) AviatrixAppDomainMapOutput

type AviatrixAppDomainMapInput

type AviatrixAppDomainMapInput interface {
	pulumi.Input

	ToAviatrixAppDomainMapOutput() AviatrixAppDomainMapOutput
	ToAviatrixAppDomainMapOutputWithContext(context.Context) AviatrixAppDomainMapOutput
}

AviatrixAppDomainMapInput is an input type that accepts AviatrixAppDomainMap and AviatrixAppDomainMapOutput values. You can construct a concrete instance of `AviatrixAppDomainMapInput` via:

AviatrixAppDomainMap{ "key": AviatrixAppDomainArgs{...} }

type AviatrixAppDomainMapOutput

type AviatrixAppDomainMapOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainMapOutput) ElementType

func (AviatrixAppDomainMapOutput) ElementType() reflect.Type

func (AviatrixAppDomainMapOutput) MapIndex

func (AviatrixAppDomainMapOutput) ToAviatrixAppDomainMapOutput

func (o AviatrixAppDomainMapOutput) ToAviatrixAppDomainMapOutput() AviatrixAppDomainMapOutput

func (AviatrixAppDomainMapOutput) ToAviatrixAppDomainMapOutputWithContext

func (o AviatrixAppDomainMapOutput) ToAviatrixAppDomainMapOutputWithContext(ctx context.Context) AviatrixAppDomainMapOutput

type AviatrixAppDomainOutput

type AviatrixAppDomainOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainOutput) ElementType

func (AviatrixAppDomainOutput) ElementType() reflect.Type

func (AviatrixAppDomainOutput) Name

Name of the App Domain.

func (AviatrixAppDomainOutput) Selector

Block containing match expressions to filter the App Domain.

func (AviatrixAppDomainOutput) ToAviatrixAppDomainOutput

func (o AviatrixAppDomainOutput) ToAviatrixAppDomainOutput() AviatrixAppDomainOutput

func (AviatrixAppDomainOutput) ToAviatrixAppDomainOutputWithContext

func (o AviatrixAppDomainOutput) ToAviatrixAppDomainOutputWithContext(ctx context.Context) AviatrixAppDomainOutput

func (AviatrixAppDomainOutput) Uuid

UUID of the App Domain.

type AviatrixAppDomainSelector

type AviatrixAppDomainSelector struct {
	// List of match expressions. The App Domain will be a union of all resources matched by each `matchExpressions`.`matchExpressions` blocks cannot be empty.
	MatchExpressions []AviatrixAppDomainSelectorMatchExpression `pulumi:"matchExpressions"`
}

type AviatrixAppDomainSelectorArgs

type AviatrixAppDomainSelectorArgs struct {
	// List of match expressions. The App Domain will be a union of all resources matched by each `matchExpressions`.`matchExpressions` blocks cannot be empty.
	MatchExpressions AviatrixAppDomainSelectorMatchExpressionArrayInput `pulumi:"matchExpressions"`
}

func (AviatrixAppDomainSelectorArgs) ElementType

func (AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorOutput

func (i AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorOutput() AviatrixAppDomainSelectorOutput

func (AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorOutputWithContext

func (i AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorOutput

func (AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorPtrOutput

func (i AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorPtrOutput() AviatrixAppDomainSelectorPtrOutput

func (AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorPtrOutputWithContext

func (i AviatrixAppDomainSelectorArgs) ToAviatrixAppDomainSelectorPtrOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorPtrOutput

type AviatrixAppDomainSelectorInput

type AviatrixAppDomainSelectorInput interface {
	pulumi.Input

	ToAviatrixAppDomainSelectorOutput() AviatrixAppDomainSelectorOutput
	ToAviatrixAppDomainSelectorOutputWithContext(context.Context) AviatrixAppDomainSelectorOutput
}

AviatrixAppDomainSelectorInput is an input type that accepts AviatrixAppDomainSelectorArgs and AviatrixAppDomainSelectorOutput values. You can construct a concrete instance of `AviatrixAppDomainSelectorInput` via:

AviatrixAppDomainSelectorArgs{...}

type AviatrixAppDomainSelectorMatchExpression

type AviatrixAppDomainSelectorMatchExpression struct {
	// - Account ID this expression matches.
	AccountId *string `pulumi:"accountId"`
	// - Account name this expression matches.
	AccountName *string `pulumi:"accountName"`
	// - CIDR block or IP Address this expression matches. `cidr` cannot be used with any other filters in the same `matchExpressions` block.
	Cidr *string `pulumi:"cidr"`
	// - Region this expression matches.
	Region *string `pulumi:"region"`
	// - Resource ID this expression matches.
	ResId *string `pulumi:"resId"`
	// - Map of tags this expression matches.
	Tags map[string]string `pulumi:"tags"`
	// - Type of resource this expression matches. Must be one of "vm", "vpc" or "subnet". `type` is required when `cidr` is not used.
	Type *string `pulumi:"type"`
	// - Zone this expression matches.
	Zone *string `pulumi:"zone"`
}

type AviatrixAppDomainSelectorMatchExpressionArgs

type AviatrixAppDomainSelectorMatchExpressionArgs struct {
	// - Account ID this expression matches.
	AccountId pulumi.StringPtrInput `pulumi:"accountId"`
	// - Account name this expression matches.
	AccountName pulumi.StringPtrInput `pulumi:"accountName"`
	// - CIDR block or IP Address this expression matches. `cidr` cannot be used with any other filters in the same `matchExpressions` block.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// - Region this expression matches.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// - Resource ID this expression matches.
	ResId pulumi.StringPtrInput `pulumi:"resId"`
	// - Map of tags this expression matches.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// - Type of resource this expression matches. Must be one of "vm", "vpc" or "subnet". `type` is required when `cidr` is not used.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// - Zone this expression matches.
	Zone pulumi.StringPtrInput `pulumi:"zone"`
}

func (AviatrixAppDomainSelectorMatchExpressionArgs) ElementType

func (AviatrixAppDomainSelectorMatchExpressionArgs) ToAviatrixAppDomainSelectorMatchExpressionOutput

func (i AviatrixAppDomainSelectorMatchExpressionArgs) ToAviatrixAppDomainSelectorMatchExpressionOutput() AviatrixAppDomainSelectorMatchExpressionOutput

func (AviatrixAppDomainSelectorMatchExpressionArgs) ToAviatrixAppDomainSelectorMatchExpressionOutputWithContext

func (i AviatrixAppDomainSelectorMatchExpressionArgs) ToAviatrixAppDomainSelectorMatchExpressionOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorMatchExpressionOutput

type AviatrixAppDomainSelectorMatchExpressionArray

type AviatrixAppDomainSelectorMatchExpressionArray []AviatrixAppDomainSelectorMatchExpressionInput

func (AviatrixAppDomainSelectorMatchExpressionArray) ElementType

func (AviatrixAppDomainSelectorMatchExpressionArray) ToAviatrixAppDomainSelectorMatchExpressionArrayOutput

func (i AviatrixAppDomainSelectorMatchExpressionArray) ToAviatrixAppDomainSelectorMatchExpressionArrayOutput() AviatrixAppDomainSelectorMatchExpressionArrayOutput

func (AviatrixAppDomainSelectorMatchExpressionArray) ToAviatrixAppDomainSelectorMatchExpressionArrayOutputWithContext

func (i AviatrixAppDomainSelectorMatchExpressionArray) ToAviatrixAppDomainSelectorMatchExpressionArrayOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorMatchExpressionArrayOutput

type AviatrixAppDomainSelectorMatchExpressionArrayInput

type AviatrixAppDomainSelectorMatchExpressionArrayInput interface {
	pulumi.Input

	ToAviatrixAppDomainSelectorMatchExpressionArrayOutput() AviatrixAppDomainSelectorMatchExpressionArrayOutput
	ToAviatrixAppDomainSelectorMatchExpressionArrayOutputWithContext(context.Context) AviatrixAppDomainSelectorMatchExpressionArrayOutput
}

AviatrixAppDomainSelectorMatchExpressionArrayInput is an input type that accepts AviatrixAppDomainSelectorMatchExpressionArray and AviatrixAppDomainSelectorMatchExpressionArrayOutput values. You can construct a concrete instance of `AviatrixAppDomainSelectorMatchExpressionArrayInput` via:

AviatrixAppDomainSelectorMatchExpressionArray{ AviatrixAppDomainSelectorMatchExpressionArgs{...} }

type AviatrixAppDomainSelectorMatchExpressionArrayOutput

type AviatrixAppDomainSelectorMatchExpressionArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainSelectorMatchExpressionArrayOutput) ElementType

func (AviatrixAppDomainSelectorMatchExpressionArrayOutput) Index

func (AviatrixAppDomainSelectorMatchExpressionArrayOutput) ToAviatrixAppDomainSelectorMatchExpressionArrayOutput

func (o AviatrixAppDomainSelectorMatchExpressionArrayOutput) ToAviatrixAppDomainSelectorMatchExpressionArrayOutput() AviatrixAppDomainSelectorMatchExpressionArrayOutput

func (AviatrixAppDomainSelectorMatchExpressionArrayOutput) ToAviatrixAppDomainSelectorMatchExpressionArrayOutputWithContext

func (o AviatrixAppDomainSelectorMatchExpressionArrayOutput) ToAviatrixAppDomainSelectorMatchExpressionArrayOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorMatchExpressionArrayOutput

type AviatrixAppDomainSelectorMatchExpressionInput

type AviatrixAppDomainSelectorMatchExpressionInput interface {
	pulumi.Input

	ToAviatrixAppDomainSelectorMatchExpressionOutput() AviatrixAppDomainSelectorMatchExpressionOutput
	ToAviatrixAppDomainSelectorMatchExpressionOutputWithContext(context.Context) AviatrixAppDomainSelectorMatchExpressionOutput
}

AviatrixAppDomainSelectorMatchExpressionInput is an input type that accepts AviatrixAppDomainSelectorMatchExpressionArgs and AviatrixAppDomainSelectorMatchExpressionOutput values. You can construct a concrete instance of `AviatrixAppDomainSelectorMatchExpressionInput` via:

AviatrixAppDomainSelectorMatchExpressionArgs{...}

type AviatrixAppDomainSelectorMatchExpressionOutput

type AviatrixAppDomainSelectorMatchExpressionOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainSelectorMatchExpressionOutput) AccountId

- Account ID this expression matches.

func (AviatrixAppDomainSelectorMatchExpressionOutput) AccountName

- Account name this expression matches.

func (AviatrixAppDomainSelectorMatchExpressionOutput) Cidr

- CIDR block or IP Address this expression matches. `cidr` cannot be used with any other filters in the same `matchExpressions` block.

func (AviatrixAppDomainSelectorMatchExpressionOutput) ElementType

func (AviatrixAppDomainSelectorMatchExpressionOutput) Region

- Region this expression matches.

func (AviatrixAppDomainSelectorMatchExpressionOutput) ResId

- Resource ID this expression matches.

func (AviatrixAppDomainSelectorMatchExpressionOutput) Tags

- Map of tags this expression matches.

func (AviatrixAppDomainSelectorMatchExpressionOutput) ToAviatrixAppDomainSelectorMatchExpressionOutput

func (o AviatrixAppDomainSelectorMatchExpressionOutput) ToAviatrixAppDomainSelectorMatchExpressionOutput() AviatrixAppDomainSelectorMatchExpressionOutput

func (AviatrixAppDomainSelectorMatchExpressionOutput) ToAviatrixAppDomainSelectorMatchExpressionOutputWithContext

func (o AviatrixAppDomainSelectorMatchExpressionOutput) ToAviatrixAppDomainSelectorMatchExpressionOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorMatchExpressionOutput

func (AviatrixAppDomainSelectorMatchExpressionOutput) Type

- Type of resource this expression matches. Must be one of "vm", "vpc" or "subnet". `type` is required when `cidr` is not used.

func (AviatrixAppDomainSelectorMatchExpressionOutput) Zone

- Zone this expression matches.

type AviatrixAppDomainSelectorOutput

type AviatrixAppDomainSelectorOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainSelectorOutput) ElementType

func (AviatrixAppDomainSelectorOutput) MatchExpressions

List of match expressions. The App Domain will be a union of all resources matched by each `matchExpressions`.`matchExpressions` blocks cannot be empty.

func (AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorOutput

func (o AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorOutput() AviatrixAppDomainSelectorOutput

func (AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorOutputWithContext

func (o AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorOutput

func (AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorPtrOutput

func (o AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorPtrOutput() AviatrixAppDomainSelectorPtrOutput

func (AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorPtrOutputWithContext

func (o AviatrixAppDomainSelectorOutput) ToAviatrixAppDomainSelectorPtrOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorPtrOutput

type AviatrixAppDomainSelectorPtrInput

type AviatrixAppDomainSelectorPtrInput interface {
	pulumi.Input

	ToAviatrixAppDomainSelectorPtrOutput() AviatrixAppDomainSelectorPtrOutput
	ToAviatrixAppDomainSelectorPtrOutputWithContext(context.Context) AviatrixAppDomainSelectorPtrOutput
}

AviatrixAppDomainSelectorPtrInput is an input type that accepts AviatrixAppDomainSelectorArgs, AviatrixAppDomainSelectorPtr and AviatrixAppDomainSelectorPtrOutput values. You can construct a concrete instance of `AviatrixAppDomainSelectorPtrInput` via:

        AviatrixAppDomainSelectorArgs{...}

or:

        nil

type AviatrixAppDomainSelectorPtrOutput

type AviatrixAppDomainSelectorPtrOutput struct{ *pulumi.OutputState }

func (AviatrixAppDomainSelectorPtrOutput) Elem

func (AviatrixAppDomainSelectorPtrOutput) ElementType

func (AviatrixAppDomainSelectorPtrOutput) MatchExpressions

List of match expressions. The App Domain will be a union of all resources matched by each `matchExpressions`.`matchExpressions` blocks cannot be empty.

func (AviatrixAppDomainSelectorPtrOutput) ToAviatrixAppDomainSelectorPtrOutput

func (o AviatrixAppDomainSelectorPtrOutput) ToAviatrixAppDomainSelectorPtrOutput() AviatrixAppDomainSelectorPtrOutput

func (AviatrixAppDomainSelectorPtrOutput) ToAviatrixAppDomainSelectorPtrOutputWithContext

func (o AviatrixAppDomainSelectorPtrOutput) ToAviatrixAppDomainSelectorPtrOutputWithContext(ctx context.Context) AviatrixAppDomainSelectorPtrOutput

type AviatrixAppDomainState

type AviatrixAppDomainState struct {
	// Name of the App Domain.
	Name pulumi.StringPtrInput
	// Block containing match expressions to filter the App Domain.
	Selector AviatrixAppDomainSelectorPtrInput
	// UUID of the App Domain.
	Uuid pulumi.StringPtrInput
}

func (AviatrixAppDomainState) ElementType

func (AviatrixAppDomainState) ElementType() reflect.Type

type AviatrixArmPeer

type AviatrixArmPeer struct {
	pulumi.CustomResourceState

	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringOutput `pulumi:"accountName1"`
	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringOutput `pulumi:"accountName2"`
	// List of VNet CIDR of vnet_name_resource_group1.
	VnetCidr1s pulumi.StringArrayOutput `pulumi:"vnetCidr1s"`
	// List of VNet CIDR of vnet_name_resource_group2.
	VnetCidr2s pulumi.StringArrayOutput `pulumi:"vnetCidr2s"`
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup1 pulumi.StringOutput `pulumi:"vnetNameResourceGroup1"`
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup2 pulumi.StringOutput `pulumi:"vnetNameResourceGroup2"`
	// Region of Azure cloud. Example: "East US 2".
	VnetReg1 pulumi.StringOutput `pulumi:"vnetReg1"`
	// Region of Azure cloud. Example: "East US 2".
	VnetReg2 pulumi.StringOutput `pulumi:"vnetReg2"`
}

The **aviatrix_arm_peer** resource allows the creation and management of Aviatrix ARM peerings.

!> **WARNING:** The `AviatrixArmPeer` resource is deprecated as of **Release 2.12**. It is currently kept for backward-compatibility and will be removed in the future. Please use the Azure peer resource instead. If this is already in the state, please remove it from the state file and import as `AviatrixAzurePeer`.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixArmPeer(ctx, "testArmpeer", &aviatrix.AviatrixArmPeerArgs{
			AccountName1:           pulumi.String("test1-account"),
			AccountName2:           pulumi.String("test2-account"),
			VnetNameResourceGroup1: pulumi.String("vpc-abcd1234"),
			VnetNameResourceGroup2: pulumi.String("vpc-rdef3333"),
			VnetReg1:               pulumi.String("us-east-1"),
			VnetReg2:               pulumi.String("us-west-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**arm_peer** can be imported using the `vnet_name_resource_group1` and `vnet_name_resource_group2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixArmPeer:AviatrixArmPeer test vnet_name_resource_group1~vnet_name_resource_group2

```

func GetAviatrixArmPeer

func GetAviatrixArmPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixArmPeerState, opts ...pulumi.ResourceOption) (*AviatrixArmPeer, error)

GetAviatrixArmPeer gets an existing AviatrixArmPeer 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 NewAviatrixArmPeer

func NewAviatrixArmPeer(ctx *pulumi.Context,
	name string, args *AviatrixArmPeerArgs, opts ...pulumi.ResourceOption) (*AviatrixArmPeer, error)

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

func (*AviatrixArmPeer) ElementType

func (*AviatrixArmPeer) ElementType() reflect.Type

func (*AviatrixArmPeer) ToAviatrixArmPeerOutput

func (i *AviatrixArmPeer) ToAviatrixArmPeerOutput() AviatrixArmPeerOutput

func (*AviatrixArmPeer) ToAviatrixArmPeerOutputWithContext

func (i *AviatrixArmPeer) ToAviatrixArmPeerOutputWithContext(ctx context.Context) AviatrixArmPeerOutput

type AviatrixArmPeerArgs

type AviatrixArmPeerArgs struct {
	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringInput
	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringInput
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup1 pulumi.StringInput
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup2 pulumi.StringInput
	// Region of Azure cloud. Example: "East US 2".
	VnetReg1 pulumi.StringInput
	// Region of Azure cloud. Example: "East US 2".
	VnetReg2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixArmPeer resource.

func (AviatrixArmPeerArgs) ElementType

func (AviatrixArmPeerArgs) ElementType() reflect.Type

type AviatrixArmPeerArray

type AviatrixArmPeerArray []AviatrixArmPeerInput

func (AviatrixArmPeerArray) ElementType

func (AviatrixArmPeerArray) ElementType() reflect.Type

func (AviatrixArmPeerArray) ToAviatrixArmPeerArrayOutput

func (i AviatrixArmPeerArray) ToAviatrixArmPeerArrayOutput() AviatrixArmPeerArrayOutput

func (AviatrixArmPeerArray) ToAviatrixArmPeerArrayOutputWithContext

func (i AviatrixArmPeerArray) ToAviatrixArmPeerArrayOutputWithContext(ctx context.Context) AviatrixArmPeerArrayOutput

type AviatrixArmPeerArrayInput

type AviatrixArmPeerArrayInput interface {
	pulumi.Input

	ToAviatrixArmPeerArrayOutput() AviatrixArmPeerArrayOutput
	ToAviatrixArmPeerArrayOutputWithContext(context.Context) AviatrixArmPeerArrayOutput
}

AviatrixArmPeerArrayInput is an input type that accepts AviatrixArmPeerArray and AviatrixArmPeerArrayOutput values. You can construct a concrete instance of `AviatrixArmPeerArrayInput` via:

AviatrixArmPeerArray{ AviatrixArmPeerArgs{...} }

type AviatrixArmPeerArrayOutput

type AviatrixArmPeerArrayOutput struct{ *pulumi.OutputState }

func (AviatrixArmPeerArrayOutput) ElementType

func (AviatrixArmPeerArrayOutput) ElementType() reflect.Type

func (AviatrixArmPeerArrayOutput) Index

func (AviatrixArmPeerArrayOutput) ToAviatrixArmPeerArrayOutput

func (o AviatrixArmPeerArrayOutput) ToAviatrixArmPeerArrayOutput() AviatrixArmPeerArrayOutput

func (AviatrixArmPeerArrayOutput) ToAviatrixArmPeerArrayOutputWithContext

func (o AviatrixArmPeerArrayOutput) ToAviatrixArmPeerArrayOutputWithContext(ctx context.Context) AviatrixArmPeerArrayOutput

type AviatrixArmPeerInput

type AviatrixArmPeerInput interface {
	pulumi.Input

	ToAviatrixArmPeerOutput() AviatrixArmPeerOutput
	ToAviatrixArmPeerOutputWithContext(ctx context.Context) AviatrixArmPeerOutput
}

type AviatrixArmPeerMap

type AviatrixArmPeerMap map[string]AviatrixArmPeerInput

func (AviatrixArmPeerMap) ElementType

func (AviatrixArmPeerMap) ElementType() reflect.Type

func (AviatrixArmPeerMap) ToAviatrixArmPeerMapOutput

func (i AviatrixArmPeerMap) ToAviatrixArmPeerMapOutput() AviatrixArmPeerMapOutput

func (AviatrixArmPeerMap) ToAviatrixArmPeerMapOutputWithContext

func (i AviatrixArmPeerMap) ToAviatrixArmPeerMapOutputWithContext(ctx context.Context) AviatrixArmPeerMapOutput

type AviatrixArmPeerMapInput

type AviatrixArmPeerMapInput interface {
	pulumi.Input

	ToAviatrixArmPeerMapOutput() AviatrixArmPeerMapOutput
	ToAviatrixArmPeerMapOutputWithContext(context.Context) AviatrixArmPeerMapOutput
}

AviatrixArmPeerMapInput is an input type that accepts AviatrixArmPeerMap and AviatrixArmPeerMapOutput values. You can construct a concrete instance of `AviatrixArmPeerMapInput` via:

AviatrixArmPeerMap{ "key": AviatrixArmPeerArgs{...} }

type AviatrixArmPeerMapOutput

type AviatrixArmPeerMapOutput struct{ *pulumi.OutputState }

func (AviatrixArmPeerMapOutput) ElementType

func (AviatrixArmPeerMapOutput) ElementType() reflect.Type

func (AviatrixArmPeerMapOutput) MapIndex

func (AviatrixArmPeerMapOutput) ToAviatrixArmPeerMapOutput

func (o AviatrixArmPeerMapOutput) ToAviatrixArmPeerMapOutput() AviatrixArmPeerMapOutput

func (AviatrixArmPeerMapOutput) ToAviatrixArmPeerMapOutputWithContext

func (o AviatrixArmPeerMapOutput) ToAviatrixArmPeerMapOutputWithContext(ctx context.Context) AviatrixArmPeerMapOutput

type AviatrixArmPeerOutput

type AviatrixArmPeerOutput struct{ *pulumi.OutputState }

func (AviatrixArmPeerOutput) AccountName1

func (o AviatrixArmPeerOutput) AccountName1() pulumi.StringOutput

This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.

func (AviatrixArmPeerOutput) AccountName2

func (o AviatrixArmPeerOutput) AccountName2() pulumi.StringOutput

This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.

func (AviatrixArmPeerOutput) ElementType

func (AviatrixArmPeerOutput) ElementType() reflect.Type

func (AviatrixArmPeerOutput) ToAviatrixArmPeerOutput

func (o AviatrixArmPeerOutput) ToAviatrixArmPeerOutput() AviatrixArmPeerOutput

func (AviatrixArmPeerOutput) ToAviatrixArmPeerOutputWithContext

func (o AviatrixArmPeerOutput) ToAviatrixArmPeerOutputWithContext(ctx context.Context) AviatrixArmPeerOutput

func (AviatrixArmPeerOutput) VnetCidr1s

List of VNet CIDR of vnet_name_resource_group1.

func (AviatrixArmPeerOutput) VnetCidr2s

List of VNet CIDR of vnet_name_resource_group2.

func (AviatrixArmPeerOutput) VnetNameResourceGroup1

func (o AviatrixArmPeerOutput) VnetNameResourceGroup1() pulumi.StringOutput

VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".

func (AviatrixArmPeerOutput) VnetNameResourceGroup2

func (o AviatrixArmPeerOutput) VnetNameResourceGroup2() pulumi.StringOutput

VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".

func (AviatrixArmPeerOutput) VnetReg1

Region of Azure cloud. Example: "East US 2".

func (AviatrixArmPeerOutput) VnetReg2

Region of Azure cloud. Example: "East US 2".

type AviatrixArmPeerState

type AviatrixArmPeerState struct {
	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringPtrInput
	// This parameter represents the name of an Azure Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringPtrInput
	// List of VNet CIDR of vnet_name_resource_group1.
	VnetCidr1s pulumi.StringArrayInput
	// List of VNet CIDR of vnet_name_resource_group2.
	VnetCidr2s pulumi.StringArrayInput
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup1 pulumi.StringPtrInput
	// VNet-Name of Azure cloud. Example: "VNet_Name:Resource_Group_Name".
	VnetNameResourceGroup2 pulumi.StringPtrInput
	// Region of Azure cloud. Example: "East US 2".
	VnetReg1 pulumi.StringPtrInput
	// Region of Azure cloud. Example: "East US 2".
	VnetReg2 pulumi.StringPtrInput
}

func (AviatrixArmPeerState) ElementType

func (AviatrixArmPeerState) ElementType() reflect.Type

type AviatrixAwsGuardDuty

type AviatrixAwsGuardDuty struct {
	pulumi.CustomResourceState

	// Account name.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Set of excluded IPs.
	ExcludedIps pulumi.StringArrayOutput `pulumi:"excludedIps"`
	// Region.
	Region pulumi.StringOutput `pulumi:"region"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsGuardDuty(ctx, "testAwsGuardDuty", &aviatrix.AviatrixAwsGuardDutyArgs{
			AccountName: pulumi.Any(aviatrix_account.Account_1.Account_name),
			Region:      pulumi.String("us-west-1"),
			ExcludedIps: pulumi.StringArray{
				pulumi.String("127.0.0.1"),
				pulumi.String("10.0.0.1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_guard_duty** resource can be imported with the `account_name` and `region` in the form "account_name~~region", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsGuardDuty:AviatrixAwsGuardDuty test_aws_guard_duty devops-acc~~us-west-1

```

func GetAviatrixAwsGuardDuty

func GetAviatrixAwsGuardDuty(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsGuardDutyState, opts ...pulumi.ResourceOption) (*AviatrixAwsGuardDuty, error)

GetAviatrixAwsGuardDuty gets an existing AviatrixAwsGuardDuty 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 NewAviatrixAwsGuardDuty

func NewAviatrixAwsGuardDuty(ctx *pulumi.Context,
	name string, args *AviatrixAwsGuardDutyArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsGuardDuty, error)

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

func (*AviatrixAwsGuardDuty) ElementType

func (*AviatrixAwsGuardDuty) ElementType() reflect.Type

func (*AviatrixAwsGuardDuty) ToAviatrixAwsGuardDutyOutput

func (i *AviatrixAwsGuardDuty) ToAviatrixAwsGuardDutyOutput() AviatrixAwsGuardDutyOutput

func (*AviatrixAwsGuardDuty) ToAviatrixAwsGuardDutyOutputWithContext

func (i *AviatrixAwsGuardDuty) ToAviatrixAwsGuardDutyOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyOutput

type AviatrixAwsGuardDutyArgs

type AviatrixAwsGuardDutyArgs struct {
	// Account name.
	AccountName pulumi.StringInput
	// Set of excluded IPs.
	ExcludedIps pulumi.StringArrayInput
	// Region.
	Region pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsGuardDuty resource.

func (AviatrixAwsGuardDutyArgs) ElementType

func (AviatrixAwsGuardDutyArgs) ElementType() reflect.Type

type AviatrixAwsGuardDutyArray

type AviatrixAwsGuardDutyArray []AviatrixAwsGuardDutyInput

func (AviatrixAwsGuardDutyArray) ElementType

func (AviatrixAwsGuardDutyArray) ElementType() reflect.Type

func (AviatrixAwsGuardDutyArray) ToAviatrixAwsGuardDutyArrayOutput

func (i AviatrixAwsGuardDutyArray) ToAviatrixAwsGuardDutyArrayOutput() AviatrixAwsGuardDutyArrayOutput

func (AviatrixAwsGuardDutyArray) ToAviatrixAwsGuardDutyArrayOutputWithContext

func (i AviatrixAwsGuardDutyArray) ToAviatrixAwsGuardDutyArrayOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyArrayOutput

type AviatrixAwsGuardDutyArrayInput

type AviatrixAwsGuardDutyArrayInput interface {
	pulumi.Input

	ToAviatrixAwsGuardDutyArrayOutput() AviatrixAwsGuardDutyArrayOutput
	ToAviatrixAwsGuardDutyArrayOutputWithContext(context.Context) AviatrixAwsGuardDutyArrayOutput
}

AviatrixAwsGuardDutyArrayInput is an input type that accepts AviatrixAwsGuardDutyArray and AviatrixAwsGuardDutyArrayOutput values. You can construct a concrete instance of `AviatrixAwsGuardDutyArrayInput` via:

AviatrixAwsGuardDutyArray{ AviatrixAwsGuardDutyArgs{...} }

type AviatrixAwsGuardDutyArrayOutput

type AviatrixAwsGuardDutyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsGuardDutyArrayOutput) ElementType

func (AviatrixAwsGuardDutyArrayOutput) Index

func (AviatrixAwsGuardDutyArrayOutput) ToAviatrixAwsGuardDutyArrayOutput

func (o AviatrixAwsGuardDutyArrayOutput) ToAviatrixAwsGuardDutyArrayOutput() AviatrixAwsGuardDutyArrayOutput

func (AviatrixAwsGuardDutyArrayOutput) ToAviatrixAwsGuardDutyArrayOutputWithContext

func (o AviatrixAwsGuardDutyArrayOutput) ToAviatrixAwsGuardDutyArrayOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyArrayOutput

type AviatrixAwsGuardDutyInput

type AviatrixAwsGuardDutyInput interface {
	pulumi.Input

	ToAviatrixAwsGuardDutyOutput() AviatrixAwsGuardDutyOutput
	ToAviatrixAwsGuardDutyOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyOutput
}

type AviatrixAwsGuardDutyMap

type AviatrixAwsGuardDutyMap map[string]AviatrixAwsGuardDutyInput

func (AviatrixAwsGuardDutyMap) ElementType

func (AviatrixAwsGuardDutyMap) ElementType() reflect.Type

func (AviatrixAwsGuardDutyMap) ToAviatrixAwsGuardDutyMapOutput

func (i AviatrixAwsGuardDutyMap) ToAviatrixAwsGuardDutyMapOutput() AviatrixAwsGuardDutyMapOutput

func (AviatrixAwsGuardDutyMap) ToAviatrixAwsGuardDutyMapOutputWithContext

func (i AviatrixAwsGuardDutyMap) ToAviatrixAwsGuardDutyMapOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyMapOutput

type AviatrixAwsGuardDutyMapInput

type AviatrixAwsGuardDutyMapInput interface {
	pulumi.Input

	ToAviatrixAwsGuardDutyMapOutput() AviatrixAwsGuardDutyMapOutput
	ToAviatrixAwsGuardDutyMapOutputWithContext(context.Context) AviatrixAwsGuardDutyMapOutput
}

AviatrixAwsGuardDutyMapInput is an input type that accepts AviatrixAwsGuardDutyMap and AviatrixAwsGuardDutyMapOutput values. You can construct a concrete instance of `AviatrixAwsGuardDutyMapInput` via:

AviatrixAwsGuardDutyMap{ "key": AviatrixAwsGuardDutyArgs{...} }

type AviatrixAwsGuardDutyMapOutput

type AviatrixAwsGuardDutyMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsGuardDutyMapOutput) ElementType

func (AviatrixAwsGuardDutyMapOutput) MapIndex

func (AviatrixAwsGuardDutyMapOutput) ToAviatrixAwsGuardDutyMapOutput

func (o AviatrixAwsGuardDutyMapOutput) ToAviatrixAwsGuardDutyMapOutput() AviatrixAwsGuardDutyMapOutput

func (AviatrixAwsGuardDutyMapOutput) ToAviatrixAwsGuardDutyMapOutputWithContext

func (o AviatrixAwsGuardDutyMapOutput) ToAviatrixAwsGuardDutyMapOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyMapOutput

type AviatrixAwsGuardDutyOutput

type AviatrixAwsGuardDutyOutput struct{ *pulumi.OutputState }

func (AviatrixAwsGuardDutyOutput) AccountName

Account name.

func (AviatrixAwsGuardDutyOutput) ElementType

func (AviatrixAwsGuardDutyOutput) ElementType() reflect.Type

func (AviatrixAwsGuardDutyOutput) ExcludedIps

Set of excluded IPs.

func (AviatrixAwsGuardDutyOutput) Region

Region.

func (AviatrixAwsGuardDutyOutput) ToAviatrixAwsGuardDutyOutput

func (o AviatrixAwsGuardDutyOutput) ToAviatrixAwsGuardDutyOutput() AviatrixAwsGuardDutyOutput

func (AviatrixAwsGuardDutyOutput) ToAviatrixAwsGuardDutyOutputWithContext

func (o AviatrixAwsGuardDutyOutput) ToAviatrixAwsGuardDutyOutputWithContext(ctx context.Context) AviatrixAwsGuardDutyOutput

type AviatrixAwsGuardDutyState

type AviatrixAwsGuardDutyState struct {
	// Account name.
	AccountName pulumi.StringPtrInput
	// Set of excluded IPs.
	ExcludedIps pulumi.StringArrayInput
	// Region.
	Region pulumi.StringPtrInput
}

func (AviatrixAwsGuardDutyState) ElementType

func (AviatrixAwsGuardDutyState) ElementType() reflect.Type

type AviatrixAwsPeer

type AviatrixAwsPeer struct {
	pulumi.CustomResourceState

	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringOutput `pulumi:"accountName1"`
	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringOutput `pulumi:"accountName2"`
	// List of route table ID of vpc_id1.
	RtbList1Outputs pulumi.StringArrayOutput `pulumi:"rtbList1Outputs"`
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList1s pulumi.StringArrayOutput `pulumi:"rtbList1s"`
	// List of route table ID of vpc_id2.
	RtbList2Outputs pulumi.StringArrayOutput `pulumi:"rtbList2Outputs"`
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList2s pulumi.StringArrayOutput `pulumi:"rtbList2s"`
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId1 pulumi.StringOutput `pulumi:"vpcId1"`
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId2 pulumi.StringOutput `pulumi:"vpcId2"`
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg1 pulumi.StringOutput `pulumi:"vpcReg1"`
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg2 pulumi.StringOutput `pulumi:"vpcReg2"`
}

The **aviatrix_aws_peer** resource allows the creation and management of Aviatrix-created native AWS intra and inter-region VPC peerings.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsPeer(ctx, "testAwspeer", &aviatrix.AviatrixAwsPeerArgs{
			AccountName1: pulumi.String("test1-account"),
			AccountName2: pulumi.String("test2-account"),
			RtbList1s: pulumi.StringArray{
				pulumi.String("rtb-abcd1234"),
			},
			RtbList2s: pulumi.StringArray{
				pulumi.String("rtb-wxyz5678"),
			},
			VpcId1:  pulumi.String("vpc-abcd1234"),
			VpcId2:  pulumi.String("vpc-rdef3333"),
			VpcReg1: pulumi.String("us-east-1"),
			VpcReg2: pulumi.String("us-west-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_peer** can be imported using the `vpc_id1` and `vpc_id2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsPeer:AviatrixAwsPeer test vpc_id1~vpc_id2

```

func GetAviatrixAwsPeer

func GetAviatrixAwsPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsPeerState, opts ...pulumi.ResourceOption) (*AviatrixAwsPeer, error)

GetAviatrixAwsPeer gets an existing AviatrixAwsPeer 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 NewAviatrixAwsPeer

func NewAviatrixAwsPeer(ctx *pulumi.Context,
	name string, args *AviatrixAwsPeerArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsPeer, error)

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

func (*AviatrixAwsPeer) ElementType

func (*AviatrixAwsPeer) ElementType() reflect.Type

func (*AviatrixAwsPeer) ToAviatrixAwsPeerOutput

func (i *AviatrixAwsPeer) ToAviatrixAwsPeerOutput() AviatrixAwsPeerOutput

func (*AviatrixAwsPeer) ToAviatrixAwsPeerOutputWithContext

func (i *AviatrixAwsPeer) ToAviatrixAwsPeerOutputWithContext(ctx context.Context) AviatrixAwsPeerOutput

type AviatrixAwsPeerArgs

type AviatrixAwsPeerArgs struct {
	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringInput
	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringInput
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList1s pulumi.StringArrayInput
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList2s pulumi.StringArrayInput
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId1 pulumi.StringInput
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId2 pulumi.StringInput
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg1 pulumi.StringInput
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsPeer resource.

func (AviatrixAwsPeerArgs) ElementType

func (AviatrixAwsPeerArgs) ElementType() reflect.Type

type AviatrixAwsPeerArray

type AviatrixAwsPeerArray []AviatrixAwsPeerInput

func (AviatrixAwsPeerArray) ElementType

func (AviatrixAwsPeerArray) ElementType() reflect.Type

func (AviatrixAwsPeerArray) ToAviatrixAwsPeerArrayOutput

func (i AviatrixAwsPeerArray) ToAviatrixAwsPeerArrayOutput() AviatrixAwsPeerArrayOutput

func (AviatrixAwsPeerArray) ToAviatrixAwsPeerArrayOutputWithContext

func (i AviatrixAwsPeerArray) ToAviatrixAwsPeerArrayOutputWithContext(ctx context.Context) AviatrixAwsPeerArrayOutput

type AviatrixAwsPeerArrayInput

type AviatrixAwsPeerArrayInput interface {
	pulumi.Input

	ToAviatrixAwsPeerArrayOutput() AviatrixAwsPeerArrayOutput
	ToAviatrixAwsPeerArrayOutputWithContext(context.Context) AviatrixAwsPeerArrayOutput
}

AviatrixAwsPeerArrayInput is an input type that accepts AviatrixAwsPeerArray and AviatrixAwsPeerArrayOutput values. You can construct a concrete instance of `AviatrixAwsPeerArrayInput` via:

AviatrixAwsPeerArray{ AviatrixAwsPeerArgs{...} }

type AviatrixAwsPeerArrayOutput

type AviatrixAwsPeerArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsPeerArrayOutput) ElementType

func (AviatrixAwsPeerArrayOutput) ElementType() reflect.Type

func (AviatrixAwsPeerArrayOutput) Index

func (AviatrixAwsPeerArrayOutput) ToAviatrixAwsPeerArrayOutput

func (o AviatrixAwsPeerArrayOutput) ToAviatrixAwsPeerArrayOutput() AviatrixAwsPeerArrayOutput

func (AviatrixAwsPeerArrayOutput) ToAviatrixAwsPeerArrayOutputWithContext

func (o AviatrixAwsPeerArrayOutput) ToAviatrixAwsPeerArrayOutputWithContext(ctx context.Context) AviatrixAwsPeerArrayOutput

type AviatrixAwsPeerInput

type AviatrixAwsPeerInput interface {
	pulumi.Input

	ToAviatrixAwsPeerOutput() AviatrixAwsPeerOutput
	ToAviatrixAwsPeerOutputWithContext(ctx context.Context) AviatrixAwsPeerOutput
}

type AviatrixAwsPeerMap

type AviatrixAwsPeerMap map[string]AviatrixAwsPeerInput

func (AviatrixAwsPeerMap) ElementType

func (AviatrixAwsPeerMap) ElementType() reflect.Type

func (AviatrixAwsPeerMap) ToAviatrixAwsPeerMapOutput

func (i AviatrixAwsPeerMap) ToAviatrixAwsPeerMapOutput() AviatrixAwsPeerMapOutput

func (AviatrixAwsPeerMap) ToAviatrixAwsPeerMapOutputWithContext

func (i AviatrixAwsPeerMap) ToAviatrixAwsPeerMapOutputWithContext(ctx context.Context) AviatrixAwsPeerMapOutput

type AviatrixAwsPeerMapInput

type AviatrixAwsPeerMapInput interface {
	pulumi.Input

	ToAviatrixAwsPeerMapOutput() AviatrixAwsPeerMapOutput
	ToAviatrixAwsPeerMapOutputWithContext(context.Context) AviatrixAwsPeerMapOutput
}

AviatrixAwsPeerMapInput is an input type that accepts AviatrixAwsPeerMap and AviatrixAwsPeerMapOutput values. You can construct a concrete instance of `AviatrixAwsPeerMapInput` via:

AviatrixAwsPeerMap{ "key": AviatrixAwsPeerArgs{...} }

type AviatrixAwsPeerMapOutput

type AviatrixAwsPeerMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsPeerMapOutput) ElementType

func (AviatrixAwsPeerMapOutput) ElementType() reflect.Type

func (AviatrixAwsPeerMapOutput) MapIndex

func (AviatrixAwsPeerMapOutput) ToAviatrixAwsPeerMapOutput

func (o AviatrixAwsPeerMapOutput) ToAviatrixAwsPeerMapOutput() AviatrixAwsPeerMapOutput

func (AviatrixAwsPeerMapOutput) ToAviatrixAwsPeerMapOutputWithContext

func (o AviatrixAwsPeerMapOutput) ToAviatrixAwsPeerMapOutputWithContext(ctx context.Context) AviatrixAwsPeerMapOutput

type AviatrixAwsPeerOutput

type AviatrixAwsPeerOutput struct{ *pulumi.OutputState }

func (AviatrixAwsPeerOutput) AccountName1

func (o AviatrixAwsPeerOutput) AccountName1() pulumi.StringOutput

This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.

func (AviatrixAwsPeerOutput) AccountName2

func (o AviatrixAwsPeerOutput) AccountName2() pulumi.StringOutput

This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.

func (AviatrixAwsPeerOutput) ElementType

func (AviatrixAwsPeerOutput) ElementType() reflect.Type

func (AviatrixAwsPeerOutput) RtbList1Outputs

func (o AviatrixAwsPeerOutput) RtbList1Outputs() pulumi.StringArrayOutput

List of route table ID of vpc_id1.

func (AviatrixAwsPeerOutput) RtbList1s

List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].

func (AviatrixAwsPeerOutput) RtbList2Outputs

func (o AviatrixAwsPeerOutput) RtbList2Outputs() pulumi.StringArrayOutput

List of route table ID of vpc_id2.

func (AviatrixAwsPeerOutput) RtbList2s

List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].

func (AviatrixAwsPeerOutput) ToAviatrixAwsPeerOutput

func (o AviatrixAwsPeerOutput) ToAviatrixAwsPeerOutput() AviatrixAwsPeerOutput

func (AviatrixAwsPeerOutput) ToAviatrixAwsPeerOutputWithContext

func (o AviatrixAwsPeerOutput) ToAviatrixAwsPeerOutputWithContext(ctx context.Context) AviatrixAwsPeerOutput

func (AviatrixAwsPeerOutput) VpcId1

VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".

func (AviatrixAwsPeerOutput) VpcId2

VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".

func (AviatrixAwsPeerOutput) VpcReg1

Region of AWS cloud. Example: AWS: "us-east-1".

func (AviatrixAwsPeerOutput) VpcReg2

Region of AWS cloud. Example: AWS: "us-east-1".

type AviatrixAwsPeerState

type AviatrixAwsPeerState struct {
	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName1 pulumi.StringPtrInput
	// This parameter represents the name of an AWS Cloud-Account in Aviatrix controller.
	AccountName2 pulumi.StringPtrInput
	// List of route table ID of vpc_id1.
	RtbList1Outputs pulumi.StringArrayInput
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList1s pulumi.StringArrayInput
	// List of route table ID of vpc_id2.
	RtbList2Outputs pulumi.StringArrayInput
	// List of Route table ID. Valid Values: ["all"], ["rtb-abcd1234"] OR ["rtb-abcd1234,rtb-wxyz5678"].
	RtbList2s pulumi.StringArrayInput
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId1 pulumi.StringPtrInput
	// VPC ID of AWS cloud. Example: AWS: "vpc-abcd1234".
	VpcId2 pulumi.StringPtrInput
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg1 pulumi.StringPtrInput
	// Region of AWS cloud. Example: AWS: "us-east-1".
	VpcReg2 pulumi.StringPtrInput
}

func (AviatrixAwsPeerState) ElementType

func (AviatrixAwsPeerState) ElementType() reflect.Type

type AviatrixAwsTgw

type AviatrixAwsTgw struct {
	pulumi.CustomResourceState

	// Name of the cloud account in the Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// A list of names of Aviatrix Transit Gateway(s) (transit VPCs) to attach to the Aviatrix_Edge_Domain.
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_aws_tgw_transit_gateway_attachment resource instead.
	AttachedAviatrixTransitGateways pulumi.StringArrayOutput `pulumi:"attachedAviatrixTransitGateways"`
	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	AwsSideAsNumber pulumi.StringOutput `pulumi:"awsSideAsNumber"`
	// Set of TGW CIDRs. For example, `cidrs = ["10.0.10.0/24", "10.1.10.0/24"]`. Available as of provider version R2.18.1+.
	Cidrs pulumi.StringArrayOutput `pulumi:"cidrs"`
	// Type of cloud service provider, requires an integer value. Supported for AWS (1) and AWSGov (256). Default value: 1.
	CloudType pulumi.IntPtrOutput `pulumi:"cloudType"`
	// Enable multicast. Default value: false. Valid values: true, false. Available in provider version R2.17+.
	EnableMulticast pulumi.BoolPtrOutput `pulumi:"enableMulticast"`
	// Inspection mode. Valid values: "Domain-based", "Connection-based". Default value: "Domain-based". Available as of provider version R2.23+.
	InspectionMode pulumi.StringPtrOutput `pulumi:"inspectionMode"`
	// This parameter is a switch used to determine whether or not to manage security domains using the **aviatrix_aws_tgw** resource. If this is set to false, creation and management of security domains must be done using the **aviatrix_aws_tgw_security_domain** resource. Valid values: true, false. Default value: true.
	ManageSecurityDomain pulumi.BoolPtrOutput `pulumi:"manageSecurityDomain"`
	// This parameter is a switch used to determine whether or not to manage transit gateway attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of transit gateways must be done using the **aviatrix_aws_tgw_transit_gateway_attachment** resource. Valid values: true, false. Default value: true.
	ManageTransitGatewayAttachment pulumi.BoolPtrOutput `pulumi:"manageTransitGatewayAttachment"`
	// This parameter is a switch used to determine whether or not to manage VPC attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of VPCs must be done using the **aviatrix_aws_tgw_vpc_attachment** resource. Valid values: true, false. Default value: true.
	ManageVpcAttachment pulumi.BoolPtrOutput `pulumi:"manageVpcAttachment"`
	// AWS region of AWS TGW to be created in
	Region pulumi.StringOutput `pulumi:"region"`
	// Security Domains to create together with AWS TGW's creation. Three default domains, along with the connections between them, are created automatically. These three domains can't be deleted, but the connection between any two of them can be.
	//
	// Deprecated: Please set `manage_security_domain` to false, and use the standalone aviatrix_aws_tgw_network_domain resource instead.
	SecurityDomains AviatrixAwsTgwSecurityDomainTypeArrayOutput `pulumi:"securityDomains"`
	// TGW ID. Available as of provider version R2.19+.
	TgwId pulumi.StringOutput `pulumi:"tgwId"`
	// Name of the AWS TGW to be created
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

The **aviatrix_aws_tgw** resource allows the creation and management of Aviatrix-created AWS TGWs.

> **NOTE:** If you are planning to attach VPCs to the **aviatrix_aws_tgw** resource and anticipate updating it often and/or using advanced options such as customized route advertisement, we highly recommend managing those VPCs outside this resource by setting `manageVpcAttachment` to false and using the **aviatrix_aws_tgw_vpc_attachment** resource instead of the in-line `attachedVpc {}` block.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgw(ctx, "testAwsTgw", &aviatrix.AviatrixAwsTgwArgs{
			AccountName:                    pulumi.String("devops"),
			AwsSideAsNumber:                pulumi.String("64512"),
			ManageTransitGatewayAttachment: pulumi.Bool(false),
			ManageVpcAttachment:            pulumi.Bool(false),
			Region:                         pulumi.String("us-east-1"),
			SecurityDomains: AviatrixAwsTgwSecurityDomainTypeArray{
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Default_Domain"),
						pulumi.String("Shared_Service_Domain"),
						pulumi.String("mysdn1"),
					},
					SecurityDomainName: pulumi.String("Aviatrix_Edge_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
						pulumi.String("Shared_Service_Domain"),
					},
					SecurityDomainName: pulumi.String("Default_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
						pulumi.String("Default_Domain"),
					},
					SecurityDomainName: pulumi.String("Shared_Service_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
					},
					SecurityDomainName: pulumi.String("SDN1"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					SecurityDomainName: pulumi.String("mysdn2"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					AviatrixFirewall:   pulumi.Bool(true),
					SecurityDomainName: pulumi.String("firewall-domain"),
				},
			},
			TgwName: pulumi.String("test-AWS-TGW"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgw(ctx, "testAwsGovTgw", &aviatrix.AviatrixAwsTgwArgs{
			AccountName:                    pulumi.String("devops"),
			AwsSideAsNumber:                pulumi.String("64512"),
			CloudType:                      pulumi.Int(256),
			ManageTransitGatewayAttachment: pulumi.Bool(false),
			ManageVpcAttachment:            pulumi.Bool(false),
			Region:                         pulumi.String("us-gov-east-1"),
			SecurityDomains: AviatrixAwsTgwSecurityDomainTypeArray{
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Default_Domain"),
						pulumi.String("Shared_Service_Domain"),
						pulumi.String("mysdn1"),
					},
					SecurityDomainName: pulumi.String("Aviatrix_Edge_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
						pulumi.String("Shared_Service_Domain"),
					},
					SecurityDomainName: pulumi.String("Default_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
						pulumi.String("Default_Domain"),
					},
					SecurityDomainName: pulumi.String("Shared_Service_Domain"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					ConnectedDomains: pulumi.StringArray{
						pulumi.String("Aviatrix_Edge_Domain"),
					},
					SecurityDomainName: pulumi.String("SDN1"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					SecurityDomainName: pulumi.String("mysdn2"),
				},
				&AviatrixAwsTgwSecurityDomainTypeArgs{
					AviatrixFirewall:   pulumi.Bool(true),
					SecurityDomainName: pulumi.String("firewall-domain"),
				},
			},
			TgwName: pulumi.String("test-AWSGov-TGW"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw** can be imported using the `tgw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgw:AviatrixAwsTgw test tgw_name

```

func GetAviatrixAwsTgw

func GetAviatrixAwsTgw(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgw, error)

GetAviatrixAwsTgw gets an existing AviatrixAwsTgw 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 NewAviatrixAwsTgw

func NewAviatrixAwsTgw(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgw, error)

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

func (*AviatrixAwsTgw) ElementType

func (*AviatrixAwsTgw) ElementType() reflect.Type

func (*AviatrixAwsTgw) ToAviatrixAwsTgwOutput

func (i *AviatrixAwsTgw) ToAviatrixAwsTgwOutput() AviatrixAwsTgwOutput

func (*AviatrixAwsTgw) ToAviatrixAwsTgwOutputWithContext

func (i *AviatrixAwsTgw) ToAviatrixAwsTgwOutputWithContext(ctx context.Context) AviatrixAwsTgwOutput

type AviatrixAwsTgwArgs

type AviatrixAwsTgwArgs struct {
	// Name of the cloud account in the Aviatrix controller.
	AccountName pulumi.StringInput
	// A list of names of Aviatrix Transit Gateway(s) (transit VPCs) to attach to the Aviatrix_Edge_Domain.
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_aws_tgw_transit_gateway_attachment resource instead.
	AttachedAviatrixTransitGateways pulumi.StringArrayInput
	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	AwsSideAsNumber pulumi.StringInput
	// Set of TGW CIDRs. For example, `cidrs = ["10.0.10.0/24", "10.1.10.0/24"]`. Available as of provider version R2.18.1+.
	Cidrs pulumi.StringArrayInput
	// Type of cloud service provider, requires an integer value. Supported for AWS (1) and AWSGov (256). Default value: 1.
	CloudType pulumi.IntPtrInput
	// Enable multicast. Default value: false. Valid values: true, false. Available in provider version R2.17+.
	EnableMulticast pulumi.BoolPtrInput
	// Inspection mode. Valid values: "Domain-based", "Connection-based". Default value: "Domain-based". Available as of provider version R2.23+.
	InspectionMode pulumi.StringPtrInput
	// This parameter is a switch used to determine whether or not to manage security domains using the **aviatrix_aws_tgw** resource. If this is set to false, creation and management of security domains must be done using the **aviatrix_aws_tgw_security_domain** resource. Valid values: true, false. Default value: true.
	ManageSecurityDomain pulumi.BoolPtrInput
	// This parameter is a switch used to determine whether or not to manage transit gateway attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of transit gateways must be done using the **aviatrix_aws_tgw_transit_gateway_attachment** resource. Valid values: true, false. Default value: true.
	ManageTransitGatewayAttachment pulumi.BoolPtrInput
	// This parameter is a switch used to determine whether or not to manage VPC attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of VPCs must be done using the **aviatrix_aws_tgw_vpc_attachment** resource. Valid values: true, false. Default value: true.
	ManageVpcAttachment pulumi.BoolPtrInput
	// AWS region of AWS TGW to be created in
	Region pulumi.StringInput
	// Security Domains to create together with AWS TGW's creation. Three default domains, along with the connections between them, are created automatically. These three domains can't be deleted, but the connection between any two of them can be.
	//
	// Deprecated: Please set `manage_security_domain` to false, and use the standalone aviatrix_aws_tgw_network_domain resource instead.
	SecurityDomains AviatrixAwsTgwSecurityDomainTypeArrayInput
	// Name of the AWS TGW to be created
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgw resource.

func (AviatrixAwsTgwArgs) ElementType

func (AviatrixAwsTgwArgs) ElementType() reflect.Type

type AviatrixAwsTgwArray

type AviatrixAwsTgwArray []AviatrixAwsTgwInput

func (AviatrixAwsTgwArray) ElementType

func (AviatrixAwsTgwArray) ElementType() reflect.Type

func (AviatrixAwsTgwArray) ToAviatrixAwsTgwArrayOutput

func (i AviatrixAwsTgwArray) ToAviatrixAwsTgwArrayOutput() AviatrixAwsTgwArrayOutput

func (AviatrixAwsTgwArray) ToAviatrixAwsTgwArrayOutputWithContext

func (i AviatrixAwsTgwArray) ToAviatrixAwsTgwArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwArrayOutput

type AviatrixAwsTgwArrayInput

type AviatrixAwsTgwArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwArrayOutput() AviatrixAwsTgwArrayOutput
	ToAviatrixAwsTgwArrayOutputWithContext(context.Context) AviatrixAwsTgwArrayOutput
}

AviatrixAwsTgwArrayInput is an input type that accepts AviatrixAwsTgwArray and AviatrixAwsTgwArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwArrayInput` via:

AviatrixAwsTgwArray{ AviatrixAwsTgwArgs{...} }

type AviatrixAwsTgwArrayOutput

type AviatrixAwsTgwArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwArrayOutput) ElementType

func (AviatrixAwsTgwArrayOutput) ElementType() reflect.Type

func (AviatrixAwsTgwArrayOutput) Index

func (AviatrixAwsTgwArrayOutput) ToAviatrixAwsTgwArrayOutput

func (o AviatrixAwsTgwArrayOutput) ToAviatrixAwsTgwArrayOutput() AviatrixAwsTgwArrayOutput

func (AviatrixAwsTgwArrayOutput) ToAviatrixAwsTgwArrayOutputWithContext

func (o AviatrixAwsTgwArrayOutput) ToAviatrixAwsTgwArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwArrayOutput

type AviatrixAwsTgwConnect

type AviatrixAwsTgwConnect struct {
	pulumi.CustomResourceState

	// Connect Attachment ID.
	ConnectAttachmentId pulumi.StringOutput `pulumi:"connectAttachmentId"`
	// Connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Network Domain name.
	NetworkDomainName pulumi.StringPtrOutput `pulumi:"networkDomainName"`
	// Security Domain name.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrOutput `pulumi:"securityDomainName"`
	// AWS TGW name.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
	// Transport Attachment ID.
	TransportAttachmentId pulumi.StringOutput `pulumi:"transportAttachmentId"`
	// Transport Attachment VPC ID.
	TransportVpcId pulumi.StringOutput `pulumi:"transportVpcId"`
}

The **aviatrix_aws_tgw_connect** resource allows the creation and management of AWS TGW Connect connections. To create and manage TGW Connect peers, please use `AviatrixAwsTgwConnectPeer` resources. This resource is available as of provider version R2.18.1+.

> **NOTE:** Before creating an AWS TGW Connect, the AWS TGW must have an attached VPC via the `AviatrixAwsTgwVpcAttachment` resource. Also, the AWS TGW must have configured CIDRs via the `AviatrixAwsTgw` `cidrs` attribute.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwConnect(ctx, "testAwsTgwConnect", &aviatrix.AviatrixAwsTgwConnectArgs{
			TgwName:           pulumi.Any(aviatrix_aws_tgw.Test_aws_tgw.Tgw_name),
			ConnectionName:    pulumi.String("aws-tgw-connect"),
			TransportVpcId:    pulumi.Any(aviatrix_aws_tgw_vpc_attachment.Test_aws_tgw_vpc_attachment.Vpc_id),
			NetworkDomainName: pulumi.Any(aviatrix_aws_tgw_vpc_attachment.Test_aws_tgw_vpc_attachment.Network_domain_name),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_connect** can be imported using the `tgw_name` and `connection_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwConnect:AviatrixAwsTgwConnect test tgw_name~~connection_name

```

func GetAviatrixAwsTgwConnect

func GetAviatrixAwsTgwConnect(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwConnectState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwConnect, error)

GetAviatrixAwsTgwConnect gets an existing AviatrixAwsTgwConnect 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 NewAviatrixAwsTgwConnect

func NewAviatrixAwsTgwConnect(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwConnectArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwConnect, error)

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

func (*AviatrixAwsTgwConnect) ElementType

func (*AviatrixAwsTgwConnect) ElementType() reflect.Type

func (*AviatrixAwsTgwConnect) ToAviatrixAwsTgwConnectOutput

func (i *AviatrixAwsTgwConnect) ToAviatrixAwsTgwConnectOutput() AviatrixAwsTgwConnectOutput

func (*AviatrixAwsTgwConnect) ToAviatrixAwsTgwConnectOutputWithContext

func (i *AviatrixAwsTgwConnect) ToAviatrixAwsTgwConnectOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectOutput

type AviatrixAwsTgwConnectArgs

type AviatrixAwsTgwConnectArgs struct {
	// Connection name.
	ConnectionName pulumi.StringInput
	// Network Domain name.
	NetworkDomainName pulumi.StringPtrInput
	// Security Domain name.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// AWS TGW name.
	TgwName pulumi.StringInput
	// Transport Attachment VPC ID.
	TransportVpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwConnect resource.

func (AviatrixAwsTgwConnectArgs) ElementType

func (AviatrixAwsTgwConnectArgs) ElementType() reflect.Type

type AviatrixAwsTgwConnectArray

type AviatrixAwsTgwConnectArray []AviatrixAwsTgwConnectInput

func (AviatrixAwsTgwConnectArray) ElementType

func (AviatrixAwsTgwConnectArray) ElementType() reflect.Type

func (AviatrixAwsTgwConnectArray) ToAviatrixAwsTgwConnectArrayOutput

func (i AviatrixAwsTgwConnectArray) ToAviatrixAwsTgwConnectArrayOutput() AviatrixAwsTgwConnectArrayOutput

func (AviatrixAwsTgwConnectArray) ToAviatrixAwsTgwConnectArrayOutputWithContext

func (i AviatrixAwsTgwConnectArray) ToAviatrixAwsTgwConnectArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectArrayOutput

type AviatrixAwsTgwConnectArrayInput

type AviatrixAwsTgwConnectArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectArrayOutput() AviatrixAwsTgwConnectArrayOutput
	ToAviatrixAwsTgwConnectArrayOutputWithContext(context.Context) AviatrixAwsTgwConnectArrayOutput
}

AviatrixAwsTgwConnectArrayInput is an input type that accepts AviatrixAwsTgwConnectArray and AviatrixAwsTgwConnectArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwConnectArrayInput` via:

AviatrixAwsTgwConnectArray{ AviatrixAwsTgwConnectArgs{...} }

type AviatrixAwsTgwConnectArrayOutput

type AviatrixAwsTgwConnectArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectArrayOutput) ElementType

func (AviatrixAwsTgwConnectArrayOutput) Index

func (AviatrixAwsTgwConnectArrayOutput) ToAviatrixAwsTgwConnectArrayOutput

func (o AviatrixAwsTgwConnectArrayOutput) ToAviatrixAwsTgwConnectArrayOutput() AviatrixAwsTgwConnectArrayOutput

func (AviatrixAwsTgwConnectArrayOutput) ToAviatrixAwsTgwConnectArrayOutputWithContext

func (o AviatrixAwsTgwConnectArrayOutput) ToAviatrixAwsTgwConnectArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectArrayOutput

type AviatrixAwsTgwConnectInput

type AviatrixAwsTgwConnectInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectOutput() AviatrixAwsTgwConnectOutput
	ToAviatrixAwsTgwConnectOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectOutput
}

type AviatrixAwsTgwConnectMap

type AviatrixAwsTgwConnectMap map[string]AviatrixAwsTgwConnectInput

func (AviatrixAwsTgwConnectMap) ElementType

func (AviatrixAwsTgwConnectMap) ElementType() reflect.Type

func (AviatrixAwsTgwConnectMap) ToAviatrixAwsTgwConnectMapOutput

func (i AviatrixAwsTgwConnectMap) ToAviatrixAwsTgwConnectMapOutput() AviatrixAwsTgwConnectMapOutput

func (AviatrixAwsTgwConnectMap) ToAviatrixAwsTgwConnectMapOutputWithContext

func (i AviatrixAwsTgwConnectMap) ToAviatrixAwsTgwConnectMapOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectMapOutput

type AviatrixAwsTgwConnectMapInput

type AviatrixAwsTgwConnectMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectMapOutput() AviatrixAwsTgwConnectMapOutput
	ToAviatrixAwsTgwConnectMapOutputWithContext(context.Context) AviatrixAwsTgwConnectMapOutput
}

AviatrixAwsTgwConnectMapInput is an input type that accepts AviatrixAwsTgwConnectMap and AviatrixAwsTgwConnectMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwConnectMapInput` via:

AviatrixAwsTgwConnectMap{ "key": AviatrixAwsTgwConnectArgs{...} }

type AviatrixAwsTgwConnectMapOutput

type AviatrixAwsTgwConnectMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectMapOutput) ElementType

func (AviatrixAwsTgwConnectMapOutput) MapIndex

func (AviatrixAwsTgwConnectMapOutput) ToAviatrixAwsTgwConnectMapOutput

func (o AviatrixAwsTgwConnectMapOutput) ToAviatrixAwsTgwConnectMapOutput() AviatrixAwsTgwConnectMapOutput

func (AviatrixAwsTgwConnectMapOutput) ToAviatrixAwsTgwConnectMapOutputWithContext

func (o AviatrixAwsTgwConnectMapOutput) ToAviatrixAwsTgwConnectMapOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectMapOutput

type AviatrixAwsTgwConnectOutput

type AviatrixAwsTgwConnectOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectOutput) ConnectAttachmentId

func (o AviatrixAwsTgwConnectOutput) ConnectAttachmentId() pulumi.StringOutput

Connect Attachment ID.

func (AviatrixAwsTgwConnectOutput) ConnectionName

func (o AviatrixAwsTgwConnectOutput) ConnectionName() pulumi.StringOutput

Connection name.

func (AviatrixAwsTgwConnectOutput) ElementType

func (AviatrixAwsTgwConnectOutput) NetworkDomainName

func (o AviatrixAwsTgwConnectOutput) NetworkDomainName() pulumi.StringPtrOutput

Network Domain name.

func (AviatrixAwsTgwConnectOutput) SecurityDomainName deprecated

func (o AviatrixAwsTgwConnectOutput) SecurityDomainName() pulumi.StringPtrOutput

Security Domain name.

Deprecated: Please use network_domain_name instead.

func (AviatrixAwsTgwConnectOutput) TgwName

AWS TGW name.

func (AviatrixAwsTgwConnectOutput) ToAviatrixAwsTgwConnectOutput

func (o AviatrixAwsTgwConnectOutput) ToAviatrixAwsTgwConnectOutput() AviatrixAwsTgwConnectOutput

func (AviatrixAwsTgwConnectOutput) ToAviatrixAwsTgwConnectOutputWithContext

func (o AviatrixAwsTgwConnectOutput) ToAviatrixAwsTgwConnectOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectOutput

func (AviatrixAwsTgwConnectOutput) TransportAttachmentId

func (o AviatrixAwsTgwConnectOutput) TransportAttachmentId() pulumi.StringOutput

Transport Attachment ID.

func (AviatrixAwsTgwConnectOutput) TransportVpcId

func (o AviatrixAwsTgwConnectOutput) TransportVpcId() pulumi.StringOutput

Transport Attachment VPC ID.

type AviatrixAwsTgwConnectPeer

type AviatrixAwsTgwConnectPeer struct {
	pulumi.CustomResourceState

	// Set of BGP Inside CIDR Block(s).
	BgpInsideCidrs pulumi.StringArrayOutput `pulumi:"bgpInsideCidrs"`
	// Connect Attachment ID.
	ConnectAttachmentId pulumi.StringOutput `pulumi:"connectAttachmentId"`
	// Connect Peer ID.
	ConnectPeerId pulumi.StringOutput `pulumi:"connectPeerId"`
	// TGW Connect peer name.
	ConnectPeerName pulumi.StringOutput `pulumi:"connectPeerName"`
	// TGW Connect connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Peer AS Number.
	PeerAsNumber pulumi.StringOutput `pulumi:"peerAsNumber"`
	// Peer GRE IP Address.
	PeerGreAddress pulumi.StringOutput `pulumi:"peerGreAddress"`
	// AWS TGW GRE IP Address.
	TgwGreAddress pulumi.StringPtrOutput `pulumi:"tgwGreAddress"`
	// AWS TGW name.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

The **aviatrix_aws_tgw_connect_peer** resource allows the creation and management of AWS TGW Connect peers. This resource is available as of provider version R2.18.1+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwConnectPeer(ctx, "test", &aviatrix.AviatrixAwsTgwConnectPeerArgs{
			TgwName:             pulumi.Any(aviatrix_aws_tgw.Test_aws_tgw.Tgw_name),
			ConnectionName:      pulumi.Any(aviatrix_aws_tgw_connect.Test_aws_tgw_connect.Connection_name),
			ConnectPeerName:     pulumi.String("connect-peer-test"),
			ConnectAttachmentId: pulumi.Any(aviatrix_aws_tgw_connect.Test_aws_tgw_connect.Connect_attachment_id),
			PeerAsNumber:        pulumi.String("65001"),
			PeerGreAddress:      pulumi.String("172.31.1.11"),
			BgpInsideCidrs: pulumi.StringArray{
				pulumi.String("169.254.6.0/29"),
			},
			TgwGreAddress: pulumi.String("10.0.0.32"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_connect_peer** can be imported using the `tgw_name`, `connection_name` and `connect_peer_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwConnectPeer:AviatrixAwsTgwConnectPeer test tgw_name~~connection_name~~connect_peer_name

```

func GetAviatrixAwsTgwConnectPeer

func GetAviatrixAwsTgwConnectPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwConnectPeerState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwConnectPeer, error)

GetAviatrixAwsTgwConnectPeer gets an existing AviatrixAwsTgwConnectPeer 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 NewAviatrixAwsTgwConnectPeer

func NewAviatrixAwsTgwConnectPeer(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwConnectPeerArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwConnectPeer, error)

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

func (*AviatrixAwsTgwConnectPeer) ElementType

func (*AviatrixAwsTgwConnectPeer) ElementType() reflect.Type

func (*AviatrixAwsTgwConnectPeer) ToAviatrixAwsTgwConnectPeerOutput

func (i *AviatrixAwsTgwConnectPeer) ToAviatrixAwsTgwConnectPeerOutput() AviatrixAwsTgwConnectPeerOutput

func (*AviatrixAwsTgwConnectPeer) ToAviatrixAwsTgwConnectPeerOutputWithContext

func (i *AviatrixAwsTgwConnectPeer) ToAviatrixAwsTgwConnectPeerOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerOutput

type AviatrixAwsTgwConnectPeerArgs

type AviatrixAwsTgwConnectPeerArgs struct {
	// Set of BGP Inside CIDR Block(s).
	BgpInsideCidrs pulumi.StringArrayInput
	// Connect Attachment ID.
	ConnectAttachmentId pulumi.StringInput
	// TGW Connect peer name.
	ConnectPeerName pulumi.StringInput
	// TGW Connect connection name.
	ConnectionName pulumi.StringInput
	// Peer AS Number.
	PeerAsNumber pulumi.StringInput
	// Peer GRE IP Address.
	PeerGreAddress pulumi.StringInput
	// AWS TGW GRE IP Address.
	TgwGreAddress pulumi.StringPtrInput
	// AWS TGW name.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwConnectPeer resource.

func (AviatrixAwsTgwConnectPeerArgs) ElementType

type AviatrixAwsTgwConnectPeerArray

type AviatrixAwsTgwConnectPeerArray []AviatrixAwsTgwConnectPeerInput

func (AviatrixAwsTgwConnectPeerArray) ElementType

func (AviatrixAwsTgwConnectPeerArray) ToAviatrixAwsTgwConnectPeerArrayOutput

func (i AviatrixAwsTgwConnectPeerArray) ToAviatrixAwsTgwConnectPeerArrayOutput() AviatrixAwsTgwConnectPeerArrayOutput

func (AviatrixAwsTgwConnectPeerArray) ToAviatrixAwsTgwConnectPeerArrayOutputWithContext

func (i AviatrixAwsTgwConnectPeerArray) ToAviatrixAwsTgwConnectPeerArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerArrayOutput

type AviatrixAwsTgwConnectPeerArrayInput

type AviatrixAwsTgwConnectPeerArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectPeerArrayOutput() AviatrixAwsTgwConnectPeerArrayOutput
	ToAviatrixAwsTgwConnectPeerArrayOutputWithContext(context.Context) AviatrixAwsTgwConnectPeerArrayOutput
}

AviatrixAwsTgwConnectPeerArrayInput is an input type that accepts AviatrixAwsTgwConnectPeerArray and AviatrixAwsTgwConnectPeerArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwConnectPeerArrayInput` via:

AviatrixAwsTgwConnectPeerArray{ AviatrixAwsTgwConnectPeerArgs{...} }

type AviatrixAwsTgwConnectPeerArrayOutput

type AviatrixAwsTgwConnectPeerArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectPeerArrayOutput) ElementType

func (AviatrixAwsTgwConnectPeerArrayOutput) Index

func (AviatrixAwsTgwConnectPeerArrayOutput) ToAviatrixAwsTgwConnectPeerArrayOutput

func (o AviatrixAwsTgwConnectPeerArrayOutput) ToAviatrixAwsTgwConnectPeerArrayOutput() AviatrixAwsTgwConnectPeerArrayOutput

func (AviatrixAwsTgwConnectPeerArrayOutput) ToAviatrixAwsTgwConnectPeerArrayOutputWithContext

func (o AviatrixAwsTgwConnectPeerArrayOutput) ToAviatrixAwsTgwConnectPeerArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerArrayOutput

type AviatrixAwsTgwConnectPeerInput

type AviatrixAwsTgwConnectPeerInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectPeerOutput() AviatrixAwsTgwConnectPeerOutput
	ToAviatrixAwsTgwConnectPeerOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerOutput
}

type AviatrixAwsTgwConnectPeerMap

type AviatrixAwsTgwConnectPeerMap map[string]AviatrixAwsTgwConnectPeerInput

func (AviatrixAwsTgwConnectPeerMap) ElementType

func (AviatrixAwsTgwConnectPeerMap) ToAviatrixAwsTgwConnectPeerMapOutput

func (i AviatrixAwsTgwConnectPeerMap) ToAviatrixAwsTgwConnectPeerMapOutput() AviatrixAwsTgwConnectPeerMapOutput

func (AviatrixAwsTgwConnectPeerMap) ToAviatrixAwsTgwConnectPeerMapOutputWithContext

func (i AviatrixAwsTgwConnectPeerMap) ToAviatrixAwsTgwConnectPeerMapOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerMapOutput

type AviatrixAwsTgwConnectPeerMapInput

type AviatrixAwsTgwConnectPeerMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwConnectPeerMapOutput() AviatrixAwsTgwConnectPeerMapOutput
	ToAviatrixAwsTgwConnectPeerMapOutputWithContext(context.Context) AviatrixAwsTgwConnectPeerMapOutput
}

AviatrixAwsTgwConnectPeerMapInput is an input type that accepts AviatrixAwsTgwConnectPeerMap and AviatrixAwsTgwConnectPeerMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwConnectPeerMapInput` via:

AviatrixAwsTgwConnectPeerMap{ "key": AviatrixAwsTgwConnectPeerArgs{...} }

type AviatrixAwsTgwConnectPeerMapOutput

type AviatrixAwsTgwConnectPeerMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectPeerMapOutput) ElementType

func (AviatrixAwsTgwConnectPeerMapOutput) MapIndex

func (AviatrixAwsTgwConnectPeerMapOutput) ToAviatrixAwsTgwConnectPeerMapOutput

func (o AviatrixAwsTgwConnectPeerMapOutput) ToAviatrixAwsTgwConnectPeerMapOutput() AviatrixAwsTgwConnectPeerMapOutput

func (AviatrixAwsTgwConnectPeerMapOutput) ToAviatrixAwsTgwConnectPeerMapOutputWithContext

func (o AviatrixAwsTgwConnectPeerMapOutput) ToAviatrixAwsTgwConnectPeerMapOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerMapOutput

type AviatrixAwsTgwConnectPeerOutput

type AviatrixAwsTgwConnectPeerOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwConnectPeerOutput) BgpInsideCidrs

Set of BGP Inside CIDR Block(s).

func (AviatrixAwsTgwConnectPeerOutput) ConnectAttachmentId

func (o AviatrixAwsTgwConnectPeerOutput) ConnectAttachmentId() pulumi.StringOutput

Connect Attachment ID.

func (AviatrixAwsTgwConnectPeerOutput) ConnectPeerId

Connect Peer ID.

func (AviatrixAwsTgwConnectPeerOutput) ConnectPeerName

TGW Connect peer name.

func (AviatrixAwsTgwConnectPeerOutput) ConnectionName

TGW Connect connection name.

func (AviatrixAwsTgwConnectPeerOutput) ElementType

func (AviatrixAwsTgwConnectPeerOutput) PeerAsNumber

Peer AS Number.

func (AviatrixAwsTgwConnectPeerOutput) PeerGreAddress

Peer GRE IP Address.

func (AviatrixAwsTgwConnectPeerOutput) TgwGreAddress

AWS TGW GRE IP Address.

func (AviatrixAwsTgwConnectPeerOutput) TgwName

AWS TGW name.

func (AviatrixAwsTgwConnectPeerOutput) ToAviatrixAwsTgwConnectPeerOutput

func (o AviatrixAwsTgwConnectPeerOutput) ToAviatrixAwsTgwConnectPeerOutput() AviatrixAwsTgwConnectPeerOutput

func (AviatrixAwsTgwConnectPeerOutput) ToAviatrixAwsTgwConnectPeerOutputWithContext

func (o AviatrixAwsTgwConnectPeerOutput) ToAviatrixAwsTgwConnectPeerOutputWithContext(ctx context.Context) AviatrixAwsTgwConnectPeerOutput

type AviatrixAwsTgwConnectPeerState

type AviatrixAwsTgwConnectPeerState struct {
	// Set of BGP Inside CIDR Block(s).
	BgpInsideCidrs pulumi.StringArrayInput
	// Connect Attachment ID.
	ConnectAttachmentId pulumi.StringPtrInput
	// Connect Peer ID.
	ConnectPeerId pulumi.StringPtrInput
	// TGW Connect peer name.
	ConnectPeerName pulumi.StringPtrInput
	// TGW Connect connection name.
	ConnectionName pulumi.StringPtrInput
	// Peer AS Number.
	PeerAsNumber pulumi.StringPtrInput
	// Peer GRE IP Address.
	PeerGreAddress pulumi.StringPtrInput
	// AWS TGW GRE IP Address.
	TgwGreAddress pulumi.StringPtrInput
	// AWS TGW name.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwConnectPeerState) ElementType

type AviatrixAwsTgwConnectState

type AviatrixAwsTgwConnectState struct {
	// Connect Attachment ID.
	ConnectAttachmentId pulumi.StringPtrInput
	// Connection name.
	ConnectionName pulumi.StringPtrInput
	// Network Domain name.
	NetworkDomainName pulumi.StringPtrInput
	// Security Domain name.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// AWS TGW name.
	TgwName pulumi.StringPtrInput
	// Transport Attachment ID.
	TransportAttachmentId pulumi.StringPtrInput
	// Transport Attachment VPC ID.
	TransportVpcId pulumi.StringPtrInput
}

func (AviatrixAwsTgwConnectState) ElementType

func (AviatrixAwsTgwConnectState) ElementType() reflect.Type

type AviatrixAwsTgwDirectconnect

type AviatrixAwsTgwDirectconnect struct {
	pulumi.CustomResourceState

	// A list of comma separated CIDRs for DXGW to advertise to remote(on-prem).
	AllowedPrefix pulumi.StringOutput `pulumi:"allowedPrefix"`
	// This parameter represents the name of an Account in Aviatrix controller.
	DirectconnectAccountName pulumi.StringOutput `pulumi:"directconnectAccountName"`
	// This parameter represents the name of a Direct Connect Gateway ID.
	DxGatewayId pulumi.StringOutput `pulumi:"dxGatewayId"`
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW DirectConnect. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// The name of a network domain, to which the direct connect gateway will be attached.
	NetworkDomainName pulumi.StringPtrOutput `pulumi:"networkDomainName"`
	// The name of a security domain, to which the direct connect gateway will be attached.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrOutput `pulumi:"securityDomainName"`
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

The **aviatrix_aws_tgw_directconnect** resource allows the creation and management of Aviatrix-created AWS TGW DirectConnect connections.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwDirectconnect(ctx, "testAwsTgwDirectconnect", &aviatrix.AviatrixAwsTgwDirectconnectArgs{
			AllowedPrefix:            pulumi.String("10.12.0.0/24"),
			DirectconnectAccountName: pulumi.String("username"),
			DxGatewayId:              pulumi.String("30321d76-dd01-49bf"),
			NetworkDomainName:        pulumi.String("my-ndn-1"),
			TgwName:                  pulumi.String("my-aws-tgw-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_directconnect** can be imported using the `tgw_name` and `dx_gateway_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwDirectconnect:AviatrixAwsTgwDirectconnect test tgw_name~dx_gateway_id

```

func GetAviatrixAwsTgwDirectconnect

func GetAviatrixAwsTgwDirectconnect(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwDirectconnectState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwDirectconnect, error)

GetAviatrixAwsTgwDirectconnect gets an existing AviatrixAwsTgwDirectconnect 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 NewAviatrixAwsTgwDirectconnect

func NewAviatrixAwsTgwDirectconnect(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwDirectconnectArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwDirectconnect, error)

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

func (*AviatrixAwsTgwDirectconnect) ElementType

func (*AviatrixAwsTgwDirectconnect) ElementType() reflect.Type

func (*AviatrixAwsTgwDirectconnect) ToAviatrixAwsTgwDirectconnectOutput

func (i *AviatrixAwsTgwDirectconnect) ToAviatrixAwsTgwDirectconnectOutput() AviatrixAwsTgwDirectconnectOutput

func (*AviatrixAwsTgwDirectconnect) ToAviatrixAwsTgwDirectconnectOutputWithContext

func (i *AviatrixAwsTgwDirectconnect) ToAviatrixAwsTgwDirectconnectOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectOutput

type AviatrixAwsTgwDirectconnectArgs

type AviatrixAwsTgwDirectconnectArgs struct {
	// A list of comma separated CIDRs for DXGW to advertise to remote(on-prem).
	AllowedPrefix pulumi.StringInput
	// This parameter represents the name of an Account in Aviatrix controller.
	DirectconnectAccountName pulumi.StringInput
	// This parameter represents the name of a Direct Connect Gateway ID.
	DxGatewayId pulumi.StringInput
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW DirectConnect. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// The name of a network domain, to which the direct connect gateway will be attached.
	NetworkDomainName pulumi.StringPtrInput
	// The name of a security domain, to which the direct connect gateway will be attached.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwDirectconnect resource.

func (AviatrixAwsTgwDirectconnectArgs) ElementType

type AviatrixAwsTgwDirectconnectArray

type AviatrixAwsTgwDirectconnectArray []AviatrixAwsTgwDirectconnectInput

func (AviatrixAwsTgwDirectconnectArray) ElementType

func (AviatrixAwsTgwDirectconnectArray) ToAviatrixAwsTgwDirectconnectArrayOutput

func (i AviatrixAwsTgwDirectconnectArray) ToAviatrixAwsTgwDirectconnectArrayOutput() AviatrixAwsTgwDirectconnectArrayOutput

func (AviatrixAwsTgwDirectconnectArray) ToAviatrixAwsTgwDirectconnectArrayOutputWithContext

func (i AviatrixAwsTgwDirectconnectArray) ToAviatrixAwsTgwDirectconnectArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectArrayOutput

type AviatrixAwsTgwDirectconnectArrayInput

type AviatrixAwsTgwDirectconnectArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwDirectconnectArrayOutput() AviatrixAwsTgwDirectconnectArrayOutput
	ToAviatrixAwsTgwDirectconnectArrayOutputWithContext(context.Context) AviatrixAwsTgwDirectconnectArrayOutput
}

AviatrixAwsTgwDirectconnectArrayInput is an input type that accepts AviatrixAwsTgwDirectconnectArray and AviatrixAwsTgwDirectconnectArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwDirectconnectArrayInput` via:

AviatrixAwsTgwDirectconnectArray{ AviatrixAwsTgwDirectconnectArgs{...} }

type AviatrixAwsTgwDirectconnectArrayOutput

type AviatrixAwsTgwDirectconnectArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwDirectconnectArrayOutput) ElementType

func (AviatrixAwsTgwDirectconnectArrayOutput) Index

func (AviatrixAwsTgwDirectconnectArrayOutput) ToAviatrixAwsTgwDirectconnectArrayOutput

func (o AviatrixAwsTgwDirectconnectArrayOutput) ToAviatrixAwsTgwDirectconnectArrayOutput() AviatrixAwsTgwDirectconnectArrayOutput

func (AviatrixAwsTgwDirectconnectArrayOutput) ToAviatrixAwsTgwDirectconnectArrayOutputWithContext

func (o AviatrixAwsTgwDirectconnectArrayOutput) ToAviatrixAwsTgwDirectconnectArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectArrayOutput

type AviatrixAwsTgwDirectconnectInput

type AviatrixAwsTgwDirectconnectInput interface {
	pulumi.Input

	ToAviatrixAwsTgwDirectconnectOutput() AviatrixAwsTgwDirectconnectOutput
	ToAviatrixAwsTgwDirectconnectOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectOutput
}

type AviatrixAwsTgwDirectconnectMap

type AviatrixAwsTgwDirectconnectMap map[string]AviatrixAwsTgwDirectconnectInput

func (AviatrixAwsTgwDirectconnectMap) ElementType

func (AviatrixAwsTgwDirectconnectMap) ToAviatrixAwsTgwDirectconnectMapOutput

func (i AviatrixAwsTgwDirectconnectMap) ToAviatrixAwsTgwDirectconnectMapOutput() AviatrixAwsTgwDirectconnectMapOutput

func (AviatrixAwsTgwDirectconnectMap) ToAviatrixAwsTgwDirectconnectMapOutputWithContext

func (i AviatrixAwsTgwDirectconnectMap) ToAviatrixAwsTgwDirectconnectMapOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectMapOutput

type AviatrixAwsTgwDirectconnectMapInput

type AviatrixAwsTgwDirectconnectMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwDirectconnectMapOutput() AviatrixAwsTgwDirectconnectMapOutput
	ToAviatrixAwsTgwDirectconnectMapOutputWithContext(context.Context) AviatrixAwsTgwDirectconnectMapOutput
}

AviatrixAwsTgwDirectconnectMapInput is an input type that accepts AviatrixAwsTgwDirectconnectMap and AviatrixAwsTgwDirectconnectMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwDirectconnectMapInput` via:

AviatrixAwsTgwDirectconnectMap{ "key": AviatrixAwsTgwDirectconnectArgs{...} }

type AviatrixAwsTgwDirectconnectMapOutput

type AviatrixAwsTgwDirectconnectMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwDirectconnectMapOutput) ElementType

func (AviatrixAwsTgwDirectconnectMapOutput) MapIndex

func (AviatrixAwsTgwDirectconnectMapOutput) ToAviatrixAwsTgwDirectconnectMapOutput

func (o AviatrixAwsTgwDirectconnectMapOutput) ToAviatrixAwsTgwDirectconnectMapOutput() AviatrixAwsTgwDirectconnectMapOutput

func (AviatrixAwsTgwDirectconnectMapOutput) ToAviatrixAwsTgwDirectconnectMapOutputWithContext

func (o AviatrixAwsTgwDirectconnectMapOutput) ToAviatrixAwsTgwDirectconnectMapOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectMapOutput

type AviatrixAwsTgwDirectconnectOutput

type AviatrixAwsTgwDirectconnectOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwDirectconnectOutput) AllowedPrefix

A list of comma separated CIDRs for DXGW to advertise to remote(on-prem).

func (AviatrixAwsTgwDirectconnectOutput) DirectconnectAccountName

func (o AviatrixAwsTgwDirectconnectOutput) DirectconnectAccountName() pulumi.StringOutput

This parameter represents the name of an Account in Aviatrix controller.

func (AviatrixAwsTgwDirectconnectOutput) DxGatewayId

This parameter represents the name of a Direct Connect Gateway ID.

func (AviatrixAwsTgwDirectconnectOutput) ElementType

func (AviatrixAwsTgwDirectconnectOutput) EnableLearnedCidrsApproval

func (o AviatrixAwsTgwDirectconnectOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW DirectConnect. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwDirectconnectOutput) NetworkDomainName

The name of a network domain, to which the direct connect gateway will be attached.

func (AviatrixAwsTgwDirectconnectOutput) SecurityDomainName deprecated

The name of a security domain, to which the direct connect gateway will be attached.

Deprecated: Please use network_domain_name instead.

func (AviatrixAwsTgwDirectconnectOutput) TgwName

This parameter represents the name of an AWS TGW.

func (AviatrixAwsTgwDirectconnectOutput) ToAviatrixAwsTgwDirectconnectOutput

func (o AviatrixAwsTgwDirectconnectOutput) ToAviatrixAwsTgwDirectconnectOutput() AviatrixAwsTgwDirectconnectOutput

func (AviatrixAwsTgwDirectconnectOutput) ToAviatrixAwsTgwDirectconnectOutputWithContext

func (o AviatrixAwsTgwDirectconnectOutput) ToAviatrixAwsTgwDirectconnectOutputWithContext(ctx context.Context) AviatrixAwsTgwDirectconnectOutput

type AviatrixAwsTgwDirectconnectState

type AviatrixAwsTgwDirectconnectState struct {
	// A list of comma separated CIDRs for DXGW to advertise to remote(on-prem).
	AllowedPrefix pulumi.StringPtrInput
	// This parameter represents the name of an Account in Aviatrix controller.
	DirectconnectAccountName pulumi.StringPtrInput
	// This parameter represents the name of a Direct Connect Gateway ID.
	DxGatewayId pulumi.StringPtrInput
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW DirectConnect. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// The name of a network domain, to which the direct connect gateway will be attached.
	NetworkDomainName pulumi.StringPtrInput
	// The name of a security domain, to which the direct connect gateway will be attached.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwDirectconnectState) ElementType

type AviatrixAwsTgwInput

type AviatrixAwsTgwInput interface {
	pulumi.Input

	ToAviatrixAwsTgwOutput() AviatrixAwsTgwOutput
	ToAviatrixAwsTgwOutputWithContext(ctx context.Context) AviatrixAwsTgwOutput
}

type AviatrixAwsTgwIntraDomainInspection

type AviatrixAwsTgwIntraDomainInspection struct {
	pulumi.CustomResourceState

	// The name of a firewall security domain.
	FirewallDomainName pulumi.StringOutput `pulumi:"firewallDomainName"`
	// The name of a security domain.
	RouteDomainName pulumi.StringOutput `pulumi:"routeDomainName"`
	// The AWS TGW name.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

The **aviatrix_aws_tgw_intra_domain_inspection** resource allows the creation and management of intra domain inspection of security domains in an AWS TGW.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwIntraDomainInspection(ctx, "test", &aviatrix.AviatrixAwsTgwIntraDomainInspectionArgs{
			FirewallDomainName: pulumi.String("firewall-domain"),
			RouteDomainName:    pulumi.String("mysd"),
			TgwName:            pulumi.String("test-AWS-TGW"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_aws_tgw_intra_domain_inspection** can be imported using the `tgw_name` and `route_domain_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwIntraDomainInspection:AviatrixAwsTgwIntraDomainInspection test tgw_name~route_domain_name

```

func GetAviatrixAwsTgwIntraDomainInspection

func GetAviatrixAwsTgwIntraDomainInspection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwIntraDomainInspectionState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwIntraDomainInspection, error)

GetAviatrixAwsTgwIntraDomainInspection gets an existing AviatrixAwsTgwIntraDomainInspection 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 NewAviatrixAwsTgwIntraDomainInspection

func NewAviatrixAwsTgwIntraDomainInspection(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwIntraDomainInspectionArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwIntraDomainInspection, error)

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

func (*AviatrixAwsTgwIntraDomainInspection) ElementType

func (*AviatrixAwsTgwIntraDomainInspection) ToAviatrixAwsTgwIntraDomainInspectionOutput

func (i *AviatrixAwsTgwIntraDomainInspection) ToAviatrixAwsTgwIntraDomainInspectionOutput() AviatrixAwsTgwIntraDomainInspectionOutput

func (*AviatrixAwsTgwIntraDomainInspection) ToAviatrixAwsTgwIntraDomainInspectionOutputWithContext

func (i *AviatrixAwsTgwIntraDomainInspection) ToAviatrixAwsTgwIntraDomainInspectionOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionOutput

type AviatrixAwsTgwIntraDomainInspectionArgs

type AviatrixAwsTgwIntraDomainInspectionArgs struct {
	// The name of a firewall security domain.
	FirewallDomainName pulumi.StringInput
	// The name of a security domain.
	RouteDomainName pulumi.StringInput
	// The AWS TGW name.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwIntraDomainInspection resource.

func (AviatrixAwsTgwIntraDomainInspectionArgs) ElementType

type AviatrixAwsTgwIntraDomainInspectionArray

type AviatrixAwsTgwIntraDomainInspectionArray []AviatrixAwsTgwIntraDomainInspectionInput

func (AviatrixAwsTgwIntraDomainInspectionArray) ElementType

func (AviatrixAwsTgwIntraDomainInspectionArray) ToAviatrixAwsTgwIntraDomainInspectionArrayOutput

func (i AviatrixAwsTgwIntraDomainInspectionArray) ToAviatrixAwsTgwIntraDomainInspectionArrayOutput() AviatrixAwsTgwIntraDomainInspectionArrayOutput

func (AviatrixAwsTgwIntraDomainInspectionArray) ToAviatrixAwsTgwIntraDomainInspectionArrayOutputWithContext

func (i AviatrixAwsTgwIntraDomainInspectionArray) ToAviatrixAwsTgwIntraDomainInspectionArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionArrayOutput

type AviatrixAwsTgwIntraDomainInspectionArrayInput

type AviatrixAwsTgwIntraDomainInspectionArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwIntraDomainInspectionArrayOutput() AviatrixAwsTgwIntraDomainInspectionArrayOutput
	ToAviatrixAwsTgwIntraDomainInspectionArrayOutputWithContext(context.Context) AviatrixAwsTgwIntraDomainInspectionArrayOutput
}

AviatrixAwsTgwIntraDomainInspectionArrayInput is an input type that accepts AviatrixAwsTgwIntraDomainInspectionArray and AviatrixAwsTgwIntraDomainInspectionArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwIntraDomainInspectionArrayInput` via:

AviatrixAwsTgwIntraDomainInspectionArray{ AviatrixAwsTgwIntraDomainInspectionArgs{...} }

type AviatrixAwsTgwIntraDomainInspectionArrayOutput

type AviatrixAwsTgwIntraDomainInspectionArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwIntraDomainInspectionArrayOutput) ElementType

func (AviatrixAwsTgwIntraDomainInspectionArrayOutput) Index

func (AviatrixAwsTgwIntraDomainInspectionArrayOutput) ToAviatrixAwsTgwIntraDomainInspectionArrayOutput

func (o AviatrixAwsTgwIntraDomainInspectionArrayOutput) ToAviatrixAwsTgwIntraDomainInspectionArrayOutput() AviatrixAwsTgwIntraDomainInspectionArrayOutput

func (AviatrixAwsTgwIntraDomainInspectionArrayOutput) ToAviatrixAwsTgwIntraDomainInspectionArrayOutputWithContext

func (o AviatrixAwsTgwIntraDomainInspectionArrayOutput) ToAviatrixAwsTgwIntraDomainInspectionArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionArrayOutput

type AviatrixAwsTgwIntraDomainInspectionInput

type AviatrixAwsTgwIntraDomainInspectionInput interface {
	pulumi.Input

	ToAviatrixAwsTgwIntraDomainInspectionOutput() AviatrixAwsTgwIntraDomainInspectionOutput
	ToAviatrixAwsTgwIntraDomainInspectionOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionOutput
}

type AviatrixAwsTgwIntraDomainInspectionMap

type AviatrixAwsTgwIntraDomainInspectionMap map[string]AviatrixAwsTgwIntraDomainInspectionInput

func (AviatrixAwsTgwIntraDomainInspectionMap) ElementType

func (AviatrixAwsTgwIntraDomainInspectionMap) ToAviatrixAwsTgwIntraDomainInspectionMapOutput

func (i AviatrixAwsTgwIntraDomainInspectionMap) ToAviatrixAwsTgwIntraDomainInspectionMapOutput() AviatrixAwsTgwIntraDomainInspectionMapOutput

func (AviatrixAwsTgwIntraDomainInspectionMap) ToAviatrixAwsTgwIntraDomainInspectionMapOutputWithContext

func (i AviatrixAwsTgwIntraDomainInspectionMap) ToAviatrixAwsTgwIntraDomainInspectionMapOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionMapOutput

type AviatrixAwsTgwIntraDomainInspectionMapInput

type AviatrixAwsTgwIntraDomainInspectionMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwIntraDomainInspectionMapOutput() AviatrixAwsTgwIntraDomainInspectionMapOutput
	ToAviatrixAwsTgwIntraDomainInspectionMapOutputWithContext(context.Context) AviatrixAwsTgwIntraDomainInspectionMapOutput
}

AviatrixAwsTgwIntraDomainInspectionMapInput is an input type that accepts AviatrixAwsTgwIntraDomainInspectionMap and AviatrixAwsTgwIntraDomainInspectionMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwIntraDomainInspectionMapInput` via:

AviatrixAwsTgwIntraDomainInspectionMap{ "key": AviatrixAwsTgwIntraDomainInspectionArgs{...} }

type AviatrixAwsTgwIntraDomainInspectionMapOutput

type AviatrixAwsTgwIntraDomainInspectionMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwIntraDomainInspectionMapOutput) ElementType

func (AviatrixAwsTgwIntraDomainInspectionMapOutput) MapIndex

func (AviatrixAwsTgwIntraDomainInspectionMapOutput) ToAviatrixAwsTgwIntraDomainInspectionMapOutput

func (o AviatrixAwsTgwIntraDomainInspectionMapOutput) ToAviatrixAwsTgwIntraDomainInspectionMapOutput() AviatrixAwsTgwIntraDomainInspectionMapOutput

func (AviatrixAwsTgwIntraDomainInspectionMapOutput) ToAviatrixAwsTgwIntraDomainInspectionMapOutputWithContext

func (o AviatrixAwsTgwIntraDomainInspectionMapOutput) ToAviatrixAwsTgwIntraDomainInspectionMapOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionMapOutput

type AviatrixAwsTgwIntraDomainInspectionOutput

type AviatrixAwsTgwIntraDomainInspectionOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwIntraDomainInspectionOutput) ElementType

func (AviatrixAwsTgwIntraDomainInspectionOutput) FirewallDomainName

The name of a firewall security domain.

func (AviatrixAwsTgwIntraDomainInspectionOutput) RouteDomainName

The name of a security domain.

func (AviatrixAwsTgwIntraDomainInspectionOutput) TgwName

The AWS TGW name.

func (AviatrixAwsTgwIntraDomainInspectionOutput) ToAviatrixAwsTgwIntraDomainInspectionOutput

func (o AviatrixAwsTgwIntraDomainInspectionOutput) ToAviatrixAwsTgwIntraDomainInspectionOutput() AviatrixAwsTgwIntraDomainInspectionOutput

func (AviatrixAwsTgwIntraDomainInspectionOutput) ToAviatrixAwsTgwIntraDomainInspectionOutputWithContext

func (o AviatrixAwsTgwIntraDomainInspectionOutput) ToAviatrixAwsTgwIntraDomainInspectionOutputWithContext(ctx context.Context) AviatrixAwsTgwIntraDomainInspectionOutput

type AviatrixAwsTgwIntraDomainInspectionState

type AviatrixAwsTgwIntraDomainInspectionState struct {
	// The name of a firewall security domain.
	FirewallDomainName pulumi.StringPtrInput
	// The name of a security domain.
	RouteDomainName pulumi.StringPtrInput
	// The AWS TGW name.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwIntraDomainInspectionState) ElementType

type AviatrixAwsTgwMap

type AviatrixAwsTgwMap map[string]AviatrixAwsTgwInput

func (AviatrixAwsTgwMap) ElementType

func (AviatrixAwsTgwMap) ElementType() reflect.Type

func (AviatrixAwsTgwMap) ToAviatrixAwsTgwMapOutput

func (i AviatrixAwsTgwMap) ToAviatrixAwsTgwMapOutput() AviatrixAwsTgwMapOutput

func (AviatrixAwsTgwMap) ToAviatrixAwsTgwMapOutputWithContext

func (i AviatrixAwsTgwMap) ToAviatrixAwsTgwMapOutputWithContext(ctx context.Context) AviatrixAwsTgwMapOutput

type AviatrixAwsTgwMapInput

type AviatrixAwsTgwMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwMapOutput() AviatrixAwsTgwMapOutput
	ToAviatrixAwsTgwMapOutputWithContext(context.Context) AviatrixAwsTgwMapOutput
}

AviatrixAwsTgwMapInput is an input type that accepts AviatrixAwsTgwMap and AviatrixAwsTgwMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwMapInput` via:

AviatrixAwsTgwMap{ "key": AviatrixAwsTgwArgs{...} }

type AviatrixAwsTgwMapOutput

type AviatrixAwsTgwMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwMapOutput) ElementType

func (AviatrixAwsTgwMapOutput) ElementType() reflect.Type

func (AviatrixAwsTgwMapOutput) MapIndex

func (AviatrixAwsTgwMapOutput) ToAviatrixAwsTgwMapOutput

func (o AviatrixAwsTgwMapOutput) ToAviatrixAwsTgwMapOutput() AviatrixAwsTgwMapOutput

func (AviatrixAwsTgwMapOutput) ToAviatrixAwsTgwMapOutputWithContext

func (o AviatrixAwsTgwMapOutput) ToAviatrixAwsTgwMapOutputWithContext(ctx context.Context) AviatrixAwsTgwMapOutput

type AviatrixAwsTgwNetworkDomain

type AviatrixAwsTgwNetworkDomain struct {
	pulumi.CustomResourceState

	// Set to true if the network domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrOutput `pulumi:"aviatrixFirewall"`
	// The name of the network domain.
	Name pulumi.StringOutput `pulumi:"name"`
	// Set to true if the network domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrOutput `pulumi:"nativeEgress"`
	// Set to true if the network domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrOutput `pulumi:"nativeFirewall"`
	// The AWS TGW name of the network domain.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

The **aviatrix_aws_tgw_network_domain** resource allows the creation and management of Aviatrix network domains.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAwsTgw, err := aviatrix.NewAviatrixAwsTgw(ctx, "testAwsTgw", &aviatrix.AviatrixAwsTgwArgs{
			AccountName:                    pulumi.String("devops"),
			AwsSideAsNumber:                pulumi.String("64512"),
			Region:                         pulumi.String("us-east-1"),
			TgwName:                        pulumi.String("test-AWS-TGW"),
			ManageSecurityDomain:           pulumi.Bool(false),
			ManageVpcAttachment:            pulumi.Bool(false),
			ManageTransitGatewayAttachment: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		defaultDomain, err := aviatrix.NewAviatrixAwsTgwNetworkDomain(ctx, "defaultDomain", &aviatrix.AviatrixAwsTgwNetworkDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		sharedServiceDomain, err := aviatrix.NewAviatrixAwsTgwNetworkDomain(ctx, "sharedServiceDomain", &aviatrix.AviatrixAwsTgwNetworkDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		aviatrixEdgeDomain, err := aviatrix.NewAviatrixAwsTgwNetworkDomain(ctx, "aviatrixEdgeDomain", &aviatrix.AviatrixAwsTgwNetworkDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn1", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: aviatrixEdgeDomain.Name,
			DomainName2: defaultDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn2", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: aviatrixEdgeDomain.Name,
			DomainName2: sharedServiceDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn3", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: defaultDomain.Name,
			DomainName2: sharedServiceDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwNetworkDomain(ctx, "test", &aviatrix.AviatrixAwsTgwNetworkDomainArgs{
			TgwName: testAwsTgw.TgwName,
		}, pulumi.DependsOn([]pulumi.Resource{
			defaultDomain,
			sharedServiceDomain,
			aviatrixEdgeDomain,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_network_domain** can be imported using the `name` and `tgw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwNetworkDomain:AviatrixAwsTgwNetworkDomain test tgw_name~name

```

func GetAviatrixAwsTgwNetworkDomain

func GetAviatrixAwsTgwNetworkDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwNetworkDomainState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwNetworkDomain, error)

GetAviatrixAwsTgwNetworkDomain gets an existing AviatrixAwsTgwNetworkDomain 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 NewAviatrixAwsTgwNetworkDomain

func NewAviatrixAwsTgwNetworkDomain(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwNetworkDomainArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwNetworkDomain, error)

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

func (*AviatrixAwsTgwNetworkDomain) ElementType

func (*AviatrixAwsTgwNetworkDomain) ElementType() reflect.Type

func (*AviatrixAwsTgwNetworkDomain) ToAviatrixAwsTgwNetworkDomainOutput

func (i *AviatrixAwsTgwNetworkDomain) ToAviatrixAwsTgwNetworkDomainOutput() AviatrixAwsTgwNetworkDomainOutput

func (*AviatrixAwsTgwNetworkDomain) ToAviatrixAwsTgwNetworkDomainOutputWithContext

func (i *AviatrixAwsTgwNetworkDomain) ToAviatrixAwsTgwNetworkDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainOutput

type AviatrixAwsTgwNetworkDomainArgs

type AviatrixAwsTgwNetworkDomainArgs struct {
	// Set to true if the network domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrInput
	// The name of the network domain.
	Name pulumi.StringPtrInput
	// Set to true if the network domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrInput
	// Set to true if the network domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrInput
	// The AWS TGW name of the network domain.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwNetworkDomain resource.

func (AviatrixAwsTgwNetworkDomainArgs) ElementType

type AviatrixAwsTgwNetworkDomainArray

type AviatrixAwsTgwNetworkDomainArray []AviatrixAwsTgwNetworkDomainInput

func (AviatrixAwsTgwNetworkDomainArray) ElementType

func (AviatrixAwsTgwNetworkDomainArray) ToAviatrixAwsTgwNetworkDomainArrayOutput

func (i AviatrixAwsTgwNetworkDomainArray) ToAviatrixAwsTgwNetworkDomainArrayOutput() AviatrixAwsTgwNetworkDomainArrayOutput

func (AviatrixAwsTgwNetworkDomainArray) ToAviatrixAwsTgwNetworkDomainArrayOutputWithContext

func (i AviatrixAwsTgwNetworkDomainArray) ToAviatrixAwsTgwNetworkDomainArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainArrayOutput

type AviatrixAwsTgwNetworkDomainArrayInput

type AviatrixAwsTgwNetworkDomainArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwNetworkDomainArrayOutput() AviatrixAwsTgwNetworkDomainArrayOutput
	ToAviatrixAwsTgwNetworkDomainArrayOutputWithContext(context.Context) AviatrixAwsTgwNetworkDomainArrayOutput
}

AviatrixAwsTgwNetworkDomainArrayInput is an input type that accepts AviatrixAwsTgwNetworkDomainArray and AviatrixAwsTgwNetworkDomainArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwNetworkDomainArrayInput` via:

AviatrixAwsTgwNetworkDomainArray{ AviatrixAwsTgwNetworkDomainArgs{...} }

type AviatrixAwsTgwNetworkDomainArrayOutput

type AviatrixAwsTgwNetworkDomainArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwNetworkDomainArrayOutput) ElementType

func (AviatrixAwsTgwNetworkDomainArrayOutput) Index

func (AviatrixAwsTgwNetworkDomainArrayOutput) ToAviatrixAwsTgwNetworkDomainArrayOutput

func (o AviatrixAwsTgwNetworkDomainArrayOutput) ToAviatrixAwsTgwNetworkDomainArrayOutput() AviatrixAwsTgwNetworkDomainArrayOutput

func (AviatrixAwsTgwNetworkDomainArrayOutput) ToAviatrixAwsTgwNetworkDomainArrayOutputWithContext

func (o AviatrixAwsTgwNetworkDomainArrayOutput) ToAviatrixAwsTgwNetworkDomainArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainArrayOutput

type AviatrixAwsTgwNetworkDomainInput

type AviatrixAwsTgwNetworkDomainInput interface {
	pulumi.Input

	ToAviatrixAwsTgwNetworkDomainOutput() AviatrixAwsTgwNetworkDomainOutput
	ToAviatrixAwsTgwNetworkDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainOutput
}

type AviatrixAwsTgwNetworkDomainMap

type AviatrixAwsTgwNetworkDomainMap map[string]AviatrixAwsTgwNetworkDomainInput

func (AviatrixAwsTgwNetworkDomainMap) ElementType

func (AviatrixAwsTgwNetworkDomainMap) ToAviatrixAwsTgwNetworkDomainMapOutput

func (i AviatrixAwsTgwNetworkDomainMap) ToAviatrixAwsTgwNetworkDomainMapOutput() AviatrixAwsTgwNetworkDomainMapOutput

func (AviatrixAwsTgwNetworkDomainMap) ToAviatrixAwsTgwNetworkDomainMapOutputWithContext

func (i AviatrixAwsTgwNetworkDomainMap) ToAviatrixAwsTgwNetworkDomainMapOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainMapOutput

type AviatrixAwsTgwNetworkDomainMapInput

type AviatrixAwsTgwNetworkDomainMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwNetworkDomainMapOutput() AviatrixAwsTgwNetworkDomainMapOutput
	ToAviatrixAwsTgwNetworkDomainMapOutputWithContext(context.Context) AviatrixAwsTgwNetworkDomainMapOutput
}

AviatrixAwsTgwNetworkDomainMapInput is an input type that accepts AviatrixAwsTgwNetworkDomainMap and AviatrixAwsTgwNetworkDomainMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwNetworkDomainMapInput` via:

AviatrixAwsTgwNetworkDomainMap{ "key": AviatrixAwsTgwNetworkDomainArgs{...} }

type AviatrixAwsTgwNetworkDomainMapOutput

type AviatrixAwsTgwNetworkDomainMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwNetworkDomainMapOutput) ElementType

func (AviatrixAwsTgwNetworkDomainMapOutput) MapIndex

func (AviatrixAwsTgwNetworkDomainMapOutput) ToAviatrixAwsTgwNetworkDomainMapOutput

func (o AviatrixAwsTgwNetworkDomainMapOutput) ToAviatrixAwsTgwNetworkDomainMapOutput() AviatrixAwsTgwNetworkDomainMapOutput

func (AviatrixAwsTgwNetworkDomainMapOutput) ToAviatrixAwsTgwNetworkDomainMapOutputWithContext

func (o AviatrixAwsTgwNetworkDomainMapOutput) ToAviatrixAwsTgwNetworkDomainMapOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainMapOutput

type AviatrixAwsTgwNetworkDomainOutput

type AviatrixAwsTgwNetworkDomainOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwNetworkDomainOutput) AviatrixFirewall

Set to true if the network domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwNetworkDomainOutput) ElementType

func (AviatrixAwsTgwNetworkDomainOutput) Name

The name of the network domain.

func (AviatrixAwsTgwNetworkDomainOutput) NativeEgress

Set to true if the network domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwNetworkDomainOutput) NativeFirewall

Set to true if the network domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwNetworkDomainOutput) TgwName

The AWS TGW name of the network domain.

func (AviatrixAwsTgwNetworkDomainOutput) ToAviatrixAwsTgwNetworkDomainOutput

func (o AviatrixAwsTgwNetworkDomainOutput) ToAviatrixAwsTgwNetworkDomainOutput() AviatrixAwsTgwNetworkDomainOutput

func (AviatrixAwsTgwNetworkDomainOutput) ToAviatrixAwsTgwNetworkDomainOutputWithContext

func (o AviatrixAwsTgwNetworkDomainOutput) ToAviatrixAwsTgwNetworkDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwNetworkDomainOutput

type AviatrixAwsTgwNetworkDomainState

type AviatrixAwsTgwNetworkDomainState struct {
	// Set to true if the network domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrInput
	// The name of the network domain.
	Name pulumi.StringPtrInput
	// Set to true if the network domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrInput
	// Set to true if the network domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrInput
	// The AWS TGW name of the network domain.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwNetworkDomainState) ElementType

type AviatrixAwsTgwOutput

type AviatrixAwsTgwOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwOutput) AccountName

func (o AviatrixAwsTgwOutput) AccountName() pulumi.StringOutput

Name of the cloud account in the Aviatrix controller.

func (AviatrixAwsTgwOutput) AttachedAviatrixTransitGateways deprecated

func (o AviatrixAwsTgwOutput) AttachedAviatrixTransitGateways() pulumi.StringArrayOutput

A list of names of Aviatrix Transit Gateway(s) (transit VPCs) to attach to the Aviatrix_Edge_Domain.

Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_aws_tgw_transit_gateway_attachment resource instead.

func (AviatrixAwsTgwOutput) AwsSideAsNumber

func (o AviatrixAwsTgwOutput) AwsSideAsNumber() pulumi.StringOutput

BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".

func (AviatrixAwsTgwOutput) Cidrs

Set of TGW CIDRs. For example, `cidrs = ["10.0.10.0/24", "10.1.10.0/24"]`. Available as of provider version R2.18.1+.

func (AviatrixAwsTgwOutput) CloudType

Type of cloud service provider, requires an integer value. Supported for AWS (1) and AWSGov (256). Default value: 1.

func (AviatrixAwsTgwOutput) ElementType

func (AviatrixAwsTgwOutput) ElementType() reflect.Type

func (AviatrixAwsTgwOutput) EnableMulticast

func (o AviatrixAwsTgwOutput) EnableMulticast() pulumi.BoolPtrOutput

Enable multicast. Default value: false. Valid values: true, false. Available in provider version R2.17+.

func (AviatrixAwsTgwOutput) InspectionMode

func (o AviatrixAwsTgwOutput) InspectionMode() pulumi.StringPtrOutput

Inspection mode. Valid values: "Domain-based", "Connection-based". Default value: "Domain-based". Available as of provider version R2.23+.

func (AviatrixAwsTgwOutput) ManageSecurityDomain

func (o AviatrixAwsTgwOutput) ManageSecurityDomain() pulumi.BoolPtrOutput

This parameter is a switch used to determine whether or not to manage security domains using the **aviatrix_aws_tgw** resource. If this is set to false, creation and management of security domains must be done using the **aviatrix_aws_tgw_security_domain** resource. Valid values: true, false. Default value: true.

func (AviatrixAwsTgwOutput) ManageTransitGatewayAttachment

func (o AviatrixAwsTgwOutput) ManageTransitGatewayAttachment() pulumi.BoolPtrOutput

This parameter is a switch used to determine whether or not to manage transit gateway attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of transit gateways must be done using the **aviatrix_aws_tgw_transit_gateway_attachment** resource. Valid values: true, false. Default value: true.

func (AviatrixAwsTgwOutput) ManageVpcAttachment

func (o AviatrixAwsTgwOutput) ManageVpcAttachment() pulumi.BoolPtrOutput

This parameter is a switch used to determine whether or not to manage VPC attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of VPCs must be done using the **aviatrix_aws_tgw_vpc_attachment** resource. Valid values: true, false. Default value: true.

func (AviatrixAwsTgwOutput) Region

AWS region of AWS TGW to be created in

func (AviatrixAwsTgwOutput) SecurityDomains deprecated

Security Domains to create together with AWS TGW's creation. Three default domains, along with the connections between them, are created automatically. These three domains can't be deleted, but the connection between any two of them can be.

Deprecated: Please set `manage_security_domain` to false, and use the standalone aviatrix_aws_tgw_network_domain resource instead.

func (AviatrixAwsTgwOutput) TgwId

TGW ID. Available as of provider version R2.19+.

func (AviatrixAwsTgwOutput) TgwName

Name of the AWS TGW to be created

func (AviatrixAwsTgwOutput) ToAviatrixAwsTgwOutput

func (o AviatrixAwsTgwOutput) ToAviatrixAwsTgwOutput() AviatrixAwsTgwOutput

func (AviatrixAwsTgwOutput) ToAviatrixAwsTgwOutputWithContext

func (o AviatrixAwsTgwOutput) ToAviatrixAwsTgwOutputWithContext(ctx context.Context) AviatrixAwsTgwOutput

type AviatrixAwsTgwPeering

type AviatrixAwsTgwPeering struct {
	pulumi.CustomResourceState

	// This parameter represents name of the first AWS TGW to make a peer pair.
	TgwName1 pulumi.StringOutput `pulumi:"tgwName1"`
	// This parameter represents name of the second AWS TGW to make a peer pair.
	TgwName2 pulumi.StringOutput `pulumi:"tgwName2"`
}

The **aviatrix_aws_tgw_peering** resource allows the creation and management of Aviatrix-created inter-region peerings between AWS TGWs.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwPeering(ctx, "test", &aviatrix.AviatrixAwsTgwPeeringArgs{
			TgwName1: pulumi.String("tgw1"),
			TgwName2: pulumi.String("tgw2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_peering** can be imported using the `tgw_name1` and `tgw_name2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwPeering:AviatrixAwsTgwPeering test tgw_name1~tgw_name2

```

func GetAviatrixAwsTgwPeering

func GetAviatrixAwsTgwPeering(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwPeeringState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwPeering, error)

GetAviatrixAwsTgwPeering gets an existing AviatrixAwsTgwPeering 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 NewAviatrixAwsTgwPeering

func NewAviatrixAwsTgwPeering(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwPeeringArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwPeering, error)

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

func (*AviatrixAwsTgwPeering) ElementType

func (*AviatrixAwsTgwPeering) ElementType() reflect.Type

func (*AviatrixAwsTgwPeering) ToAviatrixAwsTgwPeeringOutput

func (i *AviatrixAwsTgwPeering) ToAviatrixAwsTgwPeeringOutput() AviatrixAwsTgwPeeringOutput

func (*AviatrixAwsTgwPeering) ToAviatrixAwsTgwPeeringOutputWithContext

func (i *AviatrixAwsTgwPeering) ToAviatrixAwsTgwPeeringOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringOutput

type AviatrixAwsTgwPeeringArgs

type AviatrixAwsTgwPeeringArgs struct {
	// This parameter represents name of the first AWS TGW to make a peer pair.
	TgwName1 pulumi.StringInput
	// This parameter represents name of the second AWS TGW to make a peer pair.
	TgwName2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwPeering resource.

func (AviatrixAwsTgwPeeringArgs) ElementType

func (AviatrixAwsTgwPeeringArgs) ElementType() reflect.Type

type AviatrixAwsTgwPeeringArray

type AviatrixAwsTgwPeeringArray []AviatrixAwsTgwPeeringInput

func (AviatrixAwsTgwPeeringArray) ElementType

func (AviatrixAwsTgwPeeringArray) ElementType() reflect.Type

func (AviatrixAwsTgwPeeringArray) ToAviatrixAwsTgwPeeringArrayOutput

func (i AviatrixAwsTgwPeeringArray) ToAviatrixAwsTgwPeeringArrayOutput() AviatrixAwsTgwPeeringArrayOutput

func (AviatrixAwsTgwPeeringArray) ToAviatrixAwsTgwPeeringArrayOutputWithContext

func (i AviatrixAwsTgwPeeringArray) ToAviatrixAwsTgwPeeringArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringArrayOutput

type AviatrixAwsTgwPeeringArrayInput

type AviatrixAwsTgwPeeringArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringArrayOutput() AviatrixAwsTgwPeeringArrayOutput
	ToAviatrixAwsTgwPeeringArrayOutputWithContext(context.Context) AviatrixAwsTgwPeeringArrayOutput
}

AviatrixAwsTgwPeeringArrayInput is an input type that accepts AviatrixAwsTgwPeeringArray and AviatrixAwsTgwPeeringArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwPeeringArrayInput` via:

AviatrixAwsTgwPeeringArray{ AviatrixAwsTgwPeeringArgs{...} }

type AviatrixAwsTgwPeeringArrayOutput

type AviatrixAwsTgwPeeringArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringArrayOutput) ElementType

func (AviatrixAwsTgwPeeringArrayOutput) Index

func (AviatrixAwsTgwPeeringArrayOutput) ToAviatrixAwsTgwPeeringArrayOutput

func (o AviatrixAwsTgwPeeringArrayOutput) ToAviatrixAwsTgwPeeringArrayOutput() AviatrixAwsTgwPeeringArrayOutput

func (AviatrixAwsTgwPeeringArrayOutput) ToAviatrixAwsTgwPeeringArrayOutputWithContext

func (o AviatrixAwsTgwPeeringArrayOutput) ToAviatrixAwsTgwPeeringArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringArrayOutput

type AviatrixAwsTgwPeeringDomainConn

type AviatrixAwsTgwPeeringDomainConn struct {
	pulumi.CustomResourceState

	// The name of the source domain to make a connection.
	DomainName1 pulumi.StringOutput `pulumi:"domainName1"`
	// The name of the destination domain to make a connection.
	DomainName2 pulumi.StringOutput `pulumi:"domainName2"`
	// The AWS TGW name of the source domain to make a connection.
	TgwName1 pulumi.StringOutput `pulumi:"tgwName1"`
	// The AWS TGW name of the destination domain to make a connection.
	TgwName2 pulumi.StringOutput `pulumi:"tgwName2"`
}

The **aviatrix_aws_tgw_peering_domain_conn** resource allows the creation and management of Aviatrix domain connections between peered AWS TGWs.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwPeeringDomainConn(ctx, "test", &aviatrix.AviatrixAwsTgwPeeringDomainConnArgs{
			DomainName1: pulumi.String("Default_Domain"),
			DomainName2: pulumi.String("Default_Domain"),
			TgwName1:    pulumi.String("tgw1"),
			TgwName2:    pulumi.String("tgw2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_peering_domain_conn** can be imported using the `tgw_name1`, `domain_name1`, `tgw_name2` and `domain_name2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwPeeringDomainConn:AviatrixAwsTgwPeeringDomainConn test tgw_name1:domain_name1~tgw_name2:domain_name2

```

func GetAviatrixAwsTgwPeeringDomainConn

func GetAviatrixAwsTgwPeeringDomainConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwPeeringDomainConnState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwPeeringDomainConn, error)

GetAviatrixAwsTgwPeeringDomainConn gets an existing AviatrixAwsTgwPeeringDomainConn 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 NewAviatrixAwsTgwPeeringDomainConn

func NewAviatrixAwsTgwPeeringDomainConn(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwPeeringDomainConnArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwPeeringDomainConn, error)

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

func (*AviatrixAwsTgwPeeringDomainConn) ElementType

func (*AviatrixAwsTgwPeeringDomainConn) ToAviatrixAwsTgwPeeringDomainConnOutput

func (i *AviatrixAwsTgwPeeringDomainConn) ToAviatrixAwsTgwPeeringDomainConnOutput() AviatrixAwsTgwPeeringDomainConnOutput

func (*AviatrixAwsTgwPeeringDomainConn) ToAviatrixAwsTgwPeeringDomainConnOutputWithContext

func (i *AviatrixAwsTgwPeeringDomainConn) ToAviatrixAwsTgwPeeringDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnOutput

type AviatrixAwsTgwPeeringDomainConnArgs

type AviatrixAwsTgwPeeringDomainConnArgs struct {
	// The name of the source domain to make a connection.
	DomainName1 pulumi.StringInput
	// The name of the destination domain to make a connection.
	DomainName2 pulumi.StringInput
	// The AWS TGW name of the source domain to make a connection.
	TgwName1 pulumi.StringInput
	// The AWS TGW name of the destination domain to make a connection.
	TgwName2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwPeeringDomainConn resource.

func (AviatrixAwsTgwPeeringDomainConnArgs) ElementType

type AviatrixAwsTgwPeeringDomainConnArray

type AviatrixAwsTgwPeeringDomainConnArray []AviatrixAwsTgwPeeringDomainConnInput

func (AviatrixAwsTgwPeeringDomainConnArray) ElementType

func (AviatrixAwsTgwPeeringDomainConnArray) ToAviatrixAwsTgwPeeringDomainConnArrayOutput

func (i AviatrixAwsTgwPeeringDomainConnArray) ToAviatrixAwsTgwPeeringDomainConnArrayOutput() AviatrixAwsTgwPeeringDomainConnArrayOutput

func (AviatrixAwsTgwPeeringDomainConnArray) ToAviatrixAwsTgwPeeringDomainConnArrayOutputWithContext

func (i AviatrixAwsTgwPeeringDomainConnArray) ToAviatrixAwsTgwPeeringDomainConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnArrayOutput

type AviatrixAwsTgwPeeringDomainConnArrayInput

type AviatrixAwsTgwPeeringDomainConnArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringDomainConnArrayOutput() AviatrixAwsTgwPeeringDomainConnArrayOutput
	ToAviatrixAwsTgwPeeringDomainConnArrayOutputWithContext(context.Context) AviatrixAwsTgwPeeringDomainConnArrayOutput
}

AviatrixAwsTgwPeeringDomainConnArrayInput is an input type that accepts AviatrixAwsTgwPeeringDomainConnArray and AviatrixAwsTgwPeeringDomainConnArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwPeeringDomainConnArrayInput` via:

AviatrixAwsTgwPeeringDomainConnArray{ AviatrixAwsTgwPeeringDomainConnArgs{...} }

type AviatrixAwsTgwPeeringDomainConnArrayOutput

type AviatrixAwsTgwPeeringDomainConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringDomainConnArrayOutput) ElementType

func (AviatrixAwsTgwPeeringDomainConnArrayOutput) Index

func (AviatrixAwsTgwPeeringDomainConnArrayOutput) ToAviatrixAwsTgwPeeringDomainConnArrayOutput

func (o AviatrixAwsTgwPeeringDomainConnArrayOutput) ToAviatrixAwsTgwPeeringDomainConnArrayOutput() AviatrixAwsTgwPeeringDomainConnArrayOutput

func (AviatrixAwsTgwPeeringDomainConnArrayOutput) ToAviatrixAwsTgwPeeringDomainConnArrayOutputWithContext

func (o AviatrixAwsTgwPeeringDomainConnArrayOutput) ToAviatrixAwsTgwPeeringDomainConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnArrayOutput

type AviatrixAwsTgwPeeringDomainConnInput

type AviatrixAwsTgwPeeringDomainConnInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringDomainConnOutput() AviatrixAwsTgwPeeringDomainConnOutput
	ToAviatrixAwsTgwPeeringDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnOutput
}

type AviatrixAwsTgwPeeringDomainConnMap

type AviatrixAwsTgwPeeringDomainConnMap map[string]AviatrixAwsTgwPeeringDomainConnInput

func (AviatrixAwsTgwPeeringDomainConnMap) ElementType

func (AviatrixAwsTgwPeeringDomainConnMap) ToAviatrixAwsTgwPeeringDomainConnMapOutput

func (i AviatrixAwsTgwPeeringDomainConnMap) ToAviatrixAwsTgwPeeringDomainConnMapOutput() AviatrixAwsTgwPeeringDomainConnMapOutput

func (AviatrixAwsTgwPeeringDomainConnMap) ToAviatrixAwsTgwPeeringDomainConnMapOutputWithContext

func (i AviatrixAwsTgwPeeringDomainConnMap) ToAviatrixAwsTgwPeeringDomainConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnMapOutput

type AviatrixAwsTgwPeeringDomainConnMapInput

type AviatrixAwsTgwPeeringDomainConnMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringDomainConnMapOutput() AviatrixAwsTgwPeeringDomainConnMapOutput
	ToAviatrixAwsTgwPeeringDomainConnMapOutputWithContext(context.Context) AviatrixAwsTgwPeeringDomainConnMapOutput
}

AviatrixAwsTgwPeeringDomainConnMapInput is an input type that accepts AviatrixAwsTgwPeeringDomainConnMap and AviatrixAwsTgwPeeringDomainConnMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwPeeringDomainConnMapInput` via:

AviatrixAwsTgwPeeringDomainConnMap{ "key": AviatrixAwsTgwPeeringDomainConnArgs{...} }

type AviatrixAwsTgwPeeringDomainConnMapOutput

type AviatrixAwsTgwPeeringDomainConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringDomainConnMapOutput) ElementType

func (AviatrixAwsTgwPeeringDomainConnMapOutput) MapIndex

func (AviatrixAwsTgwPeeringDomainConnMapOutput) ToAviatrixAwsTgwPeeringDomainConnMapOutput

func (o AviatrixAwsTgwPeeringDomainConnMapOutput) ToAviatrixAwsTgwPeeringDomainConnMapOutput() AviatrixAwsTgwPeeringDomainConnMapOutput

func (AviatrixAwsTgwPeeringDomainConnMapOutput) ToAviatrixAwsTgwPeeringDomainConnMapOutputWithContext

func (o AviatrixAwsTgwPeeringDomainConnMapOutput) ToAviatrixAwsTgwPeeringDomainConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnMapOutput

type AviatrixAwsTgwPeeringDomainConnOutput

type AviatrixAwsTgwPeeringDomainConnOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringDomainConnOutput) DomainName1

The name of the source domain to make a connection.

func (AviatrixAwsTgwPeeringDomainConnOutput) DomainName2

The name of the destination domain to make a connection.

func (AviatrixAwsTgwPeeringDomainConnOutput) ElementType

func (AviatrixAwsTgwPeeringDomainConnOutput) TgwName1

The AWS TGW name of the source domain to make a connection.

func (AviatrixAwsTgwPeeringDomainConnOutput) TgwName2

The AWS TGW name of the destination domain to make a connection.

func (AviatrixAwsTgwPeeringDomainConnOutput) ToAviatrixAwsTgwPeeringDomainConnOutput

func (o AviatrixAwsTgwPeeringDomainConnOutput) ToAviatrixAwsTgwPeeringDomainConnOutput() AviatrixAwsTgwPeeringDomainConnOutput

func (AviatrixAwsTgwPeeringDomainConnOutput) ToAviatrixAwsTgwPeeringDomainConnOutputWithContext

func (o AviatrixAwsTgwPeeringDomainConnOutput) ToAviatrixAwsTgwPeeringDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringDomainConnOutput

type AviatrixAwsTgwPeeringDomainConnState

type AviatrixAwsTgwPeeringDomainConnState struct {
	// The name of the source domain to make a connection.
	DomainName1 pulumi.StringPtrInput
	// The name of the destination domain to make a connection.
	DomainName2 pulumi.StringPtrInput
	// The AWS TGW name of the source domain to make a connection.
	TgwName1 pulumi.StringPtrInput
	// The AWS TGW name of the destination domain to make a connection.
	TgwName2 pulumi.StringPtrInput
}

func (AviatrixAwsTgwPeeringDomainConnState) ElementType

type AviatrixAwsTgwPeeringInput

type AviatrixAwsTgwPeeringInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringOutput() AviatrixAwsTgwPeeringOutput
	ToAviatrixAwsTgwPeeringOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringOutput
}

type AviatrixAwsTgwPeeringMap

type AviatrixAwsTgwPeeringMap map[string]AviatrixAwsTgwPeeringInput

func (AviatrixAwsTgwPeeringMap) ElementType

func (AviatrixAwsTgwPeeringMap) ElementType() reflect.Type

func (AviatrixAwsTgwPeeringMap) ToAviatrixAwsTgwPeeringMapOutput

func (i AviatrixAwsTgwPeeringMap) ToAviatrixAwsTgwPeeringMapOutput() AviatrixAwsTgwPeeringMapOutput

func (AviatrixAwsTgwPeeringMap) ToAviatrixAwsTgwPeeringMapOutputWithContext

func (i AviatrixAwsTgwPeeringMap) ToAviatrixAwsTgwPeeringMapOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringMapOutput

type AviatrixAwsTgwPeeringMapInput

type AviatrixAwsTgwPeeringMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwPeeringMapOutput() AviatrixAwsTgwPeeringMapOutput
	ToAviatrixAwsTgwPeeringMapOutputWithContext(context.Context) AviatrixAwsTgwPeeringMapOutput
}

AviatrixAwsTgwPeeringMapInput is an input type that accepts AviatrixAwsTgwPeeringMap and AviatrixAwsTgwPeeringMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwPeeringMapInput` via:

AviatrixAwsTgwPeeringMap{ "key": AviatrixAwsTgwPeeringArgs{...} }

type AviatrixAwsTgwPeeringMapOutput

type AviatrixAwsTgwPeeringMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringMapOutput) ElementType

func (AviatrixAwsTgwPeeringMapOutput) MapIndex

func (AviatrixAwsTgwPeeringMapOutput) ToAviatrixAwsTgwPeeringMapOutput

func (o AviatrixAwsTgwPeeringMapOutput) ToAviatrixAwsTgwPeeringMapOutput() AviatrixAwsTgwPeeringMapOutput

func (AviatrixAwsTgwPeeringMapOutput) ToAviatrixAwsTgwPeeringMapOutputWithContext

func (o AviatrixAwsTgwPeeringMapOutput) ToAviatrixAwsTgwPeeringMapOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringMapOutput

type AviatrixAwsTgwPeeringOutput

type AviatrixAwsTgwPeeringOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwPeeringOutput) ElementType

func (AviatrixAwsTgwPeeringOutput) TgwName1

This parameter represents name of the first AWS TGW to make a peer pair.

func (AviatrixAwsTgwPeeringOutput) TgwName2

This parameter represents name of the second AWS TGW to make a peer pair.

func (AviatrixAwsTgwPeeringOutput) ToAviatrixAwsTgwPeeringOutput

func (o AviatrixAwsTgwPeeringOutput) ToAviatrixAwsTgwPeeringOutput() AviatrixAwsTgwPeeringOutput

func (AviatrixAwsTgwPeeringOutput) ToAviatrixAwsTgwPeeringOutputWithContext

func (o AviatrixAwsTgwPeeringOutput) ToAviatrixAwsTgwPeeringOutputWithContext(ctx context.Context) AviatrixAwsTgwPeeringOutput

type AviatrixAwsTgwPeeringState

type AviatrixAwsTgwPeeringState struct {
	// This parameter represents name of the first AWS TGW to make a peer pair.
	TgwName1 pulumi.StringPtrInput
	// This parameter represents name of the second AWS TGW to make a peer pair.
	TgwName2 pulumi.StringPtrInput
}

func (AviatrixAwsTgwPeeringState) ElementType

func (AviatrixAwsTgwPeeringState) ElementType() reflect.Type

type AviatrixAwsTgwSecurityDomain

type AviatrixAwsTgwSecurityDomain struct {
	pulumi.CustomResourceState

	// Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrOutput `pulumi:"aviatrixFirewall"`
	// The name of the security domain.
	Name pulumi.StringOutput `pulumi:"name"`
	// Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrOutput `pulumi:"nativeEgress"`
	// Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrOutput `pulumi:"nativeFirewall"`
	// The AWS TGW name of the security domain.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

!> **WARNING:** Resource **aviatrix_aws_tgw_security_domain** will be deprecated in future releases. Please use resource **aviatrix_aws_tgw_network_domain** instead.

The **aviatrix_aws_tgw_security_domain** resource allows the creation and management of Aviatrix security domains.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAwsTgw, err := aviatrix.NewAviatrixAwsTgw(ctx, "testAwsTgw", &aviatrix.AviatrixAwsTgwArgs{
			AccountName:                    pulumi.String("devops"),
			AwsSideAsNumber:                pulumi.String("64512"),
			Region:                         pulumi.String("us-east-1"),
			TgwName:                        pulumi.String("test-AWS-TGW"),
			ManageSecurityDomain:           pulumi.Bool(false),
			ManageVpcAttachment:            pulumi.Bool(false),
			ManageTransitGatewayAttachment: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		defaultDomain, err := aviatrix.NewAviatrixAwsTgwSecurityDomain(ctx, "defaultDomain", &aviatrix.AviatrixAwsTgwSecurityDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		sharedServiceDomain, err := aviatrix.NewAviatrixAwsTgwSecurityDomain(ctx, "sharedServiceDomain", &aviatrix.AviatrixAwsTgwSecurityDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		aviatrixEdgeDomain, err := aviatrix.NewAviatrixAwsTgwSecurityDomain(ctx, "aviatrixEdgeDomain", &aviatrix.AviatrixAwsTgwSecurityDomainArgs{
			TgwName: testAwsTgw.TgwName,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn1", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: aviatrixEdgeDomain.Name,
			DomainName2: defaultDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn2", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: aviatrixEdgeDomain.Name,
			DomainName2: sharedServiceDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "defaultSdConn3", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			TgwName:     testAwsTgw.TgwName,
			DomainName1: defaultDomain.Name,
			DomainName2: sharedServiceDomain.Name,
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixAwsTgwSecurityDomain(ctx, "test", &aviatrix.AviatrixAwsTgwSecurityDomainArgs{
			TgwName: testAwsTgw.TgwName,
		}, pulumi.DependsOn([]pulumi.Resource{
			defaultDomain,
			sharedServiceDomain,
			aviatrixEdgeDomain,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_security_domain** can be imported using the `name` and `tgw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwSecurityDomain:AviatrixAwsTgwSecurityDomain test tgw_name~name

```

func GetAviatrixAwsTgwSecurityDomain

func GetAviatrixAwsTgwSecurityDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwSecurityDomainState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwSecurityDomain, error)

GetAviatrixAwsTgwSecurityDomain gets an existing AviatrixAwsTgwSecurityDomain 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 NewAviatrixAwsTgwSecurityDomain

func NewAviatrixAwsTgwSecurityDomain(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwSecurityDomainArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwSecurityDomain, error)

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

func (*AviatrixAwsTgwSecurityDomain) ElementType

func (*AviatrixAwsTgwSecurityDomain) ElementType() reflect.Type

func (*AviatrixAwsTgwSecurityDomain) ToAviatrixAwsTgwSecurityDomainOutput

func (i *AviatrixAwsTgwSecurityDomain) ToAviatrixAwsTgwSecurityDomainOutput() AviatrixAwsTgwSecurityDomainOutput

func (*AviatrixAwsTgwSecurityDomain) ToAviatrixAwsTgwSecurityDomainOutputWithContext

func (i *AviatrixAwsTgwSecurityDomain) ToAviatrixAwsTgwSecurityDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainOutput

type AviatrixAwsTgwSecurityDomainArgs

type AviatrixAwsTgwSecurityDomainArgs struct {
	// Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrInput
	// The name of the security domain.
	Name pulumi.StringPtrInput
	// Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrInput
	// Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrInput
	// The AWS TGW name of the security domain.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwSecurityDomain resource.

func (AviatrixAwsTgwSecurityDomainArgs) ElementType

type AviatrixAwsTgwSecurityDomainArray

type AviatrixAwsTgwSecurityDomainArray []AviatrixAwsTgwSecurityDomainInput

func (AviatrixAwsTgwSecurityDomainArray) ElementType

func (AviatrixAwsTgwSecurityDomainArray) ToAviatrixAwsTgwSecurityDomainArrayOutput

func (i AviatrixAwsTgwSecurityDomainArray) ToAviatrixAwsTgwSecurityDomainArrayOutput() AviatrixAwsTgwSecurityDomainArrayOutput

func (AviatrixAwsTgwSecurityDomainArray) ToAviatrixAwsTgwSecurityDomainArrayOutputWithContext

func (i AviatrixAwsTgwSecurityDomainArray) ToAviatrixAwsTgwSecurityDomainArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainArrayOutput

type AviatrixAwsTgwSecurityDomainArrayInput

type AviatrixAwsTgwSecurityDomainArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainArrayOutput() AviatrixAwsTgwSecurityDomainArrayOutput
	ToAviatrixAwsTgwSecurityDomainArrayOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainArrayOutput
}

AviatrixAwsTgwSecurityDomainArrayInput is an input type that accepts AviatrixAwsTgwSecurityDomainArray and AviatrixAwsTgwSecurityDomainArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainArrayInput` via:

AviatrixAwsTgwSecurityDomainArray{ AviatrixAwsTgwSecurityDomainArgs{...} }

type AviatrixAwsTgwSecurityDomainArrayOutput

type AviatrixAwsTgwSecurityDomainArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainArrayOutput) ElementType

func (AviatrixAwsTgwSecurityDomainArrayOutput) Index

func (AviatrixAwsTgwSecurityDomainArrayOutput) ToAviatrixAwsTgwSecurityDomainArrayOutput

func (o AviatrixAwsTgwSecurityDomainArrayOutput) ToAviatrixAwsTgwSecurityDomainArrayOutput() AviatrixAwsTgwSecurityDomainArrayOutput

func (AviatrixAwsTgwSecurityDomainArrayOutput) ToAviatrixAwsTgwSecurityDomainArrayOutputWithContext

func (o AviatrixAwsTgwSecurityDomainArrayOutput) ToAviatrixAwsTgwSecurityDomainArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainArrayOutput

type AviatrixAwsTgwSecurityDomainAttachedVpc

type AviatrixAwsTgwSecurityDomainAttachedVpc struct {
	// Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRouteAdvertisement *string `pulumi:"customizedRouteAdvertisement"`
	// Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRoutes *string `pulumi:"customizedRoutes"`
	// Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.
	DisableLocalRoutePropagation *bool `pulumi:"disableLocalRoutePropagation"`
	// Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".
	RouteTables *string `pulumi:"routeTables"`
	// Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, the Aviatrix Controller automatically selects a subnet representing each AZ for the VPC attachment. Example: "subnet-214f5646,subnet-085e8c81a89d70846".
	Subnets *string `pulumi:"subnets"`
	// Cloud account name of the VPC in the Aviatrix controller.
	VpcAccountName string `pulumi:"vpcAccountName"`
	// VPC ID of the VPC to be attached to the security domain
	VpcId string `pulumi:"vpcId"`
	// Region of the VPC, needs to be consistent with AWS TGW's region.
	VpcRegion string `pulumi:"vpcRegion"`
}

type AviatrixAwsTgwSecurityDomainAttachedVpcArgs

type AviatrixAwsTgwSecurityDomainAttachedVpcArgs struct {
	// Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRouteAdvertisement pulumi.StringPtrInput `pulumi:"customizedRouteAdvertisement"`
	// Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRoutes pulumi.StringPtrInput `pulumi:"customizedRoutes"`
	// Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.
	DisableLocalRoutePropagation pulumi.BoolPtrInput `pulumi:"disableLocalRoutePropagation"`
	// Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".
	RouteTables pulumi.StringPtrInput `pulumi:"routeTables"`
	// Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, the Aviatrix Controller automatically selects a subnet representing each AZ for the VPC attachment. Example: "subnet-214f5646,subnet-085e8c81a89d70846".
	Subnets pulumi.StringPtrInput `pulumi:"subnets"`
	// Cloud account name of the VPC in the Aviatrix controller.
	VpcAccountName pulumi.StringInput `pulumi:"vpcAccountName"`
	// VPC ID of the VPC to be attached to the security domain
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Region of the VPC, needs to be consistent with AWS TGW's region.
	VpcRegion pulumi.StringInput `pulumi:"vpcRegion"`
}

func (AviatrixAwsTgwSecurityDomainAttachedVpcArgs) ElementType

func (AviatrixAwsTgwSecurityDomainAttachedVpcArgs) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutput

func (i AviatrixAwsTgwSecurityDomainAttachedVpcArgs) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutput() AviatrixAwsTgwSecurityDomainAttachedVpcOutput

func (AviatrixAwsTgwSecurityDomainAttachedVpcArgs) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutputWithContext

func (i AviatrixAwsTgwSecurityDomainAttachedVpcArgs) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcOutput

type AviatrixAwsTgwSecurityDomainAttachedVpcArray

type AviatrixAwsTgwSecurityDomainAttachedVpcArray []AviatrixAwsTgwSecurityDomainAttachedVpcInput

func (AviatrixAwsTgwSecurityDomainAttachedVpcArray) ElementType

func (AviatrixAwsTgwSecurityDomainAttachedVpcArray) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

func (i AviatrixAwsTgwSecurityDomainAttachedVpcArray) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput() AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

func (AviatrixAwsTgwSecurityDomainAttachedVpcArray) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutputWithContext

func (i AviatrixAwsTgwSecurityDomainAttachedVpcArray) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

type AviatrixAwsTgwSecurityDomainAttachedVpcArrayInput

type AviatrixAwsTgwSecurityDomainAttachedVpcArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput() AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput
	ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput
}

AviatrixAwsTgwSecurityDomainAttachedVpcArrayInput is an input type that accepts AviatrixAwsTgwSecurityDomainAttachedVpcArray and AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainAttachedVpcArrayInput` via:

AviatrixAwsTgwSecurityDomainAttachedVpcArray{ AviatrixAwsTgwSecurityDomainAttachedVpcArgs{...} }

type AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

type AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) ElementType

func (AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) Index

func (AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

func (o AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput() AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

func (AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutputWithContext

func (o AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcArrayOutput

type AviatrixAwsTgwSecurityDomainAttachedVpcInput

type AviatrixAwsTgwSecurityDomainAttachedVpcInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainAttachedVpcOutput() AviatrixAwsTgwSecurityDomainAttachedVpcOutput
	ToAviatrixAwsTgwSecurityDomainAttachedVpcOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcOutput
}

AviatrixAwsTgwSecurityDomainAttachedVpcInput is an input type that accepts AviatrixAwsTgwSecurityDomainAttachedVpcArgs and AviatrixAwsTgwSecurityDomainAttachedVpcOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainAttachedVpcInput` via:

AviatrixAwsTgwSecurityDomainAttachedVpcArgs{...}

type AviatrixAwsTgwSecurityDomainAttachedVpcOutput

type AviatrixAwsTgwSecurityDomainAttachedVpcOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) CustomizedRouteAdvertisement

func (o AviatrixAwsTgwSecurityDomainAttachedVpcOutput) CustomizedRouteAdvertisement() pulumi.StringPtrOutput

Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) CustomizedRoutes

Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) DisableLocalRoutePropagation

func (o AviatrixAwsTgwSecurityDomainAttachedVpcOutput) DisableLocalRoutePropagation() pulumi.BoolPtrOutput

Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) ElementType

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) RouteTables

Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) Subnets

Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, the Aviatrix Controller automatically selects a subnet representing each AZ for the VPC attachment. Example: "subnet-214f5646,subnet-085e8c81a89d70846".

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutput

func (o AviatrixAwsTgwSecurityDomainAttachedVpcOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutput() AviatrixAwsTgwSecurityDomainAttachedVpcOutput

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutputWithContext

func (o AviatrixAwsTgwSecurityDomainAttachedVpcOutput) ToAviatrixAwsTgwSecurityDomainAttachedVpcOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainAttachedVpcOutput

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) VpcAccountName

Cloud account name of the VPC in the Aviatrix controller.

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) VpcId

VPC ID of the VPC to be attached to the security domain

func (AviatrixAwsTgwSecurityDomainAttachedVpcOutput) VpcRegion

Region of the VPC, needs to be consistent with AWS TGW's region.

type AviatrixAwsTgwSecurityDomainConn

type AviatrixAwsTgwSecurityDomainConn struct {
	pulumi.CustomResourceState

	// The name of a security domain to make a connection.
	DomainName1 pulumi.StringOutput `pulumi:"domainName1"`
	// The name of another security domain to make a connection.
	DomainName2 pulumi.StringOutput `pulumi:"domainName2"`
	// The AWS TGW name.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
}

!> **WARNING:** Resource 'aviatrix_aws_tgw_security_domain_connection' will be deprecated in future releases. Please use resource 'aviatrix_aws_tgw_peering_domain_conn' instead.

The **aviatrix_aws_tgw_security_domain_connection** resource allows the creation and management of the connections between security domains in an AWS TGW.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwSecurityDomainConn(ctx, "test", &aviatrix.AviatrixAwsTgwSecurityDomainConnArgs{
			DomainName1: pulumi.String("domain1"),
			DomainName2: pulumi.String("domain2"),
			TgwName:     pulumi.String("tgw"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_security_domain_connection** can be imported using the `tgw_name`, `domain_name1` and `domain_name2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwSecurityDomainConn:AviatrixAwsTgwSecurityDomainConn test tgw_name~domain_name1~domain_name2

```

func GetAviatrixAwsTgwSecurityDomainConn

func GetAviatrixAwsTgwSecurityDomainConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwSecurityDomainConnState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwSecurityDomainConn, error)

GetAviatrixAwsTgwSecurityDomainConn gets an existing AviatrixAwsTgwSecurityDomainConn 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 NewAviatrixAwsTgwSecurityDomainConn

func NewAviatrixAwsTgwSecurityDomainConn(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwSecurityDomainConnArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwSecurityDomainConn, error)

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

func (*AviatrixAwsTgwSecurityDomainConn) ElementType

func (*AviatrixAwsTgwSecurityDomainConn) ToAviatrixAwsTgwSecurityDomainConnOutput

func (i *AviatrixAwsTgwSecurityDomainConn) ToAviatrixAwsTgwSecurityDomainConnOutput() AviatrixAwsTgwSecurityDomainConnOutput

func (*AviatrixAwsTgwSecurityDomainConn) ToAviatrixAwsTgwSecurityDomainConnOutputWithContext

func (i *AviatrixAwsTgwSecurityDomainConn) ToAviatrixAwsTgwSecurityDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnOutput

type AviatrixAwsTgwSecurityDomainConnArgs

type AviatrixAwsTgwSecurityDomainConnArgs struct {
	// The name of a security domain to make a connection.
	DomainName1 pulumi.StringInput
	// The name of another security domain to make a connection.
	DomainName2 pulumi.StringInput
	// The AWS TGW name.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwSecurityDomainConn resource.

func (AviatrixAwsTgwSecurityDomainConnArgs) ElementType

type AviatrixAwsTgwSecurityDomainConnArray

type AviatrixAwsTgwSecurityDomainConnArray []AviatrixAwsTgwSecurityDomainConnInput

func (AviatrixAwsTgwSecurityDomainConnArray) ElementType

func (AviatrixAwsTgwSecurityDomainConnArray) ToAviatrixAwsTgwSecurityDomainConnArrayOutput

func (i AviatrixAwsTgwSecurityDomainConnArray) ToAviatrixAwsTgwSecurityDomainConnArrayOutput() AviatrixAwsTgwSecurityDomainConnArrayOutput

func (AviatrixAwsTgwSecurityDomainConnArray) ToAviatrixAwsTgwSecurityDomainConnArrayOutputWithContext

func (i AviatrixAwsTgwSecurityDomainConnArray) ToAviatrixAwsTgwSecurityDomainConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnArrayOutput

type AviatrixAwsTgwSecurityDomainConnArrayInput

type AviatrixAwsTgwSecurityDomainConnArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainConnArrayOutput() AviatrixAwsTgwSecurityDomainConnArrayOutput
	ToAviatrixAwsTgwSecurityDomainConnArrayOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainConnArrayOutput
}

AviatrixAwsTgwSecurityDomainConnArrayInput is an input type that accepts AviatrixAwsTgwSecurityDomainConnArray and AviatrixAwsTgwSecurityDomainConnArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainConnArrayInput` via:

AviatrixAwsTgwSecurityDomainConnArray{ AviatrixAwsTgwSecurityDomainConnArgs{...} }

type AviatrixAwsTgwSecurityDomainConnArrayOutput

type AviatrixAwsTgwSecurityDomainConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainConnArrayOutput) ElementType

func (AviatrixAwsTgwSecurityDomainConnArrayOutput) Index

func (AviatrixAwsTgwSecurityDomainConnArrayOutput) ToAviatrixAwsTgwSecurityDomainConnArrayOutput

func (o AviatrixAwsTgwSecurityDomainConnArrayOutput) ToAviatrixAwsTgwSecurityDomainConnArrayOutput() AviatrixAwsTgwSecurityDomainConnArrayOutput

func (AviatrixAwsTgwSecurityDomainConnArrayOutput) ToAviatrixAwsTgwSecurityDomainConnArrayOutputWithContext

func (o AviatrixAwsTgwSecurityDomainConnArrayOutput) ToAviatrixAwsTgwSecurityDomainConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnArrayOutput

type AviatrixAwsTgwSecurityDomainConnInput

type AviatrixAwsTgwSecurityDomainConnInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainConnOutput() AviatrixAwsTgwSecurityDomainConnOutput
	ToAviatrixAwsTgwSecurityDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnOutput
}

type AviatrixAwsTgwSecurityDomainConnMap

type AviatrixAwsTgwSecurityDomainConnMap map[string]AviatrixAwsTgwSecurityDomainConnInput

func (AviatrixAwsTgwSecurityDomainConnMap) ElementType

func (AviatrixAwsTgwSecurityDomainConnMap) ToAviatrixAwsTgwSecurityDomainConnMapOutput

func (i AviatrixAwsTgwSecurityDomainConnMap) ToAviatrixAwsTgwSecurityDomainConnMapOutput() AviatrixAwsTgwSecurityDomainConnMapOutput

func (AviatrixAwsTgwSecurityDomainConnMap) ToAviatrixAwsTgwSecurityDomainConnMapOutputWithContext

func (i AviatrixAwsTgwSecurityDomainConnMap) ToAviatrixAwsTgwSecurityDomainConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnMapOutput

type AviatrixAwsTgwSecurityDomainConnMapInput

type AviatrixAwsTgwSecurityDomainConnMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainConnMapOutput() AviatrixAwsTgwSecurityDomainConnMapOutput
	ToAviatrixAwsTgwSecurityDomainConnMapOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainConnMapOutput
}

AviatrixAwsTgwSecurityDomainConnMapInput is an input type that accepts AviatrixAwsTgwSecurityDomainConnMap and AviatrixAwsTgwSecurityDomainConnMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainConnMapInput` via:

AviatrixAwsTgwSecurityDomainConnMap{ "key": AviatrixAwsTgwSecurityDomainConnArgs{...} }

type AviatrixAwsTgwSecurityDomainConnMapOutput

type AviatrixAwsTgwSecurityDomainConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainConnMapOutput) ElementType

func (AviatrixAwsTgwSecurityDomainConnMapOutput) MapIndex

func (AviatrixAwsTgwSecurityDomainConnMapOutput) ToAviatrixAwsTgwSecurityDomainConnMapOutput

func (o AviatrixAwsTgwSecurityDomainConnMapOutput) ToAviatrixAwsTgwSecurityDomainConnMapOutput() AviatrixAwsTgwSecurityDomainConnMapOutput

func (AviatrixAwsTgwSecurityDomainConnMapOutput) ToAviatrixAwsTgwSecurityDomainConnMapOutputWithContext

func (o AviatrixAwsTgwSecurityDomainConnMapOutput) ToAviatrixAwsTgwSecurityDomainConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnMapOutput

type AviatrixAwsTgwSecurityDomainConnOutput

type AviatrixAwsTgwSecurityDomainConnOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainConnOutput) DomainName1

The name of a security domain to make a connection.

func (AviatrixAwsTgwSecurityDomainConnOutput) DomainName2

The name of another security domain to make a connection.

func (AviatrixAwsTgwSecurityDomainConnOutput) ElementType

func (AviatrixAwsTgwSecurityDomainConnOutput) TgwName

The AWS TGW name.

func (AviatrixAwsTgwSecurityDomainConnOutput) ToAviatrixAwsTgwSecurityDomainConnOutput

func (o AviatrixAwsTgwSecurityDomainConnOutput) ToAviatrixAwsTgwSecurityDomainConnOutput() AviatrixAwsTgwSecurityDomainConnOutput

func (AviatrixAwsTgwSecurityDomainConnOutput) ToAviatrixAwsTgwSecurityDomainConnOutputWithContext

func (o AviatrixAwsTgwSecurityDomainConnOutput) ToAviatrixAwsTgwSecurityDomainConnOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainConnOutput

type AviatrixAwsTgwSecurityDomainConnState

type AviatrixAwsTgwSecurityDomainConnState struct {
	// The name of a security domain to make a connection.
	DomainName1 pulumi.StringPtrInput
	// The name of another security domain to make a connection.
	DomainName2 pulumi.StringPtrInput
	// The AWS TGW name.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwSecurityDomainConnState) ElementType

type AviatrixAwsTgwSecurityDomainInput

type AviatrixAwsTgwSecurityDomainInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainOutput() AviatrixAwsTgwSecurityDomainOutput
	ToAviatrixAwsTgwSecurityDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainOutput
}

type AviatrixAwsTgwSecurityDomainMap

type AviatrixAwsTgwSecurityDomainMap map[string]AviatrixAwsTgwSecurityDomainInput

func (AviatrixAwsTgwSecurityDomainMap) ElementType

func (AviatrixAwsTgwSecurityDomainMap) ToAviatrixAwsTgwSecurityDomainMapOutput

func (i AviatrixAwsTgwSecurityDomainMap) ToAviatrixAwsTgwSecurityDomainMapOutput() AviatrixAwsTgwSecurityDomainMapOutput

func (AviatrixAwsTgwSecurityDomainMap) ToAviatrixAwsTgwSecurityDomainMapOutputWithContext

func (i AviatrixAwsTgwSecurityDomainMap) ToAviatrixAwsTgwSecurityDomainMapOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainMapOutput

type AviatrixAwsTgwSecurityDomainMapInput

type AviatrixAwsTgwSecurityDomainMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainMapOutput() AviatrixAwsTgwSecurityDomainMapOutput
	ToAviatrixAwsTgwSecurityDomainMapOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainMapOutput
}

AviatrixAwsTgwSecurityDomainMapInput is an input type that accepts AviatrixAwsTgwSecurityDomainMap and AviatrixAwsTgwSecurityDomainMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainMapInput` via:

AviatrixAwsTgwSecurityDomainMap{ "key": AviatrixAwsTgwSecurityDomainArgs{...} }

type AviatrixAwsTgwSecurityDomainMapOutput

type AviatrixAwsTgwSecurityDomainMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainMapOutput) ElementType

func (AviatrixAwsTgwSecurityDomainMapOutput) MapIndex

func (AviatrixAwsTgwSecurityDomainMapOutput) ToAviatrixAwsTgwSecurityDomainMapOutput

func (o AviatrixAwsTgwSecurityDomainMapOutput) ToAviatrixAwsTgwSecurityDomainMapOutput() AviatrixAwsTgwSecurityDomainMapOutput

func (AviatrixAwsTgwSecurityDomainMapOutput) ToAviatrixAwsTgwSecurityDomainMapOutputWithContext

func (o AviatrixAwsTgwSecurityDomainMapOutput) ToAviatrixAwsTgwSecurityDomainMapOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainMapOutput

type AviatrixAwsTgwSecurityDomainOutput

type AviatrixAwsTgwSecurityDomainOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainOutput) AviatrixFirewall

Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainOutput) ElementType

func (AviatrixAwsTgwSecurityDomainOutput) Name

The name of the security domain.

func (AviatrixAwsTgwSecurityDomainOutput) NativeEgress

Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainOutput) NativeFirewall

Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainOutput) TgwName

The AWS TGW name of the security domain.

func (AviatrixAwsTgwSecurityDomainOutput) ToAviatrixAwsTgwSecurityDomainOutput

func (o AviatrixAwsTgwSecurityDomainOutput) ToAviatrixAwsTgwSecurityDomainOutput() AviatrixAwsTgwSecurityDomainOutput

func (AviatrixAwsTgwSecurityDomainOutput) ToAviatrixAwsTgwSecurityDomainOutputWithContext

func (o AviatrixAwsTgwSecurityDomainOutput) ToAviatrixAwsTgwSecurityDomainOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainOutput

type AviatrixAwsTgwSecurityDomainState

type AviatrixAwsTgwSecurityDomainState struct {
	// Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrInput
	// The name of the security domain.
	Name pulumi.StringPtrInput
	// Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrInput
	// Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrInput
	// The AWS TGW name of the security domain.
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwSecurityDomainState) ElementType

type AviatrixAwsTgwSecurityDomainType

type AviatrixAwsTgwSecurityDomainType struct {
	// A list of VPCs attached to the domain (name: `securityDomainName`) together with its creation. This list needs to be null for "Aviatrix_Edge_Domain".
	//
	// Deprecated: Please set `manage_vpc_attachment` to false, and use the standalone aviatrix_aws_tgw_vpc_attachment resource instead.
	AttachedVpcs []AviatrixAwsTgwSecurityDomainAttachedVpc `pulumi:"attachedVpcs"`
	// Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall *bool `pulumi:"aviatrixFirewall"`
	// A list of domains connected to the domain (name: `securityDomainName`) together with its creation.
	ConnectedDomains []string `pulumi:"connectedDomains"`
	// Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress *bool `pulumi:"nativeEgress"`
	// Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall *bool `pulumi:"nativeFirewall"`
	// Three default domains ("Aviatrix_Edge_Domain", "Default_Domain" and "Shared_Service_Domain") are required with AWS TGW's creation.
	SecurityDomainName string `pulumi:"securityDomainName"`
}

type AviatrixAwsTgwSecurityDomainTypeArgs

type AviatrixAwsTgwSecurityDomainTypeArgs struct {
	// A list of VPCs attached to the domain (name: `securityDomainName`) together with its creation. This list needs to be null for "Aviatrix_Edge_Domain".
	//
	// Deprecated: Please set `manage_vpc_attachment` to false, and use the standalone aviatrix_aws_tgw_vpc_attachment resource instead.
	AttachedVpcs AviatrixAwsTgwSecurityDomainAttachedVpcArrayInput `pulumi:"attachedVpcs"`
	// Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.
	AviatrixFirewall pulumi.BoolPtrInput `pulumi:"aviatrixFirewall"`
	// A list of domains connected to the domain (name: `securityDomainName`) together with its creation.
	ConnectedDomains pulumi.StringArrayInput `pulumi:"connectedDomains"`
	// Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.
	NativeEgress pulumi.BoolPtrInput `pulumi:"nativeEgress"`
	// Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.
	NativeFirewall pulumi.BoolPtrInput `pulumi:"nativeFirewall"`
	// Three default domains ("Aviatrix_Edge_Domain", "Default_Domain" and "Shared_Service_Domain") are required with AWS TGW's creation.
	SecurityDomainName pulumi.StringInput `pulumi:"securityDomainName"`
}

func (AviatrixAwsTgwSecurityDomainTypeArgs) ElementType

func (AviatrixAwsTgwSecurityDomainTypeArgs) ToAviatrixAwsTgwSecurityDomainTypeOutput

func (i AviatrixAwsTgwSecurityDomainTypeArgs) ToAviatrixAwsTgwSecurityDomainTypeOutput() AviatrixAwsTgwSecurityDomainTypeOutput

func (AviatrixAwsTgwSecurityDomainTypeArgs) ToAviatrixAwsTgwSecurityDomainTypeOutputWithContext

func (i AviatrixAwsTgwSecurityDomainTypeArgs) ToAviatrixAwsTgwSecurityDomainTypeOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainTypeOutput

type AviatrixAwsTgwSecurityDomainTypeArray

type AviatrixAwsTgwSecurityDomainTypeArray []AviatrixAwsTgwSecurityDomainTypeInput

func (AviatrixAwsTgwSecurityDomainTypeArray) ElementType

func (AviatrixAwsTgwSecurityDomainTypeArray) ToAviatrixAwsTgwSecurityDomainTypeArrayOutput

func (i AviatrixAwsTgwSecurityDomainTypeArray) ToAviatrixAwsTgwSecurityDomainTypeArrayOutput() AviatrixAwsTgwSecurityDomainTypeArrayOutput

func (AviatrixAwsTgwSecurityDomainTypeArray) ToAviatrixAwsTgwSecurityDomainTypeArrayOutputWithContext

func (i AviatrixAwsTgwSecurityDomainTypeArray) ToAviatrixAwsTgwSecurityDomainTypeArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainTypeArrayOutput

type AviatrixAwsTgwSecurityDomainTypeArrayInput

type AviatrixAwsTgwSecurityDomainTypeArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainTypeArrayOutput() AviatrixAwsTgwSecurityDomainTypeArrayOutput
	ToAviatrixAwsTgwSecurityDomainTypeArrayOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainTypeArrayOutput
}

AviatrixAwsTgwSecurityDomainTypeArrayInput is an input type that accepts AviatrixAwsTgwSecurityDomainTypeArray and AviatrixAwsTgwSecurityDomainTypeArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainTypeArrayInput` via:

AviatrixAwsTgwSecurityDomainTypeArray{ AviatrixAwsTgwSecurityDomainTypeArgs{...} }

type AviatrixAwsTgwSecurityDomainTypeArrayOutput

type AviatrixAwsTgwSecurityDomainTypeArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainTypeArrayOutput) ElementType

func (AviatrixAwsTgwSecurityDomainTypeArrayOutput) Index

func (AviatrixAwsTgwSecurityDomainTypeArrayOutput) ToAviatrixAwsTgwSecurityDomainTypeArrayOutput

func (o AviatrixAwsTgwSecurityDomainTypeArrayOutput) ToAviatrixAwsTgwSecurityDomainTypeArrayOutput() AviatrixAwsTgwSecurityDomainTypeArrayOutput

func (AviatrixAwsTgwSecurityDomainTypeArrayOutput) ToAviatrixAwsTgwSecurityDomainTypeArrayOutputWithContext

func (o AviatrixAwsTgwSecurityDomainTypeArrayOutput) ToAviatrixAwsTgwSecurityDomainTypeArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainTypeArrayOutput

type AviatrixAwsTgwSecurityDomainTypeInput

type AviatrixAwsTgwSecurityDomainTypeInput interface {
	pulumi.Input

	ToAviatrixAwsTgwSecurityDomainTypeOutput() AviatrixAwsTgwSecurityDomainTypeOutput
	ToAviatrixAwsTgwSecurityDomainTypeOutputWithContext(context.Context) AviatrixAwsTgwSecurityDomainTypeOutput
}

AviatrixAwsTgwSecurityDomainTypeInput is an input type that accepts AviatrixAwsTgwSecurityDomainTypeArgs and AviatrixAwsTgwSecurityDomainTypeOutput values. You can construct a concrete instance of `AviatrixAwsTgwSecurityDomainTypeInput` via:

AviatrixAwsTgwSecurityDomainTypeArgs{...}

type AviatrixAwsTgwSecurityDomainTypeOutput

type AviatrixAwsTgwSecurityDomainTypeOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwSecurityDomainTypeOutput) AttachedVpcs deprecated

A list of VPCs attached to the domain (name: `securityDomainName`) together with its creation. This list needs to be null for "Aviatrix_Edge_Domain".

Deprecated: Please set `manage_vpc_attachment` to false, and use the standalone aviatrix_aws_tgw_vpc_attachment resource instead.

func (AviatrixAwsTgwSecurityDomainTypeOutput) AviatrixFirewall

Set to true if the security domain is to be used as an Aviatrix Firewall Domain for the Aviatrix Firewall Network. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainTypeOutput) ConnectedDomains

A list of domains connected to the domain (name: `securityDomainName`) together with its creation.

func (AviatrixAwsTgwSecurityDomainTypeOutput) ElementType

func (AviatrixAwsTgwSecurityDomainTypeOutput) NativeEgress

Set to true if the security domain is to be used as a native egress domain (for non-Aviatrix Firewall Network-based central Internet bound traffic). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainTypeOutput) NativeFirewall

Set to true if the security domain is to be used as a native firewall domain (for non-Aviatrix Firewall Network-based firewall traffic inspection). Valid values: true, false. Default value: false.

func (AviatrixAwsTgwSecurityDomainTypeOutput) SecurityDomainName

Three default domains ("Aviatrix_Edge_Domain", "Default_Domain" and "Shared_Service_Domain") are required with AWS TGW's creation.

func (AviatrixAwsTgwSecurityDomainTypeOutput) ToAviatrixAwsTgwSecurityDomainTypeOutput

func (o AviatrixAwsTgwSecurityDomainTypeOutput) ToAviatrixAwsTgwSecurityDomainTypeOutput() AviatrixAwsTgwSecurityDomainTypeOutput

func (AviatrixAwsTgwSecurityDomainTypeOutput) ToAviatrixAwsTgwSecurityDomainTypeOutputWithContext

func (o AviatrixAwsTgwSecurityDomainTypeOutput) ToAviatrixAwsTgwSecurityDomainTypeOutputWithContext(ctx context.Context) AviatrixAwsTgwSecurityDomainTypeOutput

type AviatrixAwsTgwState

type AviatrixAwsTgwState struct {
	// Name of the cloud account in the Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// A list of names of Aviatrix Transit Gateway(s) (transit VPCs) to attach to the Aviatrix_Edge_Domain.
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_aws_tgw_transit_gateway_attachment resource instead.
	AttachedAviatrixTransitGateways pulumi.StringArrayInput
	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	AwsSideAsNumber pulumi.StringPtrInput
	// Set of TGW CIDRs. For example, `cidrs = ["10.0.10.0/24", "10.1.10.0/24"]`. Available as of provider version R2.18.1+.
	Cidrs pulumi.StringArrayInput
	// Type of cloud service provider, requires an integer value. Supported for AWS (1) and AWSGov (256). Default value: 1.
	CloudType pulumi.IntPtrInput
	// Enable multicast. Default value: false. Valid values: true, false. Available in provider version R2.17+.
	EnableMulticast pulumi.BoolPtrInput
	// Inspection mode. Valid values: "Domain-based", "Connection-based". Default value: "Domain-based". Available as of provider version R2.23+.
	InspectionMode pulumi.StringPtrInput
	// This parameter is a switch used to determine whether or not to manage security domains using the **aviatrix_aws_tgw** resource. If this is set to false, creation and management of security domains must be done using the **aviatrix_aws_tgw_security_domain** resource. Valid values: true, false. Default value: true.
	ManageSecurityDomain pulumi.BoolPtrInput
	// This parameter is a switch used to determine whether or not to manage transit gateway attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of transit gateways must be done using the **aviatrix_aws_tgw_transit_gateway_attachment** resource. Valid values: true, false. Default value: true.
	ManageTransitGatewayAttachment pulumi.BoolPtrInput
	// This parameter is a switch used to determine whether or not to manage VPC attachments to the TGW using the **aviatrix_aws_tgw** resource. If this is set to false, attachment of VPCs must be done using the **aviatrix_aws_tgw_vpc_attachment** resource. Valid values: true, false. Default value: true.
	ManageVpcAttachment pulumi.BoolPtrInput
	// AWS region of AWS TGW to be created in
	Region pulumi.StringPtrInput
	// Security Domains to create together with AWS TGW's creation. Three default domains, along with the connections between them, are created automatically. These three domains can't be deleted, but the connection between any two of them can be.
	//
	// Deprecated: Please set `manage_security_domain` to false, and use the standalone aviatrix_aws_tgw_network_domain resource instead.
	SecurityDomains AviatrixAwsTgwSecurityDomainTypeArrayInput
	// TGW ID. Available as of provider version R2.19+.
	TgwId pulumi.StringPtrInput
	// Name of the AWS TGW to be created
	TgwName pulumi.StringPtrInput
}

func (AviatrixAwsTgwState) ElementType

func (AviatrixAwsTgwState) ElementType() reflect.Type

type AviatrixAwsTgwTransitGatewayAttachment

type AviatrixAwsTgwTransitGatewayAttachment struct {
	pulumi.CustomResourceState

	// AWS Region of the TGW.
	Region pulumi.StringOutput `pulumi:"region"`
	// Name of the AWS TGW.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
	// Name of the transit gateway to be attached to the AWS TGW.
	TransitGatewayName pulumi.StringOutput `pulumi:"transitGatewayName"`
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringOutput `pulumi:"vpcAccountName"`
	// VPC ID of the VPC, where transit gateway is launched.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_aws_tgw_transit_gateway_attachment** resource manages the attachment of the Aviatrix transit gateway to the AWS TGW.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwTransitGatewayAttachment(ctx, "testTransitGatewayAttachment", &aviatrix.AviatrixAwsTgwTransitGatewayAttachmentArgs{
			Region:             pulumi.String("us-east-1"),
			TgwName:            pulumi.String("test-tgw"),
			TransitGatewayName: pulumi.String("transit-gw-1"),
			VpcAccountName:     pulumi.String("test-account"),
			VpcId:              pulumi.String("vpc-0e2fac2b91c6697b3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_transit_gateway_attachment** can be imported using the `tgw_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwTransitGatewayAttachment:AviatrixAwsTgwTransitGatewayAttachment test tgw_name~vpc_id

```

func GetAviatrixAwsTgwTransitGatewayAttachment

func GetAviatrixAwsTgwTransitGatewayAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwTransitGatewayAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwTransitGatewayAttachment, error)

GetAviatrixAwsTgwTransitGatewayAttachment gets an existing AviatrixAwsTgwTransitGatewayAttachment 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 NewAviatrixAwsTgwTransitGatewayAttachment

func NewAviatrixAwsTgwTransitGatewayAttachment(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwTransitGatewayAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwTransitGatewayAttachment, error)

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

func (*AviatrixAwsTgwTransitGatewayAttachment) ElementType

func (*AviatrixAwsTgwTransitGatewayAttachment) ToAviatrixAwsTgwTransitGatewayAttachmentOutput

func (i *AviatrixAwsTgwTransitGatewayAttachment) ToAviatrixAwsTgwTransitGatewayAttachmentOutput() AviatrixAwsTgwTransitGatewayAttachmentOutput

func (*AviatrixAwsTgwTransitGatewayAttachment) ToAviatrixAwsTgwTransitGatewayAttachmentOutputWithContext

func (i *AviatrixAwsTgwTransitGatewayAttachment) ToAviatrixAwsTgwTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentOutput

type AviatrixAwsTgwTransitGatewayAttachmentArgs

type AviatrixAwsTgwTransitGatewayAttachmentArgs struct {
	// AWS Region of the TGW.
	Region pulumi.StringInput
	// Name of the AWS TGW.
	TgwName pulumi.StringInput
	// Name of the transit gateway to be attached to the AWS TGW.
	TransitGatewayName pulumi.StringInput
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringInput
	// VPC ID of the VPC, where transit gateway is launched.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwTransitGatewayAttachment resource.

func (AviatrixAwsTgwTransitGatewayAttachmentArgs) ElementType

type AviatrixAwsTgwTransitGatewayAttachmentArray

type AviatrixAwsTgwTransitGatewayAttachmentArray []AviatrixAwsTgwTransitGatewayAttachmentInput

func (AviatrixAwsTgwTransitGatewayAttachmentArray) ElementType

func (AviatrixAwsTgwTransitGatewayAttachmentArray) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutput

func (i AviatrixAwsTgwTransitGatewayAttachmentArray) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutput() AviatrixAwsTgwTransitGatewayAttachmentArrayOutput

func (AviatrixAwsTgwTransitGatewayAttachmentArray) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutputWithContext

func (i AviatrixAwsTgwTransitGatewayAttachmentArray) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentArrayOutput

type AviatrixAwsTgwTransitGatewayAttachmentArrayInput

type AviatrixAwsTgwTransitGatewayAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutput() AviatrixAwsTgwTransitGatewayAttachmentArrayOutput
	ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutputWithContext(context.Context) AviatrixAwsTgwTransitGatewayAttachmentArrayOutput
}

AviatrixAwsTgwTransitGatewayAttachmentArrayInput is an input type that accepts AviatrixAwsTgwTransitGatewayAttachmentArray and AviatrixAwsTgwTransitGatewayAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwTransitGatewayAttachmentArrayInput` via:

AviatrixAwsTgwTransitGatewayAttachmentArray{ AviatrixAwsTgwTransitGatewayAttachmentArgs{...} }

type AviatrixAwsTgwTransitGatewayAttachmentArrayOutput

type AviatrixAwsTgwTransitGatewayAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) ElementType

func (AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) Index

func (AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutput

func (o AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutput() AviatrixAwsTgwTransitGatewayAttachmentArrayOutput

func (AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutputWithContext

func (o AviatrixAwsTgwTransitGatewayAttachmentArrayOutput) ToAviatrixAwsTgwTransitGatewayAttachmentArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentArrayOutput

type AviatrixAwsTgwTransitGatewayAttachmentInput

type AviatrixAwsTgwTransitGatewayAttachmentInput interface {
	pulumi.Input

	ToAviatrixAwsTgwTransitGatewayAttachmentOutput() AviatrixAwsTgwTransitGatewayAttachmentOutput
	ToAviatrixAwsTgwTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentOutput
}

type AviatrixAwsTgwTransitGatewayAttachmentMap

type AviatrixAwsTgwTransitGatewayAttachmentMap map[string]AviatrixAwsTgwTransitGatewayAttachmentInput

func (AviatrixAwsTgwTransitGatewayAttachmentMap) ElementType

func (AviatrixAwsTgwTransitGatewayAttachmentMap) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutput

func (i AviatrixAwsTgwTransitGatewayAttachmentMap) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutput() AviatrixAwsTgwTransitGatewayAttachmentMapOutput

func (AviatrixAwsTgwTransitGatewayAttachmentMap) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutputWithContext

func (i AviatrixAwsTgwTransitGatewayAttachmentMap) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentMapOutput

type AviatrixAwsTgwTransitGatewayAttachmentMapInput

type AviatrixAwsTgwTransitGatewayAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwTransitGatewayAttachmentMapOutput() AviatrixAwsTgwTransitGatewayAttachmentMapOutput
	ToAviatrixAwsTgwTransitGatewayAttachmentMapOutputWithContext(context.Context) AviatrixAwsTgwTransitGatewayAttachmentMapOutput
}

AviatrixAwsTgwTransitGatewayAttachmentMapInput is an input type that accepts AviatrixAwsTgwTransitGatewayAttachmentMap and AviatrixAwsTgwTransitGatewayAttachmentMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwTransitGatewayAttachmentMapInput` via:

AviatrixAwsTgwTransitGatewayAttachmentMap{ "key": AviatrixAwsTgwTransitGatewayAttachmentArgs{...} }

type AviatrixAwsTgwTransitGatewayAttachmentMapOutput

type AviatrixAwsTgwTransitGatewayAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwTransitGatewayAttachmentMapOutput) ElementType

func (AviatrixAwsTgwTransitGatewayAttachmentMapOutput) MapIndex

func (AviatrixAwsTgwTransitGatewayAttachmentMapOutput) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutput

func (o AviatrixAwsTgwTransitGatewayAttachmentMapOutput) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutput() AviatrixAwsTgwTransitGatewayAttachmentMapOutput

func (AviatrixAwsTgwTransitGatewayAttachmentMapOutput) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutputWithContext

func (o AviatrixAwsTgwTransitGatewayAttachmentMapOutput) ToAviatrixAwsTgwTransitGatewayAttachmentMapOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentMapOutput

type AviatrixAwsTgwTransitGatewayAttachmentOutput

type AviatrixAwsTgwTransitGatewayAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) ElementType

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) Region

AWS Region of the TGW.

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) TgwName

Name of the AWS TGW.

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) ToAviatrixAwsTgwTransitGatewayAttachmentOutput

func (o AviatrixAwsTgwTransitGatewayAttachmentOutput) ToAviatrixAwsTgwTransitGatewayAttachmentOutput() AviatrixAwsTgwTransitGatewayAttachmentOutput

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) ToAviatrixAwsTgwTransitGatewayAttachmentOutputWithContext

func (o AviatrixAwsTgwTransitGatewayAttachmentOutput) ToAviatrixAwsTgwTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwTransitGatewayAttachmentOutput

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) TransitGatewayName

Name of the transit gateway to be attached to the AWS TGW.

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) VpcAccountName

The name of the cloud account in the Aviatrix controller, which is associated with the VPC.

func (AviatrixAwsTgwTransitGatewayAttachmentOutput) VpcId

VPC ID of the VPC, where transit gateway is launched.

type AviatrixAwsTgwTransitGatewayAttachmentState

type AviatrixAwsTgwTransitGatewayAttachmentState struct {
	// AWS Region of the TGW.
	Region pulumi.StringPtrInput
	// Name of the AWS TGW.
	TgwName pulumi.StringPtrInput
	// Name of the transit gateway to be attached to the AWS TGW.
	TransitGatewayName pulumi.StringPtrInput
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringPtrInput
	// VPC ID of the VPC, where transit gateway is launched.
	VpcId pulumi.StringPtrInput
}

func (AviatrixAwsTgwTransitGatewayAttachmentState) ElementType

type AviatrixAwsTgwVpcAttachment

type AviatrixAwsTgwVpcAttachment struct {
	pulumi.CustomResourceState

	// Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRouteAdvertisement pulumi.StringPtrOutput `pulumi:"customizedRouteAdvertisement"`
	// Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRoutes pulumi.StringPtrOutput `pulumi:"customizedRoutes"`
	// Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.
	DisableLocalRoutePropagation pulumi.BoolPtrOutput `pulumi:"disableLocalRoutePropagation"`
	// Advanced option. To allow access to the private IP of the MGMT interface of the Firewalls, set this attribute to enable Management Access From Onprem. This feature advertises the Firewalls private MGMT subnet to your Edge domain. Example: "vpn-0068bb31917ff2289".
	EdgeAttachment pulumi.StringPtrOutput `pulumi:"edgeAttachment"`
	// The name of the network domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	NetworkDomainName pulumi.StringPtrOutput `pulumi:"networkDomainName"`
	// AWS Region of the TGW.
	Region pulumi.StringOutput `pulumi:"region"`
	// Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".
	RouteTables pulumi.StringOutput `pulumi:"routeTables"`
	// The name of the security domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrOutput `pulumi:"securityDomainName"`
	// Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, Aviatrix Controller automatically
	// selects a subnet representing each AZ for the VPC attachment.
	Subnets pulumi.StringOutput `pulumi:"subnets"`
	// Name of the AWS TGW.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringOutput `pulumi:"vpcAccountName"`
	// VPC ID of the VPC to be attached to the specified `securityDomainName`.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_aws_tgw_vpc_attachment** resource manages the attaching & detaching of the VPC to & from an AWS TGW, and FireNet Gateway to TGW Firewall Domain.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwVpcAttachment(ctx, "testAwsTgwVpcAttachment", &aviatrix.AviatrixAwsTgwVpcAttachmentArgs{
			NetworkDomainName: pulumi.String("my-ndn"),
			Region:            pulumi.String("us-east-1"),
			TgwName:           pulumi.String("test-tgw"),
			VpcAccountName:    pulumi.String("test-account"),
			VpcId:             pulumi.String("vpc-0e2fac2b91c6697b3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_vpc_attachment** can be imported using the `tgw_name`, `security_domain_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwVpcAttachment:AviatrixAwsTgwVpcAttachment test tgw_name~security_domain_name~vpc_id

```

func GetAviatrixAwsTgwVpcAttachment

func GetAviatrixAwsTgwVpcAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwVpcAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwVpcAttachment, error)

GetAviatrixAwsTgwVpcAttachment gets an existing AviatrixAwsTgwVpcAttachment 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 NewAviatrixAwsTgwVpcAttachment

func NewAviatrixAwsTgwVpcAttachment(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwVpcAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwVpcAttachment, error)

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

func (*AviatrixAwsTgwVpcAttachment) ElementType

func (*AviatrixAwsTgwVpcAttachment) ElementType() reflect.Type

func (*AviatrixAwsTgwVpcAttachment) ToAviatrixAwsTgwVpcAttachmentOutput

func (i *AviatrixAwsTgwVpcAttachment) ToAviatrixAwsTgwVpcAttachmentOutput() AviatrixAwsTgwVpcAttachmentOutput

func (*AviatrixAwsTgwVpcAttachment) ToAviatrixAwsTgwVpcAttachmentOutputWithContext

func (i *AviatrixAwsTgwVpcAttachment) ToAviatrixAwsTgwVpcAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentOutput

type AviatrixAwsTgwVpcAttachmentArgs

type AviatrixAwsTgwVpcAttachmentArgs struct {
	// Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRouteAdvertisement pulumi.StringPtrInput
	// Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRoutes pulumi.StringPtrInput
	// Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.
	DisableLocalRoutePropagation pulumi.BoolPtrInput
	// Advanced option. To allow access to the private IP of the MGMT interface of the Firewalls, set this attribute to enable Management Access From Onprem. This feature advertises the Firewalls private MGMT subnet to your Edge domain. Example: "vpn-0068bb31917ff2289".
	EdgeAttachment pulumi.StringPtrInput
	// The name of the network domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	NetworkDomainName pulumi.StringPtrInput
	// AWS Region of the TGW.
	Region pulumi.StringInput
	// Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".
	RouteTables pulumi.StringPtrInput
	// The name of the security domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, Aviatrix Controller automatically
	// selects a subnet representing each AZ for the VPC attachment.
	Subnets pulumi.StringPtrInput
	// Name of the AWS TGW.
	TgwName pulumi.StringInput
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringInput
	// VPC ID of the VPC to be attached to the specified `securityDomainName`.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwVpcAttachment resource.

func (AviatrixAwsTgwVpcAttachmentArgs) ElementType

type AviatrixAwsTgwVpcAttachmentArray

type AviatrixAwsTgwVpcAttachmentArray []AviatrixAwsTgwVpcAttachmentInput

func (AviatrixAwsTgwVpcAttachmentArray) ElementType

func (AviatrixAwsTgwVpcAttachmentArray) ToAviatrixAwsTgwVpcAttachmentArrayOutput

func (i AviatrixAwsTgwVpcAttachmentArray) ToAviatrixAwsTgwVpcAttachmentArrayOutput() AviatrixAwsTgwVpcAttachmentArrayOutput

func (AviatrixAwsTgwVpcAttachmentArray) ToAviatrixAwsTgwVpcAttachmentArrayOutputWithContext

func (i AviatrixAwsTgwVpcAttachmentArray) ToAviatrixAwsTgwVpcAttachmentArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentArrayOutput

type AviatrixAwsTgwVpcAttachmentArrayInput

type AviatrixAwsTgwVpcAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpcAttachmentArrayOutput() AviatrixAwsTgwVpcAttachmentArrayOutput
	ToAviatrixAwsTgwVpcAttachmentArrayOutputWithContext(context.Context) AviatrixAwsTgwVpcAttachmentArrayOutput
}

AviatrixAwsTgwVpcAttachmentArrayInput is an input type that accepts AviatrixAwsTgwVpcAttachmentArray and AviatrixAwsTgwVpcAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpcAttachmentArrayInput` via:

AviatrixAwsTgwVpcAttachmentArray{ AviatrixAwsTgwVpcAttachmentArgs{...} }

type AviatrixAwsTgwVpcAttachmentArrayOutput

type AviatrixAwsTgwVpcAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpcAttachmentArrayOutput) ElementType

func (AviatrixAwsTgwVpcAttachmentArrayOutput) Index

func (AviatrixAwsTgwVpcAttachmentArrayOutput) ToAviatrixAwsTgwVpcAttachmentArrayOutput

func (o AviatrixAwsTgwVpcAttachmentArrayOutput) ToAviatrixAwsTgwVpcAttachmentArrayOutput() AviatrixAwsTgwVpcAttachmentArrayOutput

func (AviatrixAwsTgwVpcAttachmentArrayOutput) ToAviatrixAwsTgwVpcAttachmentArrayOutputWithContext

func (o AviatrixAwsTgwVpcAttachmentArrayOutput) ToAviatrixAwsTgwVpcAttachmentArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentArrayOutput

type AviatrixAwsTgwVpcAttachmentInput

type AviatrixAwsTgwVpcAttachmentInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpcAttachmentOutput() AviatrixAwsTgwVpcAttachmentOutput
	ToAviatrixAwsTgwVpcAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentOutput
}

type AviatrixAwsTgwVpcAttachmentMap

type AviatrixAwsTgwVpcAttachmentMap map[string]AviatrixAwsTgwVpcAttachmentInput

func (AviatrixAwsTgwVpcAttachmentMap) ElementType

func (AviatrixAwsTgwVpcAttachmentMap) ToAviatrixAwsTgwVpcAttachmentMapOutput

func (i AviatrixAwsTgwVpcAttachmentMap) ToAviatrixAwsTgwVpcAttachmentMapOutput() AviatrixAwsTgwVpcAttachmentMapOutput

func (AviatrixAwsTgwVpcAttachmentMap) ToAviatrixAwsTgwVpcAttachmentMapOutputWithContext

func (i AviatrixAwsTgwVpcAttachmentMap) ToAviatrixAwsTgwVpcAttachmentMapOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentMapOutput

type AviatrixAwsTgwVpcAttachmentMapInput

type AviatrixAwsTgwVpcAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpcAttachmentMapOutput() AviatrixAwsTgwVpcAttachmentMapOutput
	ToAviatrixAwsTgwVpcAttachmentMapOutputWithContext(context.Context) AviatrixAwsTgwVpcAttachmentMapOutput
}

AviatrixAwsTgwVpcAttachmentMapInput is an input type that accepts AviatrixAwsTgwVpcAttachmentMap and AviatrixAwsTgwVpcAttachmentMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpcAttachmentMapInput` via:

AviatrixAwsTgwVpcAttachmentMap{ "key": AviatrixAwsTgwVpcAttachmentArgs{...} }

type AviatrixAwsTgwVpcAttachmentMapOutput

type AviatrixAwsTgwVpcAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpcAttachmentMapOutput) ElementType

func (AviatrixAwsTgwVpcAttachmentMapOutput) MapIndex

func (AviatrixAwsTgwVpcAttachmentMapOutput) ToAviatrixAwsTgwVpcAttachmentMapOutput

func (o AviatrixAwsTgwVpcAttachmentMapOutput) ToAviatrixAwsTgwVpcAttachmentMapOutput() AviatrixAwsTgwVpcAttachmentMapOutput

func (AviatrixAwsTgwVpcAttachmentMapOutput) ToAviatrixAwsTgwVpcAttachmentMapOutputWithContext

func (o AviatrixAwsTgwVpcAttachmentMapOutput) ToAviatrixAwsTgwVpcAttachmentMapOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentMapOutput

type AviatrixAwsTgwVpcAttachmentOutput

type AviatrixAwsTgwVpcAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpcAttachmentOutput) CustomizedRouteAdvertisement

func (o AviatrixAwsTgwVpcAttachmentOutput) CustomizedRouteAdvertisement() pulumi.StringPtrOutput

Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".

func (AviatrixAwsTgwVpcAttachmentOutput) CustomizedRoutes

Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".

func (AviatrixAwsTgwVpcAttachmentOutput) DisableLocalRoutePropagation

func (o AviatrixAwsTgwVpcAttachmentOutput) DisableLocalRoutePropagation() pulumi.BoolPtrOutput

Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwVpcAttachmentOutput) EdgeAttachment

Advanced option. To allow access to the private IP of the MGMT interface of the Firewalls, set this attribute to enable Management Access From Onprem. This feature advertises the Firewalls private MGMT subnet to your Edge domain. Example: "vpn-0068bb31917ff2289".

func (AviatrixAwsTgwVpcAttachmentOutput) ElementType

func (AviatrixAwsTgwVpcAttachmentOutput) NetworkDomainName

The name of the network domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.

func (AviatrixAwsTgwVpcAttachmentOutput) Region

AWS Region of the TGW.

func (AviatrixAwsTgwVpcAttachmentOutput) RouteTables

Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".

func (AviatrixAwsTgwVpcAttachmentOutput) SecurityDomainName deprecated

The name of the security domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.

Deprecated: Please use network_domain_name instead.

func (AviatrixAwsTgwVpcAttachmentOutput) Subnets

Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, Aviatrix Controller automatically selects a subnet representing each AZ for the VPC attachment.

func (AviatrixAwsTgwVpcAttachmentOutput) TgwName

Name of the AWS TGW.

func (AviatrixAwsTgwVpcAttachmentOutput) ToAviatrixAwsTgwVpcAttachmentOutput

func (o AviatrixAwsTgwVpcAttachmentOutput) ToAviatrixAwsTgwVpcAttachmentOutput() AviatrixAwsTgwVpcAttachmentOutput

func (AviatrixAwsTgwVpcAttachmentOutput) ToAviatrixAwsTgwVpcAttachmentOutputWithContext

func (o AviatrixAwsTgwVpcAttachmentOutput) ToAviatrixAwsTgwVpcAttachmentOutputWithContext(ctx context.Context) AviatrixAwsTgwVpcAttachmentOutput

func (AviatrixAwsTgwVpcAttachmentOutput) VpcAccountName

The name of the cloud account in the Aviatrix controller, which is associated with the VPC.

func (AviatrixAwsTgwVpcAttachmentOutput) VpcId

VPC ID of the VPC to be attached to the specified `securityDomainName`.

type AviatrixAwsTgwVpcAttachmentState

type AviatrixAwsTgwVpcAttachmentState struct {
	// Advanced option. Customized route(s) to be advertised to other VPCs that are connected to the same TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRouteAdvertisement pulumi.StringPtrInput
	// Advanced option. Customized Spoke VPC Routes. It allows the admin to enter non-RFC1918 routes in the VPC route table targeting the TGW. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	CustomizedRoutes pulumi.StringPtrInput
	// Advanced option. If set to true, it disables automatic route propagation of this VPC to other VPCs within the same security domain. Valid values: true, false. Default value: false.
	DisableLocalRoutePropagation pulumi.BoolPtrInput
	// Advanced option. To allow access to the private IP of the MGMT interface of the Firewalls, set this attribute to enable Management Access From Onprem. This feature advertises the Firewalls private MGMT subnet to your Edge domain. Example: "vpn-0068bb31917ff2289".
	EdgeAttachment pulumi.StringPtrInput
	// The name of the network domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	NetworkDomainName pulumi.StringPtrInput
	// AWS Region of the TGW.
	Region pulumi.StringPtrInput
	// Advanced option. Route tables separated by ',' to participate in TGW Orchestrator, i.e., learned routes will be propagated to these route tables. Example: "rtb-212ff547,rtb-045397874c170c745".
	RouteTables pulumi.StringPtrInput
	// The name of the security domain, to which the VPC will be attached to. If changed, the VPC will be detached from the old domain, and attached to the new domain.
	//
	// Deprecated: Please use network_domain_name instead.
	SecurityDomainName pulumi.StringPtrInput
	// Advanced option. VPC subnets separated by ',' to attach to the VPC. If left blank, Aviatrix Controller automatically
	// selects a subnet representing each AZ for the VPC attachment.
	Subnets pulumi.StringPtrInput
	// Name of the AWS TGW.
	TgwName pulumi.StringPtrInput
	// The name of the cloud account in the Aviatrix controller, which is associated with the VPC.
	VpcAccountName pulumi.StringPtrInput
	// VPC ID of the VPC to be attached to the specified `securityDomainName`.
	VpcId pulumi.StringPtrInput
}

func (AviatrixAwsTgwVpcAttachmentState) ElementType

type AviatrixAwsTgwVpnConn

type AviatrixAwsTgwVpnConn struct {
	pulumi.CustomResourceState

	// Unique name of the connection.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Connection type. Valid values: 'dynamic', 'static'. 'dynamic' stands for a BGP VPN connection; 'static' stands for a static VPN connection. Default value: 'dynamic'.
	ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"`
	// Enable Global Acceleration. Type: Boolean. Default: false.
	EnableGlobalAcceleration pulumi.BoolPtrOutput `pulumi:"enableGlobalAcceleration"`
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW VPN connection. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Inside IP CIDR for Tunnel 1. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun1 pulumi.StringPtrOutput `pulumi:"insideIpCidrTun1"`
	// Inside IP CIDR for Tunnel 2. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun2 pulumi.StringPtrOutput `pulumi:"insideIpCidrTun2"`
	// Pre-Shared Key for Tunnel 1. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun1 pulumi.StringPtrOutput `pulumi:"preSharedKeyTun1"`
	// Pre-Shared Key for Tunnel 2. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun2 pulumi.StringPtrOutput `pulumi:"preSharedKeyTun2"`
	// Public IP address. Example: "40.0.0.0".
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// AWS side as a number. Integer between 1-4294967294. Example: "12". **Required for a dynamic VPN connection.**
	RemoteAsNumber pulumi.StringPtrOutput `pulumi:"remoteAsNumber"`
	// Remote CIDRs separated by ",". Example: AWS: "16.0.0.0/16,16.1.0.0/16". **Required for a static VPN connection.**
	RemoteCidr pulumi.StringPtrOutput `pulumi:"remoteCidr"`
	// The name of a route domain, to which the vpn will be attached.
	RouteDomainName pulumi.StringOutput `pulumi:"routeDomainName"`
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringOutput `pulumi:"tgwName"`
	// ID of the VPN generated by creation of the connection.
	VpnId pulumi.StringOutput `pulumi:"vpnId"`
	// AWS TGW VPN tunnel data.
	VpnTunnelDatas AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput `pulumi:"vpnTunnelDatas"`
}

The **aviatrix_aws_tgw_vpn_conn** resource allows the creation and management of Aviatrix AWS TGW VPN connections in their selected Security Domain.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwVpnConn(ctx, "testAwsTgwVpnConn", &aviatrix.AviatrixAwsTgwVpnConnArgs{
			ConnectionName:  pulumi.String("my-conn1"),
			ConnectionType:  pulumi.String("dynamic"),
			PublicIp:        pulumi.String("40.0.0.0"),
			RemoteAsNumber:  pulumi.String("12"),
			RouteDomainName: pulumi.String("Default_Domain"),
			TgwName:         pulumi.String("test-tgw1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAwsTgwVpnConn(ctx, "testAwsTgwVpnConn", &aviatrix.AviatrixAwsTgwVpnConnArgs{
			ConnectionName:  pulumi.String("my-conn1"),
			ConnectionType:  pulumi.String("static"),
			PublicIp:        pulumi.String("40.0.0.0"),
			RemoteCidr:      pulumi.String("16.0.0.0/16,16.1.0.0/16"),
			RouteDomainName: pulumi.String("Default_Domain"),
			TgwName:         pulumi.String("test-tgw1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aws_tgw_vpn_conn** can be imported using the `tgw_name` and `vpn_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAwsTgwVpnConn:AviatrixAwsTgwVpnConn test tgw_name~vpn_id

```

func GetAviatrixAwsTgwVpnConn

func GetAviatrixAwsTgwVpnConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAwsTgwVpnConnState, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwVpnConn, error)

GetAviatrixAwsTgwVpnConn gets an existing AviatrixAwsTgwVpnConn 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 NewAviatrixAwsTgwVpnConn

func NewAviatrixAwsTgwVpnConn(ctx *pulumi.Context,
	name string, args *AviatrixAwsTgwVpnConnArgs, opts ...pulumi.ResourceOption) (*AviatrixAwsTgwVpnConn, error)

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

func (*AviatrixAwsTgwVpnConn) ElementType

func (*AviatrixAwsTgwVpnConn) ElementType() reflect.Type

func (*AviatrixAwsTgwVpnConn) ToAviatrixAwsTgwVpnConnOutput

func (i *AviatrixAwsTgwVpnConn) ToAviatrixAwsTgwVpnConnOutput() AviatrixAwsTgwVpnConnOutput

func (*AviatrixAwsTgwVpnConn) ToAviatrixAwsTgwVpnConnOutputWithContext

func (i *AviatrixAwsTgwVpnConn) ToAviatrixAwsTgwVpnConnOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnOutput

type AviatrixAwsTgwVpnConnArgs

type AviatrixAwsTgwVpnConnArgs struct {
	// Unique name of the connection.
	ConnectionName pulumi.StringInput
	// Connection type. Valid values: 'dynamic', 'static'. 'dynamic' stands for a BGP VPN connection; 'static' stands for a static VPN connection. Default value: 'dynamic'.
	ConnectionType pulumi.StringPtrInput
	// Enable Global Acceleration. Type: Boolean. Default: false.
	EnableGlobalAcceleration pulumi.BoolPtrInput
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW VPN connection. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Inside IP CIDR for Tunnel 1. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun1 pulumi.StringPtrInput
	// Inside IP CIDR for Tunnel 2. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun2 pulumi.StringPtrInput
	// Pre-Shared Key for Tunnel 1. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun1 pulumi.StringPtrInput
	// Pre-Shared Key for Tunnel 2. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun2 pulumi.StringPtrInput
	// Public IP address. Example: "40.0.0.0".
	PublicIp pulumi.StringInput
	// AWS side as a number. Integer between 1-4294967294. Example: "12". **Required for a dynamic VPN connection.**
	RemoteAsNumber pulumi.StringPtrInput
	// Remote CIDRs separated by ",". Example: AWS: "16.0.0.0/16,16.1.0.0/16". **Required for a static VPN connection.**
	RemoteCidr pulumi.StringPtrInput
	// The name of a route domain, to which the vpn will be attached.
	RouteDomainName pulumi.StringInput
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAwsTgwVpnConn resource.

func (AviatrixAwsTgwVpnConnArgs) ElementType

func (AviatrixAwsTgwVpnConnArgs) ElementType() reflect.Type

type AviatrixAwsTgwVpnConnArray

type AviatrixAwsTgwVpnConnArray []AviatrixAwsTgwVpnConnInput

func (AviatrixAwsTgwVpnConnArray) ElementType

func (AviatrixAwsTgwVpnConnArray) ElementType() reflect.Type

func (AviatrixAwsTgwVpnConnArray) ToAviatrixAwsTgwVpnConnArrayOutput

func (i AviatrixAwsTgwVpnConnArray) ToAviatrixAwsTgwVpnConnArrayOutput() AviatrixAwsTgwVpnConnArrayOutput

func (AviatrixAwsTgwVpnConnArray) ToAviatrixAwsTgwVpnConnArrayOutputWithContext

func (i AviatrixAwsTgwVpnConnArray) ToAviatrixAwsTgwVpnConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnArrayOutput

type AviatrixAwsTgwVpnConnArrayInput

type AviatrixAwsTgwVpnConnArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpnConnArrayOutput() AviatrixAwsTgwVpnConnArrayOutput
	ToAviatrixAwsTgwVpnConnArrayOutputWithContext(context.Context) AviatrixAwsTgwVpnConnArrayOutput
}

AviatrixAwsTgwVpnConnArrayInput is an input type that accepts AviatrixAwsTgwVpnConnArray and AviatrixAwsTgwVpnConnArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpnConnArrayInput` via:

AviatrixAwsTgwVpnConnArray{ AviatrixAwsTgwVpnConnArgs{...} }

type AviatrixAwsTgwVpnConnArrayOutput

type AviatrixAwsTgwVpnConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpnConnArrayOutput) ElementType

func (AviatrixAwsTgwVpnConnArrayOutput) Index

func (AviatrixAwsTgwVpnConnArrayOutput) ToAviatrixAwsTgwVpnConnArrayOutput

func (o AviatrixAwsTgwVpnConnArrayOutput) ToAviatrixAwsTgwVpnConnArrayOutput() AviatrixAwsTgwVpnConnArrayOutput

func (AviatrixAwsTgwVpnConnArrayOutput) ToAviatrixAwsTgwVpnConnArrayOutputWithContext

func (o AviatrixAwsTgwVpnConnArrayOutput) ToAviatrixAwsTgwVpnConnArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnArrayOutput

type AviatrixAwsTgwVpnConnInput

type AviatrixAwsTgwVpnConnInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpnConnOutput() AviatrixAwsTgwVpnConnOutput
	ToAviatrixAwsTgwVpnConnOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnOutput
}

type AviatrixAwsTgwVpnConnMap

type AviatrixAwsTgwVpnConnMap map[string]AviatrixAwsTgwVpnConnInput

func (AviatrixAwsTgwVpnConnMap) ElementType

func (AviatrixAwsTgwVpnConnMap) ElementType() reflect.Type

func (AviatrixAwsTgwVpnConnMap) ToAviatrixAwsTgwVpnConnMapOutput

func (i AviatrixAwsTgwVpnConnMap) ToAviatrixAwsTgwVpnConnMapOutput() AviatrixAwsTgwVpnConnMapOutput

func (AviatrixAwsTgwVpnConnMap) ToAviatrixAwsTgwVpnConnMapOutputWithContext

func (i AviatrixAwsTgwVpnConnMap) ToAviatrixAwsTgwVpnConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnMapOutput

type AviatrixAwsTgwVpnConnMapInput

type AviatrixAwsTgwVpnConnMapInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpnConnMapOutput() AviatrixAwsTgwVpnConnMapOutput
	ToAviatrixAwsTgwVpnConnMapOutputWithContext(context.Context) AviatrixAwsTgwVpnConnMapOutput
}

AviatrixAwsTgwVpnConnMapInput is an input type that accepts AviatrixAwsTgwVpnConnMap and AviatrixAwsTgwVpnConnMapOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpnConnMapInput` via:

AviatrixAwsTgwVpnConnMap{ "key": AviatrixAwsTgwVpnConnArgs{...} }

type AviatrixAwsTgwVpnConnMapOutput

type AviatrixAwsTgwVpnConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpnConnMapOutput) ElementType

func (AviatrixAwsTgwVpnConnMapOutput) MapIndex

func (AviatrixAwsTgwVpnConnMapOutput) ToAviatrixAwsTgwVpnConnMapOutput

func (o AviatrixAwsTgwVpnConnMapOutput) ToAviatrixAwsTgwVpnConnMapOutput() AviatrixAwsTgwVpnConnMapOutput

func (AviatrixAwsTgwVpnConnMapOutput) ToAviatrixAwsTgwVpnConnMapOutputWithContext

func (o AviatrixAwsTgwVpnConnMapOutput) ToAviatrixAwsTgwVpnConnMapOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnMapOutput

type AviatrixAwsTgwVpnConnOutput

type AviatrixAwsTgwVpnConnOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpnConnOutput) ConnectionName

func (o AviatrixAwsTgwVpnConnOutput) ConnectionName() pulumi.StringOutput

Unique name of the connection.

func (AviatrixAwsTgwVpnConnOutput) ConnectionType

Connection type. Valid values: 'dynamic', 'static'. 'dynamic' stands for a BGP VPN connection; 'static' stands for a static VPN connection. Default value: 'dynamic'.

func (AviatrixAwsTgwVpnConnOutput) ElementType

func (AviatrixAwsTgwVpnConnOutput) EnableGlobalAcceleration

func (o AviatrixAwsTgwVpnConnOutput) EnableGlobalAcceleration() pulumi.BoolPtrOutput

Enable Global Acceleration. Type: Boolean. Default: false.

func (AviatrixAwsTgwVpnConnOutput) EnableLearnedCidrsApproval

func (o AviatrixAwsTgwVpnConnOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW VPN connection. Valid values: true, false. Default value: false.

func (AviatrixAwsTgwVpnConnOutput) InsideIpCidrTun1

func (o AviatrixAwsTgwVpnConnOutput) InsideIpCidrTun1() pulumi.StringPtrOutput

Inside IP CIDR for Tunnel 1. A /30 CIDR in 169.254.0.0/16.

func (AviatrixAwsTgwVpnConnOutput) InsideIpCidrTun2

func (o AviatrixAwsTgwVpnConnOutput) InsideIpCidrTun2() pulumi.StringPtrOutput

Inside IP CIDR for Tunnel 2. A /30 CIDR in 169.254.0.0/16.

func (AviatrixAwsTgwVpnConnOutput) PreSharedKeyTun1

func (o AviatrixAwsTgwVpnConnOutput) PreSharedKeyTun1() pulumi.StringPtrOutput

Pre-Shared Key for Tunnel 1. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.

func (AviatrixAwsTgwVpnConnOutput) PreSharedKeyTun2

func (o AviatrixAwsTgwVpnConnOutput) PreSharedKeyTun2() pulumi.StringPtrOutput

Pre-Shared Key for Tunnel 2. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.

func (AviatrixAwsTgwVpnConnOutput) PublicIp

Public IP address. Example: "40.0.0.0".

func (AviatrixAwsTgwVpnConnOutput) RemoteAsNumber

AWS side as a number. Integer between 1-4294967294. Example: "12". **Required for a dynamic VPN connection.**

func (AviatrixAwsTgwVpnConnOutput) RemoteCidr

Remote CIDRs separated by ",". Example: AWS: "16.0.0.0/16,16.1.0.0/16". **Required for a static VPN connection.**

func (AviatrixAwsTgwVpnConnOutput) RouteDomainName

func (o AviatrixAwsTgwVpnConnOutput) RouteDomainName() pulumi.StringOutput

The name of a route domain, to which the vpn will be attached.

func (AviatrixAwsTgwVpnConnOutput) TgwName

This parameter represents the name of an AWS TGW.

func (AviatrixAwsTgwVpnConnOutput) ToAviatrixAwsTgwVpnConnOutput

func (o AviatrixAwsTgwVpnConnOutput) ToAviatrixAwsTgwVpnConnOutput() AviatrixAwsTgwVpnConnOutput

func (AviatrixAwsTgwVpnConnOutput) ToAviatrixAwsTgwVpnConnOutputWithContext

func (o AviatrixAwsTgwVpnConnOutput) ToAviatrixAwsTgwVpnConnOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnOutput

func (AviatrixAwsTgwVpnConnOutput) VpnId

ID of the VPN generated by creation of the connection.

func (AviatrixAwsTgwVpnConnOutput) VpnTunnelDatas

AWS TGW VPN tunnel data.

type AviatrixAwsTgwVpnConnState

type AviatrixAwsTgwVpnConnState struct {
	// Unique name of the connection.
	ConnectionName pulumi.StringPtrInput
	// Connection type. Valid values: 'dynamic', 'static'. 'dynamic' stands for a BGP VPN connection; 'static' stands for a static VPN connection. Default value: 'dynamic'.
	ConnectionType pulumi.StringPtrInput
	// Enable Global Acceleration. Type: Boolean. Default: false.
	EnableGlobalAcceleration pulumi.BoolPtrInput
	// Switch to enable/disable [encrypted transit approval](https://docs.aviatrix.com/HowTos/tgw_approval.html) for AWS TGW VPN connection. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Inside IP CIDR for Tunnel 1. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun1 pulumi.StringPtrInput
	// Inside IP CIDR for Tunnel 2. A /30 CIDR in 169.254.0.0/16.
	InsideIpCidrTun2 pulumi.StringPtrInput
	// Pre-Shared Key for Tunnel 1. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun1 pulumi.StringPtrInput
	// Pre-Shared Key for Tunnel 2. A 8-64 character string with alphanumeric underscore(_) and dot(.). It cannot start with 0.
	PreSharedKeyTun2 pulumi.StringPtrInput
	// Public IP address. Example: "40.0.0.0".
	PublicIp pulumi.StringPtrInput
	// AWS side as a number. Integer between 1-4294967294. Example: "12". **Required for a dynamic VPN connection.**
	RemoteAsNumber pulumi.StringPtrInput
	// Remote CIDRs separated by ",". Example: AWS: "16.0.0.0/16,16.1.0.0/16". **Required for a static VPN connection.**
	RemoteCidr pulumi.StringPtrInput
	// The name of a route domain, to which the vpn will be attached.
	RouteDomainName pulumi.StringPtrInput
	// This parameter represents the name of an AWS TGW.
	TgwName pulumi.StringPtrInput
	// ID of the VPN generated by creation of the connection.
	VpnId pulumi.StringPtrInput
	// AWS TGW VPN tunnel data.
	VpnTunnelDatas AviatrixAwsTgwVpnConnVpnTunnelDataArrayInput
}

func (AviatrixAwsTgwVpnConnState) ElementType

func (AviatrixAwsTgwVpnConnState) ElementType() reflect.Type

type AviatrixAwsTgwVpnConnVpnTunnelData

type AviatrixAwsTgwVpnConnVpnTunnelData struct {
	LastStatusChangeTime *string `pulumi:"lastStatusChangeTime"`
	RouteCount           *int    `pulumi:"routeCount"`
	Status               *string `pulumi:"status"`
	StatusMessage        *string `pulumi:"statusMessage"`
	TgwAsn               *string `pulumi:"tgwAsn"`
	TunnelName           *string `pulumi:"tunnelName"`
	VpnInsideAddress     *string `pulumi:"vpnInsideAddress"`
	VpnOutsideAddress    *string `pulumi:"vpnOutsideAddress"`
}

type AviatrixAwsTgwVpnConnVpnTunnelDataArgs

type AviatrixAwsTgwVpnConnVpnTunnelDataArgs struct {
	LastStatusChangeTime pulumi.StringPtrInput `pulumi:"lastStatusChangeTime"`
	RouteCount           pulumi.IntPtrInput    `pulumi:"routeCount"`
	Status               pulumi.StringPtrInput `pulumi:"status"`
	StatusMessage        pulumi.StringPtrInput `pulumi:"statusMessage"`
	TgwAsn               pulumi.StringPtrInput `pulumi:"tgwAsn"`
	TunnelName           pulumi.StringPtrInput `pulumi:"tunnelName"`
	VpnInsideAddress     pulumi.StringPtrInput `pulumi:"vpnInsideAddress"`
	VpnOutsideAddress    pulumi.StringPtrInput `pulumi:"vpnOutsideAddress"`
}

func (AviatrixAwsTgwVpnConnVpnTunnelDataArgs) ElementType

func (AviatrixAwsTgwVpnConnVpnTunnelDataArgs) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutput

func (i AviatrixAwsTgwVpnConnVpnTunnelDataArgs) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutput() AviatrixAwsTgwVpnConnVpnTunnelDataOutput

func (AviatrixAwsTgwVpnConnVpnTunnelDataArgs) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutputWithContext

func (i AviatrixAwsTgwVpnConnVpnTunnelDataArgs) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataOutput

type AviatrixAwsTgwVpnConnVpnTunnelDataArray

type AviatrixAwsTgwVpnConnVpnTunnelDataArray []AviatrixAwsTgwVpnConnVpnTunnelDataInput

func (AviatrixAwsTgwVpnConnVpnTunnelDataArray) ElementType

func (AviatrixAwsTgwVpnConnVpnTunnelDataArray) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

func (i AviatrixAwsTgwVpnConnVpnTunnelDataArray) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput() AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

func (AviatrixAwsTgwVpnConnVpnTunnelDataArray) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutputWithContext

func (i AviatrixAwsTgwVpnConnVpnTunnelDataArray) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

type AviatrixAwsTgwVpnConnVpnTunnelDataArrayInput

type AviatrixAwsTgwVpnConnVpnTunnelDataArrayInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput() AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput
	ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutputWithContext(context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput
}

AviatrixAwsTgwVpnConnVpnTunnelDataArrayInput is an input type that accepts AviatrixAwsTgwVpnConnVpnTunnelDataArray and AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpnConnVpnTunnelDataArrayInput` via:

AviatrixAwsTgwVpnConnVpnTunnelDataArray{ AviatrixAwsTgwVpnConnVpnTunnelDataArgs{...} }

type AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

type AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) ElementType

func (AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) Index

func (AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

func (o AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput() AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

func (AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutputWithContext

func (o AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataArrayOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataArrayOutput

type AviatrixAwsTgwVpnConnVpnTunnelDataInput

type AviatrixAwsTgwVpnConnVpnTunnelDataInput interface {
	pulumi.Input

	ToAviatrixAwsTgwVpnConnVpnTunnelDataOutput() AviatrixAwsTgwVpnConnVpnTunnelDataOutput
	ToAviatrixAwsTgwVpnConnVpnTunnelDataOutputWithContext(context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataOutput
}

AviatrixAwsTgwVpnConnVpnTunnelDataInput is an input type that accepts AviatrixAwsTgwVpnConnVpnTunnelDataArgs and AviatrixAwsTgwVpnConnVpnTunnelDataOutput values. You can construct a concrete instance of `AviatrixAwsTgwVpnConnVpnTunnelDataInput` via:

AviatrixAwsTgwVpnConnVpnTunnelDataArgs{...}

type AviatrixAwsTgwVpnConnVpnTunnelDataOutput

type AviatrixAwsTgwVpnConnVpnTunnelDataOutput struct{ *pulumi.OutputState }

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) ElementType

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) LastStatusChangeTime

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) RouteCount

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) Status

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) StatusMessage

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) TgwAsn

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutput

func (o AviatrixAwsTgwVpnConnVpnTunnelDataOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutput() AviatrixAwsTgwVpnConnVpnTunnelDataOutput

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutputWithContext

func (o AviatrixAwsTgwVpnConnVpnTunnelDataOutput) ToAviatrixAwsTgwVpnConnVpnTunnelDataOutputWithContext(ctx context.Context) AviatrixAwsTgwVpnConnVpnTunnelDataOutput

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) TunnelName

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) VpnInsideAddress

func (AviatrixAwsTgwVpnConnVpnTunnelDataOutput) VpnOutsideAddress

type AviatrixAzurePeer

type AviatrixAzurePeer struct {
	pulumi.CustomResourceState

	// Name of the Azure cloud account in the Aviatrix controller for VNet 1.
	AccountName1 pulumi.StringOutput `pulumi:"accountName1"`
	// Name of the Azure cloud account in the Aviatrix controller for VNet 2.
	AccountName2 pulumi.StringOutput `pulumi:"accountName2"`
	// List of VNet CIDR of vnet_name_resource_group1.
	VnetCidr1s pulumi.StringArrayOutput `pulumi:"vnetCidr1s"`
	// List of VNet CIDR of vnet_name_resource_group2.
	VnetCidr2s pulumi.StringArrayOutput `pulumi:"vnetCidr2s"`
	// Azure VNet 1's name. Example: "VNet_Name1:Resource_Group_Name1:GUID1".
	VnetNameResourceGroup1 pulumi.StringOutput `pulumi:"vnetNameResourceGroup1"`
	// Azure VNet 2's name. Example: "VNet_Name2:Resource_Group_Name2:GUID2".
	VnetNameResourceGroup2 pulumi.StringOutput `pulumi:"vnetNameResourceGroup2"`
	// Region of Azure VNet 1. Example: "East US 2".
	VnetReg1 pulumi.StringOutput `pulumi:"vnetReg1"`
	// Region of Azure VNet 2. Example: "East US 2".
	VnetReg2 pulumi.StringOutput `pulumi:"vnetReg2"`
}

The **aviatrix_azure_peer** resource allows the creation and management of the Aviatrix-created peerings between Azure VNets.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAzurePeer(ctx, "testAzurepeer", &aviatrix.AviatrixAzurePeerArgs{
			AccountName1:           pulumi.String("test1-account"),
			AccountName2:           pulumi.String("test2-account"),
			VnetNameResourceGroup1: pulumi.String("Foo_VNet1:Bar_RG1:GUID1"),
			VnetNameResourceGroup2: pulumi.String("Foo_VNet2:Bar_RG2:GUID2"),
			VnetReg1:               pulumi.String("Central US"),
			VnetReg2:               pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**azure_peer** can be imported using the `vnet_name_resource_group1` and `vnet_name_resource_group2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAzurePeer:AviatrixAzurePeer test vnet_name_resource_group1~vnet_name_resource_group2

```

func GetAviatrixAzurePeer

func GetAviatrixAzurePeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAzurePeerState, opts ...pulumi.ResourceOption) (*AviatrixAzurePeer, error)

GetAviatrixAzurePeer gets an existing AviatrixAzurePeer 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 NewAviatrixAzurePeer

func NewAviatrixAzurePeer(ctx *pulumi.Context,
	name string, args *AviatrixAzurePeerArgs, opts ...pulumi.ResourceOption) (*AviatrixAzurePeer, error)

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

func (*AviatrixAzurePeer) ElementType

func (*AviatrixAzurePeer) ElementType() reflect.Type

func (*AviatrixAzurePeer) ToAviatrixAzurePeerOutput

func (i *AviatrixAzurePeer) ToAviatrixAzurePeerOutput() AviatrixAzurePeerOutput

func (*AviatrixAzurePeer) ToAviatrixAzurePeerOutputWithContext

func (i *AviatrixAzurePeer) ToAviatrixAzurePeerOutputWithContext(ctx context.Context) AviatrixAzurePeerOutput

type AviatrixAzurePeerArgs

type AviatrixAzurePeerArgs struct {
	// Name of the Azure cloud account in the Aviatrix controller for VNet 1.
	AccountName1 pulumi.StringInput
	// Name of the Azure cloud account in the Aviatrix controller for VNet 2.
	AccountName2 pulumi.StringInput
	// Azure VNet 1's name. Example: "VNet_Name1:Resource_Group_Name1:GUID1".
	VnetNameResourceGroup1 pulumi.StringInput
	// Azure VNet 2's name. Example: "VNet_Name2:Resource_Group_Name2:GUID2".
	VnetNameResourceGroup2 pulumi.StringInput
	// Region of Azure VNet 1. Example: "East US 2".
	VnetReg1 pulumi.StringInput
	// Region of Azure VNet 2. Example: "East US 2".
	VnetReg2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixAzurePeer resource.

func (AviatrixAzurePeerArgs) ElementType

func (AviatrixAzurePeerArgs) ElementType() reflect.Type

type AviatrixAzurePeerArray

type AviatrixAzurePeerArray []AviatrixAzurePeerInput

func (AviatrixAzurePeerArray) ElementType

func (AviatrixAzurePeerArray) ElementType() reflect.Type

func (AviatrixAzurePeerArray) ToAviatrixAzurePeerArrayOutput

func (i AviatrixAzurePeerArray) ToAviatrixAzurePeerArrayOutput() AviatrixAzurePeerArrayOutput

func (AviatrixAzurePeerArray) ToAviatrixAzurePeerArrayOutputWithContext

func (i AviatrixAzurePeerArray) ToAviatrixAzurePeerArrayOutputWithContext(ctx context.Context) AviatrixAzurePeerArrayOutput

type AviatrixAzurePeerArrayInput

type AviatrixAzurePeerArrayInput interface {
	pulumi.Input

	ToAviatrixAzurePeerArrayOutput() AviatrixAzurePeerArrayOutput
	ToAviatrixAzurePeerArrayOutputWithContext(context.Context) AviatrixAzurePeerArrayOutput
}

AviatrixAzurePeerArrayInput is an input type that accepts AviatrixAzurePeerArray and AviatrixAzurePeerArrayOutput values. You can construct a concrete instance of `AviatrixAzurePeerArrayInput` via:

AviatrixAzurePeerArray{ AviatrixAzurePeerArgs{...} }

type AviatrixAzurePeerArrayOutput

type AviatrixAzurePeerArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAzurePeerArrayOutput) ElementType

func (AviatrixAzurePeerArrayOutput) Index

func (AviatrixAzurePeerArrayOutput) ToAviatrixAzurePeerArrayOutput

func (o AviatrixAzurePeerArrayOutput) ToAviatrixAzurePeerArrayOutput() AviatrixAzurePeerArrayOutput

func (AviatrixAzurePeerArrayOutput) ToAviatrixAzurePeerArrayOutputWithContext

func (o AviatrixAzurePeerArrayOutput) ToAviatrixAzurePeerArrayOutputWithContext(ctx context.Context) AviatrixAzurePeerArrayOutput

type AviatrixAzurePeerInput

type AviatrixAzurePeerInput interface {
	pulumi.Input

	ToAviatrixAzurePeerOutput() AviatrixAzurePeerOutput
	ToAviatrixAzurePeerOutputWithContext(ctx context.Context) AviatrixAzurePeerOutput
}

type AviatrixAzurePeerMap

type AviatrixAzurePeerMap map[string]AviatrixAzurePeerInput

func (AviatrixAzurePeerMap) ElementType

func (AviatrixAzurePeerMap) ElementType() reflect.Type

func (AviatrixAzurePeerMap) ToAviatrixAzurePeerMapOutput

func (i AviatrixAzurePeerMap) ToAviatrixAzurePeerMapOutput() AviatrixAzurePeerMapOutput

func (AviatrixAzurePeerMap) ToAviatrixAzurePeerMapOutputWithContext

func (i AviatrixAzurePeerMap) ToAviatrixAzurePeerMapOutputWithContext(ctx context.Context) AviatrixAzurePeerMapOutput

type AviatrixAzurePeerMapInput

type AviatrixAzurePeerMapInput interface {
	pulumi.Input

	ToAviatrixAzurePeerMapOutput() AviatrixAzurePeerMapOutput
	ToAviatrixAzurePeerMapOutputWithContext(context.Context) AviatrixAzurePeerMapOutput
}

AviatrixAzurePeerMapInput is an input type that accepts AviatrixAzurePeerMap and AviatrixAzurePeerMapOutput values. You can construct a concrete instance of `AviatrixAzurePeerMapInput` via:

AviatrixAzurePeerMap{ "key": AviatrixAzurePeerArgs{...} }

type AviatrixAzurePeerMapOutput

type AviatrixAzurePeerMapOutput struct{ *pulumi.OutputState }

func (AviatrixAzurePeerMapOutput) ElementType

func (AviatrixAzurePeerMapOutput) ElementType() reflect.Type

func (AviatrixAzurePeerMapOutput) MapIndex

func (AviatrixAzurePeerMapOutput) ToAviatrixAzurePeerMapOutput

func (o AviatrixAzurePeerMapOutput) ToAviatrixAzurePeerMapOutput() AviatrixAzurePeerMapOutput

func (AviatrixAzurePeerMapOutput) ToAviatrixAzurePeerMapOutputWithContext

func (o AviatrixAzurePeerMapOutput) ToAviatrixAzurePeerMapOutputWithContext(ctx context.Context) AviatrixAzurePeerMapOutput

type AviatrixAzurePeerOutput

type AviatrixAzurePeerOutput struct{ *pulumi.OutputState }

func (AviatrixAzurePeerOutput) AccountName1

func (o AviatrixAzurePeerOutput) AccountName1() pulumi.StringOutput

Name of the Azure cloud account in the Aviatrix controller for VNet 1.

func (AviatrixAzurePeerOutput) AccountName2

func (o AviatrixAzurePeerOutput) AccountName2() pulumi.StringOutput

Name of the Azure cloud account in the Aviatrix controller for VNet 2.

func (AviatrixAzurePeerOutput) ElementType

func (AviatrixAzurePeerOutput) ElementType() reflect.Type

func (AviatrixAzurePeerOutput) ToAviatrixAzurePeerOutput

func (o AviatrixAzurePeerOutput) ToAviatrixAzurePeerOutput() AviatrixAzurePeerOutput

func (AviatrixAzurePeerOutput) ToAviatrixAzurePeerOutputWithContext

func (o AviatrixAzurePeerOutput) ToAviatrixAzurePeerOutputWithContext(ctx context.Context) AviatrixAzurePeerOutput

func (AviatrixAzurePeerOutput) VnetCidr1s

List of VNet CIDR of vnet_name_resource_group1.

func (AviatrixAzurePeerOutput) VnetCidr2s

List of VNet CIDR of vnet_name_resource_group2.

func (AviatrixAzurePeerOutput) VnetNameResourceGroup1

func (o AviatrixAzurePeerOutput) VnetNameResourceGroup1() pulumi.StringOutput

Azure VNet 1's name. Example: "VNet_Name1:Resource_Group_Name1:GUID1".

func (AviatrixAzurePeerOutput) VnetNameResourceGroup2

func (o AviatrixAzurePeerOutput) VnetNameResourceGroup2() pulumi.StringOutput

Azure VNet 2's name. Example: "VNet_Name2:Resource_Group_Name2:GUID2".

func (AviatrixAzurePeerOutput) VnetReg1

Region of Azure VNet 1. Example: "East US 2".

func (AviatrixAzurePeerOutput) VnetReg2

Region of Azure VNet 2. Example: "East US 2".

type AviatrixAzurePeerState

type AviatrixAzurePeerState struct {
	// Name of the Azure cloud account in the Aviatrix controller for VNet 1.
	AccountName1 pulumi.StringPtrInput
	// Name of the Azure cloud account in the Aviatrix controller for VNet 2.
	AccountName2 pulumi.StringPtrInput
	// List of VNet CIDR of vnet_name_resource_group1.
	VnetCidr1s pulumi.StringArrayInput
	// List of VNet CIDR of vnet_name_resource_group2.
	VnetCidr2s pulumi.StringArrayInput
	// Azure VNet 1's name. Example: "VNet_Name1:Resource_Group_Name1:GUID1".
	VnetNameResourceGroup1 pulumi.StringPtrInput
	// Azure VNet 2's name. Example: "VNet_Name2:Resource_Group_Name2:GUID2".
	VnetNameResourceGroup2 pulumi.StringPtrInput
	// Region of Azure VNet 1. Example: "East US 2".
	VnetReg1 pulumi.StringPtrInput
	// Region of Azure VNet 2. Example: "East US 2".
	VnetReg2 pulumi.StringPtrInput
}

func (AviatrixAzurePeerState) ElementType

func (AviatrixAzurePeerState) ElementType() reflect.Type

type AviatrixAzureSpokeNativePeering

type AviatrixAzureSpokeNativePeering struct {
	pulumi.CustomResourceState

	// An Aviatrix account that corresponds to a subscription in Azure.
	SpokeAccountName pulumi.StringOutput `pulumi:"spokeAccountName"`
	// Spoke VNet region. Example: "West US".
	SpokeRegion pulumi.StringOutput `pulumi:"spokeRegion"`
	// Combination of the Spoke's VNet name, resource group and GUID. Example: "Foo_VNet:Bar_RG:GUID".
	SpokeVpcId pulumi.StringOutput `pulumi:"spokeVpcId"`
	// Name of an Transit FireNet-enabled Azure transit gateway.
	TransitGatewayName pulumi.StringOutput `pulumi:"transitGatewayName"`
}

The **aviatrix_azure_spoke_native_peering** resource allows the creation and management of Aviatrix-created Azure Spoke VNet attachments via Native Peering.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAzureSpokeNativePeering(ctx, "test", &aviatrix.AviatrixAzureSpokeNativePeeringArgs{
			SpokeAccountName:   pulumi.String("devops-azure"),
			SpokeRegion:        pulumi.String("West US"),
			SpokeVpcId:         pulumi.String("Foo_VNet:Bar_RG:GUID"),
			TransitGatewayName: pulumi.String("transit-gw-azure"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**azure_spoke_native_peering** can be imported using the `transit_gateway_name`, `spoke_account_name` and `spoke_vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAzureSpokeNativePeering:AviatrixAzureSpokeNativePeering test transit_gateway_name~spoke_account_name~spoke_vpc_id

```

func GetAviatrixAzureSpokeNativePeering

func GetAviatrixAzureSpokeNativePeering(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAzureSpokeNativePeeringState, opts ...pulumi.ResourceOption) (*AviatrixAzureSpokeNativePeering, error)

GetAviatrixAzureSpokeNativePeering gets an existing AviatrixAzureSpokeNativePeering 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 NewAviatrixAzureSpokeNativePeering

func NewAviatrixAzureSpokeNativePeering(ctx *pulumi.Context,
	name string, args *AviatrixAzureSpokeNativePeeringArgs, opts ...pulumi.ResourceOption) (*AviatrixAzureSpokeNativePeering, error)

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

func (*AviatrixAzureSpokeNativePeering) ElementType

func (*AviatrixAzureSpokeNativePeering) ToAviatrixAzureSpokeNativePeeringOutput

func (i *AviatrixAzureSpokeNativePeering) ToAviatrixAzureSpokeNativePeeringOutput() AviatrixAzureSpokeNativePeeringOutput

func (*AviatrixAzureSpokeNativePeering) ToAviatrixAzureSpokeNativePeeringOutputWithContext

func (i *AviatrixAzureSpokeNativePeering) ToAviatrixAzureSpokeNativePeeringOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringOutput

type AviatrixAzureSpokeNativePeeringArgs

type AviatrixAzureSpokeNativePeeringArgs struct {
	// An Aviatrix account that corresponds to a subscription in Azure.
	SpokeAccountName pulumi.StringInput
	// Spoke VNet region. Example: "West US".
	SpokeRegion pulumi.StringInput
	// Combination of the Spoke's VNet name, resource group and GUID. Example: "Foo_VNet:Bar_RG:GUID".
	SpokeVpcId pulumi.StringInput
	// Name of an Transit FireNet-enabled Azure transit gateway.
	TransitGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAzureSpokeNativePeering resource.

func (AviatrixAzureSpokeNativePeeringArgs) ElementType

type AviatrixAzureSpokeNativePeeringArray

type AviatrixAzureSpokeNativePeeringArray []AviatrixAzureSpokeNativePeeringInput

func (AviatrixAzureSpokeNativePeeringArray) ElementType

func (AviatrixAzureSpokeNativePeeringArray) ToAviatrixAzureSpokeNativePeeringArrayOutput

func (i AviatrixAzureSpokeNativePeeringArray) ToAviatrixAzureSpokeNativePeeringArrayOutput() AviatrixAzureSpokeNativePeeringArrayOutput

func (AviatrixAzureSpokeNativePeeringArray) ToAviatrixAzureSpokeNativePeeringArrayOutputWithContext

func (i AviatrixAzureSpokeNativePeeringArray) ToAviatrixAzureSpokeNativePeeringArrayOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringArrayOutput

type AviatrixAzureSpokeNativePeeringArrayInput

type AviatrixAzureSpokeNativePeeringArrayInput interface {
	pulumi.Input

	ToAviatrixAzureSpokeNativePeeringArrayOutput() AviatrixAzureSpokeNativePeeringArrayOutput
	ToAviatrixAzureSpokeNativePeeringArrayOutputWithContext(context.Context) AviatrixAzureSpokeNativePeeringArrayOutput
}

AviatrixAzureSpokeNativePeeringArrayInput is an input type that accepts AviatrixAzureSpokeNativePeeringArray and AviatrixAzureSpokeNativePeeringArrayOutput values. You can construct a concrete instance of `AviatrixAzureSpokeNativePeeringArrayInput` via:

AviatrixAzureSpokeNativePeeringArray{ AviatrixAzureSpokeNativePeeringArgs{...} }

type AviatrixAzureSpokeNativePeeringArrayOutput

type AviatrixAzureSpokeNativePeeringArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAzureSpokeNativePeeringArrayOutput) ElementType

func (AviatrixAzureSpokeNativePeeringArrayOutput) Index

func (AviatrixAzureSpokeNativePeeringArrayOutput) ToAviatrixAzureSpokeNativePeeringArrayOutput

func (o AviatrixAzureSpokeNativePeeringArrayOutput) ToAviatrixAzureSpokeNativePeeringArrayOutput() AviatrixAzureSpokeNativePeeringArrayOutput

func (AviatrixAzureSpokeNativePeeringArrayOutput) ToAviatrixAzureSpokeNativePeeringArrayOutputWithContext

func (o AviatrixAzureSpokeNativePeeringArrayOutput) ToAviatrixAzureSpokeNativePeeringArrayOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringArrayOutput

type AviatrixAzureSpokeNativePeeringInput

type AviatrixAzureSpokeNativePeeringInput interface {
	pulumi.Input

	ToAviatrixAzureSpokeNativePeeringOutput() AviatrixAzureSpokeNativePeeringOutput
	ToAviatrixAzureSpokeNativePeeringOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringOutput
}

type AviatrixAzureSpokeNativePeeringMap

type AviatrixAzureSpokeNativePeeringMap map[string]AviatrixAzureSpokeNativePeeringInput

func (AviatrixAzureSpokeNativePeeringMap) ElementType

func (AviatrixAzureSpokeNativePeeringMap) ToAviatrixAzureSpokeNativePeeringMapOutput

func (i AviatrixAzureSpokeNativePeeringMap) ToAviatrixAzureSpokeNativePeeringMapOutput() AviatrixAzureSpokeNativePeeringMapOutput

func (AviatrixAzureSpokeNativePeeringMap) ToAviatrixAzureSpokeNativePeeringMapOutputWithContext

func (i AviatrixAzureSpokeNativePeeringMap) ToAviatrixAzureSpokeNativePeeringMapOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringMapOutput

type AviatrixAzureSpokeNativePeeringMapInput

type AviatrixAzureSpokeNativePeeringMapInput interface {
	pulumi.Input

	ToAviatrixAzureSpokeNativePeeringMapOutput() AviatrixAzureSpokeNativePeeringMapOutput
	ToAviatrixAzureSpokeNativePeeringMapOutputWithContext(context.Context) AviatrixAzureSpokeNativePeeringMapOutput
}

AviatrixAzureSpokeNativePeeringMapInput is an input type that accepts AviatrixAzureSpokeNativePeeringMap and AviatrixAzureSpokeNativePeeringMapOutput values. You can construct a concrete instance of `AviatrixAzureSpokeNativePeeringMapInput` via:

AviatrixAzureSpokeNativePeeringMap{ "key": AviatrixAzureSpokeNativePeeringArgs{...} }

type AviatrixAzureSpokeNativePeeringMapOutput

type AviatrixAzureSpokeNativePeeringMapOutput struct{ *pulumi.OutputState }

func (AviatrixAzureSpokeNativePeeringMapOutput) ElementType

func (AviatrixAzureSpokeNativePeeringMapOutput) MapIndex

func (AviatrixAzureSpokeNativePeeringMapOutput) ToAviatrixAzureSpokeNativePeeringMapOutput

func (o AviatrixAzureSpokeNativePeeringMapOutput) ToAviatrixAzureSpokeNativePeeringMapOutput() AviatrixAzureSpokeNativePeeringMapOutput

func (AviatrixAzureSpokeNativePeeringMapOutput) ToAviatrixAzureSpokeNativePeeringMapOutputWithContext

func (o AviatrixAzureSpokeNativePeeringMapOutput) ToAviatrixAzureSpokeNativePeeringMapOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringMapOutput

type AviatrixAzureSpokeNativePeeringOutput

type AviatrixAzureSpokeNativePeeringOutput struct{ *pulumi.OutputState }

func (AviatrixAzureSpokeNativePeeringOutput) ElementType

func (AviatrixAzureSpokeNativePeeringOutput) SpokeAccountName

An Aviatrix account that corresponds to a subscription in Azure.

func (AviatrixAzureSpokeNativePeeringOutput) SpokeRegion

Spoke VNet region. Example: "West US".

func (AviatrixAzureSpokeNativePeeringOutput) SpokeVpcId

Combination of the Spoke's VNet name, resource group and GUID. Example: "Foo_VNet:Bar_RG:GUID".

func (AviatrixAzureSpokeNativePeeringOutput) ToAviatrixAzureSpokeNativePeeringOutput

func (o AviatrixAzureSpokeNativePeeringOutput) ToAviatrixAzureSpokeNativePeeringOutput() AviatrixAzureSpokeNativePeeringOutput

func (AviatrixAzureSpokeNativePeeringOutput) ToAviatrixAzureSpokeNativePeeringOutputWithContext

func (o AviatrixAzureSpokeNativePeeringOutput) ToAviatrixAzureSpokeNativePeeringOutputWithContext(ctx context.Context) AviatrixAzureSpokeNativePeeringOutput

func (AviatrixAzureSpokeNativePeeringOutput) TransitGatewayName

Name of an Transit FireNet-enabled Azure transit gateway.

type AviatrixAzureSpokeNativePeeringState

type AviatrixAzureSpokeNativePeeringState struct {
	// An Aviatrix account that corresponds to a subscription in Azure.
	SpokeAccountName pulumi.StringPtrInput
	// Spoke VNet region. Example: "West US".
	SpokeRegion pulumi.StringPtrInput
	// Combination of the Spoke's VNet name, resource group and GUID. Example: "Foo_VNet:Bar_RG:GUID".
	SpokeVpcId pulumi.StringPtrInput
	// Name of an Transit FireNet-enabled Azure transit gateway.
	TransitGatewayName pulumi.StringPtrInput
}

func (AviatrixAzureSpokeNativePeeringState) ElementType

type AviatrixAzureVngConn

type AviatrixAzureVngConn struct {
	pulumi.CustomResourceState

	// The status of the connection.
	Attached pulumi.BoolOutput `pulumi:"attached"`
	// Connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Primary Aviatrix transit gateway name.
	PrimaryGatewayName pulumi.StringOutput `pulumi:"primaryGatewayName"`
	// Name of Azure VNG.
	VngName pulumi.StringOutput `pulumi:"vngName"`
	// VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_azure_vng_conn** resource allows the creation and management of the connection between Aviatrix Transit Gateway and Azure VNG.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixAzureVngConn(ctx, "test", &aviatrix.AviatrixAzureVngConnArgs{
			ConnectionName:     pulumi.String("connection"),
			PrimaryGatewayName: pulumi.String("primary-gateway"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_azure_vng_conn** can be imported using the `connection_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixAzureVngConn:AviatrixAzureVngConn test connection

```

func GetAviatrixAzureVngConn

func GetAviatrixAzureVngConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixAzureVngConnState, opts ...pulumi.ResourceOption) (*AviatrixAzureVngConn, error)

GetAviatrixAzureVngConn gets an existing AviatrixAzureVngConn 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 NewAviatrixAzureVngConn

func NewAviatrixAzureVngConn(ctx *pulumi.Context,
	name string, args *AviatrixAzureVngConnArgs, opts ...pulumi.ResourceOption) (*AviatrixAzureVngConn, error)

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

func (*AviatrixAzureVngConn) ElementType

func (*AviatrixAzureVngConn) ElementType() reflect.Type

func (*AviatrixAzureVngConn) ToAviatrixAzureVngConnOutput

func (i *AviatrixAzureVngConn) ToAviatrixAzureVngConnOutput() AviatrixAzureVngConnOutput

func (*AviatrixAzureVngConn) ToAviatrixAzureVngConnOutputWithContext

func (i *AviatrixAzureVngConn) ToAviatrixAzureVngConnOutputWithContext(ctx context.Context) AviatrixAzureVngConnOutput

type AviatrixAzureVngConnArgs

type AviatrixAzureVngConnArgs struct {
	// Connection name.
	ConnectionName pulumi.StringInput
	// Primary Aviatrix transit gateway name.
	PrimaryGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixAzureVngConn resource.

func (AviatrixAzureVngConnArgs) ElementType

func (AviatrixAzureVngConnArgs) ElementType() reflect.Type

type AviatrixAzureVngConnArray

type AviatrixAzureVngConnArray []AviatrixAzureVngConnInput

func (AviatrixAzureVngConnArray) ElementType

func (AviatrixAzureVngConnArray) ElementType() reflect.Type

func (AviatrixAzureVngConnArray) ToAviatrixAzureVngConnArrayOutput

func (i AviatrixAzureVngConnArray) ToAviatrixAzureVngConnArrayOutput() AviatrixAzureVngConnArrayOutput

func (AviatrixAzureVngConnArray) ToAviatrixAzureVngConnArrayOutputWithContext

func (i AviatrixAzureVngConnArray) ToAviatrixAzureVngConnArrayOutputWithContext(ctx context.Context) AviatrixAzureVngConnArrayOutput

type AviatrixAzureVngConnArrayInput

type AviatrixAzureVngConnArrayInput interface {
	pulumi.Input

	ToAviatrixAzureVngConnArrayOutput() AviatrixAzureVngConnArrayOutput
	ToAviatrixAzureVngConnArrayOutputWithContext(context.Context) AviatrixAzureVngConnArrayOutput
}

AviatrixAzureVngConnArrayInput is an input type that accepts AviatrixAzureVngConnArray and AviatrixAzureVngConnArrayOutput values. You can construct a concrete instance of `AviatrixAzureVngConnArrayInput` via:

AviatrixAzureVngConnArray{ AviatrixAzureVngConnArgs{...} }

type AviatrixAzureVngConnArrayOutput

type AviatrixAzureVngConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixAzureVngConnArrayOutput) ElementType

func (AviatrixAzureVngConnArrayOutput) Index

func (AviatrixAzureVngConnArrayOutput) ToAviatrixAzureVngConnArrayOutput

func (o AviatrixAzureVngConnArrayOutput) ToAviatrixAzureVngConnArrayOutput() AviatrixAzureVngConnArrayOutput

func (AviatrixAzureVngConnArrayOutput) ToAviatrixAzureVngConnArrayOutputWithContext

func (o AviatrixAzureVngConnArrayOutput) ToAviatrixAzureVngConnArrayOutputWithContext(ctx context.Context) AviatrixAzureVngConnArrayOutput

type AviatrixAzureVngConnInput

type AviatrixAzureVngConnInput interface {
	pulumi.Input

	ToAviatrixAzureVngConnOutput() AviatrixAzureVngConnOutput
	ToAviatrixAzureVngConnOutputWithContext(ctx context.Context) AviatrixAzureVngConnOutput
}

type AviatrixAzureVngConnMap

type AviatrixAzureVngConnMap map[string]AviatrixAzureVngConnInput

func (AviatrixAzureVngConnMap) ElementType

func (AviatrixAzureVngConnMap) ElementType() reflect.Type

func (AviatrixAzureVngConnMap) ToAviatrixAzureVngConnMapOutput

func (i AviatrixAzureVngConnMap) ToAviatrixAzureVngConnMapOutput() AviatrixAzureVngConnMapOutput

func (AviatrixAzureVngConnMap) ToAviatrixAzureVngConnMapOutputWithContext

func (i AviatrixAzureVngConnMap) ToAviatrixAzureVngConnMapOutputWithContext(ctx context.Context) AviatrixAzureVngConnMapOutput

type AviatrixAzureVngConnMapInput

type AviatrixAzureVngConnMapInput interface {
	pulumi.Input

	ToAviatrixAzureVngConnMapOutput() AviatrixAzureVngConnMapOutput
	ToAviatrixAzureVngConnMapOutputWithContext(context.Context) AviatrixAzureVngConnMapOutput
}

AviatrixAzureVngConnMapInput is an input type that accepts AviatrixAzureVngConnMap and AviatrixAzureVngConnMapOutput values. You can construct a concrete instance of `AviatrixAzureVngConnMapInput` via:

AviatrixAzureVngConnMap{ "key": AviatrixAzureVngConnArgs{...} }

type AviatrixAzureVngConnMapOutput

type AviatrixAzureVngConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixAzureVngConnMapOutput) ElementType

func (AviatrixAzureVngConnMapOutput) MapIndex

func (AviatrixAzureVngConnMapOutput) ToAviatrixAzureVngConnMapOutput

func (o AviatrixAzureVngConnMapOutput) ToAviatrixAzureVngConnMapOutput() AviatrixAzureVngConnMapOutput

func (AviatrixAzureVngConnMapOutput) ToAviatrixAzureVngConnMapOutputWithContext

func (o AviatrixAzureVngConnMapOutput) ToAviatrixAzureVngConnMapOutputWithContext(ctx context.Context) AviatrixAzureVngConnMapOutput

type AviatrixAzureVngConnOutput

type AviatrixAzureVngConnOutput struct{ *pulumi.OutputState }

func (AviatrixAzureVngConnOutput) Attached

The status of the connection.

func (AviatrixAzureVngConnOutput) ConnectionName

func (o AviatrixAzureVngConnOutput) ConnectionName() pulumi.StringOutput

Connection name.

func (AviatrixAzureVngConnOutput) ElementType

func (AviatrixAzureVngConnOutput) ElementType() reflect.Type

func (AviatrixAzureVngConnOutput) PrimaryGatewayName

func (o AviatrixAzureVngConnOutput) PrimaryGatewayName() pulumi.StringOutput

Primary Aviatrix transit gateway name.

func (AviatrixAzureVngConnOutput) ToAviatrixAzureVngConnOutput

func (o AviatrixAzureVngConnOutput) ToAviatrixAzureVngConnOutput() AviatrixAzureVngConnOutput

func (AviatrixAzureVngConnOutput) ToAviatrixAzureVngConnOutputWithContext

func (o AviatrixAzureVngConnOutput) ToAviatrixAzureVngConnOutputWithContext(ctx context.Context) AviatrixAzureVngConnOutput

func (AviatrixAzureVngConnOutput) VngName

Name of Azure VNG.

func (AviatrixAzureVngConnOutput) VpcId

VPC ID.

type AviatrixAzureVngConnState

type AviatrixAzureVngConnState struct {
	// The status of the connection.
	Attached pulumi.BoolPtrInput
	// Connection name.
	ConnectionName pulumi.StringPtrInput
	// Primary Aviatrix transit gateway name.
	PrimaryGatewayName pulumi.StringPtrInput
	// Name of Azure VNG.
	VngName pulumi.StringPtrInput
	// VPC ID.
	VpcId pulumi.StringPtrInput
}

func (AviatrixAzureVngConnState) ElementType

func (AviatrixAzureVngConnState) ElementType() reflect.Type

type AviatrixCloudnRegistration

type AviatrixCloudnRegistration struct {
	pulumi.CustomResourceState

	// Aviatrix CloudN's public or private IP. Type: String.
	Address pulumi.StringOutput `pulumi:"address"`
	// BGP AS Number to assign to the Transit Gateway. Type: String.
	LocalAsNumber pulumi.StringOutput `pulumi:"localAsNumber"`
	// Gateway name to assign to the CloudN device. Type: String.
	Name pulumi.StringOutput `pulumi:"name"`
	// Aviatrix account password corresponding to above username. Type: String.
	Password pulumi.StringOutput `pulumi:"password"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Aviatrix account username which will be used to log in to Aviatrix CloudN. Type: String.
	Username pulumi.StringOutput `pulumi:"username"`
}

The **aviatrix_cloudn_registration** resource allows the registration and deregistration of Aviatrix CloudN as a Gateway. This resource is available as of provider version R2.21+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixCloudnRegistration(ctx, "testCloudnRegistration", &aviatrix.AviatrixCloudnRegistrationArgs{
			Address:       pulumi.String("10.210.38.100"),
			LocalAsNumber: pulumi.String("65000"),
			Password:      pulumi.String("password"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65000"),
				pulumi.String("65000"),
			},
			Username: pulumi.String("admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**cloudn_registration** can be imported using the `name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixCloudnRegistration:AviatrixCloudnRegistration test_cloudn_registration name

```

func GetAviatrixCloudnRegistration

func GetAviatrixCloudnRegistration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixCloudnRegistrationState, opts ...pulumi.ResourceOption) (*AviatrixCloudnRegistration, error)

GetAviatrixCloudnRegistration gets an existing AviatrixCloudnRegistration 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 NewAviatrixCloudnRegistration

func NewAviatrixCloudnRegistration(ctx *pulumi.Context,
	name string, args *AviatrixCloudnRegistrationArgs, opts ...pulumi.ResourceOption) (*AviatrixCloudnRegistration, error)

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

func (*AviatrixCloudnRegistration) ElementType

func (*AviatrixCloudnRegistration) ElementType() reflect.Type

func (*AviatrixCloudnRegistration) ToAviatrixCloudnRegistrationOutput

func (i *AviatrixCloudnRegistration) ToAviatrixCloudnRegistrationOutput() AviatrixCloudnRegistrationOutput

func (*AviatrixCloudnRegistration) ToAviatrixCloudnRegistrationOutputWithContext

func (i *AviatrixCloudnRegistration) ToAviatrixCloudnRegistrationOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationOutput

type AviatrixCloudnRegistrationArgs

type AviatrixCloudnRegistrationArgs struct {
	// Aviatrix CloudN's public or private IP. Type: String.
	Address pulumi.StringInput
	// BGP AS Number to assign to the Transit Gateway. Type: String.
	LocalAsNumber pulumi.StringPtrInput
	// Gateway name to assign to the CloudN device. Type: String.
	Name pulumi.StringPtrInput
	// Aviatrix account password corresponding to above username. Type: String.
	Password pulumi.StringInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayInput
	// Aviatrix account username which will be used to log in to Aviatrix CloudN. Type: String.
	Username pulumi.StringInput
}

The set of arguments for constructing a AviatrixCloudnRegistration resource.

func (AviatrixCloudnRegistrationArgs) ElementType

type AviatrixCloudnRegistrationArray

type AviatrixCloudnRegistrationArray []AviatrixCloudnRegistrationInput

func (AviatrixCloudnRegistrationArray) ElementType

func (AviatrixCloudnRegistrationArray) ToAviatrixCloudnRegistrationArrayOutput

func (i AviatrixCloudnRegistrationArray) ToAviatrixCloudnRegistrationArrayOutput() AviatrixCloudnRegistrationArrayOutput

func (AviatrixCloudnRegistrationArray) ToAviatrixCloudnRegistrationArrayOutputWithContext

func (i AviatrixCloudnRegistrationArray) ToAviatrixCloudnRegistrationArrayOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationArrayOutput

type AviatrixCloudnRegistrationArrayInput

type AviatrixCloudnRegistrationArrayInput interface {
	pulumi.Input

	ToAviatrixCloudnRegistrationArrayOutput() AviatrixCloudnRegistrationArrayOutput
	ToAviatrixCloudnRegistrationArrayOutputWithContext(context.Context) AviatrixCloudnRegistrationArrayOutput
}

AviatrixCloudnRegistrationArrayInput is an input type that accepts AviatrixCloudnRegistrationArray and AviatrixCloudnRegistrationArrayOutput values. You can construct a concrete instance of `AviatrixCloudnRegistrationArrayInput` via:

AviatrixCloudnRegistrationArray{ AviatrixCloudnRegistrationArgs{...} }

type AviatrixCloudnRegistrationArrayOutput

type AviatrixCloudnRegistrationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnRegistrationArrayOutput) ElementType

func (AviatrixCloudnRegistrationArrayOutput) Index

func (AviatrixCloudnRegistrationArrayOutput) ToAviatrixCloudnRegistrationArrayOutput

func (o AviatrixCloudnRegistrationArrayOutput) ToAviatrixCloudnRegistrationArrayOutput() AviatrixCloudnRegistrationArrayOutput

func (AviatrixCloudnRegistrationArrayOutput) ToAviatrixCloudnRegistrationArrayOutputWithContext

func (o AviatrixCloudnRegistrationArrayOutput) ToAviatrixCloudnRegistrationArrayOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationArrayOutput

type AviatrixCloudnRegistrationInput

type AviatrixCloudnRegistrationInput interface {
	pulumi.Input

	ToAviatrixCloudnRegistrationOutput() AviatrixCloudnRegistrationOutput
	ToAviatrixCloudnRegistrationOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationOutput
}

type AviatrixCloudnRegistrationMap

type AviatrixCloudnRegistrationMap map[string]AviatrixCloudnRegistrationInput

func (AviatrixCloudnRegistrationMap) ElementType

func (AviatrixCloudnRegistrationMap) ToAviatrixCloudnRegistrationMapOutput

func (i AviatrixCloudnRegistrationMap) ToAviatrixCloudnRegistrationMapOutput() AviatrixCloudnRegistrationMapOutput

func (AviatrixCloudnRegistrationMap) ToAviatrixCloudnRegistrationMapOutputWithContext

func (i AviatrixCloudnRegistrationMap) ToAviatrixCloudnRegistrationMapOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationMapOutput

type AviatrixCloudnRegistrationMapInput

type AviatrixCloudnRegistrationMapInput interface {
	pulumi.Input

	ToAviatrixCloudnRegistrationMapOutput() AviatrixCloudnRegistrationMapOutput
	ToAviatrixCloudnRegistrationMapOutputWithContext(context.Context) AviatrixCloudnRegistrationMapOutput
}

AviatrixCloudnRegistrationMapInput is an input type that accepts AviatrixCloudnRegistrationMap and AviatrixCloudnRegistrationMapOutput values. You can construct a concrete instance of `AviatrixCloudnRegistrationMapInput` via:

AviatrixCloudnRegistrationMap{ "key": AviatrixCloudnRegistrationArgs{...} }

type AviatrixCloudnRegistrationMapOutput

type AviatrixCloudnRegistrationMapOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnRegistrationMapOutput) ElementType

func (AviatrixCloudnRegistrationMapOutput) MapIndex

func (AviatrixCloudnRegistrationMapOutput) ToAviatrixCloudnRegistrationMapOutput

func (o AviatrixCloudnRegistrationMapOutput) ToAviatrixCloudnRegistrationMapOutput() AviatrixCloudnRegistrationMapOutput

func (AviatrixCloudnRegistrationMapOutput) ToAviatrixCloudnRegistrationMapOutputWithContext

func (o AviatrixCloudnRegistrationMapOutput) ToAviatrixCloudnRegistrationMapOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationMapOutput

type AviatrixCloudnRegistrationOutput

type AviatrixCloudnRegistrationOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnRegistrationOutput) Address

Aviatrix CloudN's public or private IP. Type: String.

func (AviatrixCloudnRegistrationOutput) ElementType

func (AviatrixCloudnRegistrationOutput) LocalAsNumber

BGP AS Number to assign to the Transit Gateway. Type: String.

func (AviatrixCloudnRegistrationOutput) Name

Gateway name to assign to the CloudN device. Type: String.

func (AviatrixCloudnRegistrationOutput) Password

Aviatrix account password corresponding to above username. Type: String.

func (AviatrixCloudnRegistrationOutput) PrependAsPaths

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.

func (AviatrixCloudnRegistrationOutput) ToAviatrixCloudnRegistrationOutput

func (o AviatrixCloudnRegistrationOutput) ToAviatrixCloudnRegistrationOutput() AviatrixCloudnRegistrationOutput

func (AviatrixCloudnRegistrationOutput) ToAviatrixCloudnRegistrationOutputWithContext

func (o AviatrixCloudnRegistrationOutput) ToAviatrixCloudnRegistrationOutputWithContext(ctx context.Context) AviatrixCloudnRegistrationOutput

func (AviatrixCloudnRegistrationOutput) Username

Aviatrix account username which will be used to log in to Aviatrix CloudN. Type: String.

type AviatrixCloudnRegistrationState

type AviatrixCloudnRegistrationState struct {
	// Aviatrix CloudN's public or private IP. Type: String.
	Address pulumi.StringPtrInput
	// BGP AS Number to assign to the Transit Gateway. Type: String.
	LocalAsNumber pulumi.StringPtrInput
	// Gateway name to assign to the CloudN device. Type: String.
	Name pulumi.StringPtrInput
	// Aviatrix account password corresponding to above username. Type: String.
	Password pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayInput
	// Aviatrix account username which will be used to log in to Aviatrix CloudN. Type: String.
	Username pulumi.StringPtrInput
}

func (AviatrixCloudnRegistrationState) ElementType

type AviatrixCloudnTransitGatewayAttachment

type AviatrixCloudnTransitGatewayAttachment struct {
	pulumi.CustomResourceState

	// CloudN BGP AS Number. Type: String.
	CloudnBgpAsn pulumi.StringOutput `pulumi:"cloudnBgpAsn"`
	// CloudN LAN Interface Neighbor's AS Number. Type: String.
	CloudnLanInterfaceNeighborBgpAsn pulumi.StringOutput `pulumi:"cloudnLanInterfaceNeighborBgpAsn"`
	// CloudN LAN Interface Neighbor's IP Address. Type: String.
	CloudnLanInterfaceNeighborIp pulumi.StringOutput `pulumi:"cloudnLanInterfaceNeighborIp"`
	// Connection Name. Type: String.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// CloudN device name. Type: String.
	DeviceName pulumi.StringOutput `pulumi:"deviceName"`
	// Enable Jumbo Frame support for the connection. Type: Boolean. Default: false.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Enable connection over private network. Type: Boolean. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrOutput `pulumi:"enableOverPrivateNetwork"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires transitGatewayBgpAsn to be set. Type: List. Available as of provider version R2.21.0+.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Transit Gateway BGP AS Number. Type: String.
	TransitGatewayBgpAsn pulumi.StringOutput `pulumi:"transitGatewayBgpAsn"`
	// Transit Gateway Name. Type: String.
	TransitGatewayName pulumi.StringOutput `pulumi:"transitGatewayName"`
}

The **aviatrix_cloudn_transit_gateway_attachment** resource allows the creation and management of CloudN Transit Gateway Attachments. This resource is available as of provider version R2.19+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixCloudnTransitGatewayAttachment(ctx, "test", &aviatrix.AviatrixCloudnTransitGatewayAttachmentArgs{
			DeviceName:                       pulumi.Any(aviatrix_device_registration.Test_device.Name),
			TransitGatewayName:               pulumi.Any(aviatrix_transit_gateway.Aws_transit.Gw_name),
			ConnectionName:                   pulumi.String("cloudn-transit-attachment-test"),
			TransitGatewayBgpAsn:             pulumi.String("65000"),
			CloudnBgpAsn:                     pulumi.String("65046"),
			CloudnLanInterfaceNeighborIp:     pulumi.String("10.210.38.100"),
			CloudnLanInterfaceNeighborBgpAsn: pulumi.String("65219"),
			EnableOverPrivateNetwork:         pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_cloudn_transit_gateway_attachment** can be imported using the `connection_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixCloudnTransitGatewayAttachment:AviatrixCloudnTransitGatewayAttachment test connection_name

```

func GetAviatrixCloudnTransitGatewayAttachment

func GetAviatrixCloudnTransitGatewayAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixCloudnTransitGatewayAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixCloudnTransitGatewayAttachment, error)

GetAviatrixCloudnTransitGatewayAttachment gets an existing AviatrixCloudnTransitGatewayAttachment 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 NewAviatrixCloudnTransitGatewayAttachment

func NewAviatrixCloudnTransitGatewayAttachment(ctx *pulumi.Context,
	name string, args *AviatrixCloudnTransitGatewayAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixCloudnTransitGatewayAttachment, error)

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

func (*AviatrixCloudnTransitGatewayAttachment) ElementType

func (*AviatrixCloudnTransitGatewayAttachment) ToAviatrixCloudnTransitGatewayAttachmentOutput

func (i *AviatrixCloudnTransitGatewayAttachment) ToAviatrixCloudnTransitGatewayAttachmentOutput() AviatrixCloudnTransitGatewayAttachmentOutput

func (*AviatrixCloudnTransitGatewayAttachment) ToAviatrixCloudnTransitGatewayAttachmentOutputWithContext

func (i *AviatrixCloudnTransitGatewayAttachment) ToAviatrixCloudnTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentOutput

type AviatrixCloudnTransitGatewayAttachmentArgs

type AviatrixCloudnTransitGatewayAttachmentArgs struct {
	// CloudN BGP AS Number. Type: String.
	CloudnBgpAsn pulumi.StringInput
	// CloudN LAN Interface Neighbor's AS Number. Type: String.
	CloudnLanInterfaceNeighborBgpAsn pulumi.StringInput
	// CloudN LAN Interface Neighbor's IP Address. Type: String.
	CloudnLanInterfaceNeighborIp pulumi.StringInput
	// Connection Name. Type: String.
	ConnectionName pulumi.StringInput
	// CloudN device name. Type: String.
	DeviceName pulumi.StringInput
	// Enable Jumbo Frame support for the connection. Type: Boolean. Default: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable connection over private network. Type: Boolean. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires transitGatewayBgpAsn to be set. Type: List. Available as of provider version R2.21.0+.
	PrependAsPaths pulumi.StringArrayInput
	// Transit Gateway BGP AS Number. Type: String.
	TransitGatewayBgpAsn pulumi.StringInput
	// Transit Gateway Name. Type: String.
	TransitGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixCloudnTransitGatewayAttachment resource.

func (AviatrixCloudnTransitGatewayAttachmentArgs) ElementType

type AviatrixCloudnTransitGatewayAttachmentArray

type AviatrixCloudnTransitGatewayAttachmentArray []AviatrixCloudnTransitGatewayAttachmentInput

func (AviatrixCloudnTransitGatewayAttachmentArray) ElementType

func (AviatrixCloudnTransitGatewayAttachmentArray) ToAviatrixCloudnTransitGatewayAttachmentArrayOutput

func (i AviatrixCloudnTransitGatewayAttachmentArray) ToAviatrixCloudnTransitGatewayAttachmentArrayOutput() AviatrixCloudnTransitGatewayAttachmentArrayOutput

func (AviatrixCloudnTransitGatewayAttachmentArray) ToAviatrixCloudnTransitGatewayAttachmentArrayOutputWithContext

func (i AviatrixCloudnTransitGatewayAttachmentArray) ToAviatrixCloudnTransitGatewayAttachmentArrayOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentArrayOutput

type AviatrixCloudnTransitGatewayAttachmentArrayInput

type AviatrixCloudnTransitGatewayAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixCloudnTransitGatewayAttachmentArrayOutput() AviatrixCloudnTransitGatewayAttachmentArrayOutput
	ToAviatrixCloudnTransitGatewayAttachmentArrayOutputWithContext(context.Context) AviatrixCloudnTransitGatewayAttachmentArrayOutput
}

AviatrixCloudnTransitGatewayAttachmentArrayInput is an input type that accepts AviatrixCloudnTransitGatewayAttachmentArray and AviatrixCloudnTransitGatewayAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixCloudnTransitGatewayAttachmentArrayInput` via:

AviatrixCloudnTransitGatewayAttachmentArray{ AviatrixCloudnTransitGatewayAttachmentArgs{...} }

type AviatrixCloudnTransitGatewayAttachmentArrayOutput

type AviatrixCloudnTransitGatewayAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnTransitGatewayAttachmentArrayOutput) ElementType

func (AviatrixCloudnTransitGatewayAttachmentArrayOutput) Index

func (AviatrixCloudnTransitGatewayAttachmentArrayOutput) ToAviatrixCloudnTransitGatewayAttachmentArrayOutput

func (o AviatrixCloudnTransitGatewayAttachmentArrayOutput) ToAviatrixCloudnTransitGatewayAttachmentArrayOutput() AviatrixCloudnTransitGatewayAttachmentArrayOutput

func (AviatrixCloudnTransitGatewayAttachmentArrayOutput) ToAviatrixCloudnTransitGatewayAttachmentArrayOutputWithContext

func (o AviatrixCloudnTransitGatewayAttachmentArrayOutput) ToAviatrixCloudnTransitGatewayAttachmentArrayOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentArrayOutput

type AviatrixCloudnTransitGatewayAttachmentInput

type AviatrixCloudnTransitGatewayAttachmentInput interface {
	pulumi.Input

	ToAviatrixCloudnTransitGatewayAttachmentOutput() AviatrixCloudnTransitGatewayAttachmentOutput
	ToAviatrixCloudnTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentOutput
}

type AviatrixCloudnTransitGatewayAttachmentMap

type AviatrixCloudnTransitGatewayAttachmentMap map[string]AviatrixCloudnTransitGatewayAttachmentInput

func (AviatrixCloudnTransitGatewayAttachmentMap) ElementType

func (AviatrixCloudnTransitGatewayAttachmentMap) ToAviatrixCloudnTransitGatewayAttachmentMapOutput

func (i AviatrixCloudnTransitGatewayAttachmentMap) ToAviatrixCloudnTransitGatewayAttachmentMapOutput() AviatrixCloudnTransitGatewayAttachmentMapOutput

func (AviatrixCloudnTransitGatewayAttachmentMap) ToAviatrixCloudnTransitGatewayAttachmentMapOutputWithContext

func (i AviatrixCloudnTransitGatewayAttachmentMap) ToAviatrixCloudnTransitGatewayAttachmentMapOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentMapOutput

type AviatrixCloudnTransitGatewayAttachmentMapInput

type AviatrixCloudnTransitGatewayAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixCloudnTransitGatewayAttachmentMapOutput() AviatrixCloudnTransitGatewayAttachmentMapOutput
	ToAviatrixCloudnTransitGatewayAttachmentMapOutputWithContext(context.Context) AviatrixCloudnTransitGatewayAttachmentMapOutput
}

AviatrixCloudnTransitGatewayAttachmentMapInput is an input type that accepts AviatrixCloudnTransitGatewayAttachmentMap and AviatrixCloudnTransitGatewayAttachmentMapOutput values. You can construct a concrete instance of `AviatrixCloudnTransitGatewayAttachmentMapInput` via:

AviatrixCloudnTransitGatewayAttachmentMap{ "key": AviatrixCloudnTransitGatewayAttachmentArgs{...} }

type AviatrixCloudnTransitGatewayAttachmentMapOutput

type AviatrixCloudnTransitGatewayAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnTransitGatewayAttachmentMapOutput) ElementType

func (AviatrixCloudnTransitGatewayAttachmentMapOutput) MapIndex

func (AviatrixCloudnTransitGatewayAttachmentMapOutput) ToAviatrixCloudnTransitGatewayAttachmentMapOutput

func (o AviatrixCloudnTransitGatewayAttachmentMapOutput) ToAviatrixCloudnTransitGatewayAttachmentMapOutput() AviatrixCloudnTransitGatewayAttachmentMapOutput

func (AviatrixCloudnTransitGatewayAttachmentMapOutput) ToAviatrixCloudnTransitGatewayAttachmentMapOutputWithContext

func (o AviatrixCloudnTransitGatewayAttachmentMapOutput) ToAviatrixCloudnTransitGatewayAttachmentMapOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentMapOutput

type AviatrixCloudnTransitGatewayAttachmentOutput

type AviatrixCloudnTransitGatewayAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixCloudnTransitGatewayAttachmentOutput) CloudnBgpAsn

CloudN BGP AS Number. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) CloudnLanInterfaceNeighborBgpAsn

func (o AviatrixCloudnTransitGatewayAttachmentOutput) CloudnLanInterfaceNeighborBgpAsn() pulumi.StringOutput

CloudN LAN Interface Neighbor's AS Number. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) CloudnLanInterfaceNeighborIp

func (o AviatrixCloudnTransitGatewayAttachmentOutput) CloudnLanInterfaceNeighborIp() pulumi.StringOutput

CloudN LAN Interface Neighbor's IP Address. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) ConnectionName

Connection Name. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) DeviceName

CloudN device name. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) ElementType

func (AviatrixCloudnTransitGatewayAttachmentOutput) EnableJumboFrame

Enable Jumbo Frame support for the connection. Type: Boolean. Default: false.

func (AviatrixCloudnTransitGatewayAttachmentOutput) EnableOverPrivateNetwork

Enable connection over private network. Type: Boolean. Default: true.

func (AviatrixCloudnTransitGatewayAttachmentOutput) PrependAsPaths

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires transitGatewayBgpAsn to be set. Type: List. Available as of provider version R2.21.0+.

func (AviatrixCloudnTransitGatewayAttachmentOutput) ToAviatrixCloudnTransitGatewayAttachmentOutput

func (o AviatrixCloudnTransitGatewayAttachmentOutput) ToAviatrixCloudnTransitGatewayAttachmentOutput() AviatrixCloudnTransitGatewayAttachmentOutput

func (AviatrixCloudnTransitGatewayAttachmentOutput) ToAviatrixCloudnTransitGatewayAttachmentOutputWithContext

func (o AviatrixCloudnTransitGatewayAttachmentOutput) ToAviatrixCloudnTransitGatewayAttachmentOutputWithContext(ctx context.Context) AviatrixCloudnTransitGatewayAttachmentOutput

func (AviatrixCloudnTransitGatewayAttachmentOutput) TransitGatewayBgpAsn

Transit Gateway BGP AS Number. Type: String.

func (AviatrixCloudnTransitGatewayAttachmentOutput) TransitGatewayName

Transit Gateway Name. Type: String.

type AviatrixCloudnTransitGatewayAttachmentState

type AviatrixCloudnTransitGatewayAttachmentState struct {
	// CloudN BGP AS Number. Type: String.
	CloudnBgpAsn pulumi.StringPtrInput
	// CloudN LAN Interface Neighbor's AS Number. Type: String.
	CloudnLanInterfaceNeighborBgpAsn pulumi.StringPtrInput
	// CloudN LAN Interface Neighbor's IP Address. Type: String.
	CloudnLanInterfaceNeighborIp pulumi.StringPtrInput
	// Connection Name. Type: String.
	ConnectionName pulumi.StringPtrInput
	// CloudN device name. Type: String.
	DeviceName pulumi.StringPtrInput
	// Enable Jumbo Frame support for the connection. Type: Boolean. Default: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable connection over private network. Type: Boolean. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires transitGatewayBgpAsn to be set. Type: List. Available as of provider version R2.21.0+.
	PrependAsPaths pulumi.StringArrayInput
	// Transit Gateway BGP AS Number. Type: String.
	TransitGatewayBgpAsn pulumi.StringPtrInput
	// Transit Gateway Name. Type: String.
	TransitGatewayName pulumi.StringPtrInput
}

func (AviatrixCloudnTransitGatewayAttachmentState) ElementType

type AviatrixCloudwatchAgent

type AviatrixCloudwatchAgent struct {
	pulumi.CustomResourceState

	// CloudWatch role ARN.
	CloudwatchRoleArn pulumi.StringOutput `pulumi:"cloudwatchRoleArn"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Log group name. "AVIATRIX-CLOUDWATCH-LOG" by default.
	LogGroupName pulumi.StringPtrOutput `pulumi:"logGroupName"`
	// Name of AWS region.
	Region pulumi.StringOutput `pulumi:"region"`
	// The status of cloudwatch agent.
	Status pulumi.StringOutput `pulumi:"status"`
}

The **aviatrix_cloudwatch_agent** resource allows the enabling and disabling of cloudwatch agent.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixCloudwatchAgent(ctx, "testCloudwatchAgent", &aviatrix.AviatrixCloudwatchAgentArgs{
			CloudwatchRoleArn: pulumi.String("arn:aws:iam::469550033836:role/aviatrix-role-cloudwatch"),
			ExcludedGateways: pulumi.StringArray{
				pulumi.String("a"),
				pulumi.String("b"),
			},
			Region: pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**cloudwatch_agent** can be imported using "cloudwatch_agent", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixCloudwatchAgent:AviatrixCloudwatchAgent test cloudwatch_agent

```

func GetAviatrixCloudwatchAgent

func GetAviatrixCloudwatchAgent(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixCloudwatchAgentState, opts ...pulumi.ResourceOption) (*AviatrixCloudwatchAgent, error)

GetAviatrixCloudwatchAgent gets an existing AviatrixCloudwatchAgent 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 NewAviatrixCloudwatchAgent

func NewAviatrixCloudwatchAgent(ctx *pulumi.Context,
	name string, args *AviatrixCloudwatchAgentArgs, opts ...pulumi.ResourceOption) (*AviatrixCloudwatchAgent, error)

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

func (*AviatrixCloudwatchAgent) ElementType

func (*AviatrixCloudwatchAgent) ElementType() reflect.Type

func (*AviatrixCloudwatchAgent) ToAviatrixCloudwatchAgentOutput

func (i *AviatrixCloudwatchAgent) ToAviatrixCloudwatchAgentOutput() AviatrixCloudwatchAgentOutput

func (*AviatrixCloudwatchAgent) ToAviatrixCloudwatchAgentOutputWithContext

func (i *AviatrixCloudwatchAgent) ToAviatrixCloudwatchAgentOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentOutput

type AviatrixCloudwatchAgentArgs

type AviatrixCloudwatchAgentArgs struct {
	// CloudWatch role ARN.
	CloudwatchRoleArn pulumi.StringInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Log group name. "AVIATRIX-CLOUDWATCH-LOG" by default.
	LogGroupName pulumi.StringPtrInput
	// Name of AWS region.
	Region pulumi.StringInput
}

The set of arguments for constructing a AviatrixCloudwatchAgent resource.

func (AviatrixCloudwatchAgentArgs) ElementType

type AviatrixCloudwatchAgentArray

type AviatrixCloudwatchAgentArray []AviatrixCloudwatchAgentInput

func (AviatrixCloudwatchAgentArray) ElementType

func (AviatrixCloudwatchAgentArray) ToAviatrixCloudwatchAgentArrayOutput

func (i AviatrixCloudwatchAgentArray) ToAviatrixCloudwatchAgentArrayOutput() AviatrixCloudwatchAgentArrayOutput

func (AviatrixCloudwatchAgentArray) ToAviatrixCloudwatchAgentArrayOutputWithContext

func (i AviatrixCloudwatchAgentArray) ToAviatrixCloudwatchAgentArrayOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentArrayOutput

type AviatrixCloudwatchAgentArrayInput

type AviatrixCloudwatchAgentArrayInput interface {
	pulumi.Input

	ToAviatrixCloudwatchAgentArrayOutput() AviatrixCloudwatchAgentArrayOutput
	ToAviatrixCloudwatchAgentArrayOutputWithContext(context.Context) AviatrixCloudwatchAgentArrayOutput
}

AviatrixCloudwatchAgentArrayInput is an input type that accepts AviatrixCloudwatchAgentArray and AviatrixCloudwatchAgentArrayOutput values. You can construct a concrete instance of `AviatrixCloudwatchAgentArrayInput` via:

AviatrixCloudwatchAgentArray{ AviatrixCloudwatchAgentArgs{...} }

type AviatrixCloudwatchAgentArrayOutput

type AviatrixCloudwatchAgentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixCloudwatchAgentArrayOutput) ElementType

func (AviatrixCloudwatchAgentArrayOutput) Index

func (AviatrixCloudwatchAgentArrayOutput) ToAviatrixCloudwatchAgentArrayOutput

func (o AviatrixCloudwatchAgentArrayOutput) ToAviatrixCloudwatchAgentArrayOutput() AviatrixCloudwatchAgentArrayOutput

func (AviatrixCloudwatchAgentArrayOutput) ToAviatrixCloudwatchAgentArrayOutputWithContext

func (o AviatrixCloudwatchAgentArrayOutput) ToAviatrixCloudwatchAgentArrayOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentArrayOutput

type AviatrixCloudwatchAgentInput

type AviatrixCloudwatchAgentInput interface {
	pulumi.Input

	ToAviatrixCloudwatchAgentOutput() AviatrixCloudwatchAgentOutput
	ToAviatrixCloudwatchAgentOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentOutput
}

type AviatrixCloudwatchAgentMap

type AviatrixCloudwatchAgentMap map[string]AviatrixCloudwatchAgentInput

func (AviatrixCloudwatchAgentMap) ElementType

func (AviatrixCloudwatchAgentMap) ElementType() reflect.Type

func (AviatrixCloudwatchAgentMap) ToAviatrixCloudwatchAgentMapOutput

func (i AviatrixCloudwatchAgentMap) ToAviatrixCloudwatchAgentMapOutput() AviatrixCloudwatchAgentMapOutput

func (AviatrixCloudwatchAgentMap) ToAviatrixCloudwatchAgentMapOutputWithContext

func (i AviatrixCloudwatchAgentMap) ToAviatrixCloudwatchAgentMapOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentMapOutput

type AviatrixCloudwatchAgentMapInput

type AviatrixCloudwatchAgentMapInput interface {
	pulumi.Input

	ToAviatrixCloudwatchAgentMapOutput() AviatrixCloudwatchAgentMapOutput
	ToAviatrixCloudwatchAgentMapOutputWithContext(context.Context) AviatrixCloudwatchAgentMapOutput
}

AviatrixCloudwatchAgentMapInput is an input type that accepts AviatrixCloudwatchAgentMap and AviatrixCloudwatchAgentMapOutput values. You can construct a concrete instance of `AviatrixCloudwatchAgentMapInput` via:

AviatrixCloudwatchAgentMap{ "key": AviatrixCloudwatchAgentArgs{...} }

type AviatrixCloudwatchAgentMapOutput

type AviatrixCloudwatchAgentMapOutput struct{ *pulumi.OutputState }

func (AviatrixCloudwatchAgentMapOutput) ElementType

func (AviatrixCloudwatchAgentMapOutput) MapIndex

func (AviatrixCloudwatchAgentMapOutput) ToAviatrixCloudwatchAgentMapOutput

func (o AviatrixCloudwatchAgentMapOutput) ToAviatrixCloudwatchAgentMapOutput() AviatrixCloudwatchAgentMapOutput

func (AviatrixCloudwatchAgentMapOutput) ToAviatrixCloudwatchAgentMapOutputWithContext

func (o AviatrixCloudwatchAgentMapOutput) ToAviatrixCloudwatchAgentMapOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentMapOutput

type AviatrixCloudwatchAgentOutput

type AviatrixCloudwatchAgentOutput struct{ *pulumi.OutputState }

func (AviatrixCloudwatchAgentOutput) CloudwatchRoleArn

func (o AviatrixCloudwatchAgentOutput) CloudwatchRoleArn() pulumi.StringOutput

CloudWatch role ARN.

func (AviatrixCloudwatchAgentOutput) ElementType

func (AviatrixCloudwatchAgentOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixCloudwatchAgentOutput) LogGroupName

Log group name. "AVIATRIX-CLOUDWATCH-LOG" by default.

func (AviatrixCloudwatchAgentOutput) Region

Name of AWS region.

func (AviatrixCloudwatchAgentOutput) Status

The status of cloudwatch agent.

func (AviatrixCloudwatchAgentOutput) ToAviatrixCloudwatchAgentOutput

func (o AviatrixCloudwatchAgentOutput) ToAviatrixCloudwatchAgentOutput() AviatrixCloudwatchAgentOutput

func (AviatrixCloudwatchAgentOutput) ToAviatrixCloudwatchAgentOutputWithContext

func (o AviatrixCloudwatchAgentOutput) ToAviatrixCloudwatchAgentOutputWithContext(ctx context.Context) AviatrixCloudwatchAgentOutput

type AviatrixCloudwatchAgentState

type AviatrixCloudwatchAgentState struct {
	// CloudWatch role ARN.
	CloudwatchRoleArn pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Log group name. "AVIATRIX-CLOUDWATCH-LOG" by default.
	LogGroupName pulumi.StringPtrInput
	// Name of AWS region.
	Region pulumi.StringPtrInput
	// The status of cloudwatch agent.
	Status pulumi.StringPtrInput
}

func (AviatrixCloudwatchAgentState) ElementType

type AviatrixControllerBgpMaxAsLimitConfig

type AviatrixControllerBgpMaxAsLimitConfig struct {
	pulumi.CustomResourceState

	// The maximum AS path limit allowed by transit gateways when handling BGP/Peering route propagation. Must be a number in the range [1-254].
	MaxAsLimit pulumi.IntOutput `pulumi:"maxAsLimit"`
}

The **aviatrix_controller_bgp_max_as_limit_config** resource allows management of an Aviatrix Controller's BGP max AS limit for transit gateways. This resource is available as of provider version R2.18.1+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerBgpMaxAsLimitConfig(ctx, "testMaxAsLimit", &aviatrix.AviatrixControllerBgpMaxAsLimitConfigArgs{
			MaxAsLimit: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_controller_bgp_max_as_limit_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerBgpMaxAsLimitConfig:AviatrixControllerBgpMaxAsLimitConfig test_max_as_limit 10-11-12-13

```

func GetAviatrixControllerBgpMaxAsLimitConfig

func GetAviatrixControllerBgpMaxAsLimitConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerBgpMaxAsLimitConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerBgpMaxAsLimitConfig, error)

GetAviatrixControllerBgpMaxAsLimitConfig gets an existing AviatrixControllerBgpMaxAsLimitConfig 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 NewAviatrixControllerBgpMaxAsLimitConfig

func NewAviatrixControllerBgpMaxAsLimitConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerBgpMaxAsLimitConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerBgpMaxAsLimitConfig, error)

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

func (*AviatrixControllerBgpMaxAsLimitConfig) ElementType

func (*AviatrixControllerBgpMaxAsLimitConfig) ToAviatrixControllerBgpMaxAsLimitConfigOutput

func (i *AviatrixControllerBgpMaxAsLimitConfig) ToAviatrixControllerBgpMaxAsLimitConfigOutput() AviatrixControllerBgpMaxAsLimitConfigOutput

func (*AviatrixControllerBgpMaxAsLimitConfig) ToAviatrixControllerBgpMaxAsLimitConfigOutputWithContext

func (i *AviatrixControllerBgpMaxAsLimitConfig) ToAviatrixControllerBgpMaxAsLimitConfigOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigOutput

type AviatrixControllerBgpMaxAsLimitConfigArgs

type AviatrixControllerBgpMaxAsLimitConfigArgs struct {
	// The maximum AS path limit allowed by transit gateways when handling BGP/Peering route propagation. Must be a number in the range [1-254].
	MaxAsLimit pulumi.IntInput
}

The set of arguments for constructing a AviatrixControllerBgpMaxAsLimitConfig resource.

func (AviatrixControllerBgpMaxAsLimitConfigArgs) ElementType

type AviatrixControllerBgpMaxAsLimitConfigArray

type AviatrixControllerBgpMaxAsLimitConfigArray []AviatrixControllerBgpMaxAsLimitConfigInput

func (AviatrixControllerBgpMaxAsLimitConfigArray) ElementType

func (AviatrixControllerBgpMaxAsLimitConfigArray) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutput

func (i AviatrixControllerBgpMaxAsLimitConfigArray) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutput() AviatrixControllerBgpMaxAsLimitConfigArrayOutput

func (AviatrixControllerBgpMaxAsLimitConfigArray) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutputWithContext

func (i AviatrixControllerBgpMaxAsLimitConfigArray) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigArrayOutput

type AviatrixControllerBgpMaxAsLimitConfigArrayInput

type AviatrixControllerBgpMaxAsLimitConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerBgpMaxAsLimitConfigArrayOutput() AviatrixControllerBgpMaxAsLimitConfigArrayOutput
	ToAviatrixControllerBgpMaxAsLimitConfigArrayOutputWithContext(context.Context) AviatrixControllerBgpMaxAsLimitConfigArrayOutput
}

AviatrixControllerBgpMaxAsLimitConfigArrayInput is an input type that accepts AviatrixControllerBgpMaxAsLimitConfigArray and AviatrixControllerBgpMaxAsLimitConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerBgpMaxAsLimitConfigArrayInput` via:

AviatrixControllerBgpMaxAsLimitConfigArray{ AviatrixControllerBgpMaxAsLimitConfigArgs{...} }

type AviatrixControllerBgpMaxAsLimitConfigArrayOutput

type AviatrixControllerBgpMaxAsLimitConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerBgpMaxAsLimitConfigArrayOutput) ElementType

func (AviatrixControllerBgpMaxAsLimitConfigArrayOutput) Index

func (AviatrixControllerBgpMaxAsLimitConfigArrayOutput) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutput

func (o AviatrixControllerBgpMaxAsLimitConfigArrayOutput) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutput() AviatrixControllerBgpMaxAsLimitConfigArrayOutput

func (AviatrixControllerBgpMaxAsLimitConfigArrayOutput) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutputWithContext

func (o AviatrixControllerBgpMaxAsLimitConfigArrayOutput) ToAviatrixControllerBgpMaxAsLimitConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigArrayOutput

type AviatrixControllerBgpMaxAsLimitConfigInput

type AviatrixControllerBgpMaxAsLimitConfigInput interface {
	pulumi.Input

	ToAviatrixControllerBgpMaxAsLimitConfigOutput() AviatrixControllerBgpMaxAsLimitConfigOutput
	ToAviatrixControllerBgpMaxAsLimitConfigOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigOutput
}

type AviatrixControllerBgpMaxAsLimitConfigMap

type AviatrixControllerBgpMaxAsLimitConfigMap map[string]AviatrixControllerBgpMaxAsLimitConfigInput

func (AviatrixControllerBgpMaxAsLimitConfigMap) ElementType

func (AviatrixControllerBgpMaxAsLimitConfigMap) ToAviatrixControllerBgpMaxAsLimitConfigMapOutput

func (i AviatrixControllerBgpMaxAsLimitConfigMap) ToAviatrixControllerBgpMaxAsLimitConfigMapOutput() AviatrixControllerBgpMaxAsLimitConfigMapOutput

func (AviatrixControllerBgpMaxAsLimitConfigMap) ToAviatrixControllerBgpMaxAsLimitConfigMapOutputWithContext

func (i AviatrixControllerBgpMaxAsLimitConfigMap) ToAviatrixControllerBgpMaxAsLimitConfigMapOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigMapOutput

type AviatrixControllerBgpMaxAsLimitConfigMapInput

type AviatrixControllerBgpMaxAsLimitConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerBgpMaxAsLimitConfigMapOutput() AviatrixControllerBgpMaxAsLimitConfigMapOutput
	ToAviatrixControllerBgpMaxAsLimitConfigMapOutputWithContext(context.Context) AviatrixControllerBgpMaxAsLimitConfigMapOutput
}

AviatrixControllerBgpMaxAsLimitConfigMapInput is an input type that accepts AviatrixControllerBgpMaxAsLimitConfigMap and AviatrixControllerBgpMaxAsLimitConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerBgpMaxAsLimitConfigMapInput` via:

AviatrixControllerBgpMaxAsLimitConfigMap{ "key": AviatrixControllerBgpMaxAsLimitConfigArgs{...} }

type AviatrixControllerBgpMaxAsLimitConfigMapOutput

type AviatrixControllerBgpMaxAsLimitConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerBgpMaxAsLimitConfigMapOutput) ElementType

func (AviatrixControllerBgpMaxAsLimitConfigMapOutput) MapIndex

func (AviatrixControllerBgpMaxAsLimitConfigMapOutput) ToAviatrixControllerBgpMaxAsLimitConfigMapOutput

func (o AviatrixControllerBgpMaxAsLimitConfigMapOutput) ToAviatrixControllerBgpMaxAsLimitConfigMapOutput() AviatrixControllerBgpMaxAsLimitConfigMapOutput

func (AviatrixControllerBgpMaxAsLimitConfigMapOutput) ToAviatrixControllerBgpMaxAsLimitConfigMapOutputWithContext

func (o AviatrixControllerBgpMaxAsLimitConfigMapOutput) ToAviatrixControllerBgpMaxAsLimitConfigMapOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigMapOutput

type AviatrixControllerBgpMaxAsLimitConfigOutput

type AviatrixControllerBgpMaxAsLimitConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerBgpMaxAsLimitConfigOutput) ElementType

func (AviatrixControllerBgpMaxAsLimitConfigOutput) MaxAsLimit

The maximum AS path limit allowed by transit gateways when handling BGP/Peering route propagation. Must be a number in the range [1-254].

func (AviatrixControllerBgpMaxAsLimitConfigOutput) ToAviatrixControllerBgpMaxAsLimitConfigOutput

func (o AviatrixControllerBgpMaxAsLimitConfigOutput) ToAviatrixControllerBgpMaxAsLimitConfigOutput() AviatrixControllerBgpMaxAsLimitConfigOutput

func (AviatrixControllerBgpMaxAsLimitConfigOutput) ToAviatrixControllerBgpMaxAsLimitConfigOutputWithContext

func (o AviatrixControllerBgpMaxAsLimitConfigOutput) ToAviatrixControllerBgpMaxAsLimitConfigOutputWithContext(ctx context.Context) AviatrixControllerBgpMaxAsLimitConfigOutput

type AviatrixControllerBgpMaxAsLimitConfigState

type AviatrixControllerBgpMaxAsLimitConfigState struct {
	// The maximum AS path limit allowed by transit gateways when handling BGP/Peering route propagation. Must be a number in the range [1-254].
	MaxAsLimit pulumi.IntPtrInput
}

func (AviatrixControllerBgpMaxAsLimitConfigState) ElementType

type AviatrixControllerCertDomainConfig

type AviatrixControllerCertDomainConfig struct {
	pulumi.CustomResourceState

	// Domain name that is used in FQDN for generating cert. Default value: "aviatrixnetwork.com".
	CertDomain pulumi.StringPtrOutput `pulumi:"certDomain"`
}

The **aviatrix_controller_cert_domain_config** resource allows management of an Aviatrix Controller's cert domain config. This resource is available as of provider version R2.19+.

!> **WARNING:** Changing the Controller's cert domain config causes all other API calls to the controller to fail. If multiple other resources are created with the **aviatrix_controller_cert_domain_config** resource, a dependency on the **aviatrix_controller_cert_domain_config** resource must be added.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerCertDomainConfig(ctx, "test", &aviatrix.AviatrixControllerCertDomainConfigArgs{
			CertDomain: pulumi.String("abc.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_controller_cert_domain_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerCertDomainConfig:AviatrixControllerCertDomainConfig test 10-11-12-13

```

func GetAviatrixControllerCertDomainConfig

func GetAviatrixControllerCertDomainConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerCertDomainConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerCertDomainConfig, error)

GetAviatrixControllerCertDomainConfig gets an existing AviatrixControllerCertDomainConfig 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 NewAviatrixControllerCertDomainConfig

func NewAviatrixControllerCertDomainConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerCertDomainConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerCertDomainConfig, error)

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

func (*AviatrixControllerCertDomainConfig) ElementType

func (*AviatrixControllerCertDomainConfig) ToAviatrixControllerCertDomainConfigOutput

func (i *AviatrixControllerCertDomainConfig) ToAviatrixControllerCertDomainConfigOutput() AviatrixControllerCertDomainConfigOutput

func (*AviatrixControllerCertDomainConfig) ToAviatrixControllerCertDomainConfigOutputWithContext

func (i *AviatrixControllerCertDomainConfig) ToAviatrixControllerCertDomainConfigOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigOutput

type AviatrixControllerCertDomainConfigArgs

type AviatrixControllerCertDomainConfigArgs struct {
	// Domain name that is used in FQDN for generating cert. Default value: "aviatrixnetwork.com".
	CertDomain pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixControllerCertDomainConfig resource.

func (AviatrixControllerCertDomainConfigArgs) ElementType

type AviatrixControllerCertDomainConfigArray

type AviatrixControllerCertDomainConfigArray []AviatrixControllerCertDomainConfigInput

func (AviatrixControllerCertDomainConfigArray) ElementType

func (AviatrixControllerCertDomainConfigArray) ToAviatrixControllerCertDomainConfigArrayOutput

func (i AviatrixControllerCertDomainConfigArray) ToAviatrixControllerCertDomainConfigArrayOutput() AviatrixControllerCertDomainConfigArrayOutput

func (AviatrixControllerCertDomainConfigArray) ToAviatrixControllerCertDomainConfigArrayOutputWithContext

func (i AviatrixControllerCertDomainConfigArray) ToAviatrixControllerCertDomainConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigArrayOutput

type AviatrixControllerCertDomainConfigArrayInput

type AviatrixControllerCertDomainConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerCertDomainConfigArrayOutput() AviatrixControllerCertDomainConfigArrayOutput
	ToAviatrixControllerCertDomainConfigArrayOutputWithContext(context.Context) AviatrixControllerCertDomainConfigArrayOutput
}

AviatrixControllerCertDomainConfigArrayInput is an input type that accepts AviatrixControllerCertDomainConfigArray and AviatrixControllerCertDomainConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerCertDomainConfigArrayInput` via:

AviatrixControllerCertDomainConfigArray{ AviatrixControllerCertDomainConfigArgs{...} }

type AviatrixControllerCertDomainConfigArrayOutput

type AviatrixControllerCertDomainConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerCertDomainConfigArrayOutput) ElementType

func (AviatrixControllerCertDomainConfigArrayOutput) Index

func (AviatrixControllerCertDomainConfigArrayOutput) ToAviatrixControllerCertDomainConfigArrayOutput

func (o AviatrixControllerCertDomainConfigArrayOutput) ToAviatrixControllerCertDomainConfigArrayOutput() AviatrixControllerCertDomainConfigArrayOutput

func (AviatrixControllerCertDomainConfigArrayOutput) ToAviatrixControllerCertDomainConfigArrayOutputWithContext

func (o AviatrixControllerCertDomainConfigArrayOutput) ToAviatrixControllerCertDomainConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigArrayOutput

type AviatrixControllerCertDomainConfigInput

type AviatrixControllerCertDomainConfigInput interface {
	pulumi.Input

	ToAviatrixControllerCertDomainConfigOutput() AviatrixControllerCertDomainConfigOutput
	ToAviatrixControllerCertDomainConfigOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigOutput
}

type AviatrixControllerCertDomainConfigMap

type AviatrixControllerCertDomainConfigMap map[string]AviatrixControllerCertDomainConfigInput

func (AviatrixControllerCertDomainConfigMap) ElementType

func (AviatrixControllerCertDomainConfigMap) ToAviatrixControllerCertDomainConfigMapOutput

func (i AviatrixControllerCertDomainConfigMap) ToAviatrixControllerCertDomainConfigMapOutput() AviatrixControllerCertDomainConfigMapOutput

func (AviatrixControllerCertDomainConfigMap) ToAviatrixControllerCertDomainConfigMapOutputWithContext

func (i AviatrixControllerCertDomainConfigMap) ToAviatrixControllerCertDomainConfigMapOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigMapOutput

type AviatrixControllerCertDomainConfigMapInput

type AviatrixControllerCertDomainConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerCertDomainConfigMapOutput() AviatrixControllerCertDomainConfigMapOutput
	ToAviatrixControllerCertDomainConfigMapOutputWithContext(context.Context) AviatrixControllerCertDomainConfigMapOutput
}

AviatrixControllerCertDomainConfigMapInput is an input type that accepts AviatrixControllerCertDomainConfigMap and AviatrixControllerCertDomainConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerCertDomainConfigMapInput` via:

AviatrixControllerCertDomainConfigMap{ "key": AviatrixControllerCertDomainConfigArgs{...} }

type AviatrixControllerCertDomainConfigMapOutput

type AviatrixControllerCertDomainConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerCertDomainConfigMapOutput) ElementType

func (AviatrixControllerCertDomainConfigMapOutput) MapIndex

func (AviatrixControllerCertDomainConfigMapOutput) ToAviatrixControllerCertDomainConfigMapOutput

func (o AviatrixControllerCertDomainConfigMapOutput) ToAviatrixControllerCertDomainConfigMapOutput() AviatrixControllerCertDomainConfigMapOutput

func (AviatrixControllerCertDomainConfigMapOutput) ToAviatrixControllerCertDomainConfigMapOutputWithContext

func (o AviatrixControllerCertDomainConfigMapOutput) ToAviatrixControllerCertDomainConfigMapOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigMapOutput

type AviatrixControllerCertDomainConfigOutput

type AviatrixControllerCertDomainConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerCertDomainConfigOutput) CertDomain

Domain name that is used in FQDN for generating cert. Default value: "aviatrixnetwork.com".

func (AviatrixControllerCertDomainConfigOutput) ElementType

func (AviatrixControllerCertDomainConfigOutput) ToAviatrixControllerCertDomainConfigOutput

func (o AviatrixControllerCertDomainConfigOutput) ToAviatrixControllerCertDomainConfigOutput() AviatrixControllerCertDomainConfigOutput

func (AviatrixControllerCertDomainConfigOutput) ToAviatrixControllerCertDomainConfigOutputWithContext

func (o AviatrixControllerCertDomainConfigOutput) ToAviatrixControllerCertDomainConfigOutputWithContext(ctx context.Context) AviatrixControllerCertDomainConfigOutput

type AviatrixControllerCertDomainConfigState

type AviatrixControllerCertDomainConfigState struct {
	// Domain name that is used in FQDN for generating cert. Default value: "aviatrixnetwork.com".
	CertDomain pulumi.StringPtrInput
}

func (AviatrixControllerCertDomainConfigState) ElementType

type AviatrixControllerConfig

type AviatrixControllerConfig struct {
	pulumi.CustomResourceState

	// Configure the AWS Guard Duty scanning interval. Valid values: 5, 10, 15, 30 or 60. Default value: 60. Available as of provider version R2.18+.
	AwsGuardDutyScanningInterval pulumi.IntPtrOutput `pulumi:"awsGuardDutyScanningInterval"`
	// Name of the cloud account in the Aviatrix controller.
	BackupAccountName pulumi.StringPtrOutput `pulumi:"backupAccountName"`
	// Bucket Name. Required to enable configuration backup for AWS, AWSGov, GCP and OCI.
	BackupBucketName pulumi.StringPtrOutput `pulumi:"backupBucketName"`
	// Type of cloud service provider, requires an integer value. Use 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, and 256 for AWSGov.
	BackupCloudType pulumi.IntPtrOutput `pulumi:"backupCloudType"`
	// Switch to enable/disable controller CloudN backup config. Valid values: true, false. Default value: false.
	BackupConfiguration pulumi.BoolPtrOutput `pulumi:"backupConfiguration"`
	// Container name. Required to enable configuration backup for Azure.
	BackupContainerName pulumi.StringPtrOutput `pulumi:"backupContainerName"`
	// Name of region. Required to enable configuration backup for Azure and OCI.
	BackupRegion pulumi.StringPtrOutput `pulumi:"backupRegion"`
	// Storage name. Required to enable configuration backup for Azure.
	BackupStorageName pulumi.StringPtrOutput `pulumi:"backupStorageName"`
	// CA certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	CaCertificateFile pulumi.StringPtrOutput `pulumi:"caCertificateFile"`
	// File path to CA certificate. Available as of provider version R2.18+.
	CaCertificateFilePath pulumi.StringPtrOutput `pulumi:"caCertificateFilePath"`
	// Current version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.
	CurrentVersion pulumi.StringOutput `pulumi:"currentVersion"`
	// Enable VPC/VNET DNS Server for the controller. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrOutput `pulumi:"enableVpcDnsServer"`
	// Enable/disable packets without an SNI field to pass through gateway(s). Valid values: true, false. Default value: true. For more information on this setting, please see [here](https://docs.aviatrix.com/HowTos/FQDN_Whitelists_Ref_Design.html#exception-rule)
	FqdnExceptionRule pulumi.BoolPtrOutput `pulumi:"fqdnExceptionRule"`
	// Switch for HTTP access. Valid values: true, false. Default value: false.
	HttpAccess pulumi.BoolPtrOutput `pulumi:"httpAccess"`
	// If true, AviatrixControllerConfig will upgrade all gateways when targetVersion is set. If false, only the controller will be upgraded when targetVersion is set. In that case gateway upgrades should be handled in each gateway resource individually using the softwareVersion and imageVersion attributes. Type: boolean. Default: true. Available as of provider version R2.20.0+.
	ManageGatewayUpgrades pulumi.BoolPtrOutput `pulumi:"manageGatewayUpgrades"`
	// Switch to enable the Controller to backup up to a maximum of 3 rotating backups. Valid values: true, false. Default value: false.
	MultipleBackups pulumi.BoolPtrOutput `pulumi:"multipleBackups"`
	// Previous version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.
	PreviousVersion pulumi.StringOutput `pulumi:"previousVersion"`
	// Server private key. To read the private key from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPrivateKeyFile pulumi.StringPtrOutput `pulumi:"serverPrivateKeyFile"`
	// File path to server private key. Available as of provider version R2.18+.
	ServerPrivateKeyFilePath pulumi.StringPtrOutput `pulumi:"serverPrivateKeyFilePath"`
	// Server public certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPublicCertificateFile pulumi.StringPtrOutput `pulumi:"serverPublicCertificateFile"`
	// File path to the server public certificate. Available as of provider version R2.18+.
	ServerPublicCertificateFilePath pulumi.StringPtrOutput `pulumi:"serverPublicCertificateFilePath"`
	// The release version number to which the controller will be upgraded to. If not specified, controller will not be upgraded. If set to "latest", controller will be upgraded to the latest release. Please see the [Controller upgrade guide](https://docs.aviatrix.com/HowTos/inline_upgrade.html) for more information.
	TargetVersion pulumi.StringPtrOutput `pulumi:"targetVersion"`
	// Current version of the controller without build number. Example: "6.5"
	Version pulumi.StringOutput `pulumi:"version"`
}

The **aviatrix_controller_config** resource allows management of an Aviatrix Controller's configurations.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			FqdnExceptionRule: pulumi.Bool(false),
			HttpAccess:        pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			FqdnExceptionRule:     pulumi.Bool(false),
			HttpAccess:            pulumi.Bool(true),
			ManageGatewayUpgrades: pulumi.Bool(false),
			TargetVersion:         pulumi.String("latest"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			FqdnExceptionRule: pulumi.Bool(false),
			HttpAccess:        pulumi.Bool(true),
			TargetVersion:     pulumi.String("latest"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			BackupAccountName:   pulumi.String("account_example"),
			BackupBucketName:    pulumi.String("bucket_example"),
			BackupCloudType:     pulumi.Int(1),
			BackupConfiguration: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			CaCertificateFilePath:           pulumi.String("/path/to/ca_certificate.pem"),
			ServerPrivateKeyFilePath:        pulumi.String("/path/to/server.key"),
			ServerPublicCertificateFilePath: pulumi.String("/path/to/server.crt"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerConfig(ctx, "testControllerConfig", &aviatrix.AviatrixControllerConfigArgs{
			AwsGuardDutyScanningInterval: pulumi.Int(10),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance controller_config can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerConfig:AviatrixControllerConfig test 10-11-12-13

```

func GetAviatrixControllerConfig

func GetAviatrixControllerConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerConfig, error)

GetAviatrixControllerConfig gets an existing AviatrixControllerConfig 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 NewAviatrixControllerConfig

func NewAviatrixControllerConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerConfig, error)

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

func (*AviatrixControllerConfig) ElementType

func (*AviatrixControllerConfig) ElementType() reflect.Type

func (*AviatrixControllerConfig) ToAviatrixControllerConfigOutput

func (i *AviatrixControllerConfig) ToAviatrixControllerConfigOutput() AviatrixControllerConfigOutput

func (*AviatrixControllerConfig) ToAviatrixControllerConfigOutputWithContext

func (i *AviatrixControllerConfig) ToAviatrixControllerConfigOutputWithContext(ctx context.Context) AviatrixControllerConfigOutput

type AviatrixControllerConfigArgs

type AviatrixControllerConfigArgs struct {
	// Configure the AWS Guard Duty scanning interval. Valid values: 5, 10, 15, 30 or 60. Default value: 60. Available as of provider version R2.18+.
	AwsGuardDutyScanningInterval pulumi.IntPtrInput
	// Name of the cloud account in the Aviatrix controller.
	BackupAccountName pulumi.StringPtrInput
	// Bucket Name. Required to enable configuration backup for AWS, AWSGov, GCP and OCI.
	BackupBucketName pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Use 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, and 256 for AWSGov.
	BackupCloudType pulumi.IntPtrInput
	// Switch to enable/disable controller CloudN backup config. Valid values: true, false. Default value: false.
	BackupConfiguration pulumi.BoolPtrInput
	// Container name. Required to enable configuration backup for Azure.
	BackupContainerName pulumi.StringPtrInput
	// Name of region. Required to enable configuration backup for Azure and OCI.
	BackupRegion pulumi.StringPtrInput
	// Storage name. Required to enable configuration backup for Azure.
	BackupStorageName pulumi.StringPtrInput
	// CA certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	CaCertificateFile pulumi.StringPtrInput
	// File path to CA certificate. Available as of provider version R2.18+.
	CaCertificateFilePath pulumi.StringPtrInput
	// Enable VPC/VNET DNS Server for the controller. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Enable/disable packets without an SNI field to pass through gateway(s). Valid values: true, false. Default value: true. For more information on this setting, please see [here](https://docs.aviatrix.com/HowTos/FQDN_Whitelists_Ref_Design.html#exception-rule)
	FqdnExceptionRule pulumi.BoolPtrInput
	// Switch for HTTP access. Valid values: true, false. Default value: false.
	HttpAccess pulumi.BoolPtrInput
	// If true, AviatrixControllerConfig will upgrade all gateways when targetVersion is set. If false, only the controller will be upgraded when targetVersion is set. In that case gateway upgrades should be handled in each gateway resource individually using the softwareVersion and imageVersion attributes. Type: boolean. Default: true. Available as of provider version R2.20.0+.
	ManageGatewayUpgrades pulumi.BoolPtrInput
	// Switch to enable the Controller to backup up to a maximum of 3 rotating backups. Valid values: true, false. Default value: false.
	MultipleBackups pulumi.BoolPtrInput
	// Server private key. To read the private key from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPrivateKeyFile pulumi.StringPtrInput
	// File path to server private key. Available as of provider version R2.18+.
	ServerPrivateKeyFilePath pulumi.StringPtrInput
	// Server public certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPublicCertificateFile pulumi.StringPtrInput
	// File path to the server public certificate. Available as of provider version R2.18+.
	ServerPublicCertificateFilePath pulumi.StringPtrInput
	// The release version number to which the controller will be upgraded to. If not specified, controller will not be upgraded. If set to "latest", controller will be upgraded to the latest release. Please see the [Controller upgrade guide](https://docs.aviatrix.com/HowTos/inline_upgrade.html) for more information.
	TargetVersion pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixControllerConfig resource.

func (AviatrixControllerConfigArgs) ElementType

type AviatrixControllerConfigArray

type AviatrixControllerConfigArray []AviatrixControllerConfigInput

func (AviatrixControllerConfigArray) ElementType

func (AviatrixControllerConfigArray) ToAviatrixControllerConfigArrayOutput

func (i AviatrixControllerConfigArray) ToAviatrixControllerConfigArrayOutput() AviatrixControllerConfigArrayOutput

func (AviatrixControllerConfigArray) ToAviatrixControllerConfigArrayOutputWithContext

func (i AviatrixControllerConfigArray) ToAviatrixControllerConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerConfigArrayOutput

type AviatrixControllerConfigArrayInput

type AviatrixControllerConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerConfigArrayOutput() AviatrixControllerConfigArrayOutput
	ToAviatrixControllerConfigArrayOutputWithContext(context.Context) AviatrixControllerConfigArrayOutput
}

AviatrixControllerConfigArrayInput is an input type that accepts AviatrixControllerConfigArray and AviatrixControllerConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerConfigArrayInput` via:

AviatrixControllerConfigArray{ AviatrixControllerConfigArgs{...} }

type AviatrixControllerConfigArrayOutput

type AviatrixControllerConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerConfigArrayOutput) ElementType

func (AviatrixControllerConfigArrayOutput) Index

func (AviatrixControllerConfigArrayOutput) ToAviatrixControllerConfigArrayOutput

func (o AviatrixControllerConfigArrayOutput) ToAviatrixControllerConfigArrayOutput() AviatrixControllerConfigArrayOutput

func (AviatrixControllerConfigArrayOutput) ToAviatrixControllerConfigArrayOutputWithContext

func (o AviatrixControllerConfigArrayOutput) ToAviatrixControllerConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerConfigArrayOutput

type AviatrixControllerConfigInput

type AviatrixControllerConfigInput interface {
	pulumi.Input

	ToAviatrixControllerConfigOutput() AviatrixControllerConfigOutput
	ToAviatrixControllerConfigOutputWithContext(ctx context.Context) AviatrixControllerConfigOutput
}

type AviatrixControllerConfigMap

type AviatrixControllerConfigMap map[string]AviatrixControllerConfigInput

func (AviatrixControllerConfigMap) ElementType

func (AviatrixControllerConfigMap) ToAviatrixControllerConfigMapOutput

func (i AviatrixControllerConfigMap) ToAviatrixControllerConfigMapOutput() AviatrixControllerConfigMapOutput

func (AviatrixControllerConfigMap) ToAviatrixControllerConfigMapOutputWithContext

func (i AviatrixControllerConfigMap) ToAviatrixControllerConfigMapOutputWithContext(ctx context.Context) AviatrixControllerConfigMapOutput

type AviatrixControllerConfigMapInput

type AviatrixControllerConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerConfigMapOutput() AviatrixControllerConfigMapOutput
	ToAviatrixControllerConfigMapOutputWithContext(context.Context) AviatrixControllerConfigMapOutput
}

AviatrixControllerConfigMapInput is an input type that accepts AviatrixControllerConfigMap and AviatrixControllerConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerConfigMapInput` via:

AviatrixControllerConfigMap{ "key": AviatrixControllerConfigArgs{...} }

type AviatrixControllerConfigMapOutput

type AviatrixControllerConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerConfigMapOutput) ElementType

func (AviatrixControllerConfigMapOutput) MapIndex

func (AviatrixControllerConfigMapOutput) ToAviatrixControllerConfigMapOutput

func (o AviatrixControllerConfigMapOutput) ToAviatrixControllerConfigMapOutput() AviatrixControllerConfigMapOutput

func (AviatrixControllerConfigMapOutput) ToAviatrixControllerConfigMapOutputWithContext

func (o AviatrixControllerConfigMapOutput) ToAviatrixControllerConfigMapOutputWithContext(ctx context.Context) AviatrixControllerConfigMapOutput

type AviatrixControllerConfigOutput

type AviatrixControllerConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerConfigOutput) AwsGuardDutyScanningInterval

func (o AviatrixControllerConfigOutput) AwsGuardDutyScanningInterval() pulumi.IntPtrOutput

Configure the AWS Guard Duty scanning interval. Valid values: 5, 10, 15, 30 or 60. Default value: 60. Available as of provider version R2.18+.

func (AviatrixControllerConfigOutput) BackupAccountName

Name of the cloud account in the Aviatrix controller.

func (AviatrixControllerConfigOutput) BackupBucketName

Bucket Name. Required to enable configuration backup for AWS, AWSGov, GCP and OCI.

func (AviatrixControllerConfigOutput) BackupCloudType

Type of cloud service provider, requires an integer value. Use 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, and 256 for AWSGov.

func (AviatrixControllerConfigOutput) BackupConfiguration

func (o AviatrixControllerConfigOutput) BackupConfiguration() pulumi.BoolPtrOutput

Switch to enable/disable controller CloudN backup config. Valid values: true, false. Default value: false.

func (AviatrixControllerConfigOutput) BackupContainerName

func (o AviatrixControllerConfigOutput) BackupContainerName() pulumi.StringPtrOutput

Container name. Required to enable configuration backup for Azure.

func (AviatrixControllerConfigOutput) BackupRegion

Name of region. Required to enable configuration backup for Azure and OCI.

func (AviatrixControllerConfigOutput) BackupStorageName

Storage name. Required to enable configuration backup for Azure.

func (AviatrixControllerConfigOutput) CaCertificateFile

CA certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.

func (AviatrixControllerConfigOutput) CaCertificateFilePath

func (o AviatrixControllerConfigOutput) CaCertificateFilePath() pulumi.StringPtrOutput

File path to CA certificate. Available as of provider version R2.18+.

func (AviatrixControllerConfigOutput) CurrentVersion

Current version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.

func (AviatrixControllerConfigOutput) ElementType

func (AviatrixControllerConfigOutput) EnableVpcDnsServer

func (o AviatrixControllerConfigOutput) EnableVpcDnsServer() pulumi.BoolPtrOutput

Enable VPC/VNET DNS Server for the controller. Valid values: true, false. Default value: false.

func (AviatrixControllerConfigOutput) FqdnExceptionRule

func (o AviatrixControllerConfigOutput) FqdnExceptionRule() pulumi.BoolPtrOutput

Enable/disable packets without an SNI field to pass through gateway(s). Valid values: true, false. Default value: true. For more information on this setting, please see [here](https://docs.aviatrix.com/HowTos/FQDN_Whitelists_Ref_Design.html#exception-rule)

func (AviatrixControllerConfigOutput) HttpAccess

Switch for HTTP access. Valid values: true, false. Default value: false.

func (AviatrixControllerConfigOutput) ManageGatewayUpgrades

func (o AviatrixControllerConfigOutput) ManageGatewayUpgrades() pulumi.BoolPtrOutput

If true, AviatrixControllerConfig will upgrade all gateways when targetVersion is set. If false, only the controller will be upgraded when targetVersion is set. In that case gateway upgrades should be handled in each gateway resource individually using the softwareVersion and imageVersion attributes. Type: boolean. Default: true. Available as of provider version R2.20.0+.

func (AviatrixControllerConfigOutput) MultipleBackups

Switch to enable the Controller to backup up to a maximum of 3 rotating backups. Valid values: true, false. Default value: false.

func (AviatrixControllerConfigOutput) PreviousVersion

Previous version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.

func (AviatrixControllerConfigOutput) ServerPrivateKeyFile

func (o AviatrixControllerConfigOutput) ServerPrivateKeyFile() pulumi.StringPtrOutput

Server private key. To read the private key from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.

func (AviatrixControllerConfigOutput) ServerPrivateKeyFilePath

func (o AviatrixControllerConfigOutput) ServerPrivateKeyFilePath() pulumi.StringPtrOutput

File path to server private key. Available as of provider version R2.18+.

func (AviatrixControllerConfigOutput) ServerPublicCertificateFile

func (o AviatrixControllerConfigOutput) ServerPublicCertificateFile() pulumi.StringPtrOutput

Server public certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.

func (AviatrixControllerConfigOutput) ServerPublicCertificateFilePath

func (o AviatrixControllerConfigOutput) ServerPublicCertificateFilePath() pulumi.StringPtrOutput

File path to the server public certificate. Available as of provider version R2.18+.

func (AviatrixControllerConfigOutput) TargetVersion

The release version number to which the controller will be upgraded to. If not specified, controller will not be upgraded. If set to "latest", controller will be upgraded to the latest release. Please see the [Controller upgrade guide](https://docs.aviatrix.com/HowTos/inline_upgrade.html) for more information.

func (AviatrixControllerConfigOutput) ToAviatrixControllerConfigOutput

func (o AviatrixControllerConfigOutput) ToAviatrixControllerConfigOutput() AviatrixControllerConfigOutput

func (AviatrixControllerConfigOutput) ToAviatrixControllerConfigOutputWithContext

func (o AviatrixControllerConfigOutput) ToAviatrixControllerConfigOutputWithContext(ctx context.Context) AviatrixControllerConfigOutput

func (AviatrixControllerConfigOutput) Version

Current version of the controller without build number. Example: "6.5"

type AviatrixControllerConfigState

type AviatrixControllerConfigState struct {
	// Configure the AWS Guard Duty scanning interval. Valid values: 5, 10, 15, 30 or 60. Default value: 60. Available as of provider version R2.18+.
	AwsGuardDutyScanningInterval pulumi.IntPtrInput
	// Name of the cloud account in the Aviatrix controller.
	BackupAccountName pulumi.StringPtrInput
	// Bucket Name. Required to enable configuration backup for AWS, AWSGov, GCP and OCI.
	BackupBucketName pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Use 1 for AWS, 4 for GCP, 8 for Azure, 16 for OCI, and 256 for AWSGov.
	BackupCloudType pulumi.IntPtrInput
	// Switch to enable/disable controller CloudN backup config. Valid values: true, false. Default value: false.
	BackupConfiguration pulumi.BoolPtrInput
	// Container name. Required to enable configuration backup for Azure.
	BackupContainerName pulumi.StringPtrInput
	// Name of region. Required to enable configuration backup for Azure and OCI.
	BackupRegion pulumi.StringPtrInput
	// Storage name. Required to enable configuration backup for Azure.
	BackupStorageName pulumi.StringPtrInput
	// CA certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	CaCertificateFile pulumi.StringPtrInput
	// File path to CA certificate. Available as of provider version R2.18+.
	CaCertificateFilePath pulumi.StringPtrInput
	// Current version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.
	CurrentVersion pulumi.StringPtrInput
	// Enable VPC/VNET DNS Server for the controller. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Enable/disable packets without an SNI field to pass through gateway(s). Valid values: true, false. Default value: true. For more information on this setting, please see [here](https://docs.aviatrix.com/HowTos/FQDN_Whitelists_Ref_Design.html#exception-rule)
	FqdnExceptionRule pulumi.BoolPtrInput
	// Switch for HTTP access. Valid values: true, false. Default value: false.
	HttpAccess pulumi.BoolPtrInput
	// If true, AviatrixControllerConfig will upgrade all gateways when targetVersion is set. If false, only the controller will be upgraded when targetVersion is set. In that case gateway upgrades should be handled in each gateway resource individually using the softwareVersion and imageVersion attributes. Type: boolean. Default: true. Available as of provider version R2.20.0+.
	ManageGatewayUpgrades pulumi.BoolPtrInput
	// Switch to enable the Controller to backup up to a maximum of 3 rotating backups. Valid values: true, false. Default value: false.
	MultipleBackups pulumi.BoolPtrInput
	// Previous version of the controller including the build number. Example: "6.5.123". Available as of provider version R2.20.0+.
	PreviousVersion pulumi.StringPtrInput
	// Server private key. To read the private key from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPrivateKeyFile pulumi.StringPtrInput
	// File path to server private key. Available as of provider version R2.18+.
	ServerPrivateKeyFilePath pulumi.StringPtrInput
	// Server public certificate. To read certificate file from a file, please use the built-in `file` function. Available as of provider version R2.21.2+.
	ServerPublicCertificateFile pulumi.StringPtrInput
	// File path to the server public certificate. Available as of provider version R2.18+.
	ServerPublicCertificateFilePath pulumi.StringPtrInput
	// The release version number to which the controller will be upgraded to. If not specified, controller will not be upgraded. If set to "latest", controller will be upgraded to the latest release. Please see the [Controller upgrade guide](https://docs.aviatrix.com/HowTos/inline_upgrade.html) for more information.
	TargetVersion pulumi.StringPtrInput
	// Current version of the controller without build number. Example: "6.5"
	Version pulumi.StringPtrInput
}

func (AviatrixControllerConfigState) ElementType

type AviatrixControllerEmailConfig

type AviatrixControllerEmailConfig struct {
	pulumi.CustomResourceState

	// Email to receive important account and certification information.
	AdminAlertEmail pulumi.StringOutput `pulumi:"adminAlertEmail"`
	// Whether admin alert notification email is verified.
	AdminAlertEmailVerified pulumi.BoolOutput `pulumi:"adminAlertEmailVerified"`
	// Email to receive field notices and critical notices.
	CriticalAlertEmail pulumi.StringOutput `pulumi:"criticalAlertEmail"`
	// Whether critical alert notification email is verified.
	CriticalAlertEmailVerified pulumi.BoolOutput `pulumi:"criticalAlertEmailVerified"`
	// Email to receive security and CVE (Common Vulnerabilities and Exposures) notification emails.
	SecurityEventEmail pulumi.StringOutput `pulumi:"securityEventEmail"`
	// Whether security event notification email is verified.
	SecurityEventEmailVerified pulumi.BoolOutput `pulumi:"securityEventEmailVerified"`
	// Email to receive system/tunnel status notification emails.
	StatusChangeEmail pulumi.StringOutput `pulumi:"statusChangeEmail"`
	// Whether status change notification email is verified.
	StatusChangeEmailVerified pulumi.BoolOutput `pulumi:"statusChangeEmailVerified"`
	// Status change notification interval in seconds. Default value: 60.
	StatusChangeNotificationInterval pulumi.IntPtrOutput `pulumi:"statusChangeNotificationInterval"`
}

The **aviatrix_controller_email_config** resource allows management of an Aviatrix Controller's notification email configurations.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerEmailConfig(ctx, "testEmailConfig", &aviatrix.AviatrixControllerEmailConfigArgs{
			AdminAlertEmail:    pulumi.String("administrator@mycompany.com"),
			CriticalAlertEmail: pulumi.String("it-support@mycompany.com"),
			SecurityEventEmail: pulumi.String("security-admin-group@mycompany.com"),
			StatusChangeEmail:  pulumi.String("it-admin-group@mycompany.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerEmailConfig(ctx, "testEmailConfig", &aviatrix.AviatrixControllerEmailConfigArgs{
			AdminAlertEmail:                  pulumi.String("administrator@mycompany.com"),
			CriticalAlertEmail:               pulumi.String("it-support@mycompany.com"),
			SecurityEventEmail:               pulumi.String("security-admin-group@mycompany.com"),
			StatusChangeEmail:                pulumi.String("it-admin-group@mycompany.com"),
			StatusChangeNotificationInterval: pulumi.Int(20),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance controller_email_config can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerEmailConfig:AviatrixControllerEmailConfig test 10-11-12-13

```

func GetAviatrixControllerEmailConfig

func GetAviatrixControllerEmailConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerEmailConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerEmailConfig, error)

GetAviatrixControllerEmailConfig gets an existing AviatrixControllerEmailConfig 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 NewAviatrixControllerEmailConfig

func NewAviatrixControllerEmailConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerEmailConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerEmailConfig, error)

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

func (*AviatrixControllerEmailConfig) ElementType

func (*AviatrixControllerEmailConfig) ToAviatrixControllerEmailConfigOutput

func (i *AviatrixControllerEmailConfig) ToAviatrixControllerEmailConfigOutput() AviatrixControllerEmailConfigOutput

func (*AviatrixControllerEmailConfig) ToAviatrixControllerEmailConfigOutputWithContext

func (i *AviatrixControllerEmailConfig) ToAviatrixControllerEmailConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigOutput

type AviatrixControllerEmailConfigArgs

type AviatrixControllerEmailConfigArgs struct {
	// Email to receive important account and certification information.
	AdminAlertEmail pulumi.StringInput
	// Email to receive field notices and critical notices.
	CriticalAlertEmail pulumi.StringInput
	// Email to receive security and CVE (Common Vulnerabilities and Exposures) notification emails.
	SecurityEventEmail pulumi.StringInput
	// Email to receive system/tunnel status notification emails.
	StatusChangeEmail pulumi.StringInput
	// Status change notification interval in seconds. Default value: 60.
	StatusChangeNotificationInterval pulumi.IntPtrInput
}

The set of arguments for constructing a AviatrixControllerEmailConfig resource.

func (AviatrixControllerEmailConfigArgs) ElementType

type AviatrixControllerEmailConfigArray

type AviatrixControllerEmailConfigArray []AviatrixControllerEmailConfigInput

func (AviatrixControllerEmailConfigArray) ElementType

func (AviatrixControllerEmailConfigArray) ToAviatrixControllerEmailConfigArrayOutput

func (i AviatrixControllerEmailConfigArray) ToAviatrixControllerEmailConfigArrayOutput() AviatrixControllerEmailConfigArrayOutput

func (AviatrixControllerEmailConfigArray) ToAviatrixControllerEmailConfigArrayOutputWithContext

func (i AviatrixControllerEmailConfigArray) ToAviatrixControllerEmailConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigArrayOutput

type AviatrixControllerEmailConfigArrayInput

type AviatrixControllerEmailConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerEmailConfigArrayOutput() AviatrixControllerEmailConfigArrayOutput
	ToAviatrixControllerEmailConfigArrayOutputWithContext(context.Context) AviatrixControllerEmailConfigArrayOutput
}

AviatrixControllerEmailConfigArrayInput is an input type that accepts AviatrixControllerEmailConfigArray and AviatrixControllerEmailConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerEmailConfigArrayInput` via:

AviatrixControllerEmailConfigArray{ AviatrixControllerEmailConfigArgs{...} }

type AviatrixControllerEmailConfigArrayOutput

type AviatrixControllerEmailConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailConfigArrayOutput) ElementType

func (AviatrixControllerEmailConfigArrayOutput) Index

func (AviatrixControllerEmailConfigArrayOutput) ToAviatrixControllerEmailConfigArrayOutput

func (o AviatrixControllerEmailConfigArrayOutput) ToAviatrixControllerEmailConfigArrayOutput() AviatrixControllerEmailConfigArrayOutput

func (AviatrixControllerEmailConfigArrayOutput) ToAviatrixControllerEmailConfigArrayOutputWithContext

func (o AviatrixControllerEmailConfigArrayOutput) ToAviatrixControllerEmailConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigArrayOutput

type AviatrixControllerEmailConfigInput

type AviatrixControllerEmailConfigInput interface {
	pulumi.Input

	ToAviatrixControllerEmailConfigOutput() AviatrixControllerEmailConfigOutput
	ToAviatrixControllerEmailConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigOutput
}

type AviatrixControllerEmailConfigMap

type AviatrixControllerEmailConfigMap map[string]AviatrixControllerEmailConfigInput

func (AviatrixControllerEmailConfigMap) ElementType

func (AviatrixControllerEmailConfigMap) ToAviatrixControllerEmailConfigMapOutput

func (i AviatrixControllerEmailConfigMap) ToAviatrixControllerEmailConfigMapOutput() AviatrixControllerEmailConfigMapOutput

func (AviatrixControllerEmailConfigMap) ToAviatrixControllerEmailConfigMapOutputWithContext

func (i AviatrixControllerEmailConfigMap) ToAviatrixControllerEmailConfigMapOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigMapOutput

type AviatrixControllerEmailConfigMapInput

type AviatrixControllerEmailConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerEmailConfigMapOutput() AviatrixControllerEmailConfigMapOutput
	ToAviatrixControllerEmailConfigMapOutputWithContext(context.Context) AviatrixControllerEmailConfigMapOutput
}

AviatrixControllerEmailConfigMapInput is an input type that accepts AviatrixControllerEmailConfigMap and AviatrixControllerEmailConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerEmailConfigMapInput` via:

AviatrixControllerEmailConfigMap{ "key": AviatrixControllerEmailConfigArgs{...} }

type AviatrixControllerEmailConfigMapOutput

type AviatrixControllerEmailConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailConfigMapOutput) ElementType

func (AviatrixControllerEmailConfigMapOutput) MapIndex

func (AviatrixControllerEmailConfigMapOutput) ToAviatrixControllerEmailConfigMapOutput

func (o AviatrixControllerEmailConfigMapOutput) ToAviatrixControllerEmailConfigMapOutput() AviatrixControllerEmailConfigMapOutput

func (AviatrixControllerEmailConfigMapOutput) ToAviatrixControllerEmailConfigMapOutputWithContext

func (o AviatrixControllerEmailConfigMapOutput) ToAviatrixControllerEmailConfigMapOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigMapOutput

type AviatrixControllerEmailConfigOutput

type AviatrixControllerEmailConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailConfigOutput) AdminAlertEmail

Email to receive important account and certification information.

func (AviatrixControllerEmailConfigOutput) AdminAlertEmailVerified

func (o AviatrixControllerEmailConfigOutput) AdminAlertEmailVerified() pulumi.BoolOutput

Whether admin alert notification email is verified.

func (AviatrixControllerEmailConfigOutput) CriticalAlertEmail

Email to receive field notices and critical notices.

func (AviatrixControllerEmailConfigOutput) CriticalAlertEmailVerified

func (o AviatrixControllerEmailConfigOutput) CriticalAlertEmailVerified() pulumi.BoolOutput

Whether critical alert notification email is verified.

func (AviatrixControllerEmailConfigOutput) ElementType

func (AviatrixControllerEmailConfigOutput) SecurityEventEmail

Email to receive security and CVE (Common Vulnerabilities and Exposures) notification emails.

func (AviatrixControllerEmailConfigOutput) SecurityEventEmailVerified

func (o AviatrixControllerEmailConfigOutput) SecurityEventEmailVerified() pulumi.BoolOutput

Whether security event notification email is verified.

func (AviatrixControllerEmailConfigOutput) StatusChangeEmail

Email to receive system/tunnel status notification emails.

func (AviatrixControllerEmailConfigOutput) StatusChangeEmailVerified

func (o AviatrixControllerEmailConfigOutput) StatusChangeEmailVerified() pulumi.BoolOutput

Whether status change notification email is verified.

func (AviatrixControllerEmailConfigOutput) StatusChangeNotificationInterval

func (o AviatrixControllerEmailConfigOutput) StatusChangeNotificationInterval() pulumi.IntPtrOutput

Status change notification interval in seconds. Default value: 60.

func (AviatrixControllerEmailConfigOutput) ToAviatrixControllerEmailConfigOutput

func (o AviatrixControllerEmailConfigOutput) ToAviatrixControllerEmailConfigOutput() AviatrixControllerEmailConfigOutput

func (AviatrixControllerEmailConfigOutput) ToAviatrixControllerEmailConfigOutputWithContext

func (o AviatrixControllerEmailConfigOutput) ToAviatrixControllerEmailConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailConfigOutput

type AviatrixControllerEmailConfigState

type AviatrixControllerEmailConfigState struct {
	// Email to receive important account and certification information.
	AdminAlertEmail pulumi.StringPtrInput
	// Whether admin alert notification email is verified.
	AdminAlertEmailVerified pulumi.BoolPtrInput
	// Email to receive field notices and critical notices.
	CriticalAlertEmail pulumi.StringPtrInput
	// Whether critical alert notification email is verified.
	CriticalAlertEmailVerified pulumi.BoolPtrInput
	// Email to receive security and CVE (Common Vulnerabilities and Exposures) notification emails.
	SecurityEventEmail pulumi.StringPtrInput
	// Whether security event notification email is verified.
	SecurityEventEmailVerified pulumi.BoolPtrInput
	// Email to receive system/tunnel status notification emails.
	StatusChangeEmail pulumi.StringPtrInput
	// Whether status change notification email is verified.
	StatusChangeEmailVerified pulumi.BoolPtrInput
	// Status change notification interval in seconds. Default value: 60.
	StatusChangeNotificationInterval pulumi.IntPtrInput
}

func (AviatrixControllerEmailConfigState) ElementType

type AviatrixControllerEmailExceptionNotificationConfig

type AviatrixControllerEmailExceptionNotificationConfig struct {
	pulumi.CustomResourceState

	// Enable exception email notification. When set to true, exception email will be sent to "exception@aviatrix.com", when set to false, exception email will be sent to controller's admin email. Valid values: true, false. Default value: true.
	EnableEmailExceptionNotification pulumi.BoolPtrOutput `pulumi:"enableEmailExceptionNotification"`
}

The **aviatrix_controller_email_exception_notification_config** resource allows management of an Aviatrix Controller's email exception notification config. This resource is available as of provider version R2.19+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerEmailExceptionNotificationConfig(ctx, "test", &aviatrix.AviatrixControllerEmailExceptionNotificationConfigArgs{
			EnableEmailExceptionNotification: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_controller_email_exception_notification_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerEmailExceptionNotificationConfig:AviatrixControllerEmailExceptionNotificationConfig test 10-11-12-13

```

func GetAviatrixControllerEmailExceptionNotificationConfig

GetAviatrixControllerEmailExceptionNotificationConfig gets an existing AviatrixControllerEmailExceptionNotificationConfig 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 NewAviatrixControllerEmailExceptionNotificationConfig

func NewAviatrixControllerEmailExceptionNotificationConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerEmailExceptionNotificationConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerEmailExceptionNotificationConfig, error)

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

func (*AviatrixControllerEmailExceptionNotificationConfig) ElementType

func (*AviatrixControllerEmailExceptionNotificationConfig) ToAviatrixControllerEmailExceptionNotificationConfigOutput

func (i *AviatrixControllerEmailExceptionNotificationConfig) ToAviatrixControllerEmailExceptionNotificationConfigOutput() AviatrixControllerEmailExceptionNotificationConfigOutput

func (*AviatrixControllerEmailExceptionNotificationConfig) ToAviatrixControllerEmailExceptionNotificationConfigOutputWithContext

func (i *AviatrixControllerEmailExceptionNotificationConfig) ToAviatrixControllerEmailExceptionNotificationConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigOutput

type AviatrixControllerEmailExceptionNotificationConfigArgs

type AviatrixControllerEmailExceptionNotificationConfigArgs struct {
	// Enable exception email notification. When set to true, exception email will be sent to "exception@aviatrix.com", when set to false, exception email will be sent to controller's admin email. Valid values: true, false. Default value: true.
	EnableEmailExceptionNotification pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixControllerEmailExceptionNotificationConfig resource.

func (AviatrixControllerEmailExceptionNotificationConfigArgs) ElementType

type AviatrixControllerEmailExceptionNotificationConfigArray

type AviatrixControllerEmailExceptionNotificationConfigArray []AviatrixControllerEmailExceptionNotificationConfigInput

func (AviatrixControllerEmailExceptionNotificationConfigArray) ElementType

func (AviatrixControllerEmailExceptionNotificationConfigArray) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutput

func (i AviatrixControllerEmailExceptionNotificationConfigArray) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutput() AviatrixControllerEmailExceptionNotificationConfigArrayOutput

func (AviatrixControllerEmailExceptionNotificationConfigArray) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutputWithContext

func (i AviatrixControllerEmailExceptionNotificationConfigArray) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigArrayOutput

type AviatrixControllerEmailExceptionNotificationConfigArrayInput

type AviatrixControllerEmailExceptionNotificationConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerEmailExceptionNotificationConfigArrayOutput() AviatrixControllerEmailExceptionNotificationConfigArrayOutput
	ToAviatrixControllerEmailExceptionNotificationConfigArrayOutputWithContext(context.Context) AviatrixControllerEmailExceptionNotificationConfigArrayOutput
}

AviatrixControllerEmailExceptionNotificationConfigArrayInput is an input type that accepts AviatrixControllerEmailExceptionNotificationConfigArray and AviatrixControllerEmailExceptionNotificationConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerEmailExceptionNotificationConfigArrayInput` via:

AviatrixControllerEmailExceptionNotificationConfigArray{ AviatrixControllerEmailExceptionNotificationConfigArgs{...} }

type AviatrixControllerEmailExceptionNotificationConfigArrayOutput

type AviatrixControllerEmailExceptionNotificationConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailExceptionNotificationConfigArrayOutput) ElementType

func (AviatrixControllerEmailExceptionNotificationConfigArrayOutput) Index

func (AviatrixControllerEmailExceptionNotificationConfigArrayOutput) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutput

func (AviatrixControllerEmailExceptionNotificationConfigArrayOutput) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutputWithContext

func (o AviatrixControllerEmailExceptionNotificationConfigArrayOutput) ToAviatrixControllerEmailExceptionNotificationConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigArrayOutput

type AviatrixControllerEmailExceptionNotificationConfigInput

type AviatrixControllerEmailExceptionNotificationConfigInput interface {
	pulumi.Input

	ToAviatrixControllerEmailExceptionNotificationConfigOutput() AviatrixControllerEmailExceptionNotificationConfigOutput
	ToAviatrixControllerEmailExceptionNotificationConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigOutput
}

type AviatrixControllerEmailExceptionNotificationConfigMap

type AviatrixControllerEmailExceptionNotificationConfigMap map[string]AviatrixControllerEmailExceptionNotificationConfigInput

func (AviatrixControllerEmailExceptionNotificationConfigMap) ElementType

func (AviatrixControllerEmailExceptionNotificationConfigMap) ToAviatrixControllerEmailExceptionNotificationConfigMapOutput

func (i AviatrixControllerEmailExceptionNotificationConfigMap) ToAviatrixControllerEmailExceptionNotificationConfigMapOutput() AviatrixControllerEmailExceptionNotificationConfigMapOutput

func (AviatrixControllerEmailExceptionNotificationConfigMap) ToAviatrixControllerEmailExceptionNotificationConfigMapOutputWithContext

func (i AviatrixControllerEmailExceptionNotificationConfigMap) ToAviatrixControllerEmailExceptionNotificationConfigMapOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigMapOutput

type AviatrixControllerEmailExceptionNotificationConfigMapInput

type AviatrixControllerEmailExceptionNotificationConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerEmailExceptionNotificationConfigMapOutput() AviatrixControllerEmailExceptionNotificationConfigMapOutput
	ToAviatrixControllerEmailExceptionNotificationConfigMapOutputWithContext(context.Context) AviatrixControllerEmailExceptionNotificationConfigMapOutput
}

AviatrixControllerEmailExceptionNotificationConfigMapInput is an input type that accepts AviatrixControllerEmailExceptionNotificationConfigMap and AviatrixControllerEmailExceptionNotificationConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerEmailExceptionNotificationConfigMapInput` via:

AviatrixControllerEmailExceptionNotificationConfigMap{ "key": AviatrixControllerEmailExceptionNotificationConfigArgs{...} }

type AviatrixControllerEmailExceptionNotificationConfigMapOutput

type AviatrixControllerEmailExceptionNotificationConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailExceptionNotificationConfigMapOutput) ElementType

func (AviatrixControllerEmailExceptionNotificationConfigMapOutput) MapIndex

func (AviatrixControllerEmailExceptionNotificationConfigMapOutput) ToAviatrixControllerEmailExceptionNotificationConfigMapOutput

func (AviatrixControllerEmailExceptionNotificationConfigMapOutput) ToAviatrixControllerEmailExceptionNotificationConfigMapOutputWithContext

func (o AviatrixControllerEmailExceptionNotificationConfigMapOutput) ToAviatrixControllerEmailExceptionNotificationConfigMapOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigMapOutput

type AviatrixControllerEmailExceptionNotificationConfigOutput

type AviatrixControllerEmailExceptionNotificationConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerEmailExceptionNotificationConfigOutput) ElementType

func (AviatrixControllerEmailExceptionNotificationConfigOutput) EnableEmailExceptionNotification

Enable exception email notification. When set to true, exception email will be sent to "exception@aviatrix.com", when set to false, exception email will be sent to controller's admin email. Valid values: true, false. Default value: true.

func (AviatrixControllerEmailExceptionNotificationConfigOutput) ToAviatrixControllerEmailExceptionNotificationConfigOutput

func (AviatrixControllerEmailExceptionNotificationConfigOutput) ToAviatrixControllerEmailExceptionNotificationConfigOutputWithContext

func (o AviatrixControllerEmailExceptionNotificationConfigOutput) ToAviatrixControllerEmailExceptionNotificationConfigOutputWithContext(ctx context.Context) AviatrixControllerEmailExceptionNotificationConfigOutput

type AviatrixControllerEmailExceptionNotificationConfigState

type AviatrixControllerEmailExceptionNotificationConfigState struct {
	// Enable exception email notification. When set to true, exception email will be sent to "exception@aviatrix.com", when set to false, exception email will be sent to controller's admin email. Valid values: true, false. Default value: true.
	EnableEmailExceptionNotification pulumi.BoolPtrInput
}

func (AviatrixControllerEmailExceptionNotificationConfigState) ElementType

type AviatrixControllerGatewayKeepaliveConfig

type AviatrixControllerGatewayKeepaliveConfig struct {
	pulumi.CustomResourceState

	// The gateway keepalive template name. Must be one of "slow", "medium" or "fast". Visit [here](https://docs.aviatrix.com/HowTos/gateway.html#gateway-keepalives) for the complete documentation about the gateway keepalive configuration.
	KeepaliveSpeed pulumi.StringOutput `pulumi:"keepaliveSpeed"`
}

The **aviatrix_controller_gateway_keepalive_config** resource allows management of an Aviatrix Controller's gateway keepalive template configuration. This resource is available as of provider version R2.19.2+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerGatewayKeepaliveConfig(ctx, "testGatewayKeepalive", &aviatrix.AviatrixControllerGatewayKeepaliveConfigArgs{
			KeepaliveSpeed: pulumi.String("medium"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_controller_gateway_keepalive_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerGatewayKeepaliveConfig:AviatrixControllerGatewayKeepaliveConfig test_gateway_keepalive 10-11-12-13

```

func GetAviatrixControllerGatewayKeepaliveConfig

func GetAviatrixControllerGatewayKeepaliveConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerGatewayKeepaliveConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerGatewayKeepaliveConfig, error)

GetAviatrixControllerGatewayKeepaliveConfig gets an existing AviatrixControllerGatewayKeepaliveConfig 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 NewAviatrixControllerGatewayKeepaliveConfig

func NewAviatrixControllerGatewayKeepaliveConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerGatewayKeepaliveConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerGatewayKeepaliveConfig, error)

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

func (*AviatrixControllerGatewayKeepaliveConfig) ElementType

func (*AviatrixControllerGatewayKeepaliveConfig) ToAviatrixControllerGatewayKeepaliveConfigOutput

func (i *AviatrixControllerGatewayKeepaliveConfig) ToAviatrixControllerGatewayKeepaliveConfigOutput() AviatrixControllerGatewayKeepaliveConfigOutput

func (*AviatrixControllerGatewayKeepaliveConfig) ToAviatrixControllerGatewayKeepaliveConfigOutputWithContext

func (i *AviatrixControllerGatewayKeepaliveConfig) ToAviatrixControllerGatewayKeepaliveConfigOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigOutput

type AviatrixControllerGatewayKeepaliveConfigArgs

type AviatrixControllerGatewayKeepaliveConfigArgs struct {
	// The gateway keepalive template name. Must be one of "slow", "medium" or "fast". Visit [here](https://docs.aviatrix.com/HowTos/gateway.html#gateway-keepalives) for the complete documentation about the gateway keepalive configuration.
	KeepaliveSpeed pulumi.StringInput
}

The set of arguments for constructing a AviatrixControllerGatewayKeepaliveConfig resource.

func (AviatrixControllerGatewayKeepaliveConfigArgs) ElementType

type AviatrixControllerGatewayKeepaliveConfigArray

type AviatrixControllerGatewayKeepaliveConfigArray []AviatrixControllerGatewayKeepaliveConfigInput

func (AviatrixControllerGatewayKeepaliveConfigArray) ElementType

func (AviatrixControllerGatewayKeepaliveConfigArray) ToAviatrixControllerGatewayKeepaliveConfigArrayOutput

func (i AviatrixControllerGatewayKeepaliveConfigArray) ToAviatrixControllerGatewayKeepaliveConfigArrayOutput() AviatrixControllerGatewayKeepaliveConfigArrayOutput

func (AviatrixControllerGatewayKeepaliveConfigArray) ToAviatrixControllerGatewayKeepaliveConfigArrayOutputWithContext

func (i AviatrixControllerGatewayKeepaliveConfigArray) ToAviatrixControllerGatewayKeepaliveConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigArrayOutput

type AviatrixControllerGatewayKeepaliveConfigArrayInput

type AviatrixControllerGatewayKeepaliveConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerGatewayKeepaliveConfigArrayOutput() AviatrixControllerGatewayKeepaliveConfigArrayOutput
	ToAviatrixControllerGatewayKeepaliveConfigArrayOutputWithContext(context.Context) AviatrixControllerGatewayKeepaliveConfigArrayOutput
}

AviatrixControllerGatewayKeepaliveConfigArrayInput is an input type that accepts AviatrixControllerGatewayKeepaliveConfigArray and AviatrixControllerGatewayKeepaliveConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerGatewayKeepaliveConfigArrayInput` via:

AviatrixControllerGatewayKeepaliveConfigArray{ AviatrixControllerGatewayKeepaliveConfigArgs{...} }

type AviatrixControllerGatewayKeepaliveConfigArrayOutput

type AviatrixControllerGatewayKeepaliveConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerGatewayKeepaliveConfigArrayOutput) ElementType

func (AviatrixControllerGatewayKeepaliveConfigArrayOutput) Index

func (AviatrixControllerGatewayKeepaliveConfigArrayOutput) ToAviatrixControllerGatewayKeepaliveConfigArrayOutput

func (o AviatrixControllerGatewayKeepaliveConfigArrayOutput) ToAviatrixControllerGatewayKeepaliveConfigArrayOutput() AviatrixControllerGatewayKeepaliveConfigArrayOutput

func (AviatrixControllerGatewayKeepaliveConfigArrayOutput) ToAviatrixControllerGatewayKeepaliveConfigArrayOutputWithContext

func (o AviatrixControllerGatewayKeepaliveConfigArrayOutput) ToAviatrixControllerGatewayKeepaliveConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigArrayOutput

type AviatrixControllerGatewayKeepaliveConfigInput

type AviatrixControllerGatewayKeepaliveConfigInput interface {
	pulumi.Input

	ToAviatrixControllerGatewayKeepaliveConfigOutput() AviatrixControllerGatewayKeepaliveConfigOutput
	ToAviatrixControllerGatewayKeepaliveConfigOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigOutput
}

type AviatrixControllerGatewayKeepaliveConfigMap

type AviatrixControllerGatewayKeepaliveConfigMap map[string]AviatrixControllerGatewayKeepaliveConfigInput

func (AviatrixControllerGatewayKeepaliveConfigMap) ElementType

func (AviatrixControllerGatewayKeepaliveConfigMap) ToAviatrixControllerGatewayKeepaliveConfigMapOutput

func (i AviatrixControllerGatewayKeepaliveConfigMap) ToAviatrixControllerGatewayKeepaliveConfigMapOutput() AviatrixControllerGatewayKeepaliveConfigMapOutput

func (AviatrixControllerGatewayKeepaliveConfigMap) ToAviatrixControllerGatewayKeepaliveConfigMapOutputWithContext

func (i AviatrixControllerGatewayKeepaliveConfigMap) ToAviatrixControllerGatewayKeepaliveConfigMapOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigMapOutput

type AviatrixControllerGatewayKeepaliveConfigMapInput

type AviatrixControllerGatewayKeepaliveConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerGatewayKeepaliveConfigMapOutput() AviatrixControllerGatewayKeepaliveConfigMapOutput
	ToAviatrixControllerGatewayKeepaliveConfigMapOutputWithContext(context.Context) AviatrixControllerGatewayKeepaliveConfigMapOutput
}

AviatrixControllerGatewayKeepaliveConfigMapInput is an input type that accepts AviatrixControllerGatewayKeepaliveConfigMap and AviatrixControllerGatewayKeepaliveConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerGatewayKeepaliveConfigMapInput` via:

AviatrixControllerGatewayKeepaliveConfigMap{ "key": AviatrixControllerGatewayKeepaliveConfigArgs{...} }

type AviatrixControllerGatewayKeepaliveConfigMapOutput

type AviatrixControllerGatewayKeepaliveConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerGatewayKeepaliveConfigMapOutput) ElementType

func (AviatrixControllerGatewayKeepaliveConfigMapOutput) MapIndex

func (AviatrixControllerGatewayKeepaliveConfigMapOutput) ToAviatrixControllerGatewayKeepaliveConfigMapOutput

func (o AviatrixControllerGatewayKeepaliveConfigMapOutput) ToAviatrixControllerGatewayKeepaliveConfigMapOutput() AviatrixControllerGatewayKeepaliveConfigMapOutput

func (AviatrixControllerGatewayKeepaliveConfigMapOutput) ToAviatrixControllerGatewayKeepaliveConfigMapOutputWithContext

func (o AviatrixControllerGatewayKeepaliveConfigMapOutput) ToAviatrixControllerGatewayKeepaliveConfigMapOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigMapOutput

type AviatrixControllerGatewayKeepaliveConfigOutput

type AviatrixControllerGatewayKeepaliveConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerGatewayKeepaliveConfigOutput) ElementType

func (AviatrixControllerGatewayKeepaliveConfigOutput) KeepaliveSpeed

The gateway keepalive template name. Must be one of "slow", "medium" or "fast". Visit [here](https://docs.aviatrix.com/HowTos/gateway.html#gateway-keepalives) for the complete documentation about the gateway keepalive configuration.

func (AviatrixControllerGatewayKeepaliveConfigOutput) ToAviatrixControllerGatewayKeepaliveConfigOutput

func (o AviatrixControllerGatewayKeepaliveConfigOutput) ToAviatrixControllerGatewayKeepaliveConfigOutput() AviatrixControllerGatewayKeepaliveConfigOutput

func (AviatrixControllerGatewayKeepaliveConfigOutput) ToAviatrixControllerGatewayKeepaliveConfigOutputWithContext

func (o AviatrixControllerGatewayKeepaliveConfigOutput) ToAviatrixControllerGatewayKeepaliveConfigOutputWithContext(ctx context.Context) AviatrixControllerGatewayKeepaliveConfigOutput

type AviatrixControllerGatewayKeepaliveConfigState

type AviatrixControllerGatewayKeepaliveConfigState struct {
	// The gateway keepalive template name. Must be one of "slow", "medium" or "fast". Visit [here](https://docs.aviatrix.com/HowTos/gateway.html#gateway-keepalives) for the complete documentation about the gateway keepalive configuration.
	KeepaliveSpeed pulumi.StringPtrInput
}

func (AviatrixControllerGatewayKeepaliveConfigState) ElementType

type AviatrixControllerPrivateModeConfig

type AviatrixControllerPrivateModeConfig struct {
	pulumi.CustomResourceState

	// Instance ID of a copilot instance to associate with an Aviatrix Controller in Private Mode. The copilot instance must be in the same VPC as the Aviatrix Controller.
	CopilotInstanceId pulumi.StringPtrOutput `pulumi:"copilotInstanceId"`
	// Whether to enable Private Mode on an Aviatrix Controller.
	EnablePrivateMode pulumi.BoolOutput `pulumi:"enablePrivateMode"`
	// Set of Controller proxies for Private Mode.
	Proxies pulumi.StringArrayOutput `pulumi:"proxies"`
}

The **aviatrix_controller_private_mode_config** resource allows management of an Aviatrix Controller's Private Mode configuration. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerPrivateModeConfig(ctx, "test", &aviatrix.AviatrixControllerPrivateModeConfigArgs{
			EnablePrivateMode: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_controller_private_mode_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerPrivateModeConfig:AviatrixControllerPrivateModeConfig test 10-11-12-13

```

func GetAviatrixControllerPrivateModeConfig

func GetAviatrixControllerPrivateModeConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerPrivateModeConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerPrivateModeConfig, error)

GetAviatrixControllerPrivateModeConfig gets an existing AviatrixControllerPrivateModeConfig 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 NewAviatrixControllerPrivateModeConfig

func NewAviatrixControllerPrivateModeConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerPrivateModeConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerPrivateModeConfig, error)

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

func (*AviatrixControllerPrivateModeConfig) ElementType

func (*AviatrixControllerPrivateModeConfig) ToAviatrixControllerPrivateModeConfigOutput

func (i *AviatrixControllerPrivateModeConfig) ToAviatrixControllerPrivateModeConfigOutput() AviatrixControllerPrivateModeConfigOutput

func (*AviatrixControllerPrivateModeConfig) ToAviatrixControllerPrivateModeConfigOutputWithContext

func (i *AviatrixControllerPrivateModeConfig) ToAviatrixControllerPrivateModeConfigOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigOutput

type AviatrixControllerPrivateModeConfigArgs

type AviatrixControllerPrivateModeConfigArgs struct {
	// Instance ID of a copilot instance to associate with an Aviatrix Controller in Private Mode. The copilot instance must be in the same VPC as the Aviatrix Controller.
	CopilotInstanceId pulumi.StringPtrInput
	// Whether to enable Private Mode on an Aviatrix Controller.
	EnablePrivateMode pulumi.BoolInput
	// Set of Controller proxies for Private Mode.
	Proxies pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixControllerPrivateModeConfig resource.

func (AviatrixControllerPrivateModeConfigArgs) ElementType

type AviatrixControllerPrivateModeConfigArray

type AviatrixControllerPrivateModeConfigArray []AviatrixControllerPrivateModeConfigInput

func (AviatrixControllerPrivateModeConfigArray) ElementType

func (AviatrixControllerPrivateModeConfigArray) ToAviatrixControllerPrivateModeConfigArrayOutput

func (i AviatrixControllerPrivateModeConfigArray) ToAviatrixControllerPrivateModeConfigArrayOutput() AviatrixControllerPrivateModeConfigArrayOutput

func (AviatrixControllerPrivateModeConfigArray) ToAviatrixControllerPrivateModeConfigArrayOutputWithContext

func (i AviatrixControllerPrivateModeConfigArray) ToAviatrixControllerPrivateModeConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigArrayOutput

type AviatrixControllerPrivateModeConfigArrayInput

type AviatrixControllerPrivateModeConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateModeConfigArrayOutput() AviatrixControllerPrivateModeConfigArrayOutput
	ToAviatrixControllerPrivateModeConfigArrayOutputWithContext(context.Context) AviatrixControllerPrivateModeConfigArrayOutput
}

AviatrixControllerPrivateModeConfigArrayInput is an input type that accepts AviatrixControllerPrivateModeConfigArray and AviatrixControllerPrivateModeConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerPrivateModeConfigArrayInput` via:

AviatrixControllerPrivateModeConfigArray{ AviatrixControllerPrivateModeConfigArgs{...} }

type AviatrixControllerPrivateModeConfigArrayOutput

type AviatrixControllerPrivateModeConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateModeConfigArrayOutput) ElementType

func (AviatrixControllerPrivateModeConfigArrayOutput) Index

func (AviatrixControllerPrivateModeConfigArrayOutput) ToAviatrixControllerPrivateModeConfigArrayOutput

func (o AviatrixControllerPrivateModeConfigArrayOutput) ToAviatrixControllerPrivateModeConfigArrayOutput() AviatrixControllerPrivateModeConfigArrayOutput

func (AviatrixControllerPrivateModeConfigArrayOutput) ToAviatrixControllerPrivateModeConfigArrayOutputWithContext

func (o AviatrixControllerPrivateModeConfigArrayOutput) ToAviatrixControllerPrivateModeConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigArrayOutput

type AviatrixControllerPrivateModeConfigInput

type AviatrixControllerPrivateModeConfigInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateModeConfigOutput() AviatrixControllerPrivateModeConfigOutput
	ToAviatrixControllerPrivateModeConfigOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigOutput
}

type AviatrixControllerPrivateModeConfigMap

type AviatrixControllerPrivateModeConfigMap map[string]AviatrixControllerPrivateModeConfigInput

func (AviatrixControllerPrivateModeConfigMap) ElementType

func (AviatrixControllerPrivateModeConfigMap) ToAviatrixControllerPrivateModeConfigMapOutput

func (i AviatrixControllerPrivateModeConfigMap) ToAviatrixControllerPrivateModeConfigMapOutput() AviatrixControllerPrivateModeConfigMapOutput

func (AviatrixControllerPrivateModeConfigMap) ToAviatrixControllerPrivateModeConfigMapOutputWithContext

func (i AviatrixControllerPrivateModeConfigMap) ToAviatrixControllerPrivateModeConfigMapOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigMapOutput

type AviatrixControllerPrivateModeConfigMapInput

type AviatrixControllerPrivateModeConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateModeConfigMapOutput() AviatrixControllerPrivateModeConfigMapOutput
	ToAviatrixControllerPrivateModeConfigMapOutputWithContext(context.Context) AviatrixControllerPrivateModeConfigMapOutput
}

AviatrixControllerPrivateModeConfigMapInput is an input type that accepts AviatrixControllerPrivateModeConfigMap and AviatrixControllerPrivateModeConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerPrivateModeConfigMapInput` via:

AviatrixControllerPrivateModeConfigMap{ "key": AviatrixControllerPrivateModeConfigArgs{...} }

type AviatrixControllerPrivateModeConfigMapOutput

type AviatrixControllerPrivateModeConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateModeConfigMapOutput) ElementType

func (AviatrixControllerPrivateModeConfigMapOutput) MapIndex

func (AviatrixControllerPrivateModeConfigMapOutput) ToAviatrixControllerPrivateModeConfigMapOutput

func (o AviatrixControllerPrivateModeConfigMapOutput) ToAviatrixControllerPrivateModeConfigMapOutput() AviatrixControllerPrivateModeConfigMapOutput

func (AviatrixControllerPrivateModeConfigMapOutput) ToAviatrixControllerPrivateModeConfigMapOutputWithContext

func (o AviatrixControllerPrivateModeConfigMapOutput) ToAviatrixControllerPrivateModeConfigMapOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigMapOutput

type AviatrixControllerPrivateModeConfigOutput

type AviatrixControllerPrivateModeConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateModeConfigOutput) CopilotInstanceId

Instance ID of a copilot instance to associate with an Aviatrix Controller in Private Mode. The copilot instance must be in the same VPC as the Aviatrix Controller.

func (AviatrixControllerPrivateModeConfigOutput) ElementType

func (AviatrixControllerPrivateModeConfigOutput) EnablePrivateMode

Whether to enable Private Mode on an Aviatrix Controller.

func (AviatrixControllerPrivateModeConfigOutput) Proxies

Set of Controller proxies for Private Mode.

func (AviatrixControllerPrivateModeConfigOutput) ToAviatrixControllerPrivateModeConfigOutput

func (o AviatrixControllerPrivateModeConfigOutput) ToAviatrixControllerPrivateModeConfigOutput() AviatrixControllerPrivateModeConfigOutput

func (AviatrixControllerPrivateModeConfigOutput) ToAviatrixControllerPrivateModeConfigOutputWithContext

func (o AviatrixControllerPrivateModeConfigOutput) ToAviatrixControllerPrivateModeConfigOutputWithContext(ctx context.Context) AviatrixControllerPrivateModeConfigOutput

type AviatrixControllerPrivateModeConfigState

type AviatrixControllerPrivateModeConfigState struct {
	// Instance ID of a copilot instance to associate with an Aviatrix Controller in Private Mode. The copilot instance must be in the same VPC as the Aviatrix Controller.
	CopilotInstanceId pulumi.StringPtrInput
	// Whether to enable Private Mode on an Aviatrix Controller.
	EnablePrivateMode pulumi.BoolPtrInput
	// Set of Controller proxies for Private Mode.
	Proxies pulumi.StringArrayInput
}

func (AviatrixControllerPrivateModeConfigState) ElementType

type AviatrixControllerPrivateOob

type AviatrixControllerPrivateOob struct {
	pulumi.CustomResourceState

	// Switch to enable/disable Aviatrix controller private OOB. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrOutput `pulumi:"enablePrivateOob"`
}

The **aviatrix_controller_private_oob** resource allows management of an Aviatrix Controller's private OOB configurations.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerPrivateOob(ctx, "testPrivateOob", &aviatrix.AviatrixControllerPrivateOobArgs{
			EnablePrivateOob: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**controller_private_oob** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerPrivateOob:AviatrixControllerPrivateOob test 10-11-12-13

```

func GetAviatrixControllerPrivateOob

func GetAviatrixControllerPrivateOob(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerPrivateOobState, opts ...pulumi.ResourceOption) (*AviatrixControllerPrivateOob, error)

GetAviatrixControllerPrivateOob gets an existing AviatrixControllerPrivateOob 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 NewAviatrixControllerPrivateOob

func NewAviatrixControllerPrivateOob(ctx *pulumi.Context,
	name string, args *AviatrixControllerPrivateOobArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerPrivateOob, error)

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

func (*AviatrixControllerPrivateOob) ElementType

func (*AviatrixControllerPrivateOob) ElementType() reflect.Type

func (*AviatrixControllerPrivateOob) ToAviatrixControllerPrivateOobOutput

func (i *AviatrixControllerPrivateOob) ToAviatrixControllerPrivateOobOutput() AviatrixControllerPrivateOobOutput

func (*AviatrixControllerPrivateOob) ToAviatrixControllerPrivateOobOutputWithContext

func (i *AviatrixControllerPrivateOob) ToAviatrixControllerPrivateOobOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobOutput

type AviatrixControllerPrivateOobArgs

type AviatrixControllerPrivateOobArgs struct {
	// Switch to enable/disable Aviatrix controller private OOB. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixControllerPrivateOob resource.

func (AviatrixControllerPrivateOobArgs) ElementType

type AviatrixControllerPrivateOobArray

type AviatrixControllerPrivateOobArray []AviatrixControllerPrivateOobInput

func (AviatrixControllerPrivateOobArray) ElementType

func (AviatrixControllerPrivateOobArray) ToAviatrixControllerPrivateOobArrayOutput

func (i AviatrixControllerPrivateOobArray) ToAviatrixControllerPrivateOobArrayOutput() AviatrixControllerPrivateOobArrayOutput

func (AviatrixControllerPrivateOobArray) ToAviatrixControllerPrivateOobArrayOutputWithContext

func (i AviatrixControllerPrivateOobArray) ToAviatrixControllerPrivateOobArrayOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobArrayOutput

type AviatrixControllerPrivateOobArrayInput

type AviatrixControllerPrivateOobArrayInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateOobArrayOutput() AviatrixControllerPrivateOobArrayOutput
	ToAviatrixControllerPrivateOobArrayOutputWithContext(context.Context) AviatrixControllerPrivateOobArrayOutput
}

AviatrixControllerPrivateOobArrayInput is an input type that accepts AviatrixControllerPrivateOobArray and AviatrixControllerPrivateOobArrayOutput values. You can construct a concrete instance of `AviatrixControllerPrivateOobArrayInput` via:

AviatrixControllerPrivateOobArray{ AviatrixControllerPrivateOobArgs{...} }

type AviatrixControllerPrivateOobArrayOutput

type AviatrixControllerPrivateOobArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateOobArrayOutput) ElementType

func (AviatrixControllerPrivateOobArrayOutput) Index

func (AviatrixControllerPrivateOobArrayOutput) ToAviatrixControllerPrivateOobArrayOutput

func (o AviatrixControllerPrivateOobArrayOutput) ToAviatrixControllerPrivateOobArrayOutput() AviatrixControllerPrivateOobArrayOutput

func (AviatrixControllerPrivateOobArrayOutput) ToAviatrixControllerPrivateOobArrayOutputWithContext

func (o AviatrixControllerPrivateOobArrayOutput) ToAviatrixControllerPrivateOobArrayOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobArrayOutput

type AviatrixControllerPrivateOobInput

type AviatrixControllerPrivateOobInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateOobOutput() AviatrixControllerPrivateOobOutput
	ToAviatrixControllerPrivateOobOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobOutput
}

type AviatrixControllerPrivateOobMap

type AviatrixControllerPrivateOobMap map[string]AviatrixControllerPrivateOobInput

func (AviatrixControllerPrivateOobMap) ElementType

func (AviatrixControllerPrivateOobMap) ToAviatrixControllerPrivateOobMapOutput

func (i AviatrixControllerPrivateOobMap) ToAviatrixControllerPrivateOobMapOutput() AviatrixControllerPrivateOobMapOutput

func (AviatrixControllerPrivateOobMap) ToAviatrixControllerPrivateOobMapOutputWithContext

func (i AviatrixControllerPrivateOobMap) ToAviatrixControllerPrivateOobMapOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobMapOutput

type AviatrixControllerPrivateOobMapInput

type AviatrixControllerPrivateOobMapInput interface {
	pulumi.Input

	ToAviatrixControllerPrivateOobMapOutput() AviatrixControllerPrivateOobMapOutput
	ToAviatrixControllerPrivateOobMapOutputWithContext(context.Context) AviatrixControllerPrivateOobMapOutput
}

AviatrixControllerPrivateOobMapInput is an input type that accepts AviatrixControllerPrivateOobMap and AviatrixControllerPrivateOobMapOutput values. You can construct a concrete instance of `AviatrixControllerPrivateOobMapInput` via:

AviatrixControllerPrivateOobMap{ "key": AviatrixControllerPrivateOobArgs{...} }

type AviatrixControllerPrivateOobMapOutput

type AviatrixControllerPrivateOobMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateOobMapOutput) ElementType

func (AviatrixControllerPrivateOobMapOutput) MapIndex

func (AviatrixControllerPrivateOobMapOutput) ToAviatrixControllerPrivateOobMapOutput

func (o AviatrixControllerPrivateOobMapOutput) ToAviatrixControllerPrivateOobMapOutput() AviatrixControllerPrivateOobMapOutput

func (AviatrixControllerPrivateOobMapOutput) ToAviatrixControllerPrivateOobMapOutputWithContext

func (o AviatrixControllerPrivateOobMapOutput) ToAviatrixControllerPrivateOobMapOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobMapOutput

type AviatrixControllerPrivateOobOutput

type AviatrixControllerPrivateOobOutput struct{ *pulumi.OutputState }

func (AviatrixControllerPrivateOobOutput) ElementType

func (AviatrixControllerPrivateOobOutput) EnablePrivateOob

Switch to enable/disable Aviatrix controller private OOB. Valid values: true, false. Default value: false.

func (AviatrixControllerPrivateOobOutput) ToAviatrixControllerPrivateOobOutput

func (o AviatrixControllerPrivateOobOutput) ToAviatrixControllerPrivateOobOutput() AviatrixControllerPrivateOobOutput

func (AviatrixControllerPrivateOobOutput) ToAviatrixControllerPrivateOobOutputWithContext

func (o AviatrixControllerPrivateOobOutput) ToAviatrixControllerPrivateOobOutputWithContext(ctx context.Context) AviatrixControllerPrivateOobOutput

type AviatrixControllerPrivateOobState

type AviatrixControllerPrivateOobState struct {
	// Switch to enable/disable Aviatrix controller private OOB. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
}

func (AviatrixControllerPrivateOobState) ElementType

type AviatrixControllerSecurityGroupManagementConfig

type AviatrixControllerSecurityGroupManagementConfig struct {
	pulumi.CustomResourceState

	// Select the [primary access account](https://docs.aviatrix.com/HowTos/aviatrix_account.html#setup-primary-access-account-for-aws-cloud).
	AccountName pulumi.StringPtrOutput `pulumi:"accountName"`
	// Enable to allow Controller to automatically manage inbound rules from gateways. Valid values: true, false.
	EnableSecurityGroupManagement pulumi.BoolOutput `pulumi:"enableSecurityGroupManagement"`
}

The **aviatrix_controller_security_group_management_config** resource allows management of an Aviatrix Controller's security group management configurations. This resource is available as of v2.20.1.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerSecurityGroupManagementConfig(ctx, "testSqmConfig", &aviatrix.AviatrixControllerSecurityGroupManagementConfigArgs{
			AccountName:                   pulumi.String("devops"),
			EnableSecurityGroupManagement: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixControllerSecurityGroupManagementConfig(ctx, "testSqmConfig", &aviatrix.AviatrixControllerSecurityGroupManagementConfigArgs{
			EnableSecurityGroupManagement: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance controller_security_group_management_config can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixControllerSecurityGroupManagementConfig:AviatrixControllerSecurityGroupManagementConfig test 10-11-12-13

```

func GetAviatrixControllerSecurityGroupManagementConfig

func GetAviatrixControllerSecurityGroupManagementConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixControllerSecurityGroupManagementConfigState, opts ...pulumi.ResourceOption) (*AviatrixControllerSecurityGroupManagementConfig, error)

GetAviatrixControllerSecurityGroupManagementConfig gets an existing AviatrixControllerSecurityGroupManagementConfig 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 NewAviatrixControllerSecurityGroupManagementConfig

func NewAviatrixControllerSecurityGroupManagementConfig(ctx *pulumi.Context,
	name string, args *AviatrixControllerSecurityGroupManagementConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixControllerSecurityGroupManagementConfig, error)

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

func (*AviatrixControllerSecurityGroupManagementConfig) ElementType

func (*AviatrixControllerSecurityGroupManagementConfig) ToAviatrixControllerSecurityGroupManagementConfigOutput

func (i *AviatrixControllerSecurityGroupManagementConfig) ToAviatrixControllerSecurityGroupManagementConfigOutput() AviatrixControllerSecurityGroupManagementConfigOutput

func (*AviatrixControllerSecurityGroupManagementConfig) ToAviatrixControllerSecurityGroupManagementConfigOutputWithContext

func (i *AviatrixControllerSecurityGroupManagementConfig) ToAviatrixControllerSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigOutput

type AviatrixControllerSecurityGroupManagementConfigArgs

type AviatrixControllerSecurityGroupManagementConfigArgs struct {
	// Select the [primary access account](https://docs.aviatrix.com/HowTos/aviatrix_account.html#setup-primary-access-account-for-aws-cloud).
	AccountName pulumi.StringPtrInput
	// Enable to allow Controller to automatically manage inbound rules from gateways. Valid values: true, false.
	EnableSecurityGroupManagement pulumi.BoolInput
}

The set of arguments for constructing a AviatrixControllerSecurityGroupManagementConfig resource.

func (AviatrixControllerSecurityGroupManagementConfigArgs) ElementType

type AviatrixControllerSecurityGroupManagementConfigArray

type AviatrixControllerSecurityGroupManagementConfigArray []AviatrixControllerSecurityGroupManagementConfigInput

func (AviatrixControllerSecurityGroupManagementConfigArray) ElementType

func (AviatrixControllerSecurityGroupManagementConfigArray) ToAviatrixControllerSecurityGroupManagementConfigArrayOutput

func (i AviatrixControllerSecurityGroupManagementConfigArray) ToAviatrixControllerSecurityGroupManagementConfigArrayOutput() AviatrixControllerSecurityGroupManagementConfigArrayOutput

func (AviatrixControllerSecurityGroupManagementConfigArray) ToAviatrixControllerSecurityGroupManagementConfigArrayOutputWithContext

func (i AviatrixControllerSecurityGroupManagementConfigArray) ToAviatrixControllerSecurityGroupManagementConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigArrayOutput

type AviatrixControllerSecurityGroupManagementConfigArrayInput

type AviatrixControllerSecurityGroupManagementConfigArrayInput interface {
	pulumi.Input

	ToAviatrixControllerSecurityGroupManagementConfigArrayOutput() AviatrixControllerSecurityGroupManagementConfigArrayOutput
	ToAviatrixControllerSecurityGroupManagementConfigArrayOutputWithContext(context.Context) AviatrixControllerSecurityGroupManagementConfigArrayOutput
}

AviatrixControllerSecurityGroupManagementConfigArrayInput is an input type that accepts AviatrixControllerSecurityGroupManagementConfigArray and AviatrixControllerSecurityGroupManagementConfigArrayOutput values. You can construct a concrete instance of `AviatrixControllerSecurityGroupManagementConfigArrayInput` via:

AviatrixControllerSecurityGroupManagementConfigArray{ AviatrixControllerSecurityGroupManagementConfigArgs{...} }

type AviatrixControllerSecurityGroupManagementConfigArrayOutput

type AviatrixControllerSecurityGroupManagementConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixControllerSecurityGroupManagementConfigArrayOutput) ElementType

func (AviatrixControllerSecurityGroupManagementConfigArrayOutput) Index

func (AviatrixControllerSecurityGroupManagementConfigArrayOutput) ToAviatrixControllerSecurityGroupManagementConfigArrayOutput

func (AviatrixControllerSecurityGroupManagementConfigArrayOutput) ToAviatrixControllerSecurityGroupManagementConfigArrayOutputWithContext

func (o AviatrixControllerSecurityGroupManagementConfigArrayOutput) ToAviatrixControllerSecurityGroupManagementConfigArrayOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigArrayOutput

type AviatrixControllerSecurityGroupManagementConfigInput

type AviatrixControllerSecurityGroupManagementConfigInput interface {
	pulumi.Input

	ToAviatrixControllerSecurityGroupManagementConfigOutput() AviatrixControllerSecurityGroupManagementConfigOutput
	ToAviatrixControllerSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigOutput
}

type AviatrixControllerSecurityGroupManagementConfigMap

type AviatrixControllerSecurityGroupManagementConfigMap map[string]AviatrixControllerSecurityGroupManagementConfigInput

func (AviatrixControllerSecurityGroupManagementConfigMap) ElementType

func (AviatrixControllerSecurityGroupManagementConfigMap) ToAviatrixControllerSecurityGroupManagementConfigMapOutput

func (i AviatrixControllerSecurityGroupManagementConfigMap) ToAviatrixControllerSecurityGroupManagementConfigMapOutput() AviatrixControllerSecurityGroupManagementConfigMapOutput

func (AviatrixControllerSecurityGroupManagementConfigMap) ToAviatrixControllerSecurityGroupManagementConfigMapOutputWithContext

func (i AviatrixControllerSecurityGroupManagementConfigMap) ToAviatrixControllerSecurityGroupManagementConfigMapOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigMapOutput

type AviatrixControllerSecurityGroupManagementConfigMapInput

type AviatrixControllerSecurityGroupManagementConfigMapInput interface {
	pulumi.Input

	ToAviatrixControllerSecurityGroupManagementConfigMapOutput() AviatrixControllerSecurityGroupManagementConfigMapOutput
	ToAviatrixControllerSecurityGroupManagementConfigMapOutputWithContext(context.Context) AviatrixControllerSecurityGroupManagementConfigMapOutput
}

AviatrixControllerSecurityGroupManagementConfigMapInput is an input type that accepts AviatrixControllerSecurityGroupManagementConfigMap and AviatrixControllerSecurityGroupManagementConfigMapOutput values. You can construct a concrete instance of `AviatrixControllerSecurityGroupManagementConfigMapInput` via:

AviatrixControllerSecurityGroupManagementConfigMap{ "key": AviatrixControllerSecurityGroupManagementConfigArgs{...} }

type AviatrixControllerSecurityGroupManagementConfigMapOutput

type AviatrixControllerSecurityGroupManagementConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixControllerSecurityGroupManagementConfigMapOutput) ElementType

func (AviatrixControllerSecurityGroupManagementConfigMapOutput) MapIndex

func (AviatrixControllerSecurityGroupManagementConfigMapOutput) ToAviatrixControllerSecurityGroupManagementConfigMapOutput

func (AviatrixControllerSecurityGroupManagementConfigMapOutput) ToAviatrixControllerSecurityGroupManagementConfigMapOutputWithContext

func (o AviatrixControllerSecurityGroupManagementConfigMapOutput) ToAviatrixControllerSecurityGroupManagementConfigMapOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigMapOutput

type AviatrixControllerSecurityGroupManagementConfigOutput

type AviatrixControllerSecurityGroupManagementConfigOutput struct{ *pulumi.OutputState }

func (AviatrixControllerSecurityGroupManagementConfigOutput) AccountName

Select the [primary access account](https://docs.aviatrix.com/HowTos/aviatrix_account.html#setup-primary-access-account-for-aws-cloud).

func (AviatrixControllerSecurityGroupManagementConfigOutput) ElementType

func (AviatrixControllerSecurityGroupManagementConfigOutput) EnableSecurityGroupManagement

Enable to allow Controller to automatically manage inbound rules from gateways. Valid values: true, false.

func (AviatrixControllerSecurityGroupManagementConfigOutput) ToAviatrixControllerSecurityGroupManagementConfigOutput

func (AviatrixControllerSecurityGroupManagementConfigOutput) ToAviatrixControllerSecurityGroupManagementConfigOutputWithContext

func (o AviatrixControllerSecurityGroupManagementConfigOutput) ToAviatrixControllerSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixControllerSecurityGroupManagementConfigOutput

type AviatrixControllerSecurityGroupManagementConfigState

type AviatrixControllerSecurityGroupManagementConfigState struct {
	// Select the [primary access account](https://docs.aviatrix.com/HowTos/aviatrix_account.html#setup-primary-access-account-for-aws-cloud).
	AccountName pulumi.StringPtrInput
	// Enable to allow Controller to automatically manage inbound rules from gateways. Valid values: true, false.
	EnableSecurityGroupManagement pulumi.BoolPtrInput
}

func (AviatrixControllerSecurityGroupManagementConfigState) ElementType

type AviatrixCopilotAssociation

type AviatrixCopilotAssociation struct {
	pulumi.CustomResourceState

	// CoPilot instance IP Address or Hostname.
	CopilotAddress pulumi.StringOutput `pulumi:"copilotAddress"`
}

The **aviatrix_copilot_association** resource allows management of controller CoPilot Association. This resource is available as of provider version R2.19+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixCopilotAssociation(ctx, "testCopilotAssociation", &aviatrix.AviatrixCopilotAssociationArgs{
			CopilotAddress: pulumi.String("copilot.aviatrix.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_copilot_association** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixCopilotAssociation:AviatrixCopilotAssociation test_copilot_association 10-11-12-13

```

func GetAviatrixCopilotAssociation

func GetAviatrixCopilotAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixCopilotAssociationState, opts ...pulumi.ResourceOption) (*AviatrixCopilotAssociation, error)

GetAviatrixCopilotAssociation gets an existing AviatrixCopilotAssociation 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 NewAviatrixCopilotAssociation

func NewAviatrixCopilotAssociation(ctx *pulumi.Context,
	name string, args *AviatrixCopilotAssociationArgs, opts ...pulumi.ResourceOption) (*AviatrixCopilotAssociation, error)

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

func (*AviatrixCopilotAssociation) ElementType

func (*AviatrixCopilotAssociation) ElementType() reflect.Type

func (*AviatrixCopilotAssociation) ToAviatrixCopilotAssociationOutput

func (i *AviatrixCopilotAssociation) ToAviatrixCopilotAssociationOutput() AviatrixCopilotAssociationOutput

func (*AviatrixCopilotAssociation) ToAviatrixCopilotAssociationOutputWithContext

func (i *AviatrixCopilotAssociation) ToAviatrixCopilotAssociationOutputWithContext(ctx context.Context) AviatrixCopilotAssociationOutput

type AviatrixCopilotAssociationArgs

type AviatrixCopilotAssociationArgs struct {
	// CoPilot instance IP Address or Hostname.
	CopilotAddress pulumi.StringInput
}

The set of arguments for constructing a AviatrixCopilotAssociation resource.

func (AviatrixCopilotAssociationArgs) ElementType

type AviatrixCopilotAssociationArray

type AviatrixCopilotAssociationArray []AviatrixCopilotAssociationInput

func (AviatrixCopilotAssociationArray) ElementType

func (AviatrixCopilotAssociationArray) ToAviatrixCopilotAssociationArrayOutput

func (i AviatrixCopilotAssociationArray) ToAviatrixCopilotAssociationArrayOutput() AviatrixCopilotAssociationArrayOutput

func (AviatrixCopilotAssociationArray) ToAviatrixCopilotAssociationArrayOutputWithContext

func (i AviatrixCopilotAssociationArray) ToAviatrixCopilotAssociationArrayOutputWithContext(ctx context.Context) AviatrixCopilotAssociationArrayOutput

type AviatrixCopilotAssociationArrayInput

type AviatrixCopilotAssociationArrayInput interface {
	pulumi.Input

	ToAviatrixCopilotAssociationArrayOutput() AviatrixCopilotAssociationArrayOutput
	ToAviatrixCopilotAssociationArrayOutputWithContext(context.Context) AviatrixCopilotAssociationArrayOutput
}

AviatrixCopilotAssociationArrayInput is an input type that accepts AviatrixCopilotAssociationArray and AviatrixCopilotAssociationArrayOutput values. You can construct a concrete instance of `AviatrixCopilotAssociationArrayInput` via:

AviatrixCopilotAssociationArray{ AviatrixCopilotAssociationArgs{...} }

type AviatrixCopilotAssociationArrayOutput

type AviatrixCopilotAssociationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotAssociationArrayOutput) ElementType

func (AviatrixCopilotAssociationArrayOutput) Index

func (AviatrixCopilotAssociationArrayOutput) ToAviatrixCopilotAssociationArrayOutput

func (o AviatrixCopilotAssociationArrayOutput) ToAviatrixCopilotAssociationArrayOutput() AviatrixCopilotAssociationArrayOutput

func (AviatrixCopilotAssociationArrayOutput) ToAviatrixCopilotAssociationArrayOutputWithContext

func (o AviatrixCopilotAssociationArrayOutput) ToAviatrixCopilotAssociationArrayOutputWithContext(ctx context.Context) AviatrixCopilotAssociationArrayOutput

type AviatrixCopilotAssociationInput

type AviatrixCopilotAssociationInput interface {
	pulumi.Input

	ToAviatrixCopilotAssociationOutput() AviatrixCopilotAssociationOutput
	ToAviatrixCopilotAssociationOutputWithContext(ctx context.Context) AviatrixCopilotAssociationOutput
}

type AviatrixCopilotAssociationMap

type AviatrixCopilotAssociationMap map[string]AviatrixCopilotAssociationInput

func (AviatrixCopilotAssociationMap) ElementType

func (AviatrixCopilotAssociationMap) ToAviatrixCopilotAssociationMapOutput

func (i AviatrixCopilotAssociationMap) ToAviatrixCopilotAssociationMapOutput() AviatrixCopilotAssociationMapOutput

func (AviatrixCopilotAssociationMap) ToAviatrixCopilotAssociationMapOutputWithContext

func (i AviatrixCopilotAssociationMap) ToAviatrixCopilotAssociationMapOutputWithContext(ctx context.Context) AviatrixCopilotAssociationMapOutput

type AviatrixCopilotAssociationMapInput

type AviatrixCopilotAssociationMapInput interface {
	pulumi.Input

	ToAviatrixCopilotAssociationMapOutput() AviatrixCopilotAssociationMapOutput
	ToAviatrixCopilotAssociationMapOutputWithContext(context.Context) AviatrixCopilotAssociationMapOutput
}

AviatrixCopilotAssociationMapInput is an input type that accepts AviatrixCopilotAssociationMap and AviatrixCopilotAssociationMapOutput values. You can construct a concrete instance of `AviatrixCopilotAssociationMapInput` via:

AviatrixCopilotAssociationMap{ "key": AviatrixCopilotAssociationArgs{...} }

type AviatrixCopilotAssociationMapOutput

type AviatrixCopilotAssociationMapOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotAssociationMapOutput) ElementType

func (AviatrixCopilotAssociationMapOutput) MapIndex

func (AviatrixCopilotAssociationMapOutput) ToAviatrixCopilotAssociationMapOutput

func (o AviatrixCopilotAssociationMapOutput) ToAviatrixCopilotAssociationMapOutput() AviatrixCopilotAssociationMapOutput

func (AviatrixCopilotAssociationMapOutput) ToAviatrixCopilotAssociationMapOutputWithContext

func (o AviatrixCopilotAssociationMapOutput) ToAviatrixCopilotAssociationMapOutputWithContext(ctx context.Context) AviatrixCopilotAssociationMapOutput

type AviatrixCopilotAssociationOutput

type AviatrixCopilotAssociationOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotAssociationOutput) CopilotAddress

CoPilot instance IP Address or Hostname.

func (AviatrixCopilotAssociationOutput) ElementType

func (AviatrixCopilotAssociationOutput) ToAviatrixCopilotAssociationOutput

func (o AviatrixCopilotAssociationOutput) ToAviatrixCopilotAssociationOutput() AviatrixCopilotAssociationOutput

func (AviatrixCopilotAssociationOutput) ToAviatrixCopilotAssociationOutputWithContext

func (o AviatrixCopilotAssociationOutput) ToAviatrixCopilotAssociationOutputWithContext(ctx context.Context) AviatrixCopilotAssociationOutput

type AviatrixCopilotAssociationState

type AviatrixCopilotAssociationState struct {
	// CoPilot instance IP Address or Hostname.
	CopilotAddress pulumi.StringPtrInput
}

func (AviatrixCopilotAssociationState) ElementType

type AviatrixCopilotSecurityGroupManagementConfig

type AviatrixCopilotSecurityGroupManagementConfig struct {
	pulumi.CustomResourceState

	// Aviatrix access account name. Required to enable copilot security group management.
	AccountName pulumi.StringPtrOutput `pulumi:"accountName"`
	// Cloud type. The type of this attribute is Integer. Only support AWS, Azure and OCI. Required to enable copilot security group management.
	CloudType pulumi.IntPtrOutput `pulumi:"cloudType"`
	// Switch to enable copilot security group management. Valid values: true, false.
	EnableCopilotSecurityGroupManagement pulumi.BoolOutput `pulumi:"enableCopilotSecurityGroupManagement"`
	// CoPilot instance ID. Required to enable copilot security group management.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Region where CoPilot is deployed. Required and valid for AWS and Azure.
	Region pulumi.StringPtrOutput `pulumi:"region"`
	// VPC ID. Required to enable copilot security group management.
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
	// Zone where CoPilot is deployed. Required and valid for GCP.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

The **aviatrix_copilot_security_group_management_config** resource allows management of controller CoPilot security group management configuration. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixCopilotSecurityGroupManagementConfig(ctx, "test", &aviatrix.AviatrixCopilotSecurityGroupManagementConfigArgs{
			AccountName:                          pulumi.String("aws-account"),
			CloudType:                            pulumi.Int(1),
			EnableCopilotSecurityGroupManagement: pulumi.Bool(true),
			InstanceId:                           pulumi.String("i-1234567890"),
			Region:                               pulumi.String("us-east-1"),
			VpcId:                                pulumi.String("vpc-1234567890"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_copilot_security_group_management_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixCopilotSecurityGroupManagementConfig:AviatrixCopilotSecurityGroupManagementConfig test 10-11-12-13

```

func GetAviatrixCopilotSecurityGroupManagementConfig

func GetAviatrixCopilotSecurityGroupManagementConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixCopilotSecurityGroupManagementConfigState, opts ...pulumi.ResourceOption) (*AviatrixCopilotSecurityGroupManagementConfig, error)

GetAviatrixCopilotSecurityGroupManagementConfig gets an existing AviatrixCopilotSecurityGroupManagementConfig 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 NewAviatrixCopilotSecurityGroupManagementConfig

func NewAviatrixCopilotSecurityGroupManagementConfig(ctx *pulumi.Context,
	name string, args *AviatrixCopilotSecurityGroupManagementConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixCopilotSecurityGroupManagementConfig, error)

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

func (*AviatrixCopilotSecurityGroupManagementConfig) ElementType

func (*AviatrixCopilotSecurityGroupManagementConfig) ToAviatrixCopilotSecurityGroupManagementConfigOutput

func (i *AviatrixCopilotSecurityGroupManagementConfig) ToAviatrixCopilotSecurityGroupManagementConfigOutput() AviatrixCopilotSecurityGroupManagementConfigOutput

func (*AviatrixCopilotSecurityGroupManagementConfig) ToAviatrixCopilotSecurityGroupManagementConfigOutputWithContext

func (i *AviatrixCopilotSecurityGroupManagementConfig) ToAviatrixCopilotSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigOutput

type AviatrixCopilotSecurityGroupManagementConfigArgs

type AviatrixCopilotSecurityGroupManagementConfigArgs struct {
	// Aviatrix access account name. Required to enable copilot security group management.
	AccountName pulumi.StringPtrInput
	// Cloud type. The type of this attribute is Integer. Only support AWS, Azure and OCI. Required to enable copilot security group management.
	CloudType pulumi.IntPtrInput
	// Switch to enable copilot security group management. Valid values: true, false.
	EnableCopilotSecurityGroupManagement pulumi.BoolInput
	// CoPilot instance ID. Required to enable copilot security group management.
	InstanceId pulumi.StringPtrInput
	// Region where CoPilot is deployed. Required and valid for AWS and Azure.
	Region pulumi.StringPtrInput
	// VPC ID. Required to enable copilot security group management.
	VpcId pulumi.StringPtrInput
	// Zone where CoPilot is deployed. Required and valid for GCP.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixCopilotSecurityGroupManagementConfig resource.

func (AviatrixCopilotSecurityGroupManagementConfigArgs) ElementType

type AviatrixCopilotSecurityGroupManagementConfigArray

type AviatrixCopilotSecurityGroupManagementConfigArray []AviatrixCopilotSecurityGroupManagementConfigInput

func (AviatrixCopilotSecurityGroupManagementConfigArray) ElementType

func (AviatrixCopilotSecurityGroupManagementConfigArray) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutput

func (i AviatrixCopilotSecurityGroupManagementConfigArray) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutput() AviatrixCopilotSecurityGroupManagementConfigArrayOutput

func (AviatrixCopilotSecurityGroupManagementConfigArray) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutputWithContext

func (i AviatrixCopilotSecurityGroupManagementConfigArray) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigArrayOutput

type AviatrixCopilotSecurityGroupManagementConfigArrayInput

type AviatrixCopilotSecurityGroupManagementConfigArrayInput interface {
	pulumi.Input

	ToAviatrixCopilotSecurityGroupManagementConfigArrayOutput() AviatrixCopilotSecurityGroupManagementConfigArrayOutput
	ToAviatrixCopilotSecurityGroupManagementConfigArrayOutputWithContext(context.Context) AviatrixCopilotSecurityGroupManagementConfigArrayOutput
}

AviatrixCopilotSecurityGroupManagementConfigArrayInput is an input type that accepts AviatrixCopilotSecurityGroupManagementConfigArray and AviatrixCopilotSecurityGroupManagementConfigArrayOutput values. You can construct a concrete instance of `AviatrixCopilotSecurityGroupManagementConfigArrayInput` via:

AviatrixCopilotSecurityGroupManagementConfigArray{ AviatrixCopilotSecurityGroupManagementConfigArgs{...} }

type AviatrixCopilotSecurityGroupManagementConfigArrayOutput

type AviatrixCopilotSecurityGroupManagementConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotSecurityGroupManagementConfigArrayOutput) ElementType

func (AviatrixCopilotSecurityGroupManagementConfigArrayOutput) Index

func (AviatrixCopilotSecurityGroupManagementConfigArrayOutput) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutput

func (AviatrixCopilotSecurityGroupManagementConfigArrayOutput) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutputWithContext

func (o AviatrixCopilotSecurityGroupManagementConfigArrayOutput) ToAviatrixCopilotSecurityGroupManagementConfigArrayOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigArrayOutput

type AviatrixCopilotSecurityGroupManagementConfigInput

type AviatrixCopilotSecurityGroupManagementConfigInput interface {
	pulumi.Input

	ToAviatrixCopilotSecurityGroupManagementConfigOutput() AviatrixCopilotSecurityGroupManagementConfigOutput
	ToAviatrixCopilotSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigOutput
}

type AviatrixCopilotSecurityGroupManagementConfigMap

type AviatrixCopilotSecurityGroupManagementConfigMap map[string]AviatrixCopilotSecurityGroupManagementConfigInput

func (AviatrixCopilotSecurityGroupManagementConfigMap) ElementType

func (AviatrixCopilotSecurityGroupManagementConfigMap) ToAviatrixCopilotSecurityGroupManagementConfigMapOutput

func (i AviatrixCopilotSecurityGroupManagementConfigMap) ToAviatrixCopilotSecurityGroupManagementConfigMapOutput() AviatrixCopilotSecurityGroupManagementConfigMapOutput

func (AviatrixCopilotSecurityGroupManagementConfigMap) ToAviatrixCopilotSecurityGroupManagementConfigMapOutputWithContext

func (i AviatrixCopilotSecurityGroupManagementConfigMap) ToAviatrixCopilotSecurityGroupManagementConfigMapOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigMapOutput

type AviatrixCopilotSecurityGroupManagementConfigMapInput

type AviatrixCopilotSecurityGroupManagementConfigMapInput interface {
	pulumi.Input

	ToAviatrixCopilotSecurityGroupManagementConfigMapOutput() AviatrixCopilotSecurityGroupManagementConfigMapOutput
	ToAviatrixCopilotSecurityGroupManagementConfigMapOutputWithContext(context.Context) AviatrixCopilotSecurityGroupManagementConfigMapOutput
}

AviatrixCopilotSecurityGroupManagementConfigMapInput is an input type that accepts AviatrixCopilotSecurityGroupManagementConfigMap and AviatrixCopilotSecurityGroupManagementConfigMapOutput values. You can construct a concrete instance of `AviatrixCopilotSecurityGroupManagementConfigMapInput` via:

AviatrixCopilotSecurityGroupManagementConfigMap{ "key": AviatrixCopilotSecurityGroupManagementConfigArgs{...} }

type AviatrixCopilotSecurityGroupManagementConfigMapOutput

type AviatrixCopilotSecurityGroupManagementConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotSecurityGroupManagementConfigMapOutput) ElementType

func (AviatrixCopilotSecurityGroupManagementConfigMapOutput) MapIndex

func (AviatrixCopilotSecurityGroupManagementConfigMapOutput) ToAviatrixCopilotSecurityGroupManagementConfigMapOutput

func (AviatrixCopilotSecurityGroupManagementConfigMapOutput) ToAviatrixCopilotSecurityGroupManagementConfigMapOutputWithContext

func (o AviatrixCopilotSecurityGroupManagementConfigMapOutput) ToAviatrixCopilotSecurityGroupManagementConfigMapOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigMapOutput

type AviatrixCopilotSecurityGroupManagementConfigOutput

type AviatrixCopilotSecurityGroupManagementConfigOutput struct{ *pulumi.OutputState }

func (AviatrixCopilotSecurityGroupManagementConfigOutput) AccountName

Aviatrix access account name. Required to enable copilot security group management.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) CloudType

Cloud type. The type of this attribute is Integer. Only support AWS, Azure and OCI. Required to enable copilot security group management.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) ElementType

func (AviatrixCopilotSecurityGroupManagementConfigOutput) EnableCopilotSecurityGroupManagement

func (o AviatrixCopilotSecurityGroupManagementConfigOutput) EnableCopilotSecurityGroupManagement() pulumi.BoolOutput

Switch to enable copilot security group management. Valid values: true, false.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) InstanceId

CoPilot instance ID. Required to enable copilot security group management.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) Region

Region where CoPilot is deployed. Required and valid for AWS and Azure.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) ToAviatrixCopilotSecurityGroupManagementConfigOutput

func (o AviatrixCopilotSecurityGroupManagementConfigOutput) ToAviatrixCopilotSecurityGroupManagementConfigOutput() AviatrixCopilotSecurityGroupManagementConfigOutput

func (AviatrixCopilotSecurityGroupManagementConfigOutput) ToAviatrixCopilotSecurityGroupManagementConfigOutputWithContext

func (o AviatrixCopilotSecurityGroupManagementConfigOutput) ToAviatrixCopilotSecurityGroupManagementConfigOutputWithContext(ctx context.Context) AviatrixCopilotSecurityGroupManagementConfigOutput

func (AviatrixCopilotSecurityGroupManagementConfigOutput) VpcId

VPC ID. Required to enable copilot security group management.

func (AviatrixCopilotSecurityGroupManagementConfigOutput) Zone

Zone where CoPilot is deployed. Required and valid for GCP.

type AviatrixCopilotSecurityGroupManagementConfigState

type AviatrixCopilotSecurityGroupManagementConfigState struct {
	// Aviatrix access account name. Required to enable copilot security group management.
	AccountName pulumi.StringPtrInput
	// Cloud type. The type of this attribute is Integer. Only support AWS, Azure and OCI. Required to enable copilot security group management.
	CloudType pulumi.IntPtrInput
	// Switch to enable copilot security group management. Valid values: true, false.
	EnableCopilotSecurityGroupManagement pulumi.BoolPtrInput
	// CoPilot instance ID. Required to enable copilot security group management.
	InstanceId pulumi.StringPtrInput
	// Region where CoPilot is deployed. Required and valid for AWS and Azure.
	Region pulumi.StringPtrInput
	// VPC ID. Required to enable copilot security group management.
	VpcId pulumi.StringPtrInput
	// Zone where CoPilot is deployed. Required and valid for GCP.
	Zone pulumi.StringPtrInput
}

func (AviatrixCopilotSecurityGroupManagementConfigState) ElementType

type AviatrixDatadogAgent

type AviatrixDatadogAgent struct {
	pulumi.CustomResourceState

	// API key.
	ApiKey pulumi.StringOutput `pulumi:"apiKey"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Only export metrics without exporting logs. False by default.
	MetricsOnly pulumi.BoolPtrOutput `pulumi:"metricsOnly"`
	// Site preference ("datadoghq.com" or" datadoghq.eu"). "datadoghq.com" by default.
	Site pulumi.StringPtrOutput `pulumi:"site"`
	// The status of datadog agent.
	Status pulumi.StringOutput `pulumi:"status"`
}

The **aviatrix_datadog_agent** resource allows the enabling and disabling of datadog agent.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixDatadogAgent(ctx, "testDatadogAgent", &aviatrix.AviatrixDatadogAgentArgs{
			ApiKey: pulumi.String("your_api_key"),
			ExcludedGateways: pulumi.StringArray{
				pulumi.String("a"),
				pulumi.String("b"),
			},
			Site: pulumi.String("datadoghq.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**datadog_agent** can be imported using "datadog_agent", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixDatadogAgent:AviatrixDatadogAgent test datadog_agent

```

func GetAviatrixDatadogAgent

func GetAviatrixDatadogAgent(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixDatadogAgentState, opts ...pulumi.ResourceOption) (*AviatrixDatadogAgent, error)

GetAviatrixDatadogAgent gets an existing AviatrixDatadogAgent 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 NewAviatrixDatadogAgent

func NewAviatrixDatadogAgent(ctx *pulumi.Context,
	name string, args *AviatrixDatadogAgentArgs, opts ...pulumi.ResourceOption) (*AviatrixDatadogAgent, error)

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

func (*AviatrixDatadogAgent) ElementType

func (*AviatrixDatadogAgent) ElementType() reflect.Type

func (*AviatrixDatadogAgent) ToAviatrixDatadogAgentOutput

func (i *AviatrixDatadogAgent) ToAviatrixDatadogAgentOutput() AviatrixDatadogAgentOutput

func (*AviatrixDatadogAgent) ToAviatrixDatadogAgentOutputWithContext

func (i *AviatrixDatadogAgent) ToAviatrixDatadogAgentOutputWithContext(ctx context.Context) AviatrixDatadogAgentOutput

type AviatrixDatadogAgentArgs

type AviatrixDatadogAgentArgs struct {
	// API key.
	ApiKey pulumi.StringInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Only export metrics without exporting logs. False by default.
	MetricsOnly pulumi.BoolPtrInput
	// Site preference ("datadoghq.com" or" datadoghq.eu"). "datadoghq.com" by default.
	Site pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixDatadogAgent resource.

func (AviatrixDatadogAgentArgs) ElementType

func (AviatrixDatadogAgentArgs) ElementType() reflect.Type

type AviatrixDatadogAgentArray

type AviatrixDatadogAgentArray []AviatrixDatadogAgentInput

func (AviatrixDatadogAgentArray) ElementType

func (AviatrixDatadogAgentArray) ElementType() reflect.Type

func (AviatrixDatadogAgentArray) ToAviatrixDatadogAgentArrayOutput

func (i AviatrixDatadogAgentArray) ToAviatrixDatadogAgentArrayOutput() AviatrixDatadogAgentArrayOutput

func (AviatrixDatadogAgentArray) ToAviatrixDatadogAgentArrayOutputWithContext

func (i AviatrixDatadogAgentArray) ToAviatrixDatadogAgentArrayOutputWithContext(ctx context.Context) AviatrixDatadogAgentArrayOutput

type AviatrixDatadogAgentArrayInput

type AviatrixDatadogAgentArrayInput interface {
	pulumi.Input

	ToAviatrixDatadogAgentArrayOutput() AviatrixDatadogAgentArrayOutput
	ToAviatrixDatadogAgentArrayOutputWithContext(context.Context) AviatrixDatadogAgentArrayOutput
}

AviatrixDatadogAgentArrayInput is an input type that accepts AviatrixDatadogAgentArray and AviatrixDatadogAgentArrayOutput values. You can construct a concrete instance of `AviatrixDatadogAgentArrayInput` via:

AviatrixDatadogAgentArray{ AviatrixDatadogAgentArgs{...} }

type AviatrixDatadogAgentArrayOutput

type AviatrixDatadogAgentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixDatadogAgentArrayOutput) ElementType

func (AviatrixDatadogAgentArrayOutput) Index

func (AviatrixDatadogAgentArrayOutput) ToAviatrixDatadogAgentArrayOutput

func (o AviatrixDatadogAgentArrayOutput) ToAviatrixDatadogAgentArrayOutput() AviatrixDatadogAgentArrayOutput

func (AviatrixDatadogAgentArrayOutput) ToAviatrixDatadogAgentArrayOutputWithContext

func (o AviatrixDatadogAgentArrayOutput) ToAviatrixDatadogAgentArrayOutputWithContext(ctx context.Context) AviatrixDatadogAgentArrayOutput

type AviatrixDatadogAgentInput

type AviatrixDatadogAgentInput interface {
	pulumi.Input

	ToAviatrixDatadogAgentOutput() AviatrixDatadogAgentOutput
	ToAviatrixDatadogAgentOutputWithContext(ctx context.Context) AviatrixDatadogAgentOutput
}

type AviatrixDatadogAgentMap

type AviatrixDatadogAgentMap map[string]AviatrixDatadogAgentInput

func (AviatrixDatadogAgentMap) ElementType

func (AviatrixDatadogAgentMap) ElementType() reflect.Type

func (AviatrixDatadogAgentMap) ToAviatrixDatadogAgentMapOutput

func (i AviatrixDatadogAgentMap) ToAviatrixDatadogAgentMapOutput() AviatrixDatadogAgentMapOutput

func (AviatrixDatadogAgentMap) ToAviatrixDatadogAgentMapOutputWithContext

func (i AviatrixDatadogAgentMap) ToAviatrixDatadogAgentMapOutputWithContext(ctx context.Context) AviatrixDatadogAgentMapOutput

type AviatrixDatadogAgentMapInput

type AviatrixDatadogAgentMapInput interface {
	pulumi.Input

	ToAviatrixDatadogAgentMapOutput() AviatrixDatadogAgentMapOutput
	ToAviatrixDatadogAgentMapOutputWithContext(context.Context) AviatrixDatadogAgentMapOutput
}

AviatrixDatadogAgentMapInput is an input type that accepts AviatrixDatadogAgentMap and AviatrixDatadogAgentMapOutput values. You can construct a concrete instance of `AviatrixDatadogAgentMapInput` via:

AviatrixDatadogAgentMap{ "key": AviatrixDatadogAgentArgs{...} }

type AviatrixDatadogAgentMapOutput

type AviatrixDatadogAgentMapOutput struct{ *pulumi.OutputState }

func (AviatrixDatadogAgentMapOutput) ElementType

func (AviatrixDatadogAgentMapOutput) MapIndex

func (AviatrixDatadogAgentMapOutput) ToAviatrixDatadogAgentMapOutput

func (o AviatrixDatadogAgentMapOutput) ToAviatrixDatadogAgentMapOutput() AviatrixDatadogAgentMapOutput

func (AviatrixDatadogAgentMapOutput) ToAviatrixDatadogAgentMapOutputWithContext

func (o AviatrixDatadogAgentMapOutput) ToAviatrixDatadogAgentMapOutputWithContext(ctx context.Context) AviatrixDatadogAgentMapOutput

type AviatrixDatadogAgentOutput

type AviatrixDatadogAgentOutput struct{ *pulumi.OutputState }

func (AviatrixDatadogAgentOutput) ApiKey

API key.

func (AviatrixDatadogAgentOutput) ElementType

func (AviatrixDatadogAgentOutput) ElementType() reflect.Type

func (AviatrixDatadogAgentOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixDatadogAgentOutput) MetricsOnly

Only export metrics without exporting logs. False by default.

func (AviatrixDatadogAgentOutput) Site

Site preference ("datadoghq.com" or" datadoghq.eu"). "datadoghq.com" by default.

func (AviatrixDatadogAgentOutput) Status

The status of datadog agent.

func (AviatrixDatadogAgentOutput) ToAviatrixDatadogAgentOutput

func (o AviatrixDatadogAgentOutput) ToAviatrixDatadogAgentOutput() AviatrixDatadogAgentOutput

func (AviatrixDatadogAgentOutput) ToAviatrixDatadogAgentOutputWithContext

func (o AviatrixDatadogAgentOutput) ToAviatrixDatadogAgentOutputWithContext(ctx context.Context) AviatrixDatadogAgentOutput

type AviatrixDatadogAgentState

type AviatrixDatadogAgentState struct {
	// API key.
	ApiKey pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Only export metrics without exporting logs. False by default.
	MetricsOnly pulumi.BoolPtrInput
	// Site preference ("datadoghq.com" or" datadoghq.eu"). "datadoghq.com" by default.
	Site pulumi.StringPtrInput
	// The status of datadog agent.
	Status pulumi.StringPtrInput
}

func (AviatrixDatadogAgentState) ElementType

func (AviatrixDatadogAgentState) ElementType() reflect.Type

type AviatrixDeviceInterfaceConfig

type AviatrixDeviceInterfaceConfig struct {
	pulumi.CustomResourceState

	// Name of the device.
	DeviceName pulumi.StringOutput `pulumi:"deviceName"`
	// Name of the WAN primary interface.
	WanPrimaryInterface pulumi.StringOutput `pulumi:"wanPrimaryInterface"`
	// The WAN Primary interface public IP.
	WanPrimaryInterfacePublicIp pulumi.StringOutput `pulumi:"wanPrimaryInterfacePublicIp"`
}

The **aviatrix_device_interface_config** resource allows the configuration of the WAN primary interface and IP for a device, for use in CloudN.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixDeviceInterfaceConfig(ctx, "testDeviceInterfaceConfig", &aviatrix.AviatrixDeviceInterfaceConfigArgs{
			DeviceName:                  pulumi.String("test-device"),
			WanPrimaryInterface:         pulumi.String("eth0"),
			WanPrimaryInterfacePublicIp: pulumi.String("181.12.43.21"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**device_interface_config** can be imported using the `device_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixDeviceInterfaceConfig:AviatrixDeviceInterfaceConfig test device_name

```

func GetAviatrixDeviceInterfaceConfig

func GetAviatrixDeviceInterfaceConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixDeviceInterfaceConfigState, opts ...pulumi.ResourceOption) (*AviatrixDeviceInterfaceConfig, error)

GetAviatrixDeviceInterfaceConfig gets an existing AviatrixDeviceInterfaceConfig 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 NewAviatrixDeviceInterfaceConfig

func NewAviatrixDeviceInterfaceConfig(ctx *pulumi.Context,
	name string, args *AviatrixDeviceInterfaceConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixDeviceInterfaceConfig, error)

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

func (*AviatrixDeviceInterfaceConfig) ElementType

func (*AviatrixDeviceInterfaceConfig) ToAviatrixDeviceInterfaceConfigOutput

func (i *AviatrixDeviceInterfaceConfig) ToAviatrixDeviceInterfaceConfigOutput() AviatrixDeviceInterfaceConfigOutput

func (*AviatrixDeviceInterfaceConfig) ToAviatrixDeviceInterfaceConfigOutputWithContext

func (i *AviatrixDeviceInterfaceConfig) ToAviatrixDeviceInterfaceConfigOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigOutput

type AviatrixDeviceInterfaceConfigArgs

type AviatrixDeviceInterfaceConfigArgs struct {
	// Name of the device.
	DeviceName pulumi.StringInput
	// Name of the WAN primary interface.
	WanPrimaryInterface pulumi.StringInput
	// The WAN Primary interface public IP.
	WanPrimaryInterfacePublicIp pulumi.StringInput
}

The set of arguments for constructing a AviatrixDeviceInterfaceConfig resource.

func (AviatrixDeviceInterfaceConfigArgs) ElementType

type AviatrixDeviceInterfaceConfigArray

type AviatrixDeviceInterfaceConfigArray []AviatrixDeviceInterfaceConfigInput

func (AviatrixDeviceInterfaceConfigArray) ElementType

func (AviatrixDeviceInterfaceConfigArray) ToAviatrixDeviceInterfaceConfigArrayOutput

func (i AviatrixDeviceInterfaceConfigArray) ToAviatrixDeviceInterfaceConfigArrayOutput() AviatrixDeviceInterfaceConfigArrayOutput

func (AviatrixDeviceInterfaceConfigArray) ToAviatrixDeviceInterfaceConfigArrayOutputWithContext

func (i AviatrixDeviceInterfaceConfigArray) ToAviatrixDeviceInterfaceConfigArrayOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigArrayOutput

type AviatrixDeviceInterfaceConfigArrayInput

type AviatrixDeviceInterfaceConfigArrayInput interface {
	pulumi.Input

	ToAviatrixDeviceInterfaceConfigArrayOutput() AviatrixDeviceInterfaceConfigArrayOutput
	ToAviatrixDeviceInterfaceConfigArrayOutputWithContext(context.Context) AviatrixDeviceInterfaceConfigArrayOutput
}

AviatrixDeviceInterfaceConfigArrayInput is an input type that accepts AviatrixDeviceInterfaceConfigArray and AviatrixDeviceInterfaceConfigArrayOutput values. You can construct a concrete instance of `AviatrixDeviceInterfaceConfigArrayInput` via:

AviatrixDeviceInterfaceConfigArray{ AviatrixDeviceInterfaceConfigArgs{...} }

type AviatrixDeviceInterfaceConfigArrayOutput

type AviatrixDeviceInterfaceConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixDeviceInterfaceConfigArrayOutput) ElementType

func (AviatrixDeviceInterfaceConfigArrayOutput) Index

func (AviatrixDeviceInterfaceConfigArrayOutput) ToAviatrixDeviceInterfaceConfigArrayOutput

func (o AviatrixDeviceInterfaceConfigArrayOutput) ToAviatrixDeviceInterfaceConfigArrayOutput() AviatrixDeviceInterfaceConfigArrayOutput

func (AviatrixDeviceInterfaceConfigArrayOutput) ToAviatrixDeviceInterfaceConfigArrayOutputWithContext

func (o AviatrixDeviceInterfaceConfigArrayOutput) ToAviatrixDeviceInterfaceConfigArrayOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigArrayOutput

type AviatrixDeviceInterfaceConfigInput

type AviatrixDeviceInterfaceConfigInput interface {
	pulumi.Input

	ToAviatrixDeviceInterfaceConfigOutput() AviatrixDeviceInterfaceConfigOutput
	ToAviatrixDeviceInterfaceConfigOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigOutput
}

type AviatrixDeviceInterfaceConfigMap

type AviatrixDeviceInterfaceConfigMap map[string]AviatrixDeviceInterfaceConfigInput

func (AviatrixDeviceInterfaceConfigMap) ElementType

func (AviatrixDeviceInterfaceConfigMap) ToAviatrixDeviceInterfaceConfigMapOutput

func (i AviatrixDeviceInterfaceConfigMap) ToAviatrixDeviceInterfaceConfigMapOutput() AviatrixDeviceInterfaceConfigMapOutput

func (AviatrixDeviceInterfaceConfigMap) ToAviatrixDeviceInterfaceConfigMapOutputWithContext

func (i AviatrixDeviceInterfaceConfigMap) ToAviatrixDeviceInterfaceConfigMapOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigMapOutput

type AviatrixDeviceInterfaceConfigMapInput

type AviatrixDeviceInterfaceConfigMapInput interface {
	pulumi.Input

	ToAviatrixDeviceInterfaceConfigMapOutput() AviatrixDeviceInterfaceConfigMapOutput
	ToAviatrixDeviceInterfaceConfigMapOutputWithContext(context.Context) AviatrixDeviceInterfaceConfigMapOutput
}

AviatrixDeviceInterfaceConfigMapInput is an input type that accepts AviatrixDeviceInterfaceConfigMap and AviatrixDeviceInterfaceConfigMapOutput values. You can construct a concrete instance of `AviatrixDeviceInterfaceConfigMapInput` via:

AviatrixDeviceInterfaceConfigMap{ "key": AviatrixDeviceInterfaceConfigArgs{...} }

type AviatrixDeviceInterfaceConfigMapOutput

type AviatrixDeviceInterfaceConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixDeviceInterfaceConfigMapOutput) ElementType

func (AviatrixDeviceInterfaceConfigMapOutput) MapIndex

func (AviatrixDeviceInterfaceConfigMapOutput) ToAviatrixDeviceInterfaceConfigMapOutput

func (o AviatrixDeviceInterfaceConfigMapOutput) ToAviatrixDeviceInterfaceConfigMapOutput() AviatrixDeviceInterfaceConfigMapOutput

func (AviatrixDeviceInterfaceConfigMapOutput) ToAviatrixDeviceInterfaceConfigMapOutputWithContext

func (o AviatrixDeviceInterfaceConfigMapOutput) ToAviatrixDeviceInterfaceConfigMapOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigMapOutput

type AviatrixDeviceInterfaceConfigOutput

type AviatrixDeviceInterfaceConfigOutput struct{ *pulumi.OutputState }

func (AviatrixDeviceInterfaceConfigOutput) DeviceName

Name of the device.

func (AviatrixDeviceInterfaceConfigOutput) ElementType

func (AviatrixDeviceInterfaceConfigOutput) ToAviatrixDeviceInterfaceConfigOutput

func (o AviatrixDeviceInterfaceConfigOutput) ToAviatrixDeviceInterfaceConfigOutput() AviatrixDeviceInterfaceConfigOutput

func (AviatrixDeviceInterfaceConfigOutput) ToAviatrixDeviceInterfaceConfigOutputWithContext

func (o AviatrixDeviceInterfaceConfigOutput) ToAviatrixDeviceInterfaceConfigOutputWithContext(ctx context.Context) AviatrixDeviceInterfaceConfigOutput

func (AviatrixDeviceInterfaceConfigOutput) WanPrimaryInterface

Name of the WAN primary interface.

func (AviatrixDeviceInterfaceConfigOutput) WanPrimaryInterfacePublicIp

func (o AviatrixDeviceInterfaceConfigOutput) WanPrimaryInterfacePublicIp() pulumi.StringOutput

The WAN Primary interface public IP.

type AviatrixDeviceInterfaceConfigState

type AviatrixDeviceInterfaceConfigState struct {
	// Name of the device.
	DeviceName pulumi.StringPtrInput
	// Name of the WAN primary interface.
	WanPrimaryInterface pulumi.StringPtrInput
	// The WAN Primary interface public IP.
	WanPrimaryInterfacePublicIp pulumi.StringPtrInput
}

func (AviatrixDeviceInterfaceConfigState) ElementType

type AviatrixEdgeCaag

type AviatrixEdgeCaag struct {
	pulumi.CustomResourceState

	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrOutput `pulumi:"dnsServerIp"`
	// Indicates whether it is public or private connection between controller and gateway. Valid values: true, false. Default value: false.
	EnableOverPrivateNetwork pulumi.BoolPtrOutput `pulumi:"enableOverPrivateNetwork"`
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringOutput `pulumi:"lanInterfaceIpPrefix"`
	// BGP AS Number to assign to Edge as a CaaG.
	LocalAsNumber pulumi.StringOutput `pulumi:"localAsNumber"`
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrOutput `pulumi:"managementDefaultGatewayIp"`
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrOutput `pulumi:"managementEgressIpPrefix"`
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringOutput `pulumi:"managementInterfaceConfig"`
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrOutput `pulumi:"managementInterfaceIpPrefix"`
	// Edge as a CaaG name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrOutput `pulumi:"secondaryDnsServerIp"`
	// State of Edge as a CaaG.
	State pulumi.StringOutput `pulumi:"state"`
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringOutput `pulumi:"wanDefaultGatewayIp"`
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringOutput `pulumi:"wanInterfaceIpPrefix"`
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringOutput `pulumi:"ztpFileDownloadPath"`
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringOutput `pulumi:"ztpFileType"`
}

The **aviatrix_edge_caag** resource creates the Aviatrix Edge as a CaaG. This resource is available as of provider version R2.22+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeCaag(ctx, "test", &aviatrix.AviatrixEdgeCaagArgs{
			LanInterfaceIpPrefix:      pulumi.String("10.60.0.0/24"),
			LocalAsNumber:             pulumi.String("65000"),
			ManagementInterfaceConfig: pulumi.String("DHCP"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65000"),
				pulumi.String("65000"),
			},
			WanDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			WanInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			ZtpFileDownloadPath:  pulumi.String("/image/download/path"),
			ZtpFileType:          pulumi.String("iso"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeCaag(ctx, "test", &aviatrix.AviatrixEdgeCaagArgs{
			DnsServerIp:                 pulumi.String("10.60.0.0"),
			LanInterfaceIpPrefix:        pulumi.String("10.60.0.0/24"),
			LocalAsNumber:               pulumi.String("65000"),
			ManagementDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			ManagementInterfaceConfig:   pulumi.String("Static"),
			ManagementInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65000"),
				pulumi.String("65000"),
			},
			SecondaryDnsServerIp: pulumi.String("10.60.0.0"),
			WanDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			WanInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			ZtpFileDownloadPath:  pulumi.String("/image/download/path"),
			ZtpFileType:          pulumi.String("iso"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**edge_caag** can be imported using the `name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixEdgeCaag:AviatrixEdgeCaag test name

```

func GetAviatrixEdgeCaag

func GetAviatrixEdgeCaag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixEdgeCaagState, opts ...pulumi.ResourceOption) (*AviatrixEdgeCaag, error)

GetAviatrixEdgeCaag gets an existing AviatrixEdgeCaag 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 NewAviatrixEdgeCaag

func NewAviatrixEdgeCaag(ctx *pulumi.Context,
	name string, args *AviatrixEdgeCaagArgs, opts ...pulumi.ResourceOption) (*AviatrixEdgeCaag, error)

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

func (*AviatrixEdgeCaag) ElementType

func (*AviatrixEdgeCaag) ElementType() reflect.Type

func (*AviatrixEdgeCaag) ToAviatrixEdgeCaagOutput

func (i *AviatrixEdgeCaag) ToAviatrixEdgeCaagOutput() AviatrixEdgeCaagOutput

func (*AviatrixEdgeCaag) ToAviatrixEdgeCaagOutputWithContext

func (i *AviatrixEdgeCaag) ToAviatrixEdgeCaagOutputWithContext(ctx context.Context) AviatrixEdgeCaagOutput

type AviatrixEdgeCaagArgs

type AviatrixEdgeCaagArgs struct {
	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrInput
	// Indicates whether it is public or private connection between controller and gateway. Valid values: true, false. Default value: false.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringInput
	// BGP AS Number to assign to Edge as a CaaG.
	LocalAsNumber pulumi.StringPtrInput
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrInput
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrInput
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringInput
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrInput
	// Edge as a CaaG name.
	Name pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayInput
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrInput
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringInput
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringInput
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringInput
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringInput
}

The set of arguments for constructing a AviatrixEdgeCaag resource.

func (AviatrixEdgeCaagArgs) ElementType

func (AviatrixEdgeCaagArgs) ElementType() reflect.Type

type AviatrixEdgeCaagArray

type AviatrixEdgeCaagArray []AviatrixEdgeCaagInput

func (AviatrixEdgeCaagArray) ElementType

func (AviatrixEdgeCaagArray) ElementType() reflect.Type

func (AviatrixEdgeCaagArray) ToAviatrixEdgeCaagArrayOutput

func (i AviatrixEdgeCaagArray) ToAviatrixEdgeCaagArrayOutput() AviatrixEdgeCaagArrayOutput

func (AviatrixEdgeCaagArray) ToAviatrixEdgeCaagArrayOutputWithContext

func (i AviatrixEdgeCaagArray) ToAviatrixEdgeCaagArrayOutputWithContext(ctx context.Context) AviatrixEdgeCaagArrayOutput

type AviatrixEdgeCaagArrayInput

type AviatrixEdgeCaagArrayInput interface {
	pulumi.Input

	ToAviatrixEdgeCaagArrayOutput() AviatrixEdgeCaagArrayOutput
	ToAviatrixEdgeCaagArrayOutputWithContext(context.Context) AviatrixEdgeCaagArrayOutput
}

AviatrixEdgeCaagArrayInput is an input type that accepts AviatrixEdgeCaagArray and AviatrixEdgeCaagArrayOutput values. You can construct a concrete instance of `AviatrixEdgeCaagArrayInput` via:

AviatrixEdgeCaagArray{ AviatrixEdgeCaagArgs{...} }

type AviatrixEdgeCaagArrayOutput

type AviatrixEdgeCaagArrayOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeCaagArrayOutput) ElementType

func (AviatrixEdgeCaagArrayOutput) Index

func (AviatrixEdgeCaagArrayOutput) ToAviatrixEdgeCaagArrayOutput

func (o AviatrixEdgeCaagArrayOutput) ToAviatrixEdgeCaagArrayOutput() AviatrixEdgeCaagArrayOutput

func (AviatrixEdgeCaagArrayOutput) ToAviatrixEdgeCaagArrayOutputWithContext

func (o AviatrixEdgeCaagArrayOutput) ToAviatrixEdgeCaagArrayOutputWithContext(ctx context.Context) AviatrixEdgeCaagArrayOutput

type AviatrixEdgeCaagInput

type AviatrixEdgeCaagInput interface {
	pulumi.Input

	ToAviatrixEdgeCaagOutput() AviatrixEdgeCaagOutput
	ToAviatrixEdgeCaagOutputWithContext(ctx context.Context) AviatrixEdgeCaagOutput
}

type AviatrixEdgeCaagMap

type AviatrixEdgeCaagMap map[string]AviatrixEdgeCaagInput

func (AviatrixEdgeCaagMap) ElementType

func (AviatrixEdgeCaagMap) ElementType() reflect.Type

func (AviatrixEdgeCaagMap) ToAviatrixEdgeCaagMapOutput

func (i AviatrixEdgeCaagMap) ToAviatrixEdgeCaagMapOutput() AviatrixEdgeCaagMapOutput

func (AviatrixEdgeCaagMap) ToAviatrixEdgeCaagMapOutputWithContext

func (i AviatrixEdgeCaagMap) ToAviatrixEdgeCaagMapOutputWithContext(ctx context.Context) AviatrixEdgeCaagMapOutput

type AviatrixEdgeCaagMapInput

type AviatrixEdgeCaagMapInput interface {
	pulumi.Input

	ToAviatrixEdgeCaagMapOutput() AviatrixEdgeCaagMapOutput
	ToAviatrixEdgeCaagMapOutputWithContext(context.Context) AviatrixEdgeCaagMapOutput
}

AviatrixEdgeCaagMapInput is an input type that accepts AviatrixEdgeCaagMap and AviatrixEdgeCaagMapOutput values. You can construct a concrete instance of `AviatrixEdgeCaagMapInput` via:

AviatrixEdgeCaagMap{ "key": AviatrixEdgeCaagArgs{...} }

type AviatrixEdgeCaagMapOutput

type AviatrixEdgeCaagMapOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeCaagMapOutput) ElementType

func (AviatrixEdgeCaagMapOutput) ElementType() reflect.Type

func (AviatrixEdgeCaagMapOutput) MapIndex

func (AviatrixEdgeCaagMapOutput) ToAviatrixEdgeCaagMapOutput

func (o AviatrixEdgeCaagMapOutput) ToAviatrixEdgeCaagMapOutput() AviatrixEdgeCaagMapOutput

func (AviatrixEdgeCaagMapOutput) ToAviatrixEdgeCaagMapOutputWithContext

func (o AviatrixEdgeCaagMapOutput) ToAviatrixEdgeCaagMapOutputWithContext(ctx context.Context) AviatrixEdgeCaagMapOutput

type AviatrixEdgeCaagOutput

type AviatrixEdgeCaagOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeCaagOutput) DnsServerIp

DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeCaagOutput) ElementType

func (AviatrixEdgeCaagOutput) ElementType() reflect.Type

func (AviatrixEdgeCaagOutput) EnableOverPrivateNetwork

func (o AviatrixEdgeCaagOutput) EnableOverPrivateNetwork() pulumi.BoolPtrOutput

Indicates whether it is public or private connection between controller and gateway. Valid values: true, false. Default value: false.

func (AviatrixEdgeCaagOutput) LanInterfaceIpPrefix

func (o AviatrixEdgeCaagOutput) LanInterfaceIpPrefix() pulumi.StringOutput

LAN interface IP and subnet prefix.

func (AviatrixEdgeCaagOutput) LocalAsNumber

func (o AviatrixEdgeCaagOutput) LocalAsNumber() pulumi.StringOutput

BGP AS Number to assign to Edge as a CaaG.

func (AviatrixEdgeCaagOutput) ManagementDefaultGatewayIp

func (o AviatrixEdgeCaagOutput) ManagementDefaultGatewayIp() pulumi.StringPtrOutput

Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeCaagOutput) ManagementEgressIpPrefix

func (o AviatrixEdgeCaagOutput) ManagementEgressIpPrefix() pulumi.StringPtrOutput

Management egress gateway IP and subnet prefix.

func (AviatrixEdgeCaagOutput) ManagementInterfaceConfig

func (o AviatrixEdgeCaagOutput) ManagementInterfaceConfig() pulumi.StringOutput

Management interface configuration. Valid values: "DHCP", "Static".

func (AviatrixEdgeCaagOutput) ManagementInterfaceIpPrefix

func (o AviatrixEdgeCaagOutput) ManagementInterfaceIpPrefix() pulumi.StringPtrOutput

Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeCaagOutput) Name

Edge as a CaaG name.

func (AviatrixEdgeCaagOutput) PrependAsPaths

func (o AviatrixEdgeCaagOutput) PrependAsPaths() pulumi.StringArrayOutput

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.

func (AviatrixEdgeCaagOutput) SecondaryDnsServerIp

func (o AviatrixEdgeCaagOutput) SecondaryDnsServerIp() pulumi.StringPtrOutput

Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeCaagOutput) State

State of Edge as a CaaG.

func (AviatrixEdgeCaagOutput) ToAviatrixEdgeCaagOutput

func (o AviatrixEdgeCaagOutput) ToAviatrixEdgeCaagOutput() AviatrixEdgeCaagOutput

func (AviatrixEdgeCaagOutput) ToAviatrixEdgeCaagOutputWithContext

func (o AviatrixEdgeCaagOutput) ToAviatrixEdgeCaagOutputWithContext(ctx context.Context) AviatrixEdgeCaagOutput

func (AviatrixEdgeCaagOutput) WanDefaultGatewayIp

func (o AviatrixEdgeCaagOutput) WanDefaultGatewayIp() pulumi.StringOutput

WAN default gateway IP.

func (AviatrixEdgeCaagOutput) WanInterfaceIpPrefix

func (o AviatrixEdgeCaagOutput) WanInterfaceIpPrefix() pulumi.StringOutput

WAN interface IP and subnet prefix.

func (AviatrixEdgeCaagOutput) ZtpFileDownloadPath

func (o AviatrixEdgeCaagOutput) ZtpFileDownloadPath() pulumi.StringOutput

The folder path where the ZTP file will be downloaded.

func (AviatrixEdgeCaagOutput) ZtpFileType

func (o AviatrixEdgeCaagOutput) ZtpFileType() pulumi.StringOutput

ZTP file type. Valid values: "iso", "cloud-init".

type AviatrixEdgeCaagState

type AviatrixEdgeCaagState struct {
	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrInput
	// Indicates whether it is public or private connection between controller and gateway. Valid values: true, false. Default value: false.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringPtrInput
	// BGP AS Number to assign to Edge as a CaaG.
	LocalAsNumber pulumi.StringPtrInput
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrInput
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrInput
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringPtrInput
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrInput
	// Edge as a CaaG name.
	Name pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Requires localAsNumber to be set. Type: List.
	PrependAsPaths pulumi.StringArrayInput
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrInput
	// State of Edge as a CaaG.
	State pulumi.StringPtrInput
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringPtrInput
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringPtrInput
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringPtrInput
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringPtrInput
}

func (AviatrixEdgeCaagState) ElementType

func (AviatrixEdgeCaagState) ElementType() reflect.Type

type AviatrixEdgeSpoke

type AviatrixEdgeSpoke struct {
	pulumi.CustomResourceState

	// Set of approved learned CIDRs. Valid only when `enableLearnedCidrsApproval` is set to true. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	ApprovedLearnedCidrs pulumi.StringArrayOutput `pulumi:"approvedLearnedCidrs"`
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrOutput `pulumi:"bgpHoldTime"`
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: 50.
	BgpPollingTime pulumi.IntPtrOutput `pulumi:"bgpPollingTime"`
	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrOutput `pulumi:"dnsServerIp"`
	// Switch to enable Edge Active-Standby mode. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandby pulumi.BoolPtrOutput `pulumi:"enableEdgeActiveStandby"`
	// Switch to enable Preemptive Mode for Edge Active-Standby. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandbyPreemptive pulumi.BoolPtrOutput `pulumi:"enableEdgeActiveStandbyPreemptive"`
	// Switch to enable Edge transitive routing. Valid values: true, false. Default value: false.
	EnableEdgeTransitiveRouting pulumi.BoolPtrOutput `pulumi:"enableEdgeTransitiveRouting"`
	// Switch to enable jumbo frame. Valid values: true, false. Default value: false.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Switch to enable learned CIDR approval. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Switch to enable management over the private network. Valid values: true, false. Default value: false.
	EnableManagementOverPrivateNetwork pulumi.BoolPtrOutput `pulumi:"enableManagementOverPrivateNetwork"`
	// Switch to enable preserve asPath when advertising manual summary CIDRs. Valid values: true, false. Default value: false.
	EnablePreserveAsPath pulumi.BoolPtrOutput `pulumi:"enablePreserveAsPath"`
	// Edge as a Spoke name.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringOutput `pulumi:"lanInterfaceIpPrefix"`
	// Latitude of Edge as a Spoke. Valid values are between -90 and 90. Example: "47.7511".
	Latitude pulumi.StringOutput `pulumi:"latitude"`
	// BGP AS Number to assign to Edge as a Spoke.
	LocalAsNumber pulumi.StringOutput `pulumi:"localAsNumber"`
	// Longitude of Edge as a Spoke. Valid values are between -180 and 180. Example: "120.7401".
	Longitude pulumi.StringOutput `pulumi:"longitude"`
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrOutput `pulumi:"managementDefaultGatewayIp"`
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrOutput `pulumi:"managementEgressIpPrefix"`
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringOutput `pulumi:"managementInterfaceConfig"`
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrOutput `pulumi:"managementInterfaceIpPrefix"`
	// List of AS numbers to prepend gateway BGP AS_Path field. Valid only when `localAsNumber` is set. Example: ["65023", "65023"].
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Ethernet interface RX queue size. Once set, can't be deleted or disabled. Valid values: "1K", "2K", "4K".
	RxQueueSize pulumi.StringPtrOutput `pulumi:"rxQueueSize"`
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrOutput `pulumi:"secondaryDnsServerIp"`
	// Site ID.
	SiteId pulumi.StringOutput `pulumi:"siteId"`
	// Set of intended CIDRs to be advertised to external BGP router. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayOutput `pulumi:"spokeBgpManualAdvertiseCidrs"`
	// State of Edge as a Spoke.
	State pulumi.StringOutput `pulumi:"state"`
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringOutput `pulumi:"wanDefaultGatewayIp"`
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringOutput `pulumi:"wanInterfaceIpPrefix"`
	// WAN public IP. Required for attaching connections over the Internet.
	WanPublicIp pulumi.StringOutput `pulumi:"wanPublicIp"`
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringOutput `pulumi:"ztpFileDownloadPath"`
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringOutput `pulumi:"ztpFileType"`
}

The **aviatrix_edge_spoke** resource creates the Aviatrix Edge as a Spoke. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeSpoke(ctx, "test", &aviatrix.AviatrixEdgeSpokeArgs{
			GwName:                    pulumi.String("edge-test"),
			LanInterfaceIpPrefix:      pulumi.String("10.60.0.0/24"),
			LocalAsNumber:             pulumi.String("65000"),
			ManagementInterfaceConfig: pulumi.String("DHCP"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65000"),
				pulumi.String("65000"),
			},
			SiteId:               pulumi.String("site-123"),
			WanDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			WanInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			ZtpFileDownloadPath:  pulumi.String("/ztp/download/path"),
			ZtpFileType:          pulumi.String("iso"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeSpoke(ctx, "test", &aviatrix.AviatrixEdgeSpokeArgs{
			DnsServerIp:                 pulumi.String("10.60.0.0"),
			GwName:                      pulumi.String("edge-test"),
			LanInterfaceIpPrefix:        pulumi.String("10.60.0.0/24"),
			LocalAsNumber:               pulumi.String("65000"),
			ManagementDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			ManagementInterfaceConfig:   pulumi.String("Static"),
			ManagementInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65000"),
				pulumi.String("65000"),
			},
			SecondaryDnsServerIp: pulumi.String("10.60.0.0"),
			SiteId:               pulumi.String("site-123"),
			WanDefaultGatewayIp:  pulumi.String("10.60.0.0"),
			WanInterfaceIpPrefix: pulumi.String("10.60.0.0/24"),
			ZtpFileDownloadPath:  pulumi.String("/ztp/download/path"),
			ZtpFileType:          pulumi.String("iso"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**edge_spoke** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixEdgeSpoke:AviatrixEdgeSpoke test gw_name

```

func GetAviatrixEdgeSpoke

func GetAviatrixEdgeSpoke(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixEdgeSpokeState, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpoke, error)

GetAviatrixEdgeSpoke gets an existing AviatrixEdgeSpoke 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 NewAviatrixEdgeSpoke

func NewAviatrixEdgeSpoke(ctx *pulumi.Context,
	name string, args *AviatrixEdgeSpokeArgs, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpoke, error)

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

func (*AviatrixEdgeSpoke) ElementType

func (*AviatrixEdgeSpoke) ElementType() reflect.Type

func (*AviatrixEdgeSpoke) ToAviatrixEdgeSpokeOutput

func (i *AviatrixEdgeSpoke) ToAviatrixEdgeSpokeOutput() AviatrixEdgeSpokeOutput

func (*AviatrixEdgeSpoke) ToAviatrixEdgeSpokeOutputWithContext

func (i *AviatrixEdgeSpoke) ToAviatrixEdgeSpokeOutputWithContext(ctx context.Context) AviatrixEdgeSpokeOutput

type AviatrixEdgeSpokeArgs

type AviatrixEdgeSpokeArgs struct {
	// Set of approved learned CIDRs. Valid only when `enableLearnedCidrsApproval` is set to true. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: 50.
	BgpPollingTime pulumi.IntPtrInput
	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrInput
	// Switch to enable Edge Active-Standby mode. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandby pulumi.BoolPtrInput
	// Switch to enable Preemptive Mode for Edge Active-Standby. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandbyPreemptive pulumi.BoolPtrInput
	// Switch to enable Edge transitive routing. Valid values: true, false. Default value: false.
	EnableEdgeTransitiveRouting pulumi.BoolPtrInput
	// Switch to enable jumbo frame. Valid values: true, false. Default value: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable learned CIDR approval. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Switch to enable management over the private network. Valid values: true, false. Default value: false.
	EnableManagementOverPrivateNetwork pulumi.BoolPtrInput
	// Switch to enable preserve asPath when advertising manual summary CIDRs. Valid values: true, false. Default value: false.
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Edge as a Spoke name.
	GwName pulumi.StringInput
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringInput
	// Latitude of Edge as a Spoke. Valid values are between -90 and 90. Example: "47.7511".
	Latitude pulumi.StringPtrInput
	// BGP AS Number to assign to Edge as a Spoke.
	LocalAsNumber pulumi.StringPtrInput
	// Longitude of Edge as a Spoke. Valid values are between -180 and 180. Example: "120.7401".
	Longitude pulumi.StringPtrInput
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrInput
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrInput
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringInput
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrInput
	// List of AS numbers to prepend gateway BGP AS_Path field. Valid only when `localAsNumber` is set. Example: ["65023", "65023"].
	PrependAsPaths pulumi.StringArrayInput
	// Ethernet interface RX queue size. Once set, can't be deleted or disabled. Valid values: "1K", "2K", "4K".
	RxQueueSize pulumi.StringPtrInput
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrInput
	// Site ID.
	SiteId pulumi.StringInput
	// Set of intended CIDRs to be advertised to external BGP router. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayInput
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringInput
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringInput
	// WAN public IP. Required for attaching connections over the Internet.
	WanPublicIp pulumi.StringPtrInput
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringInput
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringInput
}

The set of arguments for constructing a AviatrixEdgeSpoke resource.

func (AviatrixEdgeSpokeArgs) ElementType

func (AviatrixEdgeSpokeArgs) ElementType() reflect.Type

type AviatrixEdgeSpokeArray

type AviatrixEdgeSpokeArray []AviatrixEdgeSpokeInput

func (AviatrixEdgeSpokeArray) ElementType

func (AviatrixEdgeSpokeArray) ElementType() reflect.Type

func (AviatrixEdgeSpokeArray) ToAviatrixEdgeSpokeArrayOutput

func (i AviatrixEdgeSpokeArray) ToAviatrixEdgeSpokeArrayOutput() AviatrixEdgeSpokeArrayOutput

func (AviatrixEdgeSpokeArray) ToAviatrixEdgeSpokeArrayOutputWithContext

func (i AviatrixEdgeSpokeArray) ToAviatrixEdgeSpokeArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeArrayOutput

type AviatrixEdgeSpokeArrayInput

type AviatrixEdgeSpokeArrayInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeArrayOutput() AviatrixEdgeSpokeArrayOutput
	ToAviatrixEdgeSpokeArrayOutputWithContext(context.Context) AviatrixEdgeSpokeArrayOutput
}

AviatrixEdgeSpokeArrayInput is an input type that accepts AviatrixEdgeSpokeArray and AviatrixEdgeSpokeArrayOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeArrayInput` via:

AviatrixEdgeSpokeArray{ AviatrixEdgeSpokeArgs{...} }

type AviatrixEdgeSpokeArrayOutput

type AviatrixEdgeSpokeArrayOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeArrayOutput) ElementType

func (AviatrixEdgeSpokeArrayOutput) Index

func (AviatrixEdgeSpokeArrayOutput) ToAviatrixEdgeSpokeArrayOutput

func (o AviatrixEdgeSpokeArrayOutput) ToAviatrixEdgeSpokeArrayOutput() AviatrixEdgeSpokeArrayOutput

func (AviatrixEdgeSpokeArrayOutput) ToAviatrixEdgeSpokeArrayOutputWithContext

func (o AviatrixEdgeSpokeArrayOutput) ToAviatrixEdgeSpokeArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeArrayOutput

type AviatrixEdgeSpokeExternalDeviceConn

type AviatrixEdgeSpokeExternalDeviceConn struct {
	pulumi.CustomResourceState

	// BGP local AS number.
	BgpLocalAsNum pulumi.StringOutput `pulumi:"bgpLocalAsNum"`
	// BGP remote AS number.
	BgpRemoteAsNum pulumi.StringOutput `pulumi:"bgpRemoteAsNum"`
	// Connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Connection type. Valid value: 'bgp'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"`
	// Edge as a Spoke name.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Local LAN IP.
	LocalLanIp pulumi.StringOutput `pulumi:"localLanIp"`
	// Remote LAN IP.
	RemoteLanIp pulumi.StringOutput `pulumi:"remoteLanIp"`
	// Edge as a Spoke site iD.
	SiteId pulumi.StringOutput `pulumi:"siteId"`
	// Tunnel protocol. Valid value: 'LAN'. Default value: 'LAN'. Case insensitive.
	TunnelProtocol pulumi.StringPtrOutput `pulumi:"tunnelProtocol"`
}

The **aviatrix_edge_spoke_external_device_conn** resource creates and manages the connection between Edge as a Spoke and an External Device. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeSpokeExternalDeviceConn(ctx, "test", &aviatrix.AviatrixEdgeSpokeExternalDeviceConnArgs{
			BgpLocalAsNum:  pulumi.String("123"),
			BgpRemoteAsNum: pulumi.String("345"),
			ConnectionName: pulumi.String("conn"),
			GwName:         pulumi.String("eaas"),
			LocalLanIp:     pulumi.String("10.230.3.23"),
			RemoteLanIp:    pulumi.String("10.0.60.1"),
			SiteId:         pulumi.String("site-abcd1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**edge_spoke_external_device_conn** can be imported using the `connection_name` and `site_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixEdgeSpokeExternalDeviceConn:AviatrixEdgeSpokeExternalDeviceConn test connection_name~site_id

```

func GetAviatrixEdgeSpokeExternalDeviceConn

func GetAviatrixEdgeSpokeExternalDeviceConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixEdgeSpokeExternalDeviceConnState, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpokeExternalDeviceConn, error)

GetAviatrixEdgeSpokeExternalDeviceConn gets an existing AviatrixEdgeSpokeExternalDeviceConn 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 NewAviatrixEdgeSpokeExternalDeviceConn

func NewAviatrixEdgeSpokeExternalDeviceConn(ctx *pulumi.Context,
	name string, args *AviatrixEdgeSpokeExternalDeviceConnArgs, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpokeExternalDeviceConn, error)

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

func (*AviatrixEdgeSpokeExternalDeviceConn) ElementType

func (*AviatrixEdgeSpokeExternalDeviceConn) ToAviatrixEdgeSpokeExternalDeviceConnOutput

func (i *AviatrixEdgeSpokeExternalDeviceConn) ToAviatrixEdgeSpokeExternalDeviceConnOutput() AviatrixEdgeSpokeExternalDeviceConnOutput

func (*AviatrixEdgeSpokeExternalDeviceConn) ToAviatrixEdgeSpokeExternalDeviceConnOutputWithContext

func (i *AviatrixEdgeSpokeExternalDeviceConn) ToAviatrixEdgeSpokeExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnOutput

type AviatrixEdgeSpokeExternalDeviceConnArgs

type AviatrixEdgeSpokeExternalDeviceConnArgs struct {
	// BGP local AS number.
	BgpLocalAsNum pulumi.StringInput
	// BGP remote AS number.
	BgpRemoteAsNum pulumi.StringInput
	// Connection name.
	ConnectionName pulumi.StringInput
	// Connection type. Valid value: 'bgp'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Edge as a Spoke name.
	GwName pulumi.StringInput
	// Local LAN IP.
	LocalLanIp pulumi.StringInput
	// Remote LAN IP.
	RemoteLanIp pulumi.StringInput
	// Edge as a Spoke site iD.
	SiteId pulumi.StringInput
	// Tunnel protocol. Valid value: 'LAN'. Default value: 'LAN'. Case insensitive.
	TunnelProtocol pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixEdgeSpokeExternalDeviceConn resource.

func (AviatrixEdgeSpokeExternalDeviceConnArgs) ElementType

type AviatrixEdgeSpokeExternalDeviceConnArray

type AviatrixEdgeSpokeExternalDeviceConnArray []AviatrixEdgeSpokeExternalDeviceConnInput

func (AviatrixEdgeSpokeExternalDeviceConnArray) ElementType

func (AviatrixEdgeSpokeExternalDeviceConnArray) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutput

func (i AviatrixEdgeSpokeExternalDeviceConnArray) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutput() AviatrixEdgeSpokeExternalDeviceConnArrayOutput

func (AviatrixEdgeSpokeExternalDeviceConnArray) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutputWithContext

func (i AviatrixEdgeSpokeExternalDeviceConnArray) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnArrayOutput

type AviatrixEdgeSpokeExternalDeviceConnArrayInput

type AviatrixEdgeSpokeExternalDeviceConnArrayInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeExternalDeviceConnArrayOutput() AviatrixEdgeSpokeExternalDeviceConnArrayOutput
	ToAviatrixEdgeSpokeExternalDeviceConnArrayOutputWithContext(context.Context) AviatrixEdgeSpokeExternalDeviceConnArrayOutput
}

AviatrixEdgeSpokeExternalDeviceConnArrayInput is an input type that accepts AviatrixEdgeSpokeExternalDeviceConnArray and AviatrixEdgeSpokeExternalDeviceConnArrayOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeExternalDeviceConnArrayInput` via:

AviatrixEdgeSpokeExternalDeviceConnArray{ AviatrixEdgeSpokeExternalDeviceConnArgs{...} }

type AviatrixEdgeSpokeExternalDeviceConnArrayOutput

type AviatrixEdgeSpokeExternalDeviceConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeExternalDeviceConnArrayOutput) ElementType

func (AviatrixEdgeSpokeExternalDeviceConnArrayOutput) Index

func (AviatrixEdgeSpokeExternalDeviceConnArrayOutput) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutput

func (o AviatrixEdgeSpokeExternalDeviceConnArrayOutput) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutput() AviatrixEdgeSpokeExternalDeviceConnArrayOutput

func (AviatrixEdgeSpokeExternalDeviceConnArrayOutput) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutputWithContext

func (o AviatrixEdgeSpokeExternalDeviceConnArrayOutput) ToAviatrixEdgeSpokeExternalDeviceConnArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnArrayOutput

type AviatrixEdgeSpokeExternalDeviceConnInput

type AviatrixEdgeSpokeExternalDeviceConnInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeExternalDeviceConnOutput() AviatrixEdgeSpokeExternalDeviceConnOutput
	ToAviatrixEdgeSpokeExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnOutput
}

type AviatrixEdgeSpokeExternalDeviceConnMap

type AviatrixEdgeSpokeExternalDeviceConnMap map[string]AviatrixEdgeSpokeExternalDeviceConnInput

func (AviatrixEdgeSpokeExternalDeviceConnMap) ElementType

func (AviatrixEdgeSpokeExternalDeviceConnMap) ToAviatrixEdgeSpokeExternalDeviceConnMapOutput

func (i AviatrixEdgeSpokeExternalDeviceConnMap) ToAviatrixEdgeSpokeExternalDeviceConnMapOutput() AviatrixEdgeSpokeExternalDeviceConnMapOutput

func (AviatrixEdgeSpokeExternalDeviceConnMap) ToAviatrixEdgeSpokeExternalDeviceConnMapOutputWithContext

func (i AviatrixEdgeSpokeExternalDeviceConnMap) ToAviatrixEdgeSpokeExternalDeviceConnMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnMapOutput

type AviatrixEdgeSpokeExternalDeviceConnMapInput

type AviatrixEdgeSpokeExternalDeviceConnMapInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeExternalDeviceConnMapOutput() AviatrixEdgeSpokeExternalDeviceConnMapOutput
	ToAviatrixEdgeSpokeExternalDeviceConnMapOutputWithContext(context.Context) AviatrixEdgeSpokeExternalDeviceConnMapOutput
}

AviatrixEdgeSpokeExternalDeviceConnMapInput is an input type that accepts AviatrixEdgeSpokeExternalDeviceConnMap and AviatrixEdgeSpokeExternalDeviceConnMapOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeExternalDeviceConnMapInput` via:

AviatrixEdgeSpokeExternalDeviceConnMap{ "key": AviatrixEdgeSpokeExternalDeviceConnArgs{...} }

type AviatrixEdgeSpokeExternalDeviceConnMapOutput

type AviatrixEdgeSpokeExternalDeviceConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeExternalDeviceConnMapOutput) ElementType

func (AviatrixEdgeSpokeExternalDeviceConnMapOutput) MapIndex

func (AviatrixEdgeSpokeExternalDeviceConnMapOutput) ToAviatrixEdgeSpokeExternalDeviceConnMapOutput

func (o AviatrixEdgeSpokeExternalDeviceConnMapOutput) ToAviatrixEdgeSpokeExternalDeviceConnMapOutput() AviatrixEdgeSpokeExternalDeviceConnMapOutput

func (AviatrixEdgeSpokeExternalDeviceConnMapOutput) ToAviatrixEdgeSpokeExternalDeviceConnMapOutputWithContext

func (o AviatrixEdgeSpokeExternalDeviceConnMapOutput) ToAviatrixEdgeSpokeExternalDeviceConnMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnMapOutput

type AviatrixEdgeSpokeExternalDeviceConnOutput

type AviatrixEdgeSpokeExternalDeviceConnOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeExternalDeviceConnOutput) BgpLocalAsNum

BGP local AS number.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) BgpRemoteAsNum

BGP remote AS number.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) ConnectionName

Connection name.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) ConnectionType

Connection type. Valid value: 'bgp'. Default value: 'bgp'.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) ElementType

func (AviatrixEdgeSpokeExternalDeviceConnOutput) GwName

Edge as a Spoke name.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) LocalLanIp

Local LAN IP.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) RemoteLanIp

Remote LAN IP.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) SiteId

Edge as a Spoke site iD.

func (AviatrixEdgeSpokeExternalDeviceConnOutput) ToAviatrixEdgeSpokeExternalDeviceConnOutput

func (o AviatrixEdgeSpokeExternalDeviceConnOutput) ToAviatrixEdgeSpokeExternalDeviceConnOutput() AviatrixEdgeSpokeExternalDeviceConnOutput

func (AviatrixEdgeSpokeExternalDeviceConnOutput) ToAviatrixEdgeSpokeExternalDeviceConnOutputWithContext

func (o AviatrixEdgeSpokeExternalDeviceConnOutput) ToAviatrixEdgeSpokeExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixEdgeSpokeExternalDeviceConnOutput

func (AviatrixEdgeSpokeExternalDeviceConnOutput) TunnelProtocol

Tunnel protocol. Valid value: 'LAN'. Default value: 'LAN'. Case insensitive.

type AviatrixEdgeSpokeExternalDeviceConnState

type AviatrixEdgeSpokeExternalDeviceConnState struct {
	// BGP local AS number.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP remote AS number.
	BgpRemoteAsNum pulumi.StringPtrInput
	// Connection name.
	ConnectionName pulumi.StringPtrInput
	// Connection type. Valid value: 'bgp'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Edge as a Spoke name.
	GwName pulumi.StringPtrInput
	// Local LAN IP.
	LocalLanIp pulumi.StringPtrInput
	// Remote LAN IP.
	RemoteLanIp pulumi.StringPtrInput
	// Edge as a Spoke site iD.
	SiteId pulumi.StringPtrInput
	// Tunnel protocol. Valid value: 'LAN'. Default value: 'LAN'. Case insensitive.
	TunnelProtocol pulumi.StringPtrInput
}

func (AviatrixEdgeSpokeExternalDeviceConnState) ElementType

type AviatrixEdgeSpokeInput

type AviatrixEdgeSpokeInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeOutput() AviatrixEdgeSpokeOutput
	ToAviatrixEdgeSpokeOutputWithContext(ctx context.Context) AviatrixEdgeSpokeOutput
}

type AviatrixEdgeSpokeMap

type AviatrixEdgeSpokeMap map[string]AviatrixEdgeSpokeInput

func (AviatrixEdgeSpokeMap) ElementType

func (AviatrixEdgeSpokeMap) ElementType() reflect.Type

func (AviatrixEdgeSpokeMap) ToAviatrixEdgeSpokeMapOutput

func (i AviatrixEdgeSpokeMap) ToAviatrixEdgeSpokeMapOutput() AviatrixEdgeSpokeMapOutput

func (AviatrixEdgeSpokeMap) ToAviatrixEdgeSpokeMapOutputWithContext

func (i AviatrixEdgeSpokeMap) ToAviatrixEdgeSpokeMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeMapOutput

type AviatrixEdgeSpokeMapInput

type AviatrixEdgeSpokeMapInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeMapOutput() AviatrixEdgeSpokeMapOutput
	ToAviatrixEdgeSpokeMapOutputWithContext(context.Context) AviatrixEdgeSpokeMapOutput
}

AviatrixEdgeSpokeMapInput is an input type that accepts AviatrixEdgeSpokeMap and AviatrixEdgeSpokeMapOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeMapInput` via:

AviatrixEdgeSpokeMap{ "key": AviatrixEdgeSpokeArgs{...} }

type AviatrixEdgeSpokeMapOutput

type AviatrixEdgeSpokeMapOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeMapOutput) ElementType

func (AviatrixEdgeSpokeMapOutput) ElementType() reflect.Type

func (AviatrixEdgeSpokeMapOutput) MapIndex

func (AviatrixEdgeSpokeMapOutput) ToAviatrixEdgeSpokeMapOutput

func (o AviatrixEdgeSpokeMapOutput) ToAviatrixEdgeSpokeMapOutput() AviatrixEdgeSpokeMapOutput

func (AviatrixEdgeSpokeMapOutput) ToAviatrixEdgeSpokeMapOutputWithContext

func (o AviatrixEdgeSpokeMapOutput) ToAviatrixEdgeSpokeMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeMapOutput

type AviatrixEdgeSpokeOutput

type AviatrixEdgeSpokeOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeOutput) ApprovedLearnedCidrs

func (o AviatrixEdgeSpokeOutput) ApprovedLearnedCidrs() pulumi.StringArrayOutput

Set of approved learned CIDRs. Valid only when `enableLearnedCidrsApproval` is set to true. Example: ["10.1.0.0/116", "10.2.0.0/16"].

func (AviatrixEdgeSpokeOutput) BgpHoldTime

BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.

func (AviatrixEdgeSpokeOutput) BgpPollingTime

func (o AviatrixEdgeSpokeOutput) BgpPollingTime() pulumi.IntPtrOutput

BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: 50.

func (AviatrixEdgeSpokeOutput) DnsServerIp

DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeSpokeOutput) ElementType

func (AviatrixEdgeSpokeOutput) ElementType() reflect.Type

func (AviatrixEdgeSpokeOutput) EnableEdgeActiveStandby

func (o AviatrixEdgeSpokeOutput) EnableEdgeActiveStandby() pulumi.BoolPtrOutput

Switch to enable Edge Active-Standby mode. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnableEdgeActiveStandbyPreemptive

func (o AviatrixEdgeSpokeOutput) EnableEdgeActiveStandbyPreemptive() pulumi.BoolPtrOutput

Switch to enable Preemptive Mode for Edge Active-Standby. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnableEdgeTransitiveRouting

func (o AviatrixEdgeSpokeOutput) EnableEdgeTransitiveRouting() pulumi.BoolPtrOutput

Switch to enable Edge transitive routing. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnableJumboFrame

func (o AviatrixEdgeSpokeOutput) EnableJumboFrame() pulumi.BoolPtrOutput

Switch to enable jumbo frame. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnableLearnedCidrsApproval

func (o AviatrixEdgeSpokeOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Switch to enable learned CIDR approval. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnableManagementOverPrivateNetwork

func (o AviatrixEdgeSpokeOutput) EnableManagementOverPrivateNetwork() pulumi.BoolPtrOutput

Switch to enable management over the private network. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) EnablePreserveAsPath

func (o AviatrixEdgeSpokeOutput) EnablePreserveAsPath() pulumi.BoolPtrOutput

Switch to enable preserve asPath when advertising manual summary CIDRs. Valid values: true, false. Default value: false.

func (AviatrixEdgeSpokeOutput) GwName

Edge as a Spoke name.

func (AviatrixEdgeSpokeOutput) LanInterfaceIpPrefix

func (o AviatrixEdgeSpokeOutput) LanInterfaceIpPrefix() pulumi.StringOutput

LAN interface IP and subnet prefix.

func (AviatrixEdgeSpokeOutput) Latitude

Latitude of Edge as a Spoke. Valid values are between -90 and 90. Example: "47.7511".

func (AviatrixEdgeSpokeOutput) LocalAsNumber

func (o AviatrixEdgeSpokeOutput) LocalAsNumber() pulumi.StringOutput

BGP AS Number to assign to Edge as a Spoke.

func (AviatrixEdgeSpokeOutput) Longitude

Longitude of Edge as a Spoke. Valid values are between -180 and 180. Example: "120.7401".

func (AviatrixEdgeSpokeOutput) ManagementDefaultGatewayIp

func (o AviatrixEdgeSpokeOutput) ManagementDefaultGatewayIp() pulumi.StringPtrOutput

Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeSpokeOutput) ManagementEgressIpPrefix

func (o AviatrixEdgeSpokeOutput) ManagementEgressIpPrefix() pulumi.StringPtrOutput

Management egress gateway IP and subnet prefix.

func (AviatrixEdgeSpokeOutput) ManagementInterfaceConfig

func (o AviatrixEdgeSpokeOutput) ManagementInterfaceConfig() pulumi.StringOutput

Management interface configuration. Valid values: "DHCP", "Static".

func (AviatrixEdgeSpokeOutput) ManagementInterfaceIpPrefix

func (o AviatrixEdgeSpokeOutput) ManagementInterfaceIpPrefix() pulumi.StringPtrOutput

Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeSpokeOutput) PrependAsPaths

List of AS numbers to prepend gateway BGP AS_Path field. Valid only when `localAsNumber` is set. Example: ["65023", "65023"].

func (AviatrixEdgeSpokeOutput) RxQueueSize

Ethernet interface RX queue size. Once set, can't be deleted or disabled. Valid values: "1K", "2K", "4K".

func (AviatrixEdgeSpokeOutput) SecondaryDnsServerIp

func (o AviatrixEdgeSpokeOutput) SecondaryDnsServerIp() pulumi.StringPtrOutput

Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".

func (AviatrixEdgeSpokeOutput) SiteId

Site ID.

func (AviatrixEdgeSpokeOutput) SpokeBgpManualAdvertiseCidrs

func (o AviatrixEdgeSpokeOutput) SpokeBgpManualAdvertiseCidrs() pulumi.StringArrayOutput

Set of intended CIDRs to be advertised to external BGP router. Example: ["10.1.0.0/116", "10.2.0.0/16"].

func (AviatrixEdgeSpokeOutput) State

State of Edge as a Spoke.

func (AviatrixEdgeSpokeOutput) ToAviatrixEdgeSpokeOutput

func (o AviatrixEdgeSpokeOutput) ToAviatrixEdgeSpokeOutput() AviatrixEdgeSpokeOutput

func (AviatrixEdgeSpokeOutput) ToAviatrixEdgeSpokeOutputWithContext

func (o AviatrixEdgeSpokeOutput) ToAviatrixEdgeSpokeOutputWithContext(ctx context.Context) AviatrixEdgeSpokeOutput

func (AviatrixEdgeSpokeOutput) WanDefaultGatewayIp

func (o AviatrixEdgeSpokeOutput) WanDefaultGatewayIp() pulumi.StringOutput

WAN default gateway IP.

func (AviatrixEdgeSpokeOutput) WanInterfaceIpPrefix

func (o AviatrixEdgeSpokeOutput) WanInterfaceIpPrefix() pulumi.StringOutput

WAN interface IP and subnet prefix.

func (AviatrixEdgeSpokeOutput) WanPublicIp

WAN public IP. Required for attaching connections over the Internet.

func (AviatrixEdgeSpokeOutput) ZtpFileDownloadPath

func (o AviatrixEdgeSpokeOutput) ZtpFileDownloadPath() pulumi.StringOutput

The folder path where the ZTP file will be downloaded.

func (AviatrixEdgeSpokeOutput) ZtpFileType

ZTP file type. Valid values: "iso", "cloud-init".

type AviatrixEdgeSpokeState

type AviatrixEdgeSpokeState struct {
	// Set of approved learned CIDRs. Valid only when `enableLearnedCidrsApproval` is set to true. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: 50.
	BgpPollingTime pulumi.IntPtrInput
	// DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	DnsServerIp pulumi.StringPtrInput
	// Switch to enable Edge Active-Standby mode. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandby pulumi.BoolPtrInput
	// Switch to enable Preemptive Mode for Edge Active-Standby. Valid values: true, false. Default value: false.
	EnableEdgeActiveStandbyPreemptive pulumi.BoolPtrInput
	// Switch to enable Edge transitive routing. Valid values: true, false. Default value: false.
	EnableEdgeTransitiveRouting pulumi.BoolPtrInput
	// Switch to enable jumbo frame. Valid values: true, false. Default value: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable learned CIDR approval. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Switch to enable management over the private network. Valid values: true, false. Default value: false.
	EnableManagementOverPrivateNetwork pulumi.BoolPtrInput
	// Switch to enable preserve asPath when advertising manual summary CIDRs. Valid values: true, false. Default value: false.
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Edge as a Spoke name.
	GwName pulumi.StringPtrInput
	// LAN interface IP and subnet prefix.
	LanInterfaceIpPrefix pulumi.StringPtrInput
	// Latitude of Edge as a Spoke. Valid values are between -90 and 90. Example: "47.7511".
	Latitude pulumi.StringPtrInput
	// BGP AS Number to assign to Edge as a Spoke.
	LocalAsNumber pulumi.StringPtrInput
	// Longitude of Edge as a Spoke. Valid values are between -180 and 180. Example: "120.7401".
	Longitude pulumi.StringPtrInput
	// Management default gateway IP. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementDefaultGatewayIp pulumi.StringPtrInput
	// Management egress gateway IP and subnet prefix.
	ManagementEgressIpPrefix pulumi.StringPtrInput
	// Management interface configuration. Valid values: "DHCP", "Static".
	ManagementInterfaceConfig pulumi.StringPtrInput
	// Management interface IP and subnet prefix. Required and valid when `managementInterfaceConfig` is "Static".
	ManagementInterfaceIpPrefix pulumi.StringPtrInput
	// List of AS numbers to prepend gateway BGP AS_Path field. Valid only when `localAsNumber` is set. Example: ["65023", "65023"].
	PrependAsPaths pulumi.StringArrayInput
	// Ethernet interface RX queue size. Once set, can't be deleted or disabled. Valid values: "1K", "2K", "4K".
	RxQueueSize pulumi.StringPtrInput
	// Secondary DNS server IP. Required and valid when `managementInterfaceConfig` is "Static".
	SecondaryDnsServerIp pulumi.StringPtrInput
	// Site ID.
	SiteId pulumi.StringPtrInput
	// Set of intended CIDRs to be advertised to external BGP router. Example: ["10.1.0.0/116", "10.2.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayInput
	// State of Edge as a Spoke.
	State pulumi.StringPtrInput
	// WAN default gateway IP.
	WanDefaultGatewayIp pulumi.StringPtrInput
	// WAN interface IP and subnet prefix.
	WanInterfaceIpPrefix pulumi.StringPtrInput
	// WAN public IP. Required for attaching connections over the Internet.
	WanPublicIp pulumi.StringPtrInput
	// The folder path where the ZTP file will be downloaded.
	ZtpFileDownloadPath pulumi.StringPtrInput
	// ZTP file type. Valid values: "iso", "cloud-init".
	ZtpFileType pulumi.StringPtrInput
}

func (AviatrixEdgeSpokeState) ElementType

func (AviatrixEdgeSpokeState) ElementType() reflect.Type

type AviatrixEdgeSpokeTransitAttachment

type AviatrixEdgeSpokeTransitAttachment struct {
	pulumi.CustomResourceState

	// Switch to enable insane mode. Valid values: true, false. Default: false.
	EnableInsaneMode pulumi.BoolPtrOutput `pulumi:"enableInsaneMode"`
	// Switch to enable jumbo frame. Valid values: true, false. Default: false.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Switch to enable over the private network. Valid values: true, false. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrOutput `pulumi:"enableOverPrivateNetwork"`
	// Insane mode tunnel number. Default: 0.
	InsaneModeTunnelNumber pulumi.IntPtrOutput `pulumi:"insaneModeTunnelNumber"`
	// Name of the Edge as a Spoke to attach to transit network.
	SpokeGwName pulumi.StringOutput `pulumi:"spokeGwName"`
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Edge as a Spoke.
	SpokePrependAsPaths pulumi.StringArrayOutput `pulumi:"spokePrependAsPaths"`
	// Name of the transit gateway to attach the Edge as a Spoke to.
	TransitGwName pulumi.StringOutput `pulumi:"transitGwName"`
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Transit Gateway.
	TransitPrependAsPaths pulumi.StringArrayOutput `pulumi:"transitPrependAsPaths"`
}

The **aviatrix_edge_spoke_transit_attachment** resource allows the creation and management of Aviatrix Edge as a Spoke to Transit gateway attachments. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixEdgeSpokeTransitAttachment(ctx, "testAttachment", &aviatrix.AviatrixEdgeSpokeTransitAttachmentArgs{
			SpokeGwName:   pulumi.String("edge-as-a-spoke"),
			TransitGwName: pulumi.String("transit-gw"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**spoke_transit_attachment** can be imported using the `spoke_gw_name` and `transit_gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixEdgeSpokeTransitAttachment:AviatrixEdgeSpokeTransitAttachment test spoke_gw_name~transit_gw_name

```

func GetAviatrixEdgeSpokeTransitAttachment

func GetAviatrixEdgeSpokeTransitAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixEdgeSpokeTransitAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpokeTransitAttachment, error)

GetAviatrixEdgeSpokeTransitAttachment gets an existing AviatrixEdgeSpokeTransitAttachment 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 NewAviatrixEdgeSpokeTransitAttachment

func NewAviatrixEdgeSpokeTransitAttachment(ctx *pulumi.Context,
	name string, args *AviatrixEdgeSpokeTransitAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixEdgeSpokeTransitAttachment, error)

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

func (*AviatrixEdgeSpokeTransitAttachment) ElementType

func (*AviatrixEdgeSpokeTransitAttachment) ToAviatrixEdgeSpokeTransitAttachmentOutput

func (i *AviatrixEdgeSpokeTransitAttachment) ToAviatrixEdgeSpokeTransitAttachmentOutput() AviatrixEdgeSpokeTransitAttachmentOutput

func (*AviatrixEdgeSpokeTransitAttachment) ToAviatrixEdgeSpokeTransitAttachmentOutputWithContext

func (i *AviatrixEdgeSpokeTransitAttachment) ToAviatrixEdgeSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentOutput

type AviatrixEdgeSpokeTransitAttachmentArgs

type AviatrixEdgeSpokeTransitAttachmentArgs struct {
	// Switch to enable insane mode. Valid values: true, false. Default: false.
	EnableInsaneMode pulumi.BoolPtrInput
	// Switch to enable jumbo frame. Valid values: true, false. Default: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable over the private network. Valid values: true, false. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// Insane mode tunnel number. Default: 0.
	InsaneModeTunnelNumber pulumi.IntPtrInput
	// Name of the Edge as a Spoke to attach to transit network.
	SpokeGwName pulumi.StringInput
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Edge as a Spoke.
	SpokePrependAsPaths pulumi.StringArrayInput
	// Name of the transit gateway to attach the Edge as a Spoke to.
	TransitGwName pulumi.StringInput
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Transit Gateway.
	TransitPrependAsPaths pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixEdgeSpokeTransitAttachment resource.

func (AviatrixEdgeSpokeTransitAttachmentArgs) ElementType

type AviatrixEdgeSpokeTransitAttachmentArray

type AviatrixEdgeSpokeTransitAttachmentArray []AviatrixEdgeSpokeTransitAttachmentInput

func (AviatrixEdgeSpokeTransitAttachmentArray) ElementType

func (AviatrixEdgeSpokeTransitAttachmentArray) ToAviatrixEdgeSpokeTransitAttachmentArrayOutput

func (i AviatrixEdgeSpokeTransitAttachmentArray) ToAviatrixEdgeSpokeTransitAttachmentArrayOutput() AviatrixEdgeSpokeTransitAttachmentArrayOutput

func (AviatrixEdgeSpokeTransitAttachmentArray) ToAviatrixEdgeSpokeTransitAttachmentArrayOutputWithContext

func (i AviatrixEdgeSpokeTransitAttachmentArray) ToAviatrixEdgeSpokeTransitAttachmentArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentArrayOutput

type AviatrixEdgeSpokeTransitAttachmentArrayInput

type AviatrixEdgeSpokeTransitAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeTransitAttachmentArrayOutput() AviatrixEdgeSpokeTransitAttachmentArrayOutput
	ToAviatrixEdgeSpokeTransitAttachmentArrayOutputWithContext(context.Context) AviatrixEdgeSpokeTransitAttachmentArrayOutput
}

AviatrixEdgeSpokeTransitAttachmentArrayInput is an input type that accepts AviatrixEdgeSpokeTransitAttachmentArray and AviatrixEdgeSpokeTransitAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeTransitAttachmentArrayInput` via:

AviatrixEdgeSpokeTransitAttachmentArray{ AviatrixEdgeSpokeTransitAttachmentArgs{...} }

type AviatrixEdgeSpokeTransitAttachmentArrayOutput

type AviatrixEdgeSpokeTransitAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeTransitAttachmentArrayOutput) ElementType

func (AviatrixEdgeSpokeTransitAttachmentArrayOutput) Index

func (AviatrixEdgeSpokeTransitAttachmentArrayOutput) ToAviatrixEdgeSpokeTransitAttachmentArrayOutput

func (o AviatrixEdgeSpokeTransitAttachmentArrayOutput) ToAviatrixEdgeSpokeTransitAttachmentArrayOutput() AviatrixEdgeSpokeTransitAttachmentArrayOutput

func (AviatrixEdgeSpokeTransitAttachmentArrayOutput) ToAviatrixEdgeSpokeTransitAttachmentArrayOutputWithContext

func (o AviatrixEdgeSpokeTransitAttachmentArrayOutput) ToAviatrixEdgeSpokeTransitAttachmentArrayOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentArrayOutput

type AviatrixEdgeSpokeTransitAttachmentInput

type AviatrixEdgeSpokeTransitAttachmentInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeTransitAttachmentOutput() AviatrixEdgeSpokeTransitAttachmentOutput
	ToAviatrixEdgeSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentOutput
}

type AviatrixEdgeSpokeTransitAttachmentMap

type AviatrixEdgeSpokeTransitAttachmentMap map[string]AviatrixEdgeSpokeTransitAttachmentInput

func (AviatrixEdgeSpokeTransitAttachmentMap) ElementType

func (AviatrixEdgeSpokeTransitAttachmentMap) ToAviatrixEdgeSpokeTransitAttachmentMapOutput

func (i AviatrixEdgeSpokeTransitAttachmentMap) ToAviatrixEdgeSpokeTransitAttachmentMapOutput() AviatrixEdgeSpokeTransitAttachmentMapOutput

func (AviatrixEdgeSpokeTransitAttachmentMap) ToAviatrixEdgeSpokeTransitAttachmentMapOutputWithContext

func (i AviatrixEdgeSpokeTransitAttachmentMap) ToAviatrixEdgeSpokeTransitAttachmentMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentMapOutput

type AviatrixEdgeSpokeTransitAttachmentMapInput

type AviatrixEdgeSpokeTransitAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixEdgeSpokeTransitAttachmentMapOutput() AviatrixEdgeSpokeTransitAttachmentMapOutput
	ToAviatrixEdgeSpokeTransitAttachmentMapOutputWithContext(context.Context) AviatrixEdgeSpokeTransitAttachmentMapOutput
}

AviatrixEdgeSpokeTransitAttachmentMapInput is an input type that accepts AviatrixEdgeSpokeTransitAttachmentMap and AviatrixEdgeSpokeTransitAttachmentMapOutput values. You can construct a concrete instance of `AviatrixEdgeSpokeTransitAttachmentMapInput` via:

AviatrixEdgeSpokeTransitAttachmentMap{ "key": AviatrixEdgeSpokeTransitAttachmentArgs{...} }

type AviatrixEdgeSpokeTransitAttachmentMapOutput

type AviatrixEdgeSpokeTransitAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeTransitAttachmentMapOutput) ElementType

func (AviatrixEdgeSpokeTransitAttachmentMapOutput) MapIndex

func (AviatrixEdgeSpokeTransitAttachmentMapOutput) ToAviatrixEdgeSpokeTransitAttachmentMapOutput

func (o AviatrixEdgeSpokeTransitAttachmentMapOutput) ToAviatrixEdgeSpokeTransitAttachmentMapOutput() AviatrixEdgeSpokeTransitAttachmentMapOutput

func (AviatrixEdgeSpokeTransitAttachmentMapOutput) ToAviatrixEdgeSpokeTransitAttachmentMapOutputWithContext

func (o AviatrixEdgeSpokeTransitAttachmentMapOutput) ToAviatrixEdgeSpokeTransitAttachmentMapOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentMapOutput

type AviatrixEdgeSpokeTransitAttachmentOutput

type AviatrixEdgeSpokeTransitAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixEdgeSpokeTransitAttachmentOutput) ElementType

func (AviatrixEdgeSpokeTransitAttachmentOutput) EnableInsaneMode

Switch to enable insane mode. Valid values: true, false. Default: false.

func (AviatrixEdgeSpokeTransitAttachmentOutput) EnableJumboFrame

Switch to enable jumbo frame. Valid values: true, false. Default: false.

func (AviatrixEdgeSpokeTransitAttachmentOutput) EnableOverPrivateNetwork

func (o AviatrixEdgeSpokeTransitAttachmentOutput) EnableOverPrivateNetwork() pulumi.BoolPtrOutput

Switch to enable over the private network. Valid values: true, false. Default: true.

func (AviatrixEdgeSpokeTransitAttachmentOutput) InsaneModeTunnelNumber

Insane mode tunnel number. Default: 0.

func (AviatrixEdgeSpokeTransitAttachmentOutput) SpokeGwName

Name of the Edge as a Spoke to attach to transit network.

func (AviatrixEdgeSpokeTransitAttachmentOutput) SpokePrependAsPaths

Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Edge as a Spoke.

func (AviatrixEdgeSpokeTransitAttachmentOutput) ToAviatrixEdgeSpokeTransitAttachmentOutput

func (o AviatrixEdgeSpokeTransitAttachmentOutput) ToAviatrixEdgeSpokeTransitAttachmentOutput() AviatrixEdgeSpokeTransitAttachmentOutput

func (AviatrixEdgeSpokeTransitAttachmentOutput) ToAviatrixEdgeSpokeTransitAttachmentOutputWithContext

func (o AviatrixEdgeSpokeTransitAttachmentOutput) ToAviatrixEdgeSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixEdgeSpokeTransitAttachmentOutput

func (AviatrixEdgeSpokeTransitAttachmentOutput) TransitGwName

Name of the transit gateway to attach the Edge as a Spoke to.

func (AviatrixEdgeSpokeTransitAttachmentOutput) TransitPrependAsPaths

Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Transit Gateway.

type AviatrixEdgeSpokeTransitAttachmentState

type AviatrixEdgeSpokeTransitAttachmentState struct {
	// Switch to enable insane mode. Valid values: true, false. Default: false.
	EnableInsaneMode pulumi.BoolPtrInput
	// Switch to enable jumbo frame. Valid values: true, false. Default: false.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable over the private network. Valid values: true, false. Default: true.
	EnableOverPrivateNetwork pulumi.BoolPtrInput
	// Insane mode tunnel number. Default: 0.
	InsaneModeTunnelNumber pulumi.IntPtrInput
	// Name of the Edge as a Spoke to attach to transit network.
	SpokeGwName pulumi.StringPtrInput
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Edge as a Spoke.
	SpokePrependAsPaths pulumi.StringArrayInput
	// Name of the transit gateway to attach the Edge as a Spoke to.
	TransitGwName pulumi.StringPtrInput
	// Connection based AS Path Prepend. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on the Transit Gateway.
	TransitPrependAsPaths pulumi.StringArrayInput
}

func (AviatrixEdgeSpokeTransitAttachmentState) ElementType

type AviatrixFilebeatForwarder

type AviatrixFilebeatForwarder struct {
	pulumi.CustomResourceState

	// The config file. Use the `file` function to read from a file.
	ConfigFile pulumi.StringPtrOutput `pulumi:"configFile"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Port number.
	Port pulumi.IntOutput `pulumi:"port"`
	// Server IP.
	Server pulumi.StringOutput `pulumi:"server"`
	// The status of filebeat forwarder.
	Status pulumi.StringOutput `pulumi:"status"`
	// The trusted CA file. Use the `file` function to read from a file.
	TrustedCaFile pulumi.StringPtrOutput `pulumi:"trustedCaFile"`
}

The **aviatrix_filebeat_forwarder** resource allows the enabling and disabling of filebeat forwarder.

## Example Usage

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFilebeatForwarder(ctx, "testFilebeatForwarder", &aviatrix.AviatrixFilebeatForwarderArgs{
			Server:        pulumi.String("1.2.3.4"),
			Port:          pulumi.Int(10),
			TrustedCaFile: readFileOrPanic("/path/to/ca.pem"),
			ConfigFile:    readFileOrPanic("/path/to/config.txt"),
			ExcludedGateways: pulumi.StringArray{
				pulumi.String("a"),
				pulumi.String("b"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**filebeat_forwarder** can be imported using "filebeat_forwarder", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFilebeatForwarder:AviatrixFilebeatForwarder test filebeat_forwarder

```

func GetAviatrixFilebeatForwarder

func GetAviatrixFilebeatForwarder(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFilebeatForwarderState, opts ...pulumi.ResourceOption) (*AviatrixFilebeatForwarder, error)

GetAviatrixFilebeatForwarder gets an existing AviatrixFilebeatForwarder 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 NewAviatrixFilebeatForwarder

func NewAviatrixFilebeatForwarder(ctx *pulumi.Context,
	name string, args *AviatrixFilebeatForwarderArgs, opts ...pulumi.ResourceOption) (*AviatrixFilebeatForwarder, error)

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

func (*AviatrixFilebeatForwarder) ElementType

func (*AviatrixFilebeatForwarder) ElementType() reflect.Type

func (*AviatrixFilebeatForwarder) ToAviatrixFilebeatForwarderOutput

func (i *AviatrixFilebeatForwarder) ToAviatrixFilebeatForwarderOutput() AviatrixFilebeatForwarderOutput

func (*AviatrixFilebeatForwarder) ToAviatrixFilebeatForwarderOutputWithContext

func (i *AviatrixFilebeatForwarder) ToAviatrixFilebeatForwarderOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderOutput

type AviatrixFilebeatForwarderArgs

type AviatrixFilebeatForwarderArgs struct {
	// The config file. Use the `file` function to read from a file.
	ConfigFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Port number.
	Port pulumi.IntInput
	// Server IP.
	Server pulumi.StringInput
	// The trusted CA file. Use the `file` function to read from a file.
	TrustedCaFile pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixFilebeatForwarder resource.

func (AviatrixFilebeatForwarderArgs) ElementType

type AviatrixFilebeatForwarderArray

type AviatrixFilebeatForwarderArray []AviatrixFilebeatForwarderInput

func (AviatrixFilebeatForwarderArray) ElementType

func (AviatrixFilebeatForwarderArray) ToAviatrixFilebeatForwarderArrayOutput

func (i AviatrixFilebeatForwarderArray) ToAviatrixFilebeatForwarderArrayOutput() AviatrixFilebeatForwarderArrayOutput

func (AviatrixFilebeatForwarderArray) ToAviatrixFilebeatForwarderArrayOutputWithContext

func (i AviatrixFilebeatForwarderArray) ToAviatrixFilebeatForwarderArrayOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderArrayOutput

type AviatrixFilebeatForwarderArrayInput

type AviatrixFilebeatForwarderArrayInput interface {
	pulumi.Input

	ToAviatrixFilebeatForwarderArrayOutput() AviatrixFilebeatForwarderArrayOutput
	ToAviatrixFilebeatForwarderArrayOutputWithContext(context.Context) AviatrixFilebeatForwarderArrayOutput
}

AviatrixFilebeatForwarderArrayInput is an input type that accepts AviatrixFilebeatForwarderArray and AviatrixFilebeatForwarderArrayOutput values. You can construct a concrete instance of `AviatrixFilebeatForwarderArrayInput` via:

AviatrixFilebeatForwarderArray{ AviatrixFilebeatForwarderArgs{...} }

type AviatrixFilebeatForwarderArrayOutput

type AviatrixFilebeatForwarderArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFilebeatForwarderArrayOutput) ElementType

func (AviatrixFilebeatForwarderArrayOutput) Index

func (AviatrixFilebeatForwarderArrayOutput) ToAviatrixFilebeatForwarderArrayOutput

func (o AviatrixFilebeatForwarderArrayOutput) ToAviatrixFilebeatForwarderArrayOutput() AviatrixFilebeatForwarderArrayOutput

func (AviatrixFilebeatForwarderArrayOutput) ToAviatrixFilebeatForwarderArrayOutputWithContext

func (o AviatrixFilebeatForwarderArrayOutput) ToAviatrixFilebeatForwarderArrayOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderArrayOutput

type AviatrixFilebeatForwarderInput

type AviatrixFilebeatForwarderInput interface {
	pulumi.Input

	ToAviatrixFilebeatForwarderOutput() AviatrixFilebeatForwarderOutput
	ToAviatrixFilebeatForwarderOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderOutput
}

type AviatrixFilebeatForwarderMap

type AviatrixFilebeatForwarderMap map[string]AviatrixFilebeatForwarderInput

func (AviatrixFilebeatForwarderMap) ElementType

func (AviatrixFilebeatForwarderMap) ToAviatrixFilebeatForwarderMapOutput

func (i AviatrixFilebeatForwarderMap) ToAviatrixFilebeatForwarderMapOutput() AviatrixFilebeatForwarderMapOutput

func (AviatrixFilebeatForwarderMap) ToAviatrixFilebeatForwarderMapOutputWithContext

func (i AviatrixFilebeatForwarderMap) ToAviatrixFilebeatForwarderMapOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderMapOutput

type AviatrixFilebeatForwarderMapInput

type AviatrixFilebeatForwarderMapInput interface {
	pulumi.Input

	ToAviatrixFilebeatForwarderMapOutput() AviatrixFilebeatForwarderMapOutput
	ToAviatrixFilebeatForwarderMapOutputWithContext(context.Context) AviatrixFilebeatForwarderMapOutput
}

AviatrixFilebeatForwarderMapInput is an input type that accepts AviatrixFilebeatForwarderMap and AviatrixFilebeatForwarderMapOutput values. You can construct a concrete instance of `AviatrixFilebeatForwarderMapInput` via:

AviatrixFilebeatForwarderMap{ "key": AviatrixFilebeatForwarderArgs{...} }

type AviatrixFilebeatForwarderMapOutput

type AviatrixFilebeatForwarderMapOutput struct{ *pulumi.OutputState }

func (AviatrixFilebeatForwarderMapOutput) ElementType

func (AviatrixFilebeatForwarderMapOutput) MapIndex

func (AviatrixFilebeatForwarderMapOutput) ToAviatrixFilebeatForwarderMapOutput

func (o AviatrixFilebeatForwarderMapOutput) ToAviatrixFilebeatForwarderMapOutput() AviatrixFilebeatForwarderMapOutput

func (AviatrixFilebeatForwarderMapOutput) ToAviatrixFilebeatForwarderMapOutputWithContext

func (o AviatrixFilebeatForwarderMapOutput) ToAviatrixFilebeatForwarderMapOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderMapOutput

type AviatrixFilebeatForwarderOutput

type AviatrixFilebeatForwarderOutput struct{ *pulumi.OutputState }

func (AviatrixFilebeatForwarderOutput) ConfigFile

The config file. Use the `file` function to read from a file.

func (AviatrixFilebeatForwarderOutput) ElementType

func (AviatrixFilebeatForwarderOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixFilebeatForwarderOutput) Port

Port number.

func (AviatrixFilebeatForwarderOutput) Server

Server IP.

func (AviatrixFilebeatForwarderOutput) Status

The status of filebeat forwarder.

func (AviatrixFilebeatForwarderOutput) ToAviatrixFilebeatForwarderOutput

func (o AviatrixFilebeatForwarderOutput) ToAviatrixFilebeatForwarderOutput() AviatrixFilebeatForwarderOutput

func (AviatrixFilebeatForwarderOutput) ToAviatrixFilebeatForwarderOutputWithContext

func (o AviatrixFilebeatForwarderOutput) ToAviatrixFilebeatForwarderOutputWithContext(ctx context.Context) AviatrixFilebeatForwarderOutput

func (AviatrixFilebeatForwarderOutput) TrustedCaFile

The trusted CA file. Use the `file` function to read from a file.

type AviatrixFilebeatForwarderState

type AviatrixFilebeatForwarderState struct {
	// The config file. Use the `file` function to read from a file.
	ConfigFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Port number.
	Port pulumi.IntPtrInput
	// Server IP.
	Server pulumi.StringPtrInput
	// The status of filebeat forwarder.
	Status pulumi.StringPtrInput
	// The trusted CA file. Use the `file` function to read from a file.
	TrustedCaFile pulumi.StringPtrInput
}

func (AviatrixFilebeatForwarderState) ElementType

type AviatrixFirenet

type AviatrixFirenet struct {
	pulumi.CustomResourceState

	// Network List Excluded From East-West Inspection. CIDRs to be excluded from inspection. Type: Set(String). Available as of provider version R2.19.5+.
	EastWestInspectionExcludedCidrs pulumi.StringArrayOutput `pulumi:"eastWestInspectionExcludedCidrs"`
	// Enable/disable egress through firewall. Valid values: true, false. Default value: false.
	EgressEnabled pulumi.BoolPtrOutput `pulumi:"egressEnabled"`
	// List of egress static CIDRs. Egress is required to be enabled. Example: ["1.171.15.184/32", "1.171.15.185/32"]. Available as of provider version R2.19+.
	EgressStaticCidrs pulumi.StringArrayOutput `pulumi:"egressStaticCidrs"`
	// Dynamic block of firewall instance(s) to be associated with the FireNet.
	//
	// Deprecated: Please set `manage_firewall_instance_association` to false, and use the standalone aviatrix_firewall_instance_association resource instead.
	FirewallInstanceAssociations AviatrixFirenetFirewallInstanceAssociationArrayOutput `pulumi:"firewallInstanceAssociations"`
	// Hashing algorithm to load balance traffic across the firewall. Valid values: "2-Tuple", "5-Tuple". Default value: "5-Tuple".
	HashingAlgorithm pulumi.StringPtrOutput `pulumi:"hashingAlgorithm"`
	// Enable/disable traffic inspection. Valid values: true, false. Default value: true.
	InspectionEnabled pulumi.BoolPtrOutput `pulumi:"inspectionEnabled"`
	// Enable Keep Alive via Firewall LAN Interface. Valid values: true or false. Default value: false. Available as of provider version R2.18.1+.
	KeepAliveViaLanInterfaceEnabled pulumi.BoolPtrOutput `pulumi:"keepAliveViaLanInterfaceEnabled"`
	// Enable this attribute to manage firewall associations in-line. If set to true, in-line `firewallInstanceAssociation` blocks can be used. If set to false, all firewall associations must be managed via standalone `AviatrixFirewallInstanceAssociation` resources. Default value: true. Valid values: true or false. Available in provider version R2.17.1+.
	ManageFirewallInstanceAssociation pulumi.BoolPtrOutput `pulumi:"manageFirewallInstanceAssociation"`
	// Enable TGW segmentation for egress. Valid values: true or false. Default value: false. Available as of provider version R2.19+.
	TgwSegmentationForEgressEnabled pulumi.BoolPtrOutput `pulumi:"tgwSegmentationForEgressEnabled"`
	// VPC ID of the Security VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_firenet** resource allows the creation and management of [Aviatrix Firewall Networks](https://docs.aviatrix.com/HowTos/firewall_network_faq.html).

> **NOTE:** This resource is used in conjunction with multiple other resources that may include, and are not limited to: **firewall_instance**, **firewall_instance_association**, **aws_tgw**, and **transit_gateway** resources or even **aviatrix_fqdn**, under the Aviatrix FireNet solution. Explicit dependencies may be set using `dependsOn`. For more information on proper FireNet configuration, please see the workflow [here](https://docs.aviatrix.com/HowTos/firewall_network_workflow.html).

## Import

**firenet** can be imported using the `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirenet:AviatrixFirenet test vpc_id

```

func GetAviatrixFirenet

func GetAviatrixFirenet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirenetState, opts ...pulumi.ResourceOption) (*AviatrixFirenet, error)

GetAviatrixFirenet gets an existing AviatrixFirenet 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 NewAviatrixFirenet

func NewAviatrixFirenet(ctx *pulumi.Context,
	name string, args *AviatrixFirenetArgs, opts ...pulumi.ResourceOption) (*AviatrixFirenet, error)

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

func (*AviatrixFirenet) ElementType

func (*AviatrixFirenet) ElementType() reflect.Type

func (*AviatrixFirenet) ToAviatrixFirenetOutput

func (i *AviatrixFirenet) ToAviatrixFirenetOutput() AviatrixFirenetOutput

func (*AviatrixFirenet) ToAviatrixFirenetOutputWithContext

func (i *AviatrixFirenet) ToAviatrixFirenetOutputWithContext(ctx context.Context) AviatrixFirenetOutput

type AviatrixFirenetArgs

type AviatrixFirenetArgs struct {
	// Network List Excluded From East-West Inspection. CIDRs to be excluded from inspection. Type: Set(String). Available as of provider version R2.19.5+.
	EastWestInspectionExcludedCidrs pulumi.StringArrayInput
	// Enable/disable egress through firewall. Valid values: true, false. Default value: false.
	EgressEnabled pulumi.BoolPtrInput
	// List of egress static CIDRs. Egress is required to be enabled. Example: ["1.171.15.184/32", "1.171.15.185/32"]. Available as of provider version R2.19+.
	EgressStaticCidrs pulumi.StringArrayInput
	// Dynamic block of firewall instance(s) to be associated with the FireNet.
	//
	// Deprecated: Please set `manage_firewall_instance_association` to false, and use the standalone aviatrix_firewall_instance_association resource instead.
	FirewallInstanceAssociations AviatrixFirenetFirewallInstanceAssociationArrayInput
	// Hashing algorithm to load balance traffic across the firewall. Valid values: "2-Tuple", "5-Tuple". Default value: "5-Tuple".
	HashingAlgorithm pulumi.StringPtrInput
	// Enable/disable traffic inspection. Valid values: true, false. Default value: true.
	InspectionEnabled pulumi.BoolPtrInput
	// Enable Keep Alive via Firewall LAN Interface. Valid values: true or false. Default value: false. Available as of provider version R2.18.1+.
	KeepAliveViaLanInterfaceEnabled pulumi.BoolPtrInput
	// Enable this attribute to manage firewall associations in-line. If set to true, in-line `firewallInstanceAssociation` blocks can be used. If set to false, all firewall associations must be managed via standalone `AviatrixFirewallInstanceAssociation` resources. Default value: true. Valid values: true or false. Available in provider version R2.17.1+.
	ManageFirewallInstanceAssociation pulumi.BoolPtrInput
	// Enable TGW segmentation for egress. Valid values: true or false. Default value: false. Available as of provider version R2.19+.
	TgwSegmentationForEgressEnabled pulumi.BoolPtrInput
	// VPC ID of the Security VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixFirenet resource.

func (AviatrixFirenetArgs) ElementType

func (AviatrixFirenetArgs) ElementType() reflect.Type

type AviatrixFirenetArray

type AviatrixFirenetArray []AviatrixFirenetInput

func (AviatrixFirenetArray) ElementType

func (AviatrixFirenetArray) ElementType() reflect.Type

func (AviatrixFirenetArray) ToAviatrixFirenetArrayOutput

func (i AviatrixFirenetArray) ToAviatrixFirenetArrayOutput() AviatrixFirenetArrayOutput

func (AviatrixFirenetArray) ToAviatrixFirenetArrayOutputWithContext

func (i AviatrixFirenetArray) ToAviatrixFirenetArrayOutputWithContext(ctx context.Context) AviatrixFirenetArrayOutput

type AviatrixFirenetArrayInput

type AviatrixFirenetArrayInput interface {
	pulumi.Input

	ToAviatrixFirenetArrayOutput() AviatrixFirenetArrayOutput
	ToAviatrixFirenetArrayOutputWithContext(context.Context) AviatrixFirenetArrayOutput
}

AviatrixFirenetArrayInput is an input type that accepts AviatrixFirenetArray and AviatrixFirenetArrayOutput values. You can construct a concrete instance of `AviatrixFirenetArrayInput` via:

AviatrixFirenetArray{ AviatrixFirenetArgs{...} }

type AviatrixFirenetArrayOutput

type AviatrixFirenetArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirenetArrayOutput) ElementType

func (AviatrixFirenetArrayOutput) ElementType() reflect.Type

func (AviatrixFirenetArrayOutput) Index

func (AviatrixFirenetArrayOutput) ToAviatrixFirenetArrayOutput

func (o AviatrixFirenetArrayOutput) ToAviatrixFirenetArrayOutput() AviatrixFirenetArrayOutput

func (AviatrixFirenetArrayOutput) ToAviatrixFirenetArrayOutputWithContext

func (o AviatrixFirenetArrayOutput) ToAviatrixFirenetArrayOutputWithContext(ctx context.Context) AviatrixFirenetArrayOutput

type AviatrixFirenetFirewallInstanceAssociation

type AviatrixFirenetFirewallInstanceAssociation struct {
	// Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.
	Attached *bool `pulumi:"attached"`
	// Egress interface ID. **Required if it is a firewall instance.**
	EgressInterface *string `pulumi:"egressInterface"`
	// Name of the primary FireNet gateway.
	FirenetGwName string `pulumi:"firenetGwName"`
	// Firewall instance name. **Required if it is a firewall instance.**
	FirewallName *string `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId string `pulumi:"instanceId"`
	// Lan interface ID. **Required if it is a firewall instance or FQDN gateway in Azure.**
	LanInterface *string `pulumi:"lanInterface"`
	// Management interface ID. **Required if it is a firewall instance.**
	ManagementInterface *string `pulumi:"managementInterface"`
	// Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.
	VendorType *string `pulumi:"vendorType"`
}

type AviatrixFirenetFirewallInstanceAssociationArgs

type AviatrixFirenetFirewallInstanceAssociationArgs struct {
	// Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.
	Attached pulumi.BoolPtrInput `pulumi:"attached"`
	// Egress interface ID. **Required if it is a firewall instance.**
	EgressInterface pulumi.StringPtrInput `pulumi:"egressInterface"`
	// Name of the primary FireNet gateway.
	FirenetGwName pulumi.StringInput `pulumi:"firenetGwName"`
	// Firewall instance name. **Required if it is a firewall instance.**
	FirewallName pulumi.StringPtrInput `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Lan interface ID. **Required if it is a firewall instance or FQDN gateway in Azure.**
	LanInterface pulumi.StringPtrInput `pulumi:"lanInterface"`
	// Management interface ID. **Required if it is a firewall instance.**
	ManagementInterface pulumi.StringPtrInput `pulumi:"managementInterface"`
	// Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.
	VendorType pulumi.StringPtrInput `pulumi:"vendorType"`
}

func (AviatrixFirenetFirewallInstanceAssociationArgs) ElementType

func (AviatrixFirenetFirewallInstanceAssociationArgs) ToAviatrixFirenetFirewallInstanceAssociationOutput

func (i AviatrixFirenetFirewallInstanceAssociationArgs) ToAviatrixFirenetFirewallInstanceAssociationOutput() AviatrixFirenetFirewallInstanceAssociationOutput

func (AviatrixFirenetFirewallInstanceAssociationArgs) ToAviatrixFirenetFirewallInstanceAssociationOutputWithContext

func (i AviatrixFirenetFirewallInstanceAssociationArgs) ToAviatrixFirenetFirewallInstanceAssociationOutputWithContext(ctx context.Context) AviatrixFirenetFirewallInstanceAssociationOutput

type AviatrixFirenetFirewallInstanceAssociationArray

type AviatrixFirenetFirewallInstanceAssociationArray []AviatrixFirenetFirewallInstanceAssociationInput

func (AviatrixFirenetFirewallInstanceAssociationArray) ElementType

func (AviatrixFirenetFirewallInstanceAssociationArray) ToAviatrixFirenetFirewallInstanceAssociationArrayOutput

func (i AviatrixFirenetFirewallInstanceAssociationArray) ToAviatrixFirenetFirewallInstanceAssociationArrayOutput() AviatrixFirenetFirewallInstanceAssociationArrayOutput

func (AviatrixFirenetFirewallInstanceAssociationArray) ToAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext

func (i AviatrixFirenetFirewallInstanceAssociationArray) ToAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) AviatrixFirenetFirewallInstanceAssociationArrayOutput

type AviatrixFirenetFirewallInstanceAssociationArrayInput

type AviatrixFirenetFirewallInstanceAssociationArrayInput interface {
	pulumi.Input

	ToAviatrixFirenetFirewallInstanceAssociationArrayOutput() AviatrixFirenetFirewallInstanceAssociationArrayOutput
	ToAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(context.Context) AviatrixFirenetFirewallInstanceAssociationArrayOutput
}

AviatrixFirenetFirewallInstanceAssociationArrayInput is an input type that accepts AviatrixFirenetFirewallInstanceAssociationArray and AviatrixFirenetFirewallInstanceAssociationArrayOutput values. You can construct a concrete instance of `AviatrixFirenetFirewallInstanceAssociationArrayInput` via:

AviatrixFirenetFirewallInstanceAssociationArray{ AviatrixFirenetFirewallInstanceAssociationArgs{...} }

type AviatrixFirenetFirewallInstanceAssociationArrayOutput

type AviatrixFirenetFirewallInstanceAssociationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirenetFirewallInstanceAssociationArrayOutput) ElementType

func (AviatrixFirenetFirewallInstanceAssociationArrayOutput) Index

func (AviatrixFirenetFirewallInstanceAssociationArrayOutput) ToAviatrixFirenetFirewallInstanceAssociationArrayOutput

func (AviatrixFirenetFirewallInstanceAssociationArrayOutput) ToAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext

func (o AviatrixFirenetFirewallInstanceAssociationArrayOutput) ToAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) AviatrixFirenetFirewallInstanceAssociationArrayOutput

type AviatrixFirenetFirewallInstanceAssociationInput

type AviatrixFirenetFirewallInstanceAssociationInput interface {
	pulumi.Input

	ToAviatrixFirenetFirewallInstanceAssociationOutput() AviatrixFirenetFirewallInstanceAssociationOutput
	ToAviatrixFirenetFirewallInstanceAssociationOutputWithContext(context.Context) AviatrixFirenetFirewallInstanceAssociationOutput
}

AviatrixFirenetFirewallInstanceAssociationInput is an input type that accepts AviatrixFirenetFirewallInstanceAssociationArgs and AviatrixFirenetFirewallInstanceAssociationOutput values. You can construct a concrete instance of `AviatrixFirenetFirewallInstanceAssociationInput` via:

AviatrixFirenetFirewallInstanceAssociationArgs{...}

type AviatrixFirenetFirewallInstanceAssociationOutput

type AviatrixFirenetFirewallInstanceAssociationOutput struct{ *pulumi.OutputState }

func (AviatrixFirenetFirewallInstanceAssociationOutput) Attached

Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.

func (AviatrixFirenetFirewallInstanceAssociationOutput) EgressInterface

Egress interface ID. **Required if it is a firewall instance.**

func (AviatrixFirenetFirewallInstanceAssociationOutput) ElementType

func (AviatrixFirenetFirewallInstanceAssociationOutput) FirenetGwName

Name of the primary FireNet gateway.

func (AviatrixFirenetFirewallInstanceAssociationOutput) FirewallName

Firewall instance name. **Required if it is a firewall instance.**

func (AviatrixFirenetFirewallInstanceAssociationOutput) InstanceId

ID of Firewall instance.

func (AviatrixFirenetFirewallInstanceAssociationOutput) LanInterface

Lan interface ID. **Required if it is a firewall instance or FQDN gateway in Azure.**

func (AviatrixFirenetFirewallInstanceAssociationOutput) ManagementInterface

Management interface ID. **Required if it is a firewall instance.**

func (AviatrixFirenetFirewallInstanceAssociationOutput) ToAviatrixFirenetFirewallInstanceAssociationOutput

func (o AviatrixFirenetFirewallInstanceAssociationOutput) ToAviatrixFirenetFirewallInstanceAssociationOutput() AviatrixFirenetFirewallInstanceAssociationOutput

func (AviatrixFirenetFirewallInstanceAssociationOutput) ToAviatrixFirenetFirewallInstanceAssociationOutputWithContext

func (o AviatrixFirenetFirewallInstanceAssociationOutput) ToAviatrixFirenetFirewallInstanceAssociationOutputWithContext(ctx context.Context) AviatrixFirenetFirewallInstanceAssociationOutput

func (AviatrixFirenetFirewallInstanceAssociationOutput) VendorType

Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.

type AviatrixFirenetInput

type AviatrixFirenetInput interface {
	pulumi.Input

	ToAviatrixFirenetOutput() AviatrixFirenetOutput
	ToAviatrixFirenetOutputWithContext(ctx context.Context) AviatrixFirenetOutput
}

type AviatrixFirenetMap

type AviatrixFirenetMap map[string]AviatrixFirenetInput

func (AviatrixFirenetMap) ElementType

func (AviatrixFirenetMap) ElementType() reflect.Type

func (AviatrixFirenetMap) ToAviatrixFirenetMapOutput

func (i AviatrixFirenetMap) ToAviatrixFirenetMapOutput() AviatrixFirenetMapOutput

func (AviatrixFirenetMap) ToAviatrixFirenetMapOutputWithContext

func (i AviatrixFirenetMap) ToAviatrixFirenetMapOutputWithContext(ctx context.Context) AviatrixFirenetMapOutput

type AviatrixFirenetMapInput

type AviatrixFirenetMapInput interface {
	pulumi.Input

	ToAviatrixFirenetMapOutput() AviatrixFirenetMapOutput
	ToAviatrixFirenetMapOutputWithContext(context.Context) AviatrixFirenetMapOutput
}

AviatrixFirenetMapInput is an input type that accepts AviatrixFirenetMap and AviatrixFirenetMapOutput values. You can construct a concrete instance of `AviatrixFirenetMapInput` via:

AviatrixFirenetMap{ "key": AviatrixFirenetArgs{...} }

type AviatrixFirenetMapOutput

type AviatrixFirenetMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirenetMapOutput) ElementType

func (AviatrixFirenetMapOutput) ElementType() reflect.Type

func (AviatrixFirenetMapOutput) MapIndex

func (AviatrixFirenetMapOutput) ToAviatrixFirenetMapOutput

func (o AviatrixFirenetMapOutput) ToAviatrixFirenetMapOutput() AviatrixFirenetMapOutput

func (AviatrixFirenetMapOutput) ToAviatrixFirenetMapOutputWithContext

func (o AviatrixFirenetMapOutput) ToAviatrixFirenetMapOutputWithContext(ctx context.Context) AviatrixFirenetMapOutput

type AviatrixFirenetOutput

type AviatrixFirenetOutput struct{ *pulumi.OutputState }

func (AviatrixFirenetOutput) EastWestInspectionExcludedCidrs

func (o AviatrixFirenetOutput) EastWestInspectionExcludedCidrs() pulumi.StringArrayOutput

Network List Excluded From East-West Inspection. CIDRs to be excluded from inspection. Type: Set(String). Available as of provider version R2.19.5+.

func (AviatrixFirenetOutput) EgressEnabled

func (o AviatrixFirenetOutput) EgressEnabled() pulumi.BoolPtrOutput

Enable/disable egress through firewall. Valid values: true, false. Default value: false.

func (AviatrixFirenetOutput) EgressStaticCidrs

func (o AviatrixFirenetOutput) EgressStaticCidrs() pulumi.StringArrayOutput

List of egress static CIDRs. Egress is required to be enabled. Example: ["1.171.15.184/32", "1.171.15.185/32"]. Available as of provider version R2.19+.

func (AviatrixFirenetOutput) ElementType

func (AviatrixFirenetOutput) ElementType() reflect.Type

func (AviatrixFirenetOutput) FirewallInstanceAssociations deprecated

Dynamic block of firewall instance(s) to be associated with the FireNet.

Deprecated: Please set `manage_firewall_instance_association` to false, and use the standalone aviatrix_firewall_instance_association resource instead.

func (AviatrixFirenetOutput) HashingAlgorithm

func (o AviatrixFirenetOutput) HashingAlgorithm() pulumi.StringPtrOutput

Hashing algorithm to load balance traffic across the firewall. Valid values: "2-Tuple", "5-Tuple". Default value: "5-Tuple".

func (AviatrixFirenetOutput) InspectionEnabled

func (o AviatrixFirenetOutput) InspectionEnabled() pulumi.BoolPtrOutput

Enable/disable traffic inspection. Valid values: true, false. Default value: true.

func (AviatrixFirenetOutput) KeepAliveViaLanInterfaceEnabled

func (o AviatrixFirenetOutput) KeepAliveViaLanInterfaceEnabled() pulumi.BoolPtrOutput

Enable Keep Alive via Firewall LAN Interface. Valid values: true or false. Default value: false. Available as of provider version R2.18.1+.

func (AviatrixFirenetOutput) ManageFirewallInstanceAssociation

func (o AviatrixFirenetOutput) ManageFirewallInstanceAssociation() pulumi.BoolPtrOutput

Enable this attribute to manage firewall associations in-line. If set to true, in-line `firewallInstanceAssociation` blocks can be used. If set to false, all firewall associations must be managed via standalone `AviatrixFirewallInstanceAssociation` resources. Default value: true. Valid values: true or false. Available in provider version R2.17.1+.

func (AviatrixFirenetOutput) TgwSegmentationForEgressEnabled

func (o AviatrixFirenetOutput) TgwSegmentationForEgressEnabled() pulumi.BoolPtrOutput

Enable TGW segmentation for egress. Valid values: true or false. Default value: false. Available as of provider version R2.19+.

func (AviatrixFirenetOutput) ToAviatrixFirenetOutput

func (o AviatrixFirenetOutput) ToAviatrixFirenetOutput() AviatrixFirenetOutput

func (AviatrixFirenetOutput) ToAviatrixFirenetOutputWithContext

func (o AviatrixFirenetOutput) ToAviatrixFirenetOutputWithContext(ctx context.Context) AviatrixFirenetOutput

func (AviatrixFirenetOutput) VpcId

VPC ID of the Security VPC.

type AviatrixFirenetState

type AviatrixFirenetState struct {
	// Network List Excluded From East-West Inspection. CIDRs to be excluded from inspection. Type: Set(String). Available as of provider version R2.19.5+.
	EastWestInspectionExcludedCidrs pulumi.StringArrayInput
	// Enable/disable egress through firewall. Valid values: true, false. Default value: false.
	EgressEnabled pulumi.BoolPtrInput
	// List of egress static CIDRs. Egress is required to be enabled. Example: ["1.171.15.184/32", "1.171.15.185/32"]. Available as of provider version R2.19+.
	EgressStaticCidrs pulumi.StringArrayInput
	// Dynamic block of firewall instance(s) to be associated with the FireNet.
	//
	// Deprecated: Please set `manage_firewall_instance_association` to false, and use the standalone aviatrix_firewall_instance_association resource instead.
	FirewallInstanceAssociations AviatrixFirenetFirewallInstanceAssociationArrayInput
	// Hashing algorithm to load balance traffic across the firewall. Valid values: "2-Tuple", "5-Tuple". Default value: "5-Tuple".
	HashingAlgorithm pulumi.StringPtrInput
	// Enable/disable traffic inspection. Valid values: true, false. Default value: true.
	InspectionEnabled pulumi.BoolPtrInput
	// Enable Keep Alive via Firewall LAN Interface. Valid values: true or false. Default value: false. Available as of provider version R2.18.1+.
	KeepAliveViaLanInterfaceEnabled pulumi.BoolPtrInput
	// Enable this attribute to manage firewall associations in-line. If set to true, in-line `firewallInstanceAssociation` blocks can be used. If set to false, all firewall associations must be managed via standalone `AviatrixFirewallInstanceAssociation` resources. Default value: true. Valid values: true or false. Available in provider version R2.17.1+.
	ManageFirewallInstanceAssociation pulumi.BoolPtrInput
	// Enable TGW segmentation for egress. Valid values: true or false. Default value: false. Available as of provider version R2.19+.
	TgwSegmentationForEgressEnabled pulumi.BoolPtrInput
	// VPC ID of the Security VPC.
	VpcId pulumi.StringPtrInput
}

func (AviatrixFirenetState) ElementType

func (AviatrixFirenetState) ElementType() reflect.Type

type AviatrixFirewall

type AviatrixFirewall struct {
	pulumi.CustomResourceState

	// Indicates whether enable logging or not. Valid Values: true, false. Default value: false.
	BaseLogEnabled pulumi.BoolPtrOutput `pulumi:"baseLogEnabled"`
	// New base policy. Valid Values: "allow-all", "deny-all". Default value: "deny-all"
	BasePolicy pulumi.StringPtrOutput `pulumi:"basePolicy"`
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Enable to manage firewall policies via in-line rules. If false, policies must be managed using `AviatrixFirewallPolicy` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageFirewallPolicies pulumi.BoolPtrOutput `pulumi:"manageFirewallPolicies"`
	// New access policy for the gateway. Seven fields are required for each policy item: `srcIp`, `dstIp`, `protocol`, `port`, `action`, `logEnabled` and `description`. No duplicate rules (with same `srcIp`, `dstIp`, `protocol` and `port`) are allowed.
	Policies AviatrixFirewallPolicyTypeArrayOutput `pulumi:"policies"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewall(ctx, "statefulFirewall1", &aviatrix.AviatrixFirewallArgs{
			BaseLogEnabled:         pulumi.Bool(true),
			BasePolicy:             pulumi.String("allow-all"),
			GwName:                 pulumi.String("gateway-1"),
			ManageFirewallPolicies: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewall(ctx, "statefulFirewall1", &aviatrix.AviatrixFirewallArgs{
			GwName:         pulumi.String("gateway-1"),
			BasePolicy:     pulumi.String("allow-all"),
			BaseLogEnabled: pulumi.Bool(true),
			Policies: AviatrixFirewallPolicyTypeArray{
				&AviatrixFirewallPolicyTypeArgs{
					Protocol:    pulumi.String("all"),
					SrcIp:       pulumi.String("10.17.0.224/32"),
					LogEnabled:  pulumi.Bool(true),
					DstIp:       pulumi.String("10.12.0.172/32"),
					Action:      pulumi.String("force-drop"),
					Port:        pulumi.String("0:65535"),
					Description: pulumi.String("first_policy"),
				},
				&AviatrixFirewallPolicyTypeArgs{
					Protocol:    pulumi.String("tcp"),
					SrcIp:       pulumi.String("10.16.0.224/32"),
					LogEnabled:  pulumi.Bool(false),
					DstIp:       pulumi.String("10.12.1.172/32"),
					Action:      pulumi.String("force-drop"),
					Port:        pulumi.String("325"),
					Description: pulumi.String("second_policy"),
				},
				&AviatrixFirewallPolicyTypeArgs{
					Protocol:    pulumi.String("udp"),
					SrcIp:       pulumi.String("10.14.0.225/32"),
					LogEnabled:  pulumi.Bool(false),
					DstIp:       pulumi.String("10.13.1.173/32"),
					Action:      pulumi.String("deny"),
					Port:        pulumi.String("325"),
					Description: pulumi.String("third_policy"),
				},
				&AviatrixFirewallPolicyTypeArgs{
					Protocol:    pulumi.String("tcp"),
					SrcIp:       pulumi.Any(aviatrix_firewall_tag.Test.Firewall_tag),
					LogEnabled:  pulumi.Bool(false),
					DstIp:       pulumi.String("10.13.1.173/32"),
					Action:      pulumi.String("deny"),
					Port:        pulumi.String("325"),
					Description: pulumi.String("fourth_policy"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**firewall** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewall:AviatrixFirewall test gw_name

```

func GetAviatrixFirewall

func GetAviatrixFirewall(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallState, opts ...pulumi.ResourceOption) (*AviatrixFirewall, error)

GetAviatrixFirewall gets an existing AviatrixFirewall 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 NewAviatrixFirewall

func NewAviatrixFirewall(ctx *pulumi.Context,
	name string, args *AviatrixFirewallArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewall, error)

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

func (*AviatrixFirewall) ElementType

func (*AviatrixFirewall) ElementType() reflect.Type

func (*AviatrixFirewall) ToAviatrixFirewallOutput

func (i *AviatrixFirewall) ToAviatrixFirewallOutput() AviatrixFirewallOutput

func (*AviatrixFirewall) ToAviatrixFirewallOutputWithContext

func (i *AviatrixFirewall) ToAviatrixFirewallOutputWithContext(ctx context.Context) AviatrixFirewallOutput

type AviatrixFirewallArgs

type AviatrixFirewallArgs struct {
	// Indicates whether enable logging or not. Valid Values: true, false. Default value: false.
	BaseLogEnabled pulumi.BoolPtrInput
	// New base policy. Valid Values: "allow-all", "deny-all". Default value: "deny-all"
	BasePolicy pulumi.StringPtrInput
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringInput
	// Enable to manage firewall policies via in-line rules. If false, policies must be managed using `AviatrixFirewallPolicy` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageFirewallPolicies pulumi.BoolPtrInput
	// New access policy for the gateway. Seven fields are required for each policy item: `srcIp`, `dstIp`, `protocol`, `port`, `action`, `logEnabled` and `description`. No duplicate rules (with same `srcIp`, `dstIp`, `protocol` and `port`) are allowed.
	Policies AviatrixFirewallPolicyTypeArrayInput
}

The set of arguments for constructing a AviatrixFirewall resource.

func (AviatrixFirewallArgs) ElementType

func (AviatrixFirewallArgs) ElementType() reflect.Type

type AviatrixFirewallArray

type AviatrixFirewallArray []AviatrixFirewallInput

func (AviatrixFirewallArray) ElementType

func (AviatrixFirewallArray) ElementType() reflect.Type

func (AviatrixFirewallArray) ToAviatrixFirewallArrayOutput

func (i AviatrixFirewallArray) ToAviatrixFirewallArrayOutput() AviatrixFirewallArrayOutput

func (AviatrixFirewallArray) ToAviatrixFirewallArrayOutputWithContext

func (i AviatrixFirewallArray) ToAviatrixFirewallArrayOutputWithContext(ctx context.Context) AviatrixFirewallArrayOutput

type AviatrixFirewallArrayInput

type AviatrixFirewallArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallArrayOutput() AviatrixFirewallArrayOutput
	ToAviatrixFirewallArrayOutputWithContext(context.Context) AviatrixFirewallArrayOutput
}

AviatrixFirewallArrayInput is an input type that accepts AviatrixFirewallArray and AviatrixFirewallArrayOutput values. You can construct a concrete instance of `AviatrixFirewallArrayInput` via:

AviatrixFirewallArray{ AviatrixFirewallArgs{...} }

type AviatrixFirewallArrayOutput

type AviatrixFirewallArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallArrayOutput) ElementType

func (AviatrixFirewallArrayOutput) Index

func (AviatrixFirewallArrayOutput) ToAviatrixFirewallArrayOutput

func (o AviatrixFirewallArrayOutput) ToAviatrixFirewallArrayOutput() AviatrixFirewallArrayOutput

func (AviatrixFirewallArrayOutput) ToAviatrixFirewallArrayOutputWithContext

func (o AviatrixFirewallArrayOutput) ToAviatrixFirewallArrayOutputWithContext(ctx context.Context) AviatrixFirewallArrayOutput

type AviatrixFirewallInput

type AviatrixFirewallInput interface {
	pulumi.Input

	ToAviatrixFirewallOutput() AviatrixFirewallOutput
	ToAviatrixFirewallOutputWithContext(ctx context.Context) AviatrixFirewallOutput
}

type AviatrixFirewallInstance

type AviatrixFirewallInstance struct {
	pulumi.CustomResourceState

	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringOutput `pulumi:"availabilityDomain"`
	// Only available for AWS and GCP. For GCP, only Palo Alto Networks VM-Series deployment can use this attribute. In advanced mode, specify a bootstrap bucket name where the initial configuration and policy file is stored.
	BootstrapBucketName pulumi.StringPtrOutput `pulumi:"bootstrapBucketName"`
	// Advanced option. Bootstrap storage name. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series/Fortinet Series deployment only. Available as of provider version R2.17.1+.
	BootstrapStorageName pulumi.StringPtrOutput `pulumi:"bootstrapStorageName"`
	// Cloud Type.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Advanced option. Container folder. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	ContainerFolder pulumi.StringPtrOutput `pulumi:"containerFolder"`
	// ID of Egress Interface created.
	EgressInterface pulumi.StringOutput `pulumi:"egressInterface"`
	// Egress Interface Subnet. Select the subnet whose name contains “FW-ingress-egress”. For GCP, `egressSubnet` must be in the form `cidr~~region~~name`.
	EgressSubnet pulumi.StringOutput `pulumi:"egressSubnet"`
	// Egress VPC ID. Required for GCP. Available as of provider version R2.18.1+.
	EgressVpcId pulumi.StringPtrOutput `pulumi:"egressVpcId"`
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringOutput `pulumi:"faultDomain"`
	// Advanced option. File share folder. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	FileShareFolder pulumi.StringPtrOutput `pulumi:"fileShareFolder"`
	// Name of the primary FireNet gateway. **Required for all FireNet deployments that do not utilize the TGW-Integrated FireNet with AWS Native GWLB VPC.**
	FirenetGwName pulumi.StringPtrOutput `pulumi:"firenetGwName"`
	// One of the AWS/Azure/GCP AMIs from various vendors such as Palo Alto Networks.
	FirewallImage pulumi.StringOutput `pulumi:"firewallImage"`
	// Firewall image ID. Applicable to AWS and Azure only. For AWS, please use AMI ID. For Azure, the format is “Publisher:Offer:Plan:Version”. Available as of provider version R2.19+.
	FirewallImageId pulumi.StringOutput `pulumi:"firewallImageId"`
	// Version of firewall image. If not specified, Controller will automatically select the latest version available.
	FirewallImageVersion pulumi.StringOutput `pulumi:"firewallImageVersion"`
	// Name of the firewall instance to be created.
	FirewallName pulumi.StringOutput `pulumi:"firewallName"`
	// Instance size of the firewall. Example: "m5.xlarge".
	FirewallSize pulumi.StringOutput `pulumi:"firewallSize"`
	// GCP Only. The current VPC ID.
	GcpVpcId pulumi.StringOutput `pulumi:"gcpVpcId"`
	// Only available for AWS. In advanced mode, create an IAM Role on the AWS account that launched the FireNet gateway. Create a policy to attach to the role. The policy is to allow access to "Bootstrap Bucket".
	IamRole pulumi.StringPtrOutput `pulumi:"iamRole"`
	// ID of the firewall instance created.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Applicable to AWS deployment only. AWS Key Pair name. If not provided a Key Pair will be generated.
	KeyName pulumi.StringPtrOutput `pulumi:"keyName"`
	// ID of Lan Interface created.
	LanInterface pulumi.StringOutput `pulumi:"lanInterface"`
	// ID of Management Interface created.
	ManagementInterface pulumi.StringOutput `pulumi:"managementInterface"`
	// Management Interface Subnet. Select the subnet whose name contains “gateway and firewall management”. For GCP, `managementSubnet` must be in the form `cidr~~region~~name`. Required for Palo Alto Networks VM-Series and OCI Check Point firewalls. Otherwise, it must be empty.
	ManagementSubnet pulumi.StringPtrOutput `pulumi:"managementSubnet"`
	// Management VPC ID. Only used for GCP firewall. Required for Palo Alto Networks VM-Series, and required to be empty for Check Point or Fortinet series. Available as of provider version R2.18.1+.
	ManagementVpcId pulumi.StringPtrOutput `pulumi:"managementVpcId"`
	// Applicable to Azure or AzureGov deployment only.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Management Public IP.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Advanced option. SAS URL Config. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlConfig pulumi.StringPtrOutput `pulumi:"sasUrlConfig"`
	// Advanced option. SAS URL License. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlLicense pulumi.StringPtrOutput `pulumi:"sasUrlLicense"`
	// Advanced option. Share directory. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	ShareDirectory pulumi.StringPtrOutput `pulumi:"shareDirectory"`
	// Advanced option. Sic key. Applicable to Check Point Series deployment only.
	SicKey pulumi.StringPtrOutput `pulumi:"sicKey"`
	// Applicable to Azure or AzureGov deployment only.
	SshPublicKey pulumi.StringPtrOutput `pulumi:"sshPublicKey"`
	// Advanced option. Storage access key. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	StorageAccessKey pulumi.StringPtrOutput `pulumi:"storageAccessKey"`
	// Mapping of key value pairs of tags for a firewall instance. Only available for AWS, AWSGov, GCP and Azure firewall instances. For AWS, AWSGov and Azure allowed characters are: letters, spaces, and numbers plus the following special characters: + - = . _ : @. For GCP allowed characters are: lowercase letters, numbers, "-" and "_". Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Advanced option. User Data. Applicable to Check Point Series and Fortinet Series deployment only. Type: String.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// Applicable to Azure or AzureGov deployment only. "admin" as a username is not accepted.
	Username pulumi.StringPtrOutput `pulumi:"username"`
	// VPC ID of the Security VPC. For GCP, `vpcId` must be in the form vpc_id~-~gcloud_project_id.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Availability Zone. Required if creating a Firewall Instance with a Native AWS GWLB-enabled VPC. Applicable to AWS, Azure, and GCP only. Available as of provider version R2.17+.
	Zone pulumi.StringOutput `pulumi:"zone"`
}

The **aviatrix_firewall_instance** resource allows the creation and management of Aviatrix Firewall Instances.

This resource is used in [Aviatrix FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) and [Aviatrix Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) solutions, in conjunction with other resources that may include, and are not limited to: **firenet**, **firewall_instance_association**, **aws_tgw** and **transit_gateway** resources.

## Import

**firewall_instance** can be imported using the `instance_id`. For Azure or AzureGov FireNet instances, the value will be the `firewall_name` concatenated with a ":" and the Resource Group of the `vpc_id` set for that instance. e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallInstance:AviatrixFirewallInstance test instance_id

```

func GetAviatrixFirewallInstance

func GetAviatrixFirewallInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallInstanceState, opts ...pulumi.ResourceOption) (*AviatrixFirewallInstance, error)

GetAviatrixFirewallInstance gets an existing AviatrixFirewallInstance 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 NewAviatrixFirewallInstance

func NewAviatrixFirewallInstance(ctx *pulumi.Context,
	name string, args *AviatrixFirewallInstanceArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewallInstance, error)

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

func (*AviatrixFirewallInstance) ElementType

func (*AviatrixFirewallInstance) ElementType() reflect.Type

func (*AviatrixFirewallInstance) ToAviatrixFirewallInstanceOutput

func (i *AviatrixFirewallInstance) ToAviatrixFirewallInstanceOutput() AviatrixFirewallInstanceOutput

func (*AviatrixFirewallInstance) ToAviatrixFirewallInstanceOutputWithContext

func (i *AviatrixFirewallInstance) ToAviatrixFirewallInstanceOutputWithContext(ctx context.Context) AviatrixFirewallInstanceOutput

type AviatrixFirewallInstanceArgs

type AviatrixFirewallInstanceArgs struct {
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Only available for AWS and GCP. For GCP, only Palo Alto Networks VM-Series deployment can use this attribute. In advanced mode, specify a bootstrap bucket name where the initial configuration and policy file is stored.
	BootstrapBucketName pulumi.StringPtrInput
	// Advanced option. Bootstrap storage name. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series/Fortinet Series deployment only. Available as of provider version R2.17.1+.
	BootstrapStorageName pulumi.StringPtrInput
	// Advanced option. Container folder. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	ContainerFolder pulumi.StringPtrInput
	// Egress Interface Subnet. Select the subnet whose name contains “FW-ingress-egress”. For GCP, `egressSubnet` must be in the form `cidr~~region~~name`.
	EgressSubnet pulumi.StringInput
	// Egress VPC ID. Required for GCP. Available as of provider version R2.18.1+.
	EgressVpcId pulumi.StringPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// Advanced option. File share folder. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	FileShareFolder pulumi.StringPtrInput
	// Name of the primary FireNet gateway. **Required for all FireNet deployments that do not utilize the TGW-Integrated FireNet with AWS Native GWLB VPC.**
	FirenetGwName pulumi.StringPtrInput
	// One of the AWS/Azure/GCP AMIs from various vendors such as Palo Alto Networks.
	FirewallImage pulumi.StringInput
	// Firewall image ID. Applicable to AWS and Azure only. For AWS, please use AMI ID. For Azure, the format is “Publisher:Offer:Plan:Version”. Available as of provider version R2.19+.
	FirewallImageId pulumi.StringPtrInput
	// Version of firewall image. If not specified, Controller will automatically select the latest version available.
	FirewallImageVersion pulumi.StringPtrInput
	// Name of the firewall instance to be created.
	FirewallName pulumi.StringInput
	// Instance size of the firewall. Example: "m5.xlarge".
	FirewallSize pulumi.StringInput
	// Only available for AWS. In advanced mode, create an IAM Role on the AWS account that launched the FireNet gateway. Create a policy to attach to the role. The policy is to allow access to "Bootstrap Bucket".
	IamRole pulumi.StringPtrInput
	// Applicable to AWS deployment only. AWS Key Pair name. If not provided a Key Pair will be generated.
	KeyName pulumi.StringPtrInput
	// Management Interface Subnet. Select the subnet whose name contains “gateway and firewall management”. For GCP, `managementSubnet` must be in the form `cidr~~region~~name`. Required for Palo Alto Networks VM-Series and OCI Check Point firewalls. Otherwise, it must be empty.
	ManagementSubnet pulumi.StringPtrInput
	// Management VPC ID. Only used for GCP firewall. Required for Palo Alto Networks VM-Series, and required to be empty for Check Point or Fortinet series. Available as of provider version R2.18.1+.
	ManagementVpcId pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only.
	Password pulumi.StringPtrInput
	// Advanced option. SAS URL Config. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlConfig pulumi.StringPtrInput
	// Advanced option. SAS URL License. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlLicense pulumi.StringPtrInput
	// Advanced option. Share directory. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	ShareDirectory pulumi.StringPtrInput
	// Advanced option. Sic key. Applicable to Check Point Series deployment only.
	SicKey pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only.
	SshPublicKey pulumi.StringPtrInput
	// Advanced option. Storage access key. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	StorageAccessKey pulumi.StringPtrInput
	// Mapping of key value pairs of tags for a firewall instance. Only available for AWS, AWSGov, GCP and Azure firewall instances. For AWS, AWSGov and Azure allowed characters are: letters, spaces, and numbers plus the following special characters: + - = . _ : @. For GCP allowed characters are: lowercase letters, numbers, "-" and "_". Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// Advanced option. User Data. Applicable to Check Point Series and Fortinet Series deployment only. Type: String.
	UserData pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only. "admin" as a username is not accepted.
	Username pulumi.StringPtrInput
	// VPC ID of the Security VPC. For GCP, `vpcId` must be in the form vpc_id~-~gcloud_project_id.
	VpcId pulumi.StringInput
	// Availability Zone. Required if creating a Firewall Instance with a Native AWS GWLB-enabled VPC. Applicable to AWS, Azure, and GCP only. Available as of provider version R2.17+.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixFirewallInstance resource.

func (AviatrixFirewallInstanceArgs) ElementType

type AviatrixFirewallInstanceArray

type AviatrixFirewallInstanceArray []AviatrixFirewallInstanceInput

func (AviatrixFirewallInstanceArray) ElementType

func (AviatrixFirewallInstanceArray) ToAviatrixFirewallInstanceArrayOutput

func (i AviatrixFirewallInstanceArray) ToAviatrixFirewallInstanceArrayOutput() AviatrixFirewallInstanceArrayOutput

func (AviatrixFirewallInstanceArray) ToAviatrixFirewallInstanceArrayOutputWithContext

func (i AviatrixFirewallInstanceArray) ToAviatrixFirewallInstanceArrayOutputWithContext(ctx context.Context) AviatrixFirewallInstanceArrayOutput

type AviatrixFirewallInstanceArrayInput

type AviatrixFirewallInstanceArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceArrayOutput() AviatrixFirewallInstanceArrayOutput
	ToAviatrixFirewallInstanceArrayOutputWithContext(context.Context) AviatrixFirewallInstanceArrayOutput
}

AviatrixFirewallInstanceArrayInput is an input type that accepts AviatrixFirewallInstanceArray and AviatrixFirewallInstanceArrayOutput values. You can construct a concrete instance of `AviatrixFirewallInstanceArrayInput` via:

AviatrixFirewallInstanceArray{ AviatrixFirewallInstanceArgs{...} }

type AviatrixFirewallInstanceArrayOutput

type AviatrixFirewallInstanceArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceArrayOutput) ElementType

func (AviatrixFirewallInstanceArrayOutput) Index

func (AviatrixFirewallInstanceArrayOutput) ToAviatrixFirewallInstanceArrayOutput

func (o AviatrixFirewallInstanceArrayOutput) ToAviatrixFirewallInstanceArrayOutput() AviatrixFirewallInstanceArrayOutput

func (AviatrixFirewallInstanceArrayOutput) ToAviatrixFirewallInstanceArrayOutputWithContext

func (o AviatrixFirewallInstanceArrayOutput) ToAviatrixFirewallInstanceArrayOutputWithContext(ctx context.Context) AviatrixFirewallInstanceArrayOutput

type AviatrixFirewallInstanceAssociation

type AviatrixFirewallInstanceAssociation struct {
	pulumi.CustomResourceState

	// Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.
	Attached pulumi.BoolPtrOutput `pulumi:"attached"`
	// Egress interface ID. **Required if it is a firewall instance.**
	EgressInterface pulumi.StringPtrOutput `pulumi:"egressInterface"`
	// Name of the primary FireNet gateway. Required for FireNet without Native GWLB VPC.
	FirenetGwName pulumi.StringPtrOutput `pulumi:"firenetGwName"`
	// Firewall instance name. **Required for non-GCP firewall instance. For GCP, this field should not be set.**
	FirewallName pulumi.StringPtrOutput `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Lan interface ID. **Required if it is a firewall instance.**
	LanInterface pulumi.StringPtrOutput `pulumi:"lanInterface"`
	// Management interface ID. **Required if it is a firewall instance.**
	ManagementInterface pulumi.StringPtrOutput `pulumi:"managementInterface"`
	// Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.
	VendorType pulumi.StringPtrOutput `pulumi:"vendorType"`
	// VPC ID of the Security VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_firewall_instance_association** resource allows for the creation and management of a firewall instance association. To use this resource you must also have an `AviatrixFirenet` resource with it's `manageFirewallInstanceAssociation` attribute set to false.

Available in provider version R2.17.1+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallInstanceAssociation(ctx, "firewallInstanceAssociation1", &aviatrix.AviatrixFirewallInstanceAssociationArgs{
			VpcId:               pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Vpc_id),
			FirenetGwName:       pulumi.Any(aviatrix_transit_gateway.Transit_gateway_1.Gw_name),
			InstanceId:          pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Instance_id),
			FirewallName:        pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Firewall_name),
			LanInterface:        pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Lan_interface),
			ManagementInterface: pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Management_interface),
			EgressInterface:     pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Egress_interface),
			Attached:            pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallInstanceAssociation(ctx, "firewallInstanceAssociation1", &aviatrix.AviatrixFirewallInstanceAssociationArgs{
			VpcId:               pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Vpc_id),
			FirenetGwName:       pulumi.Any(aviatrix_transit_gateway.Transit_gateway_1.Gw_name),
			InstanceId:          pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Instance_id),
			LanInterface:        pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Lan_interface),
			ManagementInterface: pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Management_interface),
			EgressInterface:     pulumi.Any(aviatrix_firewall_instance.Firewall_instance_1.Egress_interface),
			Attached:            pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**firewall_instance_association** can be imported using the `vpc_id`, `firenet_gw_name` and `instance_id` in the form `vpc_id~~firenet_gw_name~~instance_id` e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallInstanceAssociation:AviatrixFirewallInstanceAssociation test vpc_id~~firenet_gw_name~~instance_id

```

When using a Native GWLB VPC where there is no `firenet_gw_name` but the ID is in the same form e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallInstanceAssociation:AviatrixFirewallInstanceAssociation test vpc_id~~~~instance_id

```

func GetAviatrixFirewallInstanceAssociation

func GetAviatrixFirewallInstanceAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallInstanceAssociationState, opts ...pulumi.ResourceOption) (*AviatrixFirewallInstanceAssociation, error)

GetAviatrixFirewallInstanceAssociation gets an existing AviatrixFirewallInstanceAssociation 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 NewAviatrixFirewallInstanceAssociation

func NewAviatrixFirewallInstanceAssociation(ctx *pulumi.Context,
	name string, args *AviatrixFirewallInstanceAssociationArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewallInstanceAssociation, error)

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

func (*AviatrixFirewallInstanceAssociation) ElementType

func (*AviatrixFirewallInstanceAssociation) ToAviatrixFirewallInstanceAssociationOutput

func (i *AviatrixFirewallInstanceAssociation) ToAviatrixFirewallInstanceAssociationOutput() AviatrixFirewallInstanceAssociationOutput

func (*AviatrixFirewallInstanceAssociation) ToAviatrixFirewallInstanceAssociationOutputWithContext

func (i *AviatrixFirewallInstanceAssociation) ToAviatrixFirewallInstanceAssociationOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationOutput

type AviatrixFirewallInstanceAssociationArgs

type AviatrixFirewallInstanceAssociationArgs struct {
	// Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.
	Attached pulumi.BoolPtrInput
	// Egress interface ID. **Required if it is a firewall instance.**
	EgressInterface pulumi.StringPtrInput
	// Name of the primary FireNet gateway. Required for FireNet without Native GWLB VPC.
	FirenetGwName pulumi.StringPtrInput
	// Firewall instance name. **Required for non-GCP firewall instance. For GCP, this field should not be set.**
	FirewallName pulumi.StringPtrInput
	// ID of Firewall instance.
	InstanceId pulumi.StringInput
	// Lan interface ID. **Required if it is a firewall instance.**
	LanInterface pulumi.StringPtrInput
	// Management interface ID. **Required if it is a firewall instance.**
	ManagementInterface pulumi.StringPtrInput
	// Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.
	VendorType pulumi.StringPtrInput
	// VPC ID of the Security VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixFirewallInstanceAssociation resource.

func (AviatrixFirewallInstanceAssociationArgs) ElementType

type AviatrixFirewallInstanceAssociationArray

type AviatrixFirewallInstanceAssociationArray []AviatrixFirewallInstanceAssociationInput

func (AviatrixFirewallInstanceAssociationArray) ElementType

func (AviatrixFirewallInstanceAssociationArray) ToAviatrixFirewallInstanceAssociationArrayOutput

func (i AviatrixFirewallInstanceAssociationArray) ToAviatrixFirewallInstanceAssociationArrayOutput() AviatrixFirewallInstanceAssociationArrayOutput

func (AviatrixFirewallInstanceAssociationArray) ToAviatrixFirewallInstanceAssociationArrayOutputWithContext

func (i AviatrixFirewallInstanceAssociationArray) ToAviatrixFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationArrayOutput

type AviatrixFirewallInstanceAssociationArrayInput

type AviatrixFirewallInstanceAssociationArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceAssociationArrayOutput() AviatrixFirewallInstanceAssociationArrayOutput
	ToAviatrixFirewallInstanceAssociationArrayOutputWithContext(context.Context) AviatrixFirewallInstanceAssociationArrayOutput
}

AviatrixFirewallInstanceAssociationArrayInput is an input type that accepts AviatrixFirewallInstanceAssociationArray and AviatrixFirewallInstanceAssociationArrayOutput values. You can construct a concrete instance of `AviatrixFirewallInstanceAssociationArrayInput` via:

AviatrixFirewallInstanceAssociationArray{ AviatrixFirewallInstanceAssociationArgs{...} }

type AviatrixFirewallInstanceAssociationArrayOutput

type AviatrixFirewallInstanceAssociationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceAssociationArrayOutput) ElementType

func (AviatrixFirewallInstanceAssociationArrayOutput) Index

func (AviatrixFirewallInstanceAssociationArrayOutput) ToAviatrixFirewallInstanceAssociationArrayOutput

func (o AviatrixFirewallInstanceAssociationArrayOutput) ToAviatrixFirewallInstanceAssociationArrayOutput() AviatrixFirewallInstanceAssociationArrayOutput

func (AviatrixFirewallInstanceAssociationArrayOutput) ToAviatrixFirewallInstanceAssociationArrayOutputWithContext

func (o AviatrixFirewallInstanceAssociationArrayOutput) ToAviatrixFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationArrayOutput

type AviatrixFirewallInstanceAssociationInput

type AviatrixFirewallInstanceAssociationInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceAssociationOutput() AviatrixFirewallInstanceAssociationOutput
	ToAviatrixFirewallInstanceAssociationOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationOutput
}

type AviatrixFirewallInstanceAssociationMap

type AviatrixFirewallInstanceAssociationMap map[string]AviatrixFirewallInstanceAssociationInput

func (AviatrixFirewallInstanceAssociationMap) ElementType

func (AviatrixFirewallInstanceAssociationMap) ToAviatrixFirewallInstanceAssociationMapOutput

func (i AviatrixFirewallInstanceAssociationMap) ToAviatrixFirewallInstanceAssociationMapOutput() AviatrixFirewallInstanceAssociationMapOutput

func (AviatrixFirewallInstanceAssociationMap) ToAviatrixFirewallInstanceAssociationMapOutputWithContext

func (i AviatrixFirewallInstanceAssociationMap) ToAviatrixFirewallInstanceAssociationMapOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationMapOutput

type AviatrixFirewallInstanceAssociationMapInput

type AviatrixFirewallInstanceAssociationMapInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceAssociationMapOutput() AviatrixFirewallInstanceAssociationMapOutput
	ToAviatrixFirewallInstanceAssociationMapOutputWithContext(context.Context) AviatrixFirewallInstanceAssociationMapOutput
}

AviatrixFirewallInstanceAssociationMapInput is an input type that accepts AviatrixFirewallInstanceAssociationMap and AviatrixFirewallInstanceAssociationMapOutput values. You can construct a concrete instance of `AviatrixFirewallInstanceAssociationMapInput` via:

AviatrixFirewallInstanceAssociationMap{ "key": AviatrixFirewallInstanceAssociationArgs{...} }

type AviatrixFirewallInstanceAssociationMapOutput

type AviatrixFirewallInstanceAssociationMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceAssociationMapOutput) ElementType

func (AviatrixFirewallInstanceAssociationMapOutput) MapIndex

func (AviatrixFirewallInstanceAssociationMapOutput) ToAviatrixFirewallInstanceAssociationMapOutput

func (o AviatrixFirewallInstanceAssociationMapOutput) ToAviatrixFirewallInstanceAssociationMapOutput() AviatrixFirewallInstanceAssociationMapOutput

func (AviatrixFirewallInstanceAssociationMapOutput) ToAviatrixFirewallInstanceAssociationMapOutputWithContext

func (o AviatrixFirewallInstanceAssociationMapOutput) ToAviatrixFirewallInstanceAssociationMapOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationMapOutput

type AviatrixFirewallInstanceAssociationOutput

type AviatrixFirewallInstanceAssociationOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceAssociationOutput) Attached

Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.

func (AviatrixFirewallInstanceAssociationOutput) EgressInterface

Egress interface ID. **Required if it is a firewall instance.**

func (AviatrixFirewallInstanceAssociationOutput) ElementType

func (AviatrixFirewallInstanceAssociationOutput) FirenetGwName

Name of the primary FireNet gateway. Required for FireNet without Native GWLB VPC.

func (AviatrixFirewallInstanceAssociationOutput) FirewallName

Firewall instance name. **Required for non-GCP firewall instance. For GCP, this field should not be set.**

func (AviatrixFirewallInstanceAssociationOutput) InstanceId

ID of Firewall instance.

func (AviatrixFirewallInstanceAssociationOutput) LanInterface

Lan interface ID. **Required if it is a firewall instance.**

func (AviatrixFirewallInstanceAssociationOutput) ManagementInterface

Management interface ID. **Required if it is a firewall instance.**

func (AviatrixFirewallInstanceAssociationOutput) ToAviatrixFirewallInstanceAssociationOutput

func (o AviatrixFirewallInstanceAssociationOutput) ToAviatrixFirewallInstanceAssociationOutput() AviatrixFirewallInstanceAssociationOutput

func (AviatrixFirewallInstanceAssociationOutput) ToAviatrixFirewallInstanceAssociationOutputWithContext

func (o AviatrixFirewallInstanceAssociationOutput) ToAviatrixFirewallInstanceAssociationOutputWithContext(ctx context.Context) AviatrixFirewallInstanceAssociationOutput

func (AviatrixFirewallInstanceAssociationOutput) VendorType

Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.

func (AviatrixFirewallInstanceAssociationOutput) VpcId

VPC ID of the Security VPC.

type AviatrixFirewallInstanceAssociationState

type AviatrixFirewallInstanceAssociationState struct {
	// Switch to attach/detach firewall instance to/from FireNet. Valid values: true, false. Default value: false.
	Attached pulumi.BoolPtrInput
	// Egress interface ID. **Required if it is a firewall instance.**
	EgressInterface pulumi.StringPtrInput
	// Name of the primary FireNet gateway. Required for FireNet without Native GWLB VPC.
	FirenetGwName pulumi.StringPtrInput
	// Firewall instance name. **Required for non-GCP firewall instance. For GCP, this field should not be set.**
	FirewallName pulumi.StringPtrInput
	// ID of Firewall instance.
	InstanceId pulumi.StringPtrInput
	// Lan interface ID. **Required if it is a firewall instance.**
	LanInterface pulumi.StringPtrInput
	// Management interface ID. **Required if it is a firewall instance.**
	ManagementInterface pulumi.StringPtrInput
	// Type of firewall. Valid values: "Generic", "fqdnGateway". Default value: "Generic". Value "fqdnGateway" is required for FQDN gateway.
	VendorType pulumi.StringPtrInput
	// VPC ID of the Security VPC.
	VpcId pulumi.StringPtrInput
}

func (AviatrixFirewallInstanceAssociationState) ElementType

type AviatrixFirewallInstanceInput

type AviatrixFirewallInstanceInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceOutput() AviatrixFirewallInstanceOutput
	ToAviatrixFirewallInstanceOutputWithContext(ctx context.Context) AviatrixFirewallInstanceOutput
}

type AviatrixFirewallInstanceMap

type AviatrixFirewallInstanceMap map[string]AviatrixFirewallInstanceInput

func (AviatrixFirewallInstanceMap) ElementType

func (AviatrixFirewallInstanceMap) ToAviatrixFirewallInstanceMapOutput

func (i AviatrixFirewallInstanceMap) ToAviatrixFirewallInstanceMapOutput() AviatrixFirewallInstanceMapOutput

func (AviatrixFirewallInstanceMap) ToAviatrixFirewallInstanceMapOutputWithContext

func (i AviatrixFirewallInstanceMap) ToAviatrixFirewallInstanceMapOutputWithContext(ctx context.Context) AviatrixFirewallInstanceMapOutput

type AviatrixFirewallInstanceMapInput

type AviatrixFirewallInstanceMapInput interface {
	pulumi.Input

	ToAviatrixFirewallInstanceMapOutput() AviatrixFirewallInstanceMapOutput
	ToAviatrixFirewallInstanceMapOutputWithContext(context.Context) AviatrixFirewallInstanceMapOutput
}

AviatrixFirewallInstanceMapInput is an input type that accepts AviatrixFirewallInstanceMap and AviatrixFirewallInstanceMapOutput values. You can construct a concrete instance of `AviatrixFirewallInstanceMapInput` via:

AviatrixFirewallInstanceMap{ "key": AviatrixFirewallInstanceArgs{...} }

type AviatrixFirewallInstanceMapOutput

type AviatrixFirewallInstanceMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceMapOutput) ElementType

func (AviatrixFirewallInstanceMapOutput) MapIndex

func (AviatrixFirewallInstanceMapOutput) ToAviatrixFirewallInstanceMapOutput

func (o AviatrixFirewallInstanceMapOutput) ToAviatrixFirewallInstanceMapOutput() AviatrixFirewallInstanceMapOutput

func (AviatrixFirewallInstanceMapOutput) ToAviatrixFirewallInstanceMapOutputWithContext

func (o AviatrixFirewallInstanceMapOutput) ToAviatrixFirewallInstanceMapOutputWithContext(ctx context.Context) AviatrixFirewallInstanceMapOutput

type AviatrixFirewallInstanceOutput

type AviatrixFirewallInstanceOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallInstanceOutput) AvailabilityDomain

func (o AviatrixFirewallInstanceOutput) AvailabilityDomain() pulumi.StringOutput

Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixFirewallInstanceOutput) BootstrapBucketName

func (o AviatrixFirewallInstanceOutput) BootstrapBucketName() pulumi.StringPtrOutput

Only available for AWS and GCP. For GCP, only Palo Alto Networks VM-Series deployment can use this attribute. In advanced mode, specify a bootstrap bucket name where the initial configuration and policy file is stored.

func (AviatrixFirewallInstanceOutput) BootstrapStorageName

func (o AviatrixFirewallInstanceOutput) BootstrapStorageName() pulumi.StringPtrOutput

Advanced option. Bootstrap storage name. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series/Fortinet Series deployment only. Available as of provider version R2.17.1+.

func (AviatrixFirewallInstanceOutput) CloudType

Cloud Type.

func (AviatrixFirewallInstanceOutput) ContainerFolder

Advanced option. Container folder. Applicable to Azure or AzureGov and Fortinet Series deployment only.

func (AviatrixFirewallInstanceOutput) EgressInterface

ID of Egress Interface created.

func (AviatrixFirewallInstanceOutput) EgressSubnet

Egress Interface Subnet. Select the subnet whose name contains “FW-ingress-egress”. For GCP, `egressSubnet` must be in the form `cidr~~region~~name`.

func (AviatrixFirewallInstanceOutput) EgressVpcId

Egress VPC ID. Required for GCP. Available as of provider version R2.18.1+.

func (AviatrixFirewallInstanceOutput) ElementType

func (AviatrixFirewallInstanceOutput) FaultDomain

Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixFirewallInstanceOutput) FileShareFolder

Advanced option. File share folder. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.

func (AviatrixFirewallInstanceOutput) FirenetGwName

Name of the primary FireNet gateway. **Required for all FireNet deployments that do not utilize the TGW-Integrated FireNet with AWS Native GWLB VPC.**

func (AviatrixFirewallInstanceOutput) FirewallImage

One of the AWS/Azure/GCP AMIs from various vendors such as Palo Alto Networks.

func (AviatrixFirewallInstanceOutput) FirewallImageId

Firewall image ID. Applicable to AWS and Azure only. For AWS, please use AMI ID. For Azure, the format is “Publisher:Offer:Plan:Version”. Available as of provider version R2.19+.

func (AviatrixFirewallInstanceOutput) FirewallImageVersion

func (o AviatrixFirewallInstanceOutput) FirewallImageVersion() pulumi.StringOutput

Version of firewall image. If not specified, Controller will automatically select the latest version available.

func (AviatrixFirewallInstanceOutput) FirewallName

Name of the firewall instance to be created.

func (AviatrixFirewallInstanceOutput) FirewallSize

Instance size of the firewall. Example: "m5.xlarge".

func (AviatrixFirewallInstanceOutput) GcpVpcId

GCP Only. The current VPC ID.

func (AviatrixFirewallInstanceOutput) IamRole

Only available for AWS. In advanced mode, create an IAM Role on the AWS account that launched the FireNet gateway. Create a policy to attach to the role. The policy is to allow access to "Bootstrap Bucket".

func (AviatrixFirewallInstanceOutput) InstanceId

ID of the firewall instance created.

func (AviatrixFirewallInstanceOutput) KeyName

Applicable to AWS deployment only. AWS Key Pair name. If not provided a Key Pair will be generated.

func (AviatrixFirewallInstanceOutput) LanInterface

ID of Lan Interface created.

func (AviatrixFirewallInstanceOutput) ManagementInterface

func (o AviatrixFirewallInstanceOutput) ManagementInterface() pulumi.StringOutput

ID of Management Interface created.

func (AviatrixFirewallInstanceOutput) ManagementSubnet

Management Interface Subnet. Select the subnet whose name contains “gateway and firewall management”. For GCP, `managementSubnet` must be in the form `cidr~~region~~name`. Required for Palo Alto Networks VM-Series and OCI Check Point firewalls. Otherwise, it must be empty.

func (AviatrixFirewallInstanceOutput) ManagementVpcId

Management VPC ID. Only used for GCP firewall. Required for Palo Alto Networks VM-Series, and required to be empty for Check Point or Fortinet series. Available as of provider version R2.18.1+.

func (AviatrixFirewallInstanceOutput) Password

Applicable to Azure or AzureGov deployment only.

func (AviatrixFirewallInstanceOutput) PublicIp

Management Public IP.

func (AviatrixFirewallInstanceOutput) SasUrlConfig

Advanced option. SAS URL Config. Applicable to Azure or AzureGov and Fortinet Series deployment only.

func (AviatrixFirewallInstanceOutput) SasUrlLicense

Advanced option. SAS URL License. Applicable to Azure or AzureGov and Fortinet Series deployment only.

func (AviatrixFirewallInstanceOutput) ShareDirectory

Advanced option. Share directory. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.

func (AviatrixFirewallInstanceOutput) SicKey

Advanced option. Sic key. Applicable to Check Point Series deployment only.

func (AviatrixFirewallInstanceOutput) SshPublicKey

Applicable to Azure or AzureGov deployment only.

func (AviatrixFirewallInstanceOutput) StorageAccessKey

Advanced option. Storage access key. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.

func (AviatrixFirewallInstanceOutput) Tags

Mapping of key value pairs of tags for a firewall instance. Only available for AWS, AWSGov, GCP and Azure firewall instances. For AWS, AWSGov and Azure allowed characters are: letters, spaces, and numbers plus the following special characters: + - = . _ : @. For GCP allowed characters are: lowercase letters, numbers, "-" and "_". Example: {"key1" = "value1", "key2" = "value2"}.

func (AviatrixFirewallInstanceOutput) ToAviatrixFirewallInstanceOutput

func (o AviatrixFirewallInstanceOutput) ToAviatrixFirewallInstanceOutput() AviatrixFirewallInstanceOutput

func (AviatrixFirewallInstanceOutput) ToAviatrixFirewallInstanceOutputWithContext

func (o AviatrixFirewallInstanceOutput) ToAviatrixFirewallInstanceOutputWithContext(ctx context.Context) AviatrixFirewallInstanceOutput

func (AviatrixFirewallInstanceOutput) UserData

Advanced option. User Data. Applicable to Check Point Series and Fortinet Series deployment only. Type: String.

func (AviatrixFirewallInstanceOutput) Username

Applicable to Azure or AzureGov deployment only. "admin" as a username is not accepted.

func (AviatrixFirewallInstanceOutput) VpcId

VPC ID of the Security VPC. For GCP, `vpcId` must be in the form vpc_id~-~gcloud_project_id.

func (AviatrixFirewallInstanceOutput) Zone

Availability Zone. Required if creating a Firewall Instance with a Native AWS GWLB-enabled VPC. Applicable to AWS, Azure, and GCP only. Available as of provider version R2.17+.

type AviatrixFirewallInstanceState

type AviatrixFirewallInstanceState struct {
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Only available for AWS and GCP. For GCP, only Palo Alto Networks VM-Series deployment can use this attribute. In advanced mode, specify a bootstrap bucket name where the initial configuration and policy file is stored.
	BootstrapBucketName pulumi.StringPtrInput
	// Advanced option. Bootstrap storage name. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series/Fortinet Series deployment only. Available as of provider version R2.17.1+.
	BootstrapStorageName pulumi.StringPtrInput
	// Cloud Type.
	CloudType pulumi.IntPtrInput
	// Advanced option. Container folder. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	ContainerFolder pulumi.StringPtrInput
	// ID of Egress Interface created.
	EgressInterface pulumi.StringPtrInput
	// Egress Interface Subnet. Select the subnet whose name contains “FW-ingress-egress”. For GCP, `egressSubnet` must be in the form `cidr~~region~~name`.
	EgressSubnet pulumi.StringPtrInput
	// Egress VPC ID. Required for GCP. Available as of provider version R2.18.1+.
	EgressVpcId pulumi.StringPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// Advanced option. File share folder. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	FileShareFolder pulumi.StringPtrInput
	// Name of the primary FireNet gateway. **Required for all FireNet deployments that do not utilize the TGW-Integrated FireNet with AWS Native GWLB VPC.**
	FirenetGwName pulumi.StringPtrInput
	// One of the AWS/Azure/GCP AMIs from various vendors such as Palo Alto Networks.
	FirewallImage pulumi.StringPtrInput
	// Firewall image ID. Applicable to AWS and Azure only. For AWS, please use AMI ID. For Azure, the format is “Publisher:Offer:Plan:Version”. Available as of provider version R2.19+.
	FirewallImageId pulumi.StringPtrInput
	// Version of firewall image. If not specified, Controller will automatically select the latest version available.
	FirewallImageVersion pulumi.StringPtrInput
	// Name of the firewall instance to be created.
	FirewallName pulumi.StringPtrInput
	// Instance size of the firewall. Example: "m5.xlarge".
	FirewallSize pulumi.StringPtrInput
	// GCP Only. The current VPC ID.
	GcpVpcId pulumi.StringPtrInput
	// Only available for AWS. In advanced mode, create an IAM Role on the AWS account that launched the FireNet gateway. Create a policy to attach to the role. The policy is to allow access to "Bootstrap Bucket".
	IamRole pulumi.StringPtrInput
	// ID of the firewall instance created.
	InstanceId pulumi.StringPtrInput
	// Applicable to AWS deployment only. AWS Key Pair name. If not provided a Key Pair will be generated.
	KeyName pulumi.StringPtrInput
	// ID of Lan Interface created.
	LanInterface pulumi.StringPtrInput
	// ID of Management Interface created.
	ManagementInterface pulumi.StringPtrInput
	// Management Interface Subnet. Select the subnet whose name contains “gateway and firewall management”. For GCP, `managementSubnet` must be in the form `cidr~~region~~name`. Required for Palo Alto Networks VM-Series and OCI Check Point firewalls. Otherwise, it must be empty.
	ManagementSubnet pulumi.StringPtrInput
	// Management VPC ID. Only used for GCP firewall. Required for Palo Alto Networks VM-Series, and required to be empty for Check Point or Fortinet series. Available as of provider version R2.18.1+.
	ManagementVpcId pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only.
	Password pulumi.StringPtrInput
	// Management Public IP.
	PublicIp pulumi.StringPtrInput
	// Advanced option. SAS URL Config. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlConfig pulumi.StringPtrInput
	// Advanced option. SAS URL License. Applicable to Azure or AzureGov and Fortinet Series deployment only.
	SasUrlLicense pulumi.StringPtrInput
	// Advanced option. Share directory. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	ShareDirectory pulumi.StringPtrInput
	// Advanced option. Sic key. Applicable to Check Point Series deployment only.
	SicKey pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only.
	SshPublicKey pulumi.StringPtrInput
	// Advanced option. Storage access key. Applicable to Azure or AzureGov and Palo Alto Networks VM-Series deployment only. Available as of provider version R2.17.1+.
	StorageAccessKey pulumi.StringPtrInput
	// Mapping of key value pairs of tags for a firewall instance. Only available for AWS, AWSGov, GCP and Azure firewall instances. For AWS, AWSGov and Azure allowed characters are: letters, spaces, and numbers plus the following special characters: + - = . _ : @. For GCP allowed characters are: lowercase letters, numbers, "-" and "_". Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// Advanced option. User Data. Applicable to Check Point Series and Fortinet Series deployment only. Type: String.
	UserData pulumi.StringPtrInput
	// Applicable to Azure or AzureGov deployment only. "admin" as a username is not accepted.
	Username pulumi.StringPtrInput
	// VPC ID of the Security VPC. For GCP, `vpcId` must be in the form vpc_id~-~gcloud_project_id.
	VpcId pulumi.StringPtrInput
	// Availability Zone. Required if creating a Firewall Instance with a Native AWS GWLB-enabled VPC. Applicable to AWS, Azure, and GCP only. Available as of provider version R2.17+.
	Zone pulumi.StringPtrInput
}

func (AviatrixFirewallInstanceState) ElementType

type AviatrixFirewallManagementAccess

type AviatrixFirewallManagementAccess struct {
	pulumi.CustomResourceState

	// Name of the resource to enable Firewall Management Access.
	ManagementAccessResourceName pulumi.StringOutput `pulumi:"managementAccessResourceName"`
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS(1) and Azure(8) providers.
	TransitFirenetGatewayName pulumi.StringOutput `pulumi:"transitFirenetGatewayName"`
}

The **aviatrix_firewall_management_access** resource allows the management of which resource to permit visibility into the Transit (FireNet) VPC.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallManagementAccess(ctx, "testFirewallManagementAccess", &aviatrix.AviatrixFirewallManagementAccessArgs{
			ManagementAccessResourceName: pulumi.String("SPOKE:spoke-gw"),
			TransitFirenetGatewayName:    pulumi.String("transit-gw"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**firewall_management_access** can be imported using the `transit_firenet_gateway_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallManagementAccess:AviatrixFirewallManagementAccess test transit_firenet_gateway_name

```

func GetAviatrixFirewallManagementAccess

func GetAviatrixFirewallManagementAccess(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallManagementAccessState, opts ...pulumi.ResourceOption) (*AviatrixFirewallManagementAccess, error)

GetAviatrixFirewallManagementAccess gets an existing AviatrixFirewallManagementAccess 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 NewAviatrixFirewallManagementAccess

func NewAviatrixFirewallManagementAccess(ctx *pulumi.Context,
	name string, args *AviatrixFirewallManagementAccessArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewallManagementAccess, error)

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

func (*AviatrixFirewallManagementAccess) ElementType

func (*AviatrixFirewallManagementAccess) ToAviatrixFirewallManagementAccessOutput

func (i *AviatrixFirewallManagementAccess) ToAviatrixFirewallManagementAccessOutput() AviatrixFirewallManagementAccessOutput

func (*AviatrixFirewallManagementAccess) ToAviatrixFirewallManagementAccessOutputWithContext

func (i *AviatrixFirewallManagementAccess) ToAviatrixFirewallManagementAccessOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessOutput

type AviatrixFirewallManagementAccessArgs

type AviatrixFirewallManagementAccessArgs struct {
	// Name of the resource to enable Firewall Management Access.
	ManagementAccessResourceName pulumi.StringInput
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS(1) and Azure(8) providers.
	TransitFirenetGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixFirewallManagementAccess resource.

func (AviatrixFirewallManagementAccessArgs) ElementType

type AviatrixFirewallManagementAccessArray

type AviatrixFirewallManagementAccessArray []AviatrixFirewallManagementAccessInput

func (AviatrixFirewallManagementAccessArray) ElementType

func (AviatrixFirewallManagementAccessArray) ToAviatrixFirewallManagementAccessArrayOutput

func (i AviatrixFirewallManagementAccessArray) ToAviatrixFirewallManagementAccessArrayOutput() AviatrixFirewallManagementAccessArrayOutput

func (AviatrixFirewallManagementAccessArray) ToAviatrixFirewallManagementAccessArrayOutputWithContext

func (i AviatrixFirewallManagementAccessArray) ToAviatrixFirewallManagementAccessArrayOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessArrayOutput

type AviatrixFirewallManagementAccessArrayInput

type AviatrixFirewallManagementAccessArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallManagementAccessArrayOutput() AviatrixFirewallManagementAccessArrayOutput
	ToAviatrixFirewallManagementAccessArrayOutputWithContext(context.Context) AviatrixFirewallManagementAccessArrayOutput
}

AviatrixFirewallManagementAccessArrayInput is an input type that accepts AviatrixFirewallManagementAccessArray and AviatrixFirewallManagementAccessArrayOutput values. You can construct a concrete instance of `AviatrixFirewallManagementAccessArrayInput` via:

AviatrixFirewallManagementAccessArray{ AviatrixFirewallManagementAccessArgs{...} }

type AviatrixFirewallManagementAccessArrayOutput

type AviatrixFirewallManagementAccessArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallManagementAccessArrayOutput) ElementType

func (AviatrixFirewallManagementAccessArrayOutput) Index

func (AviatrixFirewallManagementAccessArrayOutput) ToAviatrixFirewallManagementAccessArrayOutput

func (o AviatrixFirewallManagementAccessArrayOutput) ToAviatrixFirewallManagementAccessArrayOutput() AviatrixFirewallManagementAccessArrayOutput

func (AviatrixFirewallManagementAccessArrayOutput) ToAviatrixFirewallManagementAccessArrayOutputWithContext

func (o AviatrixFirewallManagementAccessArrayOutput) ToAviatrixFirewallManagementAccessArrayOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessArrayOutput

type AviatrixFirewallManagementAccessInput

type AviatrixFirewallManagementAccessInput interface {
	pulumi.Input

	ToAviatrixFirewallManagementAccessOutput() AviatrixFirewallManagementAccessOutput
	ToAviatrixFirewallManagementAccessOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessOutput
}

type AviatrixFirewallManagementAccessMap

type AviatrixFirewallManagementAccessMap map[string]AviatrixFirewallManagementAccessInput

func (AviatrixFirewallManagementAccessMap) ElementType

func (AviatrixFirewallManagementAccessMap) ToAviatrixFirewallManagementAccessMapOutput

func (i AviatrixFirewallManagementAccessMap) ToAviatrixFirewallManagementAccessMapOutput() AviatrixFirewallManagementAccessMapOutput

func (AviatrixFirewallManagementAccessMap) ToAviatrixFirewallManagementAccessMapOutputWithContext

func (i AviatrixFirewallManagementAccessMap) ToAviatrixFirewallManagementAccessMapOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessMapOutput

type AviatrixFirewallManagementAccessMapInput

type AviatrixFirewallManagementAccessMapInput interface {
	pulumi.Input

	ToAviatrixFirewallManagementAccessMapOutput() AviatrixFirewallManagementAccessMapOutput
	ToAviatrixFirewallManagementAccessMapOutputWithContext(context.Context) AviatrixFirewallManagementAccessMapOutput
}

AviatrixFirewallManagementAccessMapInput is an input type that accepts AviatrixFirewallManagementAccessMap and AviatrixFirewallManagementAccessMapOutput values. You can construct a concrete instance of `AviatrixFirewallManagementAccessMapInput` via:

AviatrixFirewallManagementAccessMap{ "key": AviatrixFirewallManagementAccessArgs{...} }

type AviatrixFirewallManagementAccessMapOutput

type AviatrixFirewallManagementAccessMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallManagementAccessMapOutput) ElementType

func (AviatrixFirewallManagementAccessMapOutput) MapIndex

func (AviatrixFirewallManagementAccessMapOutput) ToAviatrixFirewallManagementAccessMapOutput

func (o AviatrixFirewallManagementAccessMapOutput) ToAviatrixFirewallManagementAccessMapOutput() AviatrixFirewallManagementAccessMapOutput

func (AviatrixFirewallManagementAccessMapOutput) ToAviatrixFirewallManagementAccessMapOutputWithContext

func (o AviatrixFirewallManagementAccessMapOutput) ToAviatrixFirewallManagementAccessMapOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessMapOutput

type AviatrixFirewallManagementAccessOutput

type AviatrixFirewallManagementAccessOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallManagementAccessOutput) ElementType

func (AviatrixFirewallManagementAccessOutput) ManagementAccessResourceName

func (o AviatrixFirewallManagementAccessOutput) ManagementAccessResourceName() pulumi.StringOutput

Name of the resource to enable Firewall Management Access.

func (AviatrixFirewallManagementAccessOutput) ToAviatrixFirewallManagementAccessOutput

func (o AviatrixFirewallManagementAccessOutput) ToAviatrixFirewallManagementAccessOutput() AviatrixFirewallManagementAccessOutput

func (AviatrixFirewallManagementAccessOutput) ToAviatrixFirewallManagementAccessOutputWithContext

func (o AviatrixFirewallManagementAccessOutput) ToAviatrixFirewallManagementAccessOutputWithContext(ctx context.Context) AviatrixFirewallManagementAccessOutput

func (AviatrixFirewallManagementAccessOutput) TransitFirenetGatewayName

func (o AviatrixFirewallManagementAccessOutput) TransitFirenetGatewayName() pulumi.StringOutput

Name of the Transit FireNet-enabled transit gateway. Currently supports AWS(1) and Azure(8) providers.

type AviatrixFirewallManagementAccessState

type AviatrixFirewallManagementAccessState struct {
	// Name of the resource to enable Firewall Management Access.
	ManagementAccessResourceName pulumi.StringPtrInput
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS(1) and Azure(8) providers.
	TransitFirenetGatewayName pulumi.StringPtrInput
}

func (AviatrixFirewallManagementAccessState) ElementType

type AviatrixFirewallMap

type AviatrixFirewallMap map[string]AviatrixFirewallInput

func (AviatrixFirewallMap) ElementType

func (AviatrixFirewallMap) ElementType() reflect.Type

func (AviatrixFirewallMap) ToAviatrixFirewallMapOutput

func (i AviatrixFirewallMap) ToAviatrixFirewallMapOutput() AviatrixFirewallMapOutput

func (AviatrixFirewallMap) ToAviatrixFirewallMapOutputWithContext

func (i AviatrixFirewallMap) ToAviatrixFirewallMapOutputWithContext(ctx context.Context) AviatrixFirewallMapOutput

type AviatrixFirewallMapInput

type AviatrixFirewallMapInput interface {
	pulumi.Input

	ToAviatrixFirewallMapOutput() AviatrixFirewallMapOutput
	ToAviatrixFirewallMapOutputWithContext(context.Context) AviatrixFirewallMapOutput
}

AviatrixFirewallMapInput is an input type that accepts AviatrixFirewallMap and AviatrixFirewallMapOutput values. You can construct a concrete instance of `AviatrixFirewallMapInput` via:

AviatrixFirewallMap{ "key": AviatrixFirewallArgs{...} }

type AviatrixFirewallMapOutput

type AviatrixFirewallMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallMapOutput) ElementType

func (AviatrixFirewallMapOutput) ElementType() reflect.Type

func (AviatrixFirewallMapOutput) MapIndex

func (AviatrixFirewallMapOutput) ToAviatrixFirewallMapOutput

func (o AviatrixFirewallMapOutput) ToAviatrixFirewallMapOutput() AviatrixFirewallMapOutput

func (AviatrixFirewallMapOutput) ToAviatrixFirewallMapOutputWithContext

func (o AviatrixFirewallMapOutput) ToAviatrixFirewallMapOutputWithContext(ctx context.Context) AviatrixFirewallMapOutput

type AviatrixFirewallOutput

type AviatrixFirewallOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallOutput) BaseLogEnabled

func (o AviatrixFirewallOutput) BaseLogEnabled() pulumi.BoolPtrOutput

Indicates whether enable logging or not. Valid Values: true, false. Default value: false.

func (AviatrixFirewallOutput) BasePolicy

New base policy. Valid Values: "allow-all", "deny-all". Default value: "deny-all"

func (AviatrixFirewallOutput) ElementType

func (AviatrixFirewallOutput) ElementType() reflect.Type

func (AviatrixFirewallOutput) GwName

Gateway name to attach firewall policy to.

func (AviatrixFirewallOutput) ManageFirewallPolicies

func (o AviatrixFirewallOutput) ManageFirewallPolicies() pulumi.BoolPtrOutput

Enable to manage firewall policies via in-line rules. If false, policies must be managed using `AviatrixFirewallPolicy` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.

func (AviatrixFirewallOutput) Policies

New access policy for the gateway. Seven fields are required for each policy item: `srcIp`, `dstIp`, `protocol`, `port`, `action`, `logEnabled` and `description`. No duplicate rules (with same `srcIp`, `dstIp`, `protocol` and `port`) are allowed.

func (AviatrixFirewallOutput) ToAviatrixFirewallOutput

func (o AviatrixFirewallOutput) ToAviatrixFirewallOutput() AviatrixFirewallOutput

func (AviatrixFirewallOutput) ToAviatrixFirewallOutputWithContext

func (o AviatrixFirewallOutput) ToAviatrixFirewallOutputWithContext(ctx context.Context) AviatrixFirewallOutput

type AviatrixFirewallPolicy

type AviatrixFirewallPolicy struct {
	pulumi.CustomResourceState

	// Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).
	Action pulumi.StringOutput `pulumi:"action"`
	// Description of the policy. Example: "This is policy no.1".
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	DstIp pulumi.StringOutput `pulumi:"dstIp"`
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Valid values: true, false. Default value: false.
	LogEnabled pulumi.BoolPtrOutput `pulumi:"logEnabled"`
	// A single port or a range of port numbers. Example: "25", "25:1024".
	Port pulumi.StringOutput `pulumi:"port"`
	// Position in the policy list, where the firewall policy will be inserted to. Valid values: any positive integer. Example: 2. If it is larger than the size of policy list, the policy will be inserted to the end.
	Position pulumi.IntOutput `pulumi:"position"`
	// : "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".
	Protocol pulumi.StringPtrOutput `pulumi:"protocol"`
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	SrcIp pulumi.StringOutput `pulumi:"srcIp"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallPolicy(ctx, "testFirewallPolicy", &aviatrix.AviatrixFirewallPolicyArgs{
			GwName:      pulumi.Any(aviatrix_firewall.Test_firewall.Gw_name),
			SrcIp:       pulumi.String("10.15.0.224/32"),
			DstIp:       pulumi.String("10.12.0.172/32"),
			Protocol:    pulumi.String("tcp"),
			Port:        pulumi.String("0:65535"),
			Action:      pulumi.String("allow"),
			LogEnabled:  pulumi.Bool(true),
			Description: pulumi.String("Test policy."),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallPolicy(ctx, "testFirewallPolicy", &aviatrix.AviatrixFirewallPolicyArgs{
			GwName:      pulumi.Any(aviatrix_firewall.Test_firewall.Gw_name),
			SrcIp:       pulumi.String("10.15.0.225/32"),
			DstIp:       pulumi.String("10.12.0.173/32"),
			Protocol:    pulumi.String("tcp"),
			Port:        pulumi.String("0:65535"),
			Action:      pulumi.String("allow"),
			LogEnabled:  pulumi.Bool(true),
			Description: pulumi.String("Test policy."),
			Position:    pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**firewall_policy** can be imported using the `gw_name`, `src_ip`, `dst_ip`, `protocol`, `port` and `action` separated by `~`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallPolicy:AviatrixFirewallPolicy test "gw_name~src_ip~dst_ip~protocol~port~action"

```

func GetAviatrixFirewallPolicy

func GetAviatrixFirewallPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallPolicyState, opts ...pulumi.ResourceOption) (*AviatrixFirewallPolicy, error)

GetAviatrixFirewallPolicy gets an existing AviatrixFirewallPolicy 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 NewAviatrixFirewallPolicy

func NewAviatrixFirewallPolicy(ctx *pulumi.Context,
	name string, args *AviatrixFirewallPolicyArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewallPolicy, error)

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

func (*AviatrixFirewallPolicy) ElementType

func (*AviatrixFirewallPolicy) ElementType() reflect.Type

func (*AviatrixFirewallPolicy) ToAviatrixFirewallPolicyOutput

func (i *AviatrixFirewallPolicy) ToAviatrixFirewallPolicyOutput() AviatrixFirewallPolicyOutput

func (*AviatrixFirewallPolicy) ToAviatrixFirewallPolicyOutputWithContext

func (i *AviatrixFirewallPolicy) ToAviatrixFirewallPolicyOutputWithContext(ctx context.Context) AviatrixFirewallPolicyOutput

type AviatrixFirewallPolicyArgs

type AviatrixFirewallPolicyArgs struct {
	// Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).
	Action pulumi.StringInput
	// Description of the policy. Example: "This is policy no.1".
	Description pulumi.StringPtrInput
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	DstIp pulumi.StringInput
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringInput
	// Valid values: true, false. Default value: false.
	LogEnabled pulumi.BoolPtrInput
	// A single port or a range of port numbers. Example: "25", "25:1024".
	Port pulumi.StringInput
	// Position in the policy list, where the firewall policy will be inserted to. Valid values: any positive integer. Example: 2. If it is larger than the size of policy list, the policy will be inserted to the end.
	Position pulumi.IntPtrInput
	// : "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".
	Protocol pulumi.StringPtrInput
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	SrcIp pulumi.StringInput
}

The set of arguments for constructing a AviatrixFirewallPolicy resource.

func (AviatrixFirewallPolicyArgs) ElementType

func (AviatrixFirewallPolicyArgs) ElementType() reflect.Type

type AviatrixFirewallPolicyArray

type AviatrixFirewallPolicyArray []AviatrixFirewallPolicyInput

func (AviatrixFirewallPolicyArray) ElementType

func (AviatrixFirewallPolicyArray) ToAviatrixFirewallPolicyArrayOutput

func (i AviatrixFirewallPolicyArray) ToAviatrixFirewallPolicyArrayOutput() AviatrixFirewallPolicyArrayOutput

func (AviatrixFirewallPolicyArray) ToAviatrixFirewallPolicyArrayOutputWithContext

func (i AviatrixFirewallPolicyArray) ToAviatrixFirewallPolicyArrayOutputWithContext(ctx context.Context) AviatrixFirewallPolicyArrayOutput

type AviatrixFirewallPolicyArrayInput

type AviatrixFirewallPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallPolicyArrayOutput() AviatrixFirewallPolicyArrayOutput
	ToAviatrixFirewallPolicyArrayOutputWithContext(context.Context) AviatrixFirewallPolicyArrayOutput
}

AviatrixFirewallPolicyArrayInput is an input type that accepts AviatrixFirewallPolicyArray and AviatrixFirewallPolicyArrayOutput values. You can construct a concrete instance of `AviatrixFirewallPolicyArrayInput` via:

AviatrixFirewallPolicyArray{ AviatrixFirewallPolicyArgs{...} }

type AviatrixFirewallPolicyArrayOutput

type AviatrixFirewallPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallPolicyArrayOutput) ElementType

func (AviatrixFirewallPolicyArrayOutput) Index

func (AviatrixFirewallPolicyArrayOutput) ToAviatrixFirewallPolicyArrayOutput

func (o AviatrixFirewallPolicyArrayOutput) ToAviatrixFirewallPolicyArrayOutput() AviatrixFirewallPolicyArrayOutput

func (AviatrixFirewallPolicyArrayOutput) ToAviatrixFirewallPolicyArrayOutputWithContext

func (o AviatrixFirewallPolicyArrayOutput) ToAviatrixFirewallPolicyArrayOutputWithContext(ctx context.Context) AviatrixFirewallPolicyArrayOutput

type AviatrixFirewallPolicyInput

type AviatrixFirewallPolicyInput interface {
	pulumi.Input

	ToAviatrixFirewallPolicyOutput() AviatrixFirewallPolicyOutput
	ToAviatrixFirewallPolicyOutputWithContext(ctx context.Context) AviatrixFirewallPolicyOutput
}

type AviatrixFirewallPolicyMap

type AviatrixFirewallPolicyMap map[string]AviatrixFirewallPolicyInput

func (AviatrixFirewallPolicyMap) ElementType

func (AviatrixFirewallPolicyMap) ElementType() reflect.Type

func (AviatrixFirewallPolicyMap) ToAviatrixFirewallPolicyMapOutput

func (i AviatrixFirewallPolicyMap) ToAviatrixFirewallPolicyMapOutput() AviatrixFirewallPolicyMapOutput

func (AviatrixFirewallPolicyMap) ToAviatrixFirewallPolicyMapOutputWithContext

func (i AviatrixFirewallPolicyMap) ToAviatrixFirewallPolicyMapOutputWithContext(ctx context.Context) AviatrixFirewallPolicyMapOutput

type AviatrixFirewallPolicyMapInput

type AviatrixFirewallPolicyMapInput interface {
	pulumi.Input

	ToAviatrixFirewallPolicyMapOutput() AviatrixFirewallPolicyMapOutput
	ToAviatrixFirewallPolicyMapOutputWithContext(context.Context) AviatrixFirewallPolicyMapOutput
}

AviatrixFirewallPolicyMapInput is an input type that accepts AviatrixFirewallPolicyMap and AviatrixFirewallPolicyMapOutput values. You can construct a concrete instance of `AviatrixFirewallPolicyMapInput` via:

AviatrixFirewallPolicyMap{ "key": AviatrixFirewallPolicyArgs{...} }

type AviatrixFirewallPolicyMapOutput

type AviatrixFirewallPolicyMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallPolicyMapOutput) ElementType

func (AviatrixFirewallPolicyMapOutput) MapIndex

func (AviatrixFirewallPolicyMapOutput) ToAviatrixFirewallPolicyMapOutput

func (o AviatrixFirewallPolicyMapOutput) ToAviatrixFirewallPolicyMapOutput() AviatrixFirewallPolicyMapOutput

func (AviatrixFirewallPolicyMapOutput) ToAviatrixFirewallPolicyMapOutputWithContext

func (o AviatrixFirewallPolicyMapOutput) ToAviatrixFirewallPolicyMapOutputWithContext(ctx context.Context) AviatrixFirewallPolicyMapOutput

type AviatrixFirewallPolicyOutput

type AviatrixFirewallPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallPolicyOutput) Action

Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).

func (AviatrixFirewallPolicyOutput) Description

Description of the policy. Example: "This is policy no.1".

func (AviatrixFirewallPolicyOutput) DstIp

CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.

func (AviatrixFirewallPolicyOutput) ElementType

func (AviatrixFirewallPolicyOutput) GwName

Gateway name to attach firewall policy to.

func (AviatrixFirewallPolicyOutput) LogEnabled

Valid values: true, false. Default value: false.

func (AviatrixFirewallPolicyOutput) Port

A single port or a range of port numbers. Example: "25", "25:1024".

func (AviatrixFirewallPolicyOutput) Position

Position in the policy list, where the firewall policy will be inserted to. Valid values: any positive integer. Example: 2. If it is larger than the size of policy list, the policy will be inserted to the end.

func (AviatrixFirewallPolicyOutput) Protocol

: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".

func (AviatrixFirewallPolicyOutput) SrcIp

CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.

func (AviatrixFirewallPolicyOutput) ToAviatrixFirewallPolicyOutput

func (o AviatrixFirewallPolicyOutput) ToAviatrixFirewallPolicyOutput() AviatrixFirewallPolicyOutput

func (AviatrixFirewallPolicyOutput) ToAviatrixFirewallPolicyOutputWithContext

func (o AviatrixFirewallPolicyOutput) ToAviatrixFirewallPolicyOutputWithContext(ctx context.Context) AviatrixFirewallPolicyOutput

type AviatrixFirewallPolicyState

type AviatrixFirewallPolicyState struct {
	// Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).
	Action pulumi.StringPtrInput
	// Description of the policy. Example: "This is policy no.1".
	Description pulumi.StringPtrInput
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	DstIp pulumi.StringPtrInput
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringPtrInput
	// Valid values: true, false. Default value: false.
	LogEnabled pulumi.BoolPtrInput
	// A single port or a range of port numbers. Example: "25", "25:1024".
	Port pulumi.StringPtrInput
	// Position in the policy list, where the firewall policy will be inserted to. Valid values: any positive integer. Example: 2. If it is larger than the size of policy list, the policy will be inserted to the end.
	Position pulumi.IntPtrInput
	// : "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".
	Protocol pulumi.StringPtrInput
	// CIDRs separated by comma or tag names such "HR" or "marketing" etc. Example: "10.30.0.0/16,10.45.0.0/20". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	SrcIp pulumi.StringPtrInput
}

func (AviatrixFirewallPolicyState) ElementType

type AviatrixFirewallPolicyType

type AviatrixFirewallPolicyType struct {
	// Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).
	Action string `pulumi:"action"`
	// Description of the policy. Example: "This is policy no.1".
	Description *string `pulumi:"description"`
	// Destination address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	DstIp string `pulumi:"dstIp"`
	// Valid values: true, false. Default value: false.
	LogEnabled *bool `pulumi:"logEnabled"`
	// A single port or a range of port numbers. Example: "25", "25:1024".
	Port string `pulumi:"port"`
	// : Valid values: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp". Default value: "all".
	Protocol *string `pulumi:"protocol"`
	// Source address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	SrcIp string `pulumi:"srcIp"`
}

type AviatrixFirewallPolicyTypeArgs

type AviatrixFirewallPolicyTypeArgs struct {
	// Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).
	Action pulumi.StringInput `pulumi:"action"`
	// Description of the policy. Example: "This is policy no.1".
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Destination address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	DstIp pulumi.StringInput `pulumi:"dstIp"`
	// Valid values: true, false. Default value: false.
	LogEnabled pulumi.BoolPtrInput `pulumi:"logEnabled"`
	// A single port or a range of port numbers. Example: "25", "25:1024".
	Port pulumi.StringInput `pulumi:"port"`
	// : Valid values: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp". Default value: "all".
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// Source address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.
	SrcIp pulumi.StringInput `pulumi:"srcIp"`
}

func (AviatrixFirewallPolicyTypeArgs) ElementType

func (AviatrixFirewallPolicyTypeArgs) ToAviatrixFirewallPolicyTypeOutput

func (i AviatrixFirewallPolicyTypeArgs) ToAviatrixFirewallPolicyTypeOutput() AviatrixFirewallPolicyTypeOutput

func (AviatrixFirewallPolicyTypeArgs) ToAviatrixFirewallPolicyTypeOutputWithContext

func (i AviatrixFirewallPolicyTypeArgs) ToAviatrixFirewallPolicyTypeOutputWithContext(ctx context.Context) AviatrixFirewallPolicyTypeOutput

type AviatrixFirewallPolicyTypeArray

type AviatrixFirewallPolicyTypeArray []AviatrixFirewallPolicyTypeInput

func (AviatrixFirewallPolicyTypeArray) ElementType

func (AviatrixFirewallPolicyTypeArray) ToAviatrixFirewallPolicyTypeArrayOutput

func (i AviatrixFirewallPolicyTypeArray) ToAviatrixFirewallPolicyTypeArrayOutput() AviatrixFirewallPolicyTypeArrayOutput

func (AviatrixFirewallPolicyTypeArray) ToAviatrixFirewallPolicyTypeArrayOutputWithContext

func (i AviatrixFirewallPolicyTypeArray) ToAviatrixFirewallPolicyTypeArrayOutputWithContext(ctx context.Context) AviatrixFirewallPolicyTypeArrayOutput

type AviatrixFirewallPolicyTypeArrayInput

type AviatrixFirewallPolicyTypeArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallPolicyTypeArrayOutput() AviatrixFirewallPolicyTypeArrayOutput
	ToAviatrixFirewallPolicyTypeArrayOutputWithContext(context.Context) AviatrixFirewallPolicyTypeArrayOutput
}

AviatrixFirewallPolicyTypeArrayInput is an input type that accepts AviatrixFirewallPolicyTypeArray and AviatrixFirewallPolicyTypeArrayOutput values. You can construct a concrete instance of `AviatrixFirewallPolicyTypeArrayInput` via:

AviatrixFirewallPolicyTypeArray{ AviatrixFirewallPolicyTypeArgs{...} }

type AviatrixFirewallPolicyTypeArrayOutput

type AviatrixFirewallPolicyTypeArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallPolicyTypeArrayOutput) ElementType

func (AviatrixFirewallPolicyTypeArrayOutput) Index

func (AviatrixFirewallPolicyTypeArrayOutput) ToAviatrixFirewallPolicyTypeArrayOutput

func (o AviatrixFirewallPolicyTypeArrayOutput) ToAviatrixFirewallPolicyTypeArrayOutput() AviatrixFirewallPolicyTypeArrayOutput

func (AviatrixFirewallPolicyTypeArrayOutput) ToAviatrixFirewallPolicyTypeArrayOutputWithContext

func (o AviatrixFirewallPolicyTypeArrayOutput) ToAviatrixFirewallPolicyTypeArrayOutputWithContext(ctx context.Context) AviatrixFirewallPolicyTypeArrayOutput

type AviatrixFirewallPolicyTypeInput

type AviatrixFirewallPolicyTypeInput interface {
	pulumi.Input

	ToAviatrixFirewallPolicyTypeOutput() AviatrixFirewallPolicyTypeOutput
	ToAviatrixFirewallPolicyTypeOutputWithContext(context.Context) AviatrixFirewallPolicyTypeOutput
}

AviatrixFirewallPolicyTypeInput is an input type that accepts AviatrixFirewallPolicyTypeArgs and AviatrixFirewallPolicyTypeOutput values. You can construct a concrete instance of `AviatrixFirewallPolicyTypeInput` via:

AviatrixFirewallPolicyTypeArgs{...}

type AviatrixFirewallPolicyTypeOutput

type AviatrixFirewallPolicyTypeOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallPolicyTypeOutput) Action

Valid values: "allow", "deny" and "force-drop" (in stateful firewall rule to allow immediate packet dropping on established sessions).

func (AviatrixFirewallPolicyTypeOutput) Description

Description of the policy. Example: "This is policy no.1".

func (AviatrixFirewallPolicyTypeOutput) DstIp

Destination address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.

func (AviatrixFirewallPolicyTypeOutput) ElementType

func (AviatrixFirewallPolicyTypeOutput) LogEnabled

Valid values: true, false. Default value: false.

func (AviatrixFirewallPolicyTypeOutput) Port

A single port or a range of port numbers. Example: "25", "25:1024".

func (AviatrixFirewallPolicyTypeOutput) Protocol

: Valid values: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp". Default value: "all".

func (AviatrixFirewallPolicyTypeOutput) SrcIp

Source address, a valid IPv4 address or tag name such "HR" or "marketing" etc. Example: "10.30.0.0/16". The **aviatrix_firewall_tag** resource should be created prior to using the tag name.

func (AviatrixFirewallPolicyTypeOutput) ToAviatrixFirewallPolicyTypeOutput

func (o AviatrixFirewallPolicyTypeOutput) ToAviatrixFirewallPolicyTypeOutput() AviatrixFirewallPolicyTypeOutput

func (AviatrixFirewallPolicyTypeOutput) ToAviatrixFirewallPolicyTypeOutputWithContext

func (o AviatrixFirewallPolicyTypeOutput) ToAviatrixFirewallPolicyTypeOutputWithContext(ctx context.Context) AviatrixFirewallPolicyTypeOutput

type AviatrixFirewallState

type AviatrixFirewallState struct {
	// Indicates whether enable logging or not. Valid Values: true, false. Default value: false.
	BaseLogEnabled pulumi.BoolPtrInput
	// New base policy. Valid Values: "allow-all", "deny-all". Default value: "deny-all"
	BasePolicy pulumi.StringPtrInput
	// Gateway name to attach firewall policy to.
	GwName pulumi.StringPtrInput
	// Enable to manage firewall policies via in-line rules. If false, policies must be managed using `AviatrixFirewallPolicy` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageFirewallPolicies pulumi.BoolPtrInput
	// New access policy for the gateway. Seven fields are required for each policy item: `srcIp`, `dstIp`, `protocol`, `port`, `action`, `logEnabled` and `description`. No duplicate rules (with same `srcIp`, `dstIp`, `protocol` and `port`) are allowed.
	Policies AviatrixFirewallPolicyTypeArrayInput
}

func (AviatrixFirewallState) ElementType

func (AviatrixFirewallState) ElementType() reflect.Type

type AviatrixFirewallTag

type AviatrixFirewallTag struct {
	pulumi.CustomResourceState

	// Dynamic block representing a CIDR to filter, and a name to identify it:
	CidrLists AviatrixFirewallTagCidrListArrayOutput `pulumi:"cidrLists"`
	// Name of the stateful firewall tag to be created.
	FirewallTag pulumi.StringOutput `pulumi:"firewallTag"`
}

The **aviatrix_firewall_tag** resource allows the creation and management of [Aviatrix Stateful Firewall tags](https://docs.aviatrix.com/HowTos/tag_firewall.html) for tag-based security for gateways.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFirewallTag(ctx, "testFirewallTag", &aviatrix.AviatrixFirewallTagArgs{
			CidrLists: AviatrixFirewallTagCidrListArray{
				&AviatrixFirewallTagCidrListArgs{
					Cidr:        pulumi.String("10.1.0.0/24"),
					CidrTagName: pulumi.String("a1"),
				},
				&AviatrixFirewallTagCidrListArgs{
					Cidr:        pulumi.String("10.2.0.0/24"),
					CidrTagName: pulumi.String("b1"),
				},
			},
			FirewallTag: pulumi.String("test-firewall-tag"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**firewall_tag** can be imported using the `firewall_tag`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFirewallTag:AviatrixFirewallTag test firewall_tag

```

func GetAviatrixFirewallTag

func GetAviatrixFirewallTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFirewallTagState, opts ...pulumi.ResourceOption) (*AviatrixFirewallTag, error)

GetAviatrixFirewallTag gets an existing AviatrixFirewallTag 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 NewAviatrixFirewallTag

func NewAviatrixFirewallTag(ctx *pulumi.Context,
	name string, args *AviatrixFirewallTagArgs, opts ...pulumi.ResourceOption) (*AviatrixFirewallTag, error)

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

func (*AviatrixFirewallTag) ElementType

func (*AviatrixFirewallTag) ElementType() reflect.Type

func (*AviatrixFirewallTag) ToAviatrixFirewallTagOutput

func (i *AviatrixFirewallTag) ToAviatrixFirewallTagOutput() AviatrixFirewallTagOutput

func (*AviatrixFirewallTag) ToAviatrixFirewallTagOutputWithContext

func (i *AviatrixFirewallTag) ToAviatrixFirewallTagOutputWithContext(ctx context.Context) AviatrixFirewallTagOutput

type AviatrixFirewallTagArgs

type AviatrixFirewallTagArgs struct {
	// Dynamic block representing a CIDR to filter, and a name to identify it:
	CidrLists AviatrixFirewallTagCidrListArrayInput
	// Name of the stateful firewall tag to be created.
	FirewallTag pulumi.StringInput
}

The set of arguments for constructing a AviatrixFirewallTag resource.

func (AviatrixFirewallTagArgs) ElementType

func (AviatrixFirewallTagArgs) ElementType() reflect.Type

type AviatrixFirewallTagArray

type AviatrixFirewallTagArray []AviatrixFirewallTagInput

func (AviatrixFirewallTagArray) ElementType

func (AviatrixFirewallTagArray) ElementType() reflect.Type

func (AviatrixFirewallTagArray) ToAviatrixFirewallTagArrayOutput

func (i AviatrixFirewallTagArray) ToAviatrixFirewallTagArrayOutput() AviatrixFirewallTagArrayOutput

func (AviatrixFirewallTagArray) ToAviatrixFirewallTagArrayOutputWithContext

func (i AviatrixFirewallTagArray) ToAviatrixFirewallTagArrayOutputWithContext(ctx context.Context) AviatrixFirewallTagArrayOutput

type AviatrixFirewallTagArrayInput

type AviatrixFirewallTagArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallTagArrayOutput() AviatrixFirewallTagArrayOutput
	ToAviatrixFirewallTagArrayOutputWithContext(context.Context) AviatrixFirewallTagArrayOutput
}

AviatrixFirewallTagArrayInput is an input type that accepts AviatrixFirewallTagArray and AviatrixFirewallTagArrayOutput values. You can construct a concrete instance of `AviatrixFirewallTagArrayInput` via:

AviatrixFirewallTagArray{ AviatrixFirewallTagArgs{...} }

type AviatrixFirewallTagArrayOutput

type AviatrixFirewallTagArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallTagArrayOutput) ElementType

func (AviatrixFirewallTagArrayOutput) Index

func (AviatrixFirewallTagArrayOutput) ToAviatrixFirewallTagArrayOutput

func (o AviatrixFirewallTagArrayOutput) ToAviatrixFirewallTagArrayOutput() AviatrixFirewallTagArrayOutput

func (AviatrixFirewallTagArrayOutput) ToAviatrixFirewallTagArrayOutputWithContext

func (o AviatrixFirewallTagArrayOutput) ToAviatrixFirewallTagArrayOutputWithContext(ctx context.Context) AviatrixFirewallTagArrayOutput

type AviatrixFirewallTagCidrList

type AviatrixFirewallTagCidrList struct {
	// CIDR address to filter. Example: "10.88.88.88/32".
	Cidr string `pulumi:"cidr"`
	// A name to identify the CIDR. Example: "policy1".
	CidrTagName string `pulumi:"cidrTagName"`
}

type AviatrixFirewallTagCidrListArgs

type AviatrixFirewallTagCidrListArgs struct {
	// CIDR address to filter. Example: "10.88.88.88/32".
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// A name to identify the CIDR. Example: "policy1".
	CidrTagName pulumi.StringInput `pulumi:"cidrTagName"`
}

func (AviatrixFirewallTagCidrListArgs) ElementType

func (AviatrixFirewallTagCidrListArgs) ToAviatrixFirewallTagCidrListOutput

func (i AviatrixFirewallTagCidrListArgs) ToAviatrixFirewallTagCidrListOutput() AviatrixFirewallTagCidrListOutput

func (AviatrixFirewallTagCidrListArgs) ToAviatrixFirewallTagCidrListOutputWithContext

func (i AviatrixFirewallTagCidrListArgs) ToAviatrixFirewallTagCidrListOutputWithContext(ctx context.Context) AviatrixFirewallTagCidrListOutput

type AviatrixFirewallTagCidrListArray

type AviatrixFirewallTagCidrListArray []AviatrixFirewallTagCidrListInput

func (AviatrixFirewallTagCidrListArray) ElementType

func (AviatrixFirewallTagCidrListArray) ToAviatrixFirewallTagCidrListArrayOutput

func (i AviatrixFirewallTagCidrListArray) ToAviatrixFirewallTagCidrListArrayOutput() AviatrixFirewallTagCidrListArrayOutput

func (AviatrixFirewallTagCidrListArray) ToAviatrixFirewallTagCidrListArrayOutputWithContext

func (i AviatrixFirewallTagCidrListArray) ToAviatrixFirewallTagCidrListArrayOutputWithContext(ctx context.Context) AviatrixFirewallTagCidrListArrayOutput

type AviatrixFirewallTagCidrListArrayInput

type AviatrixFirewallTagCidrListArrayInput interface {
	pulumi.Input

	ToAviatrixFirewallTagCidrListArrayOutput() AviatrixFirewallTagCidrListArrayOutput
	ToAviatrixFirewallTagCidrListArrayOutputWithContext(context.Context) AviatrixFirewallTagCidrListArrayOutput
}

AviatrixFirewallTagCidrListArrayInput is an input type that accepts AviatrixFirewallTagCidrListArray and AviatrixFirewallTagCidrListArrayOutput values. You can construct a concrete instance of `AviatrixFirewallTagCidrListArrayInput` via:

AviatrixFirewallTagCidrListArray{ AviatrixFirewallTagCidrListArgs{...} }

type AviatrixFirewallTagCidrListArrayOutput

type AviatrixFirewallTagCidrListArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallTagCidrListArrayOutput) ElementType

func (AviatrixFirewallTagCidrListArrayOutput) Index

func (AviatrixFirewallTagCidrListArrayOutput) ToAviatrixFirewallTagCidrListArrayOutput

func (o AviatrixFirewallTagCidrListArrayOutput) ToAviatrixFirewallTagCidrListArrayOutput() AviatrixFirewallTagCidrListArrayOutput

func (AviatrixFirewallTagCidrListArrayOutput) ToAviatrixFirewallTagCidrListArrayOutputWithContext

func (o AviatrixFirewallTagCidrListArrayOutput) ToAviatrixFirewallTagCidrListArrayOutputWithContext(ctx context.Context) AviatrixFirewallTagCidrListArrayOutput

type AviatrixFirewallTagCidrListInput

type AviatrixFirewallTagCidrListInput interface {
	pulumi.Input

	ToAviatrixFirewallTagCidrListOutput() AviatrixFirewallTagCidrListOutput
	ToAviatrixFirewallTagCidrListOutputWithContext(context.Context) AviatrixFirewallTagCidrListOutput
}

AviatrixFirewallTagCidrListInput is an input type that accepts AviatrixFirewallTagCidrListArgs and AviatrixFirewallTagCidrListOutput values. You can construct a concrete instance of `AviatrixFirewallTagCidrListInput` via:

AviatrixFirewallTagCidrListArgs{...}

type AviatrixFirewallTagCidrListOutput

type AviatrixFirewallTagCidrListOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallTagCidrListOutput) Cidr

CIDR address to filter. Example: "10.88.88.88/32".

func (AviatrixFirewallTagCidrListOutput) CidrTagName

A name to identify the CIDR. Example: "policy1".

func (AviatrixFirewallTagCidrListOutput) ElementType

func (AviatrixFirewallTagCidrListOutput) ToAviatrixFirewallTagCidrListOutput

func (o AviatrixFirewallTagCidrListOutput) ToAviatrixFirewallTagCidrListOutput() AviatrixFirewallTagCidrListOutput

func (AviatrixFirewallTagCidrListOutput) ToAviatrixFirewallTagCidrListOutputWithContext

func (o AviatrixFirewallTagCidrListOutput) ToAviatrixFirewallTagCidrListOutputWithContext(ctx context.Context) AviatrixFirewallTagCidrListOutput

type AviatrixFirewallTagInput

type AviatrixFirewallTagInput interface {
	pulumi.Input

	ToAviatrixFirewallTagOutput() AviatrixFirewallTagOutput
	ToAviatrixFirewallTagOutputWithContext(ctx context.Context) AviatrixFirewallTagOutput
}

type AviatrixFirewallTagMap

type AviatrixFirewallTagMap map[string]AviatrixFirewallTagInput

func (AviatrixFirewallTagMap) ElementType

func (AviatrixFirewallTagMap) ElementType() reflect.Type

func (AviatrixFirewallTagMap) ToAviatrixFirewallTagMapOutput

func (i AviatrixFirewallTagMap) ToAviatrixFirewallTagMapOutput() AviatrixFirewallTagMapOutput

func (AviatrixFirewallTagMap) ToAviatrixFirewallTagMapOutputWithContext

func (i AviatrixFirewallTagMap) ToAviatrixFirewallTagMapOutputWithContext(ctx context.Context) AviatrixFirewallTagMapOutput

type AviatrixFirewallTagMapInput

type AviatrixFirewallTagMapInput interface {
	pulumi.Input

	ToAviatrixFirewallTagMapOutput() AviatrixFirewallTagMapOutput
	ToAviatrixFirewallTagMapOutputWithContext(context.Context) AviatrixFirewallTagMapOutput
}

AviatrixFirewallTagMapInput is an input type that accepts AviatrixFirewallTagMap and AviatrixFirewallTagMapOutput values. You can construct a concrete instance of `AviatrixFirewallTagMapInput` via:

AviatrixFirewallTagMap{ "key": AviatrixFirewallTagArgs{...} }

type AviatrixFirewallTagMapOutput

type AviatrixFirewallTagMapOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallTagMapOutput) ElementType

func (AviatrixFirewallTagMapOutput) MapIndex

func (AviatrixFirewallTagMapOutput) ToAviatrixFirewallTagMapOutput

func (o AviatrixFirewallTagMapOutput) ToAviatrixFirewallTagMapOutput() AviatrixFirewallTagMapOutput

func (AviatrixFirewallTagMapOutput) ToAviatrixFirewallTagMapOutputWithContext

func (o AviatrixFirewallTagMapOutput) ToAviatrixFirewallTagMapOutputWithContext(ctx context.Context) AviatrixFirewallTagMapOutput

type AviatrixFirewallTagOutput

type AviatrixFirewallTagOutput struct{ *pulumi.OutputState }

func (AviatrixFirewallTagOutput) CidrLists

Dynamic block representing a CIDR to filter, and a name to identify it:

func (AviatrixFirewallTagOutput) ElementType

func (AviatrixFirewallTagOutput) ElementType() reflect.Type

func (AviatrixFirewallTagOutput) FirewallTag

Name of the stateful firewall tag to be created.

func (AviatrixFirewallTagOutput) ToAviatrixFirewallTagOutput

func (o AviatrixFirewallTagOutput) ToAviatrixFirewallTagOutput() AviatrixFirewallTagOutput

func (AviatrixFirewallTagOutput) ToAviatrixFirewallTagOutputWithContext

func (o AviatrixFirewallTagOutput) ToAviatrixFirewallTagOutputWithContext(ctx context.Context) AviatrixFirewallTagOutput

type AviatrixFirewallTagState

type AviatrixFirewallTagState struct {
	// Dynamic block representing a CIDR to filter, and a name to identify it:
	CidrLists AviatrixFirewallTagCidrListArrayInput
	// Name of the stateful firewall tag to be created.
	FirewallTag pulumi.StringPtrInput
}

func (AviatrixFirewallTagState) ElementType

func (AviatrixFirewallTagState) ElementType() reflect.Type

type AviatrixFqdn

type AviatrixFqdn struct {
	pulumi.CustomResourceState

	// One or more domain names in a list with details as listed below:
	DomainNames AviatrixFqdnDomainNameArrayOutput `pulumi:"domainNames"`
	// FQDN Filter tag status. Valid values: true, false.
	FqdnEnabled pulumi.BoolPtrOutput `pulumi:"fqdnEnabled"`
	// Specify FQDN mode: whitelist or blacklist. Valid values: "white", "black".
	FqdnMode pulumi.StringPtrOutput `pulumi:"fqdnMode"`
	// FQDN Filter tag name.
	FqdnTag pulumi.StringOutput `pulumi:"fqdnTag"`
	// A list of gateways to attach to the specific tag.
	GwFilterTagLists AviatrixFqdnGwFilterTagListArrayOutput `pulumi:"gwFilterTagLists"`
	// Enable to manage domain name rules in-line. If false, domain name rules must be managed using `AviatrixFqdnTagRule` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageDomainNames pulumi.BoolPtrOutput `pulumi:"manageDomainNames"`
}

## Import

**fqdn** can be imported using the `fqdn_tag`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFqdn:AviatrixFqdn test fqdn_tag

```

func GetAviatrixFqdn

func GetAviatrixFqdn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFqdnState, opts ...pulumi.ResourceOption) (*AviatrixFqdn, error)

GetAviatrixFqdn gets an existing AviatrixFqdn 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 NewAviatrixFqdn

func NewAviatrixFqdn(ctx *pulumi.Context,
	name string, args *AviatrixFqdnArgs, opts ...pulumi.ResourceOption) (*AviatrixFqdn, error)

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

func (*AviatrixFqdn) ElementType

func (*AviatrixFqdn) ElementType() reflect.Type

func (*AviatrixFqdn) ToAviatrixFqdnOutput

func (i *AviatrixFqdn) ToAviatrixFqdnOutput() AviatrixFqdnOutput

func (*AviatrixFqdn) ToAviatrixFqdnOutputWithContext

func (i *AviatrixFqdn) ToAviatrixFqdnOutputWithContext(ctx context.Context) AviatrixFqdnOutput

type AviatrixFqdnArgs

type AviatrixFqdnArgs struct {
	// One or more domain names in a list with details as listed below:
	DomainNames AviatrixFqdnDomainNameArrayInput
	// FQDN Filter tag status. Valid values: true, false.
	FqdnEnabled pulumi.BoolPtrInput
	// Specify FQDN mode: whitelist or blacklist. Valid values: "white", "black".
	FqdnMode pulumi.StringPtrInput
	// FQDN Filter tag name.
	FqdnTag pulumi.StringInput
	// A list of gateways to attach to the specific tag.
	GwFilterTagLists AviatrixFqdnGwFilterTagListArrayInput
	// Enable to manage domain name rules in-line. If false, domain name rules must be managed using `AviatrixFqdnTagRule` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageDomainNames pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixFqdn resource.

func (AviatrixFqdnArgs) ElementType

func (AviatrixFqdnArgs) ElementType() reflect.Type

type AviatrixFqdnArray

type AviatrixFqdnArray []AviatrixFqdnInput

func (AviatrixFqdnArray) ElementType

func (AviatrixFqdnArray) ElementType() reflect.Type

func (AviatrixFqdnArray) ToAviatrixFqdnArrayOutput

func (i AviatrixFqdnArray) ToAviatrixFqdnArrayOutput() AviatrixFqdnArrayOutput

func (AviatrixFqdnArray) ToAviatrixFqdnArrayOutputWithContext

func (i AviatrixFqdnArray) ToAviatrixFqdnArrayOutputWithContext(ctx context.Context) AviatrixFqdnArrayOutput

type AviatrixFqdnArrayInput

type AviatrixFqdnArrayInput interface {
	pulumi.Input

	ToAviatrixFqdnArrayOutput() AviatrixFqdnArrayOutput
	ToAviatrixFqdnArrayOutputWithContext(context.Context) AviatrixFqdnArrayOutput
}

AviatrixFqdnArrayInput is an input type that accepts AviatrixFqdnArray and AviatrixFqdnArrayOutput values. You can construct a concrete instance of `AviatrixFqdnArrayInput` via:

AviatrixFqdnArray{ AviatrixFqdnArgs{...} }

type AviatrixFqdnArrayOutput

type AviatrixFqdnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnArrayOutput) ElementType

func (AviatrixFqdnArrayOutput) ElementType() reflect.Type

func (AviatrixFqdnArrayOutput) Index

func (AviatrixFqdnArrayOutput) ToAviatrixFqdnArrayOutput

func (o AviatrixFqdnArrayOutput) ToAviatrixFqdnArrayOutput() AviatrixFqdnArrayOutput

func (AviatrixFqdnArrayOutput) ToAviatrixFqdnArrayOutputWithContext

func (o AviatrixFqdnArrayOutput) ToAviatrixFqdnArrayOutputWithContext(ctx context.Context) AviatrixFqdnArrayOutput

type AviatrixFqdnDomainName

type AviatrixFqdnDomainName struct {
	// What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided.
	// * For protocol "all", port must be set to "all".
	// * For protocol “icmp”, port must be set to “ping”.
	Action *string `pulumi:"action"`
	// FQDN. Example: "facebook.com".
	Fqdn string `pulumi:"fqdn"`
	// Port. Example "25".
	Port string `pulumi:"port"`
	// Protocol. Valid values: "all", "tcp", "udp", "icmp".
	Proto string `pulumi:"proto"`
}

type AviatrixFqdnDomainNameArgs

type AviatrixFqdnDomainNameArgs struct {
	// What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided.
	// * For protocol "all", port must be set to "all".
	// * For protocol “icmp”, port must be set to “ping”.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// FQDN. Example: "facebook.com".
	Fqdn pulumi.StringInput `pulumi:"fqdn"`
	// Port. Example "25".
	Port pulumi.StringInput `pulumi:"port"`
	// Protocol. Valid values: "all", "tcp", "udp", "icmp".
	Proto pulumi.StringInput `pulumi:"proto"`
}

func (AviatrixFqdnDomainNameArgs) ElementType

func (AviatrixFqdnDomainNameArgs) ElementType() reflect.Type

func (AviatrixFqdnDomainNameArgs) ToAviatrixFqdnDomainNameOutput

func (i AviatrixFqdnDomainNameArgs) ToAviatrixFqdnDomainNameOutput() AviatrixFqdnDomainNameOutput

func (AviatrixFqdnDomainNameArgs) ToAviatrixFqdnDomainNameOutputWithContext

func (i AviatrixFqdnDomainNameArgs) ToAviatrixFqdnDomainNameOutputWithContext(ctx context.Context) AviatrixFqdnDomainNameOutput

type AviatrixFqdnDomainNameArray

type AviatrixFqdnDomainNameArray []AviatrixFqdnDomainNameInput

func (AviatrixFqdnDomainNameArray) ElementType

func (AviatrixFqdnDomainNameArray) ToAviatrixFqdnDomainNameArrayOutput

func (i AviatrixFqdnDomainNameArray) ToAviatrixFqdnDomainNameArrayOutput() AviatrixFqdnDomainNameArrayOutput

func (AviatrixFqdnDomainNameArray) ToAviatrixFqdnDomainNameArrayOutputWithContext

func (i AviatrixFqdnDomainNameArray) ToAviatrixFqdnDomainNameArrayOutputWithContext(ctx context.Context) AviatrixFqdnDomainNameArrayOutput

type AviatrixFqdnDomainNameArrayInput

type AviatrixFqdnDomainNameArrayInput interface {
	pulumi.Input

	ToAviatrixFqdnDomainNameArrayOutput() AviatrixFqdnDomainNameArrayOutput
	ToAviatrixFqdnDomainNameArrayOutputWithContext(context.Context) AviatrixFqdnDomainNameArrayOutput
}

AviatrixFqdnDomainNameArrayInput is an input type that accepts AviatrixFqdnDomainNameArray and AviatrixFqdnDomainNameArrayOutput values. You can construct a concrete instance of `AviatrixFqdnDomainNameArrayInput` via:

AviatrixFqdnDomainNameArray{ AviatrixFqdnDomainNameArgs{...} }

type AviatrixFqdnDomainNameArrayOutput

type AviatrixFqdnDomainNameArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnDomainNameArrayOutput) ElementType

func (AviatrixFqdnDomainNameArrayOutput) Index

func (AviatrixFqdnDomainNameArrayOutput) ToAviatrixFqdnDomainNameArrayOutput

func (o AviatrixFqdnDomainNameArrayOutput) ToAviatrixFqdnDomainNameArrayOutput() AviatrixFqdnDomainNameArrayOutput

func (AviatrixFqdnDomainNameArrayOutput) ToAviatrixFqdnDomainNameArrayOutputWithContext

func (o AviatrixFqdnDomainNameArrayOutput) ToAviatrixFqdnDomainNameArrayOutputWithContext(ctx context.Context) AviatrixFqdnDomainNameArrayOutput

type AviatrixFqdnDomainNameInput

type AviatrixFqdnDomainNameInput interface {
	pulumi.Input

	ToAviatrixFqdnDomainNameOutput() AviatrixFqdnDomainNameOutput
	ToAviatrixFqdnDomainNameOutputWithContext(context.Context) AviatrixFqdnDomainNameOutput
}

AviatrixFqdnDomainNameInput is an input type that accepts AviatrixFqdnDomainNameArgs and AviatrixFqdnDomainNameOutput values. You can construct a concrete instance of `AviatrixFqdnDomainNameInput` via:

AviatrixFqdnDomainNameArgs{...}

type AviatrixFqdnDomainNameOutput

type AviatrixFqdnDomainNameOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnDomainNameOutput) Action

What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided. * For protocol "all", port must be set to "all". * For protocol “icmp”, port must be set to “ping”.

func (AviatrixFqdnDomainNameOutput) ElementType

func (AviatrixFqdnDomainNameOutput) Fqdn

FQDN. Example: "facebook.com".

func (AviatrixFqdnDomainNameOutput) Port

Port. Example "25".

func (AviatrixFqdnDomainNameOutput) Proto

Protocol. Valid values: "all", "tcp", "udp", "icmp".

func (AviatrixFqdnDomainNameOutput) ToAviatrixFqdnDomainNameOutput

func (o AviatrixFqdnDomainNameOutput) ToAviatrixFqdnDomainNameOutput() AviatrixFqdnDomainNameOutput

func (AviatrixFqdnDomainNameOutput) ToAviatrixFqdnDomainNameOutputWithContext

func (o AviatrixFqdnDomainNameOutput) ToAviatrixFqdnDomainNameOutputWithContext(ctx context.Context) AviatrixFqdnDomainNameOutput

type AviatrixFqdnGwFilterTagList

type AviatrixFqdnGwFilterTagList struct {
	// Name of the gateway to attach to the specific tag.
	GwName string `pulumi:"gwName"`
	// List of source IPs in the VPC qualified for a specific tag.
	SourceIpLists []string `pulumi:"sourceIpLists"`
}

type AviatrixFqdnGwFilterTagListArgs

type AviatrixFqdnGwFilterTagListArgs struct {
	// Name of the gateway to attach to the specific tag.
	GwName pulumi.StringInput `pulumi:"gwName"`
	// List of source IPs in the VPC qualified for a specific tag.
	SourceIpLists pulumi.StringArrayInput `pulumi:"sourceIpLists"`
}

func (AviatrixFqdnGwFilterTagListArgs) ElementType

func (AviatrixFqdnGwFilterTagListArgs) ToAviatrixFqdnGwFilterTagListOutput

func (i AviatrixFqdnGwFilterTagListArgs) ToAviatrixFqdnGwFilterTagListOutput() AviatrixFqdnGwFilterTagListOutput

func (AviatrixFqdnGwFilterTagListArgs) ToAviatrixFqdnGwFilterTagListOutputWithContext

func (i AviatrixFqdnGwFilterTagListArgs) ToAviatrixFqdnGwFilterTagListOutputWithContext(ctx context.Context) AviatrixFqdnGwFilterTagListOutput

type AviatrixFqdnGwFilterTagListArray

type AviatrixFqdnGwFilterTagListArray []AviatrixFqdnGwFilterTagListInput

func (AviatrixFqdnGwFilterTagListArray) ElementType

func (AviatrixFqdnGwFilterTagListArray) ToAviatrixFqdnGwFilterTagListArrayOutput

func (i AviatrixFqdnGwFilterTagListArray) ToAviatrixFqdnGwFilterTagListArrayOutput() AviatrixFqdnGwFilterTagListArrayOutput

func (AviatrixFqdnGwFilterTagListArray) ToAviatrixFqdnGwFilterTagListArrayOutputWithContext

func (i AviatrixFqdnGwFilterTagListArray) ToAviatrixFqdnGwFilterTagListArrayOutputWithContext(ctx context.Context) AviatrixFqdnGwFilterTagListArrayOutput

type AviatrixFqdnGwFilterTagListArrayInput

type AviatrixFqdnGwFilterTagListArrayInput interface {
	pulumi.Input

	ToAviatrixFqdnGwFilterTagListArrayOutput() AviatrixFqdnGwFilterTagListArrayOutput
	ToAviatrixFqdnGwFilterTagListArrayOutputWithContext(context.Context) AviatrixFqdnGwFilterTagListArrayOutput
}

AviatrixFqdnGwFilterTagListArrayInput is an input type that accepts AviatrixFqdnGwFilterTagListArray and AviatrixFqdnGwFilterTagListArrayOutput values. You can construct a concrete instance of `AviatrixFqdnGwFilterTagListArrayInput` via:

AviatrixFqdnGwFilterTagListArray{ AviatrixFqdnGwFilterTagListArgs{...} }

type AviatrixFqdnGwFilterTagListArrayOutput

type AviatrixFqdnGwFilterTagListArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnGwFilterTagListArrayOutput) ElementType

func (AviatrixFqdnGwFilterTagListArrayOutput) Index

func (AviatrixFqdnGwFilterTagListArrayOutput) ToAviatrixFqdnGwFilterTagListArrayOutput

func (o AviatrixFqdnGwFilterTagListArrayOutput) ToAviatrixFqdnGwFilterTagListArrayOutput() AviatrixFqdnGwFilterTagListArrayOutput

func (AviatrixFqdnGwFilterTagListArrayOutput) ToAviatrixFqdnGwFilterTagListArrayOutputWithContext

func (o AviatrixFqdnGwFilterTagListArrayOutput) ToAviatrixFqdnGwFilterTagListArrayOutputWithContext(ctx context.Context) AviatrixFqdnGwFilterTagListArrayOutput

type AviatrixFqdnGwFilterTagListInput

type AviatrixFqdnGwFilterTagListInput interface {
	pulumi.Input

	ToAviatrixFqdnGwFilterTagListOutput() AviatrixFqdnGwFilterTagListOutput
	ToAviatrixFqdnGwFilterTagListOutputWithContext(context.Context) AviatrixFqdnGwFilterTagListOutput
}

AviatrixFqdnGwFilterTagListInput is an input type that accepts AviatrixFqdnGwFilterTagListArgs and AviatrixFqdnGwFilterTagListOutput values. You can construct a concrete instance of `AviatrixFqdnGwFilterTagListInput` via:

AviatrixFqdnGwFilterTagListArgs{...}

type AviatrixFqdnGwFilterTagListOutput

type AviatrixFqdnGwFilterTagListOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnGwFilterTagListOutput) ElementType

func (AviatrixFqdnGwFilterTagListOutput) GwName

Name of the gateway to attach to the specific tag.

func (AviatrixFqdnGwFilterTagListOutput) SourceIpLists

List of source IPs in the VPC qualified for a specific tag.

func (AviatrixFqdnGwFilterTagListOutput) ToAviatrixFqdnGwFilterTagListOutput

func (o AviatrixFqdnGwFilterTagListOutput) ToAviatrixFqdnGwFilterTagListOutput() AviatrixFqdnGwFilterTagListOutput

func (AviatrixFqdnGwFilterTagListOutput) ToAviatrixFqdnGwFilterTagListOutputWithContext

func (o AviatrixFqdnGwFilterTagListOutput) ToAviatrixFqdnGwFilterTagListOutputWithContext(ctx context.Context) AviatrixFqdnGwFilterTagListOutput

type AviatrixFqdnInput

type AviatrixFqdnInput interface {
	pulumi.Input

	ToAviatrixFqdnOutput() AviatrixFqdnOutput
	ToAviatrixFqdnOutputWithContext(ctx context.Context) AviatrixFqdnOutput
}

type AviatrixFqdnMap

type AviatrixFqdnMap map[string]AviatrixFqdnInput

func (AviatrixFqdnMap) ElementType

func (AviatrixFqdnMap) ElementType() reflect.Type

func (AviatrixFqdnMap) ToAviatrixFqdnMapOutput

func (i AviatrixFqdnMap) ToAviatrixFqdnMapOutput() AviatrixFqdnMapOutput

func (AviatrixFqdnMap) ToAviatrixFqdnMapOutputWithContext

func (i AviatrixFqdnMap) ToAviatrixFqdnMapOutputWithContext(ctx context.Context) AviatrixFqdnMapOutput

type AviatrixFqdnMapInput

type AviatrixFqdnMapInput interface {
	pulumi.Input

	ToAviatrixFqdnMapOutput() AviatrixFqdnMapOutput
	ToAviatrixFqdnMapOutputWithContext(context.Context) AviatrixFqdnMapOutput
}

AviatrixFqdnMapInput is an input type that accepts AviatrixFqdnMap and AviatrixFqdnMapOutput values. You can construct a concrete instance of `AviatrixFqdnMapInput` via:

AviatrixFqdnMap{ "key": AviatrixFqdnArgs{...} }

type AviatrixFqdnMapOutput

type AviatrixFqdnMapOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnMapOutput) ElementType

func (AviatrixFqdnMapOutput) ElementType() reflect.Type

func (AviatrixFqdnMapOutput) MapIndex

func (AviatrixFqdnMapOutput) ToAviatrixFqdnMapOutput

func (o AviatrixFqdnMapOutput) ToAviatrixFqdnMapOutput() AviatrixFqdnMapOutput

func (AviatrixFqdnMapOutput) ToAviatrixFqdnMapOutputWithContext

func (o AviatrixFqdnMapOutput) ToAviatrixFqdnMapOutputWithContext(ctx context.Context) AviatrixFqdnMapOutput

type AviatrixFqdnOutput

type AviatrixFqdnOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnOutput) DomainNames

One or more domain names in a list with details as listed below:

func (AviatrixFqdnOutput) ElementType

func (AviatrixFqdnOutput) ElementType() reflect.Type

func (AviatrixFqdnOutput) FqdnEnabled

func (o AviatrixFqdnOutput) FqdnEnabled() pulumi.BoolPtrOutput

FQDN Filter tag status. Valid values: true, false.

func (AviatrixFqdnOutput) FqdnMode

Specify FQDN mode: whitelist or blacklist. Valid values: "white", "black".

func (AviatrixFqdnOutput) FqdnTag

FQDN Filter tag name.

func (AviatrixFqdnOutput) GwFilterTagLists

A list of gateways to attach to the specific tag.

func (AviatrixFqdnOutput) ManageDomainNames

func (o AviatrixFqdnOutput) ManageDomainNames() pulumi.BoolPtrOutput

Enable to manage domain name rules in-line. If false, domain name rules must be managed using `AviatrixFqdnTagRule` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.

func (AviatrixFqdnOutput) ToAviatrixFqdnOutput

func (o AviatrixFqdnOutput) ToAviatrixFqdnOutput() AviatrixFqdnOutput

func (AviatrixFqdnOutput) ToAviatrixFqdnOutputWithContext

func (o AviatrixFqdnOutput) ToAviatrixFqdnOutputWithContext(ctx context.Context) AviatrixFqdnOutput

type AviatrixFqdnPassThrough

type AviatrixFqdnPassThrough struct {
	pulumi.CustomResourceState

	// Gateway name to apply pass-through rules to.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// List of origin CIDR's to allow to pass-through FQDN filtering rules. Minimum list length: 1.
	PassThroughCidrs pulumi.StringArrayOutput `pulumi:"passThroughCidrs"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFqdnPassThrough(ctx, "testFqdnPassThrough", &aviatrix.AviatrixFqdnPassThroughArgs{
			GwName: pulumi.Any(aviatrix_gateway.Test_gw_aws.Gw_name),
			PassThroughCidrs: pulumi.StringArray{
				pulumi.String("10.0.0.0/24"),
				pulumi.String("10.0.1.0/24"),
				pulumi.String("10.0.2.0/24"),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			aviatrix_fqdn.Test_fqdn,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**fqdn_pass_through** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFqdnPassThrough:AviatrixFqdnPassThrough test gw_name

```

func GetAviatrixFqdnPassThrough

func GetAviatrixFqdnPassThrough(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFqdnPassThroughState, opts ...pulumi.ResourceOption) (*AviatrixFqdnPassThrough, error)

GetAviatrixFqdnPassThrough gets an existing AviatrixFqdnPassThrough 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 NewAviatrixFqdnPassThrough

func NewAviatrixFqdnPassThrough(ctx *pulumi.Context,
	name string, args *AviatrixFqdnPassThroughArgs, opts ...pulumi.ResourceOption) (*AviatrixFqdnPassThrough, error)

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

func (*AviatrixFqdnPassThrough) ElementType

func (*AviatrixFqdnPassThrough) ElementType() reflect.Type

func (*AviatrixFqdnPassThrough) ToAviatrixFqdnPassThroughOutput

func (i *AviatrixFqdnPassThrough) ToAviatrixFqdnPassThroughOutput() AviatrixFqdnPassThroughOutput

func (*AviatrixFqdnPassThrough) ToAviatrixFqdnPassThroughOutputWithContext

func (i *AviatrixFqdnPassThrough) ToAviatrixFqdnPassThroughOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughOutput

type AviatrixFqdnPassThroughArgs

type AviatrixFqdnPassThroughArgs struct {
	// Gateway name to apply pass-through rules to.
	GwName pulumi.StringInput
	// List of origin CIDR's to allow to pass-through FQDN filtering rules. Minimum list length: 1.
	PassThroughCidrs pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixFqdnPassThrough resource.

func (AviatrixFqdnPassThroughArgs) ElementType

type AviatrixFqdnPassThroughArray

type AviatrixFqdnPassThroughArray []AviatrixFqdnPassThroughInput

func (AviatrixFqdnPassThroughArray) ElementType

func (AviatrixFqdnPassThroughArray) ToAviatrixFqdnPassThroughArrayOutput

func (i AviatrixFqdnPassThroughArray) ToAviatrixFqdnPassThroughArrayOutput() AviatrixFqdnPassThroughArrayOutput

func (AviatrixFqdnPassThroughArray) ToAviatrixFqdnPassThroughArrayOutputWithContext

func (i AviatrixFqdnPassThroughArray) ToAviatrixFqdnPassThroughArrayOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughArrayOutput

type AviatrixFqdnPassThroughArrayInput

type AviatrixFqdnPassThroughArrayInput interface {
	pulumi.Input

	ToAviatrixFqdnPassThroughArrayOutput() AviatrixFqdnPassThroughArrayOutput
	ToAviatrixFqdnPassThroughArrayOutputWithContext(context.Context) AviatrixFqdnPassThroughArrayOutput
}

AviatrixFqdnPassThroughArrayInput is an input type that accepts AviatrixFqdnPassThroughArray and AviatrixFqdnPassThroughArrayOutput values. You can construct a concrete instance of `AviatrixFqdnPassThroughArrayInput` via:

AviatrixFqdnPassThroughArray{ AviatrixFqdnPassThroughArgs{...} }

type AviatrixFqdnPassThroughArrayOutput

type AviatrixFqdnPassThroughArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnPassThroughArrayOutput) ElementType

func (AviatrixFqdnPassThroughArrayOutput) Index

func (AviatrixFqdnPassThroughArrayOutput) ToAviatrixFqdnPassThroughArrayOutput

func (o AviatrixFqdnPassThroughArrayOutput) ToAviatrixFqdnPassThroughArrayOutput() AviatrixFqdnPassThroughArrayOutput

func (AviatrixFqdnPassThroughArrayOutput) ToAviatrixFqdnPassThroughArrayOutputWithContext

func (o AviatrixFqdnPassThroughArrayOutput) ToAviatrixFqdnPassThroughArrayOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughArrayOutput

type AviatrixFqdnPassThroughInput

type AviatrixFqdnPassThroughInput interface {
	pulumi.Input

	ToAviatrixFqdnPassThroughOutput() AviatrixFqdnPassThroughOutput
	ToAviatrixFqdnPassThroughOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughOutput
}

type AviatrixFqdnPassThroughMap

type AviatrixFqdnPassThroughMap map[string]AviatrixFqdnPassThroughInput

func (AviatrixFqdnPassThroughMap) ElementType

func (AviatrixFqdnPassThroughMap) ElementType() reflect.Type

func (AviatrixFqdnPassThroughMap) ToAviatrixFqdnPassThroughMapOutput

func (i AviatrixFqdnPassThroughMap) ToAviatrixFqdnPassThroughMapOutput() AviatrixFqdnPassThroughMapOutput

func (AviatrixFqdnPassThroughMap) ToAviatrixFqdnPassThroughMapOutputWithContext

func (i AviatrixFqdnPassThroughMap) ToAviatrixFqdnPassThroughMapOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughMapOutput

type AviatrixFqdnPassThroughMapInput

type AviatrixFqdnPassThroughMapInput interface {
	pulumi.Input

	ToAviatrixFqdnPassThroughMapOutput() AviatrixFqdnPassThroughMapOutput
	ToAviatrixFqdnPassThroughMapOutputWithContext(context.Context) AviatrixFqdnPassThroughMapOutput
}

AviatrixFqdnPassThroughMapInput is an input type that accepts AviatrixFqdnPassThroughMap and AviatrixFqdnPassThroughMapOutput values. You can construct a concrete instance of `AviatrixFqdnPassThroughMapInput` via:

AviatrixFqdnPassThroughMap{ "key": AviatrixFqdnPassThroughArgs{...} }

type AviatrixFqdnPassThroughMapOutput

type AviatrixFqdnPassThroughMapOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnPassThroughMapOutput) ElementType

func (AviatrixFqdnPassThroughMapOutput) MapIndex

func (AviatrixFqdnPassThroughMapOutput) ToAviatrixFqdnPassThroughMapOutput

func (o AviatrixFqdnPassThroughMapOutput) ToAviatrixFqdnPassThroughMapOutput() AviatrixFqdnPassThroughMapOutput

func (AviatrixFqdnPassThroughMapOutput) ToAviatrixFqdnPassThroughMapOutputWithContext

func (o AviatrixFqdnPassThroughMapOutput) ToAviatrixFqdnPassThroughMapOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughMapOutput

type AviatrixFqdnPassThroughOutput

type AviatrixFqdnPassThroughOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnPassThroughOutput) ElementType

func (AviatrixFqdnPassThroughOutput) GwName

Gateway name to apply pass-through rules to.

func (AviatrixFqdnPassThroughOutput) PassThroughCidrs

List of origin CIDR's to allow to pass-through FQDN filtering rules. Minimum list length: 1.

func (AviatrixFqdnPassThroughOutput) ToAviatrixFqdnPassThroughOutput

func (o AviatrixFqdnPassThroughOutput) ToAviatrixFqdnPassThroughOutput() AviatrixFqdnPassThroughOutput

func (AviatrixFqdnPassThroughOutput) ToAviatrixFqdnPassThroughOutputWithContext

func (o AviatrixFqdnPassThroughOutput) ToAviatrixFqdnPassThroughOutputWithContext(ctx context.Context) AviatrixFqdnPassThroughOutput

type AviatrixFqdnPassThroughState

type AviatrixFqdnPassThroughState struct {
	// Gateway name to apply pass-through rules to.
	GwName pulumi.StringPtrInput
	// List of origin CIDR's to allow to pass-through FQDN filtering rules. Minimum list length: 1.
	PassThroughCidrs pulumi.StringArrayInput
}

func (AviatrixFqdnPassThroughState) ElementType

type AviatrixFqdnState

type AviatrixFqdnState struct {
	// One or more domain names in a list with details as listed below:
	DomainNames AviatrixFqdnDomainNameArrayInput
	// FQDN Filter tag status. Valid values: true, false.
	FqdnEnabled pulumi.BoolPtrInput
	// Specify FQDN mode: whitelist or blacklist. Valid values: "white", "black".
	FqdnMode pulumi.StringPtrInput
	// FQDN Filter tag name.
	FqdnTag pulumi.StringPtrInput
	// A list of gateways to attach to the specific tag.
	GwFilterTagLists AviatrixFqdnGwFilterTagListArrayInput
	// Enable to manage domain name rules in-line. If false, domain name rules must be managed using `AviatrixFqdnTagRule` resources. Default: true. Valid values: true, false. Available in provider version R2.17+.
	ManageDomainNames pulumi.BoolPtrInput
}

func (AviatrixFqdnState) ElementType

func (AviatrixFqdnState) ElementType() reflect.Type

type AviatrixFqdnTagRule

type AviatrixFqdnTagRule struct {
	pulumi.CustomResourceState

	// What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided.
	// * For protocol "all", port must be set to "all".
	// * For protocol “icmp”, port must be set to “ping”.
	Action pulumi.StringPtrOutput `pulumi:"action"`
	// FQDN. Example: "facebook.com".
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// FQDN Filter tag name.
	FqdnTagName pulumi.StringOutput `pulumi:"fqdnTagName"`
	// Port. Example "25".
	Port pulumi.StringOutput `pulumi:"port"`
	// Protocol. Valid values: "all", "tcp", "udp", "icmp".
	Protocol pulumi.StringOutput `pulumi:"protocol"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixFqdnTagRule(ctx, "testFqdn", &aviatrix.AviatrixFqdnTagRuleArgs{
			Fqdn:        pulumi.String("reddit.com"),
			FqdnTagName: pulumi.String("my_tag"),
			Port:        pulumi.String("443"),
			Protocol:    pulumi.String("tcp"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**fqdn_tag_rule** can be imported using the `fqdn_tag_name`, `fqdn`, `protocol`, `port` and `action` separated by `~`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixFqdnTagRule:AviatrixFqdnTagRule test "fqdn_tag_name~fqdn~protocol~port~action"

```

func GetAviatrixFqdnTagRule

func GetAviatrixFqdnTagRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixFqdnTagRuleState, opts ...pulumi.ResourceOption) (*AviatrixFqdnTagRule, error)

GetAviatrixFqdnTagRule gets an existing AviatrixFqdnTagRule 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 NewAviatrixFqdnTagRule

func NewAviatrixFqdnTagRule(ctx *pulumi.Context,
	name string, args *AviatrixFqdnTagRuleArgs, opts ...pulumi.ResourceOption) (*AviatrixFqdnTagRule, error)

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

func (*AviatrixFqdnTagRule) ElementType

func (*AviatrixFqdnTagRule) ElementType() reflect.Type

func (*AviatrixFqdnTagRule) ToAviatrixFqdnTagRuleOutput

func (i *AviatrixFqdnTagRule) ToAviatrixFqdnTagRuleOutput() AviatrixFqdnTagRuleOutput

func (*AviatrixFqdnTagRule) ToAviatrixFqdnTagRuleOutputWithContext

func (i *AviatrixFqdnTagRule) ToAviatrixFqdnTagRuleOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleOutput

type AviatrixFqdnTagRuleArgs

type AviatrixFqdnTagRuleArgs struct {
	// What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided.
	// * For protocol "all", port must be set to "all".
	// * For protocol “icmp”, port must be set to “ping”.
	Action pulumi.StringPtrInput
	// FQDN. Example: "facebook.com".
	Fqdn pulumi.StringInput
	// FQDN Filter tag name.
	FqdnTagName pulumi.StringInput
	// Port. Example "25".
	Port pulumi.StringInput
	// Protocol. Valid values: "all", "tcp", "udp", "icmp".
	Protocol pulumi.StringInput
}

The set of arguments for constructing a AviatrixFqdnTagRule resource.

func (AviatrixFqdnTagRuleArgs) ElementType

func (AviatrixFqdnTagRuleArgs) ElementType() reflect.Type

type AviatrixFqdnTagRuleArray

type AviatrixFqdnTagRuleArray []AviatrixFqdnTagRuleInput

func (AviatrixFqdnTagRuleArray) ElementType

func (AviatrixFqdnTagRuleArray) ElementType() reflect.Type

func (AviatrixFqdnTagRuleArray) ToAviatrixFqdnTagRuleArrayOutput

func (i AviatrixFqdnTagRuleArray) ToAviatrixFqdnTagRuleArrayOutput() AviatrixFqdnTagRuleArrayOutput

func (AviatrixFqdnTagRuleArray) ToAviatrixFqdnTagRuleArrayOutputWithContext

func (i AviatrixFqdnTagRuleArray) ToAviatrixFqdnTagRuleArrayOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleArrayOutput

type AviatrixFqdnTagRuleArrayInput

type AviatrixFqdnTagRuleArrayInput interface {
	pulumi.Input

	ToAviatrixFqdnTagRuleArrayOutput() AviatrixFqdnTagRuleArrayOutput
	ToAviatrixFqdnTagRuleArrayOutputWithContext(context.Context) AviatrixFqdnTagRuleArrayOutput
}

AviatrixFqdnTagRuleArrayInput is an input type that accepts AviatrixFqdnTagRuleArray and AviatrixFqdnTagRuleArrayOutput values. You can construct a concrete instance of `AviatrixFqdnTagRuleArrayInput` via:

AviatrixFqdnTagRuleArray{ AviatrixFqdnTagRuleArgs{...} }

type AviatrixFqdnTagRuleArrayOutput

type AviatrixFqdnTagRuleArrayOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnTagRuleArrayOutput) ElementType

func (AviatrixFqdnTagRuleArrayOutput) Index

func (AviatrixFqdnTagRuleArrayOutput) ToAviatrixFqdnTagRuleArrayOutput

func (o AviatrixFqdnTagRuleArrayOutput) ToAviatrixFqdnTagRuleArrayOutput() AviatrixFqdnTagRuleArrayOutput

func (AviatrixFqdnTagRuleArrayOutput) ToAviatrixFqdnTagRuleArrayOutputWithContext

func (o AviatrixFqdnTagRuleArrayOutput) ToAviatrixFqdnTagRuleArrayOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleArrayOutput

type AviatrixFqdnTagRuleInput

type AviatrixFqdnTagRuleInput interface {
	pulumi.Input

	ToAviatrixFqdnTagRuleOutput() AviatrixFqdnTagRuleOutput
	ToAviatrixFqdnTagRuleOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleOutput
}

type AviatrixFqdnTagRuleMap

type AviatrixFqdnTagRuleMap map[string]AviatrixFqdnTagRuleInput

func (AviatrixFqdnTagRuleMap) ElementType

func (AviatrixFqdnTagRuleMap) ElementType() reflect.Type

func (AviatrixFqdnTagRuleMap) ToAviatrixFqdnTagRuleMapOutput

func (i AviatrixFqdnTagRuleMap) ToAviatrixFqdnTagRuleMapOutput() AviatrixFqdnTagRuleMapOutput

func (AviatrixFqdnTagRuleMap) ToAviatrixFqdnTagRuleMapOutputWithContext

func (i AviatrixFqdnTagRuleMap) ToAviatrixFqdnTagRuleMapOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleMapOutput

type AviatrixFqdnTagRuleMapInput

type AviatrixFqdnTagRuleMapInput interface {
	pulumi.Input

	ToAviatrixFqdnTagRuleMapOutput() AviatrixFqdnTagRuleMapOutput
	ToAviatrixFqdnTagRuleMapOutputWithContext(context.Context) AviatrixFqdnTagRuleMapOutput
}

AviatrixFqdnTagRuleMapInput is an input type that accepts AviatrixFqdnTagRuleMap and AviatrixFqdnTagRuleMapOutput values. You can construct a concrete instance of `AviatrixFqdnTagRuleMapInput` via:

AviatrixFqdnTagRuleMap{ "key": AviatrixFqdnTagRuleArgs{...} }

type AviatrixFqdnTagRuleMapOutput

type AviatrixFqdnTagRuleMapOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnTagRuleMapOutput) ElementType

func (AviatrixFqdnTagRuleMapOutput) MapIndex

func (AviatrixFqdnTagRuleMapOutput) ToAviatrixFqdnTagRuleMapOutput

func (o AviatrixFqdnTagRuleMapOutput) ToAviatrixFqdnTagRuleMapOutput() AviatrixFqdnTagRuleMapOutput

func (AviatrixFqdnTagRuleMapOutput) ToAviatrixFqdnTagRuleMapOutputWithContext

func (o AviatrixFqdnTagRuleMapOutput) ToAviatrixFqdnTagRuleMapOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleMapOutput

type AviatrixFqdnTagRuleOutput

type AviatrixFqdnTagRuleOutput struct{ *pulumi.OutputState }

func (AviatrixFqdnTagRuleOutput) Action

What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided. * For protocol "all", port must be set to "all". * For protocol “icmp”, port must be set to “ping”.

func (AviatrixFqdnTagRuleOutput) ElementType

func (AviatrixFqdnTagRuleOutput) ElementType() reflect.Type

func (AviatrixFqdnTagRuleOutput) Fqdn

FQDN. Example: "facebook.com".

func (AviatrixFqdnTagRuleOutput) FqdnTagName

FQDN Filter tag name.

func (AviatrixFqdnTagRuleOutput) Port

Port. Example "25".

func (AviatrixFqdnTagRuleOutput) Protocol

Protocol. Valid values: "all", "tcp", "udp", "icmp".

func (AviatrixFqdnTagRuleOutput) ToAviatrixFqdnTagRuleOutput

func (o AviatrixFqdnTagRuleOutput) ToAviatrixFqdnTagRuleOutput() AviatrixFqdnTagRuleOutput

func (AviatrixFqdnTagRuleOutput) ToAviatrixFqdnTagRuleOutputWithContext

func (o AviatrixFqdnTagRuleOutput) ToAviatrixFqdnTagRuleOutputWithContext(ctx context.Context) AviatrixFqdnTagRuleOutput

type AviatrixFqdnTagRuleState

type AviatrixFqdnTagRuleState struct {
	// What action should happen to matching requests. Possible values are: 'Base Policy', 'Allow' or 'Deny'. Defaults to 'Base Policy' if no value provided.
	// * For protocol "all", port must be set to "all".
	// * For protocol “icmp”, port must be set to “ping”.
	Action pulumi.StringPtrInput
	// FQDN. Example: "facebook.com".
	Fqdn pulumi.StringPtrInput
	// FQDN Filter tag name.
	FqdnTagName pulumi.StringPtrInput
	// Port. Example "25".
	Port pulumi.StringPtrInput
	// Protocol. Valid values: "all", "tcp", "udp", "icmp".
	Protocol pulumi.StringPtrInput
}

func (AviatrixFqdnTagRuleState) ElementType

func (AviatrixFqdnTagRuleState) ElementType() reflect.Type

type AviatrixGateway

type AviatrixGateway struct {
	pulumi.CustomResourceState

	// Account name. This account will be used to launch Aviatrix gateway.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.
	AdditionalCidrs pulumi.StringPtrOutput `pulumi:"additionalCidrs"`
	// A list of CIDR ranges separated by comma to configure when "Designated Gateway" feature is enabled. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	AdditionalCidrsDesignatedGateway pulumi.StringPtrOutput `pulumi:"additionalCidrsDesignatedGateway"`
	// If set to false, use an available address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 2.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrOutput `pulumi:"allocateNewEip"`
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringOutput `pulumi:"availabilityDomain"`
	// Name of public IP Address resource and its resource group in Azure to be assigned to the gateway instance. Example: "IP_Name:Resource_Group_Name". Required when `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringOutput `pulumi:"azureEipNameResourceGroup"`
	// Cloud instance ID of the gateway.
	CloudInstanceId pulumi.StringOutput `pulumi:"cloudInstanceId"`
	// Cloud service provider to use to launch the gateway. Requires an integer value. Currently supports AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud (8192), AWS Top Secret (16384) and AWS Secret (32768).
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Customer-managed key ID.
	CustomerManagedKeys pulumi.StringPtrOutput `pulumi:"customerManagedKeys"`
	// API hostname for DUO auth mode. Required: Yes if `otpMode` is "2".
	DuoApiHostname pulumi.StringPtrOutput `pulumi:"duoApiHostname"`
	// Integration key for DUO auth mode. Required if `otpMode` is "2".
	DuoIntegrationKey pulumi.StringPtrOutput `pulumi:"duoIntegrationKey"`
	// Push mode for DUO auth. Required if `otpMode` is "2". Valid values: "auto", "selective" and "token".
	DuoPushMode pulumi.StringPtrOutput `pulumi:"duoPushMode"`
	// Secret key for DUO auth mode. Required if `otpMode` is "2".
	DuoSecretKey pulumi.StringPtrOutput `pulumi:"duoSecretKey"`
	// Specified EIP to use for gateway creation. Required when `allocateNewEip` is false.  Available in Controller version 3.5+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringOutput `pulumi:"eip"`
	// ELB DNS name.
	ElbDnsName pulumi.StringOutput `pulumi:"elbDnsName"`
	// A name for the ELB that is created. If it is not specified, a name is generated automatically.
	ElbName pulumi.StringOutput `pulumi:"elbName"`
	// Enable Designated Gateway feature for Gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false. Please view documentation [here](https://docs.aviatrix.com/HowTos/gateway.html#designated-gateway) for more information on this feature.
	EnableDesignatedGateway pulumi.BoolPtrOutput `pulumi:"enableDesignatedGateway"`
	// Specify whether to enable ELB or not. Not supported for OCI gateways. Valid values: true, false.
	EnableElb pulumi.BoolPtrOutput `pulumi:"enableElb"`
	// Enable EBS volume encryption for the gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrOutput `pulumi:"enableEncryptVolume"`
	// Enable jumbo frames for this gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Enable/disable LDAP. Valid values: true, false. Default value: false.
	EnableLdap pulumi.BoolPtrOutput `pulumi:"enableLdap"`
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.17.1+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrOutput `pulumi:"enableMonitorGatewaySubnets"`
	// Create a [Public Subnet Filtering gateway](https://docs.aviatrix.com/HowTos/public_subnet_filtering_faq.html).
	EnablePublicSubnetFiltering pulumi.BoolPtrOutput `pulumi:"enablePublicSubnetFiltering"`
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrOutput `pulumi:"enableSpotInstance"`
	// Enable VPC DNS Server for gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrOutput `pulumi:"enableVpcDnsServer"`
	// Enable/disable VPN NAT. Only supported for VPN gateway. Valid values: true, false. Default value: true.
	EnableVpnNat pulumi.BoolPtrOutput `pulumi:"enableVpnNat"`
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringOutput `pulumi:"faultDomain"`
	// If `fqdnLanCidr` is set, the FQDN gateway will be created with an additional LAN interface using the provided CIDR. This attribute is required when enabling FQDN gateway FireNet in Azure or GCP. Available in provider version R2.17.1+.
	FqdnLanCidr pulumi.StringPtrOutput `pulumi:"fqdnLanCidr"`
	// The lan interface id of the of FQDN gateway with additional LAN interface. This attribute will be exported when enabling FQDN gateway firenet in Azure. Available in provider version R2.17.1+.
	FqdnLanInterface pulumi.StringOutput `pulumi:"fqdnLanInterface"`
	// FQDN LAN VPC ID. This attribute is required when enabling FQDN gateway FireNet in GCP. Available as of provider version R2.18.1+.
	FqdnLanVpcId pulumi.StringPtrOutput `pulumi:"fqdnLanVpcId"`
	// Name of the Aviatrix gateway to be created.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", GCP: "n1-standard-1", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2".
	GwSize pulumi.StringOutput `pulumi:"gwSize"`
	// It sets the value (seconds) of the [idle timeout](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This idle timeout feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300.  Available in provider version R2.17.1+.
	IdleTimeout pulumi.IntPtrOutput `pulumi:"idleTimeout"`
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringOutput `pulumi:"imageVersion"`
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Gateway. Insane Mode gateway size must be at least c5 series (AWS) or Standard_D3_v2 (Azure/AzureGov). If enabled, a valid /26 CIDR segment of the VPC must be specified to create a new subnet. Only supported for AWS, AWSGov, Azure, AzureGov, AWS China, Azure China, AWS Top Secret or AWS Secret.  Valid values: true, false.
	InsaneMode pulumi.BoolPtrOutput `pulumi:"insaneMode"`
	// Region + Availability Zone of subnet being created for Insane Mode gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is set. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrOutput `pulumi:"insaneModeAz"`
	// LDAP base DN. Required if `enableLdap` is true.
	LdapBaseDn pulumi.StringPtrOutput `pulumi:"ldapBaseDn"`
	// LDAP bind DN. Required if `enableLdap` is true.
	LdapBindDn pulumi.StringPtrOutput `pulumi:"ldapBindDn"`
	// LDAP password. Required if `enableLdap` is true.
	LdapPassword pulumi.StringPtrOutput `pulumi:"ldapPassword"`
	// LDAP server address. Required if `enableLdap` is true.
	LdapServer pulumi.StringPtrOutput `pulumi:"ldapServer"`
	// LDAP user attribute. Required if `enableLdap` is true.
	LdapUsernameAttribute pulumi.StringPtrOutput `pulumi:"ldapUsernameAttribute"`
	// Maximum number of active VPN users allowed to be connected to this gateway. Required if `vpnAccess` is true. Make sure the number is smaller than the VPN CIDR block. Example: 100. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.14.**
	MaxVpnConn pulumi.StringPtrOutput `pulumi:"maxVpnConn"`
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.17.1+.
	MonitorExcludeLists pulumi.StringArrayOutput `pulumi:"monitorExcludeLists"`
	// A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.
	NameServers pulumi.StringPtrOutput `pulumi:"nameServers"`
	// Token for Okta auth mode. Required if `otpMode` is "3".
	OktaToken pulumi.StringPtrOutput `pulumi:"oktaToken"`
	// URL for Okta auth mode. Required if `otpMode` is "3".
	OktaUrl pulumi.StringPtrOutput `pulumi:"oktaUrl"`
	// Username suffix for Okta auth mode. Example: "aviatrix.com".
	OktaUsernameSuffix pulumi.StringPtrOutput `pulumi:"oktaUsernameSuffix"`
	// Two step authentication mode. Valid values: "2" for DUO, "3" for Okta.
	OtpMode pulumi.StringPtrOutput `pulumi:"otpMode"`
	// Peering HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaAvailabilityDomain pulumi.StringOutput `pulumi:"peeringHaAvailabilityDomain"`
	// Name of public IP address resource and its resource group in Azure to be assigned to the HA peering instance. Example: "IP_Name:Resource_Group_Name". Required if `peeringHaEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	PeeringHaAzureEipNameResourceGroup pulumi.StringOutput `pulumi:"peeringHaAzureEipNameResourceGroup"`
	// Cloud instance ID of the HA gateway.
	PeeringHaCloudInstanceId pulumi.StringOutput `pulumi:"peeringHaCloudInstanceId"`
	// Public IP address to be assigned to the HA peering instance. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	PeeringHaEip pulumi.StringOutput `pulumi:"peeringHaEip"`
	// Peering HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaFaultDomain pulumi.StringOutput `pulumi:"peeringHaFaultDomain"`
	// Aviatrix gateway unique name of HA gateway.
	PeeringHaGwName pulumi.StringOutput `pulumi:"peeringHaGwName"`
	// Size of the Peering HA Gateway to be created. Required if enabling Peering HA. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.8.**
	PeeringHaGwSize pulumi.StringPtrOutput `pulumi:"peeringHaGwSize"`
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	PeeringHaImageVersion pulumi.StringOutput `pulumi:"peeringHaImageVersion"`
	// Region + Availability Zone of subnet being created for Insane Mode-enabled Peering HA Gateway. Required for AWS only if `insaneMode` is set and `peeringHaSubnet` is set. Example: AWS: "us-west-1a".
	PeeringHaInsaneModeAz pulumi.StringPtrOutput `pulumi:"peeringHaInsaneModeAz"`
	// Private IP address of HA gateway.
	PeeringHaPrivateIp pulumi.StringOutput `pulumi:"peeringHaPrivateIp"`
	// HA security group used for the gateway.
	PeeringHaSecurityGroupId pulumi.StringOutput `pulumi:"peeringHaSecurityGroupId"`
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	PeeringHaSoftwareVersion pulumi.StringOutput `pulumi:"peeringHaSoftwareVersion"`
	// Public subnet CIDR to create Peering HA Gateway in. Required if enabling Peering HA for AWS/AWSGov/AWS Top Secret/AWS Secret/Azure/AzureGov/Alibaba Cloud. Optional if enabling Peering HA for GCP. Example: AWS: "10.0.0.0/16".
	PeeringHaSubnet pulumi.StringPtrOutput `pulumi:"peeringHaSubnet"`
	// Zone to create Peering HA Gateway in. Required if enabling Peering HA for GCP. Example: GCP: "us-west1-c". Optional for Azure. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	PeeringHaZone pulumi.StringPtrOutput `pulumi:"peeringHaZone"`
	// Private IP address of the gateway created.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// DNS server used by the gateway. Default is "8.8.8.8", can be overridden with the VPC's setting.
	PublicDnsServer pulumi.StringOutput `pulumi:"publicDnsServer"`
	// Whether to enforce Guard Duty IP blocking.  Only valid when `enablePublicSubnetFiltering` attribute is true. Valid values: true or false. Default value: true. Available as of provider version R2.18+.
	PublicSubnetFilteringGuardDutyEnforced pulumi.BoolPtrOutput `pulumi:"publicSubnetFilteringGuardDutyEnforced"`
	// Route tables whose associated public subnets are protected for the HA PSF gateway. Required when `enablePublicSubnetFiltering` and `peeringHaSubnet` are set. Available as of provider version R2.18+.
	PublicSubnetFilteringHaRouteTables pulumi.StringArrayOutput `pulumi:"publicSubnetFilteringHaRouteTables"`
	// Route tables whose associated public subnets are protected. Only valid when `enablePublicSubnetFiltering` attribute is true. Available as of provider version R2.18+.
	PublicSubnetFilteringRouteTables pulumi.StringArrayOutput `pulumi:"publicSubnetFilteringRouteTables"`
	// It sets the value (seconds) of the [renegotiation interval](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This renegotiation interval feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300. Available in provider version R2.17.1+.
	RenegotiationInterval pulumi.IntPtrOutput `pulumi:"renegotiationInterval"`
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrOutput `pulumi:"rxQueueSize"`
	// Enable/disable SAML. This field is available in Controller version 3.3 or later release. Valid values: true, false. Default value: false.
	SamlEnabled pulumi.BoolPtrOutput `pulumi:"samlEnabled"`
	// A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.
	SearchDomains pulumi.StringPtrOutput `pulumi:"searchDomains"`
	// Security group used for the gateway.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// If enabled, Controller monitors the health of the gateway and restarts the gateway if it becomes unreachable. Valid values: true, false. Default value: false.
	SingleAzHa pulumi.BoolPtrOutput `pulumi:"singleAzHa"`
	// Enable Source NAT in "single ip" mode for this gateway. Valid values: true, false. Default value: false. **NOTE: If using SNAT for FQDN use-case, please see notes here.**
	SingleIpSnat pulumi.BoolPtrOutput `pulumi:"singleIpSnat"`
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringOutput `pulumi:"softwareVersion"`
	// Enable/disable Split Tunnel Mode. Valid values: true, false. Default value: true. Please see [here](https://docs.aviatrix.com/HowTos/gateway.html#split-tunnel-mode) for more information on split tunnel.
	SplitTunnel pulumi.BoolPtrOutput `pulumi:"splitTunnel"`
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// A VPC network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// (Optional) Tag list of the gateway instance. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov and AzureChina gateways. Example: ["key1:value1", "key2:value2"].
	// * `storageName` (Optional) Specify a storage account. Required if `cloudType` is 2048 (AzureChina). Removed in Provider version 2.21.0+.
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayOutput `pulumi:"tagLists"`
	// Map of tags to assign to the gateway. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The IPSec tunnel down detection time for the Gateway.
	TunnelDetectionTime pulumi.IntOutput `pulumi:"tunnelDetectionTime"`
	// VPC ID/VNet name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// VPC region the gateway will be created in. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringOutput `pulumi:"vpcReg"`
	// Enable [user access through VPN](https://docs.aviatrix.com/HowTos/gateway.html#vpn-access) to this gateway. Valid values: true, false.
	VpnAccess pulumi.BoolPtrOutput `pulumi:"vpnAccess"`
	// VPN CIDR block for the gateway. Required if `vpnAccess` is true. Example: "192.168.43.0/24".
	VpnCidr pulumi.StringPtrOutput `pulumi:"vpnCidr"`
	// Transport mode for VPN connection. All `cloudTypes` support TCP with ELB, and UDP without ELB. AWS(1) additionally supports UDP with ELB. Valid values: "TCP", "UDP". If not specified, "TCP" will be used.
	VpnProtocol pulumi.StringOutput `pulumi:"vpnProtocol"`
	// Availability Zone. Only available for Azure and Public Subnet Filtering gateway. Available for Azure as of provider version R2.17+.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

## Import

**gateway** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixGateway:AviatrixGateway test gw_name

```

func GetAviatrixGateway

func GetAviatrixGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixGatewayState, opts ...pulumi.ResourceOption) (*AviatrixGateway, error)

GetAviatrixGateway gets an existing AviatrixGateway 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 NewAviatrixGateway

func NewAviatrixGateway(ctx *pulumi.Context,
	name string, args *AviatrixGatewayArgs, opts ...pulumi.ResourceOption) (*AviatrixGateway, error)

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

func (*AviatrixGateway) ElementType

func (*AviatrixGateway) ElementType() reflect.Type

func (*AviatrixGateway) ToAviatrixGatewayOutput

func (i *AviatrixGateway) ToAviatrixGatewayOutput() AviatrixGatewayOutput

func (*AviatrixGateway) ToAviatrixGatewayOutputWithContext

func (i *AviatrixGateway) ToAviatrixGatewayOutputWithContext(ctx context.Context) AviatrixGatewayOutput

type AviatrixGatewayArgs

type AviatrixGatewayArgs struct {
	// Account name. This account will be used to launch Aviatrix gateway.
	AccountName pulumi.StringInput
	// A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.
	AdditionalCidrs pulumi.StringPtrInput
	// A list of CIDR ranges separated by comma to configure when "Designated Gateway" feature is enabled. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	AdditionalCidrsDesignatedGateway pulumi.StringPtrInput
	// If set to false, use an available address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 2.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the gateway instance. Example: "IP_Name:Resource_Group_Name". Required when `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Cloud service provider to use to launch the gateway. Requires an integer value. Currently supports AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud (8192), AWS Top Secret (16384) and AWS Secret (32768).
	CloudType pulumi.IntInput
	// Customer-managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// API hostname for DUO auth mode. Required: Yes if `otpMode` is "2".
	DuoApiHostname pulumi.StringPtrInput
	// Integration key for DUO auth mode. Required if `otpMode` is "2".
	DuoIntegrationKey pulumi.StringPtrInput
	// Push mode for DUO auth. Required if `otpMode` is "2". Valid values: "auto", "selective" and "token".
	DuoPushMode pulumi.StringPtrInput
	// Secret key for DUO auth mode. Required if `otpMode` is "2".
	DuoSecretKey pulumi.StringPtrInput
	// Specified EIP to use for gateway creation. Required when `allocateNewEip` is false.  Available in Controller version 3.5+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// A name for the ELB that is created. If it is not specified, a name is generated automatically.
	ElbName pulumi.StringPtrInput
	// Enable Designated Gateway feature for Gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false. Please view documentation [here](https://docs.aviatrix.com/HowTos/gateway.html#designated-gateway) for more information on this feature.
	EnableDesignatedGateway pulumi.BoolPtrInput
	// Specify whether to enable ELB or not. Not supported for OCI gateways. Valid values: true, false.
	EnableElb pulumi.BoolPtrInput
	// Enable EBS volume encryption for the gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Enable jumbo frames for this gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable/disable LDAP. Valid values: true, false. Default value: false.
	EnableLdap pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.17.1+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Create a [Public Subnet Filtering gateway](https://docs.aviatrix.com/HowTos/public_subnet_filtering_faq.html).
	EnablePublicSubnetFiltering pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Enable VPC DNS Server for gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Enable/disable VPN NAT. Only supported for VPN gateway. Valid values: true, false. Default value: true.
	EnableVpnNat pulumi.BoolPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// If `fqdnLanCidr` is set, the FQDN gateway will be created with an additional LAN interface using the provided CIDR. This attribute is required when enabling FQDN gateway FireNet in Azure or GCP. Available in provider version R2.17.1+.
	FqdnLanCidr pulumi.StringPtrInput
	// FQDN LAN VPC ID. This attribute is required when enabling FQDN gateway FireNet in GCP. Available as of provider version R2.18.1+.
	FqdnLanVpcId pulumi.StringPtrInput
	// Name of the Aviatrix gateway to be created.
	GwName pulumi.StringInput
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", GCP: "n1-standard-1", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2".
	GwSize pulumi.StringInput
	// It sets the value (seconds) of the [idle timeout](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This idle timeout feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300.  Available in provider version R2.17.1+.
	IdleTimeout pulumi.IntPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Gateway. Insane Mode gateway size must be at least c5 series (AWS) or Standard_D3_v2 (Azure/AzureGov). If enabled, a valid /26 CIDR segment of the VPC must be specified to create a new subnet. Only supported for AWS, AWSGov, Azure, AzureGov, AWS China, Azure China, AWS Top Secret or AWS Secret.  Valid values: true, false.
	InsaneMode pulumi.BoolPtrInput
	// Region + Availability Zone of subnet being created for Insane Mode gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is set. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// LDAP base DN. Required if `enableLdap` is true.
	LdapBaseDn pulumi.StringPtrInput
	// LDAP bind DN. Required if `enableLdap` is true.
	LdapBindDn pulumi.StringPtrInput
	// LDAP password. Required if `enableLdap` is true.
	LdapPassword pulumi.StringPtrInput
	// LDAP server address. Required if `enableLdap` is true.
	LdapServer pulumi.StringPtrInput
	// LDAP user attribute. Required if `enableLdap` is true.
	LdapUsernameAttribute pulumi.StringPtrInput
	// Maximum number of active VPN users allowed to be connected to this gateway. Required if `vpnAccess` is true. Make sure the number is smaller than the VPN CIDR block. Example: 100. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.14.**
	MaxVpnConn pulumi.StringPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.17.1+.
	MonitorExcludeLists pulumi.StringArrayInput
	// A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.
	NameServers pulumi.StringPtrInput
	// Token for Okta auth mode. Required if `otpMode` is "3".
	OktaToken pulumi.StringPtrInput
	// URL for Okta auth mode. Required if `otpMode` is "3".
	OktaUrl pulumi.StringPtrInput
	// Username suffix for Okta auth mode. Example: "aviatrix.com".
	OktaUsernameSuffix pulumi.StringPtrInput
	// Two step authentication mode. Valid values: "2" for DUO, "3" for Okta.
	OtpMode pulumi.StringPtrInput
	// Peering HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP address resource and its resource group in Azure to be assigned to the HA peering instance. Example: "IP_Name:Resource_Group_Name". Required if `peeringHaEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	PeeringHaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Public IP address to be assigned to the HA peering instance. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	PeeringHaEip pulumi.StringPtrInput
	// Peering HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaFaultDomain pulumi.StringPtrInput
	// Size of the Peering HA Gateway to be created. Required if enabling Peering HA. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.8.**
	PeeringHaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	PeeringHaImageVersion pulumi.StringPtrInput
	// Region + Availability Zone of subnet being created for Insane Mode-enabled Peering HA Gateway. Required for AWS only if `insaneMode` is set and `peeringHaSubnet` is set. Example: AWS: "us-west-1a".
	PeeringHaInsaneModeAz pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	PeeringHaSoftwareVersion pulumi.StringPtrInput
	// Public subnet CIDR to create Peering HA Gateway in. Required if enabling Peering HA for AWS/AWSGov/AWS Top Secret/AWS Secret/Azure/AzureGov/Alibaba Cloud. Optional if enabling Peering HA for GCP. Example: AWS: "10.0.0.0/16".
	PeeringHaSubnet pulumi.StringPtrInput
	// Zone to create Peering HA Gateway in. Required if enabling Peering HA for GCP. Example: GCP: "us-west1-c". Optional for Azure. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	PeeringHaZone pulumi.StringPtrInput
	// Whether to enforce Guard Duty IP blocking.  Only valid when `enablePublicSubnetFiltering` attribute is true. Valid values: true or false. Default value: true. Available as of provider version R2.18+.
	PublicSubnetFilteringGuardDutyEnforced pulumi.BoolPtrInput
	// Route tables whose associated public subnets are protected for the HA PSF gateway. Required when `enablePublicSubnetFiltering` and `peeringHaSubnet` are set. Available as of provider version R2.18+.
	PublicSubnetFilteringHaRouteTables pulumi.StringArrayInput
	// Route tables whose associated public subnets are protected. Only valid when `enablePublicSubnetFiltering` attribute is true. Available as of provider version R2.18+.
	PublicSubnetFilteringRouteTables pulumi.StringArrayInput
	// It sets the value (seconds) of the [renegotiation interval](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This renegotiation interval feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300. Available in provider version R2.17.1+.
	RenegotiationInterval pulumi.IntPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Enable/disable SAML. This field is available in Controller version 3.3 or later release. Valid values: true, false. Default value: false.
	SamlEnabled pulumi.BoolPtrInput
	// A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.
	SearchDomains pulumi.StringPtrInput
	// If enabled, Controller monitors the health of the gateway and restarts the gateway if it becomes unreachable. Valid values: true, false. Default value: false.
	SingleAzHa pulumi.BoolPtrInput
	// Enable Source NAT in "single ip" mode for this gateway. Valid values: true, false. Default value: false. **NOTE: If using SNAT for FQDN use-case, please see notes here.**
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Enable/disable Split Tunnel Mode. Valid values: true, false. Default value: true. Please see [here](https://docs.aviatrix.com/HowTos/gateway.html#split-tunnel-mode) for more information on split tunnel.
	SplitTunnel pulumi.BoolPtrInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringInput
	// (Optional) Tag list of the gateway instance. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov and AzureChina gateways. Example: ["key1:value1", "key2:value2"].
	// * `storageName` (Optional) Specify a storage account. Required if `cloudType` is 2048 (AzureChina). Removed in Provider version 2.21.0+.
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// The IPSec tunnel down detection time for the Gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC ID/VNet name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringInput
	// VPC region the gateway will be created in. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringInput
	// Enable [user access through VPN](https://docs.aviatrix.com/HowTos/gateway.html#vpn-access) to this gateway. Valid values: true, false.
	VpnAccess pulumi.BoolPtrInput
	// VPN CIDR block for the gateway. Required if `vpnAccess` is true. Example: "192.168.43.0/24".
	VpnCidr pulumi.StringPtrInput
	// Transport mode for VPN connection. All `cloudTypes` support TCP with ELB, and UDP without ELB. AWS(1) additionally supports UDP with ELB. Valid values: "TCP", "UDP". If not specified, "TCP" will be used.
	VpnProtocol pulumi.StringPtrInput
	// Availability Zone. Only available for Azure and Public Subnet Filtering gateway. Available for Azure as of provider version R2.17+.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixGateway resource.

func (AviatrixGatewayArgs) ElementType

func (AviatrixGatewayArgs) ElementType() reflect.Type

type AviatrixGatewayArray

type AviatrixGatewayArray []AviatrixGatewayInput

func (AviatrixGatewayArray) ElementType

func (AviatrixGatewayArray) ElementType() reflect.Type

func (AviatrixGatewayArray) ToAviatrixGatewayArrayOutput

func (i AviatrixGatewayArray) ToAviatrixGatewayArrayOutput() AviatrixGatewayArrayOutput

func (AviatrixGatewayArray) ToAviatrixGatewayArrayOutputWithContext

func (i AviatrixGatewayArray) ToAviatrixGatewayArrayOutputWithContext(ctx context.Context) AviatrixGatewayArrayOutput

type AviatrixGatewayArrayInput

type AviatrixGatewayArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayArrayOutput() AviatrixGatewayArrayOutput
	ToAviatrixGatewayArrayOutputWithContext(context.Context) AviatrixGatewayArrayOutput
}

AviatrixGatewayArrayInput is an input type that accepts AviatrixGatewayArray and AviatrixGatewayArrayOutput values. You can construct a concrete instance of `AviatrixGatewayArrayInput` via:

AviatrixGatewayArray{ AviatrixGatewayArgs{...} }

type AviatrixGatewayArrayOutput

type AviatrixGatewayArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayArrayOutput) ElementType

func (AviatrixGatewayArrayOutput) ElementType() reflect.Type

func (AviatrixGatewayArrayOutput) Index

func (AviatrixGatewayArrayOutput) ToAviatrixGatewayArrayOutput

func (o AviatrixGatewayArrayOutput) ToAviatrixGatewayArrayOutput() AviatrixGatewayArrayOutput

func (AviatrixGatewayArrayOutput) ToAviatrixGatewayArrayOutputWithContext

func (o AviatrixGatewayArrayOutput) ToAviatrixGatewayArrayOutputWithContext(ctx context.Context) AviatrixGatewayArrayOutput

type AviatrixGatewayCertificateConfig

type AviatrixGatewayCertificateConfig struct {
	pulumi.CustomResourceState

	// CA Certificate in PEM format. To read certificate from a file please use the built-in `file` function.
	CaCertificate pulumi.StringOutput `pulumi:"caCertificate"`
	// CA Private Key. To read the private key from a file please use the built-in `file` function.
	CaPrivateKey pulumi.StringOutput `pulumi:"caPrivateKey"`
}

The **aviatrix_gateway_certificate_config** resource allows the management of Aviatrix [gateway certificate](https://docs.aviatrix.com/HowTos/controller_certificate.html#gateway-certificate-management) configuration. Available as of provider version R2.18.1+.

## Example Usage

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixGatewayCertificateConfig(ctx, "testGatewayCert", &aviatrix.AviatrixGatewayCertificateConfigArgs{
			CaCertificate: readFileOrPanic("path/to/CA_cert.pem"),
			CaPrivateKey:  readFileOrPanic("path/to/CA_private.key"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

!> **WARNING:** When importing, the provider cannot read your private key or certificate into the state file. After importing, if you do not want to change the values of the CA private key or certificate you must set the attributes `ca_certificate` and `ca_private_key` to the empty string (""). Otherwise, Terraform will see a diff and force replacement. `aviatrix_gateway_certificate_config` can be imported using controller IP with the dots(.) replaces with dashes(-), e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixGatewayCertificateConfig:AviatrixGatewayCertificateConfig test 10-11-12-13

```

func GetAviatrixGatewayCertificateConfig

func GetAviatrixGatewayCertificateConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixGatewayCertificateConfigState, opts ...pulumi.ResourceOption) (*AviatrixGatewayCertificateConfig, error)

GetAviatrixGatewayCertificateConfig gets an existing AviatrixGatewayCertificateConfig 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 NewAviatrixGatewayCertificateConfig

func NewAviatrixGatewayCertificateConfig(ctx *pulumi.Context,
	name string, args *AviatrixGatewayCertificateConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixGatewayCertificateConfig, error)

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

func (*AviatrixGatewayCertificateConfig) ElementType

func (*AviatrixGatewayCertificateConfig) ToAviatrixGatewayCertificateConfigOutput

func (i *AviatrixGatewayCertificateConfig) ToAviatrixGatewayCertificateConfigOutput() AviatrixGatewayCertificateConfigOutput

func (*AviatrixGatewayCertificateConfig) ToAviatrixGatewayCertificateConfigOutputWithContext

func (i *AviatrixGatewayCertificateConfig) ToAviatrixGatewayCertificateConfigOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigOutput

type AviatrixGatewayCertificateConfigArgs

type AviatrixGatewayCertificateConfigArgs struct {
	// CA Certificate in PEM format. To read certificate from a file please use the built-in `file` function.
	CaCertificate pulumi.StringInput
	// CA Private Key. To read the private key from a file please use the built-in `file` function.
	CaPrivateKey pulumi.StringInput
}

The set of arguments for constructing a AviatrixGatewayCertificateConfig resource.

func (AviatrixGatewayCertificateConfigArgs) ElementType

type AviatrixGatewayCertificateConfigArray

type AviatrixGatewayCertificateConfigArray []AviatrixGatewayCertificateConfigInput

func (AviatrixGatewayCertificateConfigArray) ElementType

func (AviatrixGatewayCertificateConfigArray) ToAviatrixGatewayCertificateConfigArrayOutput

func (i AviatrixGatewayCertificateConfigArray) ToAviatrixGatewayCertificateConfigArrayOutput() AviatrixGatewayCertificateConfigArrayOutput

func (AviatrixGatewayCertificateConfigArray) ToAviatrixGatewayCertificateConfigArrayOutputWithContext

func (i AviatrixGatewayCertificateConfigArray) ToAviatrixGatewayCertificateConfigArrayOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigArrayOutput

type AviatrixGatewayCertificateConfigArrayInput

type AviatrixGatewayCertificateConfigArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayCertificateConfigArrayOutput() AviatrixGatewayCertificateConfigArrayOutput
	ToAviatrixGatewayCertificateConfigArrayOutputWithContext(context.Context) AviatrixGatewayCertificateConfigArrayOutput
}

AviatrixGatewayCertificateConfigArrayInput is an input type that accepts AviatrixGatewayCertificateConfigArray and AviatrixGatewayCertificateConfigArrayOutput values. You can construct a concrete instance of `AviatrixGatewayCertificateConfigArrayInput` via:

AviatrixGatewayCertificateConfigArray{ AviatrixGatewayCertificateConfigArgs{...} }

type AviatrixGatewayCertificateConfigArrayOutput

type AviatrixGatewayCertificateConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayCertificateConfigArrayOutput) ElementType

func (AviatrixGatewayCertificateConfigArrayOutput) Index

func (AviatrixGatewayCertificateConfigArrayOutput) ToAviatrixGatewayCertificateConfigArrayOutput

func (o AviatrixGatewayCertificateConfigArrayOutput) ToAviatrixGatewayCertificateConfigArrayOutput() AviatrixGatewayCertificateConfigArrayOutput

func (AviatrixGatewayCertificateConfigArrayOutput) ToAviatrixGatewayCertificateConfigArrayOutputWithContext

func (o AviatrixGatewayCertificateConfigArrayOutput) ToAviatrixGatewayCertificateConfigArrayOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigArrayOutput

type AviatrixGatewayCertificateConfigInput

type AviatrixGatewayCertificateConfigInput interface {
	pulumi.Input

	ToAviatrixGatewayCertificateConfigOutput() AviatrixGatewayCertificateConfigOutput
	ToAviatrixGatewayCertificateConfigOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigOutput
}

type AviatrixGatewayCertificateConfigMap

type AviatrixGatewayCertificateConfigMap map[string]AviatrixGatewayCertificateConfigInput

func (AviatrixGatewayCertificateConfigMap) ElementType

func (AviatrixGatewayCertificateConfigMap) ToAviatrixGatewayCertificateConfigMapOutput

func (i AviatrixGatewayCertificateConfigMap) ToAviatrixGatewayCertificateConfigMapOutput() AviatrixGatewayCertificateConfigMapOutput

func (AviatrixGatewayCertificateConfigMap) ToAviatrixGatewayCertificateConfigMapOutputWithContext

func (i AviatrixGatewayCertificateConfigMap) ToAviatrixGatewayCertificateConfigMapOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigMapOutput

type AviatrixGatewayCertificateConfigMapInput

type AviatrixGatewayCertificateConfigMapInput interface {
	pulumi.Input

	ToAviatrixGatewayCertificateConfigMapOutput() AviatrixGatewayCertificateConfigMapOutput
	ToAviatrixGatewayCertificateConfigMapOutputWithContext(context.Context) AviatrixGatewayCertificateConfigMapOutput
}

AviatrixGatewayCertificateConfigMapInput is an input type that accepts AviatrixGatewayCertificateConfigMap and AviatrixGatewayCertificateConfigMapOutput values. You can construct a concrete instance of `AviatrixGatewayCertificateConfigMapInput` via:

AviatrixGatewayCertificateConfigMap{ "key": AviatrixGatewayCertificateConfigArgs{...} }

type AviatrixGatewayCertificateConfigMapOutput

type AviatrixGatewayCertificateConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayCertificateConfigMapOutput) ElementType

func (AviatrixGatewayCertificateConfigMapOutput) MapIndex

func (AviatrixGatewayCertificateConfigMapOutput) ToAviatrixGatewayCertificateConfigMapOutput

func (o AviatrixGatewayCertificateConfigMapOutput) ToAviatrixGatewayCertificateConfigMapOutput() AviatrixGatewayCertificateConfigMapOutput

func (AviatrixGatewayCertificateConfigMapOutput) ToAviatrixGatewayCertificateConfigMapOutputWithContext

func (o AviatrixGatewayCertificateConfigMapOutput) ToAviatrixGatewayCertificateConfigMapOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigMapOutput

type AviatrixGatewayCertificateConfigOutput

type AviatrixGatewayCertificateConfigOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayCertificateConfigOutput) CaCertificate

CA Certificate in PEM format. To read certificate from a file please use the built-in `file` function.

func (AviatrixGatewayCertificateConfigOutput) CaPrivateKey

CA Private Key. To read the private key from a file please use the built-in `file` function.

func (AviatrixGatewayCertificateConfigOutput) ElementType

func (AviatrixGatewayCertificateConfigOutput) ToAviatrixGatewayCertificateConfigOutput

func (o AviatrixGatewayCertificateConfigOutput) ToAviatrixGatewayCertificateConfigOutput() AviatrixGatewayCertificateConfigOutput

func (AviatrixGatewayCertificateConfigOutput) ToAviatrixGatewayCertificateConfigOutputWithContext

func (o AviatrixGatewayCertificateConfigOutput) ToAviatrixGatewayCertificateConfigOutputWithContext(ctx context.Context) AviatrixGatewayCertificateConfigOutput

type AviatrixGatewayCertificateConfigState

type AviatrixGatewayCertificateConfigState struct {
	// CA Certificate in PEM format. To read certificate from a file please use the built-in `file` function.
	CaCertificate pulumi.StringPtrInput
	// CA Private Key. To read the private key from a file please use the built-in `file` function.
	CaPrivateKey pulumi.StringPtrInput
}

func (AviatrixGatewayCertificateConfigState) ElementType

type AviatrixGatewayDnat

type AviatrixGatewayDnat struct {
	pulumi.CustomResourceState

	// Computed attribute to store the previous connection policy.
	ConnectionPolicies AviatrixGatewayDnatConnectionPolicyArrayOutput `pulumi:"connectionPolicies"`
	// Policy rule applied for enabling Destination NAT (DNAT), which allows you to change the destination to a virtual address range. Currently only supports AWS(1) and Azure(8).
	DnatPolicies AviatrixGatewayDnatDnatPolicyArrayOutput `pulumi:"dnatPolicies"`
	// Name of the Aviatrix gateway the custom DNAT will be configured for.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Computed attribute to store the previous interface policy.
	InterfacePolicies AviatrixGatewayDnatInterfacePolicyArrayOutput `pulumi:"interfacePolicies"`
	// Sync the policies to the HA gateway. Valid values: true, false. Default: true.
	SyncToHa pulumi.BoolPtrOutput `pulumi:"syncToHa"`
}

## Import

**gateway_dnat** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixGatewayDnat:AviatrixGatewayDnat test gw_name

```

func GetAviatrixGatewayDnat

func GetAviatrixGatewayDnat(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixGatewayDnatState, opts ...pulumi.ResourceOption) (*AviatrixGatewayDnat, error)

GetAviatrixGatewayDnat gets an existing AviatrixGatewayDnat 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 NewAviatrixGatewayDnat

func NewAviatrixGatewayDnat(ctx *pulumi.Context,
	name string, args *AviatrixGatewayDnatArgs, opts ...pulumi.ResourceOption) (*AviatrixGatewayDnat, error)

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

func (*AviatrixGatewayDnat) ElementType

func (*AviatrixGatewayDnat) ElementType() reflect.Type

func (*AviatrixGatewayDnat) ToAviatrixGatewayDnatOutput

func (i *AviatrixGatewayDnat) ToAviatrixGatewayDnatOutput() AviatrixGatewayDnatOutput

func (*AviatrixGatewayDnat) ToAviatrixGatewayDnatOutputWithContext

func (i *AviatrixGatewayDnat) ToAviatrixGatewayDnatOutputWithContext(ctx context.Context) AviatrixGatewayDnatOutput

type AviatrixGatewayDnatArgs

type AviatrixGatewayDnatArgs struct {
	// Policy rule applied for enabling Destination NAT (DNAT), which allows you to change the destination to a virtual address range. Currently only supports AWS(1) and Azure(8).
	DnatPolicies AviatrixGatewayDnatDnatPolicyArrayInput
	// Name of the Aviatrix gateway the custom DNAT will be configured for.
	GwName pulumi.StringInput
	// Sync the policies to the HA gateway. Valid values: true, false. Default: true.
	SyncToHa pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixGatewayDnat resource.

func (AviatrixGatewayDnatArgs) ElementType

func (AviatrixGatewayDnatArgs) ElementType() reflect.Type

type AviatrixGatewayDnatArray

type AviatrixGatewayDnatArray []AviatrixGatewayDnatInput

func (AviatrixGatewayDnatArray) ElementType

func (AviatrixGatewayDnatArray) ElementType() reflect.Type

func (AviatrixGatewayDnatArray) ToAviatrixGatewayDnatArrayOutput

func (i AviatrixGatewayDnatArray) ToAviatrixGatewayDnatArrayOutput() AviatrixGatewayDnatArrayOutput

func (AviatrixGatewayDnatArray) ToAviatrixGatewayDnatArrayOutputWithContext

func (i AviatrixGatewayDnatArray) ToAviatrixGatewayDnatArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatArrayOutput

type AviatrixGatewayDnatArrayInput

type AviatrixGatewayDnatArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatArrayOutput() AviatrixGatewayDnatArrayOutput
	ToAviatrixGatewayDnatArrayOutputWithContext(context.Context) AviatrixGatewayDnatArrayOutput
}

AviatrixGatewayDnatArrayInput is an input type that accepts AviatrixGatewayDnatArray and AviatrixGatewayDnatArrayOutput values. You can construct a concrete instance of `AviatrixGatewayDnatArrayInput` via:

AviatrixGatewayDnatArray{ AviatrixGatewayDnatArgs{...} }

type AviatrixGatewayDnatArrayOutput

type AviatrixGatewayDnatArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatArrayOutput) ElementType

func (AviatrixGatewayDnatArrayOutput) Index

func (AviatrixGatewayDnatArrayOutput) ToAviatrixGatewayDnatArrayOutput

func (o AviatrixGatewayDnatArrayOutput) ToAviatrixGatewayDnatArrayOutput() AviatrixGatewayDnatArrayOutput

func (AviatrixGatewayDnatArrayOutput) ToAviatrixGatewayDnatArrayOutputWithContext

func (o AviatrixGatewayDnatArrayOutput) ToAviatrixGatewayDnatArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatArrayOutput

type AviatrixGatewayDnatConnectionPolicy

type AviatrixGatewayDnatConnectionPolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps *string `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort *string `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol *string `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewayDnatConnectionPolicyArgs

type AviatrixGatewayDnatConnectionPolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps pulumi.StringPtrInput `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort pulumi.StringPtrInput `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewayDnatConnectionPolicyArgs) ElementType

func (AviatrixGatewayDnatConnectionPolicyArgs) ToAviatrixGatewayDnatConnectionPolicyOutput

func (i AviatrixGatewayDnatConnectionPolicyArgs) ToAviatrixGatewayDnatConnectionPolicyOutput() AviatrixGatewayDnatConnectionPolicyOutput

func (AviatrixGatewayDnatConnectionPolicyArgs) ToAviatrixGatewayDnatConnectionPolicyOutputWithContext

func (i AviatrixGatewayDnatConnectionPolicyArgs) ToAviatrixGatewayDnatConnectionPolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatConnectionPolicyOutput

type AviatrixGatewayDnatConnectionPolicyArray

type AviatrixGatewayDnatConnectionPolicyArray []AviatrixGatewayDnatConnectionPolicyInput

func (AviatrixGatewayDnatConnectionPolicyArray) ElementType

func (AviatrixGatewayDnatConnectionPolicyArray) ToAviatrixGatewayDnatConnectionPolicyArrayOutput

func (i AviatrixGatewayDnatConnectionPolicyArray) ToAviatrixGatewayDnatConnectionPolicyArrayOutput() AviatrixGatewayDnatConnectionPolicyArrayOutput

func (AviatrixGatewayDnatConnectionPolicyArray) ToAviatrixGatewayDnatConnectionPolicyArrayOutputWithContext

func (i AviatrixGatewayDnatConnectionPolicyArray) ToAviatrixGatewayDnatConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatConnectionPolicyArrayOutput

type AviatrixGatewayDnatConnectionPolicyArrayInput

type AviatrixGatewayDnatConnectionPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatConnectionPolicyArrayOutput() AviatrixGatewayDnatConnectionPolicyArrayOutput
	ToAviatrixGatewayDnatConnectionPolicyArrayOutputWithContext(context.Context) AviatrixGatewayDnatConnectionPolicyArrayOutput
}

AviatrixGatewayDnatConnectionPolicyArrayInput is an input type that accepts AviatrixGatewayDnatConnectionPolicyArray and AviatrixGatewayDnatConnectionPolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewayDnatConnectionPolicyArrayInput` via:

AviatrixGatewayDnatConnectionPolicyArray{ AviatrixGatewayDnatConnectionPolicyArgs{...} }

type AviatrixGatewayDnatConnectionPolicyArrayOutput

type AviatrixGatewayDnatConnectionPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatConnectionPolicyArrayOutput) ElementType

func (AviatrixGatewayDnatConnectionPolicyArrayOutput) Index

func (AviatrixGatewayDnatConnectionPolicyArrayOutput) ToAviatrixGatewayDnatConnectionPolicyArrayOutput

func (o AviatrixGatewayDnatConnectionPolicyArrayOutput) ToAviatrixGatewayDnatConnectionPolicyArrayOutput() AviatrixGatewayDnatConnectionPolicyArrayOutput

func (AviatrixGatewayDnatConnectionPolicyArrayOutput) ToAviatrixGatewayDnatConnectionPolicyArrayOutputWithContext

func (o AviatrixGatewayDnatConnectionPolicyArrayOutput) ToAviatrixGatewayDnatConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatConnectionPolicyArrayOutput

type AviatrixGatewayDnatConnectionPolicyInput

type AviatrixGatewayDnatConnectionPolicyInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatConnectionPolicyOutput() AviatrixGatewayDnatConnectionPolicyOutput
	ToAviatrixGatewayDnatConnectionPolicyOutputWithContext(context.Context) AviatrixGatewayDnatConnectionPolicyOutput
}

AviatrixGatewayDnatConnectionPolicyInput is an input type that accepts AviatrixGatewayDnatConnectionPolicyArgs and AviatrixGatewayDnatConnectionPolicyOutput values. You can construct a concrete instance of `AviatrixGatewayDnatConnectionPolicyInput` via:

AviatrixGatewayDnatConnectionPolicyArgs{...}

type AviatrixGatewayDnatConnectionPolicyOutput

type AviatrixGatewayDnatConnectionPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatConnectionPolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.

func (AviatrixGatewayDnatConnectionPolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewayDnatConnectionPolicyOutput) DnatIps

This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatConnectionPolicyOutput) DnatPort

This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatConnectionPolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) ElementType

func (AviatrixGatewayDnatConnectionPolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewayDnatConnectionPolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewayDnatConnectionPolicyOutput) Mark

This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatConnectionPolicyOutput) ToAviatrixGatewayDnatConnectionPolicyOutput

func (o AviatrixGatewayDnatConnectionPolicyOutput) ToAviatrixGatewayDnatConnectionPolicyOutput() AviatrixGatewayDnatConnectionPolicyOutput

func (AviatrixGatewayDnatConnectionPolicyOutput) ToAviatrixGatewayDnatConnectionPolicyOutputWithContext

func (o AviatrixGatewayDnatConnectionPolicyOutput) ToAviatrixGatewayDnatConnectionPolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatConnectionPolicyOutput

type AviatrixGatewayDnatDnatPolicy

type AviatrixGatewayDnatDnatPolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps *string `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort *string `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol *string `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewayDnatDnatPolicyArgs

type AviatrixGatewayDnatDnatPolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps pulumi.StringPtrInput `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort pulumi.StringPtrInput `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewayDnatDnatPolicyArgs) ElementType

func (AviatrixGatewayDnatDnatPolicyArgs) ToAviatrixGatewayDnatDnatPolicyOutput

func (i AviatrixGatewayDnatDnatPolicyArgs) ToAviatrixGatewayDnatDnatPolicyOutput() AviatrixGatewayDnatDnatPolicyOutput

func (AviatrixGatewayDnatDnatPolicyArgs) ToAviatrixGatewayDnatDnatPolicyOutputWithContext

func (i AviatrixGatewayDnatDnatPolicyArgs) ToAviatrixGatewayDnatDnatPolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatDnatPolicyOutput

type AviatrixGatewayDnatDnatPolicyArray

type AviatrixGatewayDnatDnatPolicyArray []AviatrixGatewayDnatDnatPolicyInput

func (AviatrixGatewayDnatDnatPolicyArray) ElementType

func (AviatrixGatewayDnatDnatPolicyArray) ToAviatrixGatewayDnatDnatPolicyArrayOutput

func (i AviatrixGatewayDnatDnatPolicyArray) ToAviatrixGatewayDnatDnatPolicyArrayOutput() AviatrixGatewayDnatDnatPolicyArrayOutput

func (AviatrixGatewayDnatDnatPolicyArray) ToAviatrixGatewayDnatDnatPolicyArrayOutputWithContext

func (i AviatrixGatewayDnatDnatPolicyArray) ToAviatrixGatewayDnatDnatPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatDnatPolicyArrayOutput

type AviatrixGatewayDnatDnatPolicyArrayInput

type AviatrixGatewayDnatDnatPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatDnatPolicyArrayOutput() AviatrixGatewayDnatDnatPolicyArrayOutput
	ToAviatrixGatewayDnatDnatPolicyArrayOutputWithContext(context.Context) AviatrixGatewayDnatDnatPolicyArrayOutput
}

AviatrixGatewayDnatDnatPolicyArrayInput is an input type that accepts AviatrixGatewayDnatDnatPolicyArray and AviatrixGatewayDnatDnatPolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewayDnatDnatPolicyArrayInput` via:

AviatrixGatewayDnatDnatPolicyArray{ AviatrixGatewayDnatDnatPolicyArgs{...} }

type AviatrixGatewayDnatDnatPolicyArrayOutput

type AviatrixGatewayDnatDnatPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatDnatPolicyArrayOutput) ElementType

func (AviatrixGatewayDnatDnatPolicyArrayOutput) Index

func (AviatrixGatewayDnatDnatPolicyArrayOutput) ToAviatrixGatewayDnatDnatPolicyArrayOutput

func (o AviatrixGatewayDnatDnatPolicyArrayOutput) ToAviatrixGatewayDnatDnatPolicyArrayOutput() AviatrixGatewayDnatDnatPolicyArrayOutput

func (AviatrixGatewayDnatDnatPolicyArrayOutput) ToAviatrixGatewayDnatDnatPolicyArrayOutputWithContext

func (o AviatrixGatewayDnatDnatPolicyArrayOutput) ToAviatrixGatewayDnatDnatPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatDnatPolicyArrayOutput

type AviatrixGatewayDnatDnatPolicyInput

type AviatrixGatewayDnatDnatPolicyInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatDnatPolicyOutput() AviatrixGatewayDnatDnatPolicyOutput
	ToAviatrixGatewayDnatDnatPolicyOutputWithContext(context.Context) AviatrixGatewayDnatDnatPolicyOutput
}

AviatrixGatewayDnatDnatPolicyInput is an input type that accepts AviatrixGatewayDnatDnatPolicyArgs and AviatrixGatewayDnatDnatPolicyOutput values. You can construct a concrete instance of `AviatrixGatewayDnatDnatPolicyInput` via:

AviatrixGatewayDnatDnatPolicyArgs{...}

type AviatrixGatewayDnatDnatPolicyOutput

type AviatrixGatewayDnatDnatPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatDnatPolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.

func (AviatrixGatewayDnatDnatPolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewayDnatDnatPolicyOutput) DnatIps

This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatDnatPolicyOutput) DnatPort

This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatDnatPolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) ElementType

func (AviatrixGatewayDnatDnatPolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewayDnatDnatPolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewayDnatDnatPolicyOutput) Mark

This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatDnatPolicyOutput) ToAviatrixGatewayDnatDnatPolicyOutput

func (o AviatrixGatewayDnatDnatPolicyOutput) ToAviatrixGatewayDnatDnatPolicyOutput() AviatrixGatewayDnatDnatPolicyOutput

func (AviatrixGatewayDnatDnatPolicyOutput) ToAviatrixGatewayDnatDnatPolicyOutputWithContext

func (o AviatrixGatewayDnatDnatPolicyOutput) ToAviatrixGatewayDnatDnatPolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatDnatPolicyOutput

type AviatrixGatewayDnatInput

type AviatrixGatewayDnatInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatOutput() AviatrixGatewayDnatOutput
	ToAviatrixGatewayDnatOutputWithContext(ctx context.Context) AviatrixGatewayDnatOutput
}

type AviatrixGatewayDnatInterfacePolicy

type AviatrixGatewayDnatInterfacePolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps *string `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort *string `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol *string `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewayDnatInterfacePolicyArgs

type AviatrixGatewayDnatInterfacePolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatIps pulumi.StringPtrInput `pulumi:"dnatIps"`
	// This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.
	DnatPort pulumi.StringPtrInput `pulumi:"dnatPort"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewayDnatInterfacePolicyArgs) ElementType

func (AviatrixGatewayDnatInterfacePolicyArgs) ToAviatrixGatewayDnatInterfacePolicyOutput

func (i AviatrixGatewayDnatInterfacePolicyArgs) ToAviatrixGatewayDnatInterfacePolicyOutput() AviatrixGatewayDnatInterfacePolicyOutput

func (AviatrixGatewayDnatInterfacePolicyArgs) ToAviatrixGatewayDnatInterfacePolicyOutputWithContext

func (i AviatrixGatewayDnatInterfacePolicyArgs) ToAviatrixGatewayDnatInterfacePolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatInterfacePolicyOutput

type AviatrixGatewayDnatInterfacePolicyArray

type AviatrixGatewayDnatInterfacePolicyArray []AviatrixGatewayDnatInterfacePolicyInput

func (AviatrixGatewayDnatInterfacePolicyArray) ElementType

func (AviatrixGatewayDnatInterfacePolicyArray) ToAviatrixGatewayDnatInterfacePolicyArrayOutput

func (i AviatrixGatewayDnatInterfacePolicyArray) ToAviatrixGatewayDnatInterfacePolicyArrayOutput() AviatrixGatewayDnatInterfacePolicyArrayOutput

func (AviatrixGatewayDnatInterfacePolicyArray) ToAviatrixGatewayDnatInterfacePolicyArrayOutputWithContext

func (i AviatrixGatewayDnatInterfacePolicyArray) ToAviatrixGatewayDnatInterfacePolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatInterfacePolicyArrayOutput

type AviatrixGatewayDnatInterfacePolicyArrayInput

type AviatrixGatewayDnatInterfacePolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatInterfacePolicyArrayOutput() AviatrixGatewayDnatInterfacePolicyArrayOutput
	ToAviatrixGatewayDnatInterfacePolicyArrayOutputWithContext(context.Context) AviatrixGatewayDnatInterfacePolicyArrayOutput
}

AviatrixGatewayDnatInterfacePolicyArrayInput is an input type that accepts AviatrixGatewayDnatInterfacePolicyArray and AviatrixGatewayDnatInterfacePolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewayDnatInterfacePolicyArrayInput` via:

AviatrixGatewayDnatInterfacePolicyArray{ AviatrixGatewayDnatInterfacePolicyArgs{...} }

type AviatrixGatewayDnatInterfacePolicyArrayOutput

type AviatrixGatewayDnatInterfacePolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatInterfacePolicyArrayOutput) ElementType

func (AviatrixGatewayDnatInterfacePolicyArrayOutput) Index

func (AviatrixGatewayDnatInterfacePolicyArrayOutput) ToAviatrixGatewayDnatInterfacePolicyArrayOutput

func (o AviatrixGatewayDnatInterfacePolicyArrayOutput) ToAviatrixGatewayDnatInterfacePolicyArrayOutput() AviatrixGatewayDnatInterfacePolicyArrayOutput

func (AviatrixGatewayDnatInterfacePolicyArrayOutput) ToAviatrixGatewayDnatInterfacePolicyArrayOutputWithContext

func (o AviatrixGatewayDnatInterfacePolicyArrayOutput) ToAviatrixGatewayDnatInterfacePolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewayDnatInterfacePolicyArrayOutput

type AviatrixGatewayDnatInterfacePolicyInput

type AviatrixGatewayDnatInterfacePolicyInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatInterfacePolicyOutput() AviatrixGatewayDnatInterfacePolicyOutput
	ToAviatrixGatewayDnatInterfacePolicyOutputWithContext(context.Context) AviatrixGatewayDnatInterfacePolicyOutput
}

AviatrixGatewayDnatInterfacePolicyInput is an input type that accepts AviatrixGatewayDnatInterfacePolicyArgs and AviatrixGatewayDnatInterfacePolicyOutput values. You can construct a concrete instance of `AviatrixGatewayDnatInterfacePolicyInput` via:

AviatrixGatewayDnatInterfacePolicyArgs{...}

type AviatrixGatewayDnatInterfacePolicyOutput

type AviatrixGatewayDnatInterfacePolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatInterfacePolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.19.2+.

func (AviatrixGatewayDnatInterfacePolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewayDnatInterfacePolicyOutput) DnatIps

This is a rule field that specifies the translated destination IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatInterfacePolicyOutput) DnatPort

This is a rule field that specifies the translated destination port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule field must be specified for this rule to take effect.

func (AviatrixGatewayDnatInterfacePolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) ElementType

func (AviatrixGatewayDnatInterfacePolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewayDnatInterfacePolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewayDnatInterfacePolicyOutput) Mark

This is a rule field that specifies a tag or mark of a TCP session when all qualifier conditions meet. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewayDnatInterfacePolicyOutput) ToAviatrixGatewayDnatInterfacePolicyOutput

func (o AviatrixGatewayDnatInterfacePolicyOutput) ToAviatrixGatewayDnatInterfacePolicyOutput() AviatrixGatewayDnatInterfacePolicyOutput

func (AviatrixGatewayDnatInterfacePolicyOutput) ToAviatrixGatewayDnatInterfacePolicyOutputWithContext

func (o AviatrixGatewayDnatInterfacePolicyOutput) ToAviatrixGatewayDnatInterfacePolicyOutputWithContext(ctx context.Context) AviatrixGatewayDnatInterfacePolicyOutput

type AviatrixGatewayDnatMap

type AviatrixGatewayDnatMap map[string]AviatrixGatewayDnatInput

func (AviatrixGatewayDnatMap) ElementType

func (AviatrixGatewayDnatMap) ElementType() reflect.Type

func (AviatrixGatewayDnatMap) ToAviatrixGatewayDnatMapOutput

func (i AviatrixGatewayDnatMap) ToAviatrixGatewayDnatMapOutput() AviatrixGatewayDnatMapOutput

func (AviatrixGatewayDnatMap) ToAviatrixGatewayDnatMapOutputWithContext

func (i AviatrixGatewayDnatMap) ToAviatrixGatewayDnatMapOutputWithContext(ctx context.Context) AviatrixGatewayDnatMapOutput

type AviatrixGatewayDnatMapInput

type AviatrixGatewayDnatMapInput interface {
	pulumi.Input

	ToAviatrixGatewayDnatMapOutput() AviatrixGatewayDnatMapOutput
	ToAviatrixGatewayDnatMapOutputWithContext(context.Context) AviatrixGatewayDnatMapOutput
}

AviatrixGatewayDnatMapInput is an input type that accepts AviatrixGatewayDnatMap and AviatrixGatewayDnatMapOutput values. You can construct a concrete instance of `AviatrixGatewayDnatMapInput` via:

AviatrixGatewayDnatMap{ "key": AviatrixGatewayDnatArgs{...} }

type AviatrixGatewayDnatMapOutput

type AviatrixGatewayDnatMapOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatMapOutput) ElementType

func (AviatrixGatewayDnatMapOutput) MapIndex

func (AviatrixGatewayDnatMapOutput) ToAviatrixGatewayDnatMapOutput

func (o AviatrixGatewayDnatMapOutput) ToAviatrixGatewayDnatMapOutput() AviatrixGatewayDnatMapOutput

func (AviatrixGatewayDnatMapOutput) ToAviatrixGatewayDnatMapOutputWithContext

func (o AviatrixGatewayDnatMapOutput) ToAviatrixGatewayDnatMapOutputWithContext(ctx context.Context) AviatrixGatewayDnatMapOutput

type AviatrixGatewayDnatOutput

type AviatrixGatewayDnatOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayDnatOutput) ConnectionPolicies

Computed attribute to store the previous connection policy.

func (AviatrixGatewayDnatOutput) DnatPolicies

Policy rule applied for enabling Destination NAT (DNAT), which allows you to change the destination to a virtual address range. Currently only supports AWS(1) and Azure(8).

func (AviatrixGatewayDnatOutput) ElementType

func (AviatrixGatewayDnatOutput) ElementType() reflect.Type

func (AviatrixGatewayDnatOutput) GwName

Name of the Aviatrix gateway the custom DNAT will be configured for.

func (AviatrixGatewayDnatOutput) InterfacePolicies

Computed attribute to store the previous interface policy.

func (AviatrixGatewayDnatOutput) SyncToHa

Sync the policies to the HA gateway. Valid values: true, false. Default: true.

func (AviatrixGatewayDnatOutput) ToAviatrixGatewayDnatOutput

func (o AviatrixGatewayDnatOutput) ToAviatrixGatewayDnatOutput() AviatrixGatewayDnatOutput

func (AviatrixGatewayDnatOutput) ToAviatrixGatewayDnatOutputWithContext

func (o AviatrixGatewayDnatOutput) ToAviatrixGatewayDnatOutputWithContext(ctx context.Context) AviatrixGatewayDnatOutput

type AviatrixGatewayDnatState

type AviatrixGatewayDnatState struct {
	// Computed attribute to store the previous connection policy.
	ConnectionPolicies AviatrixGatewayDnatConnectionPolicyArrayInput
	// Policy rule applied for enabling Destination NAT (DNAT), which allows you to change the destination to a virtual address range. Currently only supports AWS(1) and Azure(8).
	DnatPolicies AviatrixGatewayDnatDnatPolicyArrayInput
	// Name of the Aviatrix gateway the custom DNAT will be configured for.
	GwName pulumi.StringPtrInput
	// Computed attribute to store the previous interface policy.
	InterfacePolicies AviatrixGatewayDnatInterfacePolicyArrayInput
	// Sync the policies to the HA gateway. Valid values: true, false. Default: true.
	SyncToHa pulumi.BoolPtrInput
}

func (AviatrixGatewayDnatState) ElementType

func (AviatrixGatewayDnatState) ElementType() reflect.Type

type AviatrixGatewayInput

type AviatrixGatewayInput interface {
	pulumi.Input

	ToAviatrixGatewayOutput() AviatrixGatewayOutput
	ToAviatrixGatewayOutputWithContext(ctx context.Context) AviatrixGatewayOutput
}

type AviatrixGatewayMap

type AviatrixGatewayMap map[string]AviatrixGatewayInput

func (AviatrixGatewayMap) ElementType

func (AviatrixGatewayMap) ElementType() reflect.Type

func (AviatrixGatewayMap) ToAviatrixGatewayMapOutput

func (i AviatrixGatewayMap) ToAviatrixGatewayMapOutput() AviatrixGatewayMapOutput

func (AviatrixGatewayMap) ToAviatrixGatewayMapOutputWithContext

func (i AviatrixGatewayMap) ToAviatrixGatewayMapOutputWithContext(ctx context.Context) AviatrixGatewayMapOutput

type AviatrixGatewayMapInput

type AviatrixGatewayMapInput interface {
	pulumi.Input

	ToAviatrixGatewayMapOutput() AviatrixGatewayMapOutput
	ToAviatrixGatewayMapOutputWithContext(context.Context) AviatrixGatewayMapOutput
}

AviatrixGatewayMapInput is an input type that accepts AviatrixGatewayMap and AviatrixGatewayMapOutput values. You can construct a concrete instance of `AviatrixGatewayMapInput` via:

AviatrixGatewayMap{ "key": AviatrixGatewayArgs{...} }

type AviatrixGatewayMapOutput

type AviatrixGatewayMapOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayMapOutput) ElementType

func (AviatrixGatewayMapOutput) ElementType() reflect.Type

func (AviatrixGatewayMapOutput) MapIndex

func (AviatrixGatewayMapOutput) ToAviatrixGatewayMapOutput

func (o AviatrixGatewayMapOutput) ToAviatrixGatewayMapOutput() AviatrixGatewayMapOutput

func (AviatrixGatewayMapOutput) ToAviatrixGatewayMapOutputWithContext

func (o AviatrixGatewayMapOutput) ToAviatrixGatewayMapOutputWithContext(ctx context.Context) AviatrixGatewayMapOutput

type AviatrixGatewayOutput

type AviatrixGatewayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewayOutput) AccountName

func (o AviatrixGatewayOutput) AccountName() pulumi.StringOutput

Account name. This account will be used to launch Aviatrix gateway.

func (AviatrixGatewayOutput) AdditionalCidrs

func (o AviatrixGatewayOutput) AdditionalCidrs() pulumi.StringPtrOutput

A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.

func (AviatrixGatewayOutput) AdditionalCidrsDesignatedGateway

func (o AviatrixGatewayOutput) AdditionalCidrsDesignatedGateway() pulumi.StringPtrOutput

A list of CIDR ranges separated by comma to configure when "Designated Gateway" feature is enabled. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".

func (AviatrixGatewayOutput) AllocateNewEip

func (o AviatrixGatewayOutput) AllocateNewEip() pulumi.BoolPtrOutput

If set to false, use an available address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 2.7+. Valid values: true, false. Default: true.

func (AviatrixGatewayOutput) AvailabilityDomain

func (o AviatrixGatewayOutput) AvailabilityDomain() pulumi.StringOutput

Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixGatewayOutput) AzureEipNameResourceGroup

func (o AviatrixGatewayOutput) AzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP Address resource and its resource group in Azure to be assigned to the gateway instance. Example: "IP_Name:Resource_Group_Name". Required when `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixGatewayOutput) CloudInstanceId

func (o AviatrixGatewayOutput) CloudInstanceId() pulumi.StringOutput

Cloud instance ID of the gateway.

func (AviatrixGatewayOutput) CloudType

func (o AviatrixGatewayOutput) CloudType() pulumi.IntOutput

Cloud service provider to use to launch the gateway. Requires an integer value. Currently supports AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud (8192), AWS Top Secret (16384) and AWS Secret (32768).

func (AviatrixGatewayOutput) CustomerManagedKeys

func (o AviatrixGatewayOutput) CustomerManagedKeys() pulumi.StringPtrOutput

Customer-managed key ID.

func (AviatrixGatewayOutput) DuoApiHostname

func (o AviatrixGatewayOutput) DuoApiHostname() pulumi.StringPtrOutput

API hostname for DUO auth mode. Required: Yes if `otpMode` is "2".

func (AviatrixGatewayOutput) DuoIntegrationKey

func (o AviatrixGatewayOutput) DuoIntegrationKey() pulumi.StringPtrOutput

Integration key for DUO auth mode. Required if `otpMode` is "2".

func (AviatrixGatewayOutput) DuoPushMode

Push mode for DUO auth. Required if `otpMode` is "2". Valid values: "auto", "selective" and "token".

func (AviatrixGatewayOutput) DuoSecretKey

func (o AviatrixGatewayOutput) DuoSecretKey() pulumi.StringPtrOutput

Secret key for DUO auth mode. Required if `otpMode` is "2".

func (AviatrixGatewayOutput) Eip

Specified EIP to use for gateway creation. Required when `allocateNewEip` is false. Available in Controller version 3.5+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixGatewayOutput) ElbDnsName

func (o AviatrixGatewayOutput) ElbDnsName() pulumi.StringOutput

ELB DNS name.

func (AviatrixGatewayOutput) ElbName

A name for the ELB that is created. If it is not specified, a name is generated automatically.

func (AviatrixGatewayOutput) ElementType

func (AviatrixGatewayOutput) ElementType() reflect.Type

func (AviatrixGatewayOutput) EnableDesignatedGateway

func (o AviatrixGatewayOutput) EnableDesignatedGateway() pulumi.BoolPtrOutput

Enable Designated Gateway feature for Gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false. Please view documentation [here](https://docs.aviatrix.com/HowTos/gateway.html#designated-gateway) for more information on this feature.

func (AviatrixGatewayOutput) EnableElb

Specify whether to enable ELB or not. Not supported for OCI gateways. Valid values: true, false.

func (AviatrixGatewayOutput) EnableEncryptVolume

func (o AviatrixGatewayOutput) EnableEncryptVolume() pulumi.BoolPtrOutput

Enable EBS volume encryption for the gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.

func (AviatrixGatewayOutput) EnableJumboFrame

func (o AviatrixGatewayOutput) EnableJumboFrame() pulumi.BoolPtrOutput

Enable jumbo frames for this gateway. Default value is true.

func (AviatrixGatewayOutput) EnableLdap

Enable/disable LDAP. Valid values: true, false. Default value: false.

func (AviatrixGatewayOutput) EnableMonitorGatewaySubnets

func (o AviatrixGatewayOutput) EnableMonitorGatewaySubnets() pulumi.BoolPtrOutput

If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) EnablePublicSubnetFiltering

func (o AviatrixGatewayOutput) EnablePublicSubnetFiltering() pulumi.BoolPtrOutput

Create a [Public Subnet Filtering gateway](https://docs.aviatrix.com/HowTos/public_subnet_filtering_faq.html).

func (AviatrixGatewayOutput) EnableSpotInstance

func (o AviatrixGatewayOutput) EnableSpotInstance() pulumi.BoolPtrOutput

Enable spot instance. NOT supported for production deployment.

func (AviatrixGatewayOutput) EnableVpcDnsServer

func (o AviatrixGatewayOutput) EnableVpcDnsServer() pulumi.BoolPtrOutput

Enable VPC DNS Server for gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.

func (AviatrixGatewayOutput) EnableVpnNat

func (o AviatrixGatewayOutput) EnableVpnNat() pulumi.BoolPtrOutput

Enable/disable VPN NAT. Only supported for VPN gateway. Valid values: true, false. Default value: true.

func (AviatrixGatewayOutput) FaultDomain

func (o AviatrixGatewayOutput) FaultDomain() pulumi.StringOutput

Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixGatewayOutput) FqdnLanCidr

If `fqdnLanCidr` is set, the FQDN gateway will be created with an additional LAN interface using the provided CIDR. This attribute is required when enabling FQDN gateway FireNet in Azure or GCP. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) FqdnLanInterface

func (o AviatrixGatewayOutput) FqdnLanInterface() pulumi.StringOutput

The lan interface id of the of FQDN gateway with additional LAN interface. This attribute will be exported when enabling FQDN gateway firenet in Azure. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) FqdnLanVpcId

func (o AviatrixGatewayOutput) FqdnLanVpcId() pulumi.StringPtrOutput

FQDN LAN VPC ID. This attribute is required when enabling FQDN gateway FireNet in GCP. Available as of provider version R2.18.1+.

func (AviatrixGatewayOutput) GwName

Name of the Aviatrix gateway to be created.

func (AviatrixGatewayOutput) GwSize

Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", GCP: "n1-standard-1", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2".

func (AviatrixGatewayOutput) IdleTimeout

func (o AviatrixGatewayOutput) IdleTimeout() pulumi.IntPtrOutput

It sets the value (seconds) of the [idle timeout](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This idle timeout feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) ImageVersion

func (o AviatrixGatewayOutput) ImageVersion() pulumi.StringOutput

The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixGatewayOutput) InsaneMode

Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Gateway. Insane Mode gateway size must be at least c5 series (AWS) or Standard_D3_v2 (Azure/AzureGov). If enabled, a valid /26 CIDR segment of the VPC must be specified to create a new subnet. Only supported for AWS, AWSGov, Azure, AzureGov, AWS China, Azure China, AWS Top Secret or AWS Secret. Valid values: true, false.

func (AviatrixGatewayOutput) InsaneModeAz

func (o AviatrixGatewayOutput) InsaneModeAz() pulumi.StringPtrOutput

Region + Availability Zone of subnet being created for Insane Mode gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is set. Example: AWS: "us-west-1a".

func (AviatrixGatewayOutput) LdapBaseDn

LDAP base DN. Required if `enableLdap` is true.

func (AviatrixGatewayOutput) LdapBindDn

LDAP bind DN. Required if `enableLdap` is true.

func (AviatrixGatewayOutput) LdapPassword

func (o AviatrixGatewayOutput) LdapPassword() pulumi.StringPtrOutput

LDAP password. Required if `enableLdap` is true.

func (AviatrixGatewayOutput) LdapServer

LDAP server address. Required if `enableLdap` is true.

func (AviatrixGatewayOutput) LdapUsernameAttribute

func (o AviatrixGatewayOutput) LdapUsernameAttribute() pulumi.StringPtrOutput

LDAP user attribute. Required if `enableLdap` is true.

func (AviatrixGatewayOutput) MaxVpnConn

Maximum number of active VPN users allowed to be connected to this gateway. Required if `vpnAccess` is true. Make sure the number is smaller than the VPN CIDR block. Example: 100. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.14.**

func (AviatrixGatewayOutput) MonitorExcludeLists

func (o AviatrixGatewayOutput) MonitorExcludeLists() pulumi.StringArrayOutput

Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) NameServers

A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.

func (AviatrixGatewayOutput) OktaToken

Token for Okta auth mode. Required if `otpMode` is "3".

func (AviatrixGatewayOutput) OktaUrl

URL for Okta auth mode. Required if `otpMode` is "3".

func (AviatrixGatewayOutput) OktaUsernameSuffix

func (o AviatrixGatewayOutput) OktaUsernameSuffix() pulumi.StringPtrOutput

Username suffix for Okta auth mode. Example: "aviatrix.com".

func (AviatrixGatewayOutput) OtpMode

Two step authentication mode. Valid values: "2" for DUO, "3" for Okta.

func (AviatrixGatewayOutput) PeeringHaAvailabilityDomain

func (o AviatrixGatewayOutput) PeeringHaAvailabilityDomain() pulumi.StringOutput

Peering HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixGatewayOutput) PeeringHaAzureEipNameResourceGroup

func (o AviatrixGatewayOutput) PeeringHaAzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP address resource and its resource group in Azure to be assigned to the HA peering instance. Example: "IP_Name:Resource_Group_Name". Required if `peeringHaEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixGatewayOutput) PeeringHaCloudInstanceId

func (o AviatrixGatewayOutput) PeeringHaCloudInstanceId() pulumi.StringOutput

Cloud instance ID of the HA gateway.

func (AviatrixGatewayOutput) PeeringHaEip

func (o AviatrixGatewayOutput) PeeringHaEip() pulumi.StringOutput

Public IP address to be assigned to the HA peering instance. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixGatewayOutput) PeeringHaFaultDomain

func (o AviatrixGatewayOutput) PeeringHaFaultDomain() pulumi.StringOutput

Peering HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixGatewayOutput) PeeringHaGwName

func (o AviatrixGatewayOutput) PeeringHaGwName() pulumi.StringOutput

Aviatrix gateway unique name of HA gateway.

func (AviatrixGatewayOutput) PeeringHaGwSize

func (o AviatrixGatewayOutput) PeeringHaGwSize() pulumi.StringPtrOutput

Size of the Peering HA Gateway to be created. Required if enabling Peering HA. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.8.**

func (AviatrixGatewayOutput) PeeringHaImageVersion

func (o AviatrixGatewayOutput) PeeringHaImageVersion() pulumi.StringOutput

The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixGatewayOutput) PeeringHaInsaneModeAz

func (o AviatrixGatewayOutput) PeeringHaInsaneModeAz() pulumi.StringPtrOutput

Region + Availability Zone of subnet being created for Insane Mode-enabled Peering HA Gateway. Required for AWS only if `insaneMode` is set and `peeringHaSubnet` is set. Example: AWS: "us-west-1a".

func (AviatrixGatewayOutput) PeeringHaPrivateIp

func (o AviatrixGatewayOutput) PeeringHaPrivateIp() pulumi.StringOutput

Private IP address of HA gateway.

func (AviatrixGatewayOutput) PeeringHaSecurityGroupId

func (o AviatrixGatewayOutput) PeeringHaSecurityGroupId() pulumi.StringOutput

HA security group used for the gateway.

func (AviatrixGatewayOutput) PeeringHaSoftwareVersion

func (o AviatrixGatewayOutput) PeeringHaSoftwareVersion() pulumi.StringOutput

The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixGatewayOutput) PeeringHaSubnet

func (o AviatrixGatewayOutput) PeeringHaSubnet() pulumi.StringPtrOutput

Public subnet CIDR to create Peering HA Gateway in. Required if enabling Peering HA for AWS/AWSGov/AWS Top Secret/AWS Secret/Azure/AzureGov/Alibaba Cloud. Optional if enabling Peering HA for GCP. Example: AWS: "10.0.0.0/16".

func (AviatrixGatewayOutput) PeeringHaZone

func (o AviatrixGatewayOutput) PeeringHaZone() pulumi.StringPtrOutput

Zone to create Peering HA Gateway in. Required if enabling Peering HA for GCP. Example: GCP: "us-west1-c". Optional for Azure. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.

func (AviatrixGatewayOutput) PrivateIp

Private IP address of the gateway created.

func (AviatrixGatewayOutput) PublicDnsServer

func (o AviatrixGatewayOutput) PublicDnsServer() pulumi.StringOutput

DNS server used by the gateway. Default is "8.8.8.8", can be overridden with the VPC's setting.

func (AviatrixGatewayOutput) PublicSubnetFilteringGuardDutyEnforced

func (o AviatrixGatewayOutput) PublicSubnetFilteringGuardDutyEnforced() pulumi.BoolPtrOutput

Whether to enforce Guard Duty IP blocking. Only valid when `enablePublicSubnetFiltering` attribute is true. Valid values: true or false. Default value: true. Available as of provider version R2.18+.

func (AviatrixGatewayOutput) PublicSubnetFilteringHaRouteTables

func (o AviatrixGatewayOutput) PublicSubnetFilteringHaRouteTables() pulumi.StringArrayOutput

Route tables whose associated public subnets are protected for the HA PSF gateway. Required when `enablePublicSubnetFiltering` and `peeringHaSubnet` are set. Available as of provider version R2.18+.

func (AviatrixGatewayOutput) PublicSubnetFilteringRouteTables

func (o AviatrixGatewayOutput) PublicSubnetFilteringRouteTables() pulumi.StringArrayOutput

Route tables whose associated public subnets are protected. Only valid when `enablePublicSubnetFiltering` attribute is true. Available as of provider version R2.18+.

func (AviatrixGatewayOutput) RenegotiationInterval

func (o AviatrixGatewayOutput) RenegotiationInterval() pulumi.IntPtrOutput

It sets the value (seconds) of the [renegotiation interval](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This renegotiation interval feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300. Available in provider version R2.17.1+.

func (AviatrixGatewayOutput) RxQueueSize

Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.

func (AviatrixGatewayOutput) SamlEnabled

func (o AviatrixGatewayOutput) SamlEnabled() pulumi.BoolPtrOutput

Enable/disable SAML. This field is available in Controller version 3.3 or later release. Valid values: true, false. Default value: false.

func (AviatrixGatewayOutput) SearchDomains

func (o AviatrixGatewayOutput) SearchDomains() pulumi.StringPtrOutput

A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.

func (AviatrixGatewayOutput) SecurityGroupId

func (o AviatrixGatewayOutput) SecurityGroupId() pulumi.StringOutput

Security group used for the gateway.

func (AviatrixGatewayOutput) SingleAzHa

If enabled, Controller monitors the health of the gateway and restarts the gateway if it becomes unreachable. Valid values: true, false. Default value: false.

func (AviatrixGatewayOutput) SingleIpSnat

func (o AviatrixGatewayOutput) SingleIpSnat() pulumi.BoolPtrOutput

Enable Source NAT in "single ip" mode for this gateway. Valid values: true, false. Default value: false. **NOTE: If using SNAT for FQDN use-case, please see notes here.**

func (AviatrixGatewayOutput) SoftwareVersion

func (o AviatrixGatewayOutput) SoftwareVersion() pulumi.StringOutput

The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixGatewayOutput) SplitTunnel

func (o AviatrixGatewayOutput) SplitTunnel() pulumi.BoolPtrOutput

Enable/disable Split Tunnel Mode. Valid values: true, false. Default value: true. Please see [here](https://docs.aviatrix.com/HowTos/gateway.html#split-tunnel-mode) for more information on split tunnel.

func (AviatrixGatewayOutput) SpotPrice

Price for spot instance. NOT supported for production deployment.

func (AviatrixGatewayOutput) Subnet

A VPC network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**

func (AviatrixGatewayOutput) TagLists deprecated

(Optional) Tag list of the gateway instance. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov and AzureChina gateways. Example: ["key1:value1", "key2:value2"]. * `storageName` (Optional) Specify a storage account. Required if `cloudType` is 2048 (AzureChina). Removed in Provider version 2.21.0+.

Deprecated: Use tags instead.

func (AviatrixGatewayOutput) Tags

Map of tags to assign to the gateway. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.

func (AviatrixGatewayOutput) ToAviatrixGatewayOutput

func (o AviatrixGatewayOutput) ToAviatrixGatewayOutput() AviatrixGatewayOutput

func (AviatrixGatewayOutput) ToAviatrixGatewayOutputWithContext

func (o AviatrixGatewayOutput) ToAviatrixGatewayOutputWithContext(ctx context.Context) AviatrixGatewayOutput

func (AviatrixGatewayOutput) TunnelDetectionTime

func (o AviatrixGatewayOutput) TunnelDetectionTime() pulumi.IntOutput

The IPSec tunnel down detection time for the Gateway.

func (AviatrixGatewayOutput) VpcId

VPC ID/VNet name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".

func (AviatrixGatewayOutput) VpcReg

VPC region the gateway will be created in. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".

func (AviatrixGatewayOutput) VpnAccess

Enable [user access through VPN](https://docs.aviatrix.com/HowTos/gateway.html#vpn-access) to this gateway. Valid values: true, false.

func (AviatrixGatewayOutput) VpnCidr

VPN CIDR block for the gateway. Required if `vpnAccess` is true. Example: "192.168.43.0/24".

func (AviatrixGatewayOutput) VpnProtocol

func (o AviatrixGatewayOutput) VpnProtocol() pulumi.StringOutput

Transport mode for VPN connection. All `cloudTypes` support TCP with ELB, and UDP without ELB. AWS(1) additionally supports UDP with ELB. Valid values: "TCP", "UDP". If not specified, "TCP" will be used.

func (AviatrixGatewayOutput) Zone

Availability Zone. Only available for Azure and Public Subnet Filtering gateway. Available for Azure as of provider version R2.17+.

type AviatrixGatewaySnat

type AviatrixGatewaySnat struct {
	pulumi.CustomResourceState

	// Computed attribute to store the previous connection policy.
	ConnectionPolicies AviatrixGatewaySnatConnectionPolicyArrayOutput `pulumi:"connectionPolicies"`
	// Name of the Aviatrix gateway the custom SNAT will be configured for.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Computed attribute to store the previous interface policy.
	InterfacePolicies AviatrixGatewaySnatInterfacePolicyArrayOutput `pulumi:"interfacePolicies"`
	// NAT mode. Valid values: "customizedSnat". Default value: "customizedSnat".
	SnatMode pulumi.StringPtrOutput `pulumi:"snatMode"`
	// Policy rule applied for enabling source NAT (mode: "customizedSnat"). Currently only supports AWS(1) and Azure(8).
	SnatPolicies AviatrixGatewaySnatSnatPolicyArrayOutput `pulumi:"snatPolicies"`
	// Sync the policies to the HA gateway. Valid values: true, false. Default: false.
	SyncToHa pulumi.BoolPtrOutput `pulumi:"syncToHa"`
}

## Import

**gateway_snat** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixGatewaySnat:AviatrixGatewaySnat test gw_name

```

func GetAviatrixGatewaySnat

func GetAviatrixGatewaySnat(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixGatewaySnatState, opts ...pulumi.ResourceOption) (*AviatrixGatewaySnat, error)

GetAviatrixGatewaySnat gets an existing AviatrixGatewaySnat 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 NewAviatrixGatewaySnat

func NewAviatrixGatewaySnat(ctx *pulumi.Context,
	name string, args *AviatrixGatewaySnatArgs, opts ...pulumi.ResourceOption) (*AviatrixGatewaySnat, error)

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

func (*AviatrixGatewaySnat) ElementType

func (*AviatrixGatewaySnat) ElementType() reflect.Type

func (*AviatrixGatewaySnat) ToAviatrixGatewaySnatOutput

func (i *AviatrixGatewaySnat) ToAviatrixGatewaySnatOutput() AviatrixGatewaySnatOutput

func (*AviatrixGatewaySnat) ToAviatrixGatewaySnatOutputWithContext

func (i *AviatrixGatewaySnat) ToAviatrixGatewaySnatOutputWithContext(ctx context.Context) AviatrixGatewaySnatOutput

type AviatrixGatewaySnatArgs

type AviatrixGatewaySnatArgs struct {
	// Name of the Aviatrix gateway the custom SNAT will be configured for.
	GwName pulumi.StringInput
	// NAT mode. Valid values: "customizedSnat". Default value: "customizedSnat".
	SnatMode pulumi.StringPtrInput
	// Policy rule applied for enabling source NAT (mode: "customizedSnat"). Currently only supports AWS(1) and Azure(8).
	SnatPolicies AviatrixGatewaySnatSnatPolicyArrayInput
	// Sync the policies to the HA gateway. Valid values: true, false. Default: false.
	SyncToHa pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixGatewaySnat resource.

func (AviatrixGatewaySnatArgs) ElementType

func (AviatrixGatewaySnatArgs) ElementType() reflect.Type

type AviatrixGatewaySnatArray

type AviatrixGatewaySnatArray []AviatrixGatewaySnatInput

func (AviatrixGatewaySnatArray) ElementType

func (AviatrixGatewaySnatArray) ElementType() reflect.Type

func (AviatrixGatewaySnatArray) ToAviatrixGatewaySnatArrayOutput

func (i AviatrixGatewaySnatArray) ToAviatrixGatewaySnatArrayOutput() AviatrixGatewaySnatArrayOutput

func (AviatrixGatewaySnatArray) ToAviatrixGatewaySnatArrayOutputWithContext

func (i AviatrixGatewaySnatArray) ToAviatrixGatewaySnatArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatArrayOutput

type AviatrixGatewaySnatArrayInput

type AviatrixGatewaySnatArrayInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatArrayOutput() AviatrixGatewaySnatArrayOutput
	ToAviatrixGatewaySnatArrayOutputWithContext(context.Context) AviatrixGatewaySnatArrayOutput
}

AviatrixGatewaySnatArrayInput is an input type that accepts AviatrixGatewaySnatArray and AviatrixGatewaySnatArrayOutput values. You can construct a concrete instance of `AviatrixGatewaySnatArrayInput` via:

AviatrixGatewaySnatArray{ AviatrixGatewaySnatArgs{...} }

type AviatrixGatewaySnatArrayOutput

type AviatrixGatewaySnatArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatArrayOutput) ElementType

func (AviatrixGatewaySnatArrayOutput) Index

func (AviatrixGatewaySnatArrayOutput) ToAviatrixGatewaySnatArrayOutput

func (o AviatrixGatewaySnatArrayOutput) ToAviatrixGatewaySnatArrayOutput() AviatrixGatewaySnatArrayOutput

func (AviatrixGatewaySnatArrayOutput) ToAviatrixGatewaySnatArrayOutputWithContext

func (o AviatrixGatewaySnatArrayOutput) ToAviatrixGatewaySnatArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatArrayOutput

type AviatrixGatewaySnatConnectionPolicy

type AviatrixGatewaySnatConnectionPolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol *string `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps *string `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort *string `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewaySnatConnectionPolicyArgs

type AviatrixGatewaySnatConnectionPolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps pulumi.StringPtrInput `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort pulumi.StringPtrInput `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewaySnatConnectionPolicyArgs) ElementType

func (AviatrixGatewaySnatConnectionPolicyArgs) ToAviatrixGatewaySnatConnectionPolicyOutput

func (i AviatrixGatewaySnatConnectionPolicyArgs) ToAviatrixGatewaySnatConnectionPolicyOutput() AviatrixGatewaySnatConnectionPolicyOutput

func (AviatrixGatewaySnatConnectionPolicyArgs) ToAviatrixGatewaySnatConnectionPolicyOutputWithContext

func (i AviatrixGatewaySnatConnectionPolicyArgs) ToAviatrixGatewaySnatConnectionPolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatConnectionPolicyOutput

type AviatrixGatewaySnatConnectionPolicyArray

type AviatrixGatewaySnatConnectionPolicyArray []AviatrixGatewaySnatConnectionPolicyInput

func (AviatrixGatewaySnatConnectionPolicyArray) ElementType

func (AviatrixGatewaySnatConnectionPolicyArray) ToAviatrixGatewaySnatConnectionPolicyArrayOutput

func (i AviatrixGatewaySnatConnectionPolicyArray) ToAviatrixGatewaySnatConnectionPolicyArrayOutput() AviatrixGatewaySnatConnectionPolicyArrayOutput

func (AviatrixGatewaySnatConnectionPolicyArray) ToAviatrixGatewaySnatConnectionPolicyArrayOutputWithContext

func (i AviatrixGatewaySnatConnectionPolicyArray) ToAviatrixGatewaySnatConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatConnectionPolicyArrayOutput

type AviatrixGatewaySnatConnectionPolicyArrayInput

type AviatrixGatewaySnatConnectionPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatConnectionPolicyArrayOutput() AviatrixGatewaySnatConnectionPolicyArrayOutput
	ToAviatrixGatewaySnatConnectionPolicyArrayOutputWithContext(context.Context) AviatrixGatewaySnatConnectionPolicyArrayOutput
}

AviatrixGatewaySnatConnectionPolicyArrayInput is an input type that accepts AviatrixGatewaySnatConnectionPolicyArray and AviatrixGatewaySnatConnectionPolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewaySnatConnectionPolicyArrayInput` via:

AviatrixGatewaySnatConnectionPolicyArray{ AviatrixGatewaySnatConnectionPolicyArgs{...} }

type AviatrixGatewaySnatConnectionPolicyArrayOutput

type AviatrixGatewaySnatConnectionPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatConnectionPolicyArrayOutput) ElementType

func (AviatrixGatewaySnatConnectionPolicyArrayOutput) Index

func (AviatrixGatewaySnatConnectionPolicyArrayOutput) ToAviatrixGatewaySnatConnectionPolicyArrayOutput

func (o AviatrixGatewaySnatConnectionPolicyArrayOutput) ToAviatrixGatewaySnatConnectionPolicyArrayOutput() AviatrixGatewaySnatConnectionPolicyArrayOutput

func (AviatrixGatewaySnatConnectionPolicyArrayOutput) ToAviatrixGatewaySnatConnectionPolicyArrayOutputWithContext

func (o AviatrixGatewaySnatConnectionPolicyArrayOutput) ToAviatrixGatewaySnatConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatConnectionPolicyArrayOutput

type AviatrixGatewaySnatConnectionPolicyInput

type AviatrixGatewaySnatConnectionPolicyInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatConnectionPolicyOutput() AviatrixGatewaySnatConnectionPolicyOutput
	ToAviatrixGatewaySnatConnectionPolicyOutputWithContext(context.Context) AviatrixGatewaySnatConnectionPolicyOutput
}

AviatrixGatewaySnatConnectionPolicyInput is an input type that accepts AviatrixGatewaySnatConnectionPolicyArgs and AviatrixGatewaySnatConnectionPolicyOutput values. You can construct a concrete instance of `AviatrixGatewaySnatConnectionPolicyInput` via:

AviatrixGatewaySnatConnectionPolicyArgs{...}

type AviatrixGatewaySnatConnectionPolicyOutput

type AviatrixGatewaySnatConnectionPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatConnectionPolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.

func (AviatrixGatewaySnatConnectionPolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewaySnatConnectionPolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatConnectionPolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatConnectionPolicyOutput) ElementType

func (AviatrixGatewaySnatConnectionPolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewaySnatConnectionPolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewaySnatConnectionPolicyOutput) Mark

This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatConnectionPolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.

func (AviatrixGatewaySnatConnectionPolicyOutput) SnatIps

This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatConnectionPolicyOutput) SnatPort

This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatConnectionPolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatConnectionPolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatConnectionPolicyOutput) ToAviatrixGatewaySnatConnectionPolicyOutput

func (o AviatrixGatewaySnatConnectionPolicyOutput) ToAviatrixGatewaySnatConnectionPolicyOutput() AviatrixGatewaySnatConnectionPolicyOutput

func (AviatrixGatewaySnatConnectionPolicyOutput) ToAviatrixGatewaySnatConnectionPolicyOutputWithContext

func (o AviatrixGatewaySnatConnectionPolicyOutput) ToAviatrixGatewaySnatConnectionPolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatConnectionPolicyOutput

type AviatrixGatewaySnatInput

type AviatrixGatewaySnatInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatOutput() AviatrixGatewaySnatOutput
	ToAviatrixGatewaySnatOutputWithContext(ctx context.Context) AviatrixGatewaySnatOutput
}

type AviatrixGatewaySnatInterfacePolicy

type AviatrixGatewaySnatInterfacePolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol *string `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps *string `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort *string `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewaySnatInterfacePolicyArgs

type AviatrixGatewaySnatInterfacePolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps pulumi.StringPtrInput `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort pulumi.StringPtrInput `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewaySnatInterfacePolicyArgs) ElementType

func (AviatrixGatewaySnatInterfacePolicyArgs) ToAviatrixGatewaySnatInterfacePolicyOutput

func (i AviatrixGatewaySnatInterfacePolicyArgs) ToAviatrixGatewaySnatInterfacePolicyOutput() AviatrixGatewaySnatInterfacePolicyOutput

func (AviatrixGatewaySnatInterfacePolicyArgs) ToAviatrixGatewaySnatInterfacePolicyOutputWithContext

func (i AviatrixGatewaySnatInterfacePolicyArgs) ToAviatrixGatewaySnatInterfacePolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatInterfacePolicyOutput

type AviatrixGatewaySnatInterfacePolicyArray

type AviatrixGatewaySnatInterfacePolicyArray []AviatrixGatewaySnatInterfacePolicyInput

func (AviatrixGatewaySnatInterfacePolicyArray) ElementType

func (AviatrixGatewaySnatInterfacePolicyArray) ToAviatrixGatewaySnatInterfacePolicyArrayOutput

func (i AviatrixGatewaySnatInterfacePolicyArray) ToAviatrixGatewaySnatInterfacePolicyArrayOutput() AviatrixGatewaySnatInterfacePolicyArrayOutput

func (AviatrixGatewaySnatInterfacePolicyArray) ToAviatrixGatewaySnatInterfacePolicyArrayOutputWithContext

func (i AviatrixGatewaySnatInterfacePolicyArray) ToAviatrixGatewaySnatInterfacePolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatInterfacePolicyArrayOutput

type AviatrixGatewaySnatInterfacePolicyArrayInput

type AviatrixGatewaySnatInterfacePolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatInterfacePolicyArrayOutput() AviatrixGatewaySnatInterfacePolicyArrayOutput
	ToAviatrixGatewaySnatInterfacePolicyArrayOutputWithContext(context.Context) AviatrixGatewaySnatInterfacePolicyArrayOutput
}

AviatrixGatewaySnatInterfacePolicyArrayInput is an input type that accepts AviatrixGatewaySnatInterfacePolicyArray and AviatrixGatewaySnatInterfacePolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewaySnatInterfacePolicyArrayInput` via:

AviatrixGatewaySnatInterfacePolicyArray{ AviatrixGatewaySnatInterfacePolicyArgs{...} }

type AviatrixGatewaySnatInterfacePolicyArrayOutput

type AviatrixGatewaySnatInterfacePolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatInterfacePolicyArrayOutput) ElementType

func (AviatrixGatewaySnatInterfacePolicyArrayOutput) Index

func (AviatrixGatewaySnatInterfacePolicyArrayOutput) ToAviatrixGatewaySnatInterfacePolicyArrayOutput

func (o AviatrixGatewaySnatInterfacePolicyArrayOutput) ToAviatrixGatewaySnatInterfacePolicyArrayOutput() AviatrixGatewaySnatInterfacePolicyArrayOutput

func (AviatrixGatewaySnatInterfacePolicyArrayOutput) ToAviatrixGatewaySnatInterfacePolicyArrayOutputWithContext

func (o AviatrixGatewaySnatInterfacePolicyArrayOutput) ToAviatrixGatewaySnatInterfacePolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatInterfacePolicyArrayOutput

type AviatrixGatewaySnatInterfacePolicyInput

type AviatrixGatewaySnatInterfacePolicyInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatInterfacePolicyOutput() AviatrixGatewaySnatInterfacePolicyOutput
	ToAviatrixGatewaySnatInterfacePolicyOutputWithContext(context.Context) AviatrixGatewaySnatInterfacePolicyOutput
}

AviatrixGatewaySnatInterfacePolicyInput is an input type that accepts AviatrixGatewaySnatInterfacePolicyArgs and AviatrixGatewaySnatInterfacePolicyOutput values. You can construct a concrete instance of `AviatrixGatewaySnatInterfacePolicyInput` via:

AviatrixGatewaySnatInterfacePolicyArgs{...}

type AviatrixGatewaySnatInterfacePolicyOutput

type AviatrixGatewaySnatInterfacePolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatInterfacePolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.

func (AviatrixGatewaySnatInterfacePolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewaySnatInterfacePolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatInterfacePolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatInterfacePolicyOutput) ElementType

func (AviatrixGatewaySnatInterfacePolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewaySnatInterfacePolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewaySnatInterfacePolicyOutput) Mark

This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatInterfacePolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.

func (AviatrixGatewaySnatInterfacePolicyOutput) SnatIps

This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatInterfacePolicyOutput) SnatPort

This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatInterfacePolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatInterfacePolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatInterfacePolicyOutput) ToAviatrixGatewaySnatInterfacePolicyOutput

func (o AviatrixGatewaySnatInterfacePolicyOutput) ToAviatrixGatewaySnatInterfacePolicyOutput() AviatrixGatewaySnatInterfacePolicyOutput

func (AviatrixGatewaySnatInterfacePolicyOutput) ToAviatrixGatewaySnatInterfacePolicyOutputWithContext

func (o AviatrixGatewaySnatInterfacePolicyOutput) ToAviatrixGatewaySnatInterfacePolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatInterfacePolicyOutput

type AviatrixGatewaySnatMap

type AviatrixGatewaySnatMap map[string]AviatrixGatewaySnatInput

func (AviatrixGatewaySnatMap) ElementType

func (AviatrixGatewaySnatMap) ElementType() reflect.Type

func (AviatrixGatewaySnatMap) ToAviatrixGatewaySnatMapOutput

func (i AviatrixGatewaySnatMap) ToAviatrixGatewaySnatMapOutput() AviatrixGatewaySnatMapOutput

func (AviatrixGatewaySnatMap) ToAviatrixGatewaySnatMapOutputWithContext

func (i AviatrixGatewaySnatMap) ToAviatrixGatewaySnatMapOutputWithContext(ctx context.Context) AviatrixGatewaySnatMapOutput

type AviatrixGatewaySnatMapInput

type AviatrixGatewaySnatMapInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatMapOutput() AviatrixGatewaySnatMapOutput
	ToAviatrixGatewaySnatMapOutputWithContext(context.Context) AviatrixGatewaySnatMapOutput
}

AviatrixGatewaySnatMapInput is an input type that accepts AviatrixGatewaySnatMap and AviatrixGatewaySnatMapOutput values. You can construct a concrete instance of `AviatrixGatewaySnatMapInput` via:

AviatrixGatewaySnatMap{ "key": AviatrixGatewaySnatArgs{...} }

type AviatrixGatewaySnatMapOutput

type AviatrixGatewaySnatMapOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatMapOutput) ElementType

func (AviatrixGatewaySnatMapOutput) MapIndex

func (AviatrixGatewaySnatMapOutput) ToAviatrixGatewaySnatMapOutput

func (o AviatrixGatewaySnatMapOutput) ToAviatrixGatewaySnatMapOutput() AviatrixGatewaySnatMapOutput

func (AviatrixGatewaySnatMapOutput) ToAviatrixGatewaySnatMapOutputWithContext

func (o AviatrixGatewaySnatMapOutput) ToAviatrixGatewaySnatMapOutputWithContext(ctx context.Context) AviatrixGatewaySnatMapOutput

type AviatrixGatewaySnatOutput

type AviatrixGatewaySnatOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatOutput) ConnectionPolicies

Computed attribute to store the previous connection policy.

func (AviatrixGatewaySnatOutput) ElementType

func (AviatrixGatewaySnatOutput) ElementType() reflect.Type

func (AviatrixGatewaySnatOutput) GwName

Name of the Aviatrix gateway the custom SNAT will be configured for.

func (AviatrixGatewaySnatOutput) InterfacePolicies

Computed attribute to store the previous interface policy.

func (AviatrixGatewaySnatOutput) SnatMode

NAT mode. Valid values: "customizedSnat". Default value: "customizedSnat".

func (AviatrixGatewaySnatOutput) SnatPolicies

Policy rule applied for enabling source NAT (mode: "customizedSnat"). Currently only supports AWS(1) and Azure(8).

func (AviatrixGatewaySnatOutput) SyncToHa

Sync the policies to the HA gateway. Valid values: true, false. Default: false.

func (AviatrixGatewaySnatOutput) ToAviatrixGatewaySnatOutput

func (o AviatrixGatewaySnatOutput) ToAviatrixGatewaySnatOutput() AviatrixGatewaySnatOutput

func (AviatrixGatewaySnatOutput) ToAviatrixGatewaySnatOutputWithContext

func (o AviatrixGatewaySnatOutput) ToAviatrixGatewaySnatOutputWithContext(ctx context.Context) AviatrixGatewaySnatOutput

type AviatrixGatewaySnatSnatPolicy

type AviatrixGatewaySnatSnatPolicy struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry *bool `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection *string `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr *string `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort *string `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb *string `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface *string `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark *string `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol *string `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps *string `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort *string `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr *string `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort *string `pulumi:"srcPort"`
}

type AviatrixGatewaySnatSnatPolicyArgs

type AviatrixGatewaySnatSnatPolicyArgs struct {
	// This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.
	ApplyRouteEntry pulumi.BoolPtrInput `pulumi:"applyRouteEntry"`
	// This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".
	Connection pulumi.StringPtrInput `pulumi:"connection"`
	// This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.
	DstCidr pulumi.StringPtrInput `pulumi:"dstCidr"`
	// This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.
	DstPort pulumi.StringPtrInput `pulumi:"dstPort"`
	// This field specifies which VPC private route table will not be programmed with the default route entry.
	ExcludeRtb pulumi.StringPtrInput `pulumi:"excludeRtb"`
	// This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.
	Mark pulumi.StringPtrInput `pulumi:"mark"`
	// This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatIps pulumi.StringPtrInput `pulumi:"snatIps"`
	// This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.
	SnatPort pulumi.StringPtrInput `pulumi:"snatPort"`
	// This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.
	SrcCidr pulumi.StringPtrInput `pulumi:"srcCidr"`
	// This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.
	SrcPort pulumi.StringPtrInput `pulumi:"srcPort"`
}

func (AviatrixGatewaySnatSnatPolicyArgs) ElementType

func (AviatrixGatewaySnatSnatPolicyArgs) ToAviatrixGatewaySnatSnatPolicyOutput

func (i AviatrixGatewaySnatSnatPolicyArgs) ToAviatrixGatewaySnatSnatPolicyOutput() AviatrixGatewaySnatSnatPolicyOutput

func (AviatrixGatewaySnatSnatPolicyArgs) ToAviatrixGatewaySnatSnatPolicyOutputWithContext

func (i AviatrixGatewaySnatSnatPolicyArgs) ToAviatrixGatewaySnatSnatPolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatSnatPolicyOutput

type AviatrixGatewaySnatSnatPolicyArray

type AviatrixGatewaySnatSnatPolicyArray []AviatrixGatewaySnatSnatPolicyInput

func (AviatrixGatewaySnatSnatPolicyArray) ElementType

func (AviatrixGatewaySnatSnatPolicyArray) ToAviatrixGatewaySnatSnatPolicyArrayOutput

func (i AviatrixGatewaySnatSnatPolicyArray) ToAviatrixGatewaySnatSnatPolicyArrayOutput() AviatrixGatewaySnatSnatPolicyArrayOutput

func (AviatrixGatewaySnatSnatPolicyArray) ToAviatrixGatewaySnatSnatPolicyArrayOutputWithContext

func (i AviatrixGatewaySnatSnatPolicyArray) ToAviatrixGatewaySnatSnatPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatSnatPolicyArrayOutput

type AviatrixGatewaySnatSnatPolicyArrayInput

type AviatrixGatewaySnatSnatPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatSnatPolicyArrayOutput() AviatrixGatewaySnatSnatPolicyArrayOutput
	ToAviatrixGatewaySnatSnatPolicyArrayOutputWithContext(context.Context) AviatrixGatewaySnatSnatPolicyArrayOutput
}

AviatrixGatewaySnatSnatPolicyArrayInput is an input type that accepts AviatrixGatewaySnatSnatPolicyArray and AviatrixGatewaySnatSnatPolicyArrayOutput values. You can construct a concrete instance of `AviatrixGatewaySnatSnatPolicyArrayInput` via:

AviatrixGatewaySnatSnatPolicyArray{ AviatrixGatewaySnatSnatPolicyArgs{...} }

type AviatrixGatewaySnatSnatPolicyArrayOutput

type AviatrixGatewaySnatSnatPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatSnatPolicyArrayOutput) ElementType

func (AviatrixGatewaySnatSnatPolicyArrayOutput) Index

func (AviatrixGatewaySnatSnatPolicyArrayOutput) ToAviatrixGatewaySnatSnatPolicyArrayOutput

func (o AviatrixGatewaySnatSnatPolicyArrayOutput) ToAviatrixGatewaySnatSnatPolicyArrayOutput() AviatrixGatewaySnatSnatPolicyArrayOutput

func (AviatrixGatewaySnatSnatPolicyArrayOutput) ToAviatrixGatewaySnatSnatPolicyArrayOutputWithContext

func (o AviatrixGatewaySnatSnatPolicyArrayOutput) ToAviatrixGatewaySnatSnatPolicyArrayOutputWithContext(ctx context.Context) AviatrixGatewaySnatSnatPolicyArrayOutput

type AviatrixGatewaySnatSnatPolicyInput

type AviatrixGatewaySnatSnatPolicyInput interface {
	pulumi.Input

	ToAviatrixGatewaySnatSnatPolicyOutput() AviatrixGatewaySnatSnatPolicyOutput
	ToAviatrixGatewaySnatSnatPolicyOutputWithContext(context.Context) AviatrixGatewaySnatSnatPolicyOutput
}

AviatrixGatewaySnatSnatPolicyInput is an input type that accepts AviatrixGatewaySnatSnatPolicyArgs and AviatrixGatewaySnatSnatPolicyOutput values. You can construct a concrete instance of `AviatrixGatewaySnatSnatPolicyInput` via:

AviatrixGatewaySnatSnatPolicyArgs{...}

type AviatrixGatewaySnatSnatPolicyOutput

type AviatrixGatewaySnatSnatPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixGatewaySnatSnatPolicyOutput) ApplyRouteEntry

This is an option to program the route entry 'DST CIDR pointing to Aviatrix Gateway' into Cloud platform routing table. Type: Boolean. Default: True. Available as of provider version R2.21.0+.

func (AviatrixGatewaySnatSnatPolicyOutput) Connection

This is a qualifier condition that specifies output connection where the rule applies. Default value: "None".

func (AviatrixGatewaySnatSnatPolicyOutput) DstCidr

This is a qualifier condition that specifies a destination IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatSnatPolicyOutput) DstPort

This is a qualifier condition that specifies a destination port where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatSnatPolicyOutput) ElementType

func (AviatrixGatewaySnatSnatPolicyOutput) ExcludeRtb

This field specifies which VPC private route table will not be programmed with the default route entry.

func (AviatrixGatewaySnatSnatPolicyOutput) Interface

This is a qualifier condition that specifies output interface where the rule applies. When not specified, this field is not used. Must be empty when `connection` is set.

func (AviatrixGatewaySnatSnatPolicyOutput) Mark

This is a qualifier condition that specifies a tag or mark of a TCP session where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatSnatPolicyOutput) Protocol

This is a qualifier condition that specifies a destination port protocol where the rule applies. Valid values: 'all', 'tcp', 'udp', 'icmp'. 'Default: 'all'.

func (AviatrixGatewaySnatSnatPolicyOutput) SnatIps

This is a rule field that specifies the changed source IP address when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatSnatPolicyOutput) SnatPort

This is a rule field that specifies the changed source port when all specified qualifier conditions meet. When not specified, this field is not used. One of the rule fields must be specified for this rule to take effect.

func (AviatrixGatewaySnatSnatPolicyOutput) SrcCidr

This is a qualifier condition that specifies a source IP address range where the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatSnatPolicyOutput) SrcPort

This is a qualifier condition that specifies a source port that the rule applies. When not specified, this field is not used.

func (AviatrixGatewaySnatSnatPolicyOutput) ToAviatrixGatewaySnatSnatPolicyOutput

func (o AviatrixGatewaySnatSnatPolicyOutput) ToAviatrixGatewaySnatSnatPolicyOutput() AviatrixGatewaySnatSnatPolicyOutput

func (AviatrixGatewaySnatSnatPolicyOutput) ToAviatrixGatewaySnatSnatPolicyOutputWithContext

func (o AviatrixGatewaySnatSnatPolicyOutput) ToAviatrixGatewaySnatSnatPolicyOutputWithContext(ctx context.Context) AviatrixGatewaySnatSnatPolicyOutput

type AviatrixGatewaySnatState

type AviatrixGatewaySnatState struct {
	// Computed attribute to store the previous connection policy.
	ConnectionPolicies AviatrixGatewaySnatConnectionPolicyArrayInput
	// Name of the Aviatrix gateway the custom SNAT will be configured for.
	GwName pulumi.StringPtrInput
	// Computed attribute to store the previous interface policy.
	InterfacePolicies AviatrixGatewaySnatInterfacePolicyArrayInput
	// NAT mode. Valid values: "customizedSnat". Default value: "customizedSnat".
	SnatMode pulumi.StringPtrInput
	// Policy rule applied for enabling source NAT (mode: "customizedSnat"). Currently only supports AWS(1) and Azure(8).
	SnatPolicies AviatrixGatewaySnatSnatPolicyArrayInput
	// Sync the policies to the HA gateway. Valid values: true, false. Default: false.
	SyncToHa pulumi.BoolPtrInput
}

func (AviatrixGatewaySnatState) ElementType

func (AviatrixGatewaySnatState) ElementType() reflect.Type

type AviatrixGatewayState

type AviatrixGatewayState struct {
	// Account name. This account will be used to launch Aviatrix gateway.
	AccountName pulumi.StringPtrInput
	// A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.
	AdditionalCidrs pulumi.StringPtrInput
	// A list of CIDR ranges separated by comma to configure when "Designated Gateway" feature is enabled. Example: "10.8.0.0/16,10.9.0.0/16,10.10.0.0/16".
	AdditionalCidrsDesignatedGateway pulumi.StringPtrInput
	// If set to false, use an available address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 2.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the gateway instance. Example: "IP_Name:Resource_Group_Name". Required when `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Cloud instance ID of the gateway.
	CloudInstanceId pulumi.StringPtrInput
	// Cloud service provider to use to launch the gateway. Requires an integer value. Currently supports AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud (8192), AWS Top Secret (16384) and AWS Secret (32768).
	CloudType pulumi.IntPtrInput
	// Customer-managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// API hostname for DUO auth mode. Required: Yes if `otpMode` is "2".
	DuoApiHostname pulumi.StringPtrInput
	// Integration key for DUO auth mode. Required if `otpMode` is "2".
	DuoIntegrationKey pulumi.StringPtrInput
	// Push mode for DUO auth. Required if `otpMode` is "2". Valid values: "auto", "selective" and "token".
	DuoPushMode pulumi.StringPtrInput
	// Secret key for DUO auth mode. Required if `otpMode` is "2".
	DuoSecretKey pulumi.StringPtrInput
	// Specified EIP to use for gateway creation. Required when `allocateNewEip` is false.  Available in Controller version 3.5+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// ELB DNS name.
	ElbDnsName pulumi.StringPtrInput
	// A name for the ELB that is created. If it is not specified, a name is generated automatically.
	ElbName pulumi.StringPtrInput
	// Enable Designated Gateway feature for Gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false. Please view documentation [here](https://docs.aviatrix.com/HowTos/gateway.html#designated-gateway) for more information on this feature.
	EnableDesignatedGateway pulumi.BoolPtrInput
	// Specify whether to enable ELB or not. Not supported for OCI gateways. Valid values: true, false.
	EnableElb pulumi.BoolPtrInput
	// Enable EBS volume encryption for the gateway. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Enable jumbo frames for this gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable/disable LDAP. Valid values: true, false. Default value: false.
	EnableLdap pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.17.1+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Create a [Public Subnet Filtering gateway](https://docs.aviatrix.com/HowTos/public_subnet_filtering_faq.html).
	EnablePublicSubnetFiltering pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Enable VPC DNS Server for gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Enable/disable VPN NAT. Only supported for VPN gateway. Valid values: true, false. Default value: true.
	EnableVpnNat pulumi.BoolPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// If `fqdnLanCidr` is set, the FQDN gateway will be created with an additional LAN interface using the provided CIDR. This attribute is required when enabling FQDN gateway FireNet in Azure or GCP. Available in provider version R2.17.1+.
	FqdnLanCidr pulumi.StringPtrInput
	// The lan interface id of the of FQDN gateway with additional LAN interface. This attribute will be exported when enabling FQDN gateway firenet in Azure. Available in provider version R2.17.1+.
	FqdnLanInterface pulumi.StringPtrInput
	// FQDN LAN VPC ID. This attribute is required when enabling FQDN gateway FireNet in GCP. Available as of provider version R2.18.1+.
	FqdnLanVpcId pulumi.StringPtrInput
	// Name of the Aviatrix gateway to be created.
	GwName pulumi.StringPtrInput
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", GCP: "n1-standard-1", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2".
	GwSize pulumi.StringPtrInput
	// It sets the value (seconds) of the [idle timeout](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This idle timeout feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300.  Available in provider version R2.17.1+.
	IdleTimeout pulumi.IntPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Gateway. Insane Mode gateway size must be at least c5 series (AWS) or Standard_D3_v2 (Azure/AzureGov). If enabled, a valid /26 CIDR segment of the VPC must be specified to create a new subnet. Only supported for AWS, AWSGov, Azure, AzureGov, AWS China, Azure China, AWS Top Secret or AWS Secret.  Valid values: true, false.
	InsaneMode pulumi.BoolPtrInput
	// Region + Availability Zone of subnet being created for Insane Mode gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is set. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// LDAP base DN. Required if `enableLdap` is true.
	LdapBaseDn pulumi.StringPtrInput
	// LDAP bind DN. Required if `enableLdap` is true.
	LdapBindDn pulumi.StringPtrInput
	// LDAP password. Required if `enableLdap` is true.
	LdapPassword pulumi.StringPtrInput
	// LDAP server address. Required if `enableLdap` is true.
	LdapServer pulumi.StringPtrInput
	// LDAP user attribute. Required if `enableLdap` is true.
	LdapUsernameAttribute pulumi.StringPtrInput
	// Maximum number of active VPN users allowed to be connected to this gateway. Required if `vpnAccess` is true. Make sure the number is smaller than the VPN CIDR block. Example: 100. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.14.**
	MaxVpnConn pulumi.StringPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.17.1+.
	MonitorExcludeLists pulumi.StringArrayInput
	// A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.
	NameServers pulumi.StringPtrInput
	// Token for Okta auth mode. Required if `otpMode` is "3".
	OktaToken pulumi.StringPtrInput
	// URL for Okta auth mode. Required if `otpMode` is "3".
	OktaUrl pulumi.StringPtrInput
	// Username suffix for Okta auth mode. Example: "aviatrix.com".
	OktaUsernameSuffix pulumi.StringPtrInput
	// Two step authentication mode. Valid values: "2" for DUO, "3" for Okta.
	OtpMode pulumi.StringPtrInput
	// Peering HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP address resource and its resource group in Azure to be assigned to the HA peering instance. Example: "IP_Name:Resource_Group_Name". Required if `peeringHaEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	PeeringHaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Cloud instance ID of the HA gateway.
	PeeringHaCloudInstanceId pulumi.StringPtrInput
	// Public IP address to be assigned to the HA peering instance. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	PeeringHaEip pulumi.StringPtrInput
	// Peering HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	PeeringHaFaultDomain pulumi.StringPtrInput
	// Aviatrix gateway unique name of HA gateway.
	PeeringHaGwName pulumi.StringPtrInput
	// Size of the Peering HA Gateway to be created. Required if enabling Peering HA. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.8.**
	PeeringHaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	PeeringHaImageVersion pulumi.StringPtrInput
	// Region + Availability Zone of subnet being created for Insane Mode-enabled Peering HA Gateway. Required for AWS only if `insaneMode` is set and `peeringHaSubnet` is set. Example: AWS: "us-west-1a".
	PeeringHaInsaneModeAz pulumi.StringPtrInput
	// Private IP address of HA gateway.
	PeeringHaPrivateIp pulumi.StringPtrInput
	// HA security group used for the gateway.
	PeeringHaSecurityGroupId pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	PeeringHaSoftwareVersion pulumi.StringPtrInput
	// Public subnet CIDR to create Peering HA Gateway in. Required if enabling Peering HA for AWS/AWSGov/AWS Top Secret/AWS Secret/Azure/AzureGov/Alibaba Cloud. Optional if enabling Peering HA for GCP. Example: AWS: "10.0.0.0/16".
	PeeringHaSubnet pulumi.StringPtrInput
	// Zone to create Peering HA Gateway in. Required if enabling Peering HA for GCP. Example: GCP: "us-west1-c". Optional for Azure. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	PeeringHaZone pulumi.StringPtrInput
	// Private IP address of the gateway created.
	PrivateIp pulumi.StringPtrInput
	// DNS server used by the gateway. Default is "8.8.8.8", can be overridden with the VPC's setting.
	PublicDnsServer pulumi.StringPtrInput
	// Whether to enforce Guard Duty IP blocking.  Only valid when `enablePublicSubnetFiltering` attribute is true. Valid values: true or false. Default value: true. Available as of provider version R2.18+.
	PublicSubnetFilteringGuardDutyEnforced pulumi.BoolPtrInput
	// Route tables whose associated public subnets are protected for the HA PSF gateway. Required when `enablePublicSubnetFiltering` and `peeringHaSubnet` are set. Available as of provider version R2.18+.
	PublicSubnetFilteringHaRouteTables pulumi.StringArrayInput
	// Route tables whose associated public subnets are protected. Only valid when `enablePublicSubnetFiltering` attribute is true. Available as of provider version R2.18+.
	PublicSubnetFilteringRouteTables pulumi.StringArrayInput
	// It sets the value (seconds) of the [renegotiation interval](https://docs.aviatrix.com/HowTos/openvpn_faq.html#how-do-i-fix-the-aviatrix-vpn-timing-out-too-quickly). This renegotiation interval feature is enable only if this attribute is set, otherwise it is disabled. The entered value must be an integer number greater than 300. Available in provider version R2.17.1+.
	RenegotiationInterval pulumi.IntPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Enable/disable SAML. This field is available in Controller version 3.3 or later release. Valid values: true, false. Default value: false.
	SamlEnabled pulumi.BoolPtrInput
	// A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.
	SearchDomains pulumi.StringPtrInput
	// Security group used for the gateway.
	SecurityGroupId pulumi.StringPtrInput
	// If enabled, Controller monitors the health of the gateway and restarts the gateway if it becomes unreachable. Valid values: true, false. Default value: false.
	SingleAzHa pulumi.BoolPtrInput
	// Enable Source NAT in "single ip" mode for this gateway. Valid values: true, false. Default value: false. **NOTE: If using SNAT for FQDN use-case, please see notes here.**
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Enable/disable Split Tunnel Mode. Valid values: true, false. Default value: true. Please see [here](https://docs.aviatrix.com/HowTos/gateway.html#split-tunnel-mode) for more information on split tunnel.
	SplitTunnel pulumi.BoolPtrInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringPtrInput
	// (Optional) Tag list of the gateway instance. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov and AzureChina gateways. Example: ["key1:value1", "key2:value2"].
	// * `storageName` (Optional) Specify a storage account. Required if `cloudType` is 2048 (AzureChina). Removed in Provider version 2.21.0+.
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// The IPSec tunnel down detection time for the Gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC ID/VNet name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringPtrInput
	// VPC region the gateway will be created in. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringPtrInput
	// Enable [user access through VPN](https://docs.aviatrix.com/HowTos/gateway.html#vpn-access) to this gateway. Valid values: true, false.
	VpnAccess pulumi.BoolPtrInput
	// VPN CIDR block for the gateway. Required if `vpnAccess` is true. Example: "192.168.43.0/24".
	VpnCidr pulumi.StringPtrInput
	// Transport mode for VPN connection. All `cloudTypes` support TCP with ELB, and UDP without ELB. AWS(1) additionally supports UDP with ELB. Valid values: "TCP", "UDP". If not specified, "TCP" will be used.
	VpnProtocol pulumi.StringPtrInput
	// Availability Zone. Only available for Azure and Public Subnet Filtering gateway. Available for Azure as of provider version R2.17+.
	Zone pulumi.StringPtrInput
}

func (AviatrixGatewayState) ElementType

func (AviatrixGatewayState) ElementType() reflect.Type

type AviatrixGeoVpn

type AviatrixGeoVpn struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Type of cloud service provider, requires an integer value. Currently only AWS(1) is supported.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// The hosted domain name. It must be hosted by AWS Route53 or Azure DNS in the selected account.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// List of ELB names to attach to this Geo VPN name.
	ElbDnsNames pulumi.StringArrayOutput `pulumi:"elbDnsNames"`
	// The hostname that users will connect to. A DNS record will be created for this name in the specified domain name.
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

The **aviatrix_geo_vpn** resource enables and manages the [Aviatrix Geo VPN feature](https://docs.aviatrix.com/HowTos/GeoVPN.html).

> **NOTE:** If ELBs/gateways are being managed by the Geo VPN, in order to update VPN configurations of the Geo VPN, all the VPN configurations of the ELBs/gateways must be updated simultaneously and share the same values. This can be achieved by managing the VPN configurations through variables and updating their values accordingly.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixGeoVpn(ctx, "testGeoVpn", &aviatrix.AviatrixGeoVpnArgs{
			AccountName: pulumi.String("devops-aws"),
			CloudType:   pulumi.Int(1),
			DomainName:  pulumi.String("aviatrix.live"),
			ElbDnsNames: pulumi.StringArray{
				pulumi.String("elb-test1-497f5e89.elb.us-west-1.amazonaws.com"),
				pulumi.String("elb-test2-974f895e.elb.us-east-2.amazonaws.com"),
			},
			ServiceName: pulumi.String("vpn"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**geo_vpn** can be imported using the `service_name` and `domain_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixGeoVpn:AviatrixGeoVpn test service_name~domain_name

```

func GetAviatrixGeoVpn

func GetAviatrixGeoVpn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixGeoVpnState, opts ...pulumi.ResourceOption) (*AviatrixGeoVpn, error)

GetAviatrixGeoVpn gets an existing AviatrixGeoVpn 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 NewAviatrixGeoVpn

func NewAviatrixGeoVpn(ctx *pulumi.Context,
	name string, args *AviatrixGeoVpnArgs, opts ...pulumi.ResourceOption) (*AviatrixGeoVpn, error)

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

func (*AviatrixGeoVpn) ElementType

func (*AviatrixGeoVpn) ElementType() reflect.Type

func (*AviatrixGeoVpn) ToAviatrixGeoVpnOutput

func (i *AviatrixGeoVpn) ToAviatrixGeoVpnOutput() AviatrixGeoVpnOutput

func (*AviatrixGeoVpn) ToAviatrixGeoVpnOutputWithContext

func (i *AviatrixGeoVpn) ToAviatrixGeoVpnOutputWithContext(ctx context.Context) AviatrixGeoVpnOutput

type AviatrixGeoVpnArgs

type AviatrixGeoVpnArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1) is supported.
	CloudType pulumi.IntInput
	// The hosted domain name. It must be hosted by AWS Route53 or Azure DNS in the selected account.
	DomainName pulumi.StringInput
	// List of ELB names to attach to this Geo VPN name.
	ElbDnsNames pulumi.StringArrayInput
	// The hostname that users will connect to. A DNS record will be created for this name in the specified domain name.
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a AviatrixGeoVpn resource.

func (AviatrixGeoVpnArgs) ElementType

func (AviatrixGeoVpnArgs) ElementType() reflect.Type

type AviatrixGeoVpnArray

type AviatrixGeoVpnArray []AviatrixGeoVpnInput

func (AviatrixGeoVpnArray) ElementType

func (AviatrixGeoVpnArray) ElementType() reflect.Type

func (AviatrixGeoVpnArray) ToAviatrixGeoVpnArrayOutput

func (i AviatrixGeoVpnArray) ToAviatrixGeoVpnArrayOutput() AviatrixGeoVpnArrayOutput

func (AviatrixGeoVpnArray) ToAviatrixGeoVpnArrayOutputWithContext

func (i AviatrixGeoVpnArray) ToAviatrixGeoVpnArrayOutputWithContext(ctx context.Context) AviatrixGeoVpnArrayOutput

type AviatrixGeoVpnArrayInput

type AviatrixGeoVpnArrayInput interface {
	pulumi.Input

	ToAviatrixGeoVpnArrayOutput() AviatrixGeoVpnArrayOutput
	ToAviatrixGeoVpnArrayOutputWithContext(context.Context) AviatrixGeoVpnArrayOutput
}

AviatrixGeoVpnArrayInput is an input type that accepts AviatrixGeoVpnArray and AviatrixGeoVpnArrayOutput values. You can construct a concrete instance of `AviatrixGeoVpnArrayInput` via:

AviatrixGeoVpnArray{ AviatrixGeoVpnArgs{...} }

type AviatrixGeoVpnArrayOutput

type AviatrixGeoVpnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixGeoVpnArrayOutput) ElementType

func (AviatrixGeoVpnArrayOutput) ElementType() reflect.Type

func (AviatrixGeoVpnArrayOutput) Index

func (AviatrixGeoVpnArrayOutput) ToAviatrixGeoVpnArrayOutput

func (o AviatrixGeoVpnArrayOutput) ToAviatrixGeoVpnArrayOutput() AviatrixGeoVpnArrayOutput

func (AviatrixGeoVpnArrayOutput) ToAviatrixGeoVpnArrayOutputWithContext

func (o AviatrixGeoVpnArrayOutput) ToAviatrixGeoVpnArrayOutputWithContext(ctx context.Context) AviatrixGeoVpnArrayOutput

type AviatrixGeoVpnInput

type AviatrixGeoVpnInput interface {
	pulumi.Input

	ToAviatrixGeoVpnOutput() AviatrixGeoVpnOutput
	ToAviatrixGeoVpnOutputWithContext(ctx context.Context) AviatrixGeoVpnOutput
}

type AviatrixGeoVpnMap

type AviatrixGeoVpnMap map[string]AviatrixGeoVpnInput

func (AviatrixGeoVpnMap) ElementType

func (AviatrixGeoVpnMap) ElementType() reflect.Type

func (AviatrixGeoVpnMap) ToAviatrixGeoVpnMapOutput

func (i AviatrixGeoVpnMap) ToAviatrixGeoVpnMapOutput() AviatrixGeoVpnMapOutput

func (AviatrixGeoVpnMap) ToAviatrixGeoVpnMapOutputWithContext

func (i AviatrixGeoVpnMap) ToAviatrixGeoVpnMapOutputWithContext(ctx context.Context) AviatrixGeoVpnMapOutput

type AviatrixGeoVpnMapInput

type AviatrixGeoVpnMapInput interface {
	pulumi.Input

	ToAviatrixGeoVpnMapOutput() AviatrixGeoVpnMapOutput
	ToAviatrixGeoVpnMapOutputWithContext(context.Context) AviatrixGeoVpnMapOutput
}

AviatrixGeoVpnMapInput is an input type that accepts AviatrixGeoVpnMap and AviatrixGeoVpnMapOutput values. You can construct a concrete instance of `AviatrixGeoVpnMapInput` via:

AviatrixGeoVpnMap{ "key": AviatrixGeoVpnArgs{...} }

type AviatrixGeoVpnMapOutput

type AviatrixGeoVpnMapOutput struct{ *pulumi.OutputState }

func (AviatrixGeoVpnMapOutput) ElementType

func (AviatrixGeoVpnMapOutput) ElementType() reflect.Type

func (AviatrixGeoVpnMapOutput) MapIndex

func (AviatrixGeoVpnMapOutput) ToAviatrixGeoVpnMapOutput

func (o AviatrixGeoVpnMapOutput) ToAviatrixGeoVpnMapOutput() AviatrixGeoVpnMapOutput

func (AviatrixGeoVpnMapOutput) ToAviatrixGeoVpnMapOutputWithContext

func (o AviatrixGeoVpnMapOutput) ToAviatrixGeoVpnMapOutputWithContext(ctx context.Context) AviatrixGeoVpnMapOutput

type AviatrixGeoVpnOutput

type AviatrixGeoVpnOutput struct{ *pulumi.OutputState }

func (AviatrixGeoVpnOutput) AccountName

func (o AviatrixGeoVpnOutput) AccountName() pulumi.StringOutput

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixGeoVpnOutput) CloudType

func (o AviatrixGeoVpnOutput) CloudType() pulumi.IntOutput

Type of cloud service provider, requires an integer value. Currently only AWS(1) is supported.

func (AviatrixGeoVpnOutput) DomainName

func (o AviatrixGeoVpnOutput) DomainName() pulumi.StringOutput

The hosted domain name. It must be hosted by AWS Route53 or Azure DNS in the selected account.

func (AviatrixGeoVpnOutput) ElbDnsNames

List of ELB names to attach to this Geo VPN name.

func (AviatrixGeoVpnOutput) ElementType

func (AviatrixGeoVpnOutput) ElementType() reflect.Type

func (AviatrixGeoVpnOutput) ServiceName

func (o AviatrixGeoVpnOutput) ServiceName() pulumi.StringOutput

The hostname that users will connect to. A DNS record will be created for this name in the specified domain name.

func (AviatrixGeoVpnOutput) ToAviatrixGeoVpnOutput

func (o AviatrixGeoVpnOutput) ToAviatrixGeoVpnOutput() AviatrixGeoVpnOutput

func (AviatrixGeoVpnOutput) ToAviatrixGeoVpnOutputWithContext

func (o AviatrixGeoVpnOutput) ToAviatrixGeoVpnOutputWithContext(ctx context.Context) AviatrixGeoVpnOutput

type AviatrixGeoVpnState

type AviatrixGeoVpnState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1) is supported.
	CloudType pulumi.IntPtrInput
	// The hosted domain name. It must be hosted by AWS Route53 or Azure DNS in the selected account.
	DomainName pulumi.StringPtrInput
	// List of ELB names to attach to this Geo VPN name.
	ElbDnsNames pulumi.StringArrayInput
	// The hostname that users will connect to. A DNS record will be created for this name in the specified domain name.
	ServiceName pulumi.StringPtrInput
}

func (AviatrixGeoVpnState) ElementType

func (AviatrixGeoVpnState) ElementType() reflect.Type

type AviatrixMicrosegPolicyList

type AviatrixMicrosegPolicyList struct {
	pulumi.CustomResourceState

	// List of policies.
	Policies AviatrixMicrosegPolicyListPolicyArrayOutput `pulumi:"policies"`
}

!> **WARNING** **aviatrix_microseg_policy_list** is part of the Micro-segmentation private preview feature for R2.22.0. If you wish to enable a private preview mode feature, please contact your sales representative or Aviatrix Support.

The **aviatrix_microseg_policy_list** resource handles the creation and management of Micro-segmentation Policies. Available as of Provider R2.22.0+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixMicrosegPolicyList(ctx, "test", &aviatrix.AviatrixMicrosegPolicyListArgs{
			Policies: AviatrixMicrosegPolicyListPolicyArray{
				&AviatrixMicrosegPolicyListPolicyArgs{
					Action: pulumi.String("DENY"),
					DstAppDomains: pulumi.StringArray{
						pulumi.String("82e50c85-82bf-4b3b-b9da-aaed34a3aa53"),
					},
					Logging:  pulumi.Bool(false),
					Name:     pulumi.String("microseg-policy-1"),
					Priority: pulumi.Int(1),
					Protocol: pulumi.String("ICMP"),
					SrcAppDomains: pulumi.StringArray{
						pulumi.String("f15c9890-c8c4-4c1a-a2b5-ef0ab34d2e30"),
					},
					Watch: pulumi.Bool(false),
				},
				&AviatrixMicrosegPolicyListPolicyArgs{
					Action: pulumi.String("PERMIT"),
					DstAppDomains: pulumi.StringArray{
						pulumi.String("f05b0ad7-d2d7-4d16-b2f6-48492319414c"),
					},
					Name: pulumi.String("microseg-policy"),
					PortRanges: AviatrixMicrosegPolicyListPolicyPortRangeArray{
						&AviatrixMicrosegPolicyListPolicyPortRangeArgs{
							Hi: pulumi.Int(50000),
							Lo: pulumi.Int(49000),
						},
					},
					Priority: pulumi.Int(0),
					Protocol: pulumi.String("TCP"),
					SrcAppDomains: pulumi.StringArray{
						pulumi.String("7e7d1573-7a7a-4a53-bcb5-1ad5041961e0"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_microseg_policy_list** can be imported using the controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixMicrosegPolicyList:AviatrixMicrosegPolicyList test 10-11-12-13

```

func GetAviatrixMicrosegPolicyList

func GetAviatrixMicrosegPolicyList(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixMicrosegPolicyListState, opts ...pulumi.ResourceOption) (*AviatrixMicrosegPolicyList, error)

GetAviatrixMicrosegPolicyList gets an existing AviatrixMicrosegPolicyList 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 NewAviatrixMicrosegPolicyList

func NewAviatrixMicrosegPolicyList(ctx *pulumi.Context,
	name string, args *AviatrixMicrosegPolicyListArgs, opts ...pulumi.ResourceOption) (*AviatrixMicrosegPolicyList, error)

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

func (*AviatrixMicrosegPolicyList) ElementType

func (*AviatrixMicrosegPolicyList) ElementType() reflect.Type

func (*AviatrixMicrosegPolicyList) ToAviatrixMicrosegPolicyListOutput

func (i *AviatrixMicrosegPolicyList) ToAviatrixMicrosegPolicyListOutput() AviatrixMicrosegPolicyListOutput

func (*AviatrixMicrosegPolicyList) ToAviatrixMicrosegPolicyListOutputWithContext

func (i *AviatrixMicrosegPolicyList) ToAviatrixMicrosegPolicyListOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListOutput

type AviatrixMicrosegPolicyListArgs

type AviatrixMicrosegPolicyListArgs struct {
	// List of policies.
	Policies AviatrixMicrosegPolicyListPolicyArrayInput
}

The set of arguments for constructing a AviatrixMicrosegPolicyList resource.

func (AviatrixMicrosegPolicyListArgs) ElementType

type AviatrixMicrosegPolicyListArray

type AviatrixMicrosegPolicyListArray []AviatrixMicrosegPolicyListInput

func (AviatrixMicrosegPolicyListArray) ElementType

func (AviatrixMicrosegPolicyListArray) ToAviatrixMicrosegPolicyListArrayOutput

func (i AviatrixMicrosegPolicyListArray) ToAviatrixMicrosegPolicyListArrayOutput() AviatrixMicrosegPolicyListArrayOutput

func (AviatrixMicrosegPolicyListArray) ToAviatrixMicrosegPolicyListArrayOutputWithContext

func (i AviatrixMicrosegPolicyListArray) ToAviatrixMicrosegPolicyListArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListArrayOutput

type AviatrixMicrosegPolicyListArrayInput

type AviatrixMicrosegPolicyListArrayInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListArrayOutput() AviatrixMicrosegPolicyListArrayOutput
	ToAviatrixMicrosegPolicyListArrayOutputWithContext(context.Context) AviatrixMicrosegPolicyListArrayOutput
}

AviatrixMicrosegPolicyListArrayInput is an input type that accepts AviatrixMicrosegPolicyListArray and AviatrixMicrosegPolicyListArrayOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListArrayInput` via:

AviatrixMicrosegPolicyListArray{ AviatrixMicrosegPolicyListArgs{...} }

type AviatrixMicrosegPolicyListArrayOutput

type AviatrixMicrosegPolicyListArrayOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListArrayOutput) ElementType

func (AviatrixMicrosegPolicyListArrayOutput) Index

func (AviatrixMicrosegPolicyListArrayOutput) ToAviatrixMicrosegPolicyListArrayOutput

func (o AviatrixMicrosegPolicyListArrayOutput) ToAviatrixMicrosegPolicyListArrayOutput() AviatrixMicrosegPolicyListArrayOutput

func (AviatrixMicrosegPolicyListArrayOutput) ToAviatrixMicrosegPolicyListArrayOutputWithContext

func (o AviatrixMicrosegPolicyListArrayOutput) ToAviatrixMicrosegPolicyListArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListArrayOutput

type AviatrixMicrosegPolicyListInput

type AviatrixMicrosegPolicyListInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListOutput() AviatrixMicrosegPolicyListOutput
	ToAviatrixMicrosegPolicyListOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListOutput
}

type AviatrixMicrosegPolicyListMap

type AviatrixMicrosegPolicyListMap map[string]AviatrixMicrosegPolicyListInput

func (AviatrixMicrosegPolicyListMap) ElementType

func (AviatrixMicrosegPolicyListMap) ToAviatrixMicrosegPolicyListMapOutput

func (i AviatrixMicrosegPolicyListMap) ToAviatrixMicrosegPolicyListMapOutput() AviatrixMicrosegPolicyListMapOutput

func (AviatrixMicrosegPolicyListMap) ToAviatrixMicrosegPolicyListMapOutputWithContext

func (i AviatrixMicrosegPolicyListMap) ToAviatrixMicrosegPolicyListMapOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListMapOutput

type AviatrixMicrosegPolicyListMapInput

type AviatrixMicrosegPolicyListMapInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListMapOutput() AviatrixMicrosegPolicyListMapOutput
	ToAviatrixMicrosegPolicyListMapOutputWithContext(context.Context) AviatrixMicrosegPolicyListMapOutput
}

AviatrixMicrosegPolicyListMapInput is an input type that accepts AviatrixMicrosegPolicyListMap and AviatrixMicrosegPolicyListMapOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListMapInput` via:

AviatrixMicrosegPolicyListMap{ "key": AviatrixMicrosegPolicyListArgs{...} }

type AviatrixMicrosegPolicyListMapOutput

type AviatrixMicrosegPolicyListMapOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListMapOutput) ElementType

func (AviatrixMicrosegPolicyListMapOutput) MapIndex

func (AviatrixMicrosegPolicyListMapOutput) ToAviatrixMicrosegPolicyListMapOutput

func (o AviatrixMicrosegPolicyListMapOutput) ToAviatrixMicrosegPolicyListMapOutput() AviatrixMicrosegPolicyListMapOutput

func (AviatrixMicrosegPolicyListMapOutput) ToAviatrixMicrosegPolicyListMapOutputWithContext

func (o AviatrixMicrosegPolicyListMapOutput) ToAviatrixMicrosegPolicyListMapOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListMapOutput

type AviatrixMicrosegPolicyListOutput

type AviatrixMicrosegPolicyListOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListOutput) ElementType

func (AviatrixMicrosegPolicyListOutput) Policies

List of policies.

func (AviatrixMicrosegPolicyListOutput) ToAviatrixMicrosegPolicyListOutput

func (o AviatrixMicrosegPolicyListOutput) ToAviatrixMicrosegPolicyListOutput() AviatrixMicrosegPolicyListOutput

func (AviatrixMicrosegPolicyListOutput) ToAviatrixMicrosegPolicyListOutputWithContext

func (o AviatrixMicrosegPolicyListOutput) ToAviatrixMicrosegPolicyListOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListOutput

type AviatrixMicrosegPolicyListPolicy

type AviatrixMicrosegPolicyListPolicy struct {
	// Action for the policy. Must be one of PERMIT or DENY.
	Action string `pulumi:"action"`
	// List of App Domain UUIDs for the destination for the policy.
	DstAppDomains []string `pulumi:"dstAppDomains"`
	// Whether to enable logging for packets that match the policy. Type: Boolean.
	Logging *bool `pulumi:"logging"`
	// Name of the policy.
	Name string `pulumi:"name"`
	// List of port ranges for the policy. Cannot be used when `protocol` is "ICMP".
	PortRanges []AviatrixMicrosegPolicyListPolicyPortRange `pulumi:"portRanges"`
	// Priority for the policy. Default: 0. Type: Integer.
	Priority *int `pulumi:"priority"`
	// Protocol for the policy. Must be one of TCP, UDP, ICMP or ANY.
	Protocol string `pulumi:"protocol"`
	// List of App Domain UUIDs for the source for the policy.
	SrcAppDomains []string `pulumi:"srcAppDomains"`
	// UUID for the Policy.
	Uuid *string `pulumi:"uuid"`
	// Whether to enforce the policy or only watch packets. If "true" packets are only watched. This allows you to observe if the traffic impacted by this rule causes any inadvertent issues (such as traffic being dropped). Type: Boolean.
	Watch *bool `pulumi:"watch"`
}

type AviatrixMicrosegPolicyListPolicyArgs

type AviatrixMicrosegPolicyListPolicyArgs struct {
	// Action for the policy. Must be one of PERMIT or DENY.
	Action pulumi.StringInput `pulumi:"action"`
	// List of App Domain UUIDs for the destination for the policy.
	DstAppDomains pulumi.StringArrayInput `pulumi:"dstAppDomains"`
	// Whether to enable logging for packets that match the policy. Type: Boolean.
	Logging pulumi.BoolPtrInput `pulumi:"logging"`
	// Name of the policy.
	Name pulumi.StringInput `pulumi:"name"`
	// List of port ranges for the policy. Cannot be used when `protocol` is "ICMP".
	PortRanges AviatrixMicrosegPolicyListPolicyPortRangeArrayInput `pulumi:"portRanges"`
	// Priority for the policy. Default: 0. Type: Integer.
	Priority pulumi.IntPtrInput `pulumi:"priority"`
	// Protocol for the policy. Must be one of TCP, UDP, ICMP or ANY.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// List of App Domain UUIDs for the source for the policy.
	SrcAppDomains pulumi.StringArrayInput `pulumi:"srcAppDomains"`
	// UUID for the Policy.
	Uuid pulumi.StringPtrInput `pulumi:"uuid"`
	// Whether to enforce the policy or only watch packets. If "true" packets are only watched. This allows you to observe if the traffic impacted by this rule causes any inadvertent issues (such as traffic being dropped). Type: Boolean.
	Watch pulumi.BoolPtrInput `pulumi:"watch"`
}

func (AviatrixMicrosegPolicyListPolicyArgs) ElementType

func (AviatrixMicrosegPolicyListPolicyArgs) ToAviatrixMicrosegPolicyListPolicyOutput

func (i AviatrixMicrosegPolicyListPolicyArgs) ToAviatrixMicrosegPolicyListPolicyOutput() AviatrixMicrosegPolicyListPolicyOutput

func (AviatrixMicrosegPolicyListPolicyArgs) ToAviatrixMicrosegPolicyListPolicyOutputWithContext

func (i AviatrixMicrosegPolicyListPolicyArgs) ToAviatrixMicrosegPolicyListPolicyOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyOutput

type AviatrixMicrosegPolicyListPolicyArray

type AviatrixMicrosegPolicyListPolicyArray []AviatrixMicrosegPolicyListPolicyInput

func (AviatrixMicrosegPolicyListPolicyArray) ElementType

func (AviatrixMicrosegPolicyListPolicyArray) ToAviatrixMicrosegPolicyListPolicyArrayOutput

func (i AviatrixMicrosegPolicyListPolicyArray) ToAviatrixMicrosegPolicyListPolicyArrayOutput() AviatrixMicrosegPolicyListPolicyArrayOutput

func (AviatrixMicrosegPolicyListPolicyArray) ToAviatrixMicrosegPolicyListPolicyArrayOutputWithContext

func (i AviatrixMicrosegPolicyListPolicyArray) ToAviatrixMicrosegPolicyListPolicyArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyArrayOutput

type AviatrixMicrosegPolicyListPolicyArrayInput

type AviatrixMicrosegPolicyListPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListPolicyArrayOutput() AviatrixMicrosegPolicyListPolicyArrayOutput
	ToAviatrixMicrosegPolicyListPolicyArrayOutputWithContext(context.Context) AviatrixMicrosegPolicyListPolicyArrayOutput
}

AviatrixMicrosegPolicyListPolicyArrayInput is an input type that accepts AviatrixMicrosegPolicyListPolicyArray and AviatrixMicrosegPolicyListPolicyArrayOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListPolicyArrayInput` via:

AviatrixMicrosegPolicyListPolicyArray{ AviatrixMicrosegPolicyListPolicyArgs{...} }

type AviatrixMicrosegPolicyListPolicyArrayOutput

type AviatrixMicrosegPolicyListPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListPolicyArrayOutput) ElementType

func (AviatrixMicrosegPolicyListPolicyArrayOutput) Index

func (AviatrixMicrosegPolicyListPolicyArrayOutput) ToAviatrixMicrosegPolicyListPolicyArrayOutput

func (o AviatrixMicrosegPolicyListPolicyArrayOutput) ToAviatrixMicrosegPolicyListPolicyArrayOutput() AviatrixMicrosegPolicyListPolicyArrayOutput

func (AviatrixMicrosegPolicyListPolicyArrayOutput) ToAviatrixMicrosegPolicyListPolicyArrayOutputWithContext

func (o AviatrixMicrosegPolicyListPolicyArrayOutput) ToAviatrixMicrosegPolicyListPolicyArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyArrayOutput

type AviatrixMicrosegPolicyListPolicyInput

type AviatrixMicrosegPolicyListPolicyInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListPolicyOutput() AviatrixMicrosegPolicyListPolicyOutput
	ToAviatrixMicrosegPolicyListPolicyOutputWithContext(context.Context) AviatrixMicrosegPolicyListPolicyOutput
}

AviatrixMicrosegPolicyListPolicyInput is an input type that accepts AviatrixMicrosegPolicyListPolicyArgs and AviatrixMicrosegPolicyListPolicyOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListPolicyInput` via:

AviatrixMicrosegPolicyListPolicyArgs{...}

type AviatrixMicrosegPolicyListPolicyOutput

type AviatrixMicrosegPolicyListPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListPolicyOutput) Action

Action for the policy. Must be one of PERMIT or DENY.

func (AviatrixMicrosegPolicyListPolicyOutput) DstAppDomains

List of App Domain UUIDs for the destination for the policy.

func (AviatrixMicrosegPolicyListPolicyOutput) ElementType

func (AviatrixMicrosegPolicyListPolicyOutput) Logging

Whether to enable logging for packets that match the policy. Type: Boolean.

func (AviatrixMicrosegPolicyListPolicyOutput) Name

Name of the policy.

func (AviatrixMicrosegPolicyListPolicyOutput) PortRanges

List of port ranges for the policy. Cannot be used when `protocol` is "ICMP".

func (AviatrixMicrosegPolicyListPolicyOutput) Priority

Priority for the policy. Default: 0. Type: Integer.

func (AviatrixMicrosegPolicyListPolicyOutput) Protocol

Protocol for the policy. Must be one of TCP, UDP, ICMP or ANY.

func (AviatrixMicrosegPolicyListPolicyOutput) SrcAppDomains

List of App Domain UUIDs for the source for the policy.

func (AviatrixMicrosegPolicyListPolicyOutput) ToAviatrixMicrosegPolicyListPolicyOutput

func (o AviatrixMicrosegPolicyListPolicyOutput) ToAviatrixMicrosegPolicyListPolicyOutput() AviatrixMicrosegPolicyListPolicyOutput

func (AviatrixMicrosegPolicyListPolicyOutput) ToAviatrixMicrosegPolicyListPolicyOutputWithContext

func (o AviatrixMicrosegPolicyListPolicyOutput) ToAviatrixMicrosegPolicyListPolicyOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyOutput

func (AviatrixMicrosegPolicyListPolicyOutput) Uuid

UUID for the Policy.

func (AviatrixMicrosegPolicyListPolicyOutput) Watch

Whether to enforce the policy or only watch packets. If "true" packets are only watched. This allows you to observe if the traffic impacted by this rule causes any inadvertent issues (such as traffic being dropped). Type: Boolean.

type AviatrixMicrosegPolicyListPolicyPortRange

type AviatrixMicrosegPolicyListPolicyPortRange struct {
	// Upper bound for the range of ports. When not set, `lo` is the only port that matches the policy.
	Hi *int `pulumi:"hi"`
	// Lower bound for the range of ports.
	Lo int `pulumi:"lo"`
}

type AviatrixMicrosegPolicyListPolicyPortRangeArgs

type AviatrixMicrosegPolicyListPolicyPortRangeArgs struct {
	// Upper bound for the range of ports. When not set, `lo` is the only port that matches the policy.
	Hi pulumi.IntPtrInput `pulumi:"hi"`
	// Lower bound for the range of ports.
	Lo pulumi.IntInput `pulumi:"lo"`
}

func (AviatrixMicrosegPolicyListPolicyPortRangeArgs) ElementType

func (AviatrixMicrosegPolicyListPolicyPortRangeArgs) ToAviatrixMicrosegPolicyListPolicyPortRangeOutput

func (i AviatrixMicrosegPolicyListPolicyPortRangeArgs) ToAviatrixMicrosegPolicyListPolicyPortRangeOutput() AviatrixMicrosegPolicyListPolicyPortRangeOutput

func (AviatrixMicrosegPolicyListPolicyPortRangeArgs) ToAviatrixMicrosegPolicyListPolicyPortRangeOutputWithContext

func (i AviatrixMicrosegPolicyListPolicyPortRangeArgs) ToAviatrixMicrosegPolicyListPolicyPortRangeOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyPortRangeOutput

type AviatrixMicrosegPolicyListPolicyPortRangeArray

type AviatrixMicrosegPolicyListPolicyPortRangeArray []AviatrixMicrosegPolicyListPolicyPortRangeInput

func (AviatrixMicrosegPolicyListPolicyPortRangeArray) ElementType

func (AviatrixMicrosegPolicyListPolicyPortRangeArray) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

func (i AviatrixMicrosegPolicyListPolicyPortRangeArray) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutput() AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

func (AviatrixMicrosegPolicyListPolicyPortRangeArray) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutputWithContext

func (i AviatrixMicrosegPolicyListPolicyPortRangeArray) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

type AviatrixMicrosegPolicyListPolicyPortRangeArrayInput

type AviatrixMicrosegPolicyListPolicyPortRangeArrayInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutput() AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput
	ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutputWithContext(context.Context) AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput
}

AviatrixMicrosegPolicyListPolicyPortRangeArrayInput is an input type that accepts AviatrixMicrosegPolicyListPolicyPortRangeArray and AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListPolicyPortRangeArrayInput` via:

AviatrixMicrosegPolicyListPolicyPortRangeArray{ AviatrixMicrosegPolicyListPolicyPortRangeArgs{...} }

type AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

type AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput) ElementType

func (AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput) Index

func (AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

func (AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutputWithContext

func (o AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeArrayOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyPortRangeArrayOutput

type AviatrixMicrosegPolicyListPolicyPortRangeInput

type AviatrixMicrosegPolicyListPolicyPortRangeInput interface {
	pulumi.Input

	ToAviatrixMicrosegPolicyListPolicyPortRangeOutput() AviatrixMicrosegPolicyListPolicyPortRangeOutput
	ToAviatrixMicrosegPolicyListPolicyPortRangeOutputWithContext(context.Context) AviatrixMicrosegPolicyListPolicyPortRangeOutput
}

AviatrixMicrosegPolicyListPolicyPortRangeInput is an input type that accepts AviatrixMicrosegPolicyListPolicyPortRangeArgs and AviatrixMicrosegPolicyListPolicyPortRangeOutput values. You can construct a concrete instance of `AviatrixMicrosegPolicyListPolicyPortRangeInput` via:

AviatrixMicrosegPolicyListPolicyPortRangeArgs{...}

type AviatrixMicrosegPolicyListPolicyPortRangeOutput

type AviatrixMicrosegPolicyListPolicyPortRangeOutput struct{ *pulumi.OutputState }

func (AviatrixMicrosegPolicyListPolicyPortRangeOutput) ElementType

func (AviatrixMicrosegPolicyListPolicyPortRangeOutput) Hi

Upper bound for the range of ports. When not set, `lo` is the only port that matches the policy.

func (AviatrixMicrosegPolicyListPolicyPortRangeOutput) Lo

Lower bound for the range of ports.

func (AviatrixMicrosegPolicyListPolicyPortRangeOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeOutput

func (o AviatrixMicrosegPolicyListPolicyPortRangeOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeOutput() AviatrixMicrosegPolicyListPolicyPortRangeOutput

func (AviatrixMicrosegPolicyListPolicyPortRangeOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeOutputWithContext

func (o AviatrixMicrosegPolicyListPolicyPortRangeOutput) ToAviatrixMicrosegPolicyListPolicyPortRangeOutputWithContext(ctx context.Context) AviatrixMicrosegPolicyListPolicyPortRangeOutput

type AviatrixMicrosegPolicyListState

type AviatrixMicrosegPolicyListState struct {
	// List of policies.
	Policies AviatrixMicrosegPolicyListPolicyArrayInput
}

func (AviatrixMicrosegPolicyListState) ElementType

type AviatrixNetflowAgent

type AviatrixNetflowAgent struct {
	pulumi.CustomResourceState

	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Netflow server port.
	Port pulumi.IntOutput `pulumi:"port"`
	// Netflow server IP address.
	ServerIp pulumi.StringOutput `pulumi:"serverIp"`
	// The status of netflow agent.
	Status pulumi.StringOutput `pulumi:"status"`
	// Netflow version (5 or 9). 5 by default.
	Version pulumi.IntPtrOutput `pulumi:"version"`
}

The **aviatrix_netflow_agent** resource allows the enabling and disabling of netflow agent.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixNetflowAgent(ctx, "testNetflowAgent", &aviatrix.AviatrixNetflowAgentArgs{
			ExcludedGateways: pulumi.StringArray{
				pulumi.String("a"),
				pulumi.String("b"),
			},
			Port:     pulumi.Int(10),
			ServerIp: pulumi.String("1.2.3.4"),
			Version:  pulumi.Int(5),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**netflow_agent** can be imported using "netflow_agent", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixNetflowAgent:AviatrixNetflowAgent test netflow_agent

```

func GetAviatrixNetflowAgent

func GetAviatrixNetflowAgent(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixNetflowAgentState, opts ...pulumi.ResourceOption) (*AviatrixNetflowAgent, error)

GetAviatrixNetflowAgent gets an existing AviatrixNetflowAgent 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 NewAviatrixNetflowAgent

func NewAviatrixNetflowAgent(ctx *pulumi.Context,
	name string, args *AviatrixNetflowAgentArgs, opts ...pulumi.ResourceOption) (*AviatrixNetflowAgent, error)

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

func (*AviatrixNetflowAgent) ElementType

func (*AviatrixNetflowAgent) ElementType() reflect.Type

func (*AviatrixNetflowAgent) ToAviatrixNetflowAgentOutput

func (i *AviatrixNetflowAgent) ToAviatrixNetflowAgentOutput() AviatrixNetflowAgentOutput

func (*AviatrixNetflowAgent) ToAviatrixNetflowAgentOutputWithContext

func (i *AviatrixNetflowAgent) ToAviatrixNetflowAgentOutputWithContext(ctx context.Context) AviatrixNetflowAgentOutput

type AviatrixNetflowAgentArgs

type AviatrixNetflowAgentArgs struct {
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Netflow server port.
	Port pulumi.IntInput
	// Netflow server IP address.
	ServerIp pulumi.StringInput
	// Netflow version (5 or 9). 5 by default.
	Version pulumi.IntPtrInput
}

The set of arguments for constructing a AviatrixNetflowAgent resource.

func (AviatrixNetflowAgentArgs) ElementType

func (AviatrixNetflowAgentArgs) ElementType() reflect.Type

type AviatrixNetflowAgentArray

type AviatrixNetflowAgentArray []AviatrixNetflowAgentInput

func (AviatrixNetflowAgentArray) ElementType

func (AviatrixNetflowAgentArray) ElementType() reflect.Type

func (AviatrixNetflowAgentArray) ToAviatrixNetflowAgentArrayOutput

func (i AviatrixNetflowAgentArray) ToAviatrixNetflowAgentArrayOutput() AviatrixNetflowAgentArrayOutput

func (AviatrixNetflowAgentArray) ToAviatrixNetflowAgentArrayOutputWithContext

func (i AviatrixNetflowAgentArray) ToAviatrixNetflowAgentArrayOutputWithContext(ctx context.Context) AviatrixNetflowAgentArrayOutput

type AviatrixNetflowAgentArrayInput

type AviatrixNetflowAgentArrayInput interface {
	pulumi.Input

	ToAviatrixNetflowAgentArrayOutput() AviatrixNetflowAgentArrayOutput
	ToAviatrixNetflowAgentArrayOutputWithContext(context.Context) AviatrixNetflowAgentArrayOutput
}

AviatrixNetflowAgentArrayInput is an input type that accepts AviatrixNetflowAgentArray and AviatrixNetflowAgentArrayOutput values. You can construct a concrete instance of `AviatrixNetflowAgentArrayInput` via:

AviatrixNetflowAgentArray{ AviatrixNetflowAgentArgs{...} }

type AviatrixNetflowAgentArrayOutput

type AviatrixNetflowAgentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixNetflowAgentArrayOutput) ElementType

func (AviatrixNetflowAgentArrayOutput) Index

func (AviatrixNetflowAgentArrayOutput) ToAviatrixNetflowAgentArrayOutput

func (o AviatrixNetflowAgentArrayOutput) ToAviatrixNetflowAgentArrayOutput() AviatrixNetflowAgentArrayOutput

func (AviatrixNetflowAgentArrayOutput) ToAviatrixNetflowAgentArrayOutputWithContext

func (o AviatrixNetflowAgentArrayOutput) ToAviatrixNetflowAgentArrayOutputWithContext(ctx context.Context) AviatrixNetflowAgentArrayOutput

type AviatrixNetflowAgentInput

type AviatrixNetflowAgentInput interface {
	pulumi.Input

	ToAviatrixNetflowAgentOutput() AviatrixNetflowAgentOutput
	ToAviatrixNetflowAgentOutputWithContext(ctx context.Context) AviatrixNetflowAgentOutput
}

type AviatrixNetflowAgentMap

type AviatrixNetflowAgentMap map[string]AviatrixNetflowAgentInput

func (AviatrixNetflowAgentMap) ElementType

func (AviatrixNetflowAgentMap) ElementType() reflect.Type

func (AviatrixNetflowAgentMap) ToAviatrixNetflowAgentMapOutput

func (i AviatrixNetflowAgentMap) ToAviatrixNetflowAgentMapOutput() AviatrixNetflowAgentMapOutput

func (AviatrixNetflowAgentMap) ToAviatrixNetflowAgentMapOutputWithContext

func (i AviatrixNetflowAgentMap) ToAviatrixNetflowAgentMapOutputWithContext(ctx context.Context) AviatrixNetflowAgentMapOutput

type AviatrixNetflowAgentMapInput

type AviatrixNetflowAgentMapInput interface {
	pulumi.Input

	ToAviatrixNetflowAgentMapOutput() AviatrixNetflowAgentMapOutput
	ToAviatrixNetflowAgentMapOutputWithContext(context.Context) AviatrixNetflowAgentMapOutput
}

AviatrixNetflowAgentMapInput is an input type that accepts AviatrixNetflowAgentMap and AviatrixNetflowAgentMapOutput values. You can construct a concrete instance of `AviatrixNetflowAgentMapInput` via:

AviatrixNetflowAgentMap{ "key": AviatrixNetflowAgentArgs{...} }

type AviatrixNetflowAgentMapOutput

type AviatrixNetflowAgentMapOutput struct{ *pulumi.OutputState }

func (AviatrixNetflowAgentMapOutput) ElementType

func (AviatrixNetflowAgentMapOutput) MapIndex

func (AviatrixNetflowAgentMapOutput) ToAviatrixNetflowAgentMapOutput

func (o AviatrixNetflowAgentMapOutput) ToAviatrixNetflowAgentMapOutput() AviatrixNetflowAgentMapOutput

func (AviatrixNetflowAgentMapOutput) ToAviatrixNetflowAgentMapOutputWithContext

func (o AviatrixNetflowAgentMapOutput) ToAviatrixNetflowAgentMapOutputWithContext(ctx context.Context) AviatrixNetflowAgentMapOutput

type AviatrixNetflowAgentOutput

type AviatrixNetflowAgentOutput struct{ *pulumi.OutputState }

func (AviatrixNetflowAgentOutput) ElementType

func (AviatrixNetflowAgentOutput) ElementType() reflect.Type

func (AviatrixNetflowAgentOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixNetflowAgentOutput) Port

Netflow server port.

func (AviatrixNetflowAgentOutput) ServerIp

Netflow server IP address.

func (AviatrixNetflowAgentOutput) Status

The status of netflow agent.

func (AviatrixNetflowAgentOutput) ToAviatrixNetflowAgentOutput

func (o AviatrixNetflowAgentOutput) ToAviatrixNetflowAgentOutput() AviatrixNetflowAgentOutput

func (AviatrixNetflowAgentOutput) ToAviatrixNetflowAgentOutputWithContext

func (o AviatrixNetflowAgentOutput) ToAviatrixNetflowAgentOutputWithContext(ctx context.Context) AviatrixNetflowAgentOutput

func (AviatrixNetflowAgentOutput) Version

Netflow version (5 or 9). 5 by default.

type AviatrixNetflowAgentState

type AviatrixNetflowAgentState struct {
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Netflow server port.
	Port pulumi.IntPtrInput
	// Netflow server IP address.
	ServerIp pulumi.StringPtrInput
	// The status of netflow agent.
	Status pulumi.StringPtrInput
	// Netflow version (5 or 9). 5 by default.
	Version pulumi.IntPtrInput
}

func (AviatrixNetflowAgentState) ElementType

func (AviatrixNetflowAgentState) ElementType() reflect.Type

type AviatrixPeriodicPing

type AviatrixPeriodicPing struct {
	pulumi.CustomResourceState

	// Name of the gateway.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Interval between pings in seconds.
	Interval pulumi.IntOutput `pulumi:"interval"`
	// IP Address to ping.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
}

The **aviatrix_periodic_ping** resource manages the periodic ping feature for Aviatrix gateways.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixPeriodicPing(ctx, "testPing", &aviatrix.AviatrixPeriodicPingArgs{
			GwName:    pulumi.String("test-gw"),
			Interval:  pulumi.Int(600),
			IpAddress: pulumi.String("127.0.0.1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_periodic_ping** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixPeriodicPing:AviatrixPeriodicPing test gw_name

```

func GetAviatrixPeriodicPing

func GetAviatrixPeriodicPing(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixPeriodicPingState, opts ...pulumi.ResourceOption) (*AviatrixPeriodicPing, error)

GetAviatrixPeriodicPing gets an existing AviatrixPeriodicPing 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 NewAviatrixPeriodicPing

func NewAviatrixPeriodicPing(ctx *pulumi.Context,
	name string, args *AviatrixPeriodicPingArgs, opts ...pulumi.ResourceOption) (*AviatrixPeriodicPing, error)

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

func (*AviatrixPeriodicPing) ElementType

func (*AviatrixPeriodicPing) ElementType() reflect.Type

func (*AviatrixPeriodicPing) ToAviatrixPeriodicPingOutput

func (i *AviatrixPeriodicPing) ToAviatrixPeriodicPingOutput() AviatrixPeriodicPingOutput

func (*AviatrixPeriodicPing) ToAviatrixPeriodicPingOutputWithContext

func (i *AviatrixPeriodicPing) ToAviatrixPeriodicPingOutputWithContext(ctx context.Context) AviatrixPeriodicPingOutput

type AviatrixPeriodicPingArgs

type AviatrixPeriodicPingArgs struct {
	// Name of the gateway.
	GwName pulumi.StringInput
	// Interval between pings in seconds.
	Interval pulumi.IntInput
	// IP Address to ping.
	IpAddress pulumi.StringInput
}

The set of arguments for constructing a AviatrixPeriodicPing resource.

func (AviatrixPeriodicPingArgs) ElementType

func (AviatrixPeriodicPingArgs) ElementType() reflect.Type

type AviatrixPeriodicPingArray

type AviatrixPeriodicPingArray []AviatrixPeriodicPingInput

func (AviatrixPeriodicPingArray) ElementType

func (AviatrixPeriodicPingArray) ElementType() reflect.Type

func (AviatrixPeriodicPingArray) ToAviatrixPeriodicPingArrayOutput

func (i AviatrixPeriodicPingArray) ToAviatrixPeriodicPingArrayOutput() AviatrixPeriodicPingArrayOutput

func (AviatrixPeriodicPingArray) ToAviatrixPeriodicPingArrayOutputWithContext

func (i AviatrixPeriodicPingArray) ToAviatrixPeriodicPingArrayOutputWithContext(ctx context.Context) AviatrixPeriodicPingArrayOutput

type AviatrixPeriodicPingArrayInput

type AviatrixPeriodicPingArrayInput interface {
	pulumi.Input

	ToAviatrixPeriodicPingArrayOutput() AviatrixPeriodicPingArrayOutput
	ToAviatrixPeriodicPingArrayOutputWithContext(context.Context) AviatrixPeriodicPingArrayOutput
}

AviatrixPeriodicPingArrayInput is an input type that accepts AviatrixPeriodicPingArray and AviatrixPeriodicPingArrayOutput values. You can construct a concrete instance of `AviatrixPeriodicPingArrayInput` via:

AviatrixPeriodicPingArray{ AviatrixPeriodicPingArgs{...} }

type AviatrixPeriodicPingArrayOutput

type AviatrixPeriodicPingArrayOutput struct{ *pulumi.OutputState }

func (AviatrixPeriodicPingArrayOutput) ElementType

func (AviatrixPeriodicPingArrayOutput) Index

func (AviatrixPeriodicPingArrayOutput) ToAviatrixPeriodicPingArrayOutput

func (o AviatrixPeriodicPingArrayOutput) ToAviatrixPeriodicPingArrayOutput() AviatrixPeriodicPingArrayOutput

func (AviatrixPeriodicPingArrayOutput) ToAviatrixPeriodicPingArrayOutputWithContext

func (o AviatrixPeriodicPingArrayOutput) ToAviatrixPeriodicPingArrayOutputWithContext(ctx context.Context) AviatrixPeriodicPingArrayOutput

type AviatrixPeriodicPingInput

type AviatrixPeriodicPingInput interface {
	pulumi.Input

	ToAviatrixPeriodicPingOutput() AviatrixPeriodicPingOutput
	ToAviatrixPeriodicPingOutputWithContext(ctx context.Context) AviatrixPeriodicPingOutput
}

type AviatrixPeriodicPingMap

type AviatrixPeriodicPingMap map[string]AviatrixPeriodicPingInput

func (AviatrixPeriodicPingMap) ElementType

func (AviatrixPeriodicPingMap) ElementType() reflect.Type

func (AviatrixPeriodicPingMap) ToAviatrixPeriodicPingMapOutput

func (i AviatrixPeriodicPingMap) ToAviatrixPeriodicPingMapOutput() AviatrixPeriodicPingMapOutput

func (AviatrixPeriodicPingMap) ToAviatrixPeriodicPingMapOutputWithContext

func (i AviatrixPeriodicPingMap) ToAviatrixPeriodicPingMapOutputWithContext(ctx context.Context) AviatrixPeriodicPingMapOutput

type AviatrixPeriodicPingMapInput

type AviatrixPeriodicPingMapInput interface {
	pulumi.Input

	ToAviatrixPeriodicPingMapOutput() AviatrixPeriodicPingMapOutput
	ToAviatrixPeriodicPingMapOutputWithContext(context.Context) AviatrixPeriodicPingMapOutput
}

AviatrixPeriodicPingMapInput is an input type that accepts AviatrixPeriodicPingMap and AviatrixPeriodicPingMapOutput values. You can construct a concrete instance of `AviatrixPeriodicPingMapInput` via:

AviatrixPeriodicPingMap{ "key": AviatrixPeriodicPingArgs{...} }

type AviatrixPeriodicPingMapOutput

type AviatrixPeriodicPingMapOutput struct{ *pulumi.OutputState }

func (AviatrixPeriodicPingMapOutput) ElementType

func (AviatrixPeriodicPingMapOutput) MapIndex

func (AviatrixPeriodicPingMapOutput) ToAviatrixPeriodicPingMapOutput

func (o AviatrixPeriodicPingMapOutput) ToAviatrixPeriodicPingMapOutput() AviatrixPeriodicPingMapOutput

func (AviatrixPeriodicPingMapOutput) ToAviatrixPeriodicPingMapOutputWithContext

func (o AviatrixPeriodicPingMapOutput) ToAviatrixPeriodicPingMapOutputWithContext(ctx context.Context) AviatrixPeriodicPingMapOutput

type AviatrixPeriodicPingOutput

type AviatrixPeriodicPingOutput struct{ *pulumi.OutputState }

func (AviatrixPeriodicPingOutput) ElementType

func (AviatrixPeriodicPingOutput) ElementType() reflect.Type

func (AviatrixPeriodicPingOutput) GwName

Name of the gateway.

func (AviatrixPeriodicPingOutput) Interval

Interval between pings in seconds.

func (AviatrixPeriodicPingOutput) IpAddress

IP Address to ping.

func (AviatrixPeriodicPingOutput) ToAviatrixPeriodicPingOutput

func (o AviatrixPeriodicPingOutput) ToAviatrixPeriodicPingOutput() AviatrixPeriodicPingOutput

func (AviatrixPeriodicPingOutput) ToAviatrixPeriodicPingOutputWithContext

func (o AviatrixPeriodicPingOutput) ToAviatrixPeriodicPingOutputWithContext(ctx context.Context) AviatrixPeriodicPingOutput

type AviatrixPeriodicPingState

type AviatrixPeriodicPingState struct {
	// Name of the gateway.
	GwName pulumi.StringPtrInput
	// Interval between pings in seconds.
	Interval pulumi.IntPtrInput
	// IP Address to ping.
	IpAddress pulumi.StringPtrInput
}

func (AviatrixPeriodicPingState) ElementType

func (AviatrixPeriodicPingState) ElementType() reflect.Type

type AviatrixPrivateModeLb

type AviatrixPrivateModeLb struct {
	pulumi.CustomResourceState

	// Name of the access account.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Type of load balancer to create. Must be one of controller or multicloud.
	LbType pulumi.StringOutput `pulumi:"lbType"`
	// ID of the VPC with a multicloud endpoint. Required when `lbType` is multicloud.
	MulticloudAccessVpcId pulumi.StringPtrOutput `pulumi:"multicloudAccessVpcId"`
	// List of multicloud proxies. Only valid when `lbType` is multicloud.
	Proxies AviatrixPrivateModeLbProxyArrayOutput `pulumi:"proxies"`
	// Name of the region containing the VPC.
	Region pulumi.StringOutput `pulumi:"region"`
	// VPC ID of the proxy.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_private_mode_lb** resource allows management of a Private Mode load balancer. This resource is available as of provider version R2.23+.

## Import

**aviatrix_private_mode_lb** can be imported using the `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixPrivateModeLb:AviatrixPrivateModeLb test vpc-1234567

```

func GetAviatrixPrivateModeLb

func GetAviatrixPrivateModeLb(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixPrivateModeLbState, opts ...pulumi.ResourceOption) (*AviatrixPrivateModeLb, error)

GetAviatrixPrivateModeLb gets an existing AviatrixPrivateModeLb 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 NewAviatrixPrivateModeLb

func NewAviatrixPrivateModeLb(ctx *pulumi.Context,
	name string, args *AviatrixPrivateModeLbArgs, opts ...pulumi.ResourceOption) (*AviatrixPrivateModeLb, error)

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

func (*AviatrixPrivateModeLb) ElementType

func (*AviatrixPrivateModeLb) ElementType() reflect.Type

func (*AviatrixPrivateModeLb) ToAviatrixPrivateModeLbOutput

func (i *AviatrixPrivateModeLb) ToAviatrixPrivateModeLbOutput() AviatrixPrivateModeLbOutput

func (*AviatrixPrivateModeLb) ToAviatrixPrivateModeLbOutputWithContext

func (i *AviatrixPrivateModeLb) ToAviatrixPrivateModeLbOutputWithContext(ctx context.Context) AviatrixPrivateModeLbOutput

type AviatrixPrivateModeLbArgs

type AviatrixPrivateModeLbArgs struct {
	// Name of the access account.
	AccountName pulumi.StringInput
	// Type of load balancer to create. Must be one of controller or multicloud.
	LbType pulumi.StringInput
	// ID of the VPC with a multicloud endpoint. Required when `lbType` is multicloud.
	MulticloudAccessVpcId pulumi.StringPtrInput
	// List of multicloud proxies. Only valid when `lbType` is multicloud.
	Proxies AviatrixPrivateModeLbProxyArrayInput
	// Name of the region containing the VPC.
	Region pulumi.StringInput
	// VPC ID of the proxy.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixPrivateModeLb resource.

func (AviatrixPrivateModeLbArgs) ElementType

func (AviatrixPrivateModeLbArgs) ElementType() reflect.Type

type AviatrixPrivateModeLbArray

type AviatrixPrivateModeLbArray []AviatrixPrivateModeLbInput

func (AviatrixPrivateModeLbArray) ElementType

func (AviatrixPrivateModeLbArray) ElementType() reflect.Type

func (AviatrixPrivateModeLbArray) ToAviatrixPrivateModeLbArrayOutput

func (i AviatrixPrivateModeLbArray) ToAviatrixPrivateModeLbArrayOutput() AviatrixPrivateModeLbArrayOutput

func (AviatrixPrivateModeLbArray) ToAviatrixPrivateModeLbArrayOutputWithContext

func (i AviatrixPrivateModeLbArray) ToAviatrixPrivateModeLbArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeLbArrayOutput

type AviatrixPrivateModeLbArrayInput

type AviatrixPrivateModeLbArrayInput interface {
	pulumi.Input

	ToAviatrixPrivateModeLbArrayOutput() AviatrixPrivateModeLbArrayOutput
	ToAviatrixPrivateModeLbArrayOutputWithContext(context.Context) AviatrixPrivateModeLbArrayOutput
}

AviatrixPrivateModeLbArrayInput is an input type that accepts AviatrixPrivateModeLbArray and AviatrixPrivateModeLbArrayOutput values. You can construct a concrete instance of `AviatrixPrivateModeLbArrayInput` via:

AviatrixPrivateModeLbArray{ AviatrixPrivateModeLbArgs{...} }

type AviatrixPrivateModeLbArrayOutput

type AviatrixPrivateModeLbArrayOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeLbArrayOutput) ElementType

func (AviatrixPrivateModeLbArrayOutput) Index

func (AviatrixPrivateModeLbArrayOutput) ToAviatrixPrivateModeLbArrayOutput

func (o AviatrixPrivateModeLbArrayOutput) ToAviatrixPrivateModeLbArrayOutput() AviatrixPrivateModeLbArrayOutput

func (AviatrixPrivateModeLbArrayOutput) ToAviatrixPrivateModeLbArrayOutputWithContext

func (o AviatrixPrivateModeLbArrayOutput) ToAviatrixPrivateModeLbArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeLbArrayOutput

type AviatrixPrivateModeLbInput

type AviatrixPrivateModeLbInput interface {
	pulumi.Input

	ToAviatrixPrivateModeLbOutput() AviatrixPrivateModeLbOutput
	ToAviatrixPrivateModeLbOutputWithContext(ctx context.Context) AviatrixPrivateModeLbOutput
}

type AviatrixPrivateModeLbMap

type AviatrixPrivateModeLbMap map[string]AviatrixPrivateModeLbInput

func (AviatrixPrivateModeLbMap) ElementType

func (AviatrixPrivateModeLbMap) ElementType() reflect.Type

func (AviatrixPrivateModeLbMap) ToAviatrixPrivateModeLbMapOutput

func (i AviatrixPrivateModeLbMap) ToAviatrixPrivateModeLbMapOutput() AviatrixPrivateModeLbMapOutput

func (AviatrixPrivateModeLbMap) ToAviatrixPrivateModeLbMapOutputWithContext

func (i AviatrixPrivateModeLbMap) ToAviatrixPrivateModeLbMapOutputWithContext(ctx context.Context) AviatrixPrivateModeLbMapOutput

type AviatrixPrivateModeLbMapInput

type AviatrixPrivateModeLbMapInput interface {
	pulumi.Input

	ToAviatrixPrivateModeLbMapOutput() AviatrixPrivateModeLbMapOutput
	ToAviatrixPrivateModeLbMapOutputWithContext(context.Context) AviatrixPrivateModeLbMapOutput
}

AviatrixPrivateModeLbMapInput is an input type that accepts AviatrixPrivateModeLbMap and AviatrixPrivateModeLbMapOutput values. You can construct a concrete instance of `AviatrixPrivateModeLbMapInput` via:

AviatrixPrivateModeLbMap{ "key": AviatrixPrivateModeLbArgs{...} }

type AviatrixPrivateModeLbMapOutput

type AviatrixPrivateModeLbMapOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeLbMapOutput) ElementType

func (AviatrixPrivateModeLbMapOutput) MapIndex

func (AviatrixPrivateModeLbMapOutput) ToAviatrixPrivateModeLbMapOutput

func (o AviatrixPrivateModeLbMapOutput) ToAviatrixPrivateModeLbMapOutput() AviatrixPrivateModeLbMapOutput

func (AviatrixPrivateModeLbMapOutput) ToAviatrixPrivateModeLbMapOutputWithContext

func (o AviatrixPrivateModeLbMapOutput) ToAviatrixPrivateModeLbMapOutputWithContext(ctx context.Context) AviatrixPrivateModeLbMapOutput

type AviatrixPrivateModeLbOutput

type AviatrixPrivateModeLbOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeLbOutput) AccountName

Name of the access account.

func (AviatrixPrivateModeLbOutput) ElementType

func (AviatrixPrivateModeLbOutput) LbType

Type of load balancer to create. Must be one of controller or multicloud.

func (AviatrixPrivateModeLbOutput) MulticloudAccessVpcId

func (o AviatrixPrivateModeLbOutput) MulticloudAccessVpcId() pulumi.StringPtrOutput

ID of the VPC with a multicloud endpoint. Required when `lbType` is multicloud.

func (AviatrixPrivateModeLbOutput) Proxies

List of multicloud proxies. Only valid when `lbType` is multicloud.

func (AviatrixPrivateModeLbOutput) Region

Name of the region containing the VPC.

func (AviatrixPrivateModeLbOutput) ToAviatrixPrivateModeLbOutput

func (o AviatrixPrivateModeLbOutput) ToAviatrixPrivateModeLbOutput() AviatrixPrivateModeLbOutput

func (AviatrixPrivateModeLbOutput) ToAviatrixPrivateModeLbOutputWithContext

func (o AviatrixPrivateModeLbOutput) ToAviatrixPrivateModeLbOutputWithContext(ctx context.Context) AviatrixPrivateModeLbOutput

func (AviatrixPrivateModeLbOutput) VpcId

VPC ID of the proxy.

type AviatrixPrivateModeLbProxy

type AviatrixPrivateModeLbProxy struct {
	// Instance ID of the proxy.
	InstanceId string `pulumi:"instanceId"`
	// VPC ID of the proxy.
	VpcId string `pulumi:"vpcId"`
}

type AviatrixPrivateModeLbProxyArgs

type AviatrixPrivateModeLbProxyArgs struct {
	// Instance ID of the proxy.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// VPC ID of the proxy.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (AviatrixPrivateModeLbProxyArgs) ElementType

func (AviatrixPrivateModeLbProxyArgs) ToAviatrixPrivateModeLbProxyOutput

func (i AviatrixPrivateModeLbProxyArgs) ToAviatrixPrivateModeLbProxyOutput() AviatrixPrivateModeLbProxyOutput

func (AviatrixPrivateModeLbProxyArgs) ToAviatrixPrivateModeLbProxyOutputWithContext

func (i AviatrixPrivateModeLbProxyArgs) ToAviatrixPrivateModeLbProxyOutputWithContext(ctx context.Context) AviatrixPrivateModeLbProxyOutput

type AviatrixPrivateModeLbProxyArray

type AviatrixPrivateModeLbProxyArray []AviatrixPrivateModeLbProxyInput

func (AviatrixPrivateModeLbProxyArray) ElementType

func (AviatrixPrivateModeLbProxyArray) ToAviatrixPrivateModeLbProxyArrayOutput

func (i AviatrixPrivateModeLbProxyArray) ToAviatrixPrivateModeLbProxyArrayOutput() AviatrixPrivateModeLbProxyArrayOutput

func (AviatrixPrivateModeLbProxyArray) ToAviatrixPrivateModeLbProxyArrayOutputWithContext

func (i AviatrixPrivateModeLbProxyArray) ToAviatrixPrivateModeLbProxyArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeLbProxyArrayOutput

type AviatrixPrivateModeLbProxyArrayInput

type AviatrixPrivateModeLbProxyArrayInput interface {
	pulumi.Input

	ToAviatrixPrivateModeLbProxyArrayOutput() AviatrixPrivateModeLbProxyArrayOutput
	ToAviatrixPrivateModeLbProxyArrayOutputWithContext(context.Context) AviatrixPrivateModeLbProxyArrayOutput
}

AviatrixPrivateModeLbProxyArrayInput is an input type that accepts AviatrixPrivateModeLbProxyArray and AviatrixPrivateModeLbProxyArrayOutput values. You can construct a concrete instance of `AviatrixPrivateModeLbProxyArrayInput` via:

AviatrixPrivateModeLbProxyArray{ AviatrixPrivateModeLbProxyArgs{...} }

type AviatrixPrivateModeLbProxyArrayOutput

type AviatrixPrivateModeLbProxyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeLbProxyArrayOutput) ElementType

func (AviatrixPrivateModeLbProxyArrayOutput) Index

func (AviatrixPrivateModeLbProxyArrayOutput) ToAviatrixPrivateModeLbProxyArrayOutput

func (o AviatrixPrivateModeLbProxyArrayOutput) ToAviatrixPrivateModeLbProxyArrayOutput() AviatrixPrivateModeLbProxyArrayOutput

func (AviatrixPrivateModeLbProxyArrayOutput) ToAviatrixPrivateModeLbProxyArrayOutputWithContext

func (o AviatrixPrivateModeLbProxyArrayOutput) ToAviatrixPrivateModeLbProxyArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeLbProxyArrayOutput

type AviatrixPrivateModeLbProxyInput

type AviatrixPrivateModeLbProxyInput interface {
	pulumi.Input

	ToAviatrixPrivateModeLbProxyOutput() AviatrixPrivateModeLbProxyOutput
	ToAviatrixPrivateModeLbProxyOutputWithContext(context.Context) AviatrixPrivateModeLbProxyOutput
}

AviatrixPrivateModeLbProxyInput is an input type that accepts AviatrixPrivateModeLbProxyArgs and AviatrixPrivateModeLbProxyOutput values. You can construct a concrete instance of `AviatrixPrivateModeLbProxyInput` via:

AviatrixPrivateModeLbProxyArgs{...}

type AviatrixPrivateModeLbProxyOutput

type AviatrixPrivateModeLbProxyOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeLbProxyOutput) ElementType

func (AviatrixPrivateModeLbProxyOutput) InstanceId

Instance ID of the proxy.

func (AviatrixPrivateModeLbProxyOutput) ToAviatrixPrivateModeLbProxyOutput

func (o AviatrixPrivateModeLbProxyOutput) ToAviatrixPrivateModeLbProxyOutput() AviatrixPrivateModeLbProxyOutput

func (AviatrixPrivateModeLbProxyOutput) ToAviatrixPrivateModeLbProxyOutputWithContext

func (o AviatrixPrivateModeLbProxyOutput) ToAviatrixPrivateModeLbProxyOutputWithContext(ctx context.Context) AviatrixPrivateModeLbProxyOutput

func (AviatrixPrivateModeLbProxyOutput) VpcId

VPC ID of the proxy.

type AviatrixPrivateModeLbState

type AviatrixPrivateModeLbState struct {
	// Name of the access account.
	AccountName pulumi.StringPtrInput
	// Type of load balancer to create. Must be one of controller or multicloud.
	LbType pulumi.StringPtrInput
	// ID of the VPC with a multicloud endpoint. Required when `lbType` is multicloud.
	MulticloudAccessVpcId pulumi.StringPtrInput
	// List of multicloud proxies. Only valid when `lbType` is multicloud.
	Proxies AviatrixPrivateModeLbProxyArrayInput
	// Name of the region containing the VPC.
	Region pulumi.StringPtrInput
	// VPC ID of the proxy.
	VpcId pulumi.StringPtrInput
}

func (AviatrixPrivateModeLbState) ElementType

func (AviatrixPrivateModeLbState) ElementType() reflect.Type

type AviatrixPrivateModeMulticloudEndpoint

type AviatrixPrivateModeMulticloudEndpoint struct {
	pulumi.CustomResourceState

	// Name of the access account.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// ID of the VPC containing a Private Mode controller load balancer.
	ControllerLbVpcId pulumi.StringOutput `pulumi:"controllerLbVpcId"`
	// DNS entry of the endpoint.
	DnsEntry pulumi.StringOutput `pulumi:"dnsEntry"`
	// Region of the VPC.
	Region pulumi.StringOutput `pulumi:"region"`
	// ID of the VPC to create the endpoint in.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_private_mode_multicloud_endpoint** resource allows management of a Private Mode multicloud endpoint. This resource is available as of provider version R2.23+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixPrivateModeMulticloudEndpoint(ctx, "test", &aviatrix.AviatrixPrivateModeMulticloudEndpointArgs{
			AccountName:       pulumi.String("devops"),
			ControllerLbVpcId: pulumi.String("vpc-abcdefg"),
			Region:            pulumi.String("us-east-1"),
			VpcId:             pulumi.String("vpc-abcdef"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_private_mode_multicloud_endpoint** can be imported using the `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixPrivateModeMulticloudEndpoint:AviatrixPrivateModeMulticloudEndpoint test vpc-1234567

```

func GetAviatrixPrivateModeMulticloudEndpoint

func GetAviatrixPrivateModeMulticloudEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixPrivateModeMulticloudEndpointState, opts ...pulumi.ResourceOption) (*AviatrixPrivateModeMulticloudEndpoint, error)

GetAviatrixPrivateModeMulticloudEndpoint gets an existing AviatrixPrivateModeMulticloudEndpoint 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 NewAviatrixPrivateModeMulticloudEndpoint

func NewAviatrixPrivateModeMulticloudEndpoint(ctx *pulumi.Context,
	name string, args *AviatrixPrivateModeMulticloudEndpointArgs, opts ...pulumi.ResourceOption) (*AviatrixPrivateModeMulticloudEndpoint, error)

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

func (*AviatrixPrivateModeMulticloudEndpoint) ElementType

func (*AviatrixPrivateModeMulticloudEndpoint) ToAviatrixPrivateModeMulticloudEndpointOutput

func (i *AviatrixPrivateModeMulticloudEndpoint) ToAviatrixPrivateModeMulticloudEndpointOutput() AviatrixPrivateModeMulticloudEndpointOutput

func (*AviatrixPrivateModeMulticloudEndpoint) ToAviatrixPrivateModeMulticloudEndpointOutputWithContext

func (i *AviatrixPrivateModeMulticloudEndpoint) ToAviatrixPrivateModeMulticloudEndpointOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointOutput

type AviatrixPrivateModeMulticloudEndpointArgs

type AviatrixPrivateModeMulticloudEndpointArgs struct {
	// Name of the access account.
	AccountName pulumi.StringInput
	// ID of the VPC containing a Private Mode controller load balancer.
	ControllerLbVpcId pulumi.StringInput
	// Region of the VPC.
	Region pulumi.StringInput
	// ID of the VPC to create the endpoint in.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixPrivateModeMulticloudEndpoint resource.

func (AviatrixPrivateModeMulticloudEndpointArgs) ElementType

type AviatrixPrivateModeMulticloudEndpointArray

type AviatrixPrivateModeMulticloudEndpointArray []AviatrixPrivateModeMulticloudEndpointInput

func (AviatrixPrivateModeMulticloudEndpointArray) ElementType

func (AviatrixPrivateModeMulticloudEndpointArray) ToAviatrixPrivateModeMulticloudEndpointArrayOutput

func (i AviatrixPrivateModeMulticloudEndpointArray) ToAviatrixPrivateModeMulticloudEndpointArrayOutput() AviatrixPrivateModeMulticloudEndpointArrayOutput

func (AviatrixPrivateModeMulticloudEndpointArray) ToAviatrixPrivateModeMulticloudEndpointArrayOutputWithContext

func (i AviatrixPrivateModeMulticloudEndpointArray) ToAviatrixPrivateModeMulticloudEndpointArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointArrayOutput

type AviatrixPrivateModeMulticloudEndpointArrayInput

type AviatrixPrivateModeMulticloudEndpointArrayInput interface {
	pulumi.Input

	ToAviatrixPrivateModeMulticloudEndpointArrayOutput() AviatrixPrivateModeMulticloudEndpointArrayOutput
	ToAviatrixPrivateModeMulticloudEndpointArrayOutputWithContext(context.Context) AviatrixPrivateModeMulticloudEndpointArrayOutput
}

AviatrixPrivateModeMulticloudEndpointArrayInput is an input type that accepts AviatrixPrivateModeMulticloudEndpointArray and AviatrixPrivateModeMulticloudEndpointArrayOutput values. You can construct a concrete instance of `AviatrixPrivateModeMulticloudEndpointArrayInput` via:

AviatrixPrivateModeMulticloudEndpointArray{ AviatrixPrivateModeMulticloudEndpointArgs{...} }

type AviatrixPrivateModeMulticloudEndpointArrayOutput

type AviatrixPrivateModeMulticloudEndpointArrayOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeMulticloudEndpointArrayOutput) ElementType

func (AviatrixPrivateModeMulticloudEndpointArrayOutput) Index

func (AviatrixPrivateModeMulticloudEndpointArrayOutput) ToAviatrixPrivateModeMulticloudEndpointArrayOutput

func (o AviatrixPrivateModeMulticloudEndpointArrayOutput) ToAviatrixPrivateModeMulticloudEndpointArrayOutput() AviatrixPrivateModeMulticloudEndpointArrayOutput

func (AviatrixPrivateModeMulticloudEndpointArrayOutput) ToAviatrixPrivateModeMulticloudEndpointArrayOutputWithContext

func (o AviatrixPrivateModeMulticloudEndpointArrayOutput) ToAviatrixPrivateModeMulticloudEndpointArrayOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointArrayOutput

type AviatrixPrivateModeMulticloudEndpointInput

type AviatrixPrivateModeMulticloudEndpointInput interface {
	pulumi.Input

	ToAviatrixPrivateModeMulticloudEndpointOutput() AviatrixPrivateModeMulticloudEndpointOutput
	ToAviatrixPrivateModeMulticloudEndpointOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointOutput
}

type AviatrixPrivateModeMulticloudEndpointMap

type AviatrixPrivateModeMulticloudEndpointMap map[string]AviatrixPrivateModeMulticloudEndpointInput

func (AviatrixPrivateModeMulticloudEndpointMap) ElementType

func (AviatrixPrivateModeMulticloudEndpointMap) ToAviatrixPrivateModeMulticloudEndpointMapOutput

func (i AviatrixPrivateModeMulticloudEndpointMap) ToAviatrixPrivateModeMulticloudEndpointMapOutput() AviatrixPrivateModeMulticloudEndpointMapOutput

func (AviatrixPrivateModeMulticloudEndpointMap) ToAviatrixPrivateModeMulticloudEndpointMapOutputWithContext

func (i AviatrixPrivateModeMulticloudEndpointMap) ToAviatrixPrivateModeMulticloudEndpointMapOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointMapOutput

type AviatrixPrivateModeMulticloudEndpointMapInput

type AviatrixPrivateModeMulticloudEndpointMapInput interface {
	pulumi.Input

	ToAviatrixPrivateModeMulticloudEndpointMapOutput() AviatrixPrivateModeMulticloudEndpointMapOutput
	ToAviatrixPrivateModeMulticloudEndpointMapOutputWithContext(context.Context) AviatrixPrivateModeMulticloudEndpointMapOutput
}

AviatrixPrivateModeMulticloudEndpointMapInput is an input type that accepts AviatrixPrivateModeMulticloudEndpointMap and AviatrixPrivateModeMulticloudEndpointMapOutput values. You can construct a concrete instance of `AviatrixPrivateModeMulticloudEndpointMapInput` via:

AviatrixPrivateModeMulticloudEndpointMap{ "key": AviatrixPrivateModeMulticloudEndpointArgs{...} }

type AviatrixPrivateModeMulticloudEndpointMapOutput

type AviatrixPrivateModeMulticloudEndpointMapOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeMulticloudEndpointMapOutput) ElementType

func (AviatrixPrivateModeMulticloudEndpointMapOutput) MapIndex

func (AviatrixPrivateModeMulticloudEndpointMapOutput) ToAviatrixPrivateModeMulticloudEndpointMapOutput

func (o AviatrixPrivateModeMulticloudEndpointMapOutput) ToAviatrixPrivateModeMulticloudEndpointMapOutput() AviatrixPrivateModeMulticloudEndpointMapOutput

func (AviatrixPrivateModeMulticloudEndpointMapOutput) ToAviatrixPrivateModeMulticloudEndpointMapOutputWithContext

func (o AviatrixPrivateModeMulticloudEndpointMapOutput) ToAviatrixPrivateModeMulticloudEndpointMapOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointMapOutput

type AviatrixPrivateModeMulticloudEndpointOutput

type AviatrixPrivateModeMulticloudEndpointOutput struct{ *pulumi.OutputState }

func (AviatrixPrivateModeMulticloudEndpointOutput) AccountName

Name of the access account.

func (AviatrixPrivateModeMulticloudEndpointOutput) ControllerLbVpcId

ID of the VPC containing a Private Mode controller load balancer.

func (AviatrixPrivateModeMulticloudEndpointOutput) DnsEntry

DNS entry of the endpoint.

func (AviatrixPrivateModeMulticloudEndpointOutput) ElementType

func (AviatrixPrivateModeMulticloudEndpointOutput) Region

Region of the VPC.

func (AviatrixPrivateModeMulticloudEndpointOutput) ToAviatrixPrivateModeMulticloudEndpointOutput

func (o AviatrixPrivateModeMulticloudEndpointOutput) ToAviatrixPrivateModeMulticloudEndpointOutput() AviatrixPrivateModeMulticloudEndpointOutput

func (AviatrixPrivateModeMulticloudEndpointOutput) ToAviatrixPrivateModeMulticloudEndpointOutputWithContext

func (o AviatrixPrivateModeMulticloudEndpointOutput) ToAviatrixPrivateModeMulticloudEndpointOutputWithContext(ctx context.Context) AviatrixPrivateModeMulticloudEndpointOutput

func (AviatrixPrivateModeMulticloudEndpointOutput) VpcId

ID of the VPC to create the endpoint in.

type AviatrixPrivateModeMulticloudEndpointState

type AviatrixPrivateModeMulticloudEndpointState struct {
	// Name of the access account.
	AccountName pulumi.StringPtrInput
	// ID of the VPC containing a Private Mode controller load balancer.
	ControllerLbVpcId pulumi.StringPtrInput
	// DNS entry of the endpoint.
	DnsEntry pulumi.StringPtrInput
	// Region of the VPC.
	Region pulumi.StringPtrInput
	// ID of the VPC to create the endpoint in.
	VpcId pulumi.StringPtrInput
}

func (AviatrixPrivateModeMulticloudEndpointState) ElementType

type AviatrixProxyConfig

type AviatrixProxyConfig struct {
	pulumi.CustomResourceState

	// Http proxy URL.
	HttpProxy pulumi.StringOutput `pulumi:"httpProxy"`
	// Https proxy URL.
	HttpsProxy pulumi.StringOutput `pulumi:"httpsProxy"`
	// Server CA Certificate file. Use the `file` function to read from a file.
	ProxyCaCertificate pulumi.StringPtrOutput `pulumi:"proxyCaCertificate"`
}

The **aviatrix_proxy_config** resource allows management of an Aviatrix Controller's proxy configurations.

## Example Usage

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixProxyConfig(ctx, "testProxyConfig", &aviatrix.AviatrixProxyConfigArgs{
			HttpProxy:          pulumi.String("172.31.52.145:3127"),
			HttpsProxy:         pulumi.String("172.31.52.145:3129"),
			ProxyCaCertificate: readFileOrPanic("/path/to/ca.pem"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**controller_proxy_config** can be imported using controller IP, e.g. controller IP is 10.11.12.13

```sh

$ pulumi import aviatrix:index/aviatrixProxyConfig:AviatrixProxyConfig test 10-11-12-13

```

func GetAviatrixProxyConfig

func GetAviatrixProxyConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixProxyConfigState, opts ...pulumi.ResourceOption) (*AviatrixProxyConfig, error)

GetAviatrixProxyConfig gets an existing AviatrixProxyConfig 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 NewAviatrixProxyConfig

func NewAviatrixProxyConfig(ctx *pulumi.Context,
	name string, args *AviatrixProxyConfigArgs, opts ...pulumi.ResourceOption) (*AviatrixProxyConfig, error)

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

func (*AviatrixProxyConfig) ElementType

func (*AviatrixProxyConfig) ElementType() reflect.Type

func (*AviatrixProxyConfig) ToAviatrixProxyConfigOutput

func (i *AviatrixProxyConfig) ToAviatrixProxyConfigOutput() AviatrixProxyConfigOutput

func (*AviatrixProxyConfig) ToAviatrixProxyConfigOutputWithContext

func (i *AviatrixProxyConfig) ToAviatrixProxyConfigOutputWithContext(ctx context.Context) AviatrixProxyConfigOutput

type AviatrixProxyConfigArgs

type AviatrixProxyConfigArgs struct {
	// Http proxy URL.
	HttpProxy pulumi.StringInput
	// Https proxy URL.
	HttpsProxy pulumi.StringInput
	// Server CA Certificate file. Use the `file` function to read from a file.
	ProxyCaCertificate pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixProxyConfig resource.

func (AviatrixProxyConfigArgs) ElementType

func (AviatrixProxyConfigArgs) ElementType() reflect.Type

type AviatrixProxyConfigArray

type AviatrixProxyConfigArray []AviatrixProxyConfigInput

func (AviatrixProxyConfigArray) ElementType

func (AviatrixProxyConfigArray) ElementType() reflect.Type

func (AviatrixProxyConfigArray) ToAviatrixProxyConfigArrayOutput

func (i AviatrixProxyConfigArray) ToAviatrixProxyConfigArrayOutput() AviatrixProxyConfigArrayOutput

func (AviatrixProxyConfigArray) ToAviatrixProxyConfigArrayOutputWithContext

func (i AviatrixProxyConfigArray) ToAviatrixProxyConfigArrayOutputWithContext(ctx context.Context) AviatrixProxyConfigArrayOutput

type AviatrixProxyConfigArrayInput

type AviatrixProxyConfigArrayInput interface {
	pulumi.Input

	ToAviatrixProxyConfigArrayOutput() AviatrixProxyConfigArrayOutput
	ToAviatrixProxyConfigArrayOutputWithContext(context.Context) AviatrixProxyConfigArrayOutput
}

AviatrixProxyConfigArrayInput is an input type that accepts AviatrixProxyConfigArray and AviatrixProxyConfigArrayOutput values. You can construct a concrete instance of `AviatrixProxyConfigArrayInput` via:

AviatrixProxyConfigArray{ AviatrixProxyConfigArgs{...} }

type AviatrixProxyConfigArrayOutput

type AviatrixProxyConfigArrayOutput struct{ *pulumi.OutputState }

func (AviatrixProxyConfigArrayOutput) ElementType

func (AviatrixProxyConfigArrayOutput) Index

func (AviatrixProxyConfigArrayOutput) ToAviatrixProxyConfigArrayOutput

func (o AviatrixProxyConfigArrayOutput) ToAviatrixProxyConfigArrayOutput() AviatrixProxyConfigArrayOutput

func (AviatrixProxyConfigArrayOutput) ToAviatrixProxyConfigArrayOutputWithContext

func (o AviatrixProxyConfigArrayOutput) ToAviatrixProxyConfigArrayOutputWithContext(ctx context.Context) AviatrixProxyConfigArrayOutput

type AviatrixProxyConfigInput

type AviatrixProxyConfigInput interface {
	pulumi.Input

	ToAviatrixProxyConfigOutput() AviatrixProxyConfigOutput
	ToAviatrixProxyConfigOutputWithContext(ctx context.Context) AviatrixProxyConfigOutput
}

type AviatrixProxyConfigMap

type AviatrixProxyConfigMap map[string]AviatrixProxyConfigInput

func (AviatrixProxyConfigMap) ElementType

func (AviatrixProxyConfigMap) ElementType() reflect.Type

func (AviatrixProxyConfigMap) ToAviatrixProxyConfigMapOutput

func (i AviatrixProxyConfigMap) ToAviatrixProxyConfigMapOutput() AviatrixProxyConfigMapOutput

func (AviatrixProxyConfigMap) ToAviatrixProxyConfigMapOutputWithContext

func (i AviatrixProxyConfigMap) ToAviatrixProxyConfigMapOutputWithContext(ctx context.Context) AviatrixProxyConfigMapOutput

type AviatrixProxyConfigMapInput

type AviatrixProxyConfigMapInput interface {
	pulumi.Input

	ToAviatrixProxyConfigMapOutput() AviatrixProxyConfigMapOutput
	ToAviatrixProxyConfigMapOutputWithContext(context.Context) AviatrixProxyConfigMapOutput
}

AviatrixProxyConfigMapInput is an input type that accepts AviatrixProxyConfigMap and AviatrixProxyConfigMapOutput values. You can construct a concrete instance of `AviatrixProxyConfigMapInput` via:

AviatrixProxyConfigMap{ "key": AviatrixProxyConfigArgs{...} }

type AviatrixProxyConfigMapOutput

type AviatrixProxyConfigMapOutput struct{ *pulumi.OutputState }

func (AviatrixProxyConfigMapOutput) ElementType

func (AviatrixProxyConfigMapOutput) MapIndex

func (AviatrixProxyConfigMapOutput) ToAviatrixProxyConfigMapOutput

func (o AviatrixProxyConfigMapOutput) ToAviatrixProxyConfigMapOutput() AviatrixProxyConfigMapOutput

func (AviatrixProxyConfigMapOutput) ToAviatrixProxyConfigMapOutputWithContext

func (o AviatrixProxyConfigMapOutput) ToAviatrixProxyConfigMapOutputWithContext(ctx context.Context) AviatrixProxyConfigMapOutput

type AviatrixProxyConfigOutput

type AviatrixProxyConfigOutput struct{ *pulumi.OutputState }

func (AviatrixProxyConfigOutput) ElementType

func (AviatrixProxyConfigOutput) ElementType() reflect.Type

func (AviatrixProxyConfigOutput) HttpProxy

Http proxy URL.

func (AviatrixProxyConfigOutput) HttpsProxy

Https proxy URL.

func (AviatrixProxyConfigOutput) ProxyCaCertificate

func (o AviatrixProxyConfigOutput) ProxyCaCertificate() pulumi.StringPtrOutput

Server CA Certificate file. Use the `file` function to read from a file.

func (AviatrixProxyConfigOutput) ToAviatrixProxyConfigOutput

func (o AviatrixProxyConfigOutput) ToAviatrixProxyConfigOutput() AviatrixProxyConfigOutput

func (AviatrixProxyConfigOutput) ToAviatrixProxyConfigOutputWithContext

func (o AviatrixProxyConfigOutput) ToAviatrixProxyConfigOutputWithContext(ctx context.Context) AviatrixProxyConfigOutput

type AviatrixProxyConfigState

type AviatrixProxyConfigState struct {
	// Http proxy URL.
	HttpProxy pulumi.StringPtrInput
	// Https proxy URL.
	HttpsProxy pulumi.StringPtrInput
	// Server CA Certificate file. Use the `file` function to read from a file.
	ProxyCaCertificate pulumi.StringPtrInput
}

func (AviatrixProxyConfigState) ElementType

func (AviatrixProxyConfigState) ElementType() reflect.Type

type AviatrixRbacGroup

type AviatrixRbacGroup struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a RBAC group to be created.
	GroupName pulumi.StringOutput `pulumi:"groupName"`
	// Whether to allow members of an RBAC group to bypass LDAP/MFA for Duo login . Supported values: true, false. Default value: false. Available in provider version R2.17.1+.
	LocalLogin pulumi.BoolPtrOutput `pulumi:"localLogin"`
}

The **aviatrix_rbac_group** resource allows the creation and management of [Aviatrix (Role-Based Access Control) RBAC groups](https://docs.aviatrix.com/HowTos/rbac_faq.html).

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRbacGroup(ctx, "testGroup", &aviatrix.AviatrixRbacGroupArgs{
			GroupName: pulumi.String("write_only"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**rbac_group** can be imported using the `group_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixRbacGroup:AviatrixRbacGroup test group_name

```

func GetAviatrixRbacGroup

func GetAviatrixRbacGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixRbacGroupState, opts ...pulumi.ResourceOption) (*AviatrixRbacGroup, error)

GetAviatrixRbacGroup gets an existing AviatrixRbacGroup 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 NewAviatrixRbacGroup

func NewAviatrixRbacGroup(ctx *pulumi.Context,
	name string, args *AviatrixRbacGroupArgs, opts ...pulumi.ResourceOption) (*AviatrixRbacGroup, error)

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

func (*AviatrixRbacGroup) ElementType

func (*AviatrixRbacGroup) ElementType() reflect.Type

func (*AviatrixRbacGroup) ToAviatrixRbacGroupOutput

func (i *AviatrixRbacGroup) ToAviatrixRbacGroupOutput() AviatrixRbacGroupOutput

func (*AviatrixRbacGroup) ToAviatrixRbacGroupOutputWithContext

func (i *AviatrixRbacGroup) ToAviatrixRbacGroupOutputWithContext(ctx context.Context) AviatrixRbacGroupOutput

type AviatrixRbacGroupAccessAccountAttachment

type AviatrixRbacGroupAccessAccountAttachment struct {
	pulumi.CustomResourceState

	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccessAccountName pulumi.StringOutput `pulumi:"accessAccountName"`
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringOutput `pulumi:"groupName"`
}

The **aviatrix_rbac_group_access_account_attachment** resource allows the creation and management of access account attachments to Aviatrix (Role-Based Access Control) RBAC groups.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRbacGroupAccessAccountAttachment(ctx, "testAttachment", &aviatrix.AviatrixRbacGroupAccessAccountAttachmentArgs{
			AccessAccountName: pulumi.String("account_name"),
			GroupName:         pulumi.String("write_only"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**rbac_group_access_account_attachment** can be imported using the `group_name` and `access_account_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixRbacGroupAccessAccountAttachment:AviatrixRbacGroupAccessAccountAttachment test group_name~access_account_name

```

func GetAviatrixRbacGroupAccessAccountAttachment

func GetAviatrixRbacGroupAccessAccountAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixRbacGroupAccessAccountAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupAccessAccountAttachment, error)

GetAviatrixRbacGroupAccessAccountAttachment gets an existing AviatrixRbacGroupAccessAccountAttachment 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 NewAviatrixRbacGroupAccessAccountAttachment

func NewAviatrixRbacGroupAccessAccountAttachment(ctx *pulumi.Context,
	name string, args *AviatrixRbacGroupAccessAccountAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupAccessAccountAttachment, error)

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

func (*AviatrixRbacGroupAccessAccountAttachment) ElementType

func (*AviatrixRbacGroupAccessAccountAttachment) ToAviatrixRbacGroupAccessAccountAttachmentOutput

func (i *AviatrixRbacGroupAccessAccountAttachment) ToAviatrixRbacGroupAccessAccountAttachmentOutput() AviatrixRbacGroupAccessAccountAttachmentOutput

func (*AviatrixRbacGroupAccessAccountAttachment) ToAviatrixRbacGroupAccessAccountAttachmentOutputWithContext

func (i *AviatrixRbacGroupAccessAccountAttachment) ToAviatrixRbacGroupAccessAccountAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentOutput

type AviatrixRbacGroupAccessAccountAttachmentArgs

type AviatrixRbacGroupAccessAccountAttachmentArgs struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccessAccountName pulumi.StringInput
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringInput
}

The set of arguments for constructing a AviatrixRbacGroupAccessAccountAttachment resource.

func (AviatrixRbacGroupAccessAccountAttachmentArgs) ElementType

type AviatrixRbacGroupAccessAccountAttachmentArray

type AviatrixRbacGroupAccessAccountAttachmentArray []AviatrixRbacGroupAccessAccountAttachmentInput

func (AviatrixRbacGroupAccessAccountAttachmentArray) ElementType

func (AviatrixRbacGroupAccessAccountAttachmentArray) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutput

func (i AviatrixRbacGroupAccessAccountAttachmentArray) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutput() AviatrixRbacGroupAccessAccountAttachmentArrayOutput

func (AviatrixRbacGroupAccessAccountAttachmentArray) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutputWithContext

func (i AviatrixRbacGroupAccessAccountAttachmentArray) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentArrayOutput

type AviatrixRbacGroupAccessAccountAttachmentArrayInput

type AviatrixRbacGroupAccessAccountAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixRbacGroupAccessAccountAttachmentArrayOutput() AviatrixRbacGroupAccessAccountAttachmentArrayOutput
	ToAviatrixRbacGroupAccessAccountAttachmentArrayOutputWithContext(context.Context) AviatrixRbacGroupAccessAccountAttachmentArrayOutput
}

AviatrixRbacGroupAccessAccountAttachmentArrayInput is an input type that accepts AviatrixRbacGroupAccessAccountAttachmentArray and AviatrixRbacGroupAccessAccountAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixRbacGroupAccessAccountAttachmentArrayInput` via:

AviatrixRbacGroupAccessAccountAttachmentArray{ AviatrixRbacGroupAccessAccountAttachmentArgs{...} }

type AviatrixRbacGroupAccessAccountAttachmentArrayOutput

type AviatrixRbacGroupAccessAccountAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupAccessAccountAttachmentArrayOutput) ElementType

func (AviatrixRbacGroupAccessAccountAttachmentArrayOutput) Index

func (AviatrixRbacGroupAccessAccountAttachmentArrayOutput) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutput

func (o AviatrixRbacGroupAccessAccountAttachmentArrayOutput) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutput() AviatrixRbacGroupAccessAccountAttachmentArrayOutput

func (AviatrixRbacGroupAccessAccountAttachmentArrayOutput) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutputWithContext

func (o AviatrixRbacGroupAccessAccountAttachmentArrayOutput) ToAviatrixRbacGroupAccessAccountAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentArrayOutput

type AviatrixRbacGroupAccessAccountAttachmentInput

type AviatrixRbacGroupAccessAccountAttachmentInput interface {
	pulumi.Input

	ToAviatrixRbacGroupAccessAccountAttachmentOutput() AviatrixRbacGroupAccessAccountAttachmentOutput
	ToAviatrixRbacGroupAccessAccountAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentOutput
}

type AviatrixRbacGroupAccessAccountAttachmentMap

type AviatrixRbacGroupAccessAccountAttachmentMap map[string]AviatrixRbacGroupAccessAccountAttachmentInput

func (AviatrixRbacGroupAccessAccountAttachmentMap) ElementType

func (AviatrixRbacGroupAccessAccountAttachmentMap) ToAviatrixRbacGroupAccessAccountAttachmentMapOutput

func (i AviatrixRbacGroupAccessAccountAttachmentMap) ToAviatrixRbacGroupAccessAccountAttachmentMapOutput() AviatrixRbacGroupAccessAccountAttachmentMapOutput

func (AviatrixRbacGroupAccessAccountAttachmentMap) ToAviatrixRbacGroupAccessAccountAttachmentMapOutputWithContext

func (i AviatrixRbacGroupAccessAccountAttachmentMap) ToAviatrixRbacGroupAccessAccountAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentMapOutput

type AviatrixRbacGroupAccessAccountAttachmentMapInput

type AviatrixRbacGroupAccessAccountAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixRbacGroupAccessAccountAttachmentMapOutput() AviatrixRbacGroupAccessAccountAttachmentMapOutput
	ToAviatrixRbacGroupAccessAccountAttachmentMapOutputWithContext(context.Context) AviatrixRbacGroupAccessAccountAttachmentMapOutput
}

AviatrixRbacGroupAccessAccountAttachmentMapInput is an input type that accepts AviatrixRbacGroupAccessAccountAttachmentMap and AviatrixRbacGroupAccessAccountAttachmentMapOutput values. You can construct a concrete instance of `AviatrixRbacGroupAccessAccountAttachmentMapInput` via:

AviatrixRbacGroupAccessAccountAttachmentMap{ "key": AviatrixRbacGroupAccessAccountAttachmentArgs{...} }

type AviatrixRbacGroupAccessAccountAttachmentMapOutput

type AviatrixRbacGroupAccessAccountAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupAccessAccountAttachmentMapOutput) ElementType

func (AviatrixRbacGroupAccessAccountAttachmentMapOutput) MapIndex

func (AviatrixRbacGroupAccessAccountAttachmentMapOutput) ToAviatrixRbacGroupAccessAccountAttachmentMapOutput

func (o AviatrixRbacGroupAccessAccountAttachmentMapOutput) ToAviatrixRbacGroupAccessAccountAttachmentMapOutput() AviatrixRbacGroupAccessAccountAttachmentMapOutput

func (AviatrixRbacGroupAccessAccountAttachmentMapOutput) ToAviatrixRbacGroupAccessAccountAttachmentMapOutputWithContext

func (o AviatrixRbacGroupAccessAccountAttachmentMapOutput) ToAviatrixRbacGroupAccessAccountAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentMapOutput

type AviatrixRbacGroupAccessAccountAttachmentOutput

type AviatrixRbacGroupAccessAccountAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupAccessAccountAttachmentOutput) AccessAccountName

Account name. This can be used for logging in to CloudN console or UserConnect controller.

func (AviatrixRbacGroupAccessAccountAttachmentOutput) ElementType

func (AviatrixRbacGroupAccessAccountAttachmentOutput) GroupName

This parameter represents the name of a RBAC group.

func (AviatrixRbacGroupAccessAccountAttachmentOutput) ToAviatrixRbacGroupAccessAccountAttachmentOutput

func (o AviatrixRbacGroupAccessAccountAttachmentOutput) ToAviatrixRbacGroupAccessAccountAttachmentOutput() AviatrixRbacGroupAccessAccountAttachmentOutput

func (AviatrixRbacGroupAccessAccountAttachmentOutput) ToAviatrixRbacGroupAccessAccountAttachmentOutputWithContext

func (o AviatrixRbacGroupAccessAccountAttachmentOutput) ToAviatrixRbacGroupAccessAccountAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupAccessAccountAttachmentOutput

type AviatrixRbacGroupAccessAccountAttachmentState

type AviatrixRbacGroupAccessAccountAttachmentState struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccessAccountName pulumi.StringPtrInput
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringPtrInput
}

func (AviatrixRbacGroupAccessAccountAttachmentState) ElementType

type AviatrixRbacGroupArgs

type AviatrixRbacGroupArgs struct {
	// This parameter represents the name of a RBAC group to be created.
	GroupName pulumi.StringInput
	// Whether to allow members of an RBAC group to bypass LDAP/MFA for Duo login . Supported values: true, false. Default value: false. Available in provider version R2.17.1+.
	LocalLogin pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixRbacGroup resource.

func (AviatrixRbacGroupArgs) ElementType

func (AviatrixRbacGroupArgs) ElementType() reflect.Type

type AviatrixRbacGroupArray

type AviatrixRbacGroupArray []AviatrixRbacGroupInput

func (AviatrixRbacGroupArray) ElementType

func (AviatrixRbacGroupArray) ElementType() reflect.Type

func (AviatrixRbacGroupArray) ToAviatrixRbacGroupArrayOutput

func (i AviatrixRbacGroupArray) ToAviatrixRbacGroupArrayOutput() AviatrixRbacGroupArrayOutput

func (AviatrixRbacGroupArray) ToAviatrixRbacGroupArrayOutputWithContext

func (i AviatrixRbacGroupArray) ToAviatrixRbacGroupArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupArrayOutput

type AviatrixRbacGroupArrayInput

type AviatrixRbacGroupArrayInput interface {
	pulumi.Input

	ToAviatrixRbacGroupArrayOutput() AviatrixRbacGroupArrayOutput
	ToAviatrixRbacGroupArrayOutputWithContext(context.Context) AviatrixRbacGroupArrayOutput
}

AviatrixRbacGroupArrayInput is an input type that accepts AviatrixRbacGroupArray and AviatrixRbacGroupArrayOutput values. You can construct a concrete instance of `AviatrixRbacGroupArrayInput` via:

AviatrixRbacGroupArray{ AviatrixRbacGroupArgs{...} }

type AviatrixRbacGroupArrayOutput

type AviatrixRbacGroupArrayOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupArrayOutput) ElementType

func (AviatrixRbacGroupArrayOutput) Index

func (AviatrixRbacGroupArrayOutput) ToAviatrixRbacGroupArrayOutput

func (o AviatrixRbacGroupArrayOutput) ToAviatrixRbacGroupArrayOutput() AviatrixRbacGroupArrayOutput

func (AviatrixRbacGroupArrayOutput) ToAviatrixRbacGroupArrayOutputWithContext

func (o AviatrixRbacGroupArrayOutput) ToAviatrixRbacGroupArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupArrayOutput

type AviatrixRbacGroupInput

type AviatrixRbacGroupInput interface {
	pulumi.Input

	ToAviatrixRbacGroupOutput() AviatrixRbacGroupOutput
	ToAviatrixRbacGroupOutputWithContext(ctx context.Context) AviatrixRbacGroupOutput
}

type AviatrixRbacGroupMap

type AviatrixRbacGroupMap map[string]AviatrixRbacGroupInput

func (AviatrixRbacGroupMap) ElementType

func (AviatrixRbacGroupMap) ElementType() reflect.Type

func (AviatrixRbacGroupMap) ToAviatrixRbacGroupMapOutput

func (i AviatrixRbacGroupMap) ToAviatrixRbacGroupMapOutput() AviatrixRbacGroupMapOutput

func (AviatrixRbacGroupMap) ToAviatrixRbacGroupMapOutputWithContext

func (i AviatrixRbacGroupMap) ToAviatrixRbacGroupMapOutputWithContext(ctx context.Context) AviatrixRbacGroupMapOutput

type AviatrixRbacGroupMapInput

type AviatrixRbacGroupMapInput interface {
	pulumi.Input

	ToAviatrixRbacGroupMapOutput() AviatrixRbacGroupMapOutput
	ToAviatrixRbacGroupMapOutputWithContext(context.Context) AviatrixRbacGroupMapOutput
}

AviatrixRbacGroupMapInput is an input type that accepts AviatrixRbacGroupMap and AviatrixRbacGroupMapOutput values. You can construct a concrete instance of `AviatrixRbacGroupMapInput` via:

AviatrixRbacGroupMap{ "key": AviatrixRbacGroupArgs{...} }

type AviatrixRbacGroupMapOutput

type AviatrixRbacGroupMapOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupMapOutput) ElementType

func (AviatrixRbacGroupMapOutput) ElementType() reflect.Type

func (AviatrixRbacGroupMapOutput) MapIndex

func (AviatrixRbacGroupMapOutput) ToAviatrixRbacGroupMapOutput

func (o AviatrixRbacGroupMapOutput) ToAviatrixRbacGroupMapOutput() AviatrixRbacGroupMapOutput

func (AviatrixRbacGroupMapOutput) ToAviatrixRbacGroupMapOutputWithContext

func (o AviatrixRbacGroupMapOutput) ToAviatrixRbacGroupMapOutputWithContext(ctx context.Context) AviatrixRbacGroupMapOutput

type AviatrixRbacGroupOutput

type AviatrixRbacGroupOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupOutput) ElementType

func (AviatrixRbacGroupOutput) ElementType() reflect.Type

func (AviatrixRbacGroupOutput) GroupName

This parameter represents the name of a RBAC group to be created.

func (AviatrixRbacGroupOutput) LocalLogin

Whether to allow members of an RBAC group to bypass LDAP/MFA for Duo login . Supported values: true, false. Default value: false. Available in provider version R2.17.1+.

func (AviatrixRbacGroupOutput) ToAviatrixRbacGroupOutput

func (o AviatrixRbacGroupOutput) ToAviatrixRbacGroupOutput() AviatrixRbacGroupOutput

func (AviatrixRbacGroupOutput) ToAviatrixRbacGroupOutputWithContext

func (o AviatrixRbacGroupOutput) ToAviatrixRbacGroupOutputWithContext(ctx context.Context) AviatrixRbacGroupOutput

type AviatrixRbacGroupPermissionAttachment

type AviatrixRbacGroupPermissionAttachment struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringOutput `pulumi:"groupName"`
	// This parameter represents the permission to attach to the RBAC group.
	PermissionName pulumi.StringOutput `pulumi:"permissionName"`
}

The **aviatrix_rbac_group_permission_attachment** resource allows the creation and management of permission attachments to Aviatrix (Role-Based Access Control) RBAC groups.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRbacGroupPermissionAttachment(ctx, "testAttachment", &aviatrix.AviatrixRbacGroupPermissionAttachmentArgs{
			GroupName:      pulumi.String("write_only"),
			PermissionName: pulumi.String("all_write"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**rbac_group_permission_attachment** can be imported using the `group_name` and `permission_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixRbacGroupPermissionAttachment:AviatrixRbacGroupPermissionAttachment test group_name~permission_name

```

func GetAviatrixRbacGroupPermissionAttachment

func GetAviatrixRbacGroupPermissionAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixRbacGroupPermissionAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupPermissionAttachment, error)

GetAviatrixRbacGroupPermissionAttachment gets an existing AviatrixRbacGroupPermissionAttachment 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 NewAviatrixRbacGroupPermissionAttachment

func NewAviatrixRbacGroupPermissionAttachment(ctx *pulumi.Context,
	name string, args *AviatrixRbacGroupPermissionAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupPermissionAttachment, error)

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

func (*AviatrixRbacGroupPermissionAttachment) ElementType

func (*AviatrixRbacGroupPermissionAttachment) ToAviatrixRbacGroupPermissionAttachmentOutput

func (i *AviatrixRbacGroupPermissionAttachment) ToAviatrixRbacGroupPermissionAttachmentOutput() AviatrixRbacGroupPermissionAttachmentOutput

func (*AviatrixRbacGroupPermissionAttachment) ToAviatrixRbacGroupPermissionAttachmentOutputWithContext

func (i *AviatrixRbacGroupPermissionAttachment) ToAviatrixRbacGroupPermissionAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentOutput

type AviatrixRbacGroupPermissionAttachmentArgs

type AviatrixRbacGroupPermissionAttachmentArgs struct {
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringInput
	// This parameter represents the permission to attach to the RBAC group.
	PermissionName pulumi.StringInput
}

The set of arguments for constructing a AviatrixRbacGroupPermissionAttachment resource.

func (AviatrixRbacGroupPermissionAttachmentArgs) ElementType

type AviatrixRbacGroupPermissionAttachmentArray

type AviatrixRbacGroupPermissionAttachmentArray []AviatrixRbacGroupPermissionAttachmentInput

func (AviatrixRbacGroupPermissionAttachmentArray) ElementType

func (AviatrixRbacGroupPermissionAttachmentArray) ToAviatrixRbacGroupPermissionAttachmentArrayOutput

func (i AviatrixRbacGroupPermissionAttachmentArray) ToAviatrixRbacGroupPermissionAttachmentArrayOutput() AviatrixRbacGroupPermissionAttachmentArrayOutput

func (AviatrixRbacGroupPermissionAttachmentArray) ToAviatrixRbacGroupPermissionAttachmentArrayOutputWithContext

func (i AviatrixRbacGroupPermissionAttachmentArray) ToAviatrixRbacGroupPermissionAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentArrayOutput

type AviatrixRbacGroupPermissionAttachmentArrayInput

type AviatrixRbacGroupPermissionAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixRbacGroupPermissionAttachmentArrayOutput() AviatrixRbacGroupPermissionAttachmentArrayOutput
	ToAviatrixRbacGroupPermissionAttachmentArrayOutputWithContext(context.Context) AviatrixRbacGroupPermissionAttachmentArrayOutput
}

AviatrixRbacGroupPermissionAttachmentArrayInput is an input type that accepts AviatrixRbacGroupPermissionAttachmentArray and AviatrixRbacGroupPermissionAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixRbacGroupPermissionAttachmentArrayInput` via:

AviatrixRbacGroupPermissionAttachmentArray{ AviatrixRbacGroupPermissionAttachmentArgs{...} }

type AviatrixRbacGroupPermissionAttachmentArrayOutput

type AviatrixRbacGroupPermissionAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupPermissionAttachmentArrayOutput) ElementType

func (AviatrixRbacGroupPermissionAttachmentArrayOutput) Index

func (AviatrixRbacGroupPermissionAttachmentArrayOutput) ToAviatrixRbacGroupPermissionAttachmentArrayOutput

func (o AviatrixRbacGroupPermissionAttachmentArrayOutput) ToAviatrixRbacGroupPermissionAttachmentArrayOutput() AviatrixRbacGroupPermissionAttachmentArrayOutput

func (AviatrixRbacGroupPermissionAttachmentArrayOutput) ToAviatrixRbacGroupPermissionAttachmentArrayOutputWithContext

func (o AviatrixRbacGroupPermissionAttachmentArrayOutput) ToAviatrixRbacGroupPermissionAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentArrayOutput

type AviatrixRbacGroupPermissionAttachmentInput

type AviatrixRbacGroupPermissionAttachmentInput interface {
	pulumi.Input

	ToAviatrixRbacGroupPermissionAttachmentOutput() AviatrixRbacGroupPermissionAttachmentOutput
	ToAviatrixRbacGroupPermissionAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentOutput
}

type AviatrixRbacGroupPermissionAttachmentMap

type AviatrixRbacGroupPermissionAttachmentMap map[string]AviatrixRbacGroupPermissionAttachmentInput

func (AviatrixRbacGroupPermissionAttachmentMap) ElementType

func (AviatrixRbacGroupPermissionAttachmentMap) ToAviatrixRbacGroupPermissionAttachmentMapOutput

func (i AviatrixRbacGroupPermissionAttachmentMap) ToAviatrixRbacGroupPermissionAttachmentMapOutput() AviatrixRbacGroupPermissionAttachmentMapOutput

func (AviatrixRbacGroupPermissionAttachmentMap) ToAviatrixRbacGroupPermissionAttachmentMapOutputWithContext

func (i AviatrixRbacGroupPermissionAttachmentMap) ToAviatrixRbacGroupPermissionAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentMapOutput

type AviatrixRbacGroupPermissionAttachmentMapInput

type AviatrixRbacGroupPermissionAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixRbacGroupPermissionAttachmentMapOutput() AviatrixRbacGroupPermissionAttachmentMapOutput
	ToAviatrixRbacGroupPermissionAttachmentMapOutputWithContext(context.Context) AviatrixRbacGroupPermissionAttachmentMapOutput
}

AviatrixRbacGroupPermissionAttachmentMapInput is an input type that accepts AviatrixRbacGroupPermissionAttachmentMap and AviatrixRbacGroupPermissionAttachmentMapOutput values. You can construct a concrete instance of `AviatrixRbacGroupPermissionAttachmentMapInput` via:

AviatrixRbacGroupPermissionAttachmentMap{ "key": AviatrixRbacGroupPermissionAttachmentArgs{...} }

type AviatrixRbacGroupPermissionAttachmentMapOutput

type AviatrixRbacGroupPermissionAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupPermissionAttachmentMapOutput) ElementType

func (AviatrixRbacGroupPermissionAttachmentMapOutput) MapIndex

func (AviatrixRbacGroupPermissionAttachmentMapOutput) ToAviatrixRbacGroupPermissionAttachmentMapOutput

func (o AviatrixRbacGroupPermissionAttachmentMapOutput) ToAviatrixRbacGroupPermissionAttachmentMapOutput() AviatrixRbacGroupPermissionAttachmentMapOutput

func (AviatrixRbacGroupPermissionAttachmentMapOutput) ToAviatrixRbacGroupPermissionAttachmentMapOutputWithContext

func (o AviatrixRbacGroupPermissionAttachmentMapOutput) ToAviatrixRbacGroupPermissionAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentMapOutput

type AviatrixRbacGroupPermissionAttachmentOutput

type AviatrixRbacGroupPermissionAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupPermissionAttachmentOutput) ElementType

func (AviatrixRbacGroupPermissionAttachmentOutput) GroupName

This parameter represents the name of a RBAC group.

func (AviatrixRbacGroupPermissionAttachmentOutput) PermissionName

This parameter represents the permission to attach to the RBAC group.

func (AviatrixRbacGroupPermissionAttachmentOutput) ToAviatrixRbacGroupPermissionAttachmentOutput

func (o AviatrixRbacGroupPermissionAttachmentOutput) ToAviatrixRbacGroupPermissionAttachmentOutput() AviatrixRbacGroupPermissionAttachmentOutput

func (AviatrixRbacGroupPermissionAttachmentOutput) ToAviatrixRbacGroupPermissionAttachmentOutputWithContext

func (o AviatrixRbacGroupPermissionAttachmentOutput) ToAviatrixRbacGroupPermissionAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupPermissionAttachmentOutput

type AviatrixRbacGroupPermissionAttachmentState

type AviatrixRbacGroupPermissionAttachmentState struct {
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringPtrInput
	// This parameter represents the permission to attach to the RBAC group.
	PermissionName pulumi.StringPtrInput
}

func (AviatrixRbacGroupPermissionAttachmentState) ElementType

type AviatrixRbacGroupState

type AviatrixRbacGroupState struct {
	// This parameter represents the name of a RBAC group to be created.
	GroupName pulumi.StringPtrInput
	// Whether to allow members of an RBAC group to bypass LDAP/MFA for Duo login . Supported values: true, false. Default value: false. Available in provider version R2.17.1+.
	LocalLogin pulumi.BoolPtrInput
}

func (AviatrixRbacGroupState) ElementType

func (AviatrixRbacGroupState) ElementType() reflect.Type

type AviatrixRbacGroupUserAttachment

type AviatrixRbacGroupUserAttachment struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringOutput `pulumi:"groupName"`
	// Username of the account user.
	UserName pulumi.StringOutput `pulumi:"userName"`
}

The **aviatrix_rbac_group_user_attachment** resource allows the creation and management of user attachments to Aviatrix (Role-Based Access Control) RBAC groups.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRbacGroupUserAttachment(ctx, "testAttachment", &aviatrix.AviatrixRbacGroupUserAttachmentArgs{
			GroupName: pulumi.String("write_only"),
			UserName:  pulumi.String("user_name"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**rbac_group_user_attachment** can be imported using the `group_name` and `user_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixRbacGroupUserAttachment:AviatrixRbacGroupUserAttachment test group_name~user_name

```

func GetAviatrixRbacGroupUserAttachment

func GetAviatrixRbacGroupUserAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixRbacGroupUserAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupUserAttachment, error)

GetAviatrixRbacGroupUserAttachment gets an existing AviatrixRbacGroupUserAttachment 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 NewAviatrixRbacGroupUserAttachment

func NewAviatrixRbacGroupUserAttachment(ctx *pulumi.Context,
	name string, args *AviatrixRbacGroupUserAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixRbacGroupUserAttachment, error)

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

func (*AviatrixRbacGroupUserAttachment) ElementType

func (*AviatrixRbacGroupUserAttachment) ToAviatrixRbacGroupUserAttachmentOutput

func (i *AviatrixRbacGroupUserAttachment) ToAviatrixRbacGroupUserAttachmentOutput() AviatrixRbacGroupUserAttachmentOutput

func (*AviatrixRbacGroupUserAttachment) ToAviatrixRbacGroupUserAttachmentOutputWithContext

func (i *AviatrixRbacGroupUserAttachment) ToAviatrixRbacGroupUserAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentOutput

type AviatrixRbacGroupUserAttachmentArgs

type AviatrixRbacGroupUserAttachmentArgs struct {
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringInput
	// Username of the account user.
	UserName pulumi.StringInput
}

The set of arguments for constructing a AviatrixRbacGroupUserAttachment resource.

func (AviatrixRbacGroupUserAttachmentArgs) ElementType

type AviatrixRbacGroupUserAttachmentArray

type AviatrixRbacGroupUserAttachmentArray []AviatrixRbacGroupUserAttachmentInput

func (AviatrixRbacGroupUserAttachmentArray) ElementType

func (AviatrixRbacGroupUserAttachmentArray) ToAviatrixRbacGroupUserAttachmentArrayOutput

func (i AviatrixRbacGroupUserAttachmentArray) ToAviatrixRbacGroupUserAttachmentArrayOutput() AviatrixRbacGroupUserAttachmentArrayOutput

func (AviatrixRbacGroupUserAttachmentArray) ToAviatrixRbacGroupUserAttachmentArrayOutputWithContext

func (i AviatrixRbacGroupUserAttachmentArray) ToAviatrixRbacGroupUserAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentArrayOutput

type AviatrixRbacGroupUserAttachmentArrayInput

type AviatrixRbacGroupUserAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixRbacGroupUserAttachmentArrayOutput() AviatrixRbacGroupUserAttachmentArrayOutput
	ToAviatrixRbacGroupUserAttachmentArrayOutputWithContext(context.Context) AviatrixRbacGroupUserAttachmentArrayOutput
}

AviatrixRbacGroupUserAttachmentArrayInput is an input type that accepts AviatrixRbacGroupUserAttachmentArray and AviatrixRbacGroupUserAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixRbacGroupUserAttachmentArrayInput` via:

AviatrixRbacGroupUserAttachmentArray{ AviatrixRbacGroupUserAttachmentArgs{...} }

type AviatrixRbacGroupUserAttachmentArrayOutput

type AviatrixRbacGroupUserAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupUserAttachmentArrayOutput) ElementType

func (AviatrixRbacGroupUserAttachmentArrayOutput) Index

func (AviatrixRbacGroupUserAttachmentArrayOutput) ToAviatrixRbacGroupUserAttachmentArrayOutput

func (o AviatrixRbacGroupUserAttachmentArrayOutput) ToAviatrixRbacGroupUserAttachmentArrayOutput() AviatrixRbacGroupUserAttachmentArrayOutput

func (AviatrixRbacGroupUserAttachmentArrayOutput) ToAviatrixRbacGroupUserAttachmentArrayOutputWithContext

func (o AviatrixRbacGroupUserAttachmentArrayOutput) ToAviatrixRbacGroupUserAttachmentArrayOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentArrayOutput

type AviatrixRbacGroupUserAttachmentInput

type AviatrixRbacGroupUserAttachmentInput interface {
	pulumi.Input

	ToAviatrixRbacGroupUserAttachmentOutput() AviatrixRbacGroupUserAttachmentOutput
	ToAviatrixRbacGroupUserAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentOutput
}

type AviatrixRbacGroupUserAttachmentMap

type AviatrixRbacGroupUserAttachmentMap map[string]AviatrixRbacGroupUserAttachmentInput

func (AviatrixRbacGroupUserAttachmentMap) ElementType

func (AviatrixRbacGroupUserAttachmentMap) ToAviatrixRbacGroupUserAttachmentMapOutput

func (i AviatrixRbacGroupUserAttachmentMap) ToAviatrixRbacGroupUserAttachmentMapOutput() AviatrixRbacGroupUserAttachmentMapOutput

func (AviatrixRbacGroupUserAttachmentMap) ToAviatrixRbacGroupUserAttachmentMapOutputWithContext

func (i AviatrixRbacGroupUserAttachmentMap) ToAviatrixRbacGroupUserAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentMapOutput

type AviatrixRbacGroupUserAttachmentMapInput

type AviatrixRbacGroupUserAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixRbacGroupUserAttachmentMapOutput() AviatrixRbacGroupUserAttachmentMapOutput
	ToAviatrixRbacGroupUserAttachmentMapOutputWithContext(context.Context) AviatrixRbacGroupUserAttachmentMapOutput
}

AviatrixRbacGroupUserAttachmentMapInput is an input type that accepts AviatrixRbacGroupUserAttachmentMap and AviatrixRbacGroupUserAttachmentMapOutput values. You can construct a concrete instance of `AviatrixRbacGroupUserAttachmentMapInput` via:

AviatrixRbacGroupUserAttachmentMap{ "key": AviatrixRbacGroupUserAttachmentArgs{...} }

type AviatrixRbacGroupUserAttachmentMapOutput

type AviatrixRbacGroupUserAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupUserAttachmentMapOutput) ElementType

func (AviatrixRbacGroupUserAttachmentMapOutput) MapIndex

func (AviatrixRbacGroupUserAttachmentMapOutput) ToAviatrixRbacGroupUserAttachmentMapOutput

func (o AviatrixRbacGroupUserAttachmentMapOutput) ToAviatrixRbacGroupUserAttachmentMapOutput() AviatrixRbacGroupUserAttachmentMapOutput

func (AviatrixRbacGroupUserAttachmentMapOutput) ToAviatrixRbacGroupUserAttachmentMapOutputWithContext

func (o AviatrixRbacGroupUserAttachmentMapOutput) ToAviatrixRbacGroupUserAttachmentMapOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentMapOutput

type AviatrixRbacGroupUserAttachmentOutput

type AviatrixRbacGroupUserAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixRbacGroupUserAttachmentOutput) ElementType

func (AviatrixRbacGroupUserAttachmentOutput) GroupName

This parameter represents the name of a RBAC group.

func (AviatrixRbacGroupUserAttachmentOutput) ToAviatrixRbacGroupUserAttachmentOutput

func (o AviatrixRbacGroupUserAttachmentOutput) ToAviatrixRbacGroupUserAttachmentOutput() AviatrixRbacGroupUserAttachmentOutput

func (AviatrixRbacGroupUserAttachmentOutput) ToAviatrixRbacGroupUserAttachmentOutputWithContext

func (o AviatrixRbacGroupUserAttachmentOutput) ToAviatrixRbacGroupUserAttachmentOutputWithContext(ctx context.Context) AviatrixRbacGroupUserAttachmentOutput

func (AviatrixRbacGroupUserAttachmentOutput) UserName

Username of the account user.

type AviatrixRbacGroupUserAttachmentState

type AviatrixRbacGroupUserAttachmentState struct {
	// This parameter represents the name of a RBAC group.
	GroupName pulumi.StringPtrInput
	// Username of the account user.
	UserName pulumi.StringPtrInput
}

func (AviatrixRbacGroupUserAttachmentState) ElementType

type AviatrixRemoteSyslog

type AviatrixRemoteSyslog struct {
	pulumi.CustomResourceState

	// The Certificate Authority (CA) certificate. Use the `file` function to read from a file.
	CaCertificateFile pulumi.StringPtrOutput `pulumi:"caCertificateFile"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Profile index. An index from 0 to 9 is supported. 0 by default.
	Index pulumi.IntPtrOutput `pulumi:"index"`
	// Profile name.
	Name pulumi.StringOutput `pulumi:"name"`
	// This attribute is true if the remote syslog is not protected by TLS.
	Notls pulumi.BoolOutput `pulumi:"notls"`
	// Port number.
	Port pulumi.IntOutput `pulumi:"port"`
	// The private key of the controller that pairs with the public certificate. Use the `file` function to read from a file.
	PrivateKeyFile pulumi.StringPtrOutput `pulumi:"privateKeyFile"`
	// TCP or UDP. TCP by default.
	Protocol pulumi.StringPtrOutput `pulumi:"protocol"`
	// The public certificate of the controller signed by the same CA. Use the `file` function to read from a file.
	PublicCertificateFile pulumi.StringPtrOutput `pulumi:"publicCertificateFile"`
	// Server IP.
	Server pulumi.StringOutput `pulumi:"server"`
	// The status of remote syslog.
	Status pulumi.StringOutput `pulumi:"status"`
	// Optional custom template.
	Template pulumi.StringPtrOutput `pulumi:"template"`
}

The **aviatrix_remote_syslog** resource allows the enabling and disabling of remote syslog.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRemoteSyslog(ctx, "testRemoteSyslog", &aviatrix.AviatrixRemoteSyslogArgs{
			Index:    pulumi.Int(0),
			Port:     pulumi.Int(10),
			Protocol: pulumi.String("TCP"),
			Server:   pulumi.String("1.2.3.4"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixRemoteSyslog(ctx, "testRemoteSyslog", &aviatrix.AviatrixRemoteSyslogArgs{
			Index:                 pulumi.Int(0),
			Server:                pulumi.String("1.2.3.4"),
			Port:                  pulumi.Int(10),
			Protocol:              pulumi.String("TCP"),
			CaCertificateFile:     readFileOrPanic("/path/to/ca.pem"),
			PublicCertificateFile: readFileOrPanic("/path/to/server.pem"),
			PrivateKeyFile:        readFileOrPanic("/path/to/client.pem"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**remote_syslog** can be imported using "remote_syslog_" + `index`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixRemoteSyslog:AviatrixRemoteSyslog test remote_syslog_0

```

func GetAviatrixRemoteSyslog

func GetAviatrixRemoteSyslog(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixRemoteSyslogState, opts ...pulumi.ResourceOption) (*AviatrixRemoteSyslog, error)

GetAviatrixRemoteSyslog gets an existing AviatrixRemoteSyslog 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 NewAviatrixRemoteSyslog

func NewAviatrixRemoteSyslog(ctx *pulumi.Context,
	name string, args *AviatrixRemoteSyslogArgs, opts ...pulumi.ResourceOption) (*AviatrixRemoteSyslog, error)

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

func (*AviatrixRemoteSyslog) ElementType

func (*AviatrixRemoteSyslog) ElementType() reflect.Type

func (*AviatrixRemoteSyslog) ToAviatrixRemoteSyslogOutput

func (i *AviatrixRemoteSyslog) ToAviatrixRemoteSyslogOutput() AviatrixRemoteSyslogOutput

func (*AviatrixRemoteSyslog) ToAviatrixRemoteSyslogOutputWithContext

func (i *AviatrixRemoteSyslog) ToAviatrixRemoteSyslogOutputWithContext(ctx context.Context) AviatrixRemoteSyslogOutput

type AviatrixRemoteSyslogArgs

type AviatrixRemoteSyslogArgs struct {
	// The Certificate Authority (CA) certificate. Use the `file` function to read from a file.
	CaCertificateFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Profile index. An index from 0 to 9 is supported. 0 by default.
	Index pulumi.IntPtrInput
	// Profile name.
	Name pulumi.StringPtrInput
	// Port number.
	Port pulumi.IntInput
	// The private key of the controller that pairs with the public certificate. Use the `file` function to read from a file.
	PrivateKeyFile pulumi.StringPtrInput
	// TCP or UDP. TCP by default.
	Protocol pulumi.StringPtrInput
	// The public certificate of the controller signed by the same CA. Use the `file` function to read from a file.
	PublicCertificateFile pulumi.StringPtrInput
	// Server IP.
	Server pulumi.StringInput
	// Optional custom template.
	Template pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixRemoteSyslog resource.

func (AviatrixRemoteSyslogArgs) ElementType

func (AviatrixRemoteSyslogArgs) ElementType() reflect.Type

type AviatrixRemoteSyslogArray

type AviatrixRemoteSyslogArray []AviatrixRemoteSyslogInput

func (AviatrixRemoteSyslogArray) ElementType

func (AviatrixRemoteSyslogArray) ElementType() reflect.Type

func (AviatrixRemoteSyslogArray) ToAviatrixRemoteSyslogArrayOutput

func (i AviatrixRemoteSyslogArray) ToAviatrixRemoteSyslogArrayOutput() AviatrixRemoteSyslogArrayOutput

func (AviatrixRemoteSyslogArray) ToAviatrixRemoteSyslogArrayOutputWithContext

func (i AviatrixRemoteSyslogArray) ToAviatrixRemoteSyslogArrayOutputWithContext(ctx context.Context) AviatrixRemoteSyslogArrayOutput

type AviatrixRemoteSyslogArrayInput

type AviatrixRemoteSyslogArrayInput interface {
	pulumi.Input

	ToAviatrixRemoteSyslogArrayOutput() AviatrixRemoteSyslogArrayOutput
	ToAviatrixRemoteSyslogArrayOutputWithContext(context.Context) AviatrixRemoteSyslogArrayOutput
}

AviatrixRemoteSyslogArrayInput is an input type that accepts AviatrixRemoteSyslogArray and AviatrixRemoteSyslogArrayOutput values. You can construct a concrete instance of `AviatrixRemoteSyslogArrayInput` via:

AviatrixRemoteSyslogArray{ AviatrixRemoteSyslogArgs{...} }

type AviatrixRemoteSyslogArrayOutput

type AviatrixRemoteSyslogArrayOutput struct{ *pulumi.OutputState }

func (AviatrixRemoteSyslogArrayOutput) ElementType

func (AviatrixRemoteSyslogArrayOutput) Index

func (AviatrixRemoteSyslogArrayOutput) ToAviatrixRemoteSyslogArrayOutput

func (o AviatrixRemoteSyslogArrayOutput) ToAviatrixRemoteSyslogArrayOutput() AviatrixRemoteSyslogArrayOutput

func (AviatrixRemoteSyslogArrayOutput) ToAviatrixRemoteSyslogArrayOutputWithContext

func (o AviatrixRemoteSyslogArrayOutput) ToAviatrixRemoteSyslogArrayOutputWithContext(ctx context.Context) AviatrixRemoteSyslogArrayOutput

type AviatrixRemoteSyslogInput

type AviatrixRemoteSyslogInput interface {
	pulumi.Input

	ToAviatrixRemoteSyslogOutput() AviatrixRemoteSyslogOutput
	ToAviatrixRemoteSyslogOutputWithContext(ctx context.Context) AviatrixRemoteSyslogOutput
}

type AviatrixRemoteSyslogMap

type AviatrixRemoteSyslogMap map[string]AviatrixRemoteSyslogInput

func (AviatrixRemoteSyslogMap) ElementType

func (AviatrixRemoteSyslogMap) ElementType() reflect.Type

func (AviatrixRemoteSyslogMap) ToAviatrixRemoteSyslogMapOutput

func (i AviatrixRemoteSyslogMap) ToAviatrixRemoteSyslogMapOutput() AviatrixRemoteSyslogMapOutput

func (AviatrixRemoteSyslogMap) ToAviatrixRemoteSyslogMapOutputWithContext

func (i AviatrixRemoteSyslogMap) ToAviatrixRemoteSyslogMapOutputWithContext(ctx context.Context) AviatrixRemoteSyslogMapOutput

type AviatrixRemoteSyslogMapInput

type AviatrixRemoteSyslogMapInput interface {
	pulumi.Input

	ToAviatrixRemoteSyslogMapOutput() AviatrixRemoteSyslogMapOutput
	ToAviatrixRemoteSyslogMapOutputWithContext(context.Context) AviatrixRemoteSyslogMapOutput
}

AviatrixRemoteSyslogMapInput is an input type that accepts AviatrixRemoteSyslogMap and AviatrixRemoteSyslogMapOutput values. You can construct a concrete instance of `AviatrixRemoteSyslogMapInput` via:

AviatrixRemoteSyslogMap{ "key": AviatrixRemoteSyslogArgs{...} }

type AviatrixRemoteSyslogMapOutput

type AviatrixRemoteSyslogMapOutput struct{ *pulumi.OutputState }

func (AviatrixRemoteSyslogMapOutput) ElementType

func (AviatrixRemoteSyslogMapOutput) MapIndex

func (AviatrixRemoteSyslogMapOutput) ToAviatrixRemoteSyslogMapOutput

func (o AviatrixRemoteSyslogMapOutput) ToAviatrixRemoteSyslogMapOutput() AviatrixRemoteSyslogMapOutput

func (AviatrixRemoteSyslogMapOutput) ToAviatrixRemoteSyslogMapOutputWithContext

func (o AviatrixRemoteSyslogMapOutput) ToAviatrixRemoteSyslogMapOutputWithContext(ctx context.Context) AviatrixRemoteSyslogMapOutput

type AviatrixRemoteSyslogOutput

type AviatrixRemoteSyslogOutput struct{ *pulumi.OutputState }

func (AviatrixRemoteSyslogOutput) CaCertificateFile

func (o AviatrixRemoteSyslogOutput) CaCertificateFile() pulumi.StringPtrOutput

The Certificate Authority (CA) certificate. Use the `file` function to read from a file.

func (AviatrixRemoteSyslogOutput) ElementType

func (AviatrixRemoteSyslogOutput) ElementType() reflect.Type

func (AviatrixRemoteSyslogOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixRemoteSyslogOutput) Index

Profile index. An index from 0 to 9 is supported. 0 by default.

func (AviatrixRemoteSyslogOutput) Name

Profile name.

func (AviatrixRemoteSyslogOutput) Notls

This attribute is true if the remote syslog is not protected by TLS.

func (AviatrixRemoteSyslogOutput) Port

Port number.

func (AviatrixRemoteSyslogOutput) PrivateKeyFile

The private key of the controller that pairs with the public certificate. Use the `file` function to read from a file.

func (AviatrixRemoteSyslogOutput) Protocol

TCP or UDP. TCP by default.

func (AviatrixRemoteSyslogOutput) PublicCertificateFile

func (o AviatrixRemoteSyslogOutput) PublicCertificateFile() pulumi.StringPtrOutput

The public certificate of the controller signed by the same CA. Use the `file` function to read from a file.

func (AviatrixRemoteSyslogOutput) Server

Server IP.

func (AviatrixRemoteSyslogOutput) Status

The status of remote syslog.

func (AviatrixRemoteSyslogOutput) Template

Optional custom template.

func (AviatrixRemoteSyslogOutput) ToAviatrixRemoteSyslogOutput

func (o AviatrixRemoteSyslogOutput) ToAviatrixRemoteSyslogOutput() AviatrixRemoteSyslogOutput

func (AviatrixRemoteSyslogOutput) ToAviatrixRemoteSyslogOutputWithContext

func (o AviatrixRemoteSyslogOutput) ToAviatrixRemoteSyslogOutputWithContext(ctx context.Context) AviatrixRemoteSyslogOutput

type AviatrixRemoteSyslogState

type AviatrixRemoteSyslogState struct {
	// The Certificate Authority (CA) certificate. Use the `file` function to read from a file.
	CaCertificateFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Profile index. An index from 0 to 9 is supported. 0 by default.
	Index pulumi.IntPtrInput
	// Profile name.
	Name pulumi.StringPtrInput
	// This attribute is true if the remote syslog is not protected by TLS.
	Notls pulumi.BoolPtrInput
	// Port number.
	Port pulumi.IntPtrInput
	// The private key of the controller that pairs with the public certificate. Use the `file` function to read from a file.
	PrivateKeyFile pulumi.StringPtrInput
	// TCP or UDP. TCP by default.
	Protocol pulumi.StringPtrInput
	// The public certificate of the controller signed by the same CA. Use the `file` function to read from a file.
	PublicCertificateFile pulumi.StringPtrInput
	// Server IP.
	Server pulumi.StringPtrInput
	// The status of remote syslog.
	Status pulumi.StringPtrInput
	// Optional custom template.
	Template pulumi.StringPtrInput
}

func (AviatrixRemoteSyslogState) ElementType

func (AviatrixRemoteSyslogState) ElementType() reflect.Type

type AviatrixSamlEndpoint

type AviatrixSamlEndpoint struct {
	pulumi.CustomResourceState

	// Access type. Valid values: "controller", "profileAttribute". Default value: "controller".
	AccessSetBy pulumi.StringPtrOutput `pulumi:"accessSetBy"`
	// Valid values: true, false. Default value: false. Set true for creating a saml endpoint for controller login.
	ControllerLogin pulumi.BoolPtrOutput `pulumi:"controllerLogin"`
	// Custom Entity ID. Required to be non-empty for 'Custom' Entity ID type, empty for 'Hostname' Entity ID type.
	CustomEntityId pulumi.StringPtrOutput `pulumi:"customEntityId"`
	// Custom SAML Request Template in string.
	CustomSamlRequestTemplate pulumi.StringPtrOutput `pulumi:"customSamlRequestTemplate"`
	// The SAML endpoint name.
	EndpointName pulumi.StringOutput `pulumi:"endpointName"`
	// The IDP Metadata from SAML provider. Required if `idpMetadataType` is "Text" and should be unset if type is "URL". Normally the metadata is in XML format which may contain special characters. Best practice is to use the file function to read from a local Metadata XML file.
	IdpMetadata pulumi.StringPtrOutput `pulumi:"idpMetadata"`
	// The IDP Metadata type. Can be either "Text" or "URL".
	IdpMetadataType pulumi.StringOutput `pulumi:"idpMetadataType"`
	// The IDP Metadata URL from SAML provider. Required if `idpMetadataType` is "URL" and should be unset if type is "Text".
	IdpMetadataUrl pulumi.StringPtrOutput `pulumi:"idpMetadataUrl"`
	// List of rbac groups. Required for controller login and "accessSetBy" of "controller".
	RbacGroups pulumi.StringArrayOutput `pulumi:"rbacGroups"`
	// Whether to sign SAML AuthnRequests
	SignAuthnRequests pulumi.BoolPtrOutput `pulumi:"signAuthnRequests"`
}

## Example Usage

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSamlEndpoint(ctx, "testSamlEndpoint", &aviatrix.AviatrixSamlEndpointArgs{
			EndpointName:    pulumi.String("saml-test"),
			IdpMetadataType: pulumi.String("Text"),
			IdpMetadata:     readFileOrPanic("idp_metadata.xml"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSamlEndpoint(ctx, "testSamlEndpoint", &aviatrix.AviatrixSamlEndpointArgs{
			EndpointName:    pulumi.String("saml-test"),
			IdpMetadataType: pulumi.String("URL"),
			IdpMetadataUrl:  pulumi.String("https://dev-xyzz.okta.com/app/asdfasdfwfwf/sso/saml/metadata"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSamlEndpoint(ctx, "testSamlEndpoint", &aviatrix.AviatrixSamlEndpointArgs{
			AccessSetBy:     pulumi.String("controller"),
			ControllerLogin: pulumi.Bool(true),
			EndpointName:    pulumi.String("saml-test"),
			IdpMetadata:     pulumi.Any(_var.Idp_metadata),
			IdpMetadataType: pulumi.String("Text"),
			RbacGroups: pulumi.StringArray{
				pulumi.String("admin"),
				pulumi.String("read_only"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**saml_endpoint** can be imported using the SAML `endpoint_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSamlEndpoint:AviatrixSamlEndpoint test saml-test

```

func GetAviatrixSamlEndpoint

func GetAviatrixSamlEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSamlEndpointState, opts ...pulumi.ResourceOption) (*AviatrixSamlEndpoint, error)

GetAviatrixSamlEndpoint gets an existing AviatrixSamlEndpoint 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 NewAviatrixSamlEndpoint

func NewAviatrixSamlEndpoint(ctx *pulumi.Context,
	name string, args *AviatrixSamlEndpointArgs, opts ...pulumi.ResourceOption) (*AviatrixSamlEndpoint, error)

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

func (*AviatrixSamlEndpoint) ElementType

func (*AviatrixSamlEndpoint) ElementType() reflect.Type

func (*AviatrixSamlEndpoint) ToAviatrixSamlEndpointOutput

func (i *AviatrixSamlEndpoint) ToAviatrixSamlEndpointOutput() AviatrixSamlEndpointOutput

func (*AviatrixSamlEndpoint) ToAviatrixSamlEndpointOutputWithContext

func (i *AviatrixSamlEndpoint) ToAviatrixSamlEndpointOutputWithContext(ctx context.Context) AviatrixSamlEndpointOutput

type AviatrixSamlEndpointArgs

type AviatrixSamlEndpointArgs struct {
	// Access type. Valid values: "controller", "profileAttribute". Default value: "controller".
	AccessSetBy pulumi.StringPtrInput
	// Valid values: true, false. Default value: false. Set true for creating a saml endpoint for controller login.
	ControllerLogin pulumi.BoolPtrInput
	// Custom Entity ID. Required to be non-empty for 'Custom' Entity ID type, empty for 'Hostname' Entity ID type.
	CustomEntityId pulumi.StringPtrInput
	// Custom SAML Request Template in string.
	CustomSamlRequestTemplate pulumi.StringPtrInput
	// The SAML endpoint name.
	EndpointName pulumi.StringInput
	// The IDP Metadata from SAML provider. Required if `idpMetadataType` is "Text" and should be unset if type is "URL". Normally the metadata is in XML format which may contain special characters. Best practice is to use the file function to read from a local Metadata XML file.
	IdpMetadata pulumi.StringPtrInput
	// The IDP Metadata type. Can be either "Text" or "URL".
	IdpMetadataType pulumi.StringInput
	// The IDP Metadata URL from SAML provider. Required if `idpMetadataType` is "URL" and should be unset if type is "Text".
	IdpMetadataUrl pulumi.StringPtrInput
	// List of rbac groups. Required for controller login and "accessSetBy" of "controller".
	RbacGroups pulumi.StringArrayInput
	// Whether to sign SAML AuthnRequests
	SignAuthnRequests pulumi.BoolPtrInput
}

The set of arguments for constructing a AviatrixSamlEndpoint resource.

func (AviatrixSamlEndpointArgs) ElementType

func (AviatrixSamlEndpointArgs) ElementType() reflect.Type

type AviatrixSamlEndpointArray

type AviatrixSamlEndpointArray []AviatrixSamlEndpointInput

func (AviatrixSamlEndpointArray) ElementType

func (AviatrixSamlEndpointArray) ElementType() reflect.Type

func (AviatrixSamlEndpointArray) ToAviatrixSamlEndpointArrayOutput

func (i AviatrixSamlEndpointArray) ToAviatrixSamlEndpointArrayOutput() AviatrixSamlEndpointArrayOutput

func (AviatrixSamlEndpointArray) ToAviatrixSamlEndpointArrayOutputWithContext

func (i AviatrixSamlEndpointArray) ToAviatrixSamlEndpointArrayOutputWithContext(ctx context.Context) AviatrixSamlEndpointArrayOutput

type AviatrixSamlEndpointArrayInput

type AviatrixSamlEndpointArrayInput interface {
	pulumi.Input

	ToAviatrixSamlEndpointArrayOutput() AviatrixSamlEndpointArrayOutput
	ToAviatrixSamlEndpointArrayOutputWithContext(context.Context) AviatrixSamlEndpointArrayOutput
}

AviatrixSamlEndpointArrayInput is an input type that accepts AviatrixSamlEndpointArray and AviatrixSamlEndpointArrayOutput values. You can construct a concrete instance of `AviatrixSamlEndpointArrayInput` via:

AviatrixSamlEndpointArray{ AviatrixSamlEndpointArgs{...} }

type AviatrixSamlEndpointArrayOutput

type AviatrixSamlEndpointArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSamlEndpointArrayOutput) ElementType

func (AviatrixSamlEndpointArrayOutput) Index

func (AviatrixSamlEndpointArrayOutput) ToAviatrixSamlEndpointArrayOutput

func (o AviatrixSamlEndpointArrayOutput) ToAviatrixSamlEndpointArrayOutput() AviatrixSamlEndpointArrayOutput

func (AviatrixSamlEndpointArrayOutput) ToAviatrixSamlEndpointArrayOutputWithContext

func (o AviatrixSamlEndpointArrayOutput) ToAviatrixSamlEndpointArrayOutputWithContext(ctx context.Context) AviatrixSamlEndpointArrayOutput

type AviatrixSamlEndpointInput

type AviatrixSamlEndpointInput interface {
	pulumi.Input

	ToAviatrixSamlEndpointOutput() AviatrixSamlEndpointOutput
	ToAviatrixSamlEndpointOutputWithContext(ctx context.Context) AviatrixSamlEndpointOutput
}

type AviatrixSamlEndpointMap

type AviatrixSamlEndpointMap map[string]AviatrixSamlEndpointInput

func (AviatrixSamlEndpointMap) ElementType

func (AviatrixSamlEndpointMap) ElementType() reflect.Type

func (AviatrixSamlEndpointMap) ToAviatrixSamlEndpointMapOutput

func (i AviatrixSamlEndpointMap) ToAviatrixSamlEndpointMapOutput() AviatrixSamlEndpointMapOutput

func (AviatrixSamlEndpointMap) ToAviatrixSamlEndpointMapOutputWithContext

func (i AviatrixSamlEndpointMap) ToAviatrixSamlEndpointMapOutputWithContext(ctx context.Context) AviatrixSamlEndpointMapOutput

type AviatrixSamlEndpointMapInput

type AviatrixSamlEndpointMapInput interface {
	pulumi.Input

	ToAviatrixSamlEndpointMapOutput() AviatrixSamlEndpointMapOutput
	ToAviatrixSamlEndpointMapOutputWithContext(context.Context) AviatrixSamlEndpointMapOutput
}

AviatrixSamlEndpointMapInput is an input type that accepts AviatrixSamlEndpointMap and AviatrixSamlEndpointMapOutput values. You can construct a concrete instance of `AviatrixSamlEndpointMapInput` via:

AviatrixSamlEndpointMap{ "key": AviatrixSamlEndpointArgs{...} }

type AviatrixSamlEndpointMapOutput

type AviatrixSamlEndpointMapOutput struct{ *pulumi.OutputState }

func (AviatrixSamlEndpointMapOutput) ElementType

func (AviatrixSamlEndpointMapOutput) MapIndex

func (AviatrixSamlEndpointMapOutput) ToAviatrixSamlEndpointMapOutput

func (o AviatrixSamlEndpointMapOutput) ToAviatrixSamlEndpointMapOutput() AviatrixSamlEndpointMapOutput

func (AviatrixSamlEndpointMapOutput) ToAviatrixSamlEndpointMapOutputWithContext

func (o AviatrixSamlEndpointMapOutput) ToAviatrixSamlEndpointMapOutputWithContext(ctx context.Context) AviatrixSamlEndpointMapOutput

type AviatrixSamlEndpointOutput

type AviatrixSamlEndpointOutput struct{ *pulumi.OutputState }

func (AviatrixSamlEndpointOutput) AccessSetBy

Access type. Valid values: "controller", "profileAttribute". Default value: "controller".

func (AviatrixSamlEndpointOutput) ControllerLogin

func (o AviatrixSamlEndpointOutput) ControllerLogin() pulumi.BoolPtrOutput

Valid values: true, false. Default value: false. Set true for creating a saml endpoint for controller login.

func (AviatrixSamlEndpointOutput) CustomEntityId

Custom Entity ID. Required to be non-empty for 'Custom' Entity ID type, empty for 'Hostname' Entity ID type.

func (AviatrixSamlEndpointOutput) CustomSamlRequestTemplate

func (o AviatrixSamlEndpointOutput) CustomSamlRequestTemplate() pulumi.StringPtrOutput

Custom SAML Request Template in string.

func (AviatrixSamlEndpointOutput) ElementType

func (AviatrixSamlEndpointOutput) ElementType() reflect.Type

func (AviatrixSamlEndpointOutput) EndpointName

The SAML endpoint name.

func (AviatrixSamlEndpointOutput) IdpMetadata

The IDP Metadata from SAML provider. Required if `idpMetadataType` is "Text" and should be unset if type is "URL". Normally the metadata is in XML format which may contain special characters. Best practice is to use the file function to read from a local Metadata XML file.

func (AviatrixSamlEndpointOutput) IdpMetadataType

func (o AviatrixSamlEndpointOutput) IdpMetadataType() pulumi.StringOutput

The IDP Metadata type. Can be either "Text" or "URL".

func (AviatrixSamlEndpointOutput) IdpMetadataUrl

The IDP Metadata URL from SAML provider. Required if `idpMetadataType` is "URL" and should be unset if type is "Text".

func (AviatrixSamlEndpointOutput) RbacGroups

List of rbac groups. Required for controller login and "accessSetBy" of "controller".

func (AviatrixSamlEndpointOutput) SignAuthnRequests

func (o AviatrixSamlEndpointOutput) SignAuthnRequests() pulumi.BoolPtrOutput

Whether to sign SAML AuthnRequests

func (AviatrixSamlEndpointOutput) ToAviatrixSamlEndpointOutput

func (o AviatrixSamlEndpointOutput) ToAviatrixSamlEndpointOutput() AviatrixSamlEndpointOutput

func (AviatrixSamlEndpointOutput) ToAviatrixSamlEndpointOutputWithContext

func (o AviatrixSamlEndpointOutput) ToAviatrixSamlEndpointOutputWithContext(ctx context.Context) AviatrixSamlEndpointOutput

type AviatrixSamlEndpointState

type AviatrixSamlEndpointState struct {
	// Access type. Valid values: "controller", "profileAttribute". Default value: "controller".
	AccessSetBy pulumi.StringPtrInput
	// Valid values: true, false. Default value: false. Set true for creating a saml endpoint for controller login.
	ControllerLogin pulumi.BoolPtrInput
	// Custom Entity ID. Required to be non-empty for 'Custom' Entity ID type, empty for 'Hostname' Entity ID type.
	CustomEntityId pulumi.StringPtrInput
	// Custom SAML Request Template in string.
	CustomSamlRequestTemplate pulumi.StringPtrInput
	// The SAML endpoint name.
	EndpointName pulumi.StringPtrInput
	// The IDP Metadata from SAML provider. Required if `idpMetadataType` is "Text" and should be unset if type is "URL". Normally the metadata is in XML format which may contain special characters. Best practice is to use the file function to read from a local Metadata XML file.
	IdpMetadata pulumi.StringPtrInput
	// The IDP Metadata type. Can be either "Text" or "URL".
	IdpMetadataType pulumi.StringPtrInput
	// The IDP Metadata URL from SAML provider. Required if `idpMetadataType` is "URL" and should be unset if type is "Text".
	IdpMetadataUrl pulumi.StringPtrInput
	// List of rbac groups. Required for controller login and "accessSetBy" of "controller".
	RbacGroups pulumi.StringArrayInput
	// Whether to sign SAML AuthnRequests
	SignAuthnRequests pulumi.BoolPtrInput
}

func (AviatrixSamlEndpointState) ElementType

func (AviatrixSamlEndpointState) ElementType() reflect.Type

type AviatrixSegmentationNetworkDomain

type AviatrixSegmentationNetworkDomain struct {
	pulumi.CustomResourceState

	// Name of the Network Domain.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
}

The **aviatrix_segmentation_network_domain** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Network Domains.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationNetworkDomain(ctx, "testSegmentationNetworkDomain", &aviatrix.AviatrixSegmentationNetworkDomainArgs{
			DomainName: pulumi.String("domain-a"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_network_domain** can be imported using the `domain_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationNetworkDomain:AviatrixSegmentationNetworkDomain test domain_name

```

func GetAviatrixSegmentationNetworkDomain

func GetAviatrixSegmentationNetworkDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSegmentationNetworkDomainState, opts ...pulumi.ResourceOption) (*AviatrixSegmentationNetworkDomain, error)

GetAviatrixSegmentationNetworkDomain gets an existing AviatrixSegmentationNetworkDomain 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 NewAviatrixSegmentationNetworkDomain

func NewAviatrixSegmentationNetworkDomain(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationNetworkDomainArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationNetworkDomain, error)

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

func (*AviatrixSegmentationNetworkDomain) ElementType

func (*AviatrixSegmentationNetworkDomain) ToAviatrixSegmentationNetworkDomainOutput

func (i *AviatrixSegmentationNetworkDomain) ToAviatrixSegmentationNetworkDomainOutput() AviatrixSegmentationNetworkDomainOutput

func (*AviatrixSegmentationNetworkDomain) ToAviatrixSegmentationNetworkDomainOutputWithContext

func (i *AviatrixSegmentationNetworkDomain) ToAviatrixSegmentationNetworkDomainOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainOutput

type AviatrixSegmentationNetworkDomainArgs

type AviatrixSegmentationNetworkDomainArgs struct {
	// Name of the Network Domain.
	DomainName pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationNetworkDomain resource.

func (AviatrixSegmentationNetworkDomainArgs) ElementType

type AviatrixSegmentationNetworkDomainArray

type AviatrixSegmentationNetworkDomainArray []AviatrixSegmentationNetworkDomainInput

func (AviatrixSegmentationNetworkDomainArray) ElementType

func (AviatrixSegmentationNetworkDomainArray) ToAviatrixSegmentationNetworkDomainArrayOutput

func (i AviatrixSegmentationNetworkDomainArray) ToAviatrixSegmentationNetworkDomainArrayOutput() AviatrixSegmentationNetworkDomainArrayOutput

func (AviatrixSegmentationNetworkDomainArray) ToAviatrixSegmentationNetworkDomainArrayOutputWithContext

func (i AviatrixSegmentationNetworkDomainArray) ToAviatrixSegmentationNetworkDomainArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainArrayOutput

type AviatrixSegmentationNetworkDomainArrayInput

type AviatrixSegmentationNetworkDomainArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainArrayOutput() AviatrixSegmentationNetworkDomainArrayOutput
	ToAviatrixSegmentationNetworkDomainArrayOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainArrayOutput
}

AviatrixSegmentationNetworkDomainArrayInput is an input type that accepts AviatrixSegmentationNetworkDomainArray and AviatrixSegmentationNetworkDomainArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainArrayInput` via:

AviatrixSegmentationNetworkDomainArray{ AviatrixSegmentationNetworkDomainArgs{...} }

type AviatrixSegmentationNetworkDomainArrayOutput

type AviatrixSegmentationNetworkDomainArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainArrayOutput) ElementType

func (AviatrixSegmentationNetworkDomainArrayOutput) Index

func (AviatrixSegmentationNetworkDomainArrayOutput) ToAviatrixSegmentationNetworkDomainArrayOutput

func (o AviatrixSegmentationNetworkDomainArrayOutput) ToAviatrixSegmentationNetworkDomainArrayOutput() AviatrixSegmentationNetworkDomainArrayOutput

func (AviatrixSegmentationNetworkDomainArrayOutput) ToAviatrixSegmentationNetworkDomainArrayOutputWithContext

func (o AviatrixSegmentationNetworkDomainArrayOutput) ToAviatrixSegmentationNetworkDomainArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainArrayOutput

type AviatrixSegmentationNetworkDomainAssociation

type AviatrixSegmentationNetworkDomainAssociation struct {
	pulumi.CustomResourceState

	// Name of the transit gateway attachment, Spoke or Edge, to associate with the network domain.
	AttachmentName pulumi.StringOutput `pulumi:"attachmentName"`
	// Name of the Segmentation Network Domain.
	NetworkDomainName pulumi.StringOutput `pulumi:"networkDomainName"`
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringOutput `pulumi:"transitGatewayName"`
}

The **aviatrix_segmentation_network_domain_association** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Network Domain and Transit Gateway Attachment Associations.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationNetworkDomainAssociation(ctx, "testSegmentationNetworkDomainAssociation", &aviatrix.AviatrixSegmentationNetworkDomainAssociationArgs{
			AttachmentName:     pulumi.String("attachment-name"),
			NetworkDomainName:  pulumi.String("network-domain-name"),
			TransitGatewayName: pulumi.String("transit-gw-name"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_network_domain_association** can be imported using `transit_gateway_name`, `network_domain_name` and `attachment_name` separated by a `~` e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationNetworkDomainAssociation:AviatrixSegmentationNetworkDomainAssociation test transit_gateway_name~network_domain_name~attachment_name

```

func GetAviatrixSegmentationNetworkDomainAssociation

func GetAviatrixSegmentationNetworkDomainAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSegmentationNetworkDomainAssociationState, opts ...pulumi.ResourceOption) (*AviatrixSegmentationNetworkDomainAssociation, error)

GetAviatrixSegmentationNetworkDomainAssociation gets an existing AviatrixSegmentationNetworkDomainAssociation 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 NewAviatrixSegmentationNetworkDomainAssociation

func NewAviatrixSegmentationNetworkDomainAssociation(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationNetworkDomainAssociationArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationNetworkDomainAssociation, error)

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

func (*AviatrixSegmentationNetworkDomainAssociation) ElementType

func (*AviatrixSegmentationNetworkDomainAssociation) ToAviatrixSegmentationNetworkDomainAssociationOutput

func (i *AviatrixSegmentationNetworkDomainAssociation) ToAviatrixSegmentationNetworkDomainAssociationOutput() AviatrixSegmentationNetworkDomainAssociationOutput

func (*AviatrixSegmentationNetworkDomainAssociation) ToAviatrixSegmentationNetworkDomainAssociationOutputWithContext

func (i *AviatrixSegmentationNetworkDomainAssociation) ToAviatrixSegmentationNetworkDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationOutput

type AviatrixSegmentationNetworkDomainAssociationArgs

type AviatrixSegmentationNetworkDomainAssociationArgs struct {
	// Name of the transit gateway attachment, Spoke or Edge, to associate with the network domain.
	AttachmentName pulumi.StringInput
	// Name of the Segmentation Network Domain.
	NetworkDomainName pulumi.StringInput
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationNetworkDomainAssociation resource.

func (AviatrixSegmentationNetworkDomainAssociationArgs) ElementType

type AviatrixSegmentationNetworkDomainAssociationArray

type AviatrixSegmentationNetworkDomainAssociationArray []AviatrixSegmentationNetworkDomainAssociationInput

func (AviatrixSegmentationNetworkDomainAssociationArray) ElementType

func (AviatrixSegmentationNetworkDomainAssociationArray) ToAviatrixSegmentationNetworkDomainAssociationArrayOutput

func (i AviatrixSegmentationNetworkDomainAssociationArray) ToAviatrixSegmentationNetworkDomainAssociationArrayOutput() AviatrixSegmentationNetworkDomainAssociationArrayOutput

func (AviatrixSegmentationNetworkDomainAssociationArray) ToAviatrixSegmentationNetworkDomainAssociationArrayOutputWithContext

func (i AviatrixSegmentationNetworkDomainAssociationArray) ToAviatrixSegmentationNetworkDomainAssociationArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationArrayOutput

type AviatrixSegmentationNetworkDomainAssociationArrayInput

type AviatrixSegmentationNetworkDomainAssociationArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainAssociationArrayOutput() AviatrixSegmentationNetworkDomainAssociationArrayOutput
	ToAviatrixSegmentationNetworkDomainAssociationArrayOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainAssociationArrayOutput
}

AviatrixSegmentationNetworkDomainAssociationArrayInput is an input type that accepts AviatrixSegmentationNetworkDomainAssociationArray and AviatrixSegmentationNetworkDomainAssociationArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainAssociationArrayInput` via:

AviatrixSegmentationNetworkDomainAssociationArray{ AviatrixSegmentationNetworkDomainAssociationArgs{...} }

type AviatrixSegmentationNetworkDomainAssociationArrayOutput

type AviatrixSegmentationNetworkDomainAssociationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainAssociationArrayOutput) ElementType

func (AviatrixSegmentationNetworkDomainAssociationArrayOutput) Index

func (AviatrixSegmentationNetworkDomainAssociationArrayOutput) ToAviatrixSegmentationNetworkDomainAssociationArrayOutput

func (AviatrixSegmentationNetworkDomainAssociationArrayOutput) ToAviatrixSegmentationNetworkDomainAssociationArrayOutputWithContext

func (o AviatrixSegmentationNetworkDomainAssociationArrayOutput) ToAviatrixSegmentationNetworkDomainAssociationArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationArrayOutput

type AviatrixSegmentationNetworkDomainAssociationInput

type AviatrixSegmentationNetworkDomainAssociationInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainAssociationOutput() AviatrixSegmentationNetworkDomainAssociationOutput
	ToAviatrixSegmentationNetworkDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationOutput
}

type AviatrixSegmentationNetworkDomainAssociationMap

type AviatrixSegmentationNetworkDomainAssociationMap map[string]AviatrixSegmentationNetworkDomainAssociationInput

func (AviatrixSegmentationNetworkDomainAssociationMap) ElementType

func (AviatrixSegmentationNetworkDomainAssociationMap) ToAviatrixSegmentationNetworkDomainAssociationMapOutput

func (i AviatrixSegmentationNetworkDomainAssociationMap) ToAviatrixSegmentationNetworkDomainAssociationMapOutput() AviatrixSegmentationNetworkDomainAssociationMapOutput

func (AviatrixSegmentationNetworkDomainAssociationMap) ToAviatrixSegmentationNetworkDomainAssociationMapOutputWithContext

func (i AviatrixSegmentationNetworkDomainAssociationMap) ToAviatrixSegmentationNetworkDomainAssociationMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationMapOutput

type AviatrixSegmentationNetworkDomainAssociationMapInput

type AviatrixSegmentationNetworkDomainAssociationMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainAssociationMapOutput() AviatrixSegmentationNetworkDomainAssociationMapOutput
	ToAviatrixSegmentationNetworkDomainAssociationMapOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainAssociationMapOutput
}

AviatrixSegmentationNetworkDomainAssociationMapInput is an input type that accepts AviatrixSegmentationNetworkDomainAssociationMap and AviatrixSegmentationNetworkDomainAssociationMapOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainAssociationMapInput` via:

AviatrixSegmentationNetworkDomainAssociationMap{ "key": AviatrixSegmentationNetworkDomainAssociationArgs{...} }

type AviatrixSegmentationNetworkDomainAssociationMapOutput

type AviatrixSegmentationNetworkDomainAssociationMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainAssociationMapOutput) ElementType

func (AviatrixSegmentationNetworkDomainAssociationMapOutput) MapIndex

func (AviatrixSegmentationNetworkDomainAssociationMapOutput) ToAviatrixSegmentationNetworkDomainAssociationMapOutput

func (AviatrixSegmentationNetworkDomainAssociationMapOutput) ToAviatrixSegmentationNetworkDomainAssociationMapOutputWithContext

func (o AviatrixSegmentationNetworkDomainAssociationMapOutput) ToAviatrixSegmentationNetworkDomainAssociationMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationMapOutput

type AviatrixSegmentationNetworkDomainAssociationOutput

type AviatrixSegmentationNetworkDomainAssociationOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainAssociationOutput) AttachmentName

Name of the transit gateway attachment, Spoke or Edge, to associate with the network domain.

func (AviatrixSegmentationNetworkDomainAssociationOutput) ElementType

func (AviatrixSegmentationNetworkDomainAssociationOutput) NetworkDomainName

Name of the Segmentation Network Domain.

func (AviatrixSegmentationNetworkDomainAssociationOutput) ToAviatrixSegmentationNetworkDomainAssociationOutput

func (o AviatrixSegmentationNetworkDomainAssociationOutput) ToAviatrixSegmentationNetworkDomainAssociationOutput() AviatrixSegmentationNetworkDomainAssociationOutput

func (AviatrixSegmentationNetworkDomainAssociationOutput) ToAviatrixSegmentationNetworkDomainAssociationOutputWithContext

func (o AviatrixSegmentationNetworkDomainAssociationOutput) ToAviatrixSegmentationNetworkDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainAssociationOutput

func (AviatrixSegmentationNetworkDomainAssociationOutput) TransitGatewayName

Name of the Transit Gateway.

type AviatrixSegmentationNetworkDomainAssociationState

type AviatrixSegmentationNetworkDomainAssociationState struct {
	// Name of the transit gateway attachment, Spoke or Edge, to associate with the network domain.
	AttachmentName pulumi.StringPtrInput
	// Name of the Segmentation Network Domain.
	NetworkDomainName pulumi.StringPtrInput
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringPtrInput
}

func (AviatrixSegmentationNetworkDomainAssociationState) ElementType

type AviatrixSegmentationNetworkDomainConnectionPolicy

type AviatrixSegmentationNetworkDomainConnectionPolicy struct {
	pulumi.CustomResourceState

	// Name of the Network Domain to connect to Domain 2.
	DomainName1 pulumi.StringOutput `pulumi:"domainName1"`
	// Name of the Network Domain to connect to Domain 1.
	DomainName2 pulumi.StringOutput `pulumi:"domainName2"`
}

The **aviatrix_segmentation_network_domain_connection_policy** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Network Domain Connection Policies.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationNetworkDomainConnectionPolicy(ctx, "testSegmentationNetworkDomainConnectionPolicy", &aviatrix.AviatrixSegmentationNetworkDomainConnectionPolicyArgs{
			DomainName1: pulumi.String("domain-a"),
			DomainName2: pulumi.String("domain-b"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_network_domain_connection_policy** can be imported using `domain_name_1` and `domain_name_2` separated by a `~`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationNetworkDomainConnectionPolicy:AviatrixSegmentationNetworkDomainConnectionPolicy test domain_name_1~domain_name_2

```

func GetAviatrixSegmentationNetworkDomainConnectionPolicy

GetAviatrixSegmentationNetworkDomainConnectionPolicy gets an existing AviatrixSegmentationNetworkDomainConnectionPolicy 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 NewAviatrixSegmentationNetworkDomainConnectionPolicy

func NewAviatrixSegmentationNetworkDomainConnectionPolicy(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationNetworkDomainConnectionPolicyArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationNetworkDomainConnectionPolicy, error)

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

func (*AviatrixSegmentationNetworkDomainConnectionPolicy) ElementType

func (*AviatrixSegmentationNetworkDomainConnectionPolicy) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutput

func (i *AviatrixSegmentationNetworkDomainConnectionPolicy) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutput() AviatrixSegmentationNetworkDomainConnectionPolicyOutput

func (*AviatrixSegmentationNetworkDomainConnectionPolicy) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutputWithContext

func (i *AviatrixSegmentationNetworkDomainConnectionPolicy) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyArgs

type AviatrixSegmentationNetworkDomainConnectionPolicyArgs struct {
	// Name of the Network Domain to connect to Domain 2.
	DomainName1 pulumi.StringInput
	// Name of the Network Domain to connect to Domain 1.
	DomainName2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationNetworkDomainConnectionPolicy resource.

func (AviatrixSegmentationNetworkDomainConnectionPolicyArgs) ElementType

type AviatrixSegmentationNetworkDomainConnectionPolicyArray

type AviatrixSegmentationNetworkDomainConnectionPolicyArray []AviatrixSegmentationNetworkDomainConnectionPolicyInput

func (AviatrixSegmentationNetworkDomainConnectionPolicyArray) ElementType

func (AviatrixSegmentationNetworkDomainConnectionPolicyArray) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

func (i AviatrixSegmentationNetworkDomainConnectionPolicyArray) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput() AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

func (AviatrixSegmentationNetworkDomainConnectionPolicyArray) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutputWithContext

func (i AviatrixSegmentationNetworkDomainConnectionPolicyArray) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyArrayInput

type AviatrixSegmentationNetworkDomainConnectionPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput() AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput
	ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput
}

AviatrixSegmentationNetworkDomainConnectionPolicyArrayInput is an input type that accepts AviatrixSegmentationNetworkDomainConnectionPolicyArray and AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainConnectionPolicyArrayInput` via:

AviatrixSegmentationNetworkDomainConnectionPolicyArray{ AviatrixSegmentationNetworkDomainConnectionPolicyArgs{...} }

type AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput) ElementType

func (AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput) Index

func (AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

func (AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutputWithContext

func (o AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyArrayOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyInput

type AviatrixSegmentationNetworkDomainConnectionPolicyInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainConnectionPolicyOutput() AviatrixSegmentationNetworkDomainConnectionPolicyOutput
	ToAviatrixSegmentationNetworkDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyOutput
}

type AviatrixSegmentationNetworkDomainConnectionPolicyMap

type AviatrixSegmentationNetworkDomainConnectionPolicyMap map[string]AviatrixSegmentationNetworkDomainConnectionPolicyInput

func (AviatrixSegmentationNetworkDomainConnectionPolicyMap) ElementType

func (AviatrixSegmentationNetworkDomainConnectionPolicyMap) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

func (i AviatrixSegmentationNetworkDomainConnectionPolicyMap) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutput() AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

func (AviatrixSegmentationNetworkDomainConnectionPolicyMap) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutputWithContext

func (i AviatrixSegmentationNetworkDomainConnectionPolicyMap) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyMapInput

type AviatrixSegmentationNetworkDomainConnectionPolicyMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutput() AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput
	ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput
}

AviatrixSegmentationNetworkDomainConnectionPolicyMapInput is an input type that accepts AviatrixSegmentationNetworkDomainConnectionPolicyMap and AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainConnectionPolicyMapInput` via:

AviatrixSegmentationNetworkDomainConnectionPolicyMap{ "key": AviatrixSegmentationNetworkDomainConnectionPolicyArgs{...} }

type AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput) ElementType

func (AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput) MapIndex

func (AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

func (AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutputWithContext

func (o AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyMapOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainConnectionPolicyOutput) DomainName1

Name of the Network Domain to connect to Domain 2.

func (AviatrixSegmentationNetworkDomainConnectionPolicyOutput) DomainName2

Name of the Network Domain to connect to Domain 1.

func (AviatrixSegmentationNetworkDomainConnectionPolicyOutput) ElementType

func (AviatrixSegmentationNetworkDomainConnectionPolicyOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutput

func (AviatrixSegmentationNetworkDomainConnectionPolicyOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutputWithContext

func (o AviatrixSegmentationNetworkDomainConnectionPolicyOutput) ToAviatrixSegmentationNetworkDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainConnectionPolicyOutput

type AviatrixSegmentationNetworkDomainConnectionPolicyState

type AviatrixSegmentationNetworkDomainConnectionPolicyState struct {
	// Name of the Network Domain to connect to Domain 2.
	DomainName1 pulumi.StringPtrInput
	// Name of the Network Domain to connect to Domain 1.
	DomainName2 pulumi.StringPtrInput
}

func (AviatrixSegmentationNetworkDomainConnectionPolicyState) ElementType

type AviatrixSegmentationNetworkDomainInput

type AviatrixSegmentationNetworkDomainInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainOutput() AviatrixSegmentationNetworkDomainOutput
	ToAviatrixSegmentationNetworkDomainOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainOutput
}

type AviatrixSegmentationNetworkDomainMap

type AviatrixSegmentationNetworkDomainMap map[string]AviatrixSegmentationNetworkDomainInput

func (AviatrixSegmentationNetworkDomainMap) ElementType

func (AviatrixSegmentationNetworkDomainMap) ToAviatrixSegmentationNetworkDomainMapOutput

func (i AviatrixSegmentationNetworkDomainMap) ToAviatrixSegmentationNetworkDomainMapOutput() AviatrixSegmentationNetworkDomainMapOutput

func (AviatrixSegmentationNetworkDomainMap) ToAviatrixSegmentationNetworkDomainMapOutputWithContext

func (i AviatrixSegmentationNetworkDomainMap) ToAviatrixSegmentationNetworkDomainMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainMapOutput

type AviatrixSegmentationNetworkDomainMapInput

type AviatrixSegmentationNetworkDomainMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationNetworkDomainMapOutput() AviatrixSegmentationNetworkDomainMapOutput
	ToAviatrixSegmentationNetworkDomainMapOutputWithContext(context.Context) AviatrixSegmentationNetworkDomainMapOutput
}

AviatrixSegmentationNetworkDomainMapInput is an input type that accepts AviatrixSegmentationNetworkDomainMap and AviatrixSegmentationNetworkDomainMapOutput values. You can construct a concrete instance of `AviatrixSegmentationNetworkDomainMapInput` via:

AviatrixSegmentationNetworkDomainMap{ "key": AviatrixSegmentationNetworkDomainArgs{...} }

type AviatrixSegmentationNetworkDomainMapOutput

type AviatrixSegmentationNetworkDomainMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainMapOutput) ElementType

func (AviatrixSegmentationNetworkDomainMapOutput) MapIndex

func (AviatrixSegmentationNetworkDomainMapOutput) ToAviatrixSegmentationNetworkDomainMapOutput

func (o AviatrixSegmentationNetworkDomainMapOutput) ToAviatrixSegmentationNetworkDomainMapOutput() AviatrixSegmentationNetworkDomainMapOutput

func (AviatrixSegmentationNetworkDomainMapOutput) ToAviatrixSegmentationNetworkDomainMapOutputWithContext

func (o AviatrixSegmentationNetworkDomainMapOutput) ToAviatrixSegmentationNetworkDomainMapOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainMapOutput

type AviatrixSegmentationNetworkDomainOutput

type AviatrixSegmentationNetworkDomainOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationNetworkDomainOutput) DomainName

Name of the Network Domain.

func (AviatrixSegmentationNetworkDomainOutput) ElementType

func (AviatrixSegmentationNetworkDomainOutput) ToAviatrixSegmentationNetworkDomainOutput

func (o AviatrixSegmentationNetworkDomainOutput) ToAviatrixSegmentationNetworkDomainOutput() AviatrixSegmentationNetworkDomainOutput

func (AviatrixSegmentationNetworkDomainOutput) ToAviatrixSegmentationNetworkDomainOutputWithContext

func (o AviatrixSegmentationNetworkDomainOutput) ToAviatrixSegmentationNetworkDomainOutputWithContext(ctx context.Context) AviatrixSegmentationNetworkDomainOutput

type AviatrixSegmentationNetworkDomainState

type AviatrixSegmentationNetworkDomainState struct {
	// Name of the Network Domain.
	DomainName pulumi.StringPtrInput
}

func (AviatrixSegmentationNetworkDomainState) ElementType

type AviatrixSegmentationSecurityDomain

type AviatrixSegmentationSecurityDomain struct {
	pulumi.CustomResourceState

	// Name of the Security Domain.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
}

The **aviatrix_segmentation_security_domain** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Security Domains.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationSecurityDomain(ctx, "testSegmentationSecurityDomain", &aviatrix.AviatrixSegmentationSecurityDomainArgs{
			DomainName: pulumi.String("domain-a"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_security_domain** can be imported using the `domain_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationSecurityDomain:AviatrixSegmentationSecurityDomain test domain_name

```

func GetAviatrixSegmentationSecurityDomain

func GetAviatrixSegmentationSecurityDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSegmentationSecurityDomainState, opts ...pulumi.ResourceOption) (*AviatrixSegmentationSecurityDomain, error)

GetAviatrixSegmentationSecurityDomain gets an existing AviatrixSegmentationSecurityDomain 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 NewAviatrixSegmentationSecurityDomain

func NewAviatrixSegmentationSecurityDomain(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationSecurityDomainArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationSecurityDomain, error)

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

func (*AviatrixSegmentationSecurityDomain) ElementType

func (*AviatrixSegmentationSecurityDomain) ToAviatrixSegmentationSecurityDomainOutput

func (i *AviatrixSegmentationSecurityDomain) ToAviatrixSegmentationSecurityDomainOutput() AviatrixSegmentationSecurityDomainOutput

func (*AviatrixSegmentationSecurityDomain) ToAviatrixSegmentationSecurityDomainOutputWithContext

func (i *AviatrixSegmentationSecurityDomain) ToAviatrixSegmentationSecurityDomainOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainOutput

type AviatrixSegmentationSecurityDomainArgs

type AviatrixSegmentationSecurityDomainArgs struct {
	// Name of the Security Domain.
	DomainName pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationSecurityDomain resource.

func (AviatrixSegmentationSecurityDomainArgs) ElementType

type AviatrixSegmentationSecurityDomainArray

type AviatrixSegmentationSecurityDomainArray []AviatrixSegmentationSecurityDomainInput

func (AviatrixSegmentationSecurityDomainArray) ElementType

func (AviatrixSegmentationSecurityDomainArray) ToAviatrixSegmentationSecurityDomainArrayOutput

func (i AviatrixSegmentationSecurityDomainArray) ToAviatrixSegmentationSecurityDomainArrayOutput() AviatrixSegmentationSecurityDomainArrayOutput

func (AviatrixSegmentationSecurityDomainArray) ToAviatrixSegmentationSecurityDomainArrayOutputWithContext

func (i AviatrixSegmentationSecurityDomainArray) ToAviatrixSegmentationSecurityDomainArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainArrayOutput

type AviatrixSegmentationSecurityDomainArrayInput

type AviatrixSegmentationSecurityDomainArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainArrayOutput() AviatrixSegmentationSecurityDomainArrayOutput
	ToAviatrixSegmentationSecurityDomainArrayOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainArrayOutput
}

AviatrixSegmentationSecurityDomainArrayInput is an input type that accepts AviatrixSegmentationSecurityDomainArray and AviatrixSegmentationSecurityDomainArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainArrayInput` via:

AviatrixSegmentationSecurityDomainArray{ AviatrixSegmentationSecurityDomainArgs{...} }

type AviatrixSegmentationSecurityDomainArrayOutput

type AviatrixSegmentationSecurityDomainArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainArrayOutput) ElementType

func (AviatrixSegmentationSecurityDomainArrayOutput) Index

func (AviatrixSegmentationSecurityDomainArrayOutput) ToAviatrixSegmentationSecurityDomainArrayOutput

func (o AviatrixSegmentationSecurityDomainArrayOutput) ToAviatrixSegmentationSecurityDomainArrayOutput() AviatrixSegmentationSecurityDomainArrayOutput

func (AviatrixSegmentationSecurityDomainArrayOutput) ToAviatrixSegmentationSecurityDomainArrayOutputWithContext

func (o AviatrixSegmentationSecurityDomainArrayOutput) ToAviatrixSegmentationSecurityDomainArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainArrayOutput

type AviatrixSegmentationSecurityDomainAssociation

type AviatrixSegmentationSecurityDomainAssociation struct {
	pulumi.CustomResourceState

	// Name of the transit gateway attachment, Spoke or Edge, to associate with the security domain.
	AttachmentName pulumi.StringOutput `pulumi:"attachmentName"`
	// Name of the Segmentation Security Domain.
	SecurityDomainName pulumi.StringOutput `pulumi:"securityDomainName"`
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringOutput `pulumi:"transitGatewayName"`
}

The **aviatrix_segmentation_security_domain_association** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Security Domain and Transit Gateway Attachment Associations.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationSecurityDomainAssociation(ctx, "testSegmentationSecurityDomainAssociation", &aviatrix.AviatrixSegmentationSecurityDomainAssociationArgs{
			AttachmentName:     pulumi.String("attachment-name"),
			SecurityDomainName: pulumi.String("security-domain-name"),
			TransitGatewayName: pulumi.String("transit-gw-name"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_security_domain_association** can be imported using `transit_gateway_name`, `security_domain_name` and `attachment_name` separated by a `~` e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationSecurityDomainAssociation:AviatrixSegmentationSecurityDomainAssociation test transit_gateway_name~security_domain_name~attachment_name

```

func GetAviatrixSegmentationSecurityDomainAssociation

func GetAviatrixSegmentationSecurityDomainAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSegmentationSecurityDomainAssociationState, opts ...pulumi.ResourceOption) (*AviatrixSegmentationSecurityDomainAssociation, error)

GetAviatrixSegmentationSecurityDomainAssociation gets an existing AviatrixSegmentationSecurityDomainAssociation 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 NewAviatrixSegmentationSecurityDomainAssociation

func NewAviatrixSegmentationSecurityDomainAssociation(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationSecurityDomainAssociationArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationSecurityDomainAssociation, error)

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

func (*AviatrixSegmentationSecurityDomainAssociation) ElementType

func (*AviatrixSegmentationSecurityDomainAssociation) ToAviatrixSegmentationSecurityDomainAssociationOutput

func (i *AviatrixSegmentationSecurityDomainAssociation) ToAviatrixSegmentationSecurityDomainAssociationOutput() AviatrixSegmentationSecurityDomainAssociationOutput

func (*AviatrixSegmentationSecurityDomainAssociation) ToAviatrixSegmentationSecurityDomainAssociationOutputWithContext

func (i *AviatrixSegmentationSecurityDomainAssociation) ToAviatrixSegmentationSecurityDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationOutput

type AviatrixSegmentationSecurityDomainAssociationArgs

type AviatrixSegmentationSecurityDomainAssociationArgs struct {
	// Name of the transit gateway attachment, Spoke or Edge, to associate with the security domain.
	AttachmentName pulumi.StringInput
	// Name of the Segmentation Security Domain.
	SecurityDomainName pulumi.StringInput
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationSecurityDomainAssociation resource.

func (AviatrixSegmentationSecurityDomainAssociationArgs) ElementType

type AviatrixSegmentationSecurityDomainAssociationArray

type AviatrixSegmentationSecurityDomainAssociationArray []AviatrixSegmentationSecurityDomainAssociationInput

func (AviatrixSegmentationSecurityDomainAssociationArray) ElementType

func (AviatrixSegmentationSecurityDomainAssociationArray) ToAviatrixSegmentationSecurityDomainAssociationArrayOutput

func (i AviatrixSegmentationSecurityDomainAssociationArray) ToAviatrixSegmentationSecurityDomainAssociationArrayOutput() AviatrixSegmentationSecurityDomainAssociationArrayOutput

func (AviatrixSegmentationSecurityDomainAssociationArray) ToAviatrixSegmentationSecurityDomainAssociationArrayOutputWithContext

func (i AviatrixSegmentationSecurityDomainAssociationArray) ToAviatrixSegmentationSecurityDomainAssociationArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationArrayOutput

type AviatrixSegmentationSecurityDomainAssociationArrayInput

type AviatrixSegmentationSecurityDomainAssociationArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainAssociationArrayOutput() AviatrixSegmentationSecurityDomainAssociationArrayOutput
	ToAviatrixSegmentationSecurityDomainAssociationArrayOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainAssociationArrayOutput
}

AviatrixSegmentationSecurityDomainAssociationArrayInput is an input type that accepts AviatrixSegmentationSecurityDomainAssociationArray and AviatrixSegmentationSecurityDomainAssociationArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainAssociationArrayInput` via:

AviatrixSegmentationSecurityDomainAssociationArray{ AviatrixSegmentationSecurityDomainAssociationArgs{...} }

type AviatrixSegmentationSecurityDomainAssociationArrayOutput

type AviatrixSegmentationSecurityDomainAssociationArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainAssociationArrayOutput) ElementType

func (AviatrixSegmentationSecurityDomainAssociationArrayOutput) Index

func (AviatrixSegmentationSecurityDomainAssociationArrayOutput) ToAviatrixSegmentationSecurityDomainAssociationArrayOutput

func (AviatrixSegmentationSecurityDomainAssociationArrayOutput) ToAviatrixSegmentationSecurityDomainAssociationArrayOutputWithContext

func (o AviatrixSegmentationSecurityDomainAssociationArrayOutput) ToAviatrixSegmentationSecurityDomainAssociationArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationArrayOutput

type AviatrixSegmentationSecurityDomainAssociationInput

type AviatrixSegmentationSecurityDomainAssociationInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainAssociationOutput() AviatrixSegmentationSecurityDomainAssociationOutput
	ToAviatrixSegmentationSecurityDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationOutput
}

type AviatrixSegmentationSecurityDomainAssociationMap

type AviatrixSegmentationSecurityDomainAssociationMap map[string]AviatrixSegmentationSecurityDomainAssociationInput

func (AviatrixSegmentationSecurityDomainAssociationMap) ElementType

func (AviatrixSegmentationSecurityDomainAssociationMap) ToAviatrixSegmentationSecurityDomainAssociationMapOutput

func (i AviatrixSegmentationSecurityDomainAssociationMap) ToAviatrixSegmentationSecurityDomainAssociationMapOutput() AviatrixSegmentationSecurityDomainAssociationMapOutput

func (AviatrixSegmentationSecurityDomainAssociationMap) ToAviatrixSegmentationSecurityDomainAssociationMapOutputWithContext

func (i AviatrixSegmentationSecurityDomainAssociationMap) ToAviatrixSegmentationSecurityDomainAssociationMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationMapOutput

type AviatrixSegmentationSecurityDomainAssociationMapInput

type AviatrixSegmentationSecurityDomainAssociationMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainAssociationMapOutput() AviatrixSegmentationSecurityDomainAssociationMapOutput
	ToAviatrixSegmentationSecurityDomainAssociationMapOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainAssociationMapOutput
}

AviatrixSegmentationSecurityDomainAssociationMapInput is an input type that accepts AviatrixSegmentationSecurityDomainAssociationMap and AviatrixSegmentationSecurityDomainAssociationMapOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainAssociationMapInput` via:

AviatrixSegmentationSecurityDomainAssociationMap{ "key": AviatrixSegmentationSecurityDomainAssociationArgs{...} }

type AviatrixSegmentationSecurityDomainAssociationMapOutput

type AviatrixSegmentationSecurityDomainAssociationMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainAssociationMapOutput) ElementType

func (AviatrixSegmentationSecurityDomainAssociationMapOutput) MapIndex

func (AviatrixSegmentationSecurityDomainAssociationMapOutput) ToAviatrixSegmentationSecurityDomainAssociationMapOutput

func (AviatrixSegmentationSecurityDomainAssociationMapOutput) ToAviatrixSegmentationSecurityDomainAssociationMapOutputWithContext

func (o AviatrixSegmentationSecurityDomainAssociationMapOutput) ToAviatrixSegmentationSecurityDomainAssociationMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationMapOutput

type AviatrixSegmentationSecurityDomainAssociationOutput

type AviatrixSegmentationSecurityDomainAssociationOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainAssociationOutput) AttachmentName

Name of the transit gateway attachment, Spoke or Edge, to associate with the security domain.

func (AviatrixSegmentationSecurityDomainAssociationOutput) ElementType

func (AviatrixSegmentationSecurityDomainAssociationOutput) SecurityDomainName

Name of the Segmentation Security Domain.

func (AviatrixSegmentationSecurityDomainAssociationOutput) ToAviatrixSegmentationSecurityDomainAssociationOutput

func (o AviatrixSegmentationSecurityDomainAssociationOutput) ToAviatrixSegmentationSecurityDomainAssociationOutput() AviatrixSegmentationSecurityDomainAssociationOutput

func (AviatrixSegmentationSecurityDomainAssociationOutput) ToAviatrixSegmentationSecurityDomainAssociationOutputWithContext

func (o AviatrixSegmentationSecurityDomainAssociationOutput) ToAviatrixSegmentationSecurityDomainAssociationOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainAssociationOutput

func (AviatrixSegmentationSecurityDomainAssociationOutput) TransitGatewayName

Name of the Transit Gateway.

type AviatrixSegmentationSecurityDomainAssociationState

type AviatrixSegmentationSecurityDomainAssociationState struct {
	// Name of the transit gateway attachment, Spoke or Edge, to associate with the security domain.
	AttachmentName pulumi.StringPtrInput
	// Name of the Segmentation Security Domain.
	SecurityDomainName pulumi.StringPtrInput
	// Name of the Transit Gateway.
	TransitGatewayName pulumi.StringPtrInput
}

func (AviatrixSegmentationSecurityDomainAssociationState) ElementType

type AviatrixSegmentationSecurityDomainConnectionPolicy

type AviatrixSegmentationSecurityDomainConnectionPolicy struct {
	pulumi.CustomResourceState

	// Name of the Security Domain to connect to Domain 2.
	DomainName1 pulumi.StringOutput `pulumi:"domainName1"`
	// Name of the Security Domain to connect to Domain 1.
	DomainName2 pulumi.StringOutput `pulumi:"domainName2"`
}

The **aviatrix_segmentation_security_domain_connection_policy** resource handles creation of [Transit Segmentation](https://docs.aviatrix.com/HowTos/transit_segmentation_faq.html) Security Domain Connection Policies.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSegmentationSecurityDomainConnectionPolicy(ctx, "testSegmentationSecurityDomainConnectionPolicy", &aviatrix.AviatrixSegmentationSecurityDomainConnectionPolicyArgs{
			DomainName1: pulumi.String("domain-a"),
			DomainName2: pulumi.String("domain-b"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**aviatrix_segmentation_security_domain_connection_policy** can be imported using `domain_name_1` and `domain_name_2` separated by a `~`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSegmentationSecurityDomainConnectionPolicy:AviatrixSegmentationSecurityDomainConnectionPolicy test domain_name_1~domain_name_2

```

func GetAviatrixSegmentationSecurityDomainConnectionPolicy

GetAviatrixSegmentationSecurityDomainConnectionPolicy gets an existing AviatrixSegmentationSecurityDomainConnectionPolicy 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 NewAviatrixSegmentationSecurityDomainConnectionPolicy

func NewAviatrixSegmentationSecurityDomainConnectionPolicy(ctx *pulumi.Context,
	name string, args *AviatrixSegmentationSecurityDomainConnectionPolicyArgs, opts ...pulumi.ResourceOption) (*AviatrixSegmentationSecurityDomainConnectionPolicy, error)

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

func (*AviatrixSegmentationSecurityDomainConnectionPolicy) ElementType

func (*AviatrixSegmentationSecurityDomainConnectionPolicy) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutput

func (i *AviatrixSegmentationSecurityDomainConnectionPolicy) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutput() AviatrixSegmentationSecurityDomainConnectionPolicyOutput

func (*AviatrixSegmentationSecurityDomainConnectionPolicy) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutputWithContext

func (i *AviatrixSegmentationSecurityDomainConnectionPolicy) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyArgs

type AviatrixSegmentationSecurityDomainConnectionPolicyArgs struct {
	// Name of the Security Domain to connect to Domain 2.
	DomainName1 pulumi.StringInput
	// Name of the Security Domain to connect to Domain 1.
	DomainName2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixSegmentationSecurityDomainConnectionPolicy resource.

func (AviatrixSegmentationSecurityDomainConnectionPolicyArgs) ElementType

type AviatrixSegmentationSecurityDomainConnectionPolicyArray

type AviatrixSegmentationSecurityDomainConnectionPolicyArray []AviatrixSegmentationSecurityDomainConnectionPolicyInput

func (AviatrixSegmentationSecurityDomainConnectionPolicyArray) ElementType

func (AviatrixSegmentationSecurityDomainConnectionPolicyArray) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

func (i AviatrixSegmentationSecurityDomainConnectionPolicyArray) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput() AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

func (AviatrixSegmentationSecurityDomainConnectionPolicyArray) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutputWithContext

func (i AviatrixSegmentationSecurityDomainConnectionPolicyArray) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyArrayInput

type AviatrixSegmentationSecurityDomainConnectionPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput() AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput
	ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput
}

AviatrixSegmentationSecurityDomainConnectionPolicyArrayInput is an input type that accepts AviatrixSegmentationSecurityDomainConnectionPolicyArray and AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainConnectionPolicyArrayInput` via:

AviatrixSegmentationSecurityDomainConnectionPolicyArray{ AviatrixSegmentationSecurityDomainConnectionPolicyArgs{...} }

type AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput) ElementType

func (AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput) Index

func (AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

func (AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutputWithContext

func (o AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyArrayOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyArrayOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyInput

type AviatrixSegmentationSecurityDomainConnectionPolicyInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainConnectionPolicyOutput() AviatrixSegmentationSecurityDomainConnectionPolicyOutput
	ToAviatrixSegmentationSecurityDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyOutput
}

type AviatrixSegmentationSecurityDomainConnectionPolicyMap

type AviatrixSegmentationSecurityDomainConnectionPolicyMap map[string]AviatrixSegmentationSecurityDomainConnectionPolicyInput

func (AviatrixSegmentationSecurityDomainConnectionPolicyMap) ElementType

func (AviatrixSegmentationSecurityDomainConnectionPolicyMap) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

func (i AviatrixSegmentationSecurityDomainConnectionPolicyMap) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutput() AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

func (AviatrixSegmentationSecurityDomainConnectionPolicyMap) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutputWithContext

func (i AviatrixSegmentationSecurityDomainConnectionPolicyMap) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyMapInput

type AviatrixSegmentationSecurityDomainConnectionPolicyMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutput() AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput
	ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput
}

AviatrixSegmentationSecurityDomainConnectionPolicyMapInput is an input type that accepts AviatrixSegmentationSecurityDomainConnectionPolicyMap and AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainConnectionPolicyMapInput` via:

AviatrixSegmentationSecurityDomainConnectionPolicyMap{ "key": AviatrixSegmentationSecurityDomainConnectionPolicyArgs{...} }

type AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput) ElementType

func (AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput) MapIndex

func (AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

func (AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutputWithContext

func (o AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyMapOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainConnectionPolicyOutput) DomainName1

Name of the Security Domain to connect to Domain 2.

func (AviatrixSegmentationSecurityDomainConnectionPolicyOutput) DomainName2

Name of the Security Domain to connect to Domain 1.

func (AviatrixSegmentationSecurityDomainConnectionPolicyOutput) ElementType

func (AviatrixSegmentationSecurityDomainConnectionPolicyOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutput

func (AviatrixSegmentationSecurityDomainConnectionPolicyOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutputWithContext

func (o AviatrixSegmentationSecurityDomainConnectionPolicyOutput) ToAviatrixSegmentationSecurityDomainConnectionPolicyOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainConnectionPolicyOutput

type AviatrixSegmentationSecurityDomainConnectionPolicyState

type AviatrixSegmentationSecurityDomainConnectionPolicyState struct {
	// Name of the Security Domain to connect to Domain 2.
	DomainName1 pulumi.StringPtrInput
	// Name of the Security Domain to connect to Domain 1.
	DomainName2 pulumi.StringPtrInput
}

func (AviatrixSegmentationSecurityDomainConnectionPolicyState) ElementType

type AviatrixSegmentationSecurityDomainInput

type AviatrixSegmentationSecurityDomainInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainOutput() AviatrixSegmentationSecurityDomainOutput
	ToAviatrixSegmentationSecurityDomainOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainOutput
}

type AviatrixSegmentationSecurityDomainMap

type AviatrixSegmentationSecurityDomainMap map[string]AviatrixSegmentationSecurityDomainInput

func (AviatrixSegmentationSecurityDomainMap) ElementType

func (AviatrixSegmentationSecurityDomainMap) ToAviatrixSegmentationSecurityDomainMapOutput

func (i AviatrixSegmentationSecurityDomainMap) ToAviatrixSegmentationSecurityDomainMapOutput() AviatrixSegmentationSecurityDomainMapOutput

func (AviatrixSegmentationSecurityDomainMap) ToAviatrixSegmentationSecurityDomainMapOutputWithContext

func (i AviatrixSegmentationSecurityDomainMap) ToAviatrixSegmentationSecurityDomainMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainMapOutput

type AviatrixSegmentationSecurityDomainMapInput

type AviatrixSegmentationSecurityDomainMapInput interface {
	pulumi.Input

	ToAviatrixSegmentationSecurityDomainMapOutput() AviatrixSegmentationSecurityDomainMapOutput
	ToAviatrixSegmentationSecurityDomainMapOutputWithContext(context.Context) AviatrixSegmentationSecurityDomainMapOutput
}

AviatrixSegmentationSecurityDomainMapInput is an input type that accepts AviatrixSegmentationSecurityDomainMap and AviatrixSegmentationSecurityDomainMapOutput values. You can construct a concrete instance of `AviatrixSegmentationSecurityDomainMapInput` via:

AviatrixSegmentationSecurityDomainMap{ "key": AviatrixSegmentationSecurityDomainArgs{...} }

type AviatrixSegmentationSecurityDomainMapOutput

type AviatrixSegmentationSecurityDomainMapOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainMapOutput) ElementType

func (AviatrixSegmentationSecurityDomainMapOutput) MapIndex

func (AviatrixSegmentationSecurityDomainMapOutput) ToAviatrixSegmentationSecurityDomainMapOutput

func (o AviatrixSegmentationSecurityDomainMapOutput) ToAviatrixSegmentationSecurityDomainMapOutput() AviatrixSegmentationSecurityDomainMapOutput

func (AviatrixSegmentationSecurityDomainMapOutput) ToAviatrixSegmentationSecurityDomainMapOutputWithContext

func (o AviatrixSegmentationSecurityDomainMapOutput) ToAviatrixSegmentationSecurityDomainMapOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainMapOutput

type AviatrixSegmentationSecurityDomainOutput

type AviatrixSegmentationSecurityDomainOutput struct{ *pulumi.OutputState }

func (AviatrixSegmentationSecurityDomainOutput) DomainName

Name of the Security Domain.

func (AviatrixSegmentationSecurityDomainOutput) ElementType

func (AviatrixSegmentationSecurityDomainOutput) ToAviatrixSegmentationSecurityDomainOutput

func (o AviatrixSegmentationSecurityDomainOutput) ToAviatrixSegmentationSecurityDomainOutput() AviatrixSegmentationSecurityDomainOutput

func (AviatrixSegmentationSecurityDomainOutput) ToAviatrixSegmentationSecurityDomainOutputWithContext

func (o AviatrixSegmentationSecurityDomainOutput) ToAviatrixSegmentationSecurityDomainOutputWithContext(ctx context.Context) AviatrixSegmentationSecurityDomainOutput

type AviatrixSegmentationSecurityDomainState

type AviatrixSegmentationSecurityDomainState struct {
	// Name of the Security Domain.
	DomainName pulumi.StringPtrInput
}

func (AviatrixSegmentationSecurityDomainState) ElementType

type AviatrixSite2Cloud

type AviatrixSite2Cloud struct {
	pulumi.CustomResourceState

	// Authentication Type. Valid values: 'PSK' and 'Cert'. Default value: 'PSK'.
	AuthType pulumi.StringPtrOutput `pulumi:"authType"`
	// Backup gateway name. **NOTE: Please see notes here regarding HA requirements.**
	BackupGatewayName pulumi.StringPtrOutput `pulumi:"backupGatewayName"`
	// Backup local tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupLocalTunnelIp pulumi.StringPtrOutput `pulumi:"backupLocalTunnelIp"`
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrOutput `pulumi:"backupPreSharedKey"`
	// Backup Remote Gateway IP. **NOTE: Please see notes here regarding HA requirements.**
	BackupRemoteGatewayIp pulumi.StringOutput `pulumi:"backupRemoteGatewayIp"`
	// Latitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLatitude pulumi.Float64PtrOutput `pulumi:"backupRemoteGatewayLatitude"`
	// Longitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLongitude pulumi.Float64PtrOutput `pulumi:"backupRemoteGatewayLongitude"`
	// Backup remote identifier. Required for Cert based authentication type with HA enabled. Example: "gw-10-10-0-116".
	BackupRemoteIdentifier pulumi.StringPtrOutput `pulumi:"backupRemoteIdentifier"`
	// Backup remote tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupRemoteTunnelIp pulumi.StringPtrOutput `pulumi:"backupRemoteTunnelIp"`
	// Name of Remote CA Certificate Tag for creating Site2Cloud tunnels. Required for Cert based authentication type.
	CaCertTagName pulumi.StringPtrOutput `pulumi:"caCertTagName"`
	// Site2Cloud connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Connection type. Valid Values: "mapped", "unmapped".
	ConnectionType pulumi.StringOutput `pulumi:"connectionType"`
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrOutput `pulumi:"customAlgorithms"`
	// Enable custom mapped connection. Default value: false. Valid values: true/false. Available in provider version R2.17.1+.
	CustomMapped pulumi.BoolPtrOutput `pulumi:"customMapped"`
	// Enable/disable active active HA for an existing site2cloud connection. Valid values: true, false. Default value: false.
	EnableActiveActive pulumi.BoolPtrOutput `pulumi:"enableActiveActive"`
	// Enable/disable Deed Peer Detection for an existing site2cloud connection. Default value: true. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.9**
	EnableDeadPeerDetection pulumi.BoolPtrOutput `pulumi:"enableDeadPeerDetection"`
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrOutput `pulumi:"enableEventTriggeredHa"`
	// Switch to enable IKEv2. Valid values: true, false. Default value: false.
	EnableIkev2 pulumi.BoolPtrOutput `pulumi:"enableIkev2"`
	// Enable single IP HA feature. Available as of provider version 2.19+.
	EnableSingleIpHa pulumi.BoolPtrOutput `pulumi:"enableSingleIpHa"`
	// Enable spoke gateway with mapped site2cloud configurations to forward traffic from site2cloud connection to Aviatrix Transit Gateway. Default value: false. Valid values: true or false. Available in provider version 2.17.2+.
	ForwardTrafficToTransit pulumi.BoolPtrOutput `pulumi:"forwardTrafficToTransit"`
	// Specify whether or not to enable HA. Valid Values: true, false. **NOTE: Please see notes here regarding HA requirements.**
	HaEnabled pulumi.BoolPtrOutput `pulumi:"haEnabled"`
	// List of Local Initiated Traffic Destination Real CIDRs.
	LocalDestinationRealCidrs pulumi.StringArrayOutput `pulumi:"localDestinationRealCidrs"`
	// List of Local Initiated Traffic Destination Virtual CIDRs.
	LocalDestinationVirtualCidrs pulumi.StringArrayOutput `pulumi:"localDestinationVirtualCidrs"`
	// List of Local Initiated Traffic Source Real CIDRs.
	LocalSourceRealCidrs pulumi.StringArrayOutput `pulumi:"localSourceRealCidrs"`
	// List of Local Initiated Traffic Source Virtual CIDRs.
	LocalSourceVirtualCidrs pulumi.StringArrayOutput `pulumi:"localSourceVirtualCidrs"`
	// Local subnet CIDR. **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetCidr pulumi.StringOutput `pulumi:"localSubnetCidr"`
	// Local subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetVirtual pulumi.StringPtrOutput `pulumi:"localSubnetVirtual"`
	// Local tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	LocalTunnelIp pulumi.StringPtrOutput `pulumi:"localTunnelIp"`
	// Phase one Authentication. Valid values: "SHA-1", "SHA-256", "SHA-384" and "SHA-512". Default value: "SHA-256".
	Phase1Authentication pulumi.StringPtrOutput `pulumi:"phase1Authentication"`
	// Phase one DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase1DhGroups pulumi.StringPtrOutput `pulumi:"phase1DhGroups"`
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrOutput `pulumi:"phase1Encryption"`
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayOutput `pulumi:"phase1RemoteIdentifiers"`
	// Phase two Authentication. Valid values: "NO-AUTH", "HMAC-SHA-1", "HMAC-SHA-256", "HMAC-SHA-384" and "HMAC-SHA-512". Default value: "HMAC-SHA-256".
	Phase2Authentication pulumi.StringPtrOutput `pulumi:"phase2Authentication"`
	// Phase two DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase2DhGroups pulumi.StringPtrOutput `pulumi:"phase2DhGroups"`
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrOutput `pulumi:"phase2Encryption"`
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrOutput `pulumi:"preSharedKey"`
	// Primary cloud gateway name.
	PrimaryCloudGatewayName pulumi.StringOutput `pulumi:"primaryCloudGatewayName"`
	// Private route encryption switch. Valid values: true, false.
	PrivateRouteEncryption pulumi.BoolPtrOutput `pulumi:"privateRouteEncryption"`
	// List of  Remote Initiated Traffic Destination Real CIDRs.
	RemoteDestinationRealCidrs pulumi.StringArrayOutput `pulumi:"remoteDestinationRealCidrs"`
	// List of Remote Initiated Traffic Destination Virtual CIDRs.
	RemoteDestinationVirtualCidrs pulumi.StringArrayOutput `pulumi:"remoteDestinationVirtualCidrs"`
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringOutput `pulumi:"remoteGatewayIp"`
	// Latitude of remote gateway. Does not support refresh.
	RemoteGatewayLatitude pulumi.Float64PtrOutput `pulumi:"remoteGatewayLatitude"`
	// Longitude of remote gateway. Does not support refresh.
	RemoteGatewayLongitude pulumi.Float64PtrOutput `pulumi:"remoteGatewayLongitude"`
	// Remote gateway type. Valid Values: "generic", "avx", "aws", "azure", "sonicwall", "oracle".
	RemoteGatewayType pulumi.StringOutput `pulumi:"remoteGatewayType"`
	// Remote identifier. Required for Cert based authentication type. Example: "gw-10-10-0-115".
	RemoteIdentifier pulumi.StringPtrOutput `pulumi:"remoteIdentifier"`
	// List of Remote Initiated Traffic Source Real CIDRs.
	RemoteSourceRealCidrs pulumi.StringArrayOutput `pulumi:"remoteSourceRealCidrs"`
	// List of Remote Initiated Traffic Source Virtual CIDRs.
	RemoteSourceVirtualCidrs pulumi.StringArrayOutput `pulumi:"remoteSourceVirtualCidrs"`
	// Remote subnet CIDR. **Not required for customMapped connection.**
	RemoteSubnetCidr pulumi.StringPtrOutput `pulumi:"remoteSubnetCidr"`
	// Remote subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	RemoteSubnetVirtual pulumi.StringPtrOutput `pulumi:"remoteSubnetVirtual"`
	// Remote tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	RemoteTunnelIp pulumi.StringPtrOutput `pulumi:"remoteTunnelIp"`
	// Route tables to modify.
	RouteTableLists pulumi.StringArrayOutput `pulumi:"routeTableLists"`
	// Specify ssl_server_pool. Default value: "192.168.44.0/24". **NOTE: Please see notes here for more information.**
	SslServerPool pulumi.StringPtrOutput `pulumi:"sslServerPool"`
	// Site2Cloud tunnel type. Valid Values: "policy", "route".
	TunnelType pulumi.StringOutput `pulumi:"tunnelType"`
	// VPC ID of the cloud gateway.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

## Import

**site2cloud** can be imported using the `connection_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSite2Cloud:AviatrixSite2Cloud test connection_name~vpc_id

```

func GetAviatrixSite2Cloud

func GetAviatrixSite2Cloud(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSite2CloudState, opts ...pulumi.ResourceOption) (*AviatrixSite2Cloud, error)

GetAviatrixSite2Cloud gets an existing AviatrixSite2Cloud 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 NewAviatrixSite2Cloud

func NewAviatrixSite2Cloud(ctx *pulumi.Context,
	name string, args *AviatrixSite2CloudArgs, opts ...pulumi.ResourceOption) (*AviatrixSite2Cloud, error)

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

func (*AviatrixSite2Cloud) ElementType

func (*AviatrixSite2Cloud) ElementType() reflect.Type

func (*AviatrixSite2Cloud) ToAviatrixSite2CloudOutput

func (i *AviatrixSite2Cloud) ToAviatrixSite2CloudOutput() AviatrixSite2CloudOutput

func (*AviatrixSite2Cloud) ToAviatrixSite2CloudOutputWithContext

func (i *AviatrixSite2Cloud) ToAviatrixSite2CloudOutputWithContext(ctx context.Context) AviatrixSite2CloudOutput

type AviatrixSite2CloudArgs

type AviatrixSite2CloudArgs struct {
	// Authentication Type. Valid values: 'PSK' and 'Cert'. Default value: 'PSK'.
	AuthType pulumi.StringPtrInput
	// Backup gateway name. **NOTE: Please see notes here regarding HA requirements.**
	BackupGatewayName pulumi.StringPtrInput
	// Backup local tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupLocalTunnelIp pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup Remote Gateway IP. **NOTE: Please see notes here regarding HA requirements.**
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Latitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLatitude pulumi.Float64PtrInput
	// Longitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLongitude pulumi.Float64PtrInput
	// Backup remote identifier. Required for Cert based authentication type with HA enabled. Example: "gw-10-10-0-116".
	BackupRemoteIdentifier pulumi.StringPtrInput
	// Backup remote tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupRemoteTunnelIp pulumi.StringPtrInput
	// Name of Remote CA Certificate Tag for creating Site2Cloud tunnels. Required for Cert based authentication type.
	CaCertTagName pulumi.StringPtrInput
	// Site2Cloud connection name.
	ConnectionName pulumi.StringInput
	// Connection type. Valid Values: "mapped", "unmapped".
	ConnectionType pulumi.StringInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Enable custom mapped connection. Default value: false. Valid values: true/false. Available in provider version R2.17.1+.
	CustomMapped pulumi.BoolPtrInput
	// Enable/disable active active HA for an existing site2cloud connection. Valid values: true, false. Default value: false.
	EnableActiveActive pulumi.BoolPtrInput
	// Enable/disable Deed Peer Detection for an existing site2cloud connection. Default value: true. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.9**
	EnableDeadPeerDetection pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Switch to enable IKEv2. Valid values: true, false. Default value: false.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable single IP HA feature. Available as of provider version 2.19+.
	EnableSingleIpHa pulumi.BoolPtrInput
	// Enable spoke gateway with mapped site2cloud configurations to forward traffic from site2cloud connection to Aviatrix Transit Gateway. Default value: false. Valid values: true or false. Available in provider version 2.17.2+.
	ForwardTrafficToTransit pulumi.BoolPtrInput
	// Specify whether or not to enable HA. Valid Values: true, false. **NOTE: Please see notes here regarding HA requirements.**
	HaEnabled pulumi.BoolPtrInput
	// List of Local Initiated Traffic Destination Real CIDRs.
	LocalDestinationRealCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Destination Virtual CIDRs.
	LocalDestinationVirtualCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Source Real CIDRs.
	LocalSourceRealCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Source Virtual CIDRs.
	LocalSourceVirtualCidrs pulumi.StringArrayInput
	// Local subnet CIDR. **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetCidr pulumi.StringPtrInput
	// Local subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetVirtual pulumi.StringPtrInput
	// Local tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	LocalTunnelIp pulumi.StringPtrInput
	// Phase one Authentication. Valid values: "SHA-1", "SHA-256", "SHA-384" and "SHA-512". Default value: "SHA-256".
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: "NO-AUTH", "HMAC-SHA-1", "HMAC-SHA-256", "HMAC-SHA-384" and "HMAC-SHA-512". Default value: "HMAC-SHA-256".
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Primary cloud gateway name.
	PrimaryCloudGatewayName pulumi.StringInput
	// Private route encryption switch. Valid values: true, false.
	PrivateRouteEncryption pulumi.BoolPtrInput
	// List of  Remote Initiated Traffic Destination Real CIDRs.
	RemoteDestinationRealCidrs pulumi.StringArrayInput
	// List of Remote Initiated Traffic Destination Virtual CIDRs.
	RemoteDestinationVirtualCidrs pulumi.StringArrayInput
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringInput
	// Latitude of remote gateway. Does not support refresh.
	RemoteGatewayLatitude pulumi.Float64PtrInput
	// Longitude of remote gateway. Does not support refresh.
	RemoteGatewayLongitude pulumi.Float64PtrInput
	// Remote gateway type. Valid Values: "generic", "avx", "aws", "azure", "sonicwall", "oracle".
	RemoteGatewayType pulumi.StringInput
	// Remote identifier. Required for Cert based authentication type. Example: "gw-10-10-0-115".
	RemoteIdentifier pulumi.StringPtrInput
	// List of Remote Initiated Traffic Source Real CIDRs.
	RemoteSourceRealCidrs pulumi.StringArrayInput
	// List of Remote Initiated Traffic Source Virtual CIDRs.
	RemoteSourceVirtualCidrs pulumi.StringArrayInput
	// Remote subnet CIDR. **Not required for customMapped connection.**
	RemoteSubnetCidr pulumi.StringPtrInput
	// Remote subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	RemoteSubnetVirtual pulumi.StringPtrInput
	// Remote tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	RemoteTunnelIp pulumi.StringPtrInput
	// Route tables to modify.
	RouteTableLists pulumi.StringArrayInput
	// Specify ssl_server_pool. Default value: "192.168.44.0/24". **NOTE: Please see notes here for more information.**
	SslServerPool pulumi.StringPtrInput
	// Site2Cloud tunnel type. Valid Values: "policy", "route".
	TunnelType pulumi.StringInput
	// VPC ID of the cloud gateway.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixSite2Cloud resource.

func (AviatrixSite2CloudArgs) ElementType

func (AviatrixSite2CloudArgs) ElementType() reflect.Type

type AviatrixSite2CloudArray

type AviatrixSite2CloudArray []AviatrixSite2CloudInput

func (AviatrixSite2CloudArray) ElementType

func (AviatrixSite2CloudArray) ElementType() reflect.Type

func (AviatrixSite2CloudArray) ToAviatrixSite2CloudArrayOutput

func (i AviatrixSite2CloudArray) ToAviatrixSite2CloudArrayOutput() AviatrixSite2CloudArrayOutput

func (AviatrixSite2CloudArray) ToAviatrixSite2CloudArrayOutputWithContext

func (i AviatrixSite2CloudArray) ToAviatrixSite2CloudArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudArrayOutput

type AviatrixSite2CloudArrayInput

type AviatrixSite2CloudArrayInput interface {
	pulumi.Input

	ToAviatrixSite2CloudArrayOutput() AviatrixSite2CloudArrayOutput
	ToAviatrixSite2CloudArrayOutputWithContext(context.Context) AviatrixSite2CloudArrayOutput
}

AviatrixSite2CloudArrayInput is an input type that accepts AviatrixSite2CloudArray and AviatrixSite2CloudArrayOutput values. You can construct a concrete instance of `AviatrixSite2CloudArrayInput` via:

AviatrixSite2CloudArray{ AviatrixSite2CloudArgs{...} }

type AviatrixSite2CloudArrayOutput

type AviatrixSite2CloudArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudArrayOutput) ElementType

func (AviatrixSite2CloudArrayOutput) Index

func (AviatrixSite2CloudArrayOutput) ToAviatrixSite2CloudArrayOutput

func (o AviatrixSite2CloudArrayOutput) ToAviatrixSite2CloudArrayOutput() AviatrixSite2CloudArrayOutput

func (AviatrixSite2CloudArrayOutput) ToAviatrixSite2CloudArrayOutputWithContext

func (o AviatrixSite2CloudArrayOutput) ToAviatrixSite2CloudArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudArrayOutput

type AviatrixSite2CloudCaCertTag

type AviatrixSite2CloudCaCertTag struct {
	pulumi.CustomResourceState

	// A set of CA certificates.
	CaCertificates AviatrixSite2CloudCaCertTagCaCertificateArrayOutput `pulumi:"caCertificates"`
	// Site2Cloud ca cert tag name.
	TagName pulumi.StringOutput `pulumi:"tagName"`
}

The **aviatrix_site2cloud_ca_cert_tag** resource creates and manages Aviatrix-created Site2Cloud CA Cert Tags.

## Example Usage

```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSite2CloudCaCertTag(ctx, "test", &aviatrix.AviatrixSite2CloudCaCertTagArgs{
			TagName: pulumi.String("test"),
			CaCertificates: AviatrixSite2CloudCaCertTagCaCertificateArray{
				&AviatrixSite2CloudCaCertTagCaCertificateArgs{
					CertContent: readFileOrPanic("/home/ubuntu/avx_gw_ca_cert_in_ui_root_only.crt"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSite2CloudCaCertTag(ctx, "test", &aviatrix.AviatrixSite2CloudCaCertTagArgs{
			TagName: pulumi.String("test"),
			CaCertificates: AviatrixSite2CloudCaCertTagCaCertificateArray{
				&AviatrixSite2CloudCaCertTagCaCertificateArgs{
					CertContent: readFileOrPanic("/home/ubuntu/avx_gw_ca_cert_root.crt"),
				},
				&AviatrixSite2CloudCaCertTagCaCertificateArgs{
					CertContent: readFileOrPanic("/home/ubuntu/avx_gw_ca_cert_intermediate.crt"),
				},
				&AviatrixSite2CloudCaCertTagCaCertificateArgs{
					CertContent: readFileOrPanic("/home/ubuntu/avx_gw_ca_cert_intermediate2.crt"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**site2cloud_ca_cert_tag** can be imported using the `tag_name` and, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSite2CloudCaCertTag:AviatrixSite2CloudCaCertTag test tag_name

```

func GetAviatrixSite2CloudCaCertTag

func GetAviatrixSite2CloudCaCertTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSite2CloudCaCertTagState, opts ...pulumi.ResourceOption) (*AviatrixSite2CloudCaCertTag, error)

GetAviatrixSite2CloudCaCertTag gets an existing AviatrixSite2CloudCaCertTag 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 NewAviatrixSite2CloudCaCertTag

func NewAviatrixSite2CloudCaCertTag(ctx *pulumi.Context,
	name string, args *AviatrixSite2CloudCaCertTagArgs, opts ...pulumi.ResourceOption) (*AviatrixSite2CloudCaCertTag, error)

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

func (*AviatrixSite2CloudCaCertTag) ElementType

func (*AviatrixSite2CloudCaCertTag) ElementType() reflect.Type

func (*AviatrixSite2CloudCaCertTag) ToAviatrixSite2CloudCaCertTagOutput

func (i *AviatrixSite2CloudCaCertTag) ToAviatrixSite2CloudCaCertTagOutput() AviatrixSite2CloudCaCertTagOutput

func (*AviatrixSite2CloudCaCertTag) ToAviatrixSite2CloudCaCertTagOutputWithContext

func (i *AviatrixSite2CloudCaCertTag) ToAviatrixSite2CloudCaCertTagOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagOutput

type AviatrixSite2CloudCaCertTagArgs

type AviatrixSite2CloudCaCertTagArgs struct {
	// A set of CA certificates.
	CaCertificates AviatrixSite2CloudCaCertTagCaCertificateArrayInput
	// Site2Cloud ca cert tag name.
	TagName pulumi.StringInput
}

The set of arguments for constructing a AviatrixSite2CloudCaCertTag resource.

func (AviatrixSite2CloudCaCertTagArgs) ElementType

type AviatrixSite2CloudCaCertTagArray

type AviatrixSite2CloudCaCertTagArray []AviatrixSite2CloudCaCertTagInput

func (AviatrixSite2CloudCaCertTagArray) ElementType

func (AviatrixSite2CloudCaCertTagArray) ToAviatrixSite2CloudCaCertTagArrayOutput

func (i AviatrixSite2CloudCaCertTagArray) ToAviatrixSite2CloudCaCertTagArrayOutput() AviatrixSite2CloudCaCertTagArrayOutput

func (AviatrixSite2CloudCaCertTagArray) ToAviatrixSite2CloudCaCertTagArrayOutputWithContext

func (i AviatrixSite2CloudCaCertTagArray) ToAviatrixSite2CloudCaCertTagArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagArrayOutput

type AviatrixSite2CloudCaCertTagArrayInput

type AviatrixSite2CloudCaCertTagArrayInput interface {
	pulumi.Input

	ToAviatrixSite2CloudCaCertTagArrayOutput() AviatrixSite2CloudCaCertTagArrayOutput
	ToAviatrixSite2CloudCaCertTagArrayOutputWithContext(context.Context) AviatrixSite2CloudCaCertTagArrayOutput
}

AviatrixSite2CloudCaCertTagArrayInput is an input type that accepts AviatrixSite2CloudCaCertTagArray and AviatrixSite2CloudCaCertTagArrayOutput values. You can construct a concrete instance of `AviatrixSite2CloudCaCertTagArrayInput` via:

AviatrixSite2CloudCaCertTagArray{ AviatrixSite2CloudCaCertTagArgs{...} }

type AviatrixSite2CloudCaCertTagArrayOutput

type AviatrixSite2CloudCaCertTagArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudCaCertTagArrayOutput) ElementType

func (AviatrixSite2CloudCaCertTagArrayOutput) Index

func (AviatrixSite2CloudCaCertTagArrayOutput) ToAviatrixSite2CloudCaCertTagArrayOutput

func (o AviatrixSite2CloudCaCertTagArrayOutput) ToAviatrixSite2CloudCaCertTagArrayOutput() AviatrixSite2CloudCaCertTagArrayOutput

func (AviatrixSite2CloudCaCertTagArrayOutput) ToAviatrixSite2CloudCaCertTagArrayOutputWithContext

func (o AviatrixSite2CloudCaCertTagArrayOutput) ToAviatrixSite2CloudCaCertTagArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagArrayOutput

type AviatrixSite2CloudCaCertTagCaCertificate

type AviatrixSite2CloudCaCertTagCaCertificate struct {
	// Content of cert certificate to create only one cert. One CA cert only per file.
	CertContent string `pulumi:"certContent"`
	// Common name of created cert.
	CommonName *string `pulumi:"commonName"`
	// Expiration time of created cert.
	ExpirationTime *string `pulumi:"expirationTime"`
	// Unique id of created cert.
	Id *string `pulumi:"id"`
	// Issuer name of created cert.
	IssuerName *string `pulumi:"issuerName"`
	// Unique serial of created cert.
	UniqueSerial *string `pulumi:"uniqueSerial"`
}

type AviatrixSite2CloudCaCertTagCaCertificateArgs

type AviatrixSite2CloudCaCertTagCaCertificateArgs struct {
	// Content of cert certificate to create only one cert. One CA cert only per file.
	CertContent pulumi.StringInput `pulumi:"certContent"`
	// Common name of created cert.
	CommonName pulumi.StringPtrInput `pulumi:"commonName"`
	// Expiration time of created cert.
	ExpirationTime pulumi.StringPtrInput `pulumi:"expirationTime"`
	// Unique id of created cert.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Issuer name of created cert.
	IssuerName pulumi.StringPtrInput `pulumi:"issuerName"`
	// Unique serial of created cert.
	UniqueSerial pulumi.StringPtrInput `pulumi:"uniqueSerial"`
}

func (AviatrixSite2CloudCaCertTagCaCertificateArgs) ElementType

func (AviatrixSite2CloudCaCertTagCaCertificateArgs) ToAviatrixSite2CloudCaCertTagCaCertificateOutput

func (i AviatrixSite2CloudCaCertTagCaCertificateArgs) ToAviatrixSite2CloudCaCertTagCaCertificateOutput() AviatrixSite2CloudCaCertTagCaCertificateOutput

func (AviatrixSite2CloudCaCertTagCaCertificateArgs) ToAviatrixSite2CloudCaCertTagCaCertificateOutputWithContext

func (i AviatrixSite2CloudCaCertTagCaCertificateArgs) ToAviatrixSite2CloudCaCertTagCaCertificateOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagCaCertificateOutput

type AviatrixSite2CloudCaCertTagCaCertificateArray

type AviatrixSite2CloudCaCertTagCaCertificateArray []AviatrixSite2CloudCaCertTagCaCertificateInput

func (AviatrixSite2CloudCaCertTagCaCertificateArray) ElementType

func (AviatrixSite2CloudCaCertTagCaCertificateArray) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutput

func (i AviatrixSite2CloudCaCertTagCaCertificateArray) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutput() AviatrixSite2CloudCaCertTagCaCertificateArrayOutput

func (AviatrixSite2CloudCaCertTagCaCertificateArray) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutputWithContext

func (i AviatrixSite2CloudCaCertTagCaCertificateArray) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagCaCertificateArrayOutput

type AviatrixSite2CloudCaCertTagCaCertificateArrayInput

type AviatrixSite2CloudCaCertTagCaCertificateArrayInput interface {
	pulumi.Input

	ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutput() AviatrixSite2CloudCaCertTagCaCertificateArrayOutput
	ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutputWithContext(context.Context) AviatrixSite2CloudCaCertTagCaCertificateArrayOutput
}

AviatrixSite2CloudCaCertTagCaCertificateArrayInput is an input type that accepts AviatrixSite2CloudCaCertTagCaCertificateArray and AviatrixSite2CloudCaCertTagCaCertificateArrayOutput values. You can construct a concrete instance of `AviatrixSite2CloudCaCertTagCaCertificateArrayInput` via:

AviatrixSite2CloudCaCertTagCaCertificateArray{ AviatrixSite2CloudCaCertTagCaCertificateArgs{...} }

type AviatrixSite2CloudCaCertTagCaCertificateArrayOutput

type AviatrixSite2CloudCaCertTagCaCertificateArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) ElementType

func (AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) Index

func (AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutput

func (o AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutput() AviatrixSite2CloudCaCertTagCaCertificateArrayOutput

func (AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutputWithContext

func (o AviatrixSite2CloudCaCertTagCaCertificateArrayOutput) ToAviatrixSite2CloudCaCertTagCaCertificateArrayOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagCaCertificateArrayOutput

type AviatrixSite2CloudCaCertTagCaCertificateInput

type AviatrixSite2CloudCaCertTagCaCertificateInput interface {
	pulumi.Input

	ToAviatrixSite2CloudCaCertTagCaCertificateOutput() AviatrixSite2CloudCaCertTagCaCertificateOutput
	ToAviatrixSite2CloudCaCertTagCaCertificateOutputWithContext(context.Context) AviatrixSite2CloudCaCertTagCaCertificateOutput
}

AviatrixSite2CloudCaCertTagCaCertificateInput is an input type that accepts AviatrixSite2CloudCaCertTagCaCertificateArgs and AviatrixSite2CloudCaCertTagCaCertificateOutput values. You can construct a concrete instance of `AviatrixSite2CloudCaCertTagCaCertificateInput` via:

AviatrixSite2CloudCaCertTagCaCertificateArgs{...}

type AviatrixSite2CloudCaCertTagCaCertificateOutput

type AviatrixSite2CloudCaCertTagCaCertificateOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) CertContent

Content of cert certificate to create only one cert. One CA cert only per file.

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) CommonName

Common name of created cert.

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) ElementType

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) ExpirationTime

Expiration time of created cert.

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) Id

Unique id of created cert.

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) IssuerName

Issuer name of created cert.

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) ToAviatrixSite2CloudCaCertTagCaCertificateOutput

func (o AviatrixSite2CloudCaCertTagCaCertificateOutput) ToAviatrixSite2CloudCaCertTagCaCertificateOutput() AviatrixSite2CloudCaCertTagCaCertificateOutput

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) ToAviatrixSite2CloudCaCertTagCaCertificateOutputWithContext

func (o AviatrixSite2CloudCaCertTagCaCertificateOutput) ToAviatrixSite2CloudCaCertTagCaCertificateOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagCaCertificateOutput

func (AviatrixSite2CloudCaCertTagCaCertificateOutput) UniqueSerial

Unique serial of created cert.

type AviatrixSite2CloudCaCertTagInput

type AviatrixSite2CloudCaCertTagInput interface {
	pulumi.Input

	ToAviatrixSite2CloudCaCertTagOutput() AviatrixSite2CloudCaCertTagOutput
	ToAviatrixSite2CloudCaCertTagOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagOutput
}

type AviatrixSite2CloudCaCertTagMap

type AviatrixSite2CloudCaCertTagMap map[string]AviatrixSite2CloudCaCertTagInput

func (AviatrixSite2CloudCaCertTagMap) ElementType

func (AviatrixSite2CloudCaCertTagMap) ToAviatrixSite2CloudCaCertTagMapOutput

func (i AviatrixSite2CloudCaCertTagMap) ToAviatrixSite2CloudCaCertTagMapOutput() AviatrixSite2CloudCaCertTagMapOutput

func (AviatrixSite2CloudCaCertTagMap) ToAviatrixSite2CloudCaCertTagMapOutputWithContext

func (i AviatrixSite2CloudCaCertTagMap) ToAviatrixSite2CloudCaCertTagMapOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagMapOutput

type AviatrixSite2CloudCaCertTagMapInput

type AviatrixSite2CloudCaCertTagMapInput interface {
	pulumi.Input

	ToAviatrixSite2CloudCaCertTagMapOutput() AviatrixSite2CloudCaCertTagMapOutput
	ToAviatrixSite2CloudCaCertTagMapOutputWithContext(context.Context) AviatrixSite2CloudCaCertTagMapOutput
}

AviatrixSite2CloudCaCertTagMapInput is an input type that accepts AviatrixSite2CloudCaCertTagMap and AviatrixSite2CloudCaCertTagMapOutput values. You can construct a concrete instance of `AviatrixSite2CloudCaCertTagMapInput` via:

AviatrixSite2CloudCaCertTagMap{ "key": AviatrixSite2CloudCaCertTagArgs{...} }

type AviatrixSite2CloudCaCertTagMapOutput

type AviatrixSite2CloudCaCertTagMapOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudCaCertTagMapOutput) ElementType

func (AviatrixSite2CloudCaCertTagMapOutput) MapIndex

func (AviatrixSite2CloudCaCertTagMapOutput) ToAviatrixSite2CloudCaCertTagMapOutput

func (o AviatrixSite2CloudCaCertTagMapOutput) ToAviatrixSite2CloudCaCertTagMapOutput() AviatrixSite2CloudCaCertTagMapOutput

func (AviatrixSite2CloudCaCertTagMapOutput) ToAviatrixSite2CloudCaCertTagMapOutputWithContext

func (o AviatrixSite2CloudCaCertTagMapOutput) ToAviatrixSite2CloudCaCertTagMapOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagMapOutput

type AviatrixSite2CloudCaCertTagOutput

type AviatrixSite2CloudCaCertTagOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudCaCertTagOutput) CaCertificates

A set of CA certificates.

func (AviatrixSite2CloudCaCertTagOutput) ElementType

func (AviatrixSite2CloudCaCertTagOutput) TagName

Site2Cloud ca cert tag name.

func (AviatrixSite2CloudCaCertTagOutput) ToAviatrixSite2CloudCaCertTagOutput

func (o AviatrixSite2CloudCaCertTagOutput) ToAviatrixSite2CloudCaCertTagOutput() AviatrixSite2CloudCaCertTagOutput

func (AviatrixSite2CloudCaCertTagOutput) ToAviatrixSite2CloudCaCertTagOutputWithContext

func (o AviatrixSite2CloudCaCertTagOutput) ToAviatrixSite2CloudCaCertTagOutputWithContext(ctx context.Context) AviatrixSite2CloudCaCertTagOutput

type AviatrixSite2CloudCaCertTagState

type AviatrixSite2CloudCaCertTagState struct {
	// A set of CA certificates.
	CaCertificates AviatrixSite2CloudCaCertTagCaCertificateArrayInput
	// Site2Cloud ca cert tag name.
	TagName pulumi.StringPtrInput
}

func (AviatrixSite2CloudCaCertTagState) ElementType

type AviatrixSite2CloudInput

type AviatrixSite2CloudInput interface {
	pulumi.Input

	ToAviatrixSite2CloudOutput() AviatrixSite2CloudOutput
	ToAviatrixSite2CloudOutputWithContext(ctx context.Context) AviatrixSite2CloudOutput
}

type AviatrixSite2CloudMap

type AviatrixSite2CloudMap map[string]AviatrixSite2CloudInput

func (AviatrixSite2CloudMap) ElementType

func (AviatrixSite2CloudMap) ElementType() reflect.Type

func (AviatrixSite2CloudMap) ToAviatrixSite2CloudMapOutput

func (i AviatrixSite2CloudMap) ToAviatrixSite2CloudMapOutput() AviatrixSite2CloudMapOutput

func (AviatrixSite2CloudMap) ToAviatrixSite2CloudMapOutputWithContext

func (i AviatrixSite2CloudMap) ToAviatrixSite2CloudMapOutputWithContext(ctx context.Context) AviatrixSite2CloudMapOutput

type AviatrixSite2CloudMapInput

type AviatrixSite2CloudMapInput interface {
	pulumi.Input

	ToAviatrixSite2CloudMapOutput() AviatrixSite2CloudMapOutput
	ToAviatrixSite2CloudMapOutputWithContext(context.Context) AviatrixSite2CloudMapOutput
}

AviatrixSite2CloudMapInput is an input type that accepts AviatrixSite2CloudMap and AviatrixSite2CloudMapOutput values. You can construct a concrete instance of `AviatrixSite2CloudMapInput` via:

AviatrixSite2CloudMap{ "key": AviatrixSite2CloudArgs{...} }

type AviatrixSite2CloudMapOutput

type AviatrixSite2CloudMapOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudMapOutput) ElementType

func (AviatrixSite2CloudMapOutput) MapIndex

func (AviatrixSite2CloudMapOutput) ToAviatrixSite2CloudMapOutput

func (o AviatrixSite2CloudMapOutput) ToAviatrixSite2CloudMapOutput() AviatrixSite2CloudMapOutput

func (AviatrixSite2CloudMapOutput) ToAviatrixSite2CloudMapOutputWithContext

func (o AviatrixSite2CloudMapOutput) ToAviatrixSite2CloudMapOutputWithContext(ctx context.Context) AviatrixSite2CloudMapOutput

type AviatrixSite2CloudOutput

type AviatrixSite2CloudOutput struct{ *pulumi.OutputState }

func (AviatrixSite2CloudOutput) AuthType

Authentication Type. Valid values: 'PSK' and 'Cert'. Default value: 'PSK'.

func (AviatrixSite2CloudOutput) BackupGatewayName

func (o AviatrixSite2CloudOutput) BackupGatewayName() pulumi.StringPtrOutput

Backup gateway name. **NOTE: Please see notes here regarding HA requirements.**

func (AviatrixSite2CloudOutput) BackupLocalTunnelIp

func (o AviatrixSite2CloudOutput) BackupLocalTunnelIp() pulumi.StringPtrOutput

Backup local tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) BackupPreSharedKey

func (o AviatrixSite2CloudOutput) BackupPreSharedKey() pulumi.StringPtrOutput

Backup Pre-Shared Key.

func (AviatrixSite2CloudOutput) BackupRemoteGatewayIp

func (o AviatrixSite2CloudOutput) BackupRemoteGatewayIp() pulumi.StringOutput

Backup Remote Gateway IP. **NOTE: Please see notes here regarding HA requirements.**

func (AviatrixSite2CloudOutput) BackupRemoteGatewayLatitude

func (o AviatrixSite2CloudOutput) BackupRemoteGatewayLatitude() pulumi.Float64PtrOutput

Latitude of backup remote gateway. Does not support refresh.

func (AviatrixSite2CloudOutput) BackupRemoteGatewayLongitude

func (o AviatrixSite2CloudOutput) BackupRemoteGatewayLongitude() pulumi.Float64PtrOutput

Longitude of backup remote gateway. Does not support refresh.

func (AviatrixSite2CloudOutput) BackupRemoteIdentifier

func (o AviatrixSite2CloudOutput) BackupRemoteIdentifier() pulumi.StringPtrOutput

Backup remote identifier. Required for Cert based authentication type with HA enabled. Example: "gw-10-10-0-116".

func (AviatrixSite2CloudOutput) BackupRemoteTunnelIp

func (o AviatrixSite2CloudOutput) BackupRemoteTunnelIp() pulumi.StringPtrOutput

Backup remote tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) CaCertTagName

Name of Remote CA Certificate Tag for creating Site2Cloud tunnels. Required for Cert based authentication type.

func (AviatrixSite2CloudOutput) ConnectionName

func (o AviatrixSite2CloudOutput) ConnectionName() pulumi.StringOutput

Site2Cloud connection name.

func (AviatrixSite2CloudOutput) ConnectionType

func (o AviatrixSite2CloudOutput) ConnectionType() pulumi.StringOutput

Connection type. Valid Values: "mapped", "unmapped".

func (AviatrixSite2CloudOutput) CustomAlgorithms

func (o AviatrixSite2CloudOutput) CustomAlgorithms() pulumi.BoolPtrOutput

Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**

func (AviatrixSite2CloudOutput) CustomMapped

Enable custom mapped connection. Default value: false. Valid values: true/false. Available in provider version R2.17.1+.

func (AviatrixSite2CloudOutput) ElementType

func (AviatrixSite2CloudOutput) ElementType() reflect.Type

func (AviatrixSite2CloudOutput) EnableActiveActive

func (o AviatrixSite2CloudOutput) EnableActiveActive() pulumi.BoolPtrOutput

Enable/disable active active HA for an existing site2cloud connection. Valid values: true, false. Default value: false.

func (AviatrixSite2CloudOutput) EnableDeadPeerDetection

func (o AviatrixSite2CloudOutput) EnableDeadPeerDetection() pulumi.BoolPtrOutput

Enable/disable Deed Peer Detection for an existing site2cloud connection. Default value: true. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.9**

func (AviatrixSite2CloudOutput) EnableEventTriggeredHa

func (o AviatrixSite2CloudOutput) EnableEventTriggeredHa() pulumi.BoolPtrOutput

Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) EnableIkev2

Switch to enable IKEv2. Valid values: true, false. Default value: false.

func (AviatrixSite2CloudOutput) EnableSingleIpHa

func (o AviatrixSite2CloudOutput) EnableSingleIpHa() pulumi.BoolPtrOutput

Enable single IP HA feature. Available as of provider version 2.19+.

func (AviatrixSite2CloudOutput) ForwardTrafficToTransit

func (o AviatrixSite2CloudOutput) ForwardTrafficToTransit() pulumi.BoolPtrOutput

Enable spoke gateway with mapped site2cloud configurations to forward traffic from site2cloud connection to Aviatrix Transit Gateway. Default value: false. Valid values: true or false. Available in provider version 2.17.2+.

func (AviatrixSite2CloudOutput) HaEnabled

Specify whether or not to enable HA. Valid Values: true, false. **NOTE: Please see notes here regarding HA requirements.**

func (AviatrixSite2CloudOutput) LocalDestinationRealCidrs

func (o AviatrixSite2CloudOutput) LocalDestinationRealCidrs() pulumi.StringArrayOutput

List of Local Initiated Traffic Destination Real CIDRs.

func (AviatrixSite2CloudOutput) LocalDestinationVirtualCidrs

func (o AviatrixSite2CloudOutput) LocalDestinationVirtualCidrs() pulumi.StringArrayOutput

List of Local Initiated Traffic Destination Virtual CIDRs.

func (AviatrixSite2CloudOutput) LocalSourceRealCidrs

func (o AviatrixSite2CloudOutput) LocalSourceRealCidrs() pulumi.StringArrayOutput

List of Local Initiated Traffic Source Real CIDRs.

func (AviatrixSite2CloudOutput) LocalSourceVirtualCidrs

func (o AviatrixSite2CloudOutput) LocalSourceVirtualCidrs() pulumi.StringArrayOutput

List of Local Initiated Traffic Source Virtual CIDRs.

func (AviatrixSite2CloudOutput) LocalSubnetCidr

func (o AviatrixSite2CloudOutput) LocalSubnetCidr() pulumi.StringOutput

Local subnet CIDR. **Required for connection type "mapped", except for `customMapped` connection.**

func (AviatrixSite2CloudOutput) LocalSubnetVirtual

func (o AviatrixSite2CloudOutput) LocalSubnetVirtual() pulumi.StringPtrOutput

Local subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**

func (AviatrixSite2CloudOutput) LocalTunnelIp

Local tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) Phase1Authentication

func (o AviatrixSite2CloudOutput) Phase1Authentication() pulumi.StringPtrOutput

Phase one Authentication. Valid values: "SHA-1", "SHA-256", "SHA-384" and "SHA-512". Default value: "SHA-256".

func (AviatrixSite2CloudOutput) Phase1DhGroups

func (o AviatrixSite2CloudOutput) Phase1DhGroups() pulumi.StringPtrOutput

Phase one DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".

func (AviatrixSite2CloudOutput) Phase1Encryption

func (o AviatrixSite2CloudOutput) Phase1Encryption() pulumi.StringPtrOutput

Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".

func (AviatrixSite2CloudOutput) Phase1RemoteIdentifiers

func (o AviatrixSite2CloudOutput) Phase1RemoteIdentifiers() pulumi.StringArrayOutput

Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) Phase2Authentication

func (o AviatrixSite2CloudOutput) Phase2Authentication() pulumi.StringPtrOutput

Phase two Authentication. Valid values: "NO-AUTH", "HMAC-SHA-1", "HMAC-SHA-256", "HMAC-SHA-384" and "HMAC-SHA-512". Default value: "HMAC-SHA-256".

func (AviatrixSite2CloudOutput) Phase2DhGroups

func (o AviatrixSite2CloudOutput) Phase2DhGroups() pulumi.StringPtrOutput

Phase two DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".

func (AviatrixSite2CloudOutput) Phase2Encryption

func (o AviatrixSite2CloudOutput) Phase2Encryption() pulumi.StringPtrOutput

Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".

func (AviatrixSite2CloudOutput) PreSharedKey

Pre-Shared Key.

func (AviatrixSite2CloudOutput) PrimaryCloudGatewayName

func (o AviatrixSite2CloudOutput) PrimaryCloudGatewayName() pulumi.StringOutput

Primary cloud gateway name.

func (AviatrixSite2CloudOutput) PrivateRouteEncryption

func (o AviatrixSite2CloudOutput) PrivateRouteEncryption() pulumi.BoolPtrOutput

Private route encryption switch. Valid values: true, false.

func (AviatrixSite2CloudOutput) RemoteDestinationRealCidrs

func (o AviatrixSite2CloudOutput) RemoteDestinationRealCidrs() pulumi.StringArrayOutput

List of Remote Initiated Traffic Destination Real CIDRs.

func (AviatrixSite2CloudOutput) RemoteDestinationVirtualCidrs

func (o AviatrixSite2CloudOutput) RemoteDestinationVirtualCidrs() pulumi.StringArrayOutput

List of Remote Initiated Traffic Destination Virtual CIDRs.

func (AviatrixSite2CloudOutput) RemoteGatewayIp

func (o AviatrixSite2CloudOutput) RemoteGatewayIp() pulumi.StringOutput

Remote gateway IP.

func (AviatrixSite2CloudOutput) RemoteGatewayLatitude

func (o AviatrixSite2CloudOutput) RemoteGatewayLatitude() pulumi.Float64PtrOutput

Latitude of remote gateway. Does not support refresh.

func (AviatrixSite2CloudOutput) RemoteGatewayLongitude

func (o AviatrixSite2CloudOutput) RemoteGatewayLongitude() pulumi.Float64PtrOutput

Longitude of remote gateway. Does not support refresh.

func (AviatrixSite2CloudOutput) RemoteGatewayType

func (o AviatrixSite2CloudOutput) RemoteGatewayType() pulumi.StringOutput

Remote gateway type. Valid Values: "generic", "avx", "aws", "azure", "sonicwall", "oracle".

func (AviatrixSite2CloudOutput) RemoteIdentifier

func (o AviatrixSite2CloudOutput) RemoteIdentifier() pulumi.StringPtrOutput

Remote identifier. Required for Cert based authentication type. Example: "gw-10-10-0-115".

func (AviatrixSite2CloudOutput) RemoteSourceRealCidrs

func (o AviatrixSite2CloudOutput) RemoteSourceRealCidrs() pulumi.StringArrayOutput

List of Remote Initiated Traffic Source Real CIDRs.

func (AviatrixSite2CloudOutput) RemoteSourceVirtualCidrs

func (o AviatrixSite2CloudOutput) RemoteSourceVirtualCidrs() pulumi.StringArrayOutput

List of Remote Initiated Traffic Source Virtual CIDRs.

func (AviatrixSite2CloudOutput) RemoteSubnetCidr

func (o AviatrixSite2CloudOutput) RemoteSubnetCidr() pulumi.StringPtrOutput

Remote subnet CIDR. **Not required for customMapped connection.**

func (AviatrixSite2CloudOutput) RemoteSubnetVirtual

func (o AviatrixSite2CloudOutput) RemoteSubnetVirtual() pulumi.StringPtrOutput

Remote subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**

func (AviatrixSite2CloudOutput) RemoteTunnelIp

func (o AviatrixSite2CloudOutput) RemoteTunnelIp() pulumi.StringPtrOutput

Remote tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.

func (AviatrixSite2CloudOutput) RouteTableLists

Route tables to modify.

func (AviatrixSite2CloudOutput) SslServerPool

Specify ssl_server_pool. Default value: "192.168.44.0/24". **NOTE: Please see notes here for more information.**

func (AviatrixSite2CloudOutput) ToAviatrixSite2CloudOutput

func (o AviatrixSite2CloudOutput) ToAviatrixSite2CloudOutput() AviatrixSite2CloudOutput

func (AviatrixSite2CloudOutput) ToAviatrixSite2CloudOutputWithContext

func (o AviatrixSite2CloudOutput) ToAviatrixSite2CloudOutputWithContext(ctx context.Context) AviatrixSite2CloudOutput

func (AviatrixSite2CloudOutput) TunnelType

Site2Cloud tunnel type. Valid Values: "policy", "route".

func (AviatrixSite2CloudOutput) VpcId

VPC ID of the cloud gateway.

type AviatrixSite2CloudState

type AviatrixSite2CloudState struct {
	// Authentication Type. Valid values: 'PSK' and 'Cert'. Default value: 'PSK'.
	AuthType pulumi.StringPtrInput
	// Backup gateway name. **NOTE: Please see notes here regarding HA requirements.**
	BackupGatewayName pulumi.StringPtrInput
	// Backup local tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupLocalTunnelIp pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup Remote Gateway IP. **NOTE: Please see notes here regarding HA requirements.**
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Latitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLatitude pulumi.Float64PtrInput
	// Longitude of backup remote gateway. Does not support refresh.
	BackupRemoteGatewayLongitude pulumi.Float64PtrInput
	// Backup remote identifier. Required for Cert based authentication type with HA enabled. Example: "gw-10-10-0-116".
	BackupRemoteIdentifier pulumi.StringPtrInput
	// Backup remote tunnel IP address. Only valid when HA enabled route based connection. Available as of provider version R2.19+.
	BackupRemoteTunnelIp pulumi.StringPtrInput
	// Name of Remote CA Certificate Tag for creating Site2Cloud tunnels. Required for Cert based authentication type.
	CaCertTagName pulumi.StringPtrInput
	// Site2Cloud connection name.
	ConnectionName pulumi.StringPtrInput
	// Connection type. Valid Values: "mapped", "unmapped".
	ConnectionType pulumi.StringPtrInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Enable custom mapped connection. Default value: false. Valid values: true/false. Available in provider version R2.17.1+.
	CustomMapped pulumi.BoolPtrInput
	// Enable/disable active active HA for an existing site2cloud connection. Valid values: true, false. Default value: false.
	EnableActiveActive pulumi.BoolPtrInput
	// Enable/disable Deed Peer Detection for an existing site2cloud connection. Default value: true. **NOTE: Please see notes here in regards to any deltas found in your state with the addition of this argument in R1.9**
	EnableDeadPeerDetection pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Switch to enable IKEv2. Valid values: true, false. Default value: false.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable single IP HA feature. Available as of provider version 2.19+.
	EnableSingleIpHa pulumi.BoolPtrInput
	// Enable spoke gateway with mapped site2cloud configurations to forward traffic from site2cloud connection to Aviatrix Transit Gateway. Default value: false. Valid values: true or false. Available in provider version 2.17.2+.
	ForwardTrafficToTransit pulumi.BoolPtrInput
	// Specify whether or not to enable HA. Valid Values: true, false. **NOTE: Please see notes here regarding HA requirements.**
	HaEnabled pulumi.BoolPtrInput
	// List of Local Initiated Traffic Destination Real CIDRs.
	LocalDestinationRealCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Destination Virtual CIDRs.
	LocalDestinationVirtualCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Source Real CIDRs.
	LocalSourceRealCidrs pulumi.StringArrayInput
	// List of Local Initiated Traffic Source Virtual CIDRs.
	LocalSourceVirtualCidrs pulumi.StringArrayInput
	// Local subnet CIDR. **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetCidr pulumi.StringPtrInput
	// Local subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	LocalSubnetVirtual pulumi.StringPtrInput
	// Local tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	LocalTunnelIp pulumi.StringPtrInput
	// Phase one Authentication. Valid values: "SHA-1", "SHA-256", "SHA-384" and "SHA-512". Default value: "SHA-256".
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: "NO-AUTH", "HMAC-SHA-1", "HMAC-SHA-256", "HMAC-SHA-384" and "HMAC-SHA-512". Default value: "HMAC-SHA-256".
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: "1", "2", "5", "14", "15", "16", "17", "18", "19", "20" and "21". Default value: "14".
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Primary cloud gateway name.
	PrimaryCloudGatewayName pulumi.StringPtrInput
	// Private route encryption switch. Valid values: true, false.
	PrivateRouteEncryption pulumi.BoolPtrInput
	// List of  Remote Initiated Traffic Destination Real CIDRs.
	RemoteDestinationRealCidrs pulumi.StringArrayInput
	// List of Remote Initiated Traffic Destination Virtual CIDRs.
	RemoteDestinationVirtualCidrs pulumi.StringArrayInput
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringPtrInput
	// Latitude of remote gateway. Does not support refresh.
	RemoteGatewayLatitude pulumi.Float64PtrInput
	// Longitude of remote gateway. Does not support refresh.
	RemoteGatewayLongitude pulumi.Float64PtrInput
	// Remote gateway type. Valid Values: "generic", "avx", "aws", "azure", "sonicwall", "oracle".
	RemoteGatewayType pulumi.StringPtrInput
	// Remote identifier. Required for Cert based authentication type. Example: "gw-10-10-0-115".
	RemoteIdentifier pulumi.StringPtrInput
	// List of Remote Initiated Traffic Source Real CIDRs.
	RemoteSourceRealCidrs pulumi.StringArrayInput
	// List of Remote Initiated Traffic Source Virtual CIDRs.
	RemoteSourceVirtualCidrs pulumi.StringArrayInput
	// Remote subnet CIDR. **Not required for customMapped connection.**
	RemoteSubnetCidr pulumi.StringPtrInput
	// Remote subnet CIDR (Virtual). **Required for connection type "mapped", except for `customMapped` connection.**
	RemoteSubnetVirtual pulumi.StringPtrInput
	// Remote tunnel IP address. Only valid for route based connection. Available as of provider version R2.19+.
	RemoteTunnelIp pulumi.StringPtrInput
	// Route tables to modify.
	RouteTableLists pulumi.StringArrayInput
	// Specify ssl_server_pool. Default value: "192.168.44.0/24". **NOTE: Please see notes here for more information.**
	SslServerPool pulumi.StringPtrInput
	// Site2Cloud tunnel type. Valid Values: "policy", "route".
	TunnelType pulumi.StringPtrInput
	// VPC ID of the cloud gateway.
	VpcId pulumi.StringPtrInput
}

func (AviatrixSite2CloudState) ElementType

func (AviatrixSite2CloudState) ElementType() reflect.Type

type AviatrixSplunkLogging

type AviatrixSplunkLogging struct {
	pulumi.CustomResourceState

	// Custom configuration.
	CustomInputConfig pulumi.StringPtrOutput `pulumi:"customInputConfig"`
	// Configuration file. Use the `filebase64` function to read from a file.
	CustomOutputConfigFile pulumi.StringPtrOutput `pulumi:"customOutputConfigFile"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Port number.
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// Server IP.
	Server pulumi.StringPtrOutput `pulumi:"server"`
	// The status of splunk logging.
	Status pulumi.StringOutput `pulumi:"status"`
}

The **aviatrix_splunk_logging** resource allows the enabling and disabling of splunk logging.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSplunkLogging(ctx, "testSplunkLogging", &aviatrix.AviatrixSplunkLoggingArgs{
			Port:   pulumi.Int(10),
			Server: pulumi.String("1.2.3.4"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"encoding/base64"
"io/ioutil"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func filebase64OrPanic(path string) pulumi.StringPtrInput {
	if fileData, err := ioutil.ReadFile(path); err == nil {
		return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))
	} else {
		panic(err.Error())
	}
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSplunkLogging(ctx, "testSplunkLogging", &aviatrix.AviatrixSplunkLoggingArgs{
			CustomOutputConfigFile: filebase64OrPanic("/path/to/configuration.spl"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**splunk_logging** can be imported using `splunk_logging`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSplunkLogging:AviatrixSplunkLogging test splunk_logging

```

func GetAviatrixSplunkLogging

func GetAviatrixSplunkLogging(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSplunkLoggingState, opts ...pulumi.ResourceOption) (*AviatrixSplunkLogging, error)

GetAviatrixSplunkLogging gets an existing AviatrixSplunkLogging 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 NewAviatrixSplunkLogging

func NewAviatrixSplunkLogging(ctx *pulumi.Context,
	name string, args *AviatrixSplunkLoggingArgs, opts ...pulumi.ResourceOption) (*AviatrixSplunkLogging, error)

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

func (*AviatrixSplunkLogging) ElementType

func (*AviatrixSplunkLogging) ElementType() reflect.Type

func (*AviatrixSplunkLogging) ToAviatrixSplunkLoggingOutput

func (i *AviatrixSplunkLogging) ToAviatrixSplunkLoggingOutput() AviatrixSplunkLoggingOutput

func (*AviatrixSplunkLogging) ToAviatrixSplunkLoggingOutputWithContext

func (i *AviatrixSplunkLogging) ToAviatrixSplunkLoggingOutputWithContext(ctx context.Context) AviatrixSplunkLoggingOutput

type AviatrixSplunkLoggingArgs

type AviatrixSplunkLoggingArgs struct {
	// Custom configuration.
	CustomInputConfig pulumi.StringPtrInput
	// Configuration file. Use the `filebase64` function to read from a file.
	CustomOutputConfigFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Port number.
	Port pulumi.IntPtrInput
	// Server IP.
	Server pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixSplunkLogging resource.

func (AviatrixSplunkLoggingArgs) ElementType

func (AviatrixSplunkLoggingArgs) ElementType() reflect.Type

type AviatrixSplunkLoggingArray

type AviatrixSplunkLoggingArray []AviatrixSplunkLoggingInput

func (AviatrixSplunkLoggingArray) ElementType

func (AviatrixSplunkLoggingArray) ElementType() reflect.Type

func (AviatrixSplunkLoggingArray) ToAviatrixSplunkLoggingArrayOutput

func (i AviatrixSplunkLoggingArray) ToAviatrixSplunkLoggingArrayOutput() AviatrixSplunkLoggingArrayOutput

func (AviatrixSplunkLoggingArray) ToAviatrixSplunkLoggingArrayOutputWithContext

func (i AviatrixSplunkLoggingArray) ToAviatrixSplunkLoggingArrayOutputWithContext(ctx context.Context) AviatrixSplunkLoggingArrayOutput

type AviatrixSplunkLoggingArrayInput

type AviatrixSplunkLoggingArrayInput interface {
	pulumi.Input

	ToAviatrixSplunkLoggingArrayOutput() AviatrixSplunkLoggingArrayOutput
	ToAviatrixSplunkLoggingArrayOutputWithContext(context.Context) AviatrixSplunkLoggingArrayOutput
}

AviatrixSplunkLoggingArrayInput is an input type that accepts AviatrixSplunkLoggingArray and AviatrixSplunkLoggingArrayOutput values. You can construct a concrete instance of `AviatrixSplunkLoggingArrayInput` via:

AviatrixSplunkLoggingArray{ AviatrixSplunkLoggingArgs{...} }

type AviatrixSplunkLoggingArrayOutput

type AviatrixSplunkLoggingArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSplunkLoggingArrayOutput) ElementType

func (AviatrixSplunkLoggingArrayOutput) Index

func (AviatrixSplunkLoggingArrayOutput) ToAviatrixSplunkLoggingArrayOutput

func (o AviatrixSplunkLoggingArrayOutput) ToAviatrixSplunkLoggingArrayOutput() AviatrixSplunkLoggingArrayOutput

func (AviatrixSplunkLoggingArrayOutput) ToAviatrixSplunkLoggingArrayOutputWithContext

func (o AviatrixSplunkLoggingArrayOutput) ToAviatrixSplunkLoggingArrayOutputWithContext(ctx context.Context) AviatrixSplunkLoggingArrayOutput

type AviatrixSplunkLoggingInput

type AviatrixSplunkLoggingInput interface {
	pulumi.Input

	ToAviatrixSplunkLoggingOutput() AviatrixSplunkLoggingOutput
	ToAviatrixSplunkLoggingOutputWithContext(ctx context.Context) AviatrixSplunkLoggingOutput
}

type AviatrixSplunkLoggingMap

type AviatrixSplunkLoggingMap map[string]AviatrixSplunkLoggingInput

func (AviatrixSplunkLoggingMap) ElementType

func (AviatrixSplunkLoggingMap) ElementType() reflect.Type

func (AviatrixSplunkLoggingMap) ToAviatrixSplunkLoggingMapOutput

func (i AviatrixSplunkLoggingMap) ToAviatrixSplunkLoggingMapOutput() AviatrixSplunkLoggingMapOutput

func (AviatrixSplunkLoggingMap) ToAviatrixSplunkLoggingMapOutputWithContext

func (i AviatrixSplunkLoggingMap) ToAviatrixSplunkLoggingMapOutputWithContext(ctx context.Context) AviatrixSplunkLoggingMapOutput

type AviatrixSplunkLoggingMapInput

type AviatrixSplunkLoggingMapInput interface {
	pulumi.Input

	ToAviatrixSplunkLoggingMapOutput() AviatrixSplunkLoggingMapOutput
	ToAviatrixSplunkLoggingMapOutputWithContext(context.Context) AviatrixSplunkLoggingMapOutput
}

AviatrixSplunkLoggingMapInput is an input type that accepts AviatrixSplunkLoggingMap and AviatrixSplunkLoggingMapOutput values. You can construct a concrete instance of `AviatrixSplunkLoggingMapInput` via:

AviatrixSplunkLoggingMap{ "key": AviatrixSplunkLoggingArgs{...} }

type AviatrixSplunkLoggingMapOutput

type AviatrixSplunkLoggingMapOutput struct{ *pulumi.OutputState }

func (AviatrixSplunkLoggingMapOutput) ElementType

func (AviatrixSplunkLoggingMapOutput) MapIndex

func (AviatrixSplunkLoggingMapOutput) ToAviatrixSplunkLoggingMapOutput

func (o AviatrixSplunkLoggingMapOutput) ToAviatrixSplunkLoggingMapOutput() AviatrixSplunkLoggingMapOutput

func (AviatrixSplunkLoggingMapOutput) ToAviatrixSplunkLoggingMapOutputWithContext

func (o AviatrixSplunkLoggingMapOutput) ToAviatrixSplunkLoggingMapOutputWithContext(ctx context.Context) AviatrixSplunkLoggingMapOutput

type AviatrixSplunkLoggingOutput

type AviatrixSplunkLoggingOutput struct{ *pulumi.OutputState }

func (AviatrixSplunkLoggingOutput) CustomInputConfig

func (o AviatrixSplunkLoggingOutput) CustomInputConfig() pulumi.StringPtrOutput

Custom configuration.

func (AviatrixSplunkLoggingOutput) CustomOutputConfigFile

func (o AviatrixSplunkLoggingOutput) CustomOutputConfigFile() pulumi.StringPtrOutput

Configuration file. Use the `filebase64` function to read from a file.

func (AviatrixSplunkLoggingOutput) ElementType

func (AviatrixSplunkLoggingOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixSplunkLoggingOutput) Port

Port number.

func (AviatrixSplunkLoggingOutput) Server

Server IP.

func (AviatrixSplunkLoggingOutput) Status

The status of splunk logging.

func (AviatrixSplunkLoggingOutput) ToAviatrixSplunkLoggingOutput

func (o AviatrixSplunkLoggingOutput) ToAviatrixSplunkLoggingOutput() AviatrixSplunkLoggingOutput

func (AviatrixSplunkLoggingOutput) ToAviatrixSplunkLoggingOutputWithContext

func (o AviatrixSplunkLoggingOutput) ToAviatrixSplunkLoggingOutputWithContext(ctx context.Context) AviatrixSplunkLoggingOutput

type AviatrixSplunkLoggingState

type AviatrixSplunkLoggingState struct {
	// Custom configuration.
	CustomInputConfig pulumi.StringPtrInput
	// Configuration file. Use the `filebase64` function to read from a file.
	CustomOutputConfigFile pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Port number.
	Port pulumi.IntPtrInput
	// Server IP.
	Server pulumi.StringPtrInput
	// The status of splunk logging.
	Status pulumi.StringPtrInput
}

func (AviatrixSplunkLoggingState) ElementType

func (AviatrixSplunkLoggingState) ElementType() reflect.Type

type AviatrixSpokeGateway

type AviatrixSpokeGateway struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrOutput `pulumi:"allocateNewEip"`
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayOutput `pulumi:"approvedLearnedCidrs"`
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringOutput `pulumi:"availabilityDomain"`
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringOutput `pulumi:"azureEipNameResourceGroup"`
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrOutput `pulumi:"bgpEcmp"`
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrOutput `pulumi:"bgpHoldTime"`
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.IntPtrOutput `pulumi:"bgpPollingTime"`
	// Cloud instance ID of the spoke gateway.
	CloudInstanceId pulumi.StringOutput `pulumi:"cloudInstanceId"`
	// Type of cloud service provider, requires an integer value. Currently, only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrOutput `pulumi:"customerManagedKeys"`
	// A list of comma separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to this spoke gateway only. Example: "10.0.0.0/116,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrOutput `pulumi:"customizedSpokeVpcRoutes"`
	// Disables route propagation on BGP Spoke to attached Transit Gateway. Default value: false.
	DisableRoutePropagation pulumi.BoolPtrOutput `pulumi:"disableRoutePropagation"`
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringOutput `pulumi:"eip"`
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false.
	EnableActiveStandby pulumi.BoolPtrOutput `pulumi:"enableActiveStandby"`
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrOutput `pulumi:"enableActiveStandbyPreemptive"`
	// Auto Advertise Spoke Site2Cloud CIDRs. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableAutoAdvertiseS2cCidrs pulumi.BoolPtrOutput `pulumi:"enableAutoAdvertiseS2cCidrs"`
	// Enable BGP for this spoke gateway. Only available for AWS and Azure. Valid values: true, false. Default value: false. Available in provider R2.21.0+.
	EnableBgp pulumi.BoolPtrOutput `pulumi:"enableBgp"`
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret providers. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrOutput `pulumi:"enableEncryptVolume"`
	// Enable jumbo frames for this spoke gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Switch to enable/disable learned CIDR approval for BGP Spoke Gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrOutput `pulumi:"enableMonitorGatewaySubnets"`
	// Enable preserve asPath when advertising manual summary cidrs on BGP spoke gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	EnablePreserveAsPath pulumi.BoolPtrOutput `pulumi:"enablePreserveAsPath"`
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrOutput `pulumi:"enablePrivateOob"`
	// Program default route in VPC private route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnablePrivateVpcDefaultRoute pulumi.BoolPtrOutput `pulumi:"enablePrivateVpcDefaultRoute"`
	// Skip programming VPC public route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableSkipPublicRouteTableUpdate pulumi.BoolPtrOutput `pulumi:"enableSkipPublicRouteTableUpdate"`
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrOutput `pulumi:"enableSpotInstance"`
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrOutput `pulumi:"enableVpcDnsServer"`
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringOutput `pulumi:"faultDomain"`
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to this spoke gateway only. Example: "10.2.0.0/116,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrOutput `pulumi:"filteredSpokeVpcRoutes"`
	// Name of the gateway which is going to be created.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1".
	GwSize pulumi.StringOutput `pulumi:"gwSize"`
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringOutput `pulumi:"haAvailabilityDomain"`
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringOutput `pulumi:"haAzureEipNameResourceGroup"`
	// Cloud instance ID of the HA spoke gateway.
	HaCloudInstanceId pulumi.StringOutput `pulumi:"haCloudInstanceId"`
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringOutput `pulumi:"haEip"`
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringOutput `pulumi:"haFaultDomain"`
	// Aviatrix spoke gateway unique name of HA spoke gateway.
	HaGwName pulumi.StringOutput `pulumi:"haGwName"`
	// HA Gateway Size. Mandatory if enabling HA.
	HaGwSize pulumi.StringPtrOutput `pulumi:"haGwSize"`
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringOutput `pulumi:"haImageVersion"`
	// AZ of subnet being created for Insane Mode Spoke HA Gateway. Required for AWS, AzureGov, AWSGov, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrOutput `pulumi:"haInsaneModeAz"`
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrOutput `pulumi:"haOobAvailabilityZone"`
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrOutput `pulumi:"haOobManagementSubnet"`
	// Private IP address of HA spoke gateway.
	HaPrivateIp pulumi.StringOutput `pulumi:"haPrivateIp"`
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrOutput `pulumi:"haPrivateModeSubnetZone"`
	// Public IP address of the HA Spoke Gateway.
	HaPublicIp pulumi.StringOutput `pulumi:"haPublicIp"`
	// HA security group used for the spoke gateway.
	HaSecurityGroupId pulumi.StringOutput `pulumi:"haSecurityGroupId"`
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringOutput `pulumi:"haSoftwareVersion"`
	// HA Subnet. Required if enabling HA for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24"
	HaSubnet pulumi.StringPtrOutput `pulumi:"haSubnet"`
	// HA Zone. Required if enabling HA for GCP gateway. Optional for Azure. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrOutput `pulumi:"haZone"`
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringOutput `pulumi:"imageVersion"`
	// A list of comma separated CIDRs to be advertised to on-prem as 'Included CIDR List'. When configured, it will replace all advertised routes from this VPC. Example: "10.4.0.0/116,10.5.0.0/16".
	IncludedAdvertisedSpokeRoutes pulumi.StringPtrOutput `pulumi:"includedAdvertisedSpokeRoutes"`
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Spoke Gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrOutput `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode Spoke Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrOutput `pulumi:"insaneModeAz"`
	// Learned CIDRs approval mode. Either "gateway" (approval on a per-gateway basis) or "connection" (approval on a per-connection basis). Only "gateway" is supported for BGP SPOKE Gateway. Default value: "gateway". Available as of provider version R2.21+.
	LearnedCidrsApprovalMode pulumi.StringPtrOutput `pulumi:"learnedCidrsApprovalMode"`
	// Changes the Aviatrix Spoke Gateway ASN number before you setup Aviatrix Spoke Gateway connection configurations.
	LocalAsNumber pulumi.StringOutput `pulumi:"localAsNumber"`
	// Enable to manage spoke-to-Aviatrix transit gateway attachments using the **aviatrix_spoke_gateway** resource with the below `transitGw` attribute. If this is set to false, attaching this spoke to transit gateways must be done using the **aviatrix_spoke_transit_attachment** resource. Valid values: true, false. Default value: true. Available in provider R2.17+.
	ManageTransitGatewayAttachment pulumi.BoolPtrOutput `pulumi:"manageTransitGatewayAttachment"`
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayOutput `pulumi:"monitorExcludeLists"`
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrOutput `pulumi:"oobAvailabilityZone"`
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrOutput `pulumi:"oobManagementSubnet"`
	// List of AS numbers to populate BGP AS_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Private IP address of the spoke gateway created.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrOutput `pulumi:"privateModeLbVpcId"`
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrOutput `pulumi:"privateModeSubnetZone"`
	// Public IP address of the Spoke Gateway created.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrOutput `pulumi:"rxQueueSize"`
	// Security group used for the spoke gateway.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrOutput `pulumi:"singleAzHa"`
	// Specify whether to enable Source NAT feature in "singleIp" mode on the gateway or not. Please disable AWS NAT instance before enabling this feature. Currently only supports AWS(1) and Azure(8). Valid values: true, false.
	SingleIpSnat pulumi.BoolPtrOutput `pulumi:"singleIpSnat"`
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringOutput `pulumi:"softwareVersion"`
	// Intended CIDR list to be advertised to external BGP router. Empty list is not valid. Example: ["10.2.0.0/16", "10.4.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayOutput `pulumi:"spokeBgpManualAdvertiseCidrs"`
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina. Example: ["key1:value1", "key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayOutput `pulumi:"tagLists"`
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specify the Aviatrix transit gateways to attach this spoke gateway to. Format is a comma separated list of transit gateway names. For example: "transit-gw1,transit-gw2".
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_spoke_transit_attachment resource instead.
	TransitGw pulumi.StringPtrOutput `pulumi:"transitGw"`
	// The IPSec tunnel down detection time for the Spoke Gateway.
	TunnelDetectionTime pulumi.IntOutput `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1, AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringOutput `pulumi:"vpcReg"`
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

## Import

**spoke_gateway** can be imported using the `gw_name`, e.g. ****

```sh

$ pulumi import aviatrix:index/aviatrixSpokeGateway:AviatrixSpokeGateway test gw_name

```

func GetAviatrixSpokeGateway

func GetAviatrixSpokeGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSpokeGatewayState, opts ...pulumi.ResourceOption) (*AviatrixSpokeGateway, error)

GetAviatrixSpokeGateway gets an existing AviatrixSpokeGateway 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 NewAviatrixSpokeGateway

func NewAviatrixSpokeGateway(ctx *pulumi.Context,
	name string, args *AviatrixSpokeGatewayArgs, opts ...pulumi.ResourceOption) (*AviatrixSpokeGateway, error)

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

func (*AviatrixSpokeGateway) ElementType

func (*AviatrixSpokeGateway) ElementType() reflect.Type

func (*AviatrixSpokeGateway) ToAviatrixSpokeGatewayOutput

func (i *AviatrixSpokeGateway) ToAviatrixSpokeGatewayOutput() AviatrixSpokeGatewayOutput

func (*AviatrixSpokeGateway) ToAviatrixSpokeGatewayOutputWithContext

func (i *AviatrixSpokeGateway) ToAviatrixSpokeGatewayOutputWithContext(ctx context.Context) AviatrixSpokeGatewayOutput

type AviatrixSpokeGatewayArgs

type AviatrixSpokeGatewayArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.IntPtrInput
	// Type of cloud service provider, requires an integer value. Currently, only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntInput
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// A list of comma separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to this spoke gateway only. Example: "10.0.0.0/116,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrInput
	// Disables route propagation on BGP Spoke to attached Transit Gateway. Default value: false.
	DisableRoutePropagation pulumi.BoolPtrInput
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false.
	EnableActiveStandby pulumi.BoolPtrInput
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrInput
	// Auto Advertise Spoke Site2Cloud CIDRs. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableAutoAdvertiseS2cCidrs pulumi.BoolPtrInput
	// Enable BGP for this spoke gateway. Only available for AWS and Azure. Valid values: true, false. Default value: false. Available in provider R2.21.0+.
	EnableBgp pulumi.BoolPtrInput
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret providers. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Enable jumbo frames for this spoke gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable/disable learned CIDR approval for BGP Spoke Gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Enable preserve asPath when advertising manual summary cidrs on BGP spoke gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
	// Program default route in VPC private route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnablePrivateVpcDefaultRoute pulumi.BoolPtrInput
	// Skip programming VPC public route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableSkipPublicRouteTableUpdate pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to this spoke gateway only. Example: "10.2.0.0/116,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringInput
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1".
	GwSize pulumi.StringInput
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringPtrInput
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if enabling HA.
	HaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Spoke HA Gateway. Required for AWS, AzureGov, AWSGov, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrInput
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrInput
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrInput
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringPtrInput
	// HA Subnet. Required if enabling HA for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24"
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required if enabling HA for GCP gateway. Optional for Azure. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// A list of comma separated CIDRs to be advertised to on-prem as 'Included CIDR List'. When configured, it will replace all advertised routes from this VPC. Example: "10.4.0.0/116,10.5.0.0/16".
	IncludedAdvertisedSpokeRoutes pulumi.StringPtrInput
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Spoke Gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Spoke Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// Learned CIDRs approval mode. Either "gateway" (approval on a per-gateway basis) or "connection" (approval on a per-connection basis). Only "gateway" is supported for BGP SPOKE Gateway. Default value: "gateway". Available as of provider version R2.21+.
	LearnedCidrsApprovalMode pulumi.StringPtrInput
	// Changes the Aviatrix Spoke Gateway ASN number before you setup Aviatrix Spoke Gateway connection configurations.
	LocalAsNumber pulumi.StringPtrInput
	// Enable to manage spoke-to-Aviatrix transit gateway attachments using the **aviatrix_spoke_gateway** resource with the below `transitGw` attribute. If this is set to false, attaching this spoke to transit gateways must be done using the **aviatrix_spoke_transit_attachment** resource. Valid values: true, false. Default value: true. Available in provider R2.17+.
	ManageTransitGatewayAttachment pulumi.BoolPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayInput
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrInput
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrInput
	// List of AS numbers to populate BGP AS_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayInput
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrInput
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrInput
	// Specify whether to enable Source NAT feature in "singleIp" mode on the gateway or not. Please disable AWS NAT instance before enabling this feature. Currently only supports AWS(1) and Azure(8). Valid values: true, false.
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Intended CIDR list to be advertised to external BGP router. Empty list is not valid. Example: ["10.2.0.0/16", "10.4.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringInput
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina. Example: ["key1:value1", "key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// Specify the Aviatrix transit gateways to attach this spoke gateway to. Format is a comma separated list of transit gateway names. For example: "transit-gw1,transit-gw2".
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_spoke_transit_attachment resource instead.
	TransitGw pulumi.StringPtrInput
	// The IPSec tunnel down detection time for the Spoke Gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1, AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringInput
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixSpokeGateway resource.

func (AviatrixSpokeGatewayArgs) ElementType

func (AviatrixSpokeGatewayArgs) ElementType() reflect.Type

type AviatrixSpokeGatewayArray

type AviatrixSpokeGatewayArray []AviatrixSpokeGatewayInput

func (AviatrixSpokeGatewayArray) ElementType

func (AviatrixSpokeGatewayArray) ElementType() reflect.Type

func (AviatrixSpokeGatewayArray) ToAviatrixSpokeGatewayArrayOutput

func (i AviatrixSpokeGatewayArray) ToAviatrixSpokeGatewayArrayOutput() AviatrixSpokeGatewayArrayOutput

func (AviatrixSpokeGatewayArray) ToAviatrixSpokeGatewayArrayOutputWithContext

func (i AviatrixSpokeGatewayArray) ToAviatrixSpokeGatewayArrayOutputWithContext(ctx context.Context) AviatrixSpokeGatewayArrayOutput

type AviatrixSpokeGatewayArrayInput

type AviatrixSpokeGatewayArrayInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewayArrayOutput() AviatrixSpokeGatewayArrayOutput
	ToAviatrixSpokeGatewayArrayOutputWithContext(context.Context) AviatrixSpokeGatewayArrayOutput
}

AviatrixSpokeGatewayArrayInput is an input type that accepts AviatrixSpokeGatewayArray and AviatrixSpokeGatewayArrayOutput values. You can construct a concrete instance of `AviatrixSpokeGatewayArrayInput` via:

AviatrixSpokeGatewayArray{ AviatrixSpokeGatewayArgs{...} }

type AviatrixSpokeGatewayArrayOutput

type AviatrixSpokeGatewayArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewayArrayOutput) ElementType

func (AviatrixSpokeGatewayArrayOutput) Index

func (AviatrixSpokeGatewayArrayOutput) ToAviatrixSpokeGatewayArrayOutput

func (o AviatrixSpokeGatewayArrayOutput) ToAviatrixSpokeGatewayArrayOutput() AviatrixSpokeGatewayArrayOutput

func (AviatrixSpokeGatewayArrayOutput) ToAviatrixSpokeGatewayArrayOutputWithContext

func (o AviatrixSpokeGatewayArrayOutput) ToAviatrixSpokeGatewayArrayOutputWithContext(ctx context.Context) AviatrixSpokeGatewayArrayOutput

type AviatrixSpokeGatewayInput

type AviatrixSpokeGatewayInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewayOutput() AviatrixSpokeGatewayOutput
	ToAviatrixSpokeGatewayOutputWithContext(ctx context.Context) AviatrixSpokeGatewayOutput
}

type AviatrixSpokeGatewayMap

type AviatrixSpokeGatewayMap map[string]AviatrixSpokeGatewayInput

func (AviatrixSpokeGatewayMap) ElementType

func (AviatrixSpokeGatewayMap) ElementType() reflect.Type

func (AviatrixSpokeGatewayMap) ToAviatrixSpokeGatewayMapOutput

func (i AviatrixSpokeGatewayMap) ToAviatrixSpokeGatewayMapOutput() AviatrixSpokeGatewayMapOutput

func (AviatrixSpokeGatewayMap) ToAviatrixSpokeGatewayMapOutputWithContext

func (i AviatrixSpokeGatewayMap) ToAviatrixSpokeGatewayMapOutputWithContext(ctx context.Context) AviatrixSpokeGatewayMapOutput

type AviatrixSpokeGatewayMapInput

type AviatrixSpokeGatewayMapInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewayMapOutput() AviatrixSpokeGatewayMapOutput
	ToAviatrixSpokeGatewayMapOutputWithContext(context.Context) AviatrixSpokeGatewayMapOutput
}

AviatrixSpokeGatewayMapInput is an input type that accepts AviatrixSpokeGatewayMap and AviatrixSpokeGatewayMapOutput values. You can construct a concrete instance of `AviatrixSpokeGatewayMapInput` via:

AviatrixSpokeGatewayMap{ "key": AviatrixSpokeGatewayArgs{...} }

type AviatrixSpokeGatewayMapOutput

type AviatrixSpokeGatewayMapOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewayMapOutput) ElementType

func (AviatrixSpokeGatewayMapOutput) MapIndex

func (AviatrixSpokeGatewayMapOutput) ToAviatrixSpokeGatewayMapOutput

func (o AviatrixSpokeGatewayMapOutput) ToAviatrixSpokeGatewayMapOutput() AviatrixSpokeGatewayMapOutput

func (AviatrixSpokeGatewayMapOutput) ToAviatrixSpokeGatewayMapOutputWithContext

func (o AviatrixSpokeGatewayMapOutput) ToAviatrixSpokeGatewayMapOutputWithContext(ctx context.Context) AviatrixSpokeGatewayMapOutput

type AviatrixSpokeGatewayOutput

type AviatrixSpokeGatewayOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewayOutput) AccountName

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixSpokeGatewayOutput) AllocateNewEip

func (o AviatrixSpokeGatewayOutput) AllocateNewEip() pulumi.BoolPtrOutput

When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.

func (AviatrixSpokeGatewayOutput) ApprovedLearnedCidrs

func (o AviatrixSpokeGatewayOutput) ApprovedLearnedCidrs() pulumi.StringArrayOutput

A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.

func (AviatrixSpokeGatewayOutput) AvailabilityDomain

func (o AviatrixSpokeGatewayOutput) AvailabilityDomain() pulumi.StringOutput

Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixSpokeGatewayOutput) AzureEipNameResourceGroup

func (o AviatrixSpokeGatewayOutput) AzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP Address resource and its resource group in Azure to be assigned to the Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixSpokeGatewayOutput) BgpEcmp

Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.

func (AviatrixSpokeGatewayOutput) BgpHoldTime

BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.

func (AviatrixSpokeGatewayOutput) BgpPollingTime

func (o AviatrixSpokeGatewayOutput) BgpPollingTime() pulumi.IntPtrOutput

BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".

func (AviatrixSpokeGatewayOutput) CloudInstanceId

func (o AviatrixSpokeGatewayOutput) CloudInstanceId() pulumi.StringOutput

Cloud instance ID of the spoke gateway.

func (AviatrixSpokeGatewayOutput) CloudType

Type of cloud service provider, requires an integer value. Currently, only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.

func (AviatrixSpokeGatewayOutput) CustomerManagedKeys

func (o AviatrixSpokeGatewayOutput) CustomerManagedKeys() pulumi.StringPtrOutput

Customer managed key ID.

func (AviatrixSpokeGatewayOutput) CustomizedSpokeVpcRoutes

func (o AviatrixSpokeGatewayOutput) CustomizedSpokeVpcRoutes() pulumi.StringPtrOutput

A list of comma separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to this spoke gateway only. Example: "10.0.0.0/116,10.2.0.0/16".

func (AviatrixSpokeGatewayOutput) DisableRoutePropagation

func (o AviatrixSpokeGatewayOutput) DisableRoutePropagation() pulumi.BoolPtrOutput

Disables route propagation on BGP Spoke to attached Transit Gateway. Default value: false.

func (AviatrixSpokeGatewayOutput) Eip

Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixSpokeGatewayOutput) ElementType

func (AviatrixSpokeGatewayOutput) ElementType() reflect.Type

func (AviatrixSpokeGatewayOutput) EnableActiveStandby

func (o AviatrixSpokeGatewayOutput) EnableActiveStandby() pulumi.BoolPtrOutput

Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) EnableActiveStandbyPreemptive

func (o AviatrixSpokeGatewayOutput) EnableActiveStandbyPreemptive() pulumi.BoolPtrOutput

Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) EnableAutoAdvertiseS2cCidrs

func (o AviatrixSpokeGatewayOutput) EnableAutoAdvertiseS2cCidrs() pulumi.BoolPtrOutput

Auto Advertise Spoke Site2Cloud CIDRs. Default: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixSpokeGatewayOutput) EnableBgp

Enable BGP for this spoke gateway. Only available for AWS and Azure. Valid values: true, false. Default value: false. Available in provider R2.21.0+.

func (AviatrixSpokeGatewayOutput) EnableEncryptVolume

func (o AviatrixSpokeGatewayOutput) EnableEncryptVolume() pulumi.BoolPtrOutput

Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret providers. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) EnableJumboFrame

func (o AviatrixSpokeGatewayOutput) EnableJumboFrame() pulumi.BoolPtrOutput

Enable jumbo frames for this spoke gateway. Default value is true.

func (AviatrixSpokeGatewayOutput) EnableLearnedCidrsApproval

func (o AviatrixSpokeGatewayOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Switch to enable/disable learned CIDR approval for BGP Spoke Gateway. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) EnableMonitorGatewaySubnets

func (o AviatrixSpokeGatewayOutput) EnableMonitorGatewaySubnets() pulumi.BoolPtrOutput

If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.

func (AviatrixSpokeGatewayOutput) EnablePreserveAsPath

func (o AviatrixSpokeGatewayOutput) EnablePreserveAsPath() pulumi.BoolPtrOutput

Enable preserve asPath when advertising manual summary cidrs on BGP spoke gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+

func (AviatrixSpokeGatewayOutput) EnablePrivateOob

func (o AviatrixSpokeGatewayOutput) EnablePrivateOob() pulumi.BoolPtrOutput

Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) EnablePrivateVpcDefaultRoute

func (o AviatrixSpokeGatewayOutput) EnablePrivateVpcDefaultRoute() pulumi.BoolPtrOutput

Program default route in VPC private route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixSpokeGatewayOutput) EnableSkipPublicRouteTableUpdate

func (o AviatrixSpokeGatewayOutput) EnableSkipPublicRouteTableUpdate() pulumi.BoolPtrOutput

Skip programming VPC public route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixSpokeGatewayOutput) EnableSpotInstance

func (o AviatrixSpokeGatewayOutput) EnableSpotInstance() pulumi.BoolPtrOutput

Enable spot instance. NOT supported for production deployment.

func (AviatrixSpokeGatewayOutput) EnableVpcDnsServer

func (o AviatrixSpokeGatewayOutput) EnableVpcDnsServer() pulumi.BoolPtrOutput

Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) FaultDomain

Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixSpokeGatewayOutput) FilteredSpokeVpcRoutes

func (o AviatrixSpokeGatewayOutput) FilteredSpokeVpcRoutes() pulumi.StringPtrOutput

A list of comma separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to this spoke gateway only. Example: "10.2.0.0/116,10.3.0.0/16".

func (AviatrixSpokeGatewayOutput) GwName

Name of the gateway which is going to be created.

func (AviatrixSpokeGatewayOutput) GwSize

Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1".

func (AviatrixSpokeGatewayOutput) HaAvailabilityDomain

func (o AviatrixSpokeGatewayOutput) HaAvailabilityDomain() pulumi.StringOutput

HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixSpokeGatewayOutput) HaAzureEipNameResourceGroup

func (o AviatrixSpokeGatewayOutput) HaAzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP Address resource and its resource group in Azure to be assigned to the HA Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixSpokeGatewayOutput) HaCloudInstanceId

func (o AviatrixSpokeGatewayOutput) HaCloudInstanceId() pulumi.StringOutput

Cloud instance ID of the HA spoke gateway.

func (AviatrixSpokeGatewayOutput) HaEip

Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixSpokeGatewayOutput) HaFaultDomain

HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixSpokeGatewayOutput) HaGwName

Aviatrix spoke gateway unique name of HA spoke gateway.

func (AviatrixSpokeGatewayOutput) HaGwSize

HA Gateway Size. Mandatory if enabling HA.

func (AviatrixSpokeGatewayOutput) HaImageVersion

func (o AviatrixSpokeGatewayOutput) HaImageVersion() pulumi.StringOutput

The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixSpokeGatewayOutput) HaInsaneModeAz

AZ of subnet being created for Insane Mode Spoke HA Gateway. Required for AWS, AzureGov, AWSGov, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".

func (AviatrixSpokeGatewayOutput) HaOobAvailabilityZone

func (o AviatrixSpokeGatewayOutput) HaOobAvailabilityZone() pulumi.StringPtrOutput

HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".

func (AviatrixSpokeGatewayOutput) HaOobManagementSubnet

func (o AviatrixSpokeGatewayOutput) HaOobManagementSubnet() pulumi.StringPtrOutput

HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".

func (AviatrixSpokeGatewayOutput) HaPrivateIp

Private IP address of HA spoke gateway.

func (AviatrixSpokeGatewayOutput) HaPrivateModeSubnetZone

func (o AviatrixSpokeGatewayOutput) HaPrivateModeSubnetZone() pulumi.StringPtrOutput

Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.

func (AviatrixSpokeGatewayOutput) HaPublicIp

Public IP address of the HA Spoke Gateway.

func (AviatrixSpokeGatewayOutput) HaSecurityGroupId

func (o AviatrixSpokeGatewayOutput) HaSecurityGroupId() pulumi.StringOutput

HA security group used for the spoke gateway.

func (AviatrixSpokeGatewayOutput) HaSoftwareVersion

func (o AviatrixSpokeGatewayOutput) HaSoftwareVersion() pulumi.StringOutput

The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixSpokeGatewayOutput) HaSubnet

HA Subnet. Required if enabling HA for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24"

func (AviatrixSpokeGatewayOutput) HaZone

HA Zone. Required if enabling HA for GCP gateway. Optional for Azure. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.

func (AviatrixSpokeGatewayOutput) ImageVersion

The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixSpokeGatewayOutput) IncludedAdvertisedSpokeRoutes

func (o AviatrixSpokeGatewayOutput) IncludedAdvertisedSpokeRoutes() pulumi.StringPtrOutput

A list of comma separated CIDRs to be advertised to on-prem as 'Included CIDR List'. When configured, it will replace all advertised routes from this VPC. Example: "10.4.0.0/116,10.5.0.0/16".

func (AviatrixSpokeGatewayOutput) InsaneMode

Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Spoke Gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.

func (AviatrixSpokeGatewayOutput) InsaneModeAz

AZ of subnet being created for Insane Mode Spoke Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".

func (AviatrixSpokeGatewayOutput) LearnedCidrsApprovalMode

func (o AviatrixSpokeGatewayOutput) LearnedCidrsApprovalMode() pulumi.StringPtrOutput

Learned CIDRs approval mode. Either "gateway" (approval on a per-gateway basis) or "connection" (approval on a per-connection basis). Only "gateway" is supported for BGP SPOKE Gateway. Default value: "gateway". Available as of provider version R2.21+.

func (AviatrixSpokeGatewayOutput) LocalAsNumber

Changes the Aviatrix Spoke Gateway ASN number before you setup Aviatrix Spoke Gateway connection configurations.

func (AviatrixSpokeGatewayOutput) ManageTransitGatewayAttachment

func (o AviatrixSpokeGatewayOutput) ManageTransitGatewayAttachment() pulumi.BoolPtrOutput

Enable to manage spoke-to-Aviatrix transit gateway attachments using the **aviatrix_spoke_gateway** resource with the below `transitGw` attribute. If this is set to false, attaching this spoke to transit gateways must be done using the **aviatrix_spoke_transit_attachment** resource. Valid values: true, false. Default value: true. Available in provider R2.17+.

func (AviatrixSpokeGatewayOutput) MonitorExcludeLists

func (o AviatrixSpokeGatewayOutput) MonitorExcludeLists() pulumi.StringArrayOutput

Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.

func (AviatrixSpokeGatewayOutput) OobAvailabilityZone

func (o AviatrixSpokeGatewayOutput) OobAvailabilityZone() pulumi.StringPtrOutput

OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".

func (AviatrixSpokeGatewayOutput) OobManagementSubnet

func (o AviatrixSpokeGatewayOutput) OobManagementSubnet() pulumi.StringPtrOutput

OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".

func (AviatrixSpokeGatewayOutput) PrependAsPaths

List of AS numbers to populate BGP AS_PATH field when it advertises to VGW or peer devices.

func (AviatrixSpokeGatewayOutput) PrivateIp

Private IP address of the spoke gateway created.

func (AviatrixSpokeGatewayOutput) PrivateModeLbVpcId

func (o AviatrixSpokeGatewayOutput) PrivateModeLbVpcId() pulumi.StringPtrOutput

VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in provider version R2.23+.

func (AviatrixSpokeGatewayOutput) PrivateModeSubnetZone

func (o AviatrixSpokeGatewayOutput) PrivateModeSubnetZone() pulumi.StringPtrOutput

Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.

func (AviatrixSpokeGatewayOutput) PublicIp

Public IP address of the Spoke Gateway created.

func (AviatrixSpokeGatewayOutput) RxQueueSize

Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.

func (AviatrixSpokeGatewayOutput) SecurityGroupId

func (o AviatrixSpokeGatewayOutput) SecurityGroupId() pulumi.StringOutput

Security group used for the spoke gateway.

func (AviatrixSpokeGatewayOutput) SingleAzHa

Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.

func (AviatrixSpokeGatewayOutput) SingleIpSnat

Specify whether to enable Source NAT feature in "singleIp" mode on the gateway or not. Please disable AWS NAT instance before enabling this feature. Currently only supports AWS(1) and Azure(8). Valid values: true, false.

func (AviatrixSpokeGatewayOutput) SoftwareVersion

func (o AviatrixSpokeGatewayOutput) SoftwareVersion() pulumi.StringOutput

The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixSpokeGatewayOutput) SpokeBgpManualAdvertiseCidrs

func (o AviatrixSpokeGatewayOutput) SpokeBgpManualAdvertiseCidrs() pulumi.StringArrayOutput

Intended CIDR list to be advertised to external BGP router. Empty list is not valid. Example: ["10.2.0.0/16", "10.4.0.0/16"].

func (AviatrixSpokeGatewayOutput) SpotPrice

Price for spot instance. NOT supported for production deployment.

func (AviatrixSpokeGatewayOutput) Subnet

A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**

func (AviatrixSpokeGatewayOutput) TagLists deprecated

(Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina. Example: ["key1:value1", "key2:value2"].

Deprecated: Use tags instead.

func (AviatrixSpokeGatewayOutput) Tags

Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.

func (AviatrixSpokeGatewayOutput) ToAviatrixSpokeGatewayOutput

func (o AviatrixSpokeGatewayOutput) ToAviatrixSpokeGatewayOutput() AviatrixSpokeGatewayOutput

func (AviatrixSpokeGatewayOutput) ToAviatrixSpokeGatewayOutputWithContext

func (o AviatrixSpokeGatewayOutput) ToAviatrixSpokeGatewayOutputWithContext(ctx context.Context) AviatrixSpokeGatewayOutput

func (AviatrixSpokeGatewayOutput) TransitGw deprecated

Specify the Aviatrix transit gateways to attach this spoke gateway to. Format is a comma separated list of transit gateway names. For example: "transit-gw1,transit-gw2".

Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_spoke_transit_attachment resource instead.

func (AviatrixSpokeGatewayOutput) TunnelDetectionTime

func (o AviatrixSpokeGatewayOutput) TunnelDetectionTime() pulumi.IntOutput

The IPSec tunnel down detection time for the Spoke Gateway.

func (AviatrixSpokeGatewayOutput) VpcId

VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".

func (AviatrixSpokeGatewayOutput) VpcReg

Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1, AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".

func (AviatrixSpokeGatewayOutput) Zone

Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.

type AviatrixSpokeGatewayState

type AviatrixSpokeGatewayState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.IntPtrInput
	// Cloud instance ID of the spoke gateway.
	CloudInstanceId pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently, only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntPtrInput
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// A list of comma separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to this spoke gateway only. Example: "10.0.0.0/116,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrInput
	// Disables route propagation on BGP Spoke to attached Transit Gateway. Default value: false.
	DisableRoutePropagation pulumi.BoolPtrInput
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false.
	EnableActiveStandby pulumi.BoolPtrInput
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrInput
	// Auto Advertise Spoke Site2Cloud CIDRs. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableAutoAdvertiseS2cCidrs pulumi.BoolPtrInput
	// Enable BGP for this spoke gateway. Only available for AWS and Azure. Valid values: true, false. Default value: false. Available in provider R2.21.0+.
	EnableBgp pulumi.BoolPtrInput
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret providers. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Enable jumbo frames for this spoke gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable/disable learned CIDR approval for BGP Spoke Gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Enable preserve asPath when advertising manual summary cidrs on BGP spoke gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
	// Program default route in VPC private route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnablePrivateVpcDefaultRoute pulumi.BoolPtrInput
	// Skip programming VPC public route table. Default: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableSkipPublicRouteTableUpdate pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to this spoke gateway only. Example: "10.2.0.0/116,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringPtrInput
	// Size of the gateway instance. Example: AWS/AWSGov/AWSChina: "t2.large", Azure/AzureGov/AzureChina: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1".
	GwSize pulumi.StringPtrInput
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Spoke Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Cloud instance ID of the HA spoke gateway.
	HaCloudInstanceId pulumi.StringPtrInput
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringPtrInput
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringPtrInput
	// Aviatrix spoke gateway unique name of HA spoke gateway.
	HaGwName pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if enabling HA.
	HaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Spoke HA Gateway. Required for AWS, AzureGov, AWSGov, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrInput
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrInput
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrInput
	// Private IP address of HA spoke gateway.
	HaPrivateIp pulumi.StringPtrInput
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrInput
	// Public IP address of the HA Spoke Gateway.
	HaPublicIp pulumi.StringPtrInput
	// HA security group used for the spoke gateway.
	HaSecurityGroupId pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringPtrInput
	// HA Subnet. Required if enabling HA for AWS, AWSGov, AWSChina, Azure, AzureGov, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24"
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required if enabling HA for GCP gateway. Optional for Azure. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// A list of comma separated CIDRs to be advertised to on-prem as 'Included CIDR List'. When configured, it will replace all advertised routes from this VPC. Example: "10.4.0.0/116,10.5.0.0/16".
	IncludedAdvertisedSpokeRoutes pulumi.StringPtrInput
	// Enable [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) for Spoke Gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Spoke Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// Learned CIDRs approval mode. Either "gateway" (approval on a per-gateway basis) or "connection" (approval on a per-connection basis). Only "gateway" is supported for BGP SPOKE Gateway. Default value: "gateway". Available as of provider version R2.21+.
	LearnedCidrsApprovalMode pulumi.StringPtrInput
	// Changes the Aviatrix Spoke Gateway ASN number before you setup Aviatrix Spoke Gateway connection configurations.
	LocalAsNumber pulumi.StringPtrInput
	// Enable to manage spoke-to-Aviatrix transit gateway attachments using the **aviatrix_spoke_gateway** resource with the below `transitGw` attribute. If this is set to false, attaching this spoke to transit gateways must be done using the **aviatrix_spoke_transit_attachment** resource. Valid values: true, false. Default value: true. Available in provider R2.17+.
	ManageTransitGatewayAttachment pulumi.BoolPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayInput
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrInput
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrInput
	// List of AS numbers to populate BGP AS_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayInput
	// Private IP address of the spoke gateway created.
	PrivateIp pulumi.StringPtrInput
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrInput
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrInput
	// Public IP address of the Spoke Gateway created.
	PublicIp pulumi.StringPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Security group used for the spoke gateway.
	SecurityGroupId pulumi.StringPtrInput
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrInput
	// Specify whether to enable Source NAT feature in "singleIp" mode on the gateway or not. Please disable AWS NAT instance before enabling this feature. Currently only supports AWS(1) and Azure(8). Valid values: true, false.
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Intended CIDR list to be advertised to external BGP router. Empty list is not valid. Example: ["10.2.0.0/16", "10.4.0.0/16"].
	SpokeBgpManualAdvertiseCidrs pulumi.StringArrayInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". **NOTE: If using `insaneMode`, please see notes here.**
	Subnet pulumi.StringPtrInput
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina. Example: ["key1:value1", "key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// Specify the Aviatrix transit gateways to attach this spoke gateway to. Format is a comma separated list of transit gateway names. For example: "transit-gw1,transit-gw2".
	//
	// Deprecated: Please set `manage_transit_gateway_attachment` to false, and use the standalone aviatrix_spoke_transit_attachment resource instead.
	TransitGw pulumi.StringPtrInput
	// The IPSec tunnel down detection time for the Spoke Gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq".
	VpcId pulumi.StringPtrInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1, AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringPtrInput
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrInput
}

func (AviatrixSpokeGatewayState) ElementType

func (AviatrixSpokeGatewayState) ElementType() reflect.Type

type AviatrixSpokeGatewaySubnetGroup

type AviatrixSpokeGatewaySubnetGroup struct {
	pulumi.CustomResourceState

	// Aviatrix spoke gateway name.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Name of spoke gateway subnet group.
	Name pulumi.StringOutput `pulumi:"name"`
	// A set of subnets in the subnet group. The format of each subnet must be "CIDR~~subnet name". Example: `["10.2.48.0/20~~subnet1", "10.2.64.0/20~~subnet2"]`
	Subnets pulumi.StringArrayOutput `pulumi:"subnets"`
}

The **aviatrix_spoke_gateway_subnet_group** resource creates and manages the spoke gateway subnet groups.

> **NOTE:** This feature is only valid for Azure.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSpokeGatewaySubnetGroup(ctx, "test", &aviatrix.AviatrixSpokeGatewaySubnetGroupArgs{
			GwName: pulumi.String("spoke"),
			Subnets: pulumi.StringArray{
				pulumi.String("10.2.48.0/20~~subnet1"),
				pulumi.String("10.2.64.0/20~~subnet2"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**spoke_gateway_subnet_group** can be imported using the `gw_name` and `name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSpokeGatewaySubnetGroup:AviatrixSpokeGatewaySubnetGroup test gw_name~name

```

func GetAviatrixSpokeGatewaySubnetGroup

func GetAviatrixSpokeGatewaySubnetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSpokeGatewaySubnetGroupState, opts ...pulumi.ResourceOption) (*AviatrixSpokeGatewaySubnetGroup, error)

GetAviatrixSpokeGatewaySubnetGroup gets an existing AviatrixSpokeGatewaySubnetGroup 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 NewAviatrixSpokeGatewaySubnetGroup

func NewAviatrixSpokeGatewaySubnetGroup(ctx *pulumi.Context,
	name string, args *AviatrixSpokeGatewaySubnetGroupArgs, opts ...pulumi.ResourceOption) (*AviatrixSpokeGatewaySubnetGroup, error)

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

func (*AviatrixSpokeGatewaySubnetGroup) ElementType

func (*AviatrixSpokeGatewaySubnetGroup) ToAviatrixSpokeGatewaySubnetGroupOutput

func (i *AviatrixSpokeGatewaySubnetGroup) ToAviatrixSpokeGatewaySubnetGroupOutput() AviatrixSpokeGatewaySubnetGroupOutput

func (*AviatrixSpokeGatewaySubnetGroup) ToAviatrixSpokeGatewaySubnetGroupOutputWithContext

func (i *AviatrixSpokeGatewaySubnetGroup) ToAviatrixSpokeGatewaySubnetGroupOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupOutput

type AviatrixSpokeGatewaySubnetGroupArgs

type AviatrixSpokeGatewaySubnetGroupArgs struct {
	// Aviatrix spoke gateway name.
	GwName pulumi.StringInput
	// Name of spoke gateway subnet group.
	Name pulumi.StringPtrInput
	// A set of subnets in the subnet group. The format of each subnet must be "CIDR~~subnet name". Example: `["10.2.48.0/20~~subnet1", "10.2.64.0/20~~subnet2"]`
	Subnets pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixSpokeGatewaySubnetGroup resource.

func (AviatrixSpokeGatewaySubnetGroupArgs) ElementType

type AviatrixSpokeGatewaySubnetGroupArray

type AviatrixSpokeGatewaySubnetGroupArray []AviatrixSpokeGatewaySubnetGroupInput

func (AviatrixSpokeGatewaySubnetGroupArray) ElementType

func (AviatrixSpokeGatewaySubnetGroupArray) ToAviatrixSpokeGatewaySubnetGroupArrayOutput

func (i AviatrixSpokeGatewaySubnetGroupArray) ToAviatrixSpokeGatewaySubnetGroupArrayOutput() AviatrixSpokeGatewaySubnetGroupArrayOutput

func (AviatrixSpokeGatewaySubnetGroupArray) ToAviatrixSpokeGatewaySubnetGroupArrayOutputWithContext

func (i AviatrixSpokeGatewaySubnetGroupArray) ToAviatrixSpokeGatewaySubnetGroupArrayOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupArrayOutput

type AviatrixSpokeGatewaySubnetGroupArrayInput

type AviatrixSpokeGatewaySubnetGroupArrayInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewaySubnetGroupArrayOutput() AviatrixSpokeGatewaySubnetGroupArrayOutput
	ToAviatrixSpokeGatewaySubnetGroupArrayOutputWithContext(context.Context) AviatrixSpokeGatewaySubnetGroupArrayOutput
}

AviatrixSpokeGatewaySubnetGroupArrayInput is an input type that accepts AviatrixSpokeGatewaySubnetGroupArray and AviatrixSpokeGatewaySubnetGroupArrayOutput values. You can construct a concrete instance of `AviatrixSpokeGatewaySubnetGroupArrayInput` via:

AviatrixSpokeGatewaySubnetGroupArray{ AviatrixSpokeGatewaySubnetGroupArgs{...} }

type AviatrixSpokeGatewaySubnetGroupArrayOutput

type AviatrixSpokeGatewaySubnetGroupArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewaySubnetGroupArrayOutput) ElementType

func (AviatrixSpokeGatewaySubnetGroupArrayOutput) Index

func (AviatrixSpokeGatewaySubnetGroupArrayOutput) ToAviatrixSpokeGatewaySubnetGroupArrayOutput

func (o AviatrixSpokeGatewaySubnetGroupArrayOutput) ToAviatrixSpokeGatewaySubnetGroupArrayOutput() AviatrixSpokeGatewaySubnetGroupArrayOutput

func (AviatrixSpokeGatewaySubnetGroupArrayOutput) ToAviatrixSpokeGatewaySubnetGroupArrayOutputWithContext

func (o AviatrixSpokeGatewaySubnetGroupArrayOutput) ToAviatrixSpokeGatewaySubnetGroupArrayOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupArrayOutput

type AviatrixSpokeGatewaySubnetGroupInput

type AviatrixSpokeGatewaySubnetGroupInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewaySubnetGroupOutput() AviatrixSpokeGatewaySubnetGroupOutput
	ToAviatrixSpokeGatewaySubnetGroupOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupOutput
}

type AviatrixSpokeGatewaySubnetGroupMap

type AviatrixSpokeGatewaySubnetGroupMap map[string]AviatrixSpokeGatewaySubnetGroupInput

func (AviatrixSpokeGatewaySubnetGroupMap) ElementType

func (AviatrixSpokeGatewaySubnetGroupMap) ToAviatrixSpokeGatewaySubnetGroupMapOutput

func (i AviatrixSpokeGatewaySubnetGroupMap) ToAviatrixSpokeGatewaySubnetGroupMapOutput() AviatrixSpokeGatewaySubnetGroupMapOutput

func (AviatrixSpokeGatewaySubnetGroupMap) ToAviatrixSpokeGatewaySubnetGroupMapOutputWithContext

func (i AviatrixSpokeGatewaySubnetGroupMap) ToAviatrixSpokeGatewaySubnetGroupMapOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupMapOutput

type AviatrixSpokeGatewaySubnetGroupMapInput

type AviatrixSpokeGatewaySubnetGroupMapInput interface {
	pulumi.Input

	ToAviatrixSpokeGatewaySubnetGroupMapOutput() AviatrixSpokeGatewaySubnetGroupMapOutput
	ToAviatrixSpokeGatewaySubnetGroupMapOutputWithContext(context.Context) AviatrixSpokeGatewaySubnetGroupMapOutput
}

AviatrixSpokeGatewaySubnetGroupMapInput is an input type that accepts AviatrixSpokeGatewaySubnetGroupMap and AviatrixSpokeGatewaySubnetGroupMapOutput values. You can construct a concrete instance of `AviatrixSpokeGatewaySubnetGroupMapInput` via:

AviatrixSpokeGatewaySubnetGroupMap{ "key": AviatrixSpokeGatewaySubnetGroupArgs{...} }

type AviatrixSpokeGatewaySubnetGroupMapOutput

type AviatrixSpokeGatewaySubnetGroupMapOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewaySubnetGroupMapOutput) ElementType

func (AviatrixSpokeGatewaySubnetGroupMapOutput) MapIndex

func (AviatrixSpokeGatewaySubnetGroupMapOutput) ToAviatrixSpokeGatewaySubnetGroupMapOutput

func (o AviatrixSpokeGatewaySubnetGroupMapOutput) ToAviatrixSpokeGatewaySubnetGroupMapOutput() AviatrixSpokeGatewaySubnetGroupMapOutput

func (AviatrixSpokeGatewaySubnetGroupMapOutput) ToAviatrixSpokeGatewaySubnetGroupMapOutputWithContext

func (o AviatrixSpokeGatewaySubnetGroupMapOutput) ToAviatrixSpokeGatewaySubnetGroupMapOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupMapOutput

type AviatrixSpokeGatewaySubnetGroupOutput

type AviatrixSpokeGatewaySubnetGroupOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeGatewaySubnetGroupOutput) ElementType

func (AviatrixSpokeGatewaySubnetGroupOutput) GwName

Aviatrix spoke gateway name.

func (AviatrixSpokeGatewaySubnetGroupOutput) Name

Name of spoke gateway subnet group.

func (AviatrixSpokeGatewaySubnetGroupOutput) Subnets

A set of subnets in the subnet group. The format of each subnet must be "CIDR~~subnet name". Example: `["10.2.48.0/20~~subnet1", "10.2.64.0/20~~subnet2"]`

func (AviatrixSpokeGatewaySubnetGroupOutput) ToAviatrixSpokeGatewaySubnetGroupOutput

func (o AviatrixSpokeGatewaySubnetGroupOutput) ToAviatrixSpokeGatewaySubnetGroupOutput() AviatrixSpokeGatewaySubnetGroupOutput

func (AviatrixSpokeGatewaySubnetGroupOutput) ToAviatrixSpokeGatewaySubnetGroupOutputWithContext

func (o AviatrixSpokeGatewaySubnetGroupOutput) ToAviatrixSpokeGatewaySubnetGroupOutputWithContext(ctx context.Context) AviatrixSpokeGatewaySubnetGroupOutput

type AviatrixSpokeGatewaySubnetGroupState

type AviatrixSpokeGatewaySubnetGroupState struct {
	// Aviatrix spoke gateway name.
	GwName pulumi.StringPtrInput
	// Name of spoke gateway subnet group.
	Name pulumi.StringPtrInput
	// A set of subnets in the subnet group. The format of each subnet must be "CIDR~~subnet name". Example: `["10.2.48.0/20~~subnet1", "10.2.64.0/20~~subnet2"]`
	Subnets pulumi.StringArrayInput
}

func (AviatrixSpokeGatewaySubnetGroupState) ElementType

type AviatrixSpokeTransitAttachment

type AviatrixSpokeTransitAttachment struct {
	pulumi.CustomResourceState

	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when transit and spoke gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrOutput `pulumi:"enableMaxPerformance"`
	// Learned routes will be propagated to these route tables. Example: ["rtb-212ff547","rtb-04539787"].
	RouteTables pulumi.StringArrayOutput `pulumi:"routeTables"`
	// Indicates whether the spoke gateway is BGP enabled or not.
	SpokeBgpEnabled pulumi.BoolOutput `pulumi:"spokeBgpEnabled"`
	// Name of the spoke gateway to attach to transit network.
	SpokeGwName pulumi.StringOutput `pulumi:"spokeGwName"`
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on spoke_gateway_name. Available as of provider version R2.23+.
	SpokePrependAsPaths pulumi.StringArrayOutput `pulumi:"spokePrependAsPaths"`
	// Name of the transit gateway to attach the spoke gateway to.
	TransitGwName pulumi.StringOutput `pulumi:"transitGwName"`
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on transit_gateway_name. Available as of provider version R2.23+.
	TransitPrependAsPaths pulumi.StringArrayOutput `pulumi:"transitPrependAsPaths"`
}

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSpokeTransitAttachment(ctx, "testAttachment", &aviatrix.AviatrixSpokeTransitAttachmentArgs{
			RouteTables: pulumi.StringArray{
				pulumi.String("rtb-737d540c"),
				pulumi.String("rtb-626d045c"),
			},
			SpokeGwName:   pulumi.String("spoke-gw"),
			TransitGwName: pulumi.String("transit-gw"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**spoke_transit_attachment** can be imported using the `spoke_gw_name` and `transit_gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSpokeTransitAttachment:AviatrixSpokeTransitAttachment test spoke_gw_name~transit_gw_name

```

func GetAviatrixSpokeTransitAttachment

func GetAviatrixSpokeTransitAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSpokeTransitAttachmentState, opts ...pulumi.ResourceOption) (*AviatrixSpokeTransitAttachment, error)

GetAviatrixSpokeTransitAttachment gets an existing AviatrixSpokeTransitAttachment 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 NewAviatrixSpokeTransitAttachment

func NewAviatrixSpokeTransitAttachment(ctx *pulumi.Context,
	name string, args *AviatrixSpokeTransitAttachmentArgs, opts ...pulumi.ResourceOption) (*AviatrixSpokeTransitAttachment, error)

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

func (*AviatrixSpokeTransitAttachment) ElementType

func (*AviatrixSpokeTransitAttachment) ToAviatrixSpokeTransitAttachmentOutput

func (i *AviatrixSpokeTransitAttachment) ToAviatrixSpokeTransitAttachmentOutput() AviatrixSpokeTransitAttachmentOutput

func (*AviatrixSpokeTransitAttachment) ToAviatrixSpokeTransitAttachmentOutputWithContext

func (i *AviatrixSpokeTransitAttachment) ToAviatrixSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentOutput

type AviatrixSpokeTransitAttachmentArgs

type AviatrixSpokeTransitAttachmentArgs struct {
	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when transit and spoke gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrInput
	// Learned routes will be propagated to these route tables. Example: ["rtb-212ff547","rtb-04539787"].
	RouteTables pulumi.StringArrayInput
	// Name of the spoke gateway to attach to transit network.
	SpokeGwName pulumi.StringInput
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on spoke_gateway_name. Available as of provider version R2.23+.
	SpokePrependAsPaths pulumi.StringArrayInput
	// Name of the transit gateway to attach the spoke gateway to.
	TransitGwName pulumi.StringInput
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on transit_gateway_name. Available as of provider version R2.23+.
	TransitPrependAsPaths pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixSpokeTransitAttachment resource.

func (AviatrixSpokeTransitAttachmentArgs) ElementType

type AviatrixSpokeTransitAttachmentArray

type AviatrixSpokeTransitAttachmentArray []AviatrixSpokeTransitAttachmentInput

func (AviatrixSpokeTransitAttachmentArray) ElementType

func (AviatrixSpokeTransitAttachmentArray) ToAviatrixSpokeTransitAttachmentArrayOutput

func (i AviatrixSpokeTransitAttachmentArray) ToAviatrixSpokeTransitAttachmentArrayOutput() AviatrixSpokeTransitAttachmentArrayOutput

func (AviatrixSpokeTransitAttachmentArray) ToAviatrixSpokeTransitAttachmentArrayOutputWithContext

func (i AviatrixSpokeTransitAttachmentArray) ToAviatrixSpokeTransitAttachmentArrayOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentArrayOutput

type AviatrixSpokeTransitAttachmentArrayInput

type AviatrixSpokeTransitAttachmentArrayInput interface {
	pulumi.Input

	ToAviatrixSpokeTransitAttachmentArrayOutput() AviatrixSpokeTransitAttachmentArrayOutput
	ToAviatrixSpokeTransitAttachmentArrayOutputWithContext(context.Context) AviatrixSpokeTransitAttachmentArrayOutput
}

AviatrixSpokeTransitAttachmentArrayInput is an input type that accepts AviatrixSpokeTransitAttachmentArray and AviatrixSpokeTransitAttachmentArrayOutput values. You can construct a concrete instance of `AviatrixSpokeTransitAttachmentArrayInput` via:

AviatrixSpokeTransitAttachmentArray{ AviatrixSpokeTransitAttachmentArgs{...} }

type AviatrixSpokeTransitAttachmentArrayOutput

type AviatrixSpokeTransitAttachmentArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeTransitAttachmentArrayOutput) ElementType

func (AviatrixSpokeTransitAttachmentArrayOutput) Index

func (AviatrixSpokeTransitAttachmentArrayOutput) ToAviatrixSpokeTransitAttachmentArrayOutput

func (o AviatrixSpokeTransitAttachmentArrayOutput) ToAviatrixSpokeTransitAttachmentArrayOutput() AviatrixSpokeTransitAttachmentArrayOutput

func (AviatrixSpokeTransitAttachmentArrayOutput) ToAviatrixSpokeTransitAttachmentArrayOutputWithContext

func (o AviatrixSpokeTransitAttachmentArrayOutput) ToAviatrixSpokeTransitAttachmentArrayOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentArrayOutput

type AviatrixSpokeTransitAttachmentInput

type AviatrixSpokeTransitAttachmentInput interface {
	pulumi.Input

	ToAviatrixSpokeTransitAttachmentOutput() AviatrixSpokeTransitAttachmentOutput
	ToAviatrixSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentOutput
}

type AviatrixSpokeTransitAttachmentMap

type AviatrixSpokeTransitAttachmentMap map[string]AviatrixSpokeTransitAttachmentInput

func (AviatrixSpokeTransitAttachmentMap) ElementType

func (AviatrixSpokeTransitAttachmentMap) ToAviatrixSpokeTransitAttachmentMapOutput

func (i AviatrixSpokeTransitAttachmentMap) ToAviatrixSpokeTransitAttachmentMapOutput() AviatrixSpokeTransitAttachmentMapOutput

func (AviatrixSpokeTransitAttachmentMap) ToAviatrixSpokeTransitAttachmentMapOutputWithContext

func (i AviatrixSpokeTransitAttachmentMap) ToAviatrixSpokeTransitAttachmentMapOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentMapOutput

type AviatrixSpokeTransitAttachmentMapInput

type AviatrixSpokeTransitAttachmentMapInput interface {
	pulumi.Input

	ToAviatrixSpokeTransitAttachmentMapOutput() AviatrixSpokeTransitAttachmentMapOutput
	ToAviatrixSpokeTransitAttachmentMapOutputWithContext(context.Context) AviatrixSpokeTransitAttachmentMapOutput
}

AviatrixSpokeTransitAttachmentMapInput is an input type that accepts AviatrixSpokeTransitAttachmentMap and AviatrixSpokeTransitAttachmentMapOutput values. You can construct a concrete instance of `AviatrixSpokeTransitAttachmentMapInput` via:

AviatrixSpokeTransitAttachmentMap{ "key": AviatrixSpokeTransitAttachmentArgs{...} }

type AviatrixSpokeTransitAttachmentMapOutput

type AviatrixSpokeTransitAttachmentMapOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeTransitAttachmentMapOutput) ElementType

func (AviatrixSpokeTransitAttachmentMapOutput) MapIndex

func (AviatrixSpokeTransitAttachmentMapOutput) ToAviatrixSpokeTransitAttachmentMapOutput

func (o AviatrixSpokeTransitAttachmentMapOutput) ToAviatrixSpokeTransitAttachmentMapOutput() AviatrixSpokeTransitAttachmentMapOutput

func (AviatrixSpokeTransitAttachmentMapOutput) ToAviatrixSpokeTransitAttachmentMapOutputWithContext

func (o AviatrixSpokeTransitAttachmentMapOutput) ToAviatrixSpokeTransitAttachmentMapOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentMapOutput

type AviatrixSpokeTransitAttachmentOutput

type AviatrixSpokeTransitAttachmentOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeTransitAttachmentOutput) ElementType

func (AviatrixSpokeTransitAttachmentOutput) EnableMaxPerformance

Indicates whether the maximum amount of HPE tunnels will be created. Only valid when transit and spoke gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.

func (AviatrixSpokeTransitAttachmentOutput) RouteTables

Learned routes will be propagated to these route tables. Example: ["rtb-212ff547","rtb-04539787"].

func (AviatrixSpokeTransitAttachmentOutput) SpokeBgpEnabled

Indicates whether the spoke gateway is BGP enabled or not.

func (AviatrixSpokeTransitAttachmentOutput) SpokeGwName

Name of the spoke gateway to attach to transit network.

func (AviatrixSpokeTransitAttachmentOutput) SpokePrependAsPaths

Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on spoke_gateway_name. Available as of provider version R2.23+.

func (AviatrixSpokeTransitAttachmentOutput) ToAviatrixSpokeTransitAttachmentOutput

func (o AviatrixSpokeTransitAttachmentOutput) ToAviatrixSpokeTransitAttachmentOutput() AviatrixSpokeTransitAttachmentOutput

func (AviatrixSpokeTransitAttachmentOutput) ToAviatrixSpokeTransitAttachmentOutputWithContext

func (o AviatrixSpokeTransitAttachmentOutput) ToAviatrixSpokeTransitAttachmentOutputWithContext(ctx context.Context) AviatrixSpokeTransitAttachmentOutput

func (AviatrixSpokeTransitAttachmentOutput) TransitGwName

Name of the transit gateway to attach the spoke gateway to.

func (AviatrixSpokeTransitAttachmentOutput) TransitPrependAsPaths

Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on transit_gateway_name. Available as of provider version R2.23+.

type AviatrixSpokeTransitAttachmentState

type AviatrixSpokeTransitAttachmentState struct {
	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when transit and spoke gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrInput
	// Learned routes will be propagated to these route tables. Example: ["rtb-212ff547","rtb-04539787"].
	RouteTables pulumi.StringArrayInput
	// Indicates whether the spoke gateway is BGP enabled or not.
	SpokeBgpEnabled pulumi.BoolPtrInput
	// Name of the spoke gateway to attach to transit network.
	SpokeGwName pulumi.StringPtrInput
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on spoke_gateway_name. Available as of provider version R2.23+.
	SpokePrependAsPaths pulumi.StringArrayInput
	// Name of the transit gateway to attach the spoke gateway to.
	TransitGwName pulumi.StringPtrInput
	// Connection based AS Path Prepend. Valid only for BGP connection. Can only use the gateway's own local AS number, repeated up to 25 times. Applies on transit_gateway_name. Available as of provider version R2.23+.
	TransitPrependAsPaths pulumi.StringArrayInput
}

func (AviatrixSpokeTransitAttachmentState) ElementType

type AviatrixSpokeVpc

type AviatrixSpokeVpc struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Cloud instance ID.
	CloudInstanceId pulumi.StringOutput `pulumi:"cloudInstanceId"`
	// Type of cloud service provider. AWS=1, GCP=4, ARM=8.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Specify whether enabling NAT feature on the gateway or not.
	EnableNat pulumi.StringPtrOutput `pulumi:"enableNat"`
	// Name of the gateway which is going to be created.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrOutput `pulumi:"haGwSize"`
	// HA Subnet. Required for enabling HA for AWS/ARM gateways. Setting to empty/unset will disable HA. Setting to a valid subnet (Example: 10.12.0.0/24) will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrOutput `pulumi:"haSubnet"`
	// HA Zone. Required for enabling HA for GCP gateway. Setting to empty/unset will disable HA. Setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c".
	HaZone pulumi.StringPtrOutput `pulumi:"haZone"`
	// Set to "enabled" if this feature is desired.
	SingleAzHa pulumi.StringPtrOutput `pulumi:"singleAzHa"`
	// Public Subnet Info. Example: AWS: "CIDRZONESubnetName", etc...
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// Instance tag of cloud provider. Example: key1:value1,key002:value002, etc... Only AWS (cloud_type is "1") is supported
	TagLists pulumi.StringArrayOutput `pulumi:"tagLists"`
	// Specify the transit Gateway.
	TransitGw pulumi.StringPtrOutput `pulumi:"transitGw"`
	// VPC-ID/VNet-Name of cloud provider. Required if cloudType is "1" or "4". Example: AWS: "vpc-abcd1234", etc...
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west1-b", ARM: "East US 2", etc...
	VpcReg pulumi.StringOutput `pulumi:"vpcReg"`
	// Size of the gateway instance. Example: AWS: "t2.large", GCP: "f1.micro", ARM: "StandardD2", etc...
	VpcSize pulumi.StringOutput `pulumi:"vpcSize"`
}

The AviatrixSpokeVpc resource allows to create and manage Aviatrix Spoke Gateways.

!> **WARNING:** The `AviatrixSpokeVpc` resource is deprecated as of **Release 2.0**. It is currently kept for backward-compatibility and will be removed in the future. Please use the spoke gateway resource instead. If this is already in the state, please remove it from the state file and import as `AviatrixSpokeGateway`.

## Import

Instance spoke_vpc can be imported using the gw_name, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSpokeVpc:AviatrixSpokeVpc test gw_name

```

func GetAviatrixSpokeVpc

func GetAviatrixSpokeVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSpokeVpcState, opts ...pulumi.ResourceOption) (*AviatrixSpokeVpc, error)

GetAviatrixSpokeVpc gets an existing AviatrixSpokeVpc 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 NewAviatrixSpokeVpc

func NewAviatrixSpokeVpc(ctx *pulumi.Context,
	name string, args *AviatrixSpokeVpcArgs, opts ...pulumi.ResourceOption) (*AviatrixSpokeVpc, error)

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

func (*AviatrixSpokeVpc) ElementType

func (*AviatrixSpokeVpc) ElementType() reflect.Type

func (*AviatrixSpokeVpc) ToAviatrixSpokeVpcOutput

func (i *AviatrixSpokeVpc) ToAviatrixSpokeVpcOutput() AviatrixSpokeVpcOutput

func (*AviatrixSpokeVpc) ToAviatrixSpokeVpcOutputWithContext

func (i *AviatrixSpokeVpc) ToAviatrixSpokeVpcOutputWithContext(ctx context.Context) AviatrixSpokeVpcOutput

type AviatrixSpokeVpcArgs

type AviatrixSpokeVpcArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// Type of cloud service provider. AWS=1, GCP=4, ARM=8.
	CloudType pulumi.IntInput
	// Specify whether enabling NAT feature on the gateway or not.
	EnableNat pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringInput
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// HA Subnet. Required for enabling HA for AWS/ARM gateways. Setting to empty/unset will disable HA. Setting to a valid subnet (Example: 10.12.0.0/24) will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required for enabling HA for GCP gateway. Setting to empty/unset will disable HA. Setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c".
	HaZone pulumi.StringPtrInput
	// Set to "enabled" if this feature is desired.
	SingleAzHa pulumi.StringPtrInput
	// Public Subnet Info. Example: AWS: "CIDRZONESubnetName", etc...
	Subnet pulumi.StringInput
	// Instance tag of cloud provider. Example: key1:value1,key002:value002, etc... Only AWS (cloud_type is "1") is supported
	TagLists pulumi.StringArrayInput
	// Specify the transit Gateway.
	TransitGw pulumi.StringPtrInput
	// VPC-ID/VNet-Name of cloud provider. Required if cloudType is "1" or "4". Example: AWS: "vpc-abcd1234", etc...
	VpcId pulumi.StringInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west1-b", ARM: "East US 2", etc...
	VpcReg pulumi.StringInput
	// Size of the gateway instance. Example: AWS: "t2.large", GCP: "f1.micro", ARM: "StandardD2", etc...
	VpcSize pulumi.StringInput
}

The set of arguments for constructing a AviatrixSpokeVpc resource.

func (AviatrixSpokeVpcArgs) ElementType

func (AviatrixSpokeVpcArgs) ElementType() reflect.Type

type AviatrixSpokeVpcArray

type AviatrixSpokeVpcArray []AviatrixSpokeVpcInput

func (AviatrixSpokeVpcArray) ElementType

func (AviatrixSpokeVpcArray) ElementType() reflect.Type

func (AviatrixSpokeVpcArray) ToAviatrixSpokeVpcArrayOutput

func (i AviatrixSpokeVpcArray) ToAviatrixSpokeVpcArrayOutput() AviatrixSpokeVpcArrayOutput

func (AviatrixSpokeVpcArray) ToAviatrixSpokeVpcArrayOutputWithContext

func (i AviatrixSpokeVpcArray) ToAviatrixSpokeVpcArrayOutputWithContext(ctx context.Context) AviatrixSpokeVpcArrayOutput

type AviatrixSpokeVpcArrayInput

type AviatrixSpokeVpcArrayInput interface {
	pulumi.Input

	ToAviatrixSpokeVpcArrayOutput() AviatrixSpokeVpcArrayOutput
	ToAviatrixSpokeVpcArrayOutputWithContext(context.Context) AviatrixSpokeVpcArrayOutput
}

AviatrixSpokeVpcArrayInput is an input type that accepts AviatrixSpokeVpcArray and AviatrixSpokeVpcArrayOutput values. You can construct a concrete instance of `AviatrixSpokeVpcArrayInput` via:

AviatrixSpokeVpcArray{ AviatrixSpokeVpcArgs{...} }

type AviatrixSpokeVpcArrayOutput

type AviatrixSpokeVpcArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeVpcArrayOutput) ElementType

func (AviatrixSpokeVpcArrayOutput) Index

func (AviatrixSpokeVpcArrayOutput) ToAviatrixSpokeVpcArrayOutput

func (o AviatrixSpokeVpcArrayOutput) ToAviatrixSpokeVpcArrayOutput() AviatrixSpokeVpcArrayOutput

func (AviatrixSpokeVpcArrayOutput) ToAviatrixSpokeVpcArrayOutputWithContext

func (o AviatrixSpokeVpcArrayOutput) ToAviatrixSpokeVpcArrayOutputWithContext(ctx context.Context) AviatrixSpokeVpcArrayOutput

type AviatrixSpokeVpcInput

type AviatrixSpokeVpcInput interface {
	pulumi.Input

	ToAviatrixSpokeVpcOutput() AviatrixSpokeVpcOutput
	ToAviatrixSpokeVpcOutputWithContext(ctx context.Context) AviatrixSpokeVpcOutput
}

type AviatrixSpokeVpcMap

type AviatrixSpokeVpcMap map[string]AviatrixSpokeVpcInput

func (AviatrixSpokeVpcMap) ElementType

func (AviatrixSpokeVpcMap) ElementType() reflect.Type

func (AviatrixSpokeVpcMap) ToAviatrixSpokeVpcMapOutput

func (i AviatrixSpokeVpcMap) ToAviatrixSpokeVpcMapOutput() AviatrixSpokeVpcMapOutput

func (AviatrixSpokeVpcMap) ToAviatrixSpokeVpcMapOutputWithContext

func (i AviatrixSpokeVpcMap) ToAviatrixSpokeVpcMapOutputWithContext(ctx context.Context) AviatrixSpokeVpcMapOutput

type AviatrixSpokeVpcMapInput

type AviatrixSpokeVpcMapInput interface {
	pulumi.Input

	ToAviatrixSpokeVpcMapOutput() AviatrixSpokeVpcMapOutput
	ToAviatrixSpokeVpcMapOutputWithContext(context.Context) AviatrixSpokeVpcMapOutput
}

AviatrixSpokeVpcMapInput is an input type that accepts AviatrixSpokeVpcMap and AviatrixSpokeVpcMapOutput values. You can construct a concrete instance of `AviatrixSpokeVpcMapInput` via:

AviatrixSpokeVpcMap{ "key": AviatrixSpokeVpcArgs{...} }

type AviatrixSpokeVpcMapOutput

type AviatrixSpokeVpcMapOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeVpcMapOutput) ElementType

func (AviatrixSpokeVpcMapOutput) ElementType() reflect.Type

func (AviatrixSpokeVpcMapOutput) MapIndex

func (AviatrixSpokeVpcMapOutput) ToAviatrixSpokeVpcMapOutput

func (o AviatrixSpokeVpcMapOutput) ToAviatrixSpokeVpcMapOutput() AviatrixSpokeVpcMapOutput

func (AviatrixSpokeVpcMapOutput) ToAviatrixSpokeVpcMapOutputWithContext

func (o AviatrixSpokeVpcMapOutput) ToAviatrixSpokeVpcMapOutputWithContext(ctx context.Context) AviatrixSpokeVpcMapOutput

type AviatrixSpokeVpcOutput

type AviatrixSpokeVpcOutput struct{ *pulumi.OutputState }

func (AviatrixSpokeVpcOutput) AccountName

func (o AviatrixSpokeVpcOutput) AccountName() pulumi.StringOutput

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixSpokeVpcOutput) CloudInstanceId

func (o AviatrixSpokeVpcOutput) CloudInstanceId() pulumi.StringOutput

Cloud instance ID.

func (AviatrixSpokeVpcOutput) CloudType

func (o AviatrixSpokeVpcOutput) CloudType() pulumi.IntOutput

Type of cloud service provider. AWS=1, GCP=4, ARM=8.

func (AviatrixSpokeVpcOutput) ElementType

func (AviatrixSpokeVpcOutput) ElementType() reflect.Type

func (AviatrixSpokeVpcOutput) EnableNat

Specify whether enabling NAT feature on the gateway or not.

func (AviatrixSpokeVpcOutput) GwName

Name of the gateway which is going to be created.

func (AviatrixSpokeVpcOutput) HaGwSize

HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".

func (AviatrixSpokeVpcOutput) HaSubnet

HA Subnet. Required for enabling HA for AWS/ARM gateways. Setting to empty/unset will disable HA. Setting to a valid subnet (Example: 10.12.0.0/24) will create an HA gateway on the subnet.

func (AviatrixSpokeVpcOutput) HaZone

HA Zone. Required for enabling HA for GCP gateway. Setting to empty/unset will disable HA. Setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c".

func (AviatrixSpokeVpcOutput) SingleAzHa

Set to "enabled" if this feature is desired.

func (AviatrixSpokeVpcOutput) Subnet

Public Subnet Info. Example: AWS: "CIDRZONESubnetName", etc...

func (AviatrixSpokeVpcOutput) TagLists

Instance tag of cloud provider. Example: key1:value1,key002:value002, etc... Only AWS (cloud_type is "1") is supported

func (AviatrixSpokeVpcOutput) ToAviatrixSpokeVpcOutput

func (o AviatrixSpokeVpcOutput) ToAviatrixSpokeVpcOutput() AviatrixSpokeVpcOutput

func (AviatrixSpokeVpcOutput) ToAviatrixSpokeVpcOutputWithContext

func (o AviatrixSpokeVpcOutput) ToAviatrixSpokeVpcOutputWithContext(ctx context.Context) AviatrixSpokeVpcOutput

func (AviatrixSpokeVpcOutput) TransitGw

Specify the transit Gateway.

func (AviatrixSpokeVpcOutput) VpcId

VPC-ID/VNet-Name of cloud provider. Required if cloudType is "1" or "4". Example: AWS: "vpc-abcd1234", etc...

func (AviatrixSpokeVpcOutput) VpcReg

Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west1-b", ARM: "East US 2", etc...

func (AviatrixSpokeVpcOutput) VpcSize

Size of the gateway instance. Example: AWS: "t2.large", GCP: "f1.micro", ARM: "StandardD2", etc...

type AviatrixSpokeVpcState

type AviatrixSpokeVpcState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// Cloud instance ID.
	CloudInstanceId pulumi.StringPtrInput
	// Type of cloud service provider. AWS=1, GCP=4, ARM=8.
	CloudType pulumi.IntPtrInput
	// Specify whether enabling NAT feature on the gateway or not.
	EnableNat pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// HA Subnet. Required for enabling HA for AWS/ARM gateways. Setting to empty/unset will disable HA. Setting to a valid subnet (Example: 10.12.0.0/24) will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required for enabling HA for GCP gateway. Setting to empty/unset will disable HA. Setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c".
	HaZone pulumi.StringPtrInput
	// Set to "enabled" if this feature is desired.
	SingleAzHa pulumi.StringPtrInput
	// Public Subnet Info. Example: AWS: "CIDRZONESubnetName", etc...
	Subnet pulumi.StringPtrInput
	// Instance tag of cloud provider. Example: key1:value1,key002:value002, etc... Only AWS (cloud_type is "1") is supported
	TagLists pulumi.StringArrayInput
	// Specify the transit Gateway.
	TransitGw pulumi.StringPtrInput
	// VPC-ID/VNet-Name of cloud provider. Required if cloudType is "1" or "4". Example: AWS: "vpc-abcd1234", etc...
	VpcId pulumi.StringPtrInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west1-b", ARM: "East US 2", etc...
	VpcReg pulumi.StringPtrInput
	// Size of the gateway instance. Example: AWS: "t2.large", GCP: "f1.micro", ARM: "StandardD2", etc...
	VpcSize pulumi.StringPtrInput
}

func (AviatrixSpokeVpcState) ElementType

func (AviatrixSpokeVpcState) ElementType() reflect.Type

type AviatrixSumologicForwarder

type AviatrixSumologicForwarder struct {
	pulumi.CustomResourceState

	// Access ID.
	AccessId pulumi.StringOutput `pulumi:"accessId"`
	// Access Key.
	AccessKey pulumi.StringOutput `pulumi:"accessKey"`
	// Custom configuration. The format should be key=value pairs.
	CustomConfiguration pulumi.StringPtrOutput `pulumi:"customConfiguration"`
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayOutput `pulumi:"excludedGateways"`
	// Source category. "Aviatrix_syslog" by default.
	SourceCategory pulumi.StringPtrOutput `pulumi:"sourceCategory"`
	// The status of sumologic forwarder.
	Status pulumi.StringOutput `pulumi:"status"`
}

The **aviatrix_sumologic_forwarder** resource allows the enabling and disabling of sumologic forwarder.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixSumologicForwarder(ctx, "testSumologicForwarder", &aviatrix.AviatrixSumologicForwarderArgs{
			AccessId:  pulumi.String("0"),
			AccessKey: pulumi.String("1.2.3.4"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**sumologic_forwarder** can be imported using "sumologic_forwarder", e.g.

```sh

$ pulumi import aviatrix:index/aviatrixSumologicForwarder:AviatrixSumologicForwarder test sumologic_forwarder

```

func GetAviatrixSumologicForwarder

func GetAviatrixSumologicForwarder(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixSumologicForwarderState, opts ...pulumi.ResourceOption) (*AviatrixSumologicForwarder, error)

GetAviatrixSumologicForwarder gets an existing AviatrixSumologicForwarder 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 NewAviatrixSumologicForwarder

func NewAviatrixSumologicForwarder(ctx *pulumi.Context,
	name string, args *AviatrixSumologicForwarderArgs, opts ...pulumi.ResourceOption) (*AviatrixSumologicForwarder, error)

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

func (*AviatrixSumologicForwarder) ElementType

func (*AviatrixSumologicForwarder) ElementType() reflect.Type

func (*AviatrixSumologicForwarder) ToAviatrixSumologicForwarderOutput

func (i *AviatrixSumologicForwarder) ToAviatrixSumologicForwarderOutput() AviatrixSumologicForwarderOutput

func (*AviatrixSumologicForwarder) ToAviatrixSumologicForwarderOutputWithContext

func (i *AviatrixSumologicForwarder) ToAviatrixSumologicForwarderOutputWithContext(ctx context.Context) AviatrixSumologicForwarderOutput

type AviatrixSumologicForwarderArgs

type AviatrixSumologicForwarderArgs struct {
	// Access ID.
	AccessId pulumi.StringInput
	// Access Key.
	AccessKey pulumi.StringInput
	// Custom configuration. The format should be key=value pairs.
	CustomConfiguration pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Source category. "Aviatrix_syslog" by default.
	SourceCategory pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixSumologicForwarder resource.

func (AviatrixSumologicForwarderArgs) ElementType

type AviatrixSumologicForwarderArray

type AviatrixSumologicForwarderArray []AviatrixSumologicForwarderInput

func (AviatrixSumologicForwarderArray) ElementType

func (AviatrixSumologicForwarderArray) ToAviatrixSumologicForwarderArrayOutput

func (i AviatrixSumologicForwarderArray) ToAviatrixSumologicForwarderArrayOutput() AviatrixSumologicForwarderArrayOutput

func (AviatrixSumologicForwarderArray) ToAviatrixSumologicForwarderArrayOutputWithContext

func (i AviatrixSumologicForwarderArray) ToAviatrixSumologicForwarderArrayOutputWithContext(ctx context.Context) AviatrixSumologicForwarderArrayOutput

type AviatrixSumologicForwarderArrayInput

type AviatrixSumologicForwarderArrayInput interface {
	pulumi.Input

	ToAviatrixSumologicForwarderArrayOutput() AviatrixSumologicForwarderArrayOutput
	ToAviatrixSumologicForwarderArrayOutputWithContext(context.Context) AviatrixSumologicForwarderArrayOutput
}

AviatrixSumologicForwarderArrayInput is an input type that accepts AviatrixSumologicForwarderArray and AviatrixSumologicForwarderArrayOutput values. You can construct a concrete instance of `AviatrixSumologicForwarderArrayInput` via:

AviatrixSumologicForwarderArray{ AviatrixSumologicForwarderArgs{...} }

type AviatrixSumologicForwarderArrayOutput

type AviatrixSumologicForwarderArrayOutput struct{ *pulumi.OutputState }

func (AviatrixSumologicForwarderArrayOutput) ElementType

func (AviatrixSumologicForwarderArrayOutput) Index

func (AviatrixSumologicForwarderArrayOutput) ToAviatrixSumologicForwarderArrayOutput

func (o AviatrixSumologicForwarderArrayOutput) ToAviatrixSumologicForwarderArrayOutput() AviatrixSumologicForwarderArrayOutput

func (AviatrixSumologicForwarderArrayOutput) ToAviatrixSumologicForwarderArrayOutputWithContext

func (o AviatrixSumologicForwarderArrayOutput) ToAviatrixSumologicForwarderArrayOutputWithContext(ctx context.Context) AviatrixSumologicForwarderArrayOutput

type AviatrixSumologicForwarderInput

type AviatrixSumologicForwarderInput interface {
	pulumi.Input

	ToAviatrixSumologicForwarderOutput() AviatrixSumologicForwarderOutput
	ToAviatrixSumologicForwarderOutputWithContext(ctx context.Context) AviatrixSumologicForwarderOutput
}

type AviatrixSumologicForwarderMap

type AviatrixSumologicForwarderMap map[string]AviatrixSumologicForwarderInput

func (AviatrixSumologicForwarderMap) ElementType

func (AviatrixSumologicForwarderMap) ToAviatrixSumologicForwarderMapOutput

func (i AviatrixSumologicForwarderMap) ToAviatrixSumologicForwarderMapOutput() AviatrixSumologicForwarderMapOutput

func (AviatrixSumologicForwarderMap) ToAviatrixSumologicForwarderMapOutputWithContext

func (i AviatrixSumologicForwarderMap) ToAviatrixSumologicForwarderMapOutputWithContext(ctx context.Context) AviatrixSumologicForwarderMapOutput

type AviatrixSumologicForwarderMapInput

type AviatrixSumologicForwarderMapInput interface {
	pulumi.Input

	ToAviatrixSumologicForwarderMapOutput() AviatrixSumologicForwarderMapOutput
	ToAviatrixSumologicForwarderMapOutputWithContext(context.Context) AviatrixSumologicForwarderMapOutput
}

AviatrixSumologicForwarderMapInput is an input type that accepts AviatrixSumologicForwarderMap and AviatrixSumologicForwarderMapOutput values. You can construct a concrete instance of `AviatrixSumologicForwarderMapInput` via:

AviatrixSumologicForwarderMap{ "key": AviatrixSumologicForwarderArgs{...} }

type AviatrixSumologicForwarderMapOutput

type AviatrixSumologicForwarderMapOutput struct{ *pulumi.OutputState }

func (AviatrixSumologicForwarderMapOutput) ElementType

func (AviatrixSumologicForwarderMapOutput) MapIndex

func (AviatrixSumologicForwarderMapOutput) ToAviatrixSumologicForwarderMapOutput

func (o AviatrixSumologicForwarderMapOutput) ToAviatrixSumologicForwarderMapOutput() AviatrixSumologicForwarderMapOutput

func (AviatrixSumologicForwarderMapOutput) ToAviatrixSumologicForwarderMapOutputWithContext

func (o AviatrixSumologicForwarderMapOutput) ToAviatrixSumologicForwarderMapOutputWithContext(ctx context.Context) AviatrixSumologicForwarderMapOutput

type AviatrixSumologicForwarderOutput

type AviatrixSumologicForwarderOutput struct{ *pulumi.OutputState }

func (AviatrixSumologicForwarderOutput) AccessId

Access ID.

func (AviatrixSumologicForwarderOutput) AccessKey

Access Key.

func (AviatrixSumologicForwarderOutput) CustomConfiguration

Custom configuration. The format should be key=value pairs.

func (AviatrixSumologicForwarderOutput) ElementType

func (AviatrixSumologicForwarderOutput) ExcludedGateways

List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].

func (AviatrixSumologicForwarderOutput) SourceCategory

Source category. "Aviatrix_syslog" by default.

func (AviatrixSumologicForwarderOutput) Status

The status of sumologic forwarder.

func (AviatrixSumologicForwarderOutput) ToAviatrixSumologicForwarderOutput

func (o AviatrixSumologicForwarderOutput) ToAviatrixSumologicForwarderOutput() AviatrixSumologicForwarderOutput

func (AviatrixSumologicForwarderOutput) ToAviatrixSumologicForwarderOutputWithContext

func (o AviatrixSumologicForwarderOutput) ToAviatrixSumologicForwarderOutputWithContext(ctx context.Context) AviatrixSumologicForwarderOutput

type AviatrixSumologicForwarderState

type AviatrixSumologicForwarderState struct {
	// Access ID.
	AccessId pulumi.StringPtrInput
	// Access Key.
	AccessKey pulumi.StringPtrInput
	// Custom configuration. The format should be key=value pairs.
	CustomConfiguration pulumi.StringPtrInput
	// List of gateways to be excluded from logging. e.g.: ["gateway01", "gateway02", "gateway01-hagw"].
	ExcludedGateways pulumi.StringArrayInput
	// Source category. "Aviatrix_syslog" by default.
	SourceCategory pulumi.StringPtrInput
	// The status of sumologic forwarder.
	Status pulumi.StringPtrInput
}

func (AviatrixSumologicForwarderState) ElementType

type AviatrixTransPeer

type AviatrixTransPeer struct {
	pulumi.CustomResourceState

	// Name of nexthop gateway.
	Nexthop pulumi.StringOutput `pulumi:"nexthop"`
	// Destination CIDR.
	ReachableCidr pulumi.StringOutput `pulumi:"reachableCidr"`
	// Name of Source gateway.
	Source pulumi.StringOutput `pulumi:"source"`
}

The **aviatrix_trans_peer** resource allows the creation and management of Aviatrix [Encrypted Transitive Peering](https://docs.aviatrix.com/HowTos/TransPeering.html).

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransPeer(ctx, "testTransPeer", &aviatrix.AviatrixTransPeerArgs{
			Nexthop:       pulumi.String("avtx-us-east-gw2"),
			ReachableCidr: pulumi.String("10.152.0.0/16"),
			Source:        pulumi.String("avtx-us-east-gw1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**trans_peer** can be imported using the `source`, `nexthop` and `reachable_cidr`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransPeer:AviatrixTransPeer test source~nexthop~reachable_cidr

```

func GetAviatrixTransPeer

func GetAviatrixTransPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransPeerState, opts ...pulumi.ResourceOption) (*AviatrixTransPeer, error)

GetAviatrixTransPeer gets an existing AviatrixTransPeer 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 NewAviatrixTransPeer

func NewAviatrixTransPeer(ctx *pulumi.Context,
	name string, args *AviatrixTransPeerArgs, opts ...pulumi.ResourceOption) (*AviatrixTransPeer, error)

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

func (*AviatrixTransPeer) ElementType

func (*AviatrixTransPeer) ElementType() reflect.Type

func (*AviatrixTransPeer) ToAviatrixTransPeerOutput

func (i *AviatrixTransPeer) ToAviatrixTransPeerOutput() AviatrixTransPeerOutput

func (*AviatrixTransPeer) ToAviatrixTransPeerOutputWithContext

func (i *AviatrixTransPeer) ToAviatrixTransPeerOutputWithContext(ctx context.Context) AviatrixTransPeerOutput

type AviatrixTransPeerArgs

type AviatrixTransPeerArgs struct {
	// Name of nexthop gateway.
	Nexthop pulumi.StringInput
	// Destination CIDR.
	ReachableCidr pulumi.StringInput
	// Name of Source gateway.
	Source pulumi.StringInput
}

The set of arguments for constructing a AviatrixTransPeer resource.

func (AviatrixTransPeerArgs) ElementType

func (AviatrixTransPeerArgs) ElementType() reflect.Type

type AviatrixTransPeerArray

type AviatrixTransPeerArray []AviatrixTransPeerInput

func (AviatrixTransPeerArray) ElementType

func (AviatrixTransPeerArray) ElementType() reflect.Type

func (AviatrixTransPeerArray) ToAviatrixTransPeerArrayOutput

func (i AviatrixTransPeerArray) ToAviatrixTransPeerArrayOutput() AviatrixTransPeerArrayOutput

func (AviatrixTransPeerArray) ToAviatrixTransPeerArrayOutputWithContext

func (i AviatrixTransPeerArray) ToAviatrixTransPeerArrayOutputWithContext(ctx context.Context) AviatrixTransPeerArrayOutput

type AviatrixTransPeerArrayInput

type AviatrixTransPeerArrayInput interface {
	pulumi.Input

	ToAviatrixTransPeerArrayOutput() AviatrixTransPeerArrayOutput
	ToAviatrixTransPeerArrayOutputWithContext(context.Context) AviatrixTransPeerArrayOutput
}

AviatrixTransPeerArrayInput is an input type that accepts AviatrixTransPeerArray and AviatrixTransPeerArrayOutput values. You can construct a concrete instance of `AviatrixTransPeerArrayInput` via:

AviatrixTransPeerArray{ AviatrixTransPeerArgs{...} }

type AviatrixTransPeerArrayOutput

type AviatrixTransPeerArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransPeerArrayOutput) ElementType

func (AviatrixTransPeerArrayOutput) Index

func (AviatrixTransPeerArrayOutput) ToAviatrixTransPeerArrayOutput

func (o AviatrixTransPeerArrayOutput) ToAviatrixTransPeerArrayOutput() AviatrixTransPeerArrayOutput

func (AviatrixTransPeerArrayOutput) ToAviatrixTransPeerArrayOutputWithContext

func (o AviatrixTransPeerArrayOutput) ToAviatrixTransPeerArrayOutputWithContext(ctx context.Context) AviatrixTransPeerArrayOutput

type AviatrixTransPeerInput

type AviatrixTransPeerInput interface {
	pulumi.Input

	ToAviatrixTransPeerOutput() AviatrixTransPeerOutput
	ToAviatrixTransPeerOutputWithContext(ctx context.Context) AviatrixTransPeerOutput
}

type AviatrixTransPeerMap

type AviatrixTransPeerMap map[string]AviatrixTransPeerInput

func (AviatrixTransPeerMap) ElementType

func (AviatrixTransPeerMap) ElementType() reflect.Type

func (AviatrixTransPeerMap) ToAviatrixTransPeerMapOutput

func (i AviatrixTransPeerMap) ToAviatrixTransPeerMapOutput() AviatrixTransPeerMapOutput

func (AviatrixTransPeerMap) ToAviatrixTransPeerMapOutputWithContext

func (i AviatrixTransPeerMap) ToAviatrixTransPeerMapOutputWithContext(ctx context.Context) AviatrixTransPeerMapOutput

type AviatrixTransPeerMapInput

type AviatrixTransPeerMapInput interface {
	pulumi.Input

	ToAviatrixTransPeerMapOutput() AviatrixTransPeerMapOutput
	ToAviatrixTransPeerMapOutputWithContext(context.Context) AviatrixTransPeerMapOutput
}

AviatrixTransPeerMapInput is an input type that accepts AviatrixTransPeerMap and AviatrixTransPeerMapOutput values. You can construct a concrete instance of `AviatrixTransPeerMapInput` via:

AviatrixTransPeerMap{ "key": AviatrixTransPeerArgs{...} }

type AviatrixTransPeerMapOutput

type AviatrixTransPeerMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransPeerMapOutput) ElementType

func (AviatrixTransPeerMapOutput) ElementType() reflect.Type

func (AviatrixTransPeerMapOutput) MapIndex

func (AviatrixTransPeerMapOutput) ToAviatrixTransPeerMapOutput

func (o AviatrixTransPeerMapOutput) ToAviatrixTransPeerMapOutput() AviatrixTransPeerMapOutput

func (AviatrixTransPeerMapOutput) ToAviatrixTransPeerMapOutputWithContext

func (o AviatrixTransPeerMapOutput) ToAviatrixTransPeerMapOutputWithContext(ctx context.Context) AviatrixTransPeerMapOutput

type AviatrixTransPeerOutput

type AviatrixTransPeerOutput struct{ *pulumi.OutputState }

func (AviatrixTransPeerOutput) ElementType

func (AviatrixTransPeerOutput) ElementType() reflect.Type

func (AviatrixTransPeerOutput) Nexthop

Name of nexthop gateway.

func (AviatrixTransPeerOutput) ReachableCidr

func (o AviatrixTransPeerOutput) ReachableCidr() pulumi.StringOutput

Destination CIDR.

func (AviatrixTransPeerOutput) Source

Name of Source gateway.

func (AviatrixTransPeerOutput) ToAviatrixTransPeerOutput

func (o AviatrixTransPeerOutput) ToAviatrixTransPeerOutput() AviatrixTransPeerOutput

func (AviatrixTransPeerOutput) ToAviatrixTransPeerOutputWithContext

func (o AviatrixTransPeerOutput) ToAviatrixTransPeerOutputWithContext(ctx context.Context) AviatrixTransPeerOutput

type AviatrixTransPeerState

type AviatrixTransPeerState struct {
	// Name of nexthop gateway.
	Nexthop pulumi.StringPtrInput
	// Destination CIDR.
	ReachableCidr pulumi.StringPtrInput
	// Name of Source gateway.
	Source pulumi.StringPtrInput
}

func (AviatrixTransPeerState) ElementType

func (AviatrixTransPeerState) ElementType() reflect.Type

type AviatrixTransitCloudnConn

type AviatrixTransitCloudnConn struct {
	pulumi.CustomResourceState

	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayOutput `pulumi:"approvedCidrs"`
	// BGP AS Number of HA CloudN. Type: String.
	BackupCloudnAsNum pulumi.StringPtrOutput `pulumi:"backupCloudnAsNum"`
	// IP Address of HA CloudN. Required when `enableHa` is true. Type: String.
	BackupCloudnIp pulumi.StringPtrOutput `pulumi:"backupCloudnIp"`
	// BGP AS Number of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborAsNum pulumi.StringPtrOutput `pulumi:"backupCloudnNeighborAsNum"`
	// IP Address of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborIp pulumi.StringPtrOutput `pulumi:"backupCloudnNeighborIp"`
	// Flag to enable direct connect over private network to HA CloudN. Type: Boolean.
	BackupDirectConnect pulumi.BoolPtrOutput `pulumi:"backupDirectConnect"`
	// Flag to enable insane mode connection to HA CloudN. Type: Boolean.
	BackupInsaneMode pulumi.BoolPtrOutput `pulumi:"backupInsaneMode"`
	// BGP AS Number of the Transit Gateway. Type: String.
	BgpLocalAsNum pulumi.StringOutput `pulumi:"bgpLocalAsNum"`
	// BGP AS Number of the Aviatrix CloudN. Type: String.
	CloudnAsNum pulumi.StringOutput `pulumi:"cloudnAsNum"`
	// BGP AS Number of the Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborAsNum pulumi.StringOutput `pulumi:"cloudnNeighborAsNum"`
	// IP Address of Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborIp pulumi.StringOutput `pulumi:"cloudnNeighborIp"`
	// IP Address of Aviatrix CloudN. Type: String.
	CloudnRemoteIp pulumi.StringOutput `pulumi:"cloudnRemoteIp"`
	// Name of the Transit Gateway to CloudN Connection. Type: String.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Enable direct connect over private network. Type: Boolean. Default: true.
	DirectConnect pulumi.BoolPtrOutput `pulumi:"directConnect"`
	// Enable connection to HA CloudN. Type: Boolean.
	EnableHa pulumi.BoolPtrOutput `pulumi:"enableHa"`
	// Enable encrypted transit approval for connection. Type: Boolean.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Flag to enable load balancing between CloudN and HA CloudN. Type: Boolean.
	EnableLoadBalancing pulumi.BoolPtrOutput `pulumi:"enableLoadBalancing"`
	// Name of the Transit Gateway. Type: String.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Enable insane mode connection. Type: Boolean.
	InsaneMode pulumi.BoolPtrOutput `pulumi:"insaneMode"`
	// VPC ID of the Aviatrix Transit Gateway. Type: String.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_transit_cloudn_conn** resource creates and manages the connection between an Aviatrix Transit Gateway and an Aviatrix CloudN device. Available as of provider version R2.21.0+.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransitCloudnConn(ctx, "test", &aviatrix.AviatrixTransitCloudnConnArgs{
			BgpLocalAsNum:       pulumi.String("123"),
			CloudnAsNum:         pulumi.String("345"),
			CloudnNeighborAsNum: pulumi.String("65005"),
			CloudnNeighborIp:    pulumi.String("182.1.2.3"),
			CloudnRemoteIp:      pulumi.String("172.12.13.14"),
			ConnectionName:      pulumi.String("my_conn"),
			GwName:              pulumi.String("transitGw"),
			VpcId:               pulumi.String("vpc-abcd1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransitCloudnConn(ctx, "test", &aviatrix.AviatrixTransitCloudnConnArgs{
			BackupCloudnAsNum:         pulumi.String("123"),
			BackupCloudnIp:            pulumi.String("1.2.3.6"),
			BackupCloudnNeighborAsNum: pulumi.String("345"),
			BackupCloudnNeighborIp:    pulumi.String("1.2.3.7"),
			BgpLocalAsNum:             pulumi.String("123"),
			CloudnAsNum:               pulumi.String("345"),
			CloudnNeighborAsNum:       pulumi.String("65005"),
			CloudnNeighborIp:          pulumi.String("1.2.3.5"),
			CloudnRemoteIp:            pulumi.String("1.2.3.4"),
			ConnectionName:            pulumi.String("my_conn"),
			EnableHa:                  pulumi.Bool(true),
			GwName:                    pulumi.String("transitGw"),
			VpcId:                     pulumi.String("vpc-abcd1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**transit_cloudn_conn** can be imported using the `connection_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitCloudnConn:AviatrixTransitCloudnConn test connection_name~vpc_id

```

func GetAviatrixTransitCloudnConn

func GetAviatrixTransitCloudnConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitCloudnConnState, opts ...pulumi.ResourceOption) (*AviatrixTransitCloudnConn, error)

GetAviatrixTransitCloudnConn gets an existing AviatrixTransitCloudnConn 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 NewAviatrixTransitCloudnConn

func NewAviatrixTransitCloudnConn(ctx *pulumi.Context,
	name string, args *AviatrixTransitCloudnConnArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitCloudnConn, error)

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

func (*AviatrixTransitCloudnConn) ElementType

func (*AviatrixTransitCloudnConn) ElementType() reflect.Type

func (*AviatrixTransitCloudnConn) ToAviatrixTransitCloudnConnOutput

func (i *AviatrixTransitCloudnConn) ToAviatrixTransitCloudnConnOutput() AviatrixTransitCloudnConnOutput

func (*AviatrixTransitCloudnConn) ToAviatrixTransitCloudnConnOutputWithContext

func (i *AviatrixTransitCloudnConn) ToAviatrixTransitCloudnConnOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnOutput

type AviatrixTransitCloudnConnArgs

type AviatrixTransitCloudnConnArgs struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// BGP AS Number of HA CloudN. Type: String.
	BackupCloudnAsNum pulumi.StringPtrInput
	// IP Address of HA CloudN. Required when `enableHa` is true. Type: String.
	BackupCloudnIp pulumi.StringPtrInput
	// BGP AS Number of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborAsNum pulumi.StringPtrInput
	// IP Address of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborIp pulumi.StringPtrInput
	// Flag to enable direct connect over private network to HA CloudN. Type: Boolean.
	BackupDirectConnect pulumi.BoolPtrInput
	// Flag to enable insane mode connection to HA CloudN. Type: Boolean.
	BackupInsaneMode pulumi.BoolPtrInput
	// BGP AS Number of the Transit Gateway. Type: String.
	BgpLocalAsNum pulumi.StringInput
	// BGP AS Number of the Aviatrix CloudN. Type: String.
	CloudnAsNum pulumi.StringInput
	// BGP AS Number of the Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborAsNum pulumi.StringInput
	// IP Address of Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborIp pulumi.StringInput
	// IP Address of Aviatrix CloudN. Type: String.
	CloudnRemoteIp pulumi.StringInput
	// Name of the Transit Gateway to CloudN Connection. Type: String.
	ConnectionName pulumi.StringInput
	// Enable direct connect over private network. Type: Boolean. Default: true.
	DirectConnect pulumi.BoolPtrInput
	// Enable connection to HA CloudN. Type: Boolean.
	EnableHa pulumi.BoolPtrInput
	// Enable encrypted transit approval for connection. Type: Boolean.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Flag to enable load balancing between CloudN and HA CloudN. Type: Boolean.
	EnableLoadBalancing pulumi.BoolPtrInput
	// Name of the Transit Gateway. Type: String.
	GwName pulumi.StringInput
	// Enable insane mode connection. Type: Boolean.
	InsaneMode pulumi.BoolPtrInput
	// VPC ID of the Aviatrix Transit Gateway. Type: String.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixTransitCloudnConn resource.

func (AviatrixTransitCloudnConnArgs) ElementType

type AviatrixTransitCloudnConnArray

type AviatrixTransitCloudnConnArray []AviatrixTransitCloudnConnInput

func (AviatrixTransitCloudnConnArray) ElementType

func (AviatrixTransitCloudnConnArray) ToAviatrixTransitCloudnConnArrayOutput

func (i AviatrixTransitCloudnConnArray) ToAviatrixTransitCloudnConnArrayOutput() AviatrixTransitCloudnConnArrayOutput

func (AviatrixTransitCloudnConnArray) ToAviatrixTransitCloudnConnArrayOutputWithContext

func (i AviatrixTransitCloudnConnArray) ToAviatrixTransitCloudnConnArrayOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnArrayOutput

type AviatrixTransitCloudnConnArrayInput

type AviatrixTransitCloudnConnArrayInput interface {
	pulumi.Input

	ToAviatrixTransitCloudnConnArrayOutput() AviatrixTransitCloudnConnArrayOutput
	ToAviatrixTransitCloudnConnArrayOutputWithContext(context.Context) AviatrixTransitCloudnConnArrayOutput
}

AviatrixTransitCloudnConnArrayInput is an input type that accepts AviatrixTransitCloudnConnArray and AviatrixTransitCloudnConnArrayOutput values. You can construct a concrete instance of `AviatrixTransitCloudnConnArrayInput` via:

AviatrixTransitCloudnConnArray{ AviatrixTransitCloudnConnArgs{...} }

type AviatrixTransitCloudnConnArrayOutput

type AviatrixTransitCloudnConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitCloudnConnArrayOutput) ElementType

func (AviatrixTransitCloudnConnArrayOutput) Index

func (AviatrixTransitCloudnConnArrayOutput) ToAviatrixTransitCloudnConnArrayOutput

func (o AviatrixTransitCloudnConnArrayOutput) ToAviatrixTransitCloudnConnArrayOutput() AviatrixTransitCloudnConnArrayOutput

func (AviatrixTransitCloudnConnArrayOutput) ToAviatrixTransitCloudnConnArrayOutputWithContext

func (o AviatrixTransitCloudnConnArrayOutput) ToAviatrixTransitCloudnConnArrayOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnArrayOutput

type AviatrixTransitCloudnConnInput

type AviatrixTransitCloudnConnInput interface {
	pulumi.Input

	ToAviatrixTransitCloudnConnOutput() AviatrixTransitCloudnConnOutput
	ToAviatrixTransitCloudnConnOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnOutput
}

type AviatrixTransitCloudnConnMap

type AviatrixTransitCloudnConnMap map[string]AviatrixTransitCloudnConnInput

func (AviatrixTransitCloudnConnMap) ElementType

func (AviatrixTransitCloudnConnMap) ToAviatrixTransitCloudnConnMapOutput

func (i AviatrixTransitCloudnConnMap) ToAviatrixTransitCloudnConnMapOutput() AviatrixTransitCloudnConnMapOutput

func (AviatrixTransitCloudnConnMap) ToAviatrixTransitCloudnConnMapOutputWithContext

func (i AviatrixTransitCloudnConnMap) ToAviatrixTransitCloudnConnMapOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnMapOutput

type AviatrixTransitCloudnConnMapInput

type AviatrixTransitCloudnConnMapInput interface {
	pulumi.Input

	ToAviatrixTransitCloudnConnMapOutput() AviatrixTransitCloudnConnMapOutput
	ToAviatrixTransitCloudnConnMapOutputWithContext(context.Context) AviatrixTransitCloudnConnMapOutput
}

AviatrixTransitCloudnConnMapInput is an input type that accepts AviatrixTransitCloudnConnMap and AviatrixTransitCloudnConnMapOutput values. You can construct a concrete instance of `AviatrixTransitCloudnConnMapInput` via:

AviatrixTransitCloudnConnMap{ "key": AviatrixTransitCloudnConnArgs{...} }

type AviatrixTransitCloudnConnMapOutput

type AviatrixTransitCloudnConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitCloudnConnMapOutput) ElementType

func (AviatrixTransitCloudnConnMapOutput) MapIndex

func (AviatrixTransitCloudnConnMapOutput) ToAviatrixTransitCloudnConnMapOutput

func (o AviatrixTransitCloudnConnMapOutput) ToAviatrixTransitCloudnConnMapOutput() AviatrixTransitCloudnConnMapOutput

func (AviatrixTransitCloudnConnMapOutput) ToAviatrixTransitCloudnConnMapOutputWithContext

func (o AviatrixTransitCloudnConnMapOutput) ToAviatrixTransitCloudnConnMapOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnMapOutput

type AviatrixTransitCloudnConnOutput

type AviatrixTransitCloudnConnOutput struct{ *pulumi.OutputState }

func (AviatrixTransitCloudnConnOutput) ApprovedCidrs

Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).

func (AviatrixTransitCloudnConnOutput) BackupCloudnAsNum

BGP AS Number of HA CloudN. Type: String.

func (AviatrixTransitCloudnConnOutput) BackupCloudnIp

IP Address of HA CloudN. Required when `enableHa` is true. Type: String.

func (AviatrixTransitCloudnConnOutput) BackupCloudnNeighborAsNum

func (o AviatrixTransitCloudnConnOutput) BackupCloudnNeighborAsNum() pulumi.StringPtrOutput

BGP AS Number of HA CloudN Neighbor. Type: String.

func (AviatrixTransitCloudnConnOutput) BackupCloudnNeighborIp

func (o AviatrixTransitCloudnConnOutput) BackupCloudnNeighborIp() pulumi.StringPtrOutput

IP Address of HA CloudN Neighbor. Type: String.

func (AviatrixTransitCloudnConnOutput) BackupDirectConnect

func (o AviatrixTransitCloudnConnOutput) BackupDirectConnect() pulumi.BoolPtrOutput

Flag to enable direct connect over private network to HA CloudN. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) BackupInsaneMode

Flag to enable insane mode connection to HA CloudN. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) BgpLocalAsNum

BGP AS Number of the Transit Gateway. Type: String.

func (AviatrixTransitCloudnConnOutput) CloudnAsNum

BGP AS Number of the Aviatrix CloudN. Type: String.

func (AviatrixTransitCloudnConnOutput) CloudnNeighborAsNum

func (o AviatrixTransitCloudnConnOutput) CloudnNeighborAsNum() pulumi.StringOutput

BGP AS Number of the Aviatrix CloudN neighbor. Type: String.

func (AviatrixTransitCloudnConnOutput) CloudnNeighborIp

IP Address of Aviatrix CloudN neighbor. Type: String.

func (AviatrixTransitCloudnConnOutput) CloudnRemoteIp

IP Address of Aviatrix CloudN. Type: String.

func (AviatrixTransitCloudnConnOutput) ConnectionName

Name of the Transit Gateway to CloudN Connection. Type: String.

func (AviatrixTransitCloudnConnOutput) DirectConnect

Enable direct connect over private network. Type: Boolean. Default: true.

func (AviatrixTransitCloudnConnOutput) ElementType

func (AviatrixTransitCloudnConnOutput) EnableHa

Enable connection to HA CloudN. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) EnableLearnedCidrsApproval

func (o AviatrixTransitCloudnConnOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Enable encrypted transit approval for connection. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) EnableLoadBalancing

func (o AviatrixTransitCloudnConnOutput) EnableLoadBalancing() pulumi.BoolPtrOutput

Flag to enable load balancing between CloudN and HA CloudN. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) GwName

Name of the Transit Gateway. Type: String.

func (AviatrixTransitCloudnConnOutput) InsaneMode

Enable insane mode connection. Type: Boolean.

func (AviatrixTransitCloudnConnOutput) ToAviatrixTransitCloudnConnOutput

func (o AviatrixTransitCloudnConnOutput) ToAviatrixTransitCloudnConnOutput() AviatrixTransitCloudnConnOutput

func (AviatrixTransitCloudnConnOutput) ToAviatrixTransitCloudnConnOutputWithContext

func (o AviatrixTransitCloudnConnOutput) ToAviatrixTransitCloudnConnOutputWithContext(ctx context.Context) AviatrixTransitCloudnConnOutput

func (AviatrixTransitCloudnConnOutput) VpcId

VPC ID of the Aviatrix Transit Gateway. Type: String.

type AviatrixTransitCloudnConnState

type AviatrixTransitCloudnConnState struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// BGP AS Number of HA CloudN. Type: String.
	BackupCloudnAsNum pulumi.StringPtrInput
	// IP Address of HA CloudN. Required when `enableHa` is true. Type: String.
	BackupCloudnIp pulumi.StringPtrInput
	// BGP AS Number of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborAsNum pulumi.StringPtrInput
	// IP Address of HA CloudN Neighbor. Type: String.
	BackupCloudnNeighborIp pulumi.StringPtrInput
	// Flag to enable direct connect over private network to HA CloudN. Type: Boolean.
	BackupDirectConnect pulumi.BoolPtrInput
	// Flag to enable insane mode connection to HA CloudN. Type: Boolean.
	BackupInsaneMode pulumi.BoolPtrInput
	// BGP AS Number of the Transit Gateway. Type: String.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP AS Number of the Aviatrix CloudN. Type: String.
	CloudnAsNum pulumi.StringPtrInput
	// BGP AS Number of the Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborAsNum pulumi.StringPtrInput
	// IP Address of Aviatrix CloudN neighbor. Type: String.
	CloudnNeighborIp pulumi.StringPtrInput
	// IP Address of Aviatrix CloudN. Type: String.
	CloudnRemoteIp pulumi.StringPtrInput
	// Name of the Transit Gateway to CloudN Connection. Type: String.
	ConnectionName pulumi.StringPtrInput
	// Enable direct connect over private network. Type: Boolean. Default: true.
	DirectConnect pulumi.BoolPtrInput
	// Enable connection to HA CloudN. Type: Boolean.
	EnableHa pulumi.BoolPtrInput
	// Enable encrypted transit approval for connection. Type: Boolean.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Flag to enable load balancing between CloudN and HA CloudN. Type: Boolean.
	EnableLoadBalancing pulumi.BoolPtrInput
	// Name of the Transit Gateway. Type: String.
	GwName pulumi.StringPtrInput
	// Enable insane mode connection. Type: Boolean.
	InsaneMode pulumi.BoolPtrInput
	// VPC ID of the Aviatrix Transit Gateway. Type: String.
	VpcId pulumi.StringPtrInput
}

func (AviatrixTransitCloudnConnState) ElementType

type AviatrixTransitExternalDeviceConn

type AviatrixTransitExternalDeviceConn struct {
	pulumi.CustomResourceState

	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayOutput `pulumi:"approvedCidrs"`
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'. For BGP LAN ActiveMesh mode disabled, example: 'avx03'.
	BackupBgpMd5Key pulumi.StringPtrOutput `pulumi:"backupBgpMd5Key"`
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrOutput `pulumi:"backupBgpRemoteAsNum"`
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrOutput `pulumi:"backupDirectConnect"`
	// Backup Local LAN IP. Required for GCP HA BGP over LAN connection.
	BackupLocalLanIp pulumi.StringOutput `pulumi:"backupLocalLanIp"`
	// Source CIDR for the tunnel from the backup Aviatrix transit gateway.
	BackupLocalTunnelCidr pulumi.StringOutput `pulumi:"backupLocalTunnelCidr"`
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrOutput `pulumi:"backupPreSharedKey"`
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrOutput `pulumi:"backupRemoteGatewayIp"`
	// Backup Remote LAN IP. Required for HA BGP over LAN connection.
	BackupRemoteLanIp pulumi.StringPtrOutput `pulumi:"backupRemoteLanIp"`
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringOutput `pulumi:"backupRemoteTunnelCidr"`
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrOutput `pulumi:"bgpLocalAsNum"`
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'. For BGP LAN ActiveMesh mode disabled, example: 'avx01'.
	BgpMd5Key pulumi.StringPtrOutput `pulumi:"bgpMd5Key"`
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrOutput `pulumi:"bgpRemoteAsNum"`
	// Transit external device connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"`
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrOutput `pulumi:"customAlgorithms"`
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrOutput `pulumi:"directConnect"`
	// Switch to enable BGP LAN ActiveMesh mode. Only valid for GCP with Remote Gateway HA enabled. Default: false. Available as of provider version R2.21+.
	EnableBgpLanActivemesh pulumi.BoolPtrOutput `pulumi:"enableBgpLanActivemesh"`
	// Switch to allow this connection to communicate with a Network Domain via Connection Policy.
	EnableEdgeSegmentation pulumi.BoolPtrOutput `pulumi:"enableEdgeSegmentation"`
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrOutput `pulumi:"enableEventTriggeredHa"`
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrOutput `pulumi:"enableIkev2"`
	// Enable Jumbo Frame for the transit external device connection. Only valid with 'GRE' tunnels under 'bgp' connection. Requires transit to be jumbo frame and insane mode enabled. Valid values: true, false. Default value: false. Available as of provider version R2.22.2+.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the transit_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Aviatrix transit gateway name.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrOutput `pulumi:"haEnabled"`
	// Local LAN IP. Required for GCP BGP over LAN connection.
	LocalLanIp pulumi.StringOutput `pulumi:"localLanIp"`
	// Source CIDR for the tunnel from the Aviatrix transit gateway.
	LocalTunnelCidr pulumi.StringOutput `pulumi:"localTunnelCidr"`
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayOutput `pulumi:"manualBgpAdvertisedCidrs"`
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrOutput `pulumi:"phase1Authentication"`
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrOutput `pulumi:"phase1DhGroups"`
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrOutput `pulumi:"phase1Encryption"`
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayOutput `pulumi:"phase1RemoteIdentifiers"`
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrOutput `pulumi:"phase2Authentication"`
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrOutput `pulumi:"phase2DhGroups"`
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrOutput `pulumi:"phase2Encryption"`
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrOutput `pulumi:"preSharedKey"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Remote gateway IP. Required when `tunnelProtocol` != 'LAN'.
	RemoteGatewayIp pulumi.StringPtrOutput `pulumi:"remoteGatewayIp"`
	// Remote LAN IP. Required for BGP over LAN connection.
	RemoteLanIp pulumi.StringPtrOutput `pulumi:"remoteLanIp"`
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrOutput `pulumi:"remoteSubnet"`
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringOutput `pulumi:"remoteTunnelCidr"`
	// Name of the remote VPC for a LAN BGP connection with an Azure Transit Gateway. Required when `connectionType` = 'bgp' and `tunnelProtocol` = 'LAN' with an Azure transit gateway. Must be in the format "<vnet-name>:<resource-group-name>:<subscription-id>". Available as of provider version R2.18+.
	RemoteVpcName pulumi.StringPtrOutput `pulumi:"remoteVpcName"`
	// Switch to HA Standby Transit Gateway connection. Only valid with Transit Gateway that has [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby) enabled and for non-HA external device. Valid values: true, false. Default: false. Available in provider version R2.17.1+.
	SwitchToHaStandbyGateway pulumi.BoolPtrOutput `pulumi:"switchToHaStandbyGateway"`
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec', 'GRE' or 'LAN'. Default value: 'IPsec'. Case insensitive. Available as of provider version R2.18+.
	TunnelProtocol pulumi.StringPtrOutput `pulumi:"tunnelProtocol"`
	// VPC ID of the Aviatrix transit gateway. For GCP BGP over LAN connection, it is in the format of "vpc_name~-~project_name".
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

## Import

**transit_external_device_conn** can be imported using the `connection_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitExternalDeviceConn:AviatrixTransitExternalDeviceConn test connection_name~vpc_id

```

func GetAviatrixTransitExternalDeviceConn

func GetAviatrixTransitExternalDeviceConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitExternalDeviceConnState, opts ...pulumi.ResourceOption) (*AviatrixTransitExternalDeviceConn, error)

GetAviatrixTransitExternalDeviceConn gets an existing AviatrixTransitExternalDeviceConn 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 NewAviatrixTransitExternalDeviceConn

func NewAviatrixTransitExternalDeviceConn(ctx *pulumi.Context,
	name string, args *AviatrixTransitExternalDeviceConnArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitExternalDeviceConn, error)

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

func (*AviatrixTransitExternalDeviceConn) ElementType

func (*AviatrixTransitExternalDeviceConn) ToAviatrixTransitExternalDeviceConnOutput

func (i *AviatrixTransitExternalDeviceConn) ToAviatrixTransitExternalDeviceConnOutput() AviatrixTransitExternalDeviceConnOutput

func (*AviatrixTransitExternalDeviceConn) ToAviatrixTransitExternalDeviceConnOutputWithContext

func (i *AviatrixTransitExternalDeviceConn) ToAviatrixTransitExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnOutput

type AviatrixTransitExternalDeviceConnArgs

type AviatrixTransitExternalDeviceConnArgs struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'. For BGP LAN ActiveMesh mode disabled, example: 'avx03'.
	BackupBgpMd5Key pulumi.StringPtrInput
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrInput
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrInput
	// Backup Local LAN IP. Required for GCP HA BGP over LAN connection.
	BackupLocalLanIp pulumi.StringPtrInput
	// Source CIDR for the tunnel from the backup Aviatrix transit gateway.
	BackupLocalTunnelCidr pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Backup Remote LAN IP. Required for HA BGP over LAN connection.
	BackupRemoteLanIp pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringPtrInput
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'. For BGP LAN ActiveMesh mode disabled, example: 'avx01'.
	BgpMd5Key pulumi.StringPtrInput
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrInput
	// Transit external device connection name.
	ConnectionName pulumi.StringInput
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrInput
	// Switch to enable BGP LAN ActiveMesh mode. Only valid for GCP with Remote Gateway HA enabled. Default: false. Available as of provider version R2.21+.
	EnableBgpLanActivemesh pulumi.BoolPtrInput
	// Switch to allow this connection to communicate with a Network Domain via Connection Policy.
	EnableEdgeSegmentation pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable Jumbo Frame for the transit external device connection. Only valid with 'GRE' tunnels under 'bgp' connection. Requires transit to be jumbo frame and insane mode enabled. Valid values: true, false. Default value: false. Available as of provider version R2.22.2+.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the transit_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Aviatrix transit gateway name.
	GwName pulumi.StringInput
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrInput
	// Local LAN IP. Required for GCP BGP over LAN connection.
	LocalLanIp pulumi.StringPtrInput
	// Source CIDR for the tunnel from the Aviatrix transit gateway.
	LocalTunnelCidr pulumi.StringPtrInput
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayInput
	// Remote gateway IP. Required when `tunnelProtocol` != 'LAN'.
	RemoteGatewayIp pulumi.StringPtrInput
	// Remote LAN IP. Required for BGP over LAN connection.
	RemoteLanIp pulumi.StringPtrInput
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringPtrInput
	// Name of the remote VPC for a LAN BGP connection with an Azure Transit Gateway. Required when `connectionType` = 'bgp' and `tunnelProtocol` = 'LAN' with an Azure transit gateway. Must be in the format "<vnet-name>:<resource-group-name>:<subscription-id>". Available as of provider version R2.18+.
	RemoteVpcName pulumi.StringPtrInput
	// Switch to HA Standby Transit Gateway connection. Only valid with Transit Gateway that has [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby) enabled and for non-HA external device. Valid values: true, false. Default: false. Available in provider version R2.17.1+.
	SwitchToHaStandbyGateway pulumi.BoolPtrInput
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec', 'GRE' or 'LAN'. Default value: 'IPsec'. Case insensitive. Available as of provider version R2.18+.
	TunnelProtocol pulumi.StringPtrInput
	// VPC ID of the Aviatrix transit gateway. For GCP BGP over LAN connection, it is in the format of "vpc_name~-~project_name".
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixTransitExternalDeviceConn resource.

func (AviatrixTransitExternalDeviceConnArgs) ElementType

type AviatrixTransitExternalDeviceConnArray

type AviatrixTransitExternalDeviceConnArray []AviatrixTransitExternalDeviceConnInput

func (AviatrixTransitExternalDeviceConnArray) ElementType

func (AviatrixTransitExternalDeviceConnArray) ToAviatrixTransitExternalDeviceConnArrayOutput

func (i AviatrixTransitExternalDeviceConnArray) ToAviatrixTransitExternalDeviceConnArrayOutput() AviatrixTransitExternalDeviceConnArrayOutput

func (AviatrixTransitExternalDeviceConnArray) ToAviatrixTransitExternalDeviceConnArrayOutputWithContext

func (i AviatrixTransitExternalDeviceConnArray) ToAviatrixTransitExternalDeviceConnArrayOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnArrayOutput

type AviatrixTransitExternalDeviceConnArrayInput

type AviatrixTransitExternalDeviceConnArrayInput interface {
	pulumi.Input

	ToAviatrixTransitExternalDeviceConnArrayOutput() AviatrixTransitExternalDeviceConnArrayOutput
	ToAviatrixTransitExternalDeviceConnArrayOutputWithContext(context.Context) AviatrixTransitExternalDeviceConnArrayOutput
}

AviatrixTransitExternalDeviceConnArrayInput is an input type that accepts AviatrixTransitExternalDeviceConnArray and AviatrixTransitExternalDeviceConnArrayOutput values. You can construct a concrete instance of `AviatrixTransitExternalDeviceConnArrayInput` via:

AviatrixTransitExternalDeviceConnArray{ AviatrixTransitExternalDeviceConnArgs{...} }

type AviatrixTransitExternalDeviceConnArrayOutput

type AviatrixTransitExternalDeviceConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitExternalDeviceConnArrayOutput) ElementType

func (AviatrixTransitExternalDeviceConnArrayOutput) Index

func (AviatrixTransitExternalDeviceConnArrayOutput) ToAviatrixTransitExternalDeviceConnArrayOutput

func (o AviatrixTransitExternalDeviceConnArrayOutput) ToAviatrixTransitExternalDeviceConnArrayOutput() AviatrixTransitExternalDeviceConnArrayOutput

func (AviatrixTransitExternalDeviceConnArrayOutput) ToAviatrixTransitExternalDeviceConnArrayOutputWithContext

func (o AviatrixTransitExternalDeviceConnArrayOutput) ToAviatrixTransitExternalDeviceConnArrayOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnArrayOutput

type AviatrixTransitExternalDeviceConnInput

type AviatrixTransitExternalDeviceConnInput interface {
	pulumi.Input

	ToAviatrixTransitExternalDeviceConnOutput() AviatrixTransitExternalDeviceConnOutput
	ToAviatrixTransitExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnOutput
}

type AviatrixTransitExternalDeviceConnMap

type AviatrixTransitExternalDeviceConnMap map[string]AviatrixTransitExternalDeviceConnInput

func (AviatrixTransitExternalDeviceConnMap) ElementType

func (AviatrixTransitExternalDeviceConnMap) ToAviatrixTransitExternalDeviceConnMapOutput

func (i AviatrixTransitExternalDeviceConnMap) ToAviatrixTransitExternalDeviceConnMapOutput() AviatrixTransitExternalDeviceConnMapOutput

func (AviatrixTransitExternalDeviceConnMap) ToAviatrixTransitExternalDeviceConnMapOutputWithContext

func (i AviatrixTransitExternalDeviceConnMap) ToAviatrixTransitExternalDeviceConnMapOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnMapOutput

type AviatrixTransitExternalDeviceConnMapInput

type AviatrixTransitExternalDeviceConnMapInput interface {
	pulumi.Input

	ToAviatrixTransitExternalDeviceConnMapOutput() AviatrixTransitExternalDeviceConnMapOutput
	ToAviatrixTransitExternalDeviceConnMapOutputWithContext(context.Context) AviatrixTransitExternalDeviceConnMapOutput
}

AviatrixTransitExternalDeviceConnMapInput is an input type that accepts AviatrixTransitExternalDeviceConnMap and AviatrixTransitExternalDeviceConnMapOutput values. You can construct a concrete instance of `AviatrixTransitExternalDeviceConnMapInput` via:

AviatrixTransitExternalDeviceConnMap{ "key": AviatrixTransitExternalDeviceConnArgs{...} }

type AviatrixTransitExternalDeviceConnMapOutput

type AviatrixTransitExternalDeviceConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitExternalDeviceConnMapOutput) ElementType

func (AviatrixTransitExternalDeviceConnMapOutput) MapIndex

func (AviatrixTransitExternalDeviceConnMapOutput) ToAviatrixTransitExternalDeviceConnMapOutput

func (o AviatrixTransitExternalDeviceConnMapOutput) ToAviatrixTransitExternalDeviceConnMapOutput() AviatrixTransitExternalDeviceConnMapOutput

func (AviatrixTransitExternalDeviceConnMapOutput) ToAviatrixTransitExternalDeviceConnMapOutputWithContext

func (o AviatrixTransitExternalDeviceConnMapOutput) ToAviatrixTransitExternalDeviceConnMapOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnMapOutput

type AviatrixTransitExternalDeviceConnOutput

type AviatrixTransitExternalDeviceConnOutput struct{ *pulumi.OutputState }

func (AviatrixTransitExternalDeviceConnOutput) ApprovedCidrs

Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).

func (AviatrixTransitExternalDeviceConnOutput) BackupBgpMd5Key

Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'. For BGP LAN ActiveMesh mode disabled, example: 'avx03'.

func (AviatrixTransitExternalDeviceConnOutput) BackupBgpRemoteAsNum

Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.

func (AviatrixTransitExternalDeviceConnOutput) BackupDirectConnect

Backup direct connect for backup external device.

func (AviatrixTransitExternalDeviceConnOutput) BackupLocalLanIp

Backup Local LAN IP. Required for GCP HA BGP over LAN connection.

func (AviatrixTransitExternalDeviceConnOutput) BackupLocalTunnelCidr

Source CIDR for the tunnel from the backup Aviatrix transit gateway.

func (AviatrixTransitExternalDeviceConnOutput) BackupPreSharedKey

Backup Pre-Shared Key.

func (AviatrixTransitExternalDeviceConnOutput) BackupRemoteGatewayIp

Backup remote gateway IP.

func (AviatrixTransitExternalDeviceConnOutput) BackupRemoteLanIp

Backup Remote LAN IP. Required for HA BGP over LAN connection.

func (AviatrixTransitExternalDeviceConnOutput) BackupRemoteTunnelCidr

func (o AviatrixTransitExternalDeviceConnOutput) BackupRemoteTunnelCidr() pulumi.StringOutput

Destination CIDR for the tunnel to the backup external device.

func (AviatrixTransitExternalDeviceConnOutput) BgpLocalAsNum

BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.

func (AviatrixTransitExternalDeviceConnOutput) BgpMd5Key

BGP MD5 Authentication Key. Example: 'avx01,avx02'. For BGP LAN ActiveMesh mode disabled, example: 'avx01'.

func (AviatrixTransitExternalDeviceConnOutput) BgpRemoteAsNum

BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.

func (AviatrixTransitExternalDeviceConnOutput) ConnectionName

Transit external device connection name.

func (AviatrixTransitExternalDeviceConnOutput) ConnectionType

Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.

func (AviatrixTransitExternalDeviceConnOutput) CustomAlgorithms

Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**

func (AviatrixTransitExternalDeviceConnOutput) DirectConnect

Set true for private network infrastructure.

func (AviatrixTransitExternalDeviceConnOutput) ElementType

func (AviatrixTransitExternalDeviceConnOutput) EnableBgpLanActivemesh

Switch to enable BGP LAN ActiveMesh mode. Only valid for GCP with Remote Gateway HA enabled. Default: false. Available as of provider version R2.21+.

func (AviatrixTransitExternalDeviceConnOutput) EnableEdgeSegmentation

Switch to allow this connection to communicate with a Network Domain via Connection Policy.

func (AviatrixTransitExternalDeviceConnOutput) EnableEventTriggeredHa

Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixTransitExternalDeviceConnOutput) EnableIkev2

Set as true to enable IKEv2 protocol.

func (AviatrixTransitExternalDeviceConnOutput) EnableJumboFrame

Enable Jumbo Frame for the transit external device connection. Only valid with 'GRE' tunnels under 'bgp' connection. Requires transit to be jumbo frame and insane mode enabled. Valid values: true, false. Default value: false. Available as of provider version R2.22.2+.

func (AviatrixTransitExternalDeviceConnOutput) EnableLearnedCidrsApproval

func (o AviatrixTransitExternalDeviceConnOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the transit_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.

func (AviatrixTransitExternalDeviceConnOutput) GwName

Aviatrix transit gateway name.

func (AviatrixTransitExternalDeviceConnOutput) HaEnabled

Set as true if there are two external devices. * ` backupRemoteGatewayIp ` - (Optional) Backup remote gateway IP. Required if HA enabled.

func (AviatrixTransitExternalDeviceConnOutput) LocalLanIp

Local LAN IP. Required for GCP BGP over LAN connection.

func (AviatrixTransitExternalDeviceConnOutput) LocalTunnelCidr

Source CIDR for the tunnel from the Aviatrix transit gateway.

func (AviatrixTransitExternalDeviceConnOutput) ManualBgpAdvertisedCidrs

Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'. Available as of provider version R2.18+.

func (AviatrixTransitExternalDeviceConnOutput) Phase1Authentication

Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.

func (AviatrixTransitExternalDeviceConnOutput) Phase1DhGroups

Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.

func (AviatrixTransitExternalDeviceConnOutput) Phase1Encryption

Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".

func (AviatrixTransitExternalDeviceConnOutput) Phase1RemoteIdentifiers

Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.

func (AviatrixTransitExternalDeviceConnOutput) Phase2Authentication

Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.

func (AviatrixTransitExternalDeviceConnOutput) Phase2DhGroups

Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.

func (AviatrixTransitExternalDeviceConnOutput) Phase2Encryption

Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".

func (AviatrixTransitExternalDeviceConnOutput) PreSharedKey

Pre-Shared Key.

func (AviatrixTransitExternalDeviceConnOutput) PrependAsPaths

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.

func (AviatrixTransitExternalDeviceConnOutput) RemoteGatewayIp

Remote gateway IP. Required when `tunnelProtocol` != 'LAN'.

func (AviatrixTransitExternalDeviceConnOutput) RemoteLanIp

Remote LAN IP. Required for BGP over LAN connection.

func (AviatrixTransitExternalDeviceConnOutput) RemoteSubnet

Remote CIDRs joined as a string with ','. Required for a 'static' type connection.

func (AviatrixTransitExternalDeviceConnOutput) RemoteTunnelCidr

Destination CIDR for the tunnel to the external device.

func (AviatrixTransitExternalDeviceConnOutput) RemoteVpcName

Name of the remote VPC for a LAN BGP connection with an Azure Transit Gateway. Required when `connectionType` = 'bgp' and `tunnelProtocol` = 'LAN' with an Azure transit gateway. Must be in the format "<vnet-name>:<resource-group-name>:<subscription-id>". Available as of provider version R2.18+.

func (AviatrixTransitExternalDeviceConnOutput) SwitchToHaStandbyGateway

func (o AviatrixTransitExternalDeviceConnOutput) SwitchToHaStandbyGateway() pulumi.BoolPtrOutput

Switch to HA Standby Transit Gateway connection. Only valid with Transit Gateway that has [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby) enabled and for non-HA external device. Valid values: true, false. Default: false. Available in provider version R2.17.1+.

func (AviatrixTransitExternalDeviceConnOutput) ToAviatrixTransitExternalDeviceConnOutput

func (o AviatrixTransitExternalDeviceConnOutput) ToAviatrixTransitExternalDeviceConnOutput() AviatrixTransitExternalDeviceConnOutput

func (AviatrixTransitExternalDeviceConnOutput) ToAviatrixTransitExternalDeviceConnOutputWithContext

func (o AviatrixTransitExternalDeviceConnOutput) ToAviatrixTransitExternalDeviceConnOutputWithContext(ctx context.Context) AviatrixTransitExternalDeviceConnOutput

func (AviatrixTransitExternalDeviceConnOutput) TunnelProtocol

Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec', 'GRE' or 'LAN'. Default value: 'IPsec'. Case insensitive. Available as of provider version R2.18+.

func (AviatrixTransitExternalDeviceConnOutput) VpcId

VPC ID of the Aviatrix transit gateway. For GCP BGP over LAN connection, it is in the format of "vpc_name~-~project_name".

type AviatrixTransitExternalDeviceConnState

type AviatrixTransitExternalDeviceConnState struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'. For BGP LAN ActiveMesh mode disabled, example: 'avx03'.
	BackupBgpMd5Key pulumi.StringPtrInput
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrInput
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrInput
	// Backup Local LAN IP. Required for GCP HA BGP over LAN connection.
	BackupLocalLanIp pulumi.StringPtrInput
	// Source CIDR for the tunnel from the backup Aviatrix transit gateway.
	BackupLocalTunnelCidr pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Backup Remote LAN IP. Required for HA BGP over LAN connection.
	BackupRemoteLanIp pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringPtrInput
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'. For BGP LAN ActiveMesh mode disabled, example: 'avx01'.
	BgpMd5Key pulumi.StringPtrInput
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrInput
	// Transit external device connection name.
	ConnectionName pulumi.StringPtrInput
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrInput
	// Switch to enable BGP LAN ActiveMesh mode. Only valid for GCP with Remote Gateway HA enabled. Default: false. Available as of provider version R2.21+.
	EnableBgpLanActivemesh pulumi.BoolPtrInput
	// Switch to allow this connection to communicate with a Network Domain via Connection Policy.
	EnableEdgeSegmentation pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable Jumbo Frame for the transit external device connection. Only valid with 'GRE' tunnels under 'bgp' connection. Requires transit to be jumbo frame and insane mode enabled. Valid values: true, false. Default value: false. Available as of provider version R2.22.2+.
	EnableJumboFrame pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the transit_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Aviatrix transit gateway name.
	GwName pulumi.StringPtrInput
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrInput
	// Local LAN IP. Required for GCP BGP over LAN connection.
	LocalLanIp pulumi.StringPtrInput
	// Source CIDR for the tunnel from the Aviatrix transit gateway.
	LocalTunnelCidr pulumi.StringPtrInput
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled. Available as of provider version R2.19+.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayInput
	// Remote gateway IP. Required when `tunnelProtocol` != 'LAN'.
	RemoteGatewayIp pulumi.StringPtrInput
	// Remote LAN IP. Required for BGP over LAN connection.
	RemoteLanIp pulumi.StringPtrInput
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringPtrInput
	// Name of the remote VPC for a LAN BGP connection with an Azure Transit Gateway. Required when `connectionType` = 'bgp' and `tunnelProtocol` = 'LAN' with an Azure transit gateway. Must be in the format "<vnet-name>:<resource-group-name>:<subscription-id>". Available as of provider version R2.18+.
	RemoteVpcName pulumi.StringPtrInput
	// Switch to HA Standby Transit Gateway connection. Only valid with Transit Gateway that has [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby) enabled and for non-HA external device. Valid values: true, false. Default: false. Available in provider version R2.17.1+.
	SwitchToHaStandbyGateway pulumi.BoolPtrInput
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec', 'GRE' or 'LAN'. Default value: 'IPsec'. Case insensitive. Available as of provider version R2.18+.
	TunnelProtocol pulumi.StringPtrInput
	// VPC ID of the Aviatrix transit gateway. For GCP BGP over LAN connection, it is in the format of "vpc_name~-~project_name".
	VpcId pulumi.StringPtrInput
}

func (AviatrixTransitExternalDeviceConnState) ElementType

type AviatrixTransitFirenetPolicy

type AviatrixTransitFirenetPolicy struct {
	pulumi.CustomResourceState

	// The name of the resource which will be inspected.
	InspectedResourceName pulumi.StringOutput `pulumi:"inspectedResourceName"`
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS and Azure.
	TransitFirenetGatewayName pulumi.StringOutput `pulumi:"transitFirenetGatewayName"`
}

The **aviatrix_transit_firenet_policy** resource allows the creation and management of Aviatrix Transit FireNet policies that determine which resources should be inspected in the Transit FireNet solution.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransitFirenetPolicy(ctx, "testTransitFirenetPolicy", &aviatrix.AviatrixTransitFirenetPolicyArgs{
			InspectedResourceName:     pulumi.String("SPOKE:spokeGw1"),
			TransitFirenetGatewayName: pulumi.String("transitGw1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**transit_firenet_policy** can be imported using the `transit_firenet_gateway_name` and `inspected_resource_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitFirenetPolicy:AviatrixTransitFirenetPolicy test transit_firenet_gateway_name~inspected_resource_name

```

func GetAviatrixTransitFirenetPolicy

func GetAviatrixTransitFirenetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitFirenetPolicyState, opts ...pulumi.ResourceOption) (*AviatrixTransitFirenetPolicy, error)

GetAviatrixTransitFirenetPolicy gets an existing AviatrixTransitFirenetPolicy 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 NewAviatrixTransitFirenetPolicy

func NewAviatrixTransitFirenetPolicy(ctx *pulumi.Context,
	name string, args *AviatrixTransitFirenetPolicyArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitFirenetPolicy, error)

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

func (*AviatrixTransitFirenetPolicy) ElementType

func (*AviatrixTransitFirenetPolicy) ElementType() reflect.Type

func (*AviatrixTransitFirenetPolicy) ToAviatrixTransitFirenetPolicyOutput

func (i *AviatrixTransitFirenetPolicy) ToAviatrixTransitFirenetPolicyOutput() AviatrixTransitFirenetPolicyOutput

func (*AviatrixTransitFirenetPolicy) ToAviatrixTransitFirenetPolicyOutputWithContext

func (i *AviatrixTransitFirenetPolicy) ToAviatrixTransitFirenetPolicyOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyOutput

type AviatrixTransitFirenetPolicyArgs

type AviatrixTransitFirenetPolicyArgs struct {
	// The name of the resource which will be inspected.
	InspectedResourceName pulumi.StringInput
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS and Azure.
	TransitFirenetGatewayName pulumi.StringInput
}

The set of arguments for constructing a AviatrixTransitFirenetPolicy resource.

func (AviatrixTransitFirenetPolicyArgs) ElementType

type AviatrixTransitFirenetPolicyArray

type AviatrixTransitFirenetPolicyArray []AviatrixTransitFirenetPolicyInput

func (AviatrixTransitFirenetPolicyArray) ElementType

func (AviatrixTransitFirenetPolicyArray) ToAviatrixTransitFirenetPolicyArrayOutput

func (i AviatrixTransitFirenetPolicyArray) ToAviatrixTransitFirenetPolicyArrayOutput() AviatrixTransitFirenetPolicyArrayOutput

func (AviatrixTransitFirenetPolicyArray) ToAviatrixTransitFirenetPolicyArrayOutputWithContext

func (i AviatrixTransitFirenetPolicyArray) ToAviatrixTransitFirenetPolicyArrayOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyArrayOutput

type AviatrixTransitFirenetPolicyArrayInput

type AviatrixTransitFirenetPolicyArrayInput interface {
	pulumi.Input

	ToAviatrixTransitFirenetPolicyArrayOutput() AviatrixTransitFirenetPolicyArrayOutput
	ToAviatrixTransitFirenetPolicyArrayOutputWithContext(context.Context) AviatrixTransitFirenetPolicyArrayOutput
}

AviatrixTransitFirenetPolicyArrayInput is an input type that accepts AviatrixTransitFirenetPolicyArray and AviatrixTransitFirenetPolicyArrayOutput values. You can construct a concrete instance of `AviatrixTransitFirenetPolicyArrayInput` via:

AviatrixTransitFirenetPolicyArray{ AviatrixTransitFirenetPolicyArgs{...} }

type AviatrixTransitFirenetPolicyArrayOutput

type AviatrixTransitFirenetPolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitFirenetPolicyArrayOutput) ElementType

func (AviatrixTransitFirenetPolicyArrayOutput) Index

func (AviatrixTransitFirenetPolicyArrayOutput) ToAviatrixTransitFirenetPolicyArrayOutput

func (o AviatrixTransitFirenetPolicyArrayOutput) ToAviatrixTransitFirenetPolicyArrayOutput() AviatrixTransitFirenetPolicyArrayOutput

func (AviatrixTransitFirenetPolicyArrayOutput) ToAviatrixTransitFirenetPolicyArrayOutputWithContext

func (o AviatrixTransitFirenetPolicyArrayOutput) ToAviatrixTransitFirenetPolicyArrayOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyArrayOutput

type AviatrixTransitFirenetPolicyInput

type AviatrixTransitFirenetPolicyInput interface {
	pulumi.Input

	ToAviatrixTransitFirenetPolicyOutput() AviatrixTransitFirenetPolicyOutput
	ToAviatrixTransitFirenetPolicyOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyOutput
}

type AviatrixTransitFirenetPolicyMap

type AviatrixTransitFirenetPolicyMap map[string]AviatrixTransitFirenetPolicyInput

func (AviatrixTransitFirenetPolicyMap) ElementType

func (AviatrixTransitFirenetPolicyMap) ToAviatrixTransitFirenetPolicyMapOutput

func (i AviatrixTransitFirenetPolicyMap) ToAviatrixTransitFirenetPolicyMapOutput() AviatrixTransitFirenetPolicyMapOutput

func (AviatrixTransitFirenetPolicyMap) ToAviatrixTransitFirenetPolicyMapOutputWithContext

func (i AviatrixTransitFirenetPolicyMap) ToAviatrixTransitFirenetPolicyMapOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyMapOutput

type AviatrixTransitFirenetPolicyMapInput

type AviatrixTransitFirenetPolicyMapInput interface {
	pulumi.Input

	ToAviatrixTransitFirenetPolicyMapOutput() AviatrixTransitFirenetPolicyMapOutput
	ToAviatrixTransitFirenetPolicyMapOutputWithContext(context.Context) AviatrixTransitFirenetPolicyMapOutput
}

AviatrixTransitFirenetPolicyMapInput is an input type that accepts AviatrixTransitFirenetPolicyMap and AviatrixTransitFirenetPolicyMapOutput values. You can construct a concrete instance of `AviatrixTransitFirenetPolicyMapInput` via:

AviatrixTransitFirenetPolicyMap{ "key": AviatrixTransitFirenetPolicyArgs{...} }

type AviatrixTransitFirenetPolicyMapOutput

type AviatrixTransitFirenetPolicyMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitFirenetPolicyMapOutput) ElementType

func (AviatrixTransitFirenetPolicyMapOutput) MapIndex

func (AviatrixTransitFirenetPolicyMapOutput) ToAviatrixTransitFirenetPolicyMapOutput

func (o AviatrixTransitFirenetPolicyMapOutput) ToAviatrixTransitFirenetPolicyMapOutput() AviatrixTransitFirenetPolicyMapOutput

func (AviatrixTransitFirenetPolicyMapOutput) ToAviatrixTransitFirenetPolicyMapOutputWithContext

func (o AviatrixTransitFirenetPolicyMapOutput) ToAviatrixTransitFirenetPolicyMapOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyMapOutput

type AviatrixTransitFirenetPolicyOutput

type AviatrixTransitFirenetPolicyOutput struct{ *pulumi.OutputState }

func (AviatrixTransitFirenetPolicyOutput) ElementType

func (AviatrixTransitFirenetPolicyOutput) InspectedResourceName

func (o AviatrixTransitFirenetPolicyOutput) InspectedResourceName() pulumi.StringOutput

The name of the resource which will be inspected.

func (AviatrixTransitFirenetPolicyOutput) ToAviatrixTransitFirenetPolicyOutput

func (o AviatrixTransitFirenetPolicyOutput) ToAviatrixTransitFirenetPolicyOutput() AviatrixTransitFirenetPolicyOutput

func (AviatrixTransitFirenetPolicyOutput) ToAviatrixTransitFirenetPolicyOutputWithContext

func (o AviatrixTransitFirenetPolicyOutput) ToAviatrixTransitFirenetPolicyOutputWithContext(ctx context.Context) AviatrixTransitFirenetPolicyOutput

func (AviatrixTransitFirenetPolicyOutput) TransitFirenetGatewayName

func (o AviatrixTransitFirenetPolicyOutput) TransitFirenetGatewayName() pulumi.StringOutput

Name of the Transit FireNet-enabled transit gateway. Currently supports AWS and Azure.

type AviatrixTransitFirenetPolicyState

type AviatrixTransitFirenetPolicyState struct {
	// The name of the resource which will be inspected.
	InspectedResourceName pulumi.StringPtrInput
	// Name of the Transit FireNet-enabled transit gateway. Currently supports AWS and Azure.
	TransitFirenetGatewayName pulumi.StringPtrInput
}

func (AviatrixTransitFirenetPolicyState) ElementType

type AviatrixTransitGateway

type AviatrixTransitGateway struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrOutput `pulumi:"allocateNewEip"`
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayOutput `pulumi:"approvedLearnedCidrs"`
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringOutput `pulumi:"availabilityDomain"`
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringOutput `pulumi:"azureEipNameResourceGroup"`
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrOutput `pulumi:"bgpEcmp"`
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrOutput `pulumi:"bgpHoldTime"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. Each interface has the following attributes:
	BgpLanInterfaces AviatrixTransitGatewayBgpLanInterfaceArrayOutput `pulumi:"bgpLanInterfaces"`
	// Number of interfaces that will be created for BGP over LAN enabled Azure transit. Valid value: 1~5 for FireNet case, 1~7 for Non-FireNet case. Default value: 1. Available as of provider version R2.22+.
	BgpLanInterfacesCount pulumi.IntPtrOutput `pulumi:"bgpLanInterfacesCount"`
	// List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.
	BgpLanIpLists pulumi.StringArrayOutput `pulumi:"bgpLanIpLists"`
	// Intended CIDR list to be advertised to external BGP router. Example: "10.2.0.0/16,10.4.0.0/16". Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	BgpManualSpokeAdvertiseCidrs pulumi.StringPtrOutput `pulumi:"bgpManualSpokeAdvertiseCidrs"`
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.StringPtrOutput `pulumi:"bgpPollingTime"`
	// Cloud instance ID of the transit gateway.
	CloudInstanceId pulumi.StringOutput `pulumi:"cloudInstanceId"`
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Specify Connected Transit status. If enabled, it allows spokes to run traffics to other spokes via transit gateway. Valid values: true, false. Default value: false.
	ConnectedTransit pulumi.BoolPtrOutput `pulumi:"connectedTransit"`
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrOutput `pulumi:"customerManagedKeys"`
	// A list of comma-separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. Example: "10.0.0.0/16,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrOutput `pulumi:"customizedSpokeVpcRoutes"`
	// A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. To be effective, `enableAdvertiseTransitCidr` or firewall management access for a Transit FireNet gateway must be enabled. Example: ["10.0.0.0/16", "10.2.0.0/16"].
	CustomizedTransitVpcRoutes pulumi.StringArrayOutput `pulumi:"customizedTransitVpcRoutes"`
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller version 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringOutput `pulumi:"eip"`
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false. Available in provider version R2.17.1+.
	EnableActiveStandby pulumi.BoolPtrOutput `pulumi:"enableActiveStandby"`
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrOutput `pulumi:"enableActiveStandbyPreemptive"`
	// Switch to enable/disable advertise transit VPC network CIDR for a VGW connection. Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	EnableAdvertiseTransitCidr pulumi.BoolPtrOutput `pulumi:"enableAdvertiseTransitCidr"`
	// Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Must be enabled to create a BGP over LAN `AviatrixTransitExternalDeviceConn` resource with this Transit Gateway. Only valid for GCP (4), Azure (8), AzureGov (32) or AzureChina (2048). Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableBgpOverLan pulumi.BoolPtrOutput `pulumi:"enableBgpOverLan"`
	// Enable [Egress Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_workflow.html#b-enable-transit-firenet-on-aviatrix-egress-transit-gateway). Valid values: true, false. Default value: false. Available in provider version R2.16.3+.
	EnableEgressTransitFirenet pulumi.BoolPtrOutput `pulumi:"enableEgressTransitFirenet"`
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrOutput `pulumi:"enableEncryptVolume"`
	// Set to true to use gateway for legacy [AWS TGW-based FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) connection. Valid values: true, false. Default value: false. **NOTE: If previously using an older provider version R2.5 where attribute name was `enableFirenetInterfaces`, please see notes here.**
	EnableFirenet pulumi.BoolPtrOutput `pulumi:"enableFirenet"`
	// Enable FireNet interfaces with AWS Gateway Load Balancer. Only valid when `enableFirenet` or `enableTransitFirenet` are set to true and `cloudType` = 1 (AWS). Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableGatewayLoadBalancer pulumi.BoolPtrOutput `pulumi:"enableGatewayLoadBalancer"`
	// Sign of readiness for AWS TGW connection. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Example: false.
	EnableHybridConnection pulumi.BoolPtrOutput `pulumi:"enableHybridConnection"`
	// Enable jumbo frames for this transit gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrOutput `pulumi:"enableJumboFrame"`
	// Switch to enable/disable encrypted transit approval for transit gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrOutput `pulumi:"enableMonitorGatewaySubnets"`
	// Enable Multi-tier Transit mode on transit gateway. When enabled, transit gateway will propagate routes it receives from its transit peering peer to other transit peering peers. `localAsNumber` is required. Default value: false. Available as of provider version R2.19+.
	EnableMultiTierTransit pulumi.BoolPtrOutput `pulumi:"enableMultiTierTransit"`
	// Enable preserve asPath when advertising manual summary cidrs on transit gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	// },
	EnablePreserveAsPath pulumi.BoolPtrOutput `pulumi:"enablePreserveAsPath"`
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrOutput `pulumi:"enablePrivateOob"`
	// Enable S2C receive packet CPU re-balancing on transit gateway. Valid values: true, false. Default value: false. Available in provider version R2.21.2+.
	EnableS2cRxBalancing pulumi.BoolPtrOutput `pulumi:"enableS2cRxBalancing"`
	// Enable transit gateway for segmentation. Valid values: true, false. Default: false.
	EnableSegmentation pulumi.BoolPtrOutput `pulumi:"enableSegmentation"`
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrOutput `pulumi:"enableSpotInstance"`
	// Set to true to use gateway for [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) connection. Valid values: true, false. Default value: false. Available in provider version R2.12+.
	EnableTransitFirenet pulumi.BoolPtrOutput `pulumi:"enableTransitFirenet"`
	// Enable summarize CIDR to TGW. Valid values: true, false. Default value: false.
	EnableTransitSummarizeCidrToTgw pulumi.BoolPtrOutput `pulumi:"enableTransitSummarizeCidrToTgw"`
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrOutput `pulumi:"enableVpcDnsServer"`
	// A list of comma-separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. Example: "10.4.0.0/16,10.5.0.0/16".
	ExcludedAdvertisedSpokeRoutes pulumi.StringPtrOutput `pulumi:"excludedAdvertisedSpokeRoutes"`
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringOutput `pulumi:"faultDomain"`
	// A list of comma-separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. Example: "10.2.0.0/16,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrOutput `pulumi:"filteredSpokeVpcRoutes"`
	// Name of the gateway which is going to be created.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Size of the gateway instance. Example: AWS: "t2.large", Azure/AzureGov: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1", AWSGov: "t2.large", AWSChina: "t2.large", AzureChina: "Standard_A0".
	GwSize pulumi.StringOutput `pulumi:"gwSize"`
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringOutput `pulumi:"haAvailabilityDomain"`
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringOutput `pulumi:"haAzureEipNameResourceGroup"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit HA. Each interface has the following attributes:
	HaBgpLanInterfaces AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput `pulumi:"haBgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.
	HaBgpLanIpLists pulumi.StringArrayOutput `pulumi:"haBgpLanIpLists"`
	// Cloud instance ID of the HA transit gateway.
	HaCloudInstanceId pulumi.StringOutput `pulumi:"haCloudInstanceId"`
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringOutput `pulumi:"haEip"`
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringOutput `pulumi:"haFaultDomain"`
	// Aviatrix transit gateway unique name of HA transit gateway.
	HaGwName pulumi.StringOutput `pulumi:"haGwName"`
	// HA Gateway Size. Mandatory if enabling HA. Example: "t2.micro".
	HaGwSize pulumi.StringPtrOutput `pulumi:"haGwSize"`
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringOutput `pulumi:"haImageVersion"`
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrOutput `pulumi:"haInsaneModeAz"`
	// LAN interface CIDR of the HA transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.18+.
	HaLanInterfaceCidr pulumi.StringOutput `pulumi:"haLanInterfaceCidr"`
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrOutput `pulumi:"haOobAvailabilityZone"`
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrOutput `pulumi:"haOobManagementSubnet"`
	// Private IP address of the HA transit gateway created.
	HaPrivateIp pulumi.StringOutput `pulumi:"haPrivateIp"`
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrOutput `pulumi:"haPrivateModeSubnetZone"`
	// Public IP address of the HA Transit Gateway.
	HaPublicIp pulumi.StringOutput `pulumi:"haPublicIp"`
	// HA security group used for the transit gateway.
	HaSecurityGroupId pulumi.StringOutput `pulumi:"haSecurityGroupId"`
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringOutput `pulumi:"haSoftwareVersion"`
	// HA Subnet CIDR. Required only if enabling HA for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24".
	HaSubnet pulumi.StringPtrOutput `pulumi:"haSubnet"`
	// HA Zone. Required if enabling HA for GCP gateway. Optional if enabling HA for Azure gateway. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrOutput `pulumi:"haZone"`
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringOutput `pulumi:"imageVersion"`
	// Specify true for [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) high performance gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrOutput `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrOutput `pulumi:"insaneModeAz"`
	// LAN interface CIDR of the transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.17.1+.
	LanInterfaceCidr pulumi.StringOutput `pulumi:"lanInterfaceCidr"`
	// LAN Private Subnet. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanPrivateSubnet pulumi.StringPtrOutput `pulumi:"lanPrivateSubnet"`
	// LAN VPC ID. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanVpcId pulumi.StringPtrOutput `pulumi:"lanVpcId"`
	// Learned CIDRs approval mode. Either "gateway" (approval on a per gateway basis) or "connection" (approval on a per connection basis). Default value: "gateway". Available as of provider version R2.18+.
	LearnedCidrsApprovalMode pulumi.StringPtrOutput `pulumi:"learnedCidrsApprovalMode"`
	// Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.
	LocalAsNumber pulumi.StringOutput `pulumi:"localAsNumber"`
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayOutput `pulumi:"monitorExcludeLists"`
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrOutput `pulumi:"oobAvailabilityZone"`
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrOutput `pulumi:"oobManagementSubnet"`
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Private IP address of the transit gateway created.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in Provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrOutput `pulumi:"privateModeLbVpcId"`
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrOutput `pulumi:"privateModeSubnetZone"`
	// Public IP address of the Transit Gateway created.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrOutput `pulumi:"rxQueueSize"`
	// Security group used for the transit gateway.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrOutput `pulumi:"singleAzHa"`
	// Enable "singleIp" mode Source NAT for this container. Valid values: true, false. **NOTE: Please see notes here in regards to changes to this argument in R2.10.**
	SingleIpSnat pulumi.BoolPtrOutput `pulumi:"singleIpSnat"`
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringOutput `pulumi:"softwareVersion"`
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina. Example: ["key1:value1","key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayOutput `pulumi:"tagLists"`
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The IPSec tunnel down detection time for the transit gateway.
	TunnelDetectionTime pulumi.IntOutput `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringOutput `pulumi:"vpcReg"`
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrOutput `pulumi:"zone"`
}

## Import

**transit_gateway** can be imported using the `gw_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitGateway:AviatrixTransitGateway test gw_name

```

func GetAviatrixTransitGateway

func GetAviatrixTransitGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitGatewayState, opts ...pulumi.ResourceOption) (*AviatrixTransitGateway, error)

GetAviatrixTransitGateway gets an existing AviatrixTransitGateway 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 NewAviatrixTransitGateway

func NewAviatrixTransitGateway(ctx *pulumi.Context,
	name string, args *AviatrixTransitGatewayArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitGateway, error)

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

func (*AviatrixTransitGateway) ElementType

func (*AviatrixTransitGateway) ElementType() reflect.Type

func (*AviatrixTransitGateway) ToAviatrixTransitGatewayOutput

func (i *AviatrixTransitGateway) ToAviatrixTransitGatewayOutput() AviatrixTransitGatewayOutput

func (*AviatrixTransitGateway) ToAviatrixTransitGatewayOutputWithContext

func (i *AviatrixTransitGateway) ToAviatrixTransitGatewayOutputWithContext(ctx context.Context) AviatrixTransitGatewayOutput

type AviatrixTransitGatewayArgs

type AviatrixTransitGatewayArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. Each interface has the following attributes:
	BgpLanInterfaces AviatrixTransitGatewayBgpLanInterfaceArrayInput
	// Number of interfaces that will be created for BGP over LAN enabled Azure transit. Valid value: 1~5 for FireNet case, 1~7 for Non-FireNet case. Default value: 1. Available as of provider version R2.22+.
	BgpLanInterfacesCount pulumi.IntPtrInput
	// Intended CIDR list to be advertised to external BGP router. Example: "10.2.0.0/16,10.4.0.0/16". Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	BgpManualSpokeAdvertiseCidrs pulumi.StringPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntInput
	// Specify Connected Transit status. If enabled, it allows spokes to run traffics to other spokes via transit gateway. Valid values: true, false. Default value: false.
	ConnectedTransit pulumi.BoolPtrInput
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// A list of comma-separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. Example: "10.0.0.0/16,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrInput
	// A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. To be effective, `enableAdvertiseTransitCidr` or firewall management access for a Transit FireNet gateway must be enabled. Example: ["10.0.0.0/16", "10.2.0.0/16"].
	CustomizedTransitVpcRoutes pulumi.StringArrayInput
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller version 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false. Available in provider version R2.17.1+.
	EnableActiveStandby pulumi.BoolPtrInput
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrInput
	// Switch to enable/disable advertise transit VPC network CIDR for a VGW connection. Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	EnableAdvertiseTransitCidr pulumi.BoolPtrInput
	// Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Must be enabled to create a BGP over LAN `AviatrixTransitExternalDeviceConn` resource with this Transit Gateway. Only valid for GCP (4), Azure (8), AzureGov (32) or AzureChina (2048). Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableBgpOverLan pulumi.BoolPtrInput
	// Enable [Egress Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_workflow.html#b-enable-transit-firenet-on-aviatrix-egress-transit-gateway). Valid values: true, false. Default value: false. Available in provider version R2.16.3+.
	EnableEgressTransitFirenet pulumi.BoolPtrInput
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Set to true to use gateway for legacy [AWS TGW-based FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) connection. Valid values: true, false. Default value: false. **NOTE: If previously using an older provider version R2.5 where attribute name was `enableFirenetInterfaces`, please see notes here.**
	EnableFirenet pulumi.BoolPtrInput
	// Enable FireNet interfaces with AWS Gateway Load Balancer. Only valid when `enableFirenet` or `enableTransitFirenet` are set to true and `cloudType` = 1 (AWS). Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableGatewayLoadBalancer pulumi.BoolPtrInput
	// Sign of readiness for AWS TGW connection. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Example: false.
	EnableHybridConnection pulumi.BoolPtrInput
	// Enable jumbo frames for this transit gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable/disable encrypted transit approval for transit gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Enable Multi-tier Transit mode on transit gateway. When enabled, transit gateway will propagate routes it receives from its transit peering peer to other transit peering peers. `localAsNumber` is required. Default value: false. Available as of provider version R2.19+.
	EnableMultiTierTransit pulumi.BoolPtrInput
	// Enable preserve asPath when advertising manual summary cidrs on transit gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	// },
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
	// Enable S2C receive packet CPU re-balancing on transit gateway. Valid values: true, false. Default value: false. Available in provider version R2.21.2+.
	EnableS2cRxBalancing pulumi.BoolPtrInput
	// Enable transit gateway for segmentation. Valid values: true, false. Default: false.
	EnableSegmentation pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Set to true to use gateway for [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) connection. Valid values: true, false. Default value: false. Available in provider version R2.12+.
	EnableTransitFirenet pulumi.BoolPtrInput
	// Enable summarize CIDR to TGW. Valid values: true, false. Default value: false.
	EnableTransitSummarizeCidrToTgw pulumi.BoolPtrInput
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// A list of comma-separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. Example: "10.4.0.0/16,10.5.0.0/16".
	ExcludedAdvertisedSpokeRoutes pulumi.StringPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// A list of comma-separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. Example: "10.2.0.0/16,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringInput
	// Size of the gateway instance. Example: AWS: "t2.large", Azure/AzureGov: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1", AWSGov: "t2.large", AWSChina: "t2.large", AzureChina: "Standard_A0".
	GwSize pulumi.StringInput
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit HA. Each interface has the following attributes:
	HaBgpLanInterfaces AviatrixTransitGatewayHaBgpLanInterfaceArrayInput
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringPtrInput
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if enabling HA. Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrInput
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrInput
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrInput
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringPtrInput
	// HA Subnet CIDR. Required only if enabling HA for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24".
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required if enabling HA for GCP gateway. Optional if enabling HA for Azure gateway. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// Specify true for [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) high performance gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// LAN Private Subnet. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanPrivateSubnet pulumi.StringPtrInput
	// LAN VPC ID. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanVpcId pulumi.StringPtrInput
	// Learned CIDRs approval mode. Either "gateway" (approval on a per gateway basis) or "connection" (approval on a per connection basis). Default value: "gateway". Available as of provider version R2.18+.
	LearnedCidrsApprovalMode pulumi.StringPtrInput
	// Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.
	LocalAsNumber pulumi.StringPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayInput
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrInput
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrInput
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayInput
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in Provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrInput
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrInput
	// Enable "singleIp" mode Source NAT for this container. Valid values: true, false. **NOTE: Please see notes here in regards to changes to this argument in R2.10.**
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina. Example: ["key1:value1","key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// The IPSec tunnel down detection time for the transit gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringInput
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixTransitGateway resource.

func (AviatrixTransitGatewayArgs) ElementType

func (AviatrixTransitGatewayArgs) ElementType() reflect.Type

type AviatrixTransitGatewayArray

type AviatrixTransitGatewayArray []AviatrixTransitGatewayInput

func (AviatrixTransitGatewayArray) ElementType

func (AviatrixTransitGatewayArray) ToAviatrixTransitGatewayArrayOutput

func (i AviatrixTransitGatewayArray) ToAviatrixTransitGatewayArrayOutput() AviatrixTransitGatewayArrayOutput

func (AviatrixTransitGatewayArray) ToAviatrixTransitGatewayArrayOutputWithContext

func (i AviatrixTransitGatewayArray) ToAviatrixTransitGatewayArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayArrayOutput

type AviatrixTransitGatewayArrayInput

type AviatrixTransitGatewayArrayInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayArrayOutput() AviatrixTransitGatewayArrayOutput
	ToAviatrixTransitGatewayArrayOutputWithContext(context.Context) AviatrixTransitGatewayArrayOutput
}

AviatrixTransitGatewayArrayInput is an input type that accepts AviatrixTransitGatewayArray and AviatrixTransitGatewayArrayOutput values. You can construct a concrete instance of `AviatrixTransitGatewayArrayInput` via:

AviatrixTransitGatewayArray{ AviatrixTransitGatewayArgs{...} }

type AviatrixTransitGatewayArrayOutput

type AviatrixTransitGatewayArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayArrayOutput) ElementType

func (AviatrixTransitGatewayArrayOutput) Index

func (AviatrixTransitGatewayArrayOutput) ToAviatrixTransitGatewayArrayOutput

func (o AviatrixTransitGatewayArrayOutput) ToAviatrixTransitGatewayArrayOutput() AviatrixTransitGatewayArrayOutput

func (AviatrixTransitGatewayArrayOutput) ToAviatrixTransitGatewayArrayOutputWithContext

func (o AviatrixTransitGatewayArrayOutput) ToAviatrixTransitGatewayArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayArrayOutput

type AviatrixTransitGatewayBgpLanInterface

type AviatrixTransitGatewayBgpLanInterface struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type AviatrixTransitGatewayBgpLanInterfaceArgs

type AviatrixTransitGatewayBgpLanInterfaceArgs struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (AviatrixTransitGatewayBgpLanInterfaceArgs) ElementType

func (AviatrixTransitGatewayBgpLanInterfaceArgs) ToAviatrixTransitGatewayBgpLanInterfaceOutput

func (i AviatrixTransitGatewayBgpLanInterfaceArgs) ToAviatrixTransitGatewayBgpLanInterfaceOutput() AviatrixTransitGatewayBgpLanInterfaceOutput

func (AviatrixTransitGatewayBgpLanInterfaceArgs) ToAviatrixTransitGatewayBgpLanInterfaceOutputWithContext

func (i AviatrixTransitGatewayBgpLanInterfaceArgs) ToAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(ctx context.Context) AviatrixTransitGatewayBgpLanInterfaceOutput

type AviatrixTransitGatewayBgpLanInterfaceArray

type AviatrixTransitGatewayBgpLanInterfaceArray []AviatrixTransitGatewayBgpLanInterfaceInput

func (AviatrixTransitGatewayBgpLanInterfaceArray) ElementType

func (AviatrixTransitGatewayBgpLanInterfaceArray) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (i AviatrixTransitGatewayBgpLanInterfaceArray) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutput() AviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (AviatrixTransitGatewayBgpLanInterfaceArray) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext

func (i AviatrixTransitGatewayBgpLanInterfaceArray) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayBgpLanInterfaceArrayInput

type AviatrixTransitGatewayBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayBgpLanInterfaceArrayOutput() AviatrixTransitGatewayBgpLanInterfaceArrayOutput
	ToAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(context.Context) AviatrixTransitGatewayBgpLanInterfaceArrayOutput
}

AviatrixTransitGatewayBgpLanInterfaceArrayInput is an input type that accepts AviatrixTransitGatewayBgpLanInterfaceArray and AviatrixTransitGatewayBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `AviatrixTransitGatewayBgpLanInterfaceArrayInput` via:

AviatrixTransitGatewayBgpLanInterfaceArray{ AviatrixTransitGatewayBgpLanInterfaceArgs{...} }

type AviatrixTransitGatewayBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayBgpLanInterfaceArrayOutput) ElementType

func (AviatrixTransitGatewayBgpLanInterfaceArrayOutput) Index

func (AviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (o AviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutput() AviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (AviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext

func (o AviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayBgpLanInterfaceInput

type AviatrixTransitGatewayBgpLanInterfaceInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayBgpLanInterfaceOutput() AviatrixTransitGatewayBgpLanInterfaceOutput
	ToAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(context.Context) AviatrixTransitGatewayBgpLanInterfaceOutput
}

AviatrixTransitGatewayBgpLanInterfaceInput is an input type that accepts AviatrixTransitGatewayBgpLanInterfaceArgs and AviatrixTransitGatewayBgpLanInterfaceOutput values. You can construct a concrete instance of `AviatrixTransitGatewayBgpLanInterfaceInput` via:

AviatrixTransitGatewayBgpLanInterfaceArgs{...}

type AviatrixTransitGatewayBgpLanInterfaceOutput

type AviatrixTransitGatewayBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayBgpLanInterfaceOutput) ElementType

func (AviatrixTransitGatewayBgpLanInterfaceOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (AviatrixTransitGatewayBgpLanInterfaceOutput) ToAviatrixTransitGatewayBgpLanInterfaceOutput

func (o AviatrixTransitGatewayBgpLanInterfaceOutput) ToAviatrixTransitGatewayBgpLanInterfaceOutput() AviatrixTransitGatewayBgpLanInterfaceOutput

func (AviatrixTransitGatewayBgpLanInterfaceOutput) ToAviatrixTransitGatewayBgpLanInterfaceOutputWithContext

func (o AviatrixTransitGatewayBgpLanInterfaceOutput) ToAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(ctx context.Context) AviatrixTransitGatewayBgpLanInterfaceOutput

func (AviatrixTransitGatewayBgpLanInterfaceOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

type AviatrixTransitGatewayHaBgpLanInterface

type AviatrixTransitGatewayHaBgpLanInterface struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type AviatrixTransitGatewayHaBgpLanInterfaceArgs

type AviatrixTransitGatewayHaBgpLanInterfaceArgs struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (AviatrixTransitGatewayHaBgpLanInterfaceArgs) ElementType

func (AviatrixTransitGatewayHaBgpLanInterfaceArgs) ToAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (i AviatrixTransitGatewayHaBgpLanInterfaceArgs) ToAviatrixTransitGatewayHaBgpLanInterfaceOutput() AviatrixTransitGatewayHaBgpLanInterfaceOutput

func (AviatrixTransitGatewayHaBgpLanInterfaceArgs) ToAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext

func (i AviatrixTransitGatewayHaBgpLanInterfaceArgs) ToAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(ctx context.Context) AviatrixTransitGatewayHaBgpLanInterfaceOutput

type AviatrixTransitGatewayHaBgpLanInterfaceArray

type AviatrixTransitGatewayHaBgpLanInterfaceArray []AviatrixTransitGatewayHaBgpLanInterfaceInput

func (AviatrixTransitGatewayHaBgpLanInterfaceArray) ElementType

func (AviatrixTransitGatewayHaBgpLanInterfaceArray) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (i AviatrixTransitGatewayHaBgpLanInterfaceArray) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput() AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (AviatrixTransitGatewayHaBgpLanInterfaceArray) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext

func (i AviatrixTransitGatewayHaBgpLanInterfaceArray) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayHaBgpLanInterfaceArrayInput

type AviatrixTransitGatewayHaBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput() AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput
	ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(context.Context) AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput
}

AviatrixTransitGatewayHaBgpLanInterfaceArrayInput is an input type that accepts AviatrixTransitGatewayHaBgpLanInterfaceArray and AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `AviatrixTransitGatewayHaBgpLanInterfaceArrayInput` via:

AviatrixTransitGatewayHaBgpLanInterfaceArray{ AviatrixTransitGatewayHaBgpLanInterfaceArgs{...} }

type AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ElementType

func (AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) Index

func (AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (o AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput() AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext

func (o AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type AviatrixTransitGatewayHaBgpLanInterfaceInput

type AviatrixTransitGatewayHaBgpLanInterfaceInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayHaBgpLanInterfaceOutput() AviatrixTransitGatewayHaBgpLanInterfaceOutput
	ToAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(context.Context) AviatrixTransitGatewayHaBgpLanInterfaceOutput
}

AviatrixTransitGatewayHaBgpLanInterfaceInput is an input type that accepts AviatrixTransitGatewayHaBgpLanInterfaceArgs and AviatrixTransitGatewayHaBgpLanInterfaceOutput values. You can construct a concrete instance of `AviatrixTransitGatewayHaBgpLanInterfaceInput` via:

AviatrixTransitGatewayHaBgpLanInterfaceArgs{...}

type AviatrixTransitGatewayHaBgpLanInterfaceOutput

type AviatrixTransitGatewayHaBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayHaBgpLanInterfaceOutput) ElementType

func (AviatrixTransitGatewayHaBgpLanInterfaceOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (AviatrixTransitGatewayHaBgpLanInterfaceOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (o AviatrixTransitGatewayHaBgpLanInterfaceOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceOutput() AviatrixTransitGatewayHaBgpLanInterfaceOutput

func (AviatrixTransitGatewayHaBgpLanInterfaceOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext

func (o AviatrixTransitGatewayHaBgpLanInterfaceOutput) ToAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(ctx context.Context) AviatrixTransitGatewayHaBgpLanInterfaceOutput

func (AviatrixTransitGatewayHaBgpLanInterfaceOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

type AviatrixTransitGatewayInput

type AviatrixTransitGatewayInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayOutput() AviatrixTransitGatewayOutput
	ToAviatrixTransitGatewayOutputWithContext(ctx context.Context) AviatrixTransitGatewayOutput
}

type AviatrixTransitGatewayMap

type AviatrixTransitGatewayMap map[string]AviatrixTransitGatewayInput

func (AviatrixTransitGatewayMap) ElementType

func (AviatrixTransitGatewayMap) ElementType() reflect.Type

func (AviatrixTransitGatewayMap) ToAviatrixTransitGatewayMapOutput

func (i AviatrixTransitGatewayMap) ToAviatrixTransitGatewayMapOutput() AviatrixTransitGatewayMapOutput

func (AviatrixTransitGatewayMap) ToAviatrixTransitGatewayMapOutputWithContext

func (i AviatrixTransitGatewayMap) ToAviatrixTransitGatewayMapOutputWithContext(ctx context.Context) AviatrixTransitGatewayMapOutput

type AviatrixTransitGatewayMapInput

type AviatrixTransitGatewayMapInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayMapOutput() AviatrixTransitGatewayMapOutput
	ToAviatrixTransitGatewayMapOutputWithContext(context.Context) AviatrixTransitGatewayMapOutput
}

AviatrixTransitGatewayMapInput is an input type that accepts AviatrixTransitGatewayMap and AviatrixTransitGatewayMapOutput values. You can construct a concrete instance of `AviatrixTransitGatewayMapInput` via:

AviatrixTransitGatewayMap{ "key": AviatrixTransitGatewayArgs{...} }

type AviatrixTransitGatewayMapOutput

type AviatrixTransitGatewayMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayMapOutput) ElementType

func (AviatrixTransitGatewayMapOutput) MapIndex

func (AviatrixTransitGatewayMapOutput) ToAviatrixTransitGatewayMapOutput

func (o AviatrixTransitGatewayMapOutput) ToAviatrixTransitGatewayMapOutput() AviatrixTransitGatewayMapOutput

func (AviatrixTransitGatewayMapOutput) ToAviatrixTransitGatewayMapOutputWithContext

func (o AviatrixTransitGatewayMapOutput) ToAviatrixTransitGatewayMapOutputWithContext(ctx context.Context) AviatrixTransitGatewayMapOutput

type AviatrixTransitGatewayOutput

type AviatrixTransitGatewayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayOutput) AccountName

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixTransitGatewayOutput) AllocateNewEip

When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.

func (AviatrixTransitGatewayOutput) ApprovedLearnedCidrs

func (o AviatrixTransitGatewayOutput) ApprovedLearnedCidrs() pulumi.StringArrayOutput

A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.

func (AviatrixTransitGatewayOutput) AvailabilityDomain

func (o AviatrixTransitGatewayOutput) AvailabilityDomain() pulumi.StringOutput

Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixTransitGatewayOutput) AzureEipNameResourceGroup

func (o AviatrixTransitGatewayOutput) AzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP Address resource and its resource group in Azure to be assigned to the Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixTransitGatewayOutput) BgpEcmp

Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.

func (AviatrixTransitGatewayOutput) BgpHoldTime

BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.

func (AviatrixTransitGatewayOutput) BgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. Each interface has the following attributes:

func (AviatrixTransitGatewayOutput) BgpLanInterfacesCount

func (o AviatrixTransitGatewayOutput) BgpLanInterfacesCount() pulumi.IntPtrOutput

Number of interfaces that will be created for BGP over LAN enabled Azure transit. Valid value: 1~5 for FireNet case, 1~7 for Non-FireNet case. Default value: 1. Available as of provider version R2.22+.

func (AviatrixTransitGatewayOutput) BgpLanIpLists

List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.

func (AviatrixTransitGatewayOutput) BgpManualSpokeAdvertiseCidrs

func (o AviatrixTransitGatewayOutput) BgpManualSpokeAdvertiseCidrs() pulumi.StringPtrOutput

Intended CIDR list to be advertised to external BGP router. Example: "10.2.0.0/16,10.4.0.0/16". Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**

func (AviatrixTransitGatewayOutput) BgpPollingTime

BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".

func (AviatrixTransitGatewayOutput) CloudInstanceId

func (o AviatrixTransitGatewayOutput) CloudInstanceId() pulumi.StringOutput

Cloud instance ID of the transit gateway.

func (AviatrixTransitGatewayOutput) CloudType

Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.

func (AviatrixTransitGatewayOutput) ConnectedTransit

func (o AviatrixTransitGatewayOutput) ConnectedTransit() pulumi.BoolPtrOutput

Specify Connected Transit status. If enabled, it allows spokes to run traffics to other spokes via transit gateway. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) CustomerManagedKeys

func (o AviatrixTransitGatewayOutput) CustomerManagedKeys() pulumi.StringPtrOutput

Customer managed key ID.

func (AviatrixTransitGatewayOutput) CustomizedSpokeVpcRoutes

func (o AviatrixTransitGatewayOutput) CustomizedSpokeVpcRoutes() pulumi.StringPtrOutput

A list of comma-separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. Example: "10.0.0.0/16,10.2.0.0/16".

func (AviatrixTransitGatewayOutput) CustomizedTransitVpcRoutes

func (o AviatrixTransitGatewayOutput) CustomizedTransitVpcRoutes() pulumi.StringArrayOutput

A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. To be effective, `enableAdvertiseTransitCidr` or firewall management access for a Transit FireNet gateway must be enabled. Example: ["10.0.0.0/16", "10.2.0.0/16"].

func (AviatrixTransitGatewayOutput) Eip

Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller version 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixTransitGatewayOutput) ElementType

func (AviatrixTransitGatewayOutput) EnableActiveStandby

func (o AviatrixTransitGatewayOutput) EnableActiveStandby() pulumi.BoolPtrOutput

Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false. Available in provider version R2.17.1+.

func (AviatrixTransitGatewayOutput) EnableActiveStandbyPreemptive

func (o AviatrixTransitGatewayOutput) EnableActiveStandbyPreemptive() pulumi.BoolPtrOutput

Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) EnableAdvertiseTransitCidr

func (o AviatrixTransitGatewayOutput) EnableAdvertiseTransitCidr() pulumi.BoolPtrOutput

Switch to enable/disable advertise transit VPC network CIDR for a VGW connection. Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**

func (AviatrixTransitGatewayOutput) EnableBgpOverLan

func (o AviatrixTransitGatewayOutput) EnableBgpOverLan() pulumi.BoolPtrOutput

Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Must be enabled to create a BGP over LAN `AviatrixTransitExternalDeviceConn` resource with this Transit Gateway. Only valid for GCP (4), Azure (8), AzureGov (32) or AzureChina (2048). Valid values: true or false. Default value: false. Available as of provider version R2.18+.

func (AviatrixTransitGatewayOutput) EnableEgressTransitFirenet

func (o AviatrixTransitGatewayOutput) EnableEgressTransitFirenet() pulumi.BoolPtrOutput

Enable [Egress Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_workflow.html#b-enable-transit-firenet-on-aviatrix-egress-transit-gateway). Valid values: true, false. Default value: false. Available in provider version R2.16.3+.

func (AviatrixTransitGatewayOutput) EnableEncryptVolume

func (o AviatrixTransitGatewayOutput) EnableEncryptVolume() pulumi.BoolPtrOutput

Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) EnableFirenet

Set to true to use gateway for legacy [AWS TGW-based FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) connection. Valid values: true, false. Default value: false. **NOTE: If previously using an older provider version R2.5 where attribute name was `enableFirenetInterfaces`, please see notes here.**

func (AviatrixTransitGatewayOutput) EnableGatewayLoadBalancer

func (o AviatrixTransitGatewayOutput) EnableGatewayLoadBalancer() pulumi.BoolPtrOutput

Enable FireNet interfaces with AWS Gateway Load Balancer. Only valid when `enableFirenet` or `enableTransitFirenet` are set to true and `cloudType` = 1 (AWS). Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.

func (AviatrixTransitGatewayOutput) EnableHybridConnection

func (o AviatrixTransitGatewayOutput) EnableHybridConnection() pulumi.BoolPtrOutput

Sign of readiness for AWS TGW connection. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Example: false.

func (AviatrixTransitGatewayOutput) EnableJumboFrame

func (o AviatrixTransitGatewayOutput) EnableJumboFrame() pulumi.BoolPtrOutput

Enable jumbo frames for this transit gateway. Default value is true.

func (AviatrixTransitGatewayOutput) EnableLearnedCidrsApproval

func (o AviatrixTransitGatewayOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Switch to enable/disable encrypted transit approval for transit gateway. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) EnableMonitorGatewaySubnets

func (o AviatrixTransitGatewayOutput) EnableMonitorGatewaySubnets() pulumi.BoolPtrOutput

If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.

func (AviatrixTransitGatewayOutput) EnableMultiTierTransit

func (o AviatrixTransitGatewayOutput) EnableMultiTierTransit() pulumi.BoolPtrOutput

Enable Multi-tier Transit mode on transit gateway. When enabled, transit gateway will propagate routes it receives from its transit peering peer to other transit peering peers. `localAsNumber` is required. Default value: false. Available as of provider version R2.19+.

func (AviatrixTransitGatewayOutput) EnablePreserveAsPath

func (o AviatrixTransitGatewayOutput) EnablePreserveAsPath() pulumi.BoolPtrOutput

Enable preserve asPath when advertising manual summary cidrs on transit gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+ },

func (AviatrixTransitGatewayOutput) EnablePrivateOob

func (o AviatrixTransitGatewayOutput) EnablePrivateOob() pulumi.BoolPtrOutput

Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) EnableS2cRxBalancing

func (o AviatrixTransitGatewayOutput) EnableS2cRxBalancing() pulumi.BoolPtrOutput

Enable S2C receive packet CPU re-balancing on transit gateway. Valid values: true, false. Default value: false. Available in provider version R2.21.2+.

func (AviatrixTransitGatewayOutput) EnableSegmentation

func (o AviatrixTransitGatewayOutput) EnableSegmentation() pulumi.BoolPtrOutput

Enable transit gateway for segmentation. Valid values: true, false. Default: false.

func (AviatrixTransitGatewayOutput) EnableSpotInstance

func (o AviatrixTransitGatewayOutput) EnableSpotInstance() pulumi.BoolPtrOutput

Enable spot instance. NOT supported for production deployment.

func (AviatrixTransitGatewayOutput) EnableTransitFirenet

func (o AviatrixTransitGatewayOutput) EnableTransitFirenet() pulumi.BoolPtrOutput

Set to true to use gateway for [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) connection. Valid values: true, false. Default value: false. Available in provider version R2.12+.

func (AviatrixTransitGatewayOutput) EnableTransitSummarizeCidrToTgw

func (o AviatrixTransitGatewayOutput) EnableTransitSummarizeCidrToTgw() pulumi.BoolPtrOutput

Enable summarize CIDR to TGW. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) EnableVpcDnsServer

func (o AviatrixTransitGatewayOutput) EnableVpcDnsServer() pulumi.BoolPtrOutput

Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) ExcludedAdvertisedSpokeRoutes

func (o AviatrixTransitGatewayOutput) ExcludedAdvertisedSpokeRoutes() pulumi.StringPtrOutput

A list of comma-separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. Example: "10.4.0.0/16,10.5.0.0/16".

func (AviatrixTransitGatewayOutput) FaultDomain

Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixTransitGatewayOutput) FilteredSpokeVpcRoutes

func (o AviatrixTransitGatewayOutput) FilteredSpokeVpcRoutes() pulumi.StringPtrOutput

A list of comma-separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. Example: "10.2.0.0/16,10.3.0.0/16".

func (AviatrixTransitGatewayOutput) GwName

Name of the gateway which is going to be created.

func (AviatrixTransitGatewayOutput) GwSize

Size of the gateway instance. Example: AWS: "t2.large", Azure/AzureGov: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1", AWSGov: "t2.large", AWSChina: "t2.large", AzureChina: "Standard_A0".

func (AviatrixTransitGatewayOutput) HaAvailabilityDomain

func (o AviatrixTransitGatewayOutput) HaAvailabilityDomain() pulumi.StringOutput

HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixTransitGatewayOutput) HaAzureEipNameResourceGroup

func (o AviatrixTransitGatewayOutput) HaAzureEipNameResourceGroup() pulumi.StringOutput

Name of public IP Address resource and its resource group in Azure to be assigned to the HA Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.

func (AviatrixTransitGatewayOutput) HaBgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit HA. Each interface has the following attributes:

func (AviatrixTransitGatewayOutput) HaBgpLanIpLists

List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.

func (AviatrixTransitGatewayOutput) HaCloudInstanceId

func (o AviatrixTransitGatewayOutput) HaCloudInstanceId() pulumi.StringOutput

Cloud instance ID of the HA transit gateway.

func (AviatrixTransitGatewayOutput) HaEip

Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.

func (AviatrixTransitGatewayOutput) HaFaultDomain

HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.

func (AviatrixTransitGatewayOutput) HaGwName

Aviatrix transit gateway unique name of HA transit gateway.

func (AviatrixTransitGatewayOutput) HaGwSize

HA Gateway Size. Mandatory if enabling HA. Example: "t2.micro".

func (AviatrixTransitGatewayOutput) HaImageVersion

The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixTransitGatewayOutput) HaInsaneModeAz

AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".

func (AviatrixTransitGatewayOutput) HaLanInterfaceCidr

func (o AviatrixTransitGatewayOutput) HaLanInterfaceCidr() pulumi.StringOutput

LAN interface CIDR of the HA transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.18+.

func (AviatrixTransitGatewayOutput) HaOobAvailabilityZone

func (o AviatrixTransitGatewayOutput) HaOobAvailabilityZone() pulumi.StringPtrOutput

HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".

func (AviatrixTransitGatewayOutput) HaOobManagementSubnet

func (o AviatrixTransitGatewayOutput) HaOobManagementSubnet() pulumi.StringPtrOutput

HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".

func (AviatrixTransitGatewayOutput) HaPrivateIp

Private IP address of the HA transit gateway created.

func (AviatrixTransitGatewayOutput) HaPrivateModeSubnetZone

func (o AviatrixTransitGatewayOutput) HaPrivateModeSubnetZone() pulumi.StringPtrOutput

Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.

func (AviatrixTransitGatewayOutput) HaPublicIp

Public IP address of the HA Transit Gateway.

func (AviatrixTransitGatewayOutput) HaSecurityGroupId

func (o AviatrixTransitGatewayOutput) HaSecurityGroupId() pulumi.StringOutput

HA security group used for the transit gateway.

func (AviatrixTransitGatewayOutput) HaSoftwareVersion

func (o AviatrixTransitGatewayOutput) HaSoftwareVersion() pulumi.StringOutput

The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixTransitGatewayOutput) HaSubnet

HA Subnet CIDR. Required only if enabling HA for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24".

func (AviatrixTransitGatewayOutput) HaZone

HA Zone. Required if enabling HA for GCP gateway. Optional if enabling HA for Azure gateway. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.

func (AviatrixTransitGatewayOutput) ImageVersion

The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.

func (AviatrixTransitGatewayOutput) InsaneMode

Specify true for [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) high performance gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.

func (AviatrixTransitGatewayOutput) InsaneModeAz

AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".

func (AviatrixTransitGatewayOutput) LanInterfaceCidr

func (o AviatrixTransitGatewayOutput) LanInterfaceCidr() pulumi.StringOutput

LAN interface CIDR of the transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.17.1+.

func (AviatrixTransitGatewayOutput) LanPrivateSubnet

LAN Private Subnet. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.

func (AviatrixTransitGatewayOutput) LanVpcId

LAN VPC ID. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.

func (AviatrixTransitGatewayOutput) LearnedCidrsApprovalMode

func (o AviatrixTransitGatewayOutput) LearnedCidrsApprovalMode() pulumi.StringPtrOutput

Learned CIDRs approval mode. Either "gateway" (approval on a per gateway basis) or "connection" (approval on a per connection basis). Default value: "gateway". Available as of provider version R2.18+.

func (AviatrixTransitGatewayOutput) LocalAsNumber

Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.

func (AviatrixTransitGatewayOutput) MonitorExcludeLists

func (o AviatrixTransitGatewayOutput) MonitorExcludeLists() pulumi.StringArrayOutput

Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.

func (AviatrixTransitGatewayOutput) OobAvailabilityZone

func (o AviatrixTransitGatewayOutput) OobAvailabilityZone() pulumi.StringPtrOutput

OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".

func (AviatrixTransitGatewayOutput) OobManagementSubnet

func (o AviatrixTransitGatewayOutput) OobManagementSubnet() pulumi.StringPtrOutput

OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".

func (AviatrixTransitGatewayOutput) PrependAsPaths

List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.

func (AviatrixTransitGatewayOutput) PrivateIp

Private IP address of the transit gateway created.

func (AviatrixTransitGatewayOutput) PrivateModeLbVpcId

func (o AviatrixTransitGatewayOutput) PrivateModeLbVpcId() pulumi.StringPtrOutput

VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in Provider version R2.23+.

func (AviatrixTransitGatewayOutput) PrivateModeSubnetZone

func (o AviatrixTransitGatewayOutput) PrivateModeSubnetZone() pulumi.StringPtrOutput

Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.

func (AviatrixTransitGatewayOutput) PublicIp

Public IP address of the Transit Gateway created.

func (AviatrixTransitGatewayOutput) RxQueueSize

Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.

func (AviatrixTransitGatewayOutput) SecurityGroupId

func (o AviatrixTransitGatewayOutput) SecurityGroupId() pulumi.StringOutput

Security group used for the transit gateway.

func (AviatrixTransitGatewayOutput) SingleAzHa

Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.

func (AviatrixTransitGatewayOutput) SingleIpSnat

Enable "singleIp" mode Source NAT for this container. Valid values: true, false. **NOTE: Please see notes here in regards to changes to this argument in R2.10.**

func (AviatrixTransitGatewayOutput) SoftwareVersion

func (o AviatrixTransitGatewayOutput) SoftwareVersion() pulumi.StringOutput

The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.

func (AviatrixTransitGatewayOutput) SpotPrice

Price for spot instance. NOT supported for production deployment.

func (AviatrixTransitGatewayOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (AviatrixTransitGatewayOutput) TagLists deprecated

(Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina. Example: ["key1:value1","key2:value2"].

Deprecated: Use tags instead.

func (AviatrixTransitGatewayOutput) Tags

Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.

func (AviatrixTransitGatewayOutput) ToAviatrixTransitGatewayOutput

func (o AviatrixTransitGatewayOutput) ToAviatrixTransitGatewayOutput() AviatrixTransitGatewayOutput

func (AviatrixTransitGatewayOutput) ToAviatrixTransitGatewayOutputWithContext

func (o AviatrixTransitGatewayOutput) ToAviatrixTransitGatewayOutputWithContext(ctx context.Context) AviatrixTransitGatewayOutput

func (AviatrixTransitGatewayOutput) TunnelDetectionTime

func (o AviatrixTransitGatewayOutput) TunnelDetectionTime() pulumi.IntOutput

The IPSec tunnel down detection time for the transit gateway.

func (AviatrixTransitGatewayOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

func (AviatrixTransitGatewayOutput) VpcReg

Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".

func (AviatrixTransitGatewayOutput) Zone

Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.

type AviatrixTransitGatewayPeering

type AviatrixTransitGatewayPeering struct {
	pulumi.CustomResourceState

	// Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid `tunnelCount`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Boolean. Default: false. Available as of provider version R2.19+.
	EnableInsaneModeEncryptionOverInternet pulumi.BoolPtrOutput `pulumi:"enableInsaneModeEncryptionOverInternet"`
	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrOutput `pulumi:"enableMaxPerformance"`
	// Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available in provider version R2.17.1+.
	EnablePeeringOverPrivateNetwork pulumi.BoolPtrOutput `pulumi:"enablePeeringOverPrivateNetwork"`
	// Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with `enablePeeringOverPrivateNetwork`. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available as of provider version R2.18+.
	EnableSingleTunnelMode pulumi.BoolPtrOutput `pulumi:"enableSingleTunnelMode"`
	// List of excluded network CIDRs for the first transit gateway.
	Gateway1ExcludedNetworkCidrs pulumi.StringArrayOutput `pulumi:"gateway1ExcludedNetworkCidrs"`
	// List of excluded TGW connections for the first transit gateway.
	Gateway1ExcludedTgwConnections pulumi.StringArrayOutput `pulumi:"gateway1ExcludedTgwConnections"`
	// List of excluded network CIDRs for the second transit gateway.
	Gateway2ExcludedNetworkCidrs pulumi.StringArrayOutput `pulumi:"gateway2ExcludedNetworkCidrs"`
	// List of excluded TGW connections for the second transit gateway.
	Gateway2ExcludedTgwConnections pulumi.StringArrayOutput `pulumi:"gateway2ExcludedTgwConnections"`
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name1. Available in provider version R2.17.2+.
	PrependAsPath1s pulumi.StringArrayOutput `pulumi:"prependAsPath1s"`
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name2. Available in provider version R2.17.2+.
	PrependAsPath2s pulumi.StringArrayOutput `pulumi:"prependAsPath2s"`
	// The first transit gateway name to make a peer pair.
	TransitGatewayName1 pulumi.StringOutput `pulumi:"transitGatewayName1"`
	// The second transit gateway name to make a peer pair.
	TransitGatewayName2 pulumi.StringOutput `pulumi:"transitGatewayName2"`
	// Advanced option. Number of public tunnels. Required with `enableInsaneModeEncryptionOverInternet`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+.
	TunnelCount pulumi.IntPtrOutput `pulumi:"tunnelCount"`
}

The **aviatrix_transit_gateway_peering** resource allows the creation and management of peerings between Aviatrix transit gateways.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransitGatewayPeering(ctx, "testTransitGatewayPeering", &aviatrix.AviatrixTransitGatewayPeeringArgs{
			EnableInsaneModeEncryptionOverInternet: pulumi.Bool(false),
			EnablePeeringOverPrivateNetwork:        pulumi.Bool(false),
			Gateway1ExcludedNetworkCidrs: pulumi.StringArray{
				pulumi.String("10.0.0.48/28"),
			},
			Gateway1ExcludedTgwConnections: pulumi.StringArray{
				pulumi.String("vpn_connection_a"),
			},
			Gateway2ExcludedNetworkCidrs: pulumi.StringArray{
				pulumi.String("10.0.0.48/28"),
			},
			Gateway2ExcludedTgwConnections: pulumi.StringArray{
				pulumi.String("vpn_connection_b"),
			},
			PrependAsPath1s: pulumi.StringArray{
				pulumi.String("65001"),
				pulumi.String("65001"),
				pulumi.String("65001"),
			},
			PrependAsPath2s: pulumi.StringArray{
				pulumi.String("65002"),
			},
			TransitGatewayName1: pulumi.String("transit-Gw1"),
			TransitGatewayName2: pulumi.String("transit-Gw2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**transit_gateway_peering** can be imported using the `transit_gateway_name1` and `transit_gateway_name2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitGatewayPeering:AviatrixTransitGatewayPeering test transit_gateway_name1~transit_gateway_name2

```

func GetAviatrixTransitGatewayPeering

func GetAviatrixTransitGatewayPeering(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitGatewayPeeringState, opts ...pulumi.ResourceOption) (*AviatrixTransitGatewayPeering, error)

GetAviatrixTransitGatewayPeering gets an existing AviatrixTransitGatewayPeering 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 NewAviatrixTransitGatewayPeering

func NewAviatrixTransitGatewayPeering(ctx *pulumi.Context,
	name string, args *AviatrixTransitGatewayPeeringArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitGatewayPeering, error)

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

func (*AviatrixTransitGatewayPeering) ElementType

func (*AviatrixTransitGatewayPeering) ToAviatrixTransitGatewayPeeringOutput

func (i *AviatrixTransitGatewayPeering) ToAviatrixTransitGatewayPeeringOutput() AviatrixTransitGatewayPeeringOutput

func (*AviatrixTransitGatewayPeering) ToAviatrixTransitGatewayPeeringOutputWithContext

func (i *AviatrixTransitGatewayPeering) ToAviatrixTransitGatewayPeeringOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringOutput

type AviatrixTransitGatewayPeeringArgs

type AviatrixTransitGatewayPeeringArgs struct {
	// Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid `tunnelCount`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Boolean. Default: false. Available as of provider version R2.19+.
	EnableInsaneModeEncryptionOverInternet pulumi.BoolPtrInput
	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrInput
	// Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available in provider version R2.17.1+.
	EnablePeeringOverPrivateNetwork pulumi.BoolPtrInput
	// Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with `enablePeeringOverPrivateNetwork`. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available as of provider version R2.18+.
	EnableSingleTunnelMode pulumi.BoolPtrInput
	// List of excluded network CIDRs for the first transit gateway.
	Gateway1ExcludedNetworkCidrs pulumi.StringArrayInput
	// List of excluded TGW connections for the first transit gateway.
	Gateway1ExcludedTgwConnections pulumi.StringArrayInput
	// List of excluded network CIDRs for the second transit gateway.
	Gateway2ExcludedNetworkCidrs pulumi.StringArrayInput
	// List of excluded TGW connections for the second transit gateway.
	Gateway2ExcludedTgwConnections pulumi.StringArrayInput
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name1. Available in provider version R2.17.2+.
	PrependAsPath1s pulumi.StringArrayInput
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name2. Available in provider version R2.17.2+.
	PrependAsPath2s pulumi.StringArrayInput
	// The first transit gateway name to make a peer pair.
	TransitGatewayName1 pulumi.StringInput
	// The second transit gateway name to make a peer pair.
	TransitGatewayName2 pulumi.StringInput
	// Advanced option. Number of public tunnels. Required with `enableInsaneModeEncryptionOverInternet`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+.
	TunnelCount pulumi.IntPtrInput
}

The set of arguments for constructing a AviatrixTransitGatewayPeering resource.

func (AviatrixTransitGatewayPeeringArgs) ElementType

type AviatrixTransitGatewayPeeringArray

type AviatrixTransitGatewayPeeringArray []AviatrixTransitGatewayPeeringInput

func (AviatrixTransitGatewayPeeringArray) ElementType

func (AviatrixTransitGatewayPeeringArray) ToAviatrixTransitGatewayPeeringArrayOutput

func (i AviatrixTransitGatewayPeeringArray) ToAviatrixTransitGatewayPeeringArrayOutput() AviatrixTransitGatewayPeeringArrayOutput

func (AviatrixTransitGatewayPeeringArray) ToAviatrixTransitGatewayPeeringArrayOutputWithContext

func (i AviatrixTransitGatewayPeeringArray) ToAviatrixTransitGatewayPeeringArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringArrayOutput

type AviatrixTransitGatewayPeeringArrayInput

type AviatrixTransitGatewayPeeringArrayInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayPeeringArrayOutput() AviatrixTransitGatewayPeeringArrayOutput
	ToAviatrixTransitGatewayPeeringArrayOutputWithContext(context.Context) AviatrixTransitGatewayPeeringArrayOutput
}

AviatrixTransitGatewayPeeringArrayInput is an input type that accepts AviatrixTransitGatewayPeeringArray and AviatrixTransitGatewayPeeringArrayOutput values. You can construct a concrete instance of `AviatrixTransitGatewayPeeringArrayInput` via:

AviatrixTransitGatewayPeeringArray{ AviatrixTransitGatewayPeeringArgs{...} }

type AviatrixTransitGatewayPeeringArrayOutput

type AviatrixTransitGatewayPeeringArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayPeeringArrayOutput) ElementType

func (AviatrixTransitGatewayPeeringArrayOutput) Index

func (AviatrixTransitGatewayPeeringArrayOutput) ToAviatrixTransitGatewayPeeringArrayOutput

func (o AviatrixTransitGatewayPeeringArrayOutput) ToAviatrixTransitGatewayPeeringArrayOutput() AviatrixTransitGatewayPeeringArrayOutput

func (AviatrixTransitGatewayPeeringArrayOutput) ToAviatrixTransitGatewayPeeringArrayOutputWithContext

func (o AviatrixTransitGatewayPeeringArrayOutput) ToAviatrixTransitGatewayPeeringArrayOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringArrayOutput

type AviatrixTransitGatewayPeeringInput

type AviatrixTransitGatewayPeeringInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayPeeringOutput() AviatrixTransitGatewayPeeringOutput
	ToAviatrixTransitGatewayPeeringOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringOutput
}

type AviatrixTransitGatewayPeeringMap

type AviatrixTransitGatewayPeeringMap map[string]AviatrixTransitGatewayPeeringInput

func (AviatrixTransitGatewayPeeringMap) ElementType

func (AviatrixTransitGatewayPeeringMap) ToAviatrixTransitGatewayPeeringMapOutput

func (i AviatrixTransitGatewayPeeringMap) ToAviatrixTransitGatewayPeeringMapOutput() AviatrixTransitGatewayPeeringMapOutput

func (AviatrixTransitGatewayPeeringMap) ToAviatrixTransitGatewayPeeringMapOutputWithContext

func (i AviatrixTransitGatewayPeeringMap) ToAviatrixTransitGatewayPeeringMapOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringMapOutput

type AviatrixTransitGatewayPeeringMapInput

type AviatrixTransitGatewayPeeringMapInput interface {
	pulumi.Input

	ToAviatrixTransitGatewayPeeringMapOutput() AviatrixTransitGatewayPeeringMapOutput
	ToAviatrixTransitGatewayPeeringMapOutputWithContext(context.Context) AviatrixTransitGatewayPeeringMapOutput
}

AviatrixTransitGatewayPeeringMapInput is an input type that accepts AviatrixTransitGatewayPeeringMap and AviatrixTransitGatewayPeeringMapOutput values. You can construct a concrete instance of `AviatrixTransitGatewayPeeringMapInput` via:

AviatrixTransitGatewayPeeringMap{ "key": AviatrixTransitGatewayPeeringArgs{...} }

type AviatrixTransitGatewayPeeringMapOutput

type AviatrixTransitGatewayPeeringMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayPeeringMapOutput) ElementType

func (AviatrixTransitGatewayPeeringMapOutput) MapIndex

func (AviatrixTransitGatewayPeeringMapOutput) ToAviatrixTransitGatewayPeeringMapOutput

func (o AviatrixTransitGatewayPeeringMapOutput) ToAviatrixTransitGatewayPeeringMapOutput() AviatrixTransitGatewayPeeringMapOutput

func (AviatrixTransitGatewayPeeringMapOutput) ToAviatrixTransitGatewayPeeringMapOutputWithContext

func (o AviatrixTransitGatewayPeeringMapOutput) ToAviatrixTransitGatewayPeeringMapOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringMapOutput

type AviatrixTransitGatewayPeeringOutput

type AviatrixTransitGatewayPeeringOutput struct{ *pulumi.OutputState }

func (AviatrixTransitGatewayPeeringOutput) ElementType

func (AviatrixTransitGatewayPeeringOutput) EnableInsaneModeEncryptionOverInternet

func (o AviatrixTransitGatewayPeeringOutput) EnableInsaneModeEncryptionOverInternet() pulumi.BoolPtrOutput

Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid `tunnelCount`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Boolean. Default: false. Available as of provider version R2.19+.

func (AviatrixTransitGatewayPeeringOutput) EnableMaxPerformance

func (o AviatrixTransitGatewayPeeringOutput) EnableMaxPerformance() pulumi.BoolPtrOutput

Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.

func (AviatrixTransitGatewayPeeringOutput) EnablePeeringOverPrivateNetwork

func (o AviatrixTransitGatewayPeeringOutput) EnablePeeringOverPrivateNetwork() pulumi.BoolPtrOutput

Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available in provider version R2.17.1+.

func (AviatrixTransitGatewayPeeringOutput) EnableSingleTunnelMode

func (o AviatrixTransitGatewayPeeringOutput) EnableSingleTunnelMode() pulumi.BoolPtrOutput

Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with `enablePeeringOverPrivateNetwork`. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available as of provider version R2.18+.

func (AviatrixTransitGatewayPeeringOutput) Gateway1ExcludedNetworkCidrs

func (o AviatrixTransitGatewayPeeringOutput) Gateway1ExcludedNetworkCidrs() pulumi.StringArrayOutput

List of excluded network CIDRs for the first transit gateway.

func (AviatrixTransitGatewayPeeringOutput) Gateway1ExcludedTgwConnections

func (o AviatrixTransitGatewayPeeringOutput) Gateway1ExcludedTgwConnections() pulumi.StringArrayOutput

List of excluded TGW connections for the first transit gateway.

func (AviatrixTransitGatewayPeeringOutput) Gateway2ExcludedNetworkCidrs

func (o AviatrixTransitGatewayPeeringOutput) Gateway2ExcludedNetworkCidrs() pulumi.StringArrayOutput

List of excluded network CIDRs for the second transit gateway.

func (AviatrixTransitGatewayPeeringOutput) Gateway2ExcludedTgwConnections

func (o AviatrixTransitGatewayPeeringOutput) Gateway2ExcludedTgwConnections() pulumi.StringArrayOutput

List of excluded TGW connections for the second transit gateway.

func (AviatrixTransitGatewayPeeringOutput) PrependAsPath1s

AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name1. Available in provider version R2.17.2+.

func (AviatrixTransitGatewayPeeringOutput) PrependAsPath2s

AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name2. Available in provider version R2.17.2+.

func (AviatrixTransitGatewayPeeringOutput) ToAviatrixTransitGatewayPeeringOutput

func (o AviatrixTransitGatewayPeeringOutput) ToAviatrixTransitGatewayPeeringOutput() AviatrixTransitGatewayPeeringOutput

func (AviatrixTransitGatewayPeeringOutput) ToAviatrixTransitGatewayPeeringOutputWithContext

func (o AviatrixTransitGatewayPeeringOutput) ToAviatrixTransitGatewayPeeringOutputWithContext(ctx context.Context) AviatrixTransitGatewayPeeringOutput

func (AviatrixTransitGatewayPeeringOutput) TransitGatewayName1

The first transit gateway name to make a peer pair.

func (AviatrixTransitGatewayPeeringOutput) TransitGatewayName2

The second transit gateway name to make a peer pair.

func (AviatrixTransitGatewayPeeringOutput) TunnelCount

Advanced option. Number of public tunnels. Required with `enableInsaneModeEncryptionOverInternet`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+.

type AviatrixTransitGatewayPeeringState

type AviatrixTransitGatewayPeeringState struct {
	// Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid `tunnelCount`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Boolean. Default: false. Available as of provider version R2.19+.
	EnableInsaneModeEncryptionOverInternet pulumi.BoolPtrInput
	// Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+.
	EnableMaxPerformance pulumi.BoolPtrInput
	// Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available in provider version R2.17.1+.
	EnablePeeringOverPrivateNetwork pulumi.BoolPtrInput
	// Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with `enablePeeringOverPrivateNetwork`. Conflicts with `enableInsaneModeEncryptionOverInternet` and `tunnelCount`. Type: Boolean. Default: false. Available as of provider version R2.18+.
	EnableSingleTunnelMode pulumi.BoolPtrInput
	// List of excluded network CIDRs for the first transit gateway.
	Gateway1ExcludedNetworkCidrs pulumi.StringArrayInput
	// List of excluded TGW connections for the first transit gateway.
	Gateway1ExcludedTgwConnections pulumi.StringArrayInput
	// List of excluded network CIDRs for the second transit gateway.
	Gateway2ExcludedNetworkCidrs pulumi.StringArrayInput
	// List of excluded TGW connections for the second transit gateway.
	Gateway2ExcludedTgwConnections pulumi.StringArrayInput
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name1. Available in provider version R2.17.2+.
	PrependAsPath1s pulumi.StringArrayInput
	// AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name2. Available in provider version R2.17.2+.
	PrependAsPath2s pulumi.StringArrayInput
	// The first transit gateway name to make a peer pair.
	TransitGatewayName1 pulumi.StringPtrInput
	// The second transit gateway name to make a peer pair.
	TransitGatewayName2 pulumi.StringPtrInput
	// Advanced option. Number of public tunnels. Required with `enableInsaneModeEncryptionOverInternet`. Conflicts with `enablePeeringOverPrivateNetwork` and `enableSingleTunnelMode`. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+.
	TunnelCount pulumi.IntPtrInput
}

func (AviatrixTransitGatewayPeeringState) ElementType

type AviatrixTransitGatewayState

type AviatrixTransitGatewayState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true.
	AllocateNewEip pulumi.BoolPtrInput
	// A set of approved learned CIDRs. Only valid when `enableLearnedCidrsApproval` is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+.
	ApprovedLearnedCidrs pulumi.StringArrayInput
	// Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	AvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `allocateNewEip` is false and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	AzureEipNameResourceGroup pulumi.StringPtrInput
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false.
	BgpEcmp pulumi.BoolPtrInput
	// BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180.
	BgpHoldTime pulumi.IntPtrInput
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. Each interface has the following attributes:
	BgpLanInterfaces AviatrixTransitGatewayBgpLanInterfaceArrayInput
	// Number of interfaces that will be created for BGP over LAN enabled Azure transit. Valid value: 1~5 for FireNet case, 1~7 for Non-FireNet case. Default value: 1. Available as of provider version R2.22+.
	BgpLanInterfacesCount pulumi.IntPtrInput
	// List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.
	BgpLanIpLists pulumi.StringArrayInput
	// Intended CIDR list to be advertised to external BGP router. Example: "10.2.0.0/16,10.4.0.0/16". Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	BgpManualSpokeAdvertiseCidrs pulumi.StringPtrInput
	// BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50".
	BgpPollingTime pulumi.StringPtrInput
	// Cloud instance ID of the transit gateway.
	CloudInstanceId pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported.
	CloudType pulumi.IntPtrInput
	// Specify Connected Transit status. If enabled, it allows spokes to run traffics to other spokes via transit gateway. Valid values: true, false. Default value: false.
	ConnectedTransit pulumi.BoolPtrInput
	// Customer managed key ID.
	CustomerManagedKeys pulumi.StringPtrInput
	// A list of comma-separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. Example: "10.0.0.0/16,10.2.0.0/16".
	CustomizedSpokeVpcRoutes pulumi.StringPtrInput
	// A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. To be effective, `enableAdvertiseTransitCidr` or firewall management access for a Transit FireNet gateway must be enabled. Example: ["10.0.0.0/16", "10.2.0.0/16"].
	CustomizedTransitVpcRoutes pulumi.StringArrayInput
	// Required when `allocateNewEip` is false. It uses the specified EIP for this gateway. Available in Controller version 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	Eip pulumi.StringPtrInput
	// Enables [Active-Standby Mode](https://docs.aviatrix.com/HowTos/transit_advanced.html#active-standby). Available only with HA enabled. Valid values: true, false. Default value: false. Available in provider version R2.17.1+.
	EnableActiveStandby pulumi.BoolPtrInput
	// Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false.
	EnableActiveStandbyPreemptive pulumi.BoolPtrInput
	// Switch to enable/disable advertise transit VPC network CIDR for a VGW connection. Available as of R2.6. **NOTE: If previously enabled through vgwConn resource prior to provider version R2.6, please see notes here.**
	EnableAdvertiseTransitCidr pulumi.BoolPtrInput
	// Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Must be enabled to create a BGP over LAN `AviatrixTransitExternalDeviceConn` resource with this Transit Gateway. Only valid for GCP (4), Azure (8), AzureGov (32) or AzureChina (2048). Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableBgpOverLan pulumi.BoolPtrInput
	// Enable [Egress Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_workflow.html#b-enable-transit-firenet-on-aviatrix-egress-transit-gateway). Valid values: true, false. Default value: false. Available in provider version R2.16.3+.
	EnableEgressTransitFirenet pulumi.BoolPtrInput
	// Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnableEncryptVolume pulumi.BoolPtrInput
	// Set to true to use gateway for legacy [AWS TGW-based FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) connection. Valid values: true, false. Default value: false. **NOTE: If previously using an older provider version R2.5 where attribute name was `enableFirenetInterfaces`, please see notes here.**
	EnableFirenet pulumi.BoolPtrInput
	// Enable FireNet interfaces with AWS Gateway Load Balancer. Only valid when `enableFirenet` or `enableTransitFirenet` are set to true and `cloudType` = 1 (AWS). Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableGatewayLoadBalancer pulumi.BoolPtrInput
	// Sign of readiness for AWS TGW connection. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Example: false.
	EnableHybridConnection pulumi.BoolPtrInput
	// Enable jumbo frames for this transit gateway. Default value is true.
	EnableJumboFrame pulumi.BoolPtrInput
	// Switch to enable/disable encrypted transit approval for transit gateway. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// If set to true, the [Monitor Gateway Subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet) feature is enabled. Default value is false. Available in provider version R2.18+.
	EnableMonitorGatewaySubnets pulumi.BoolPtrInput
	// Enable Multi-tier Transit mode on transit gateway. When enabled, transit gateway will propagate routes it receives from its transit peering peer to other transit peering peers. `localAsNumber` is required. Default value: false. Available as of provider version R2.19+.
	EnableMultiTierTransit pulumi.BoolPtrInput
	// Enable preserve asPath when advertising manual summary cidrs on transit gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+
	// },
	EnablePreserveAsPath pulumi.BoolPtrInput
	// Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	EnablePrivateOob pulumi.BoolPtrInput
	// Enable S2C receive packet CPU re-balancing on transit gateway. Valid values: true, false. Default value: false. Available in provider version R2.21.2+.
	EnableS2cRxBalancing pulumi.BoolPtrInput
	// Enable transit gateway for segmentation. Valid values: true, false. Default: false.
	EnableSegmentation pulumi.BoolPtrInput
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolPtrInput
	// Set to true to use gateway for [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) connection. Valid values: true, false. Default value: false. Available in provider version R2.12+.
	EnableTransitFirenet pulumi.BoolPtrInput
	// Enable summarize CIDR to TGW. Valid values: true, false. Default value: false.
	EnableTransitSummarizeCidrToTgw pulumi.BoolPtrInput
	// Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false.
	EnableVpcDnsServer pulumi.BoolPtrInput
	// A list of comma-separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. Example: "10.4.0.0/16,10.5.0.0/16".
	ExcludedAdvertisedSpokeRoutes pulumi.StringPtrInput
	// Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	FaultDomain pulumi.StringPtrInput
	// A list of comma-separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. Example: "10.2.0.0/16,10.3.0.0/16".
	FilteredSpokeVpcRoutes pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringPtrInput
	// Size of the gateway instance. Example: AWS: "t2.large", Azure/AzureGov: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1", AWSGov: "t2.large", AWSChina: "t2.large", AzureChina: "Standard_A0".
	GwSize pulumi.StringPtrInput
	// HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaAvailabilityDomain pulumi.StringPtrInput
	// Name of public IP Address resource and its resource group in Azure to be assigned to the HA Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if `haEip` is set and `cloudType` is Azure, AzureGov or AzureChina. Available as of provider version 2.20+.
	HaAzureEipNameResourceGroup pulumi.StringPtrInput
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit HA. Each interface has the following attributes:
	HaBgpLanInterfaces AviatrixTransitGatewayHaBgpLanInterfaceArrayInput
	// List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+.
	HaBgpLanIpLists pulumi.StringArrayInput
	// Cloud instance ID of the HA transit gateway.
	HaCloudInstanceId pulumi.StringPtrInput
	// Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret.
	HaEip pulumi.StringPtrInput
	// HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3.
	HaFaultDomain pulumi.StringPtrInput
	// Aviatrix transit gateway unique name of HA transit gateway.
	HaGwName pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if enabling HA. Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// The image version of the HA gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `haSoftwareVersion`. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	HaImageVersion pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret if `insaneMode` is enabled and `haSubnet` is set. Example: AWS: "us-west-1a".
	HaInsaneModeAz pulumi.StringPtrInput
	// LAN interface CIDR of the HA transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.18+.
	HaLanInterfaceCidr pulumi.StringPtrInput
	// HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b".
	HaOobAvailabilityZone pulumi.StringPtrInput
	// HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28".
	HaOobManagementSubnet pulumi.StringPtrInput
	// Private IP address of the HA transit gateway created.
	HaPrivateIp pulumi.StringPtrInput
	// Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov with HA. Available in Provider version R2.23+.
	HaPrivateModeSubnetZone pulumi.StringPtrInput
	// Public IP address of the HA Transit Gateway.
	HaPublicIp pulumi.StringPtrInput
	// HA security group used for the transit gateway.
	HaSecurityGroupId pulumi.StringPtrInput
	// The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	HaSoftwareVersion pulumi.StringPtrInput
	// HA Subnet CIDR. Required only if enabling HA for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24".
	HaSubnet pulumi.StringPtrInput
	// HA Zone. Required if enabling HA for GCP gateway. Optional if enabling HA for Azure gateway. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+.
	HaZone pulumi.StringPtrInput
	// The image version of the gateway. Use `getAviatrixGatewayImage` data source to programmatically retrieve this value for the desired `softwareVersion`. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0.
	ImageVersion pulumi.StringPtrInput
	// Specify true for [Insane Mode](https://docs.aviatrix.com/HowTos/insane_mode.html) high performance gateway. Insane Mode gateway size must be at least c5 size (AWS, AWSGov, AWS China, AWS Top Secret and AWS Secret) or Standard_D3_v2 (Azure and AzureGov); for GCP only four size are supported: "n1-highcpu-4", "n1-highcpu-8", "n1-highcpu-16" and "n1-highcpu-32". If enabled, you must specify a valid /26 CIDR segment of the VPC to create a new subnet for AWS, Azure, AzureGov, AWSGov, AWS Top Secret and AWS Secret. Only available for AWS, GCP/OCI, Azure, AzureGov, AzureChina, AWSGov, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if `insaneMode` is enabled. Example: AWS: "us-west-1a".
	InsaneModeAz pulumi.StringPtrInput
	// LAN interface CIDR of the transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.17.1+.
	LanInterfaceCidr pulumi.StringPtrInput
	// LAN Private Subnet. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanPrivateSubnet pulumi.StringPtrInput
	// LAN VPC ID. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+.
	LanVpcId pulumi.StringPtrInput
	// Learned CIDRs approval mode. Either "gateway" (approval on a per gateway basis) or "connection" (approval on a per connection basis). Default value: "gateway". Available as of provider version R2.18+.
	LearnedCidrsApprovalMode pulumi.StringPtrInput
	// Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.
	LocalAsNumber pulumi.StringPtrInput
	// Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+.
	MonitorExcludeLists pulumi.StringArrayInput
	// OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a".
	OobAvailabilityZone pulumi.StringPtrInput
	// OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24".
	OobManagementSubnet pulumi.StringPtrInput
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayInput
	// Private IP address of the transit gateway created.
	PrivateIp pulumi.StringPtrInput
	// VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in Provider version R2.23+.
	PrivateModeLbVpcId pulumi.StringPtrInput
	// Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and `cloudType` is AWS or AWSGov. Available in Provider version R2.23+.
	PrivateModeSubnetZone pulumi.StringPtrInput
	// Public IP address of the Transit Gateway created.
	PublicIp pulumi.StringPtrInput
	// Gateway ethernet interface RX queue size. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+.
	RxQueueSize pulumi.StringPtrInput
	// Security group used for the transit gateway.
	SecurityGroupId pulumi.StringPtrInput
	// Set to true if this [feature](https://docs.aviatrix.com/Solutions/gateway_ha.html#single-az-gateway) is desired. Valid values: true, false.
	SingleAzHa pulumi.BoolPtrInput
	// Enable "singleIp" mode Source NAT for this container. Valid values: true, false. **NOTE: Please see notes here in regards to changes to this argument in R2.10.**
	SingleIpSnat pulumi.BoolPtrInput
	// The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the `AviatrixControllerConfig` resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0.
	SoftwareVersion pulumi.StringPtrInput
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringPtrInput
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringPtrInput
	// (Optional) Instance tag of cloud provider. Only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina. Example: ["key1:value1","key2:value2"].
	//
	// Deprecated: Use tags instead.
	TagLists pulumi.StringArrayInput
	// Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character.  Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}.
	Tags pulumi.StringMapInput
	// The IPSec tunnel down detection time for the transit gateway.
	TunnelDetectionTime pulumi.IntPtrInput
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringPtrInput
	// Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1".
	VpcReg pulumi.StringPtrInput
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+.
	Zone pulumi.StringPtrInput
}

func (AviatrixTransitGatewayState) ElementType

type AviatrixTransitVpc

type AviatrixTransitVpc struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Type of cloud service provider, requires an integer value. Use 1 for AWS.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Specify Connected Transit status. Supported values: true, false.
	ConnectedTransit pulumi.StringPtrOutput `pulumi:"connectedTransit"`
	// Sign of readiness for FireNet connection. Valid values: true and false. Default: false.
	EnableFirenetInterfaces pulumi.BoolPtrOutput `pulumi:"enableFirenetInterfaces"`
	// Sign of readiness for TGW connection. Only supported for aws. Example: false.
	EnableHybridConnection pulumi.BoolPtrOutput `pulumi:"enableHybridConnection"`
	// Enable NAT for this container.
	EnableNat pulumi.StringPtrOutput `pulumi:"enableNat"`
	// Name of the gateway which is going to be created.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrOutput `pulumi:"haGwSize"`
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required if insaneMode is enabled and haSubnet is set.
	HaInsaneModeAz pulumi.StringPtrOutput `pulumi:"haInsaneModeAz"`
	// HA Subnet CIDR. Example: "10.12.0.0/24".Setting to empty/unset will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrOutput `pulumi:"haSubnet"`
	// Specify Insane Mode high performance gateway. Insane Mode gateway size must be at least c5 size. If enabled, will look for spare /26 segment to create a new subnet. Only available for AWS. Supported values: true, false.
	InsaneMode pulumi.BoolPtrOutput `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode Transit Gateway. Required if insaneMode is enabled.
	InsaneModeAz pulumi.StringPtrOutput `pulumi:"insaneModeAz"`
	// Public Subnet CIDR. Example: AWS: "10.0.0.0/24". Copy/paste from AWS Console to get the right subnet CIDR.
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// Instance tag of cloud provider. Only supported for aws. Example: ["key1:value1","key002:value002"]
	TagLists pulumi.StringArrayOutput `pulumi:"tagLists"`
	// VPC-ID/VNet-Name of cloud provider. Required if for aws. Example: AWS: "vpc-abcd1234", GCP: "mygooglecloudvpcname", etc...
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Region of cloud provider. Example: AWS: "us-east-1", ARM: "East US 2", etc...
	VpcReg pulumi.StringOutput `pulumi:"vpcReg"`
	// Size of the gateway instance. Example: AWS: "t2.large", etc...
	VpcSize pulumi.StringOutput `pulumi:"vpcSize"`
}

The AviatrixTransitVpc resource creates and manages the Aviatrix Transit Network Gateways.

!> **WARNING:** The `AviatrixTransitVpc` resource is deprecated as of **Release 2.0**. It is currently kept for backward-compatibility and will be removed in the future. Please use the transit gateway resource instead. If this is already in the state, please remove it from state file and import as `AviatrixTransitGateway`.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTransitVpc(ctx, "testTransitGwAws", &aviatrix.AviatrixTransitVpcArgs{
			AccountName:            pulumi.String("devops_aws"),
			CloudType:              pulumi.Int(1),
			ConnectedTransit:       pulumi.String("yes"),
			EnableHybridConnection: pulumi.Bool(true),
			GwName:                 pulumi.String("transit"),
			HaGwSize:               pulumi.String("t2.micro"),
			HaSubnet:               pulumi.String("10.1.0.0/24"),
			Subnet:                 pulumi.String("10.1.0.0/24"),
			TagLists: pulumi.StringArray{
				pulumi.String("name:value"),
				pulumi.String("name1:value1"),
				pulumi.String("name2:value2"),
			},
			VpcId:   pulumi.String("vpc-abcd1234"),
			VpcReg:  pulumi.String("us-east-1"),
			VpcSize: pulumi.String("t2.micro"),
		})
		if err != nil {
			return err
		}
		_, err = aviatrix.NewAviatrixTransitVpc(ctx, "testTransitGwAzure", &aviatrix.AviatrixTransitVpcArgs{
			AccountName:      pulumi.String("devops_azure"),
			CloudType:        pulumi.Int(8),
			ConnectedTransit: pulumi.String("yes"),
			GwName:           pulumi.String("transit"),
			HaGwSize:         pulumi.String("Standard_B1s"),
			HaSubnet:         pulumi.String("10.30.0.0/24"),
			Subnet:           pulumi.String("10.30.0.0/24"),
			VpcId:            pulumi.String("vnet1:hello"),
			VpcReg:           pulumi.String("West US"),
			VpcSize:          pulumi.String("Standard_B1s"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance transit_vpc can be imported using the gw_name, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTransitVpc:AviatrixTransitVpc test gw_name

```

func GetAviatrixTransitVpc

func GetAviatrixTransitVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTransitVpcState, opts ...pulumi.ResourceOption) (*AviatrixTransitVpc, error)

GetAviatrixTransitVpc gets an existing AviatrixTransitVpc 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 NewAviatrixTransitVpc

func NewAviatrixTransitVpc(ctx *pulumi.Context,
	name string, args *AviatrixTransitVpcArgs, opts ...pulumi.ResourceOption) (*AviatrixTransitVpc, error)

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

func (*AviatrixTransitVpc) ElementType

func (*AviatrixTransitVpc) ElementType() reflect.Type

func (*AviatrixTransitVpc) ToAviatrixTransitVpcOutput

func (i *AviatrixTransitVpc) ToAviatrixTransitVpcOutput() AviatrixTransitVpcOutput

func (*AviatrixTransitVpc) ToAviatrixTransitVpcOutputWithContext

func (i *AviatrixTransitVpc) ToAviatrixTransitVpcOutputWithContext(ctx context.Context) AviatrixTransitVpcOutput

type AviatrixTransitVpcArgs

type AviatrixTransitVpcArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// Type of cloud service provider, requires an integer value. Use 1 for AWS.
	CloudType pulumi.IntInput
	// Specify Connected Transit status. Supported values: true, false.
	ConnectedTransit pulumi.StringPtrInput
	// Sign of readiness for FireNet connection. Valid values: true and false. Default: false.
	EnableFirenetInterfaces pulumi.BoolPtrInput
	// Sign of readiness for TGW connection. Only supported for aws. Example: false.
	EnableHybridConnection pulumi.BoolPtrInput
	// Enable NAT for this container.
	EnableNat pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringInput
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required if insaneMode is enabled and haSubnet is set.
	HaInsaneModeAz pulumi.StringPtrInput
	// HA Subnet CIDR. Example: "10.12.0.0/24".Setting to empty/unset will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrInput
	// Specify Insane Mode high performance gateway. Insane Mode gateway size must be at least c5 size. If enabled, will look for spare /26 segment to create a new subnet. Only available for AWS. Supported values: true, false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Transit Gateway. Required if insaneMode is enabled.
	InsaneModeAz pulumi.StringPtrInput
	// Public Subnet CIDR. Example: AWS: "10.0.0.0/24". Copy/paste from AWS Console to get the right subnet CIDR.
	Subnet pulumi.StringInput
	// Instance tag of cloud provider. Only supported for aws. Example: ["key1:value1","key002:value002"]
	TagLists pulumi.StringArrayInput
	// VPC-ID/VNet-Name of cloud provider. Required if for aws. Example: AWS: "vpc-abcd1234", GCP: "mygooglecloudvpcname", etc...
	VpcId pulumi.StringInput
	// Region of cloud provider. Example: AWS: "us-east-1", ARM: "East US 2", etc...
	VpcReg pulumi.StringInput
	// Size of the gateway instance. Example: AWS: "t2.large", etc...
	VpcSize pulumi.StringInput
}

The set of arguments for constructing a AviatrixTransitVpc resource.

func (AviatrixTransitVpcArgs) ElementType

func (AviatrixTransitVpcArgs) ElementType() reflect.Type

type AviatrixTransitVpcArray

type AviatrixTransitVpcArray []AviatrixTransitVpcInput

func (AviatrixTransitVpcArray) ElementType

func (AviatrixTransitVpcArray) ElementType() reflect.Type

func (AviatrixTransitVpcArray) ToAviatrixTransitVpcArrayOutput

func (i AviatrixTransitVpcArray) ToAviatrixTransitVpcArrayOutput() AviatrixTransitVpcArrayOutput

func (AviatrixTransitVpcArray) ToAviatrixTransitVpcArrayOutputWithContext

func (i AviatrixTransitVpcArray) ToAviatrixTransitVpcArrayOutputWithContext(ctx context.Context) AviatrixTransitVpcArrayOutput

type AviatrixTransitVpcArrayInput

type AviatrixTransitVpcArrayInput interface {
	pulumi.Input

	ToAviatrixTransitVpcArrayOutput() AviatrixTransitVpcArrayOutput
	ToAviatrixTransitVpcArrayOutputWithContext(context.Context) AviatrixTransitVpcArrayOutput
}

AviatrixTransitVpcArrayInput is an input type that accepts AviatrixTransitVpcArray and AviatrixTransitVpcArrayOutput values. You can construct a concrete instance of `AviatrixTransitVpcArrayInput` via:

AviatrixTransitVpcArray{ AviatrixTransitVpcArgs{...} }

type AviatrixTransitVpcArrayOutput

type AviatrixTransitVpcArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTransitVpcArrayOutput) ElementType

func (AviatrixTransitVpcArrayOutput) Index

func (AviatrixTransitVpcArrayOutput) ToAviatrixTransitVpcArrayOutput

func (o AviatrixTransitVpcArrayOutput) ToAviatrixTransitVpcArrayOutput() AviatrixTransitVpcArrayOutput

func (AviatrixTransitVpcArrayOutput) ToAviatrixTransitVpcArrayOutputWithContext

func (o AviatrixTransitVpcArrayOutput) ToAviatrixTransitVpcArrayOutputWithContext(ctx context.Context) AviatrixTransitVpcArrayOutput

type AviatrixTransitVpcInput

type AviatrixTransitVpcInput interface {
	pulumi.Input

	ToAviatrixTransitVpcOutput() AviatrixTransitVpcOutput
	ToAviatrixTransitVpcOutputWithContext(ctx context.Context) AviatrixTransitVpcOutput
}

type AviatrixTransitVpcMap

type AviatrixTransitVpcMap map[string]AviatrixTransitVpcInput

func (AviatrixTransitVpcMap) ElementType

func (AviatrixTransitVpcMap) ElementType() reflect.Type

func (AviatrixTransitVpcMap) ToAviatrixTransitVpcMapOutput

func (i AviatrixTransitVpcMap) ToAviatrixTransitVpcMapOutput() AviatrixTransitVpcMapOutput

func (AviatrixTransitVpcMap) ToAviatrixTransitVpcMapOutputWithContext

func (i AviatrixTransitVpcMap) ToAviatrixTransitVpcMapOutputWithContext(ctx context.Context) AviatrixTransitVpcMapOutput

type AviatrixTransitVpcMapInput

type AviatrixTransitVpcMapInput interface {
	pulumi.Input

	ToAviatrixTransitVpcMapOutput() AviatrixTransitVpcMapOutput
	ToAviatrixTransitVpcMapOutputWithContext(context.Context) AviatrixTransitVpcMapOutput
}

AviatrixTransitVpcMapInput is an input type that accepts AviatrixTransitVpcMap and AviatrixTransitVpcMapOutput values. You can construct a concrete instance of `AviatrixTransitVpcMapInput` via:

AviatrixTransitVpcMap{ "key": AviatrixTransitVpcArgs{...} }

type AviatrixTransitVpcMapOutput

type AviatrixTransitVpcMapOutput struct{ *pulumi.OutputState }

func (AviatrixTransitVpcMapOutput) ElementType

func (AviatrixTransitVpcMapOutput) MapIndex

func (AviatrixTransitVpcMapOutput) ToAviatrixTransitVpcMapOutput

func (o AviatrixTransitVpcMapOutput) ToAviatrixTransitVpcMapOutput() AviatrixTransitVpcMapOutput

func (AviatrixTransitVpcMapOutput) ToAviatrixTransitVpcMapOutputWithContext

func (o AviatrixTransitVpcMapOutput) ToAviatrixTransitVpcMapOutputWithContext(ctx context.Context) AviatrixTransitVpcMapOutput

type AviatrixTransitVpcOutput

type AviatrixTransitVpcOutput struct{ *pulumi.OutputState }

func (AviatrixTransitVpcOutput) AccountName

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixTransitVpcOutput) CloudType

Type of cloud service provider, requires an integer value. Use 1 for AWS.

func (AviatrixTransitVpcOutput) ConnectedTransit

func (o AviatrixTransitVpcOutput) ConnectedTransit() pulumi.StringPtrOutput

Specify Connected Transit status. Supported values: true, false.

func (AviatrixTransitVpcOutput) ElementType

func (AviatrixTransitVpcOutput) ElementType() reflect.Type

func (AviatrixTransitVpcOutput) EnableFirenetInterfaces

func (o AviatrixTransitVpcOutput) EnableFirenetInterfaces() pulumi.BoolPtrOutput

Sign of readiness for FireNet connection. Valid values: true and false. Default: false.

func (AviatrixTransitVpcOutput) EnableHybridConnection

func (o AviatrixTransitVpcOutput) EnableHybridConnection() pulumi.BoolPtrOutput

Sign of readiness for TGW connection. Only supported for aws. Example: false.

func (AviatrixTransitVpcOutput) EnableNat

Enable NAT for this container.

func (AviatrixTransitVpcOutput) GwName

Name of the gateway which is going to be created.

func (AviatrixTransitVpcOutput) HaGwSize

HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".

func (AviatrixTransitVpcOutput) HaInsaneModeAz

func (o AviatrixTransitVpcOutput) HaInsaneModeAz() pulumi.StringPtrOutput

AZ of subnet being created for Insane Mode Transit HA Gateway. Required if insaneMode is enabled and haSubnet is set.

func (AviatrixTransitVpcOutput) HaSubnet

HA Subnet CIDR. Example: "10.12.0.0/24".Setting to empty/unset will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet.

func (AviatrixTransitVpcOutput) InsaneMode

Specify Insane Mode high performance gateway. Insane Mode gateway size must be at least c5 size. If enabled, will look for spare /26 segment to create a new subnet. Only available for AWS. Supported values: true, false.

func (AviatrixTransitVpcOutput) InsaneModeAz

AZ of subnet being created for Insane Mode Transit Gateway. Required if insaneMode is enabled.

func (AviatrixTransitVpcOutput) Subnet

Public Subnet CIDR. Example: AWS: "10.0.0.0/24". Copy/paste from AWS Console to get the right subnet CIDR.

func (AviatrixTransitVpcOutput) TagLists

Instance tag of cloud provider. Only supported for aws. Example: ["key1:value1","key002:value002"]

func (AviatrixTransitVpcOutput) ToAviatrixTransitVpcOutput

func (o AviatrixTransitVpcOutput) ToAviatrixTransitVpcOutput() AviatrixTransitVpcOutput

func (AviatrixTransitVpcOutput) ToAviatrixTransitVpcOutputWithContext

func (o AviatrixTransitVpcOutput) ToAviatrixTransitVpcOutputWithContext(ctx context.Context) AviatrixTransitVpcOutput

func (AviatrixTransitVpcOutput) VpcId

VPC-ID/VNet-Name of cloud provider. Required if for aws. Example: AWS: "vpc-abcd1234", GCP: "mygooglecloudvpcname", etc...

func (AviatrixTransitVpcOutput) VpcReg

Region of cloud provider. Example: AWS: "us-east-1", ARM: "East US 2", etc...

func (AviatrixTransitVpcOutput) VpcSize

Size of the gateway instance. Example: AWS: "t2.large", etc...

type AviatrixTransitVpcState

type AviatrixTransitVpcState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Use 1 for AWS.
	CloudType pulumi.IntPtrInput
	// Specify Connected Transit status. Supported values: true, false.
	ConnectedTransit pulumi.StringPtrInput
	// Sign of readiness for FireNet connection. Valid values: true and false. Default: false.
	EnableFirenetInterfaces pulumi.BoolPtrInput
	// Sign of readiness for TGW connection. Only supported for aws. Example: false.
	EnableHybridConnection pulumi.BoolPtrInput
	// Enable NAT for this container.
	EnableNat pulumi.StringPtrInput
	// Name of the gateway which is going to be created.
	GwName pulumi.StringPtrInput
	// HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). Example: "t2.micro".
	HaGwSize pulumi.StringPtrInput
	// AZ of subnet being created for Insane Mode Transit HA Gateway. Required if insaneMode is enabled and haSubnet is set.
	HaInsaneModeAz pulumi.StringPtrInput
	// HA Subnet CIDR. Example: "10.12.0.0/24".Setting to empty/unset will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet.
	HaSubnet pulumi.StringPtrInput
	// Specify Insane Mode high performance gateway. Insane Mode gateway size must be at least c5 size. If enabled, will look for spare /26 segment to create a new subnet. Only available for AWS. Supported values: true, false.
	InsaneMode pulumi.BoolPtrInput
	// AZ of subnet being created for Insane Mode Transit Gateway. Required if insaneMode is enabled.
	InsaneModeAz pulumi.StringPtrInput
	// Public Subnet CIDR. Example: AWS: "10.0.0.0/24". Copy/paste from AWS Console to get the right subnet CIDR.
	Subnet pulumi.StringPtrInput
	// Instance tag of cloud provider. Only supported for aws. Example: ["key1:value1","key002:value002"]
	TagLists pulumi.StringArrayInput
	// VPC-ID/VNet-Name of cloud provider. Required if for aws. Example: AWS: "vpc-abcd1234", GCP: "mygooglecloudvpcname", etc...
	VpcId pulumi.StringPtrInput
	// Region of cloud provider. Example: AWS: "us-east-1", ARM: "East US 2", etc...
	VpcReg pulumi.StringPtrInput
	// Size of the gateway instance. Example: AWS: "t2.large", etc...
	VpcSize pulumi.StringPtrInput
}

func (AviatrixTransitVpcState) ElementType

func (AviatrixTransitVpcState) ElementType() reflect.Type

type AviatrixTunnel

type AviatrixTunnel struct {
	pulumi.CustomResourceState

	// Enable this attribute if peering-HA is enabled on the gateways. Valid values: true, false. Default value: false.
	EnableHa pulumi.BoolPtrOutput `pulumi:"enableHa"`
	// The first VPC Container name to make a peer pair.
	GwName1 pulumi.StringOutput `pulumi:"gwName1"`
	// The second VPC Container name to make a peer pair.
	GwName2 pulumi.StringOutput `pulumi:"gwName2"`
	// (Computed) Status of the HA tunnel.
	PeeringHastatus pulumi.StringOutput `pulumi:"peeringHastatus"`
	// (Computed) Name of the peering link.
	PeeringLink pulumi.StringOutput `pulumi:"peeringLink"`
	// (Computed) Status of the tunnel.
	PeeringState pulumi.StringOutput `pulumi:"peeringState"`
}

The **aviatrix_tunnel** resource allows the creation and management of Aviatrix Encrypted Peering tunnels.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixTunnel(ctx, "testTunnel", &aviatrix.AviatrixTunnelArgs{
			GwName1: pulumi.String("avtx-gw1"),
			GwName2: pulumi.String("avtx-gw2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**tunnel** can be imported using the `gw_name1` and `gw_name2`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixTunnel:AviatrixTunnel test gw_name1~gw_name2

```

func GetAviatrixTunnel

func GetAviatrixTunnel(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixTunnelState, opts ...pulumi.ResourceOption) (*AviatrixTunnel, error)

GetAviatrixTunnel gets an existing AviatrixTunnel 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 NewAviatrixTunnel

func NewAviatrixTunnel(ctx *pulumi.Context,
	name string, args *AviatrixTunnelArgs, opts ...pulumi.ResourceOption) (*AviatrixTunnel, error)

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

func (*AviatrixTunnel) ElementType

func (*AviatrixTunnel) ElementType() reflect.Type

func (*AviatrixTunnel) ToAviatrixTunnelOutput

func (i *AviatrixTunnel) ToAviatrixTunnelOutput() AviatrixTunnelOutput

func (*AviatrixTunnel) ToAviatrixTunnelOutputWithContext

func (i *AviatrixTunnel) ToAviatrixTunnelOutputWithContext(ctx context.Context) AviatrixTunnelOutput

type AviatrixTunnelArgs

type AviatrixTunnelArgs struct {
	// Enable this attribute if peering-HA is enabled on the gateways. Valid values: true, false. Default value: false.
	EnableHa pulumi.BoolPtrInput
	// The first VPC Container name to make a peer pair.
	GwName1 pulumi.StringInput
	// The second VPC Container name to make a peer pair.
	GwName2 pulumi.StringInput
}

The set of arguments for constructing a AviatrixTunnel resource.

func (AviatrixTunnelArgs) ElementType

func (AviatrixTunnelArgs) ElementType() reflect.Type

type AviatrixTunnelArray

type AviatrixTunnelArray []AviatrixTunnelInput

func (AviatrixTunnelArray) ElementType

func (AviatrixTunnelArray) ElementType() reflect.Type

func (AviatrixTunnelArray) ToAviatrixTunnelArrayOutput

func (i AviatrixTunnelArray) ToAviatrixTunnelArrayOutput() AviatrixTunnelArrayOutput

func (AviatrixTunnelArray) ToAviatrixTunnelArrayOutputWithContext

func (i AviatrixTunnelArray) ToAviatrixTunnelArrayOutputWithContext(ctx context.Context) AviatrixTunnelArrayOutput

type AviatrixTunnelArrayInput

type AviatrixTunnelArrayInput interface {
	pulumi.Input

	ToAviatrixTunnelArrayOutput() AviatrixTunnelArrayOutput
	ToAviatrixTunnelArrayOutputWithContext(context.Context) AviatrixTunnelArrayOutput
}

AviatrixTunnelArrayInput is an input type that accepts AviatrixTunnelArray and AviatrixTunnelArrayOutput values. You can construct a concrete instance of `AviatrixTunnelArrayInput` via:

AviatrixTunnelArray{ AviatrixTunnelArgs{...} }

type AviatrixTunnelArrayOutput

type AviatrixTunnelArrayOutput struct{ *pulumi.OutputState }

func (AviatrixTunnelArrayOutput) ElementType

func (AviatrixTunnelArrayOutput) ElementType() reflect.Type

func (AviatrixTunnelArrayOutput) Index

func (AviatrixTunnelArrayOutput) ToAviatrixTunnelArrayOutput

func (o AviatrixTunnelArrayOutput) ToAviatrixTunnelArrayOutput() AviatrixTunnelArrayOutput

func (AviatrixTunnelArrayOutput) ToAviatrixTunnelArrayOutputWithContext

func (o AviatrixTunnelArrayOutput) ToAviatrixTunnelArrayOutputWithContext(ctx context.Context) AviatrixTunnelArrayOutput

type AviatrixTunnelInput

type AviatrixTunnelInput interface {
	pulumi.Input

	ToAviatrixTunnelOutput() AviatrixTunnelOutput
	ToAviatrixTunnelOutputWithContext(ctx context.Context) AviatrixTunnelOutput
}

type AviatrixTunnelMap

type AviatrixTunnelMap map[string]AviatrixTunnelInput

func (AviatrixTunnelMap) ElementType

func (AviatrixTunnelMap) ElementType() reflect.Type

func (AviatrixTunnelMap) ToAviatrixTunnelMapOutput

func (i AviatrixTunnelMap) ToAviatrixTunnelMapOutput() AviatrixTunnelMapOutput

func (AviatrixTunnelMap) ToAviatrixTunnelMapOutputWithContext

func (i AviatrixTunnelMap) ToAviatrixTunnelMapOutputWithContext(ctx context.Context) AviatrixTunnelMapOutput

type AviatrixTunnelMapInput

type AviatrixTunnelMapInput interface {
	pulumi.Input

	ToAviatrixTunnelMapOutput() AviatrixTunnelMapOutput
	ToAviatrixTunnelMapOutputWithContext(context.Context) AviatrixTunnelMapOutput
}

AviatrixTunnelMapInput is an input type that accepts AviatrixTunnelMap and AviatrixTunnelMapOutput values. You can construct a concrete instance of `AviatrixTunnelMapInput` via:

AviatrixTunnelMap{ "key": AviatrixTunnelArgs{...} }

type AviatrixTunnelMapOutput

type AviatrixTunnelMapOutput struct{ *pulumi.OutputState }

func (AviatrixTunnelMapOutput) ElementType

func (AviatrixTunnelMapOutput) ElementType() reflect.Type

func (AviatrixTunnelMapOutput) MapIndex

func (AviatrixTunnelMapOutput) ToAviatrixTunnelMapOutput

func (o AviatrixTunnelMapOutput) ToAviatrixTunnelMapOutput() AviatrixTunnelMapOutput

func (AviatrixTunnelMapOutput) ToAviatrixTunnelMapOutputWithContext

func (o AviatrixTunnelMapOutput) ToAviatrixTunnelMapOutputWithContext(ctx context.Context) AviatrixTunnelMapOutput

type AviatrixTunnelOutput

type AviatrixTunnelOutput struct{ *pulumi.OutputState }

func (AviatrixTunnelOutput) ElementType

func (AviatrixTunnelOutput) ElementType() reflect.Type

func (AviatrixTunnelOutput) EnableHa

Enable this attribute if peering-HA is enabled on the gateways. Valid values: true, false. Default value: false.

func (AviatrixTunnelOutput) GwName1

The first VPC Container name to make a peer pair.

func (AviatrixTunnelOutput) GwName2

The second VPC Container name to make a peer pair.

func (AviatrixTunnelOutput) PeeringHastatus

func (o AviatrixTunnelOutput) PeeringHastatus() pulumi.StringOutput

(Computed) Status of the HA tunnel.

func (o AviatrixTunnelOutput) PeeringLink() pulumi.StringOutput

(Computed) Name of the peering link.

func (AviatrixTunnelOutput) PeeringState

func (o AviatrixTunnelOutput) PeeringState() pulumi.StringOutput

(Computed) Status of the tunnel.

func (AviatrixTunnelOutput) ToAviatrixTunnelOutput

func (o AviatrixTunnelOutput) ToAviatrixTunnelOutput() AviatrixTunnelOutput

func (AviatrixTunnelOutput) ToAviatrixTunnelOutputWithContext

func (o AviatrixTunnelOutput) ToAviatrixTunnelOutputWithContext(ctx context.Context) AviatrixTunnelOutput

type AviatrixTunnelState

type AviatrixTunnelState struct {
	// Enable this attribute if peering-HA is enabled on the gateways. Valid values: true, false. Default value: false.
	EnableHa pulumi.BoolPtrInput
	// The first VPC Container name to make a peer pair.
	GwName1 pulumi.StringPtrInput
	// The second VPC Container name to make a peer pair.
	GwName2 pulumi.StringPtrInput
	// (Computed) Status of the HA tunnel.
	PeeringHastatus pulumi.StringPtrInput
	// (Computed) Name of the peering link.
	PeeringLink pulumi.StringPtrInput
	// (Computed) Status of the tunnel.
	PeeringState pulumi.StringPtrInput
}

func (AviatrixTunnelState) ElementType

func (AviatrixTunnelState) ElementType() reflect.Type

type AviatrixVgwConn

type AviatrixVgwConn struct {
	pulumi.CustomResourceState

	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	BgpLocalAsNum pulumi.StringOutput `pulumi:"bgpLocalAsNum"`
	// Cloud Account used to create the AWS VGW that will be used for this connection. Example: "dev-account-1".
	BgpVgwAccount pulumi.StringOutput `pulumi:"bgpVgwAccount"`
	// ID of AWS VGW that will be used for this connection. Example: "vgw-abcd1234".
	BgpVgwId pulumi.StringOutput `pulumi:"bgpVgwId"`
	// Region of AWS VGW that will be used for this connection. Example: "us-east-1".
	BgpVgwRegion pulumi.StringOutput `pulumi:"bgpVgwRegion"`
	// The name of for Transit GW to VGW connection connection which is going to be created. Example: "my-connection-vgw-to-tgw".
	ConnName pulumi.StringOutput `pulumi:"connName"`
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrOutput `pulumi:"enableEventTriggeredHa"`
	// Enable learned CIDRs approval for the connection. Requires the transit_gateway's 'learned_cidrs_approval_mode' attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Name of the Transit Gateway. Example: "my-transit-gw".
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Configure manual BGP advertised CIDRs for this connection. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayOutput `pulumi:"manualBgpAdvertisedCidrs"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// VPC ID where the Transit Gateway is located. Example: AWS: "vpc-abcd1234".
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_vgw_conn** resource manages the connection between the Aviatrix transit gateway and AWS VGW for purposes of Transit Network.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVgwConn(ctx, "testVgwConn", &aviatrix.AviatrixVgwConnArgs{
			BgpLocalAsNum: pulumi.String("65001"),
			BgpVgwAccount: pulumi.String("dev-account-1"),
			BgpVgwId:      pulumi.String("vgw-abcd1234"),
			BgpVgwRegion:  pulumi.String("us-east-1"),
			ConnName:      pulumi.String("my-connection-vgw-to-tgw"),
			GwName:        pulumi.String("my-transit-gw"),
			PrependAsPaths: pulumi.StringArray{
				pulumi.String("65001"),
				pulumi.String("65001"),
			},
			VpcId: pulumi.String("vpc-abcd1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vgw_conn** can be imported using the `conn_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVgwConn:AviatrixVgwConn test conn_name~vpc_id

```

func GetAviatrixVgwConn

func GetAviatrixVgwConn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVgwConnState, opts ...pulumi.ResourceOption) (*AviatrixVgwConn, error)

GetAviatrixVgwConn gets an existing AviatrixVgwConn 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 NewAviatrixVgwConn

func NewAviatrixVgwConn(ctx *pulumi.Context,
	name string, args *AviatrixVgwConnArgs, opts ...pulumi.ResourceOption) (*AviatrixVgwConn, error)

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

func (*AviatrixVgwConn) ElementType

func (*AviatrixVgwConn) ElementType() reflect.Type

func (*AviatrixVgwConn) ToAviatrixVgwConnOutput

func (i *AviatrixVgwConn) ToAviatrixVgwConnOutput() AviatrixVgwConnOutput

func (*AviatrixVgwConn) ToAviatrixVgwConnOutputWithContext

func (i *AviatrixVgwConn) ToAviatrixVgwConnOutputWithContext(ctx context.Context) AviatrixVgwConnOutput

type AviatrixVgwConnArgs

type AviatrixVgwConnArgs struct {
	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	BgpLocalAsNum pulumi.StringInput
	// Cloud Account used to create the AWS VGW that will be used for this connection. Example: "dev-account-1".
	BgpVgwAccount pulumi.StringInput
	// ID of AWS VGW that will be used for this connection. Example: "vgw-abcd1234".
	BgpVgwId pulumi.StringInput
	// Region of AWS VGW that will be used for this connection. Example: "us-east-1".
	BgpVgwRegion pulumi.StringInput
	// The name of for Transit GW to VGW connection connection which is going to be created. Example: "my-connection-vgw-to-tgw".
	ConnName pulumi.StringInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Requires the transit_gateway's 'learned_cidrs_approval_mode' attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Name of the Transit Gateway. Example: "my-transit-gw".
	GwName pulumi.StringInput
	// Configure manual BGP advertised CIDRs for this connection. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayInput
	// VPC ID where the Transit Gateway is located. Example: AWS: "vpc-abcd1234".
	VpcId pulumi.StringInput
}

The set of arguments for constructing a AviatrixVgwConn resource.

func (AviatrixVgwConnArgs) ElementType

func (AviatrixVgwConnArgs) ElementType() reflect.Type

type AviatrixVgwConnArray

type AviatrixVgwConnArray []AviatrixVgwConnInput

func (AviatrixVgwConnArray) ElementType

func (AviatrixVgwConnArray) ElementType() reflect.Type

func (AviatrixVgwConnArray) ToAviatrixVgwConnArrayOutput

func (i AviatrixVgwConnArray) ToAviatrixVgwConnArrayOutput() AviatrixVgwConnArrayOutput

func (AviatrixVgwConnArray) ToAviatrixVgwConnArrayOutputWithContext

func (i AviatrixVgwConnArray) ToAviatrixVgwConnArrayOutputWithContext(ctx context.Context) AviatrixVgwConnArrayOutput

type AviatrixVgwConnArrayInput

type AviatrixVgwConnArrayInput interface {
	pulumi.Input

	ToAviatrixVgwConnArrayOutput() AviatrixVgwConnArrayOutput
	ToAviatrixVgwConnArrayOutputWithContext(context.Context) AviatrixVgwConnArrayOutput
}

AviatrixVgwConnArrayInput is an input type that accepts AviatrixVgwConnArray and AviatrixVgwConnArrayOutput values. You can construct a concrete instance of `AviatrixVgwConnArrayInput` via:

AviatrixVgwConnArray{ AviatrixVgwConnArgs{...} }

type AviatrixVgwConnArrayOutput

type AviatrixVgwConnArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVgwConnArrayOutput) ElementType

func (AviatrixVgwConnArrayOutput) ElementType() reflect.Type

func (AviatrixVgwConnArrayOutput) Index

func (AviatrixVgwConnArrayOutput) ToAviatrixVgwConnArrayOutput

func (o AviatrixVgwConnArrayOutput) ToAviatrixVgwConnArrayOutput() AviatrixVgwConnArrayOutput

func (AviatrixVgwConnArrayOutput) ToAviatrixVgwConnArrayOutputWithContext

func (o AviatrixVgwConnArrayOutput) ToAviatrixVgwConnArrayOutputWithContext(ctx context.Context) AviatrixVgwConnArrayOutput

type AviatrixVgwConnInput

type AviatrixVgwConnInput interface {
	pulumi.Input

	ToAviatrixVgwConnOutput() AviatrixVgwConnOutput
	ToAviatrixVgwConnOutputWithContext(ctx context.Context) AviatrixVgwConnOutput
}

type AviatrixVgwConnMap

type AviatrixVgwConnMap map[string]AviatrixVgwConnInput

func (AviatrixVgwConnMap) ElementType

func (AviatrixVgwConnMap) ElementType() reflect.Type

func (AviatrixVgwConnMap) ToAviatrixVgwConnMapOutput

func (i AviatrixVgwConnMap) ToAviatrixVgwConnMapOutput() AviatrixVgwConnMapOutput

func (AviatrixVgwConnMap) ToAviatrixVgwConnMapOutputWithContext

func (i AviatrixVgwConnMap) ToAviatrixVgwConnMapOutputWithContext(ctx context.Context) AviatrixVgwConnMapOutput

type AviatrixVgwConnMapInput

type AviatrixVgwConnMapInput interface {
	pulumi.Input

	ToAviatrixVgwConnMapOutput() AviatrixVgwConnMapOutput
	ToAviatrixVgwConnMapOutputWithContext(context.Context) AviatrixVgwConnMapOutput
}

AviatrixVgwConnMapInput is an input type that accepts AviatrixVgwConnMap and AviatrixVgwConnMapOutput values. You can construct a concrete instance of `AviatrixVgwConnMapInput` via:

AviatrixVgwConnMap{ "key": AviatrixVgwConnArgs{...} }

type AviatrixVgwConnMapOutput

type AviatrixVgwConnMapOutput struct{ *pulumi.OutputState }

func (AviatrixVgwConnMapOutput) ElementType

func (AviatrixVgwConnMapOutput) ElementType() reflect.Type

func (AviatrixVgwConnMapOutput) MapIndex

func (AviatrixVgwConnMapOutput) ToAviatrixVgwConnMapOutput

func (o AviatrixVgwConnMapOutput) ToAviatrixVgwConnMapOutput() AviatrixVgwConnMapOutput

func (AviatrixVgwConnMapOutput) ToAviatrixVgwConnMapOutputWithContext

func (o AviatrixVgwConnMapOutput) ToAviatrixVgwConnMapOutputWithContext(ctx context.Context) AviatrixVgwConnMapOutput

type AviatrixVgwConnOutput

type AviatrixVgwConnOutput struct{ *pulumi.OutputState }

func (AviatrixVgwConnOutput) BgpLocalAsNum

func (o AviatrixVgwConnOutput) BgpLocalAsNum() pulumi.StringOutput

BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".

func (AviatrixVgwConnOutput) BgpVgwAccount

func (o AviatrixVgwConnOutput) BgpVgwAccount() pulumi.StringOutput

Cloud Account used to create the AWS VGW that will be used for this connection. Example: "dev-account-1".

func (AviatrixVgwConnOutput) BgpVgwId

ID of AWS VGW that will be used for this connection. Example: "vgw-abcd1234".

func (AviatrixVgwConnOutput) BgpVgwRegion

func (o AviatrixVgwConnOutput) BgpVgwRegion() pulumi.StringOutput

Region of AWS VGW that will be used for this connection. Example: "us-east-1".

func (AviatrixVgwConnOutput) ConnName

The name of for Transit GW to VGW connection connection which is going to be created. Example: "my-connection-vgw-to-tgw".

func (AviatrixVgwConnOutput) ElementType

func (AviatrixVgwConnOutput) ElementType() reflect.Type

func (AviatrixVgwConnOutput) EnableEventTriggeredHa

func (o AviatrixVgwConnOutput) EnableEventTriggeredHa() pulumi.BoolPtrOutput

Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.

func (AviatrixVgwConnOutput) EnableLearnedCidrsApproval

func (o AviatrixVgwConnOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Enable learned CIDRs approval for the connection. Requires the transit_gateway's 'learned_cidrs_approval_mode' attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.

func (AviatrixVgwConnOutput) GwName

Name of the Transit Gateway. Example: "my-transit-gw".

func (AviatrixVgwConnOutput) ManualBgpAdvertisedCidrs

func (o AviatrixVgwConnOutput) ManualBgpAdvertisedCidrs() pulumi.StringArrayOutput

Configure manual BGP advertised CIDRs for this connection. Available as of provider version R2.18+.

func (AviatrixVgwConnOutput) PrependAsPaths

func (o AviatrixVgwConnOutput) PrependAsPaths() pulumi.StringArrayOutput

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.

func (AviatrixVgwConnOutput) ToAviatrixVgwConnOutput

func (o AviatrixVgwConnOutput) ToAviatrixVgwConnOutput() AviatrixVgwConnOutput

func (AviatrixVgwConnOutput) ToAviatrixVgwConnOutputWithContext

func (o AviatrixVgwConnOutput) ToAviatrixVgwConnOutputWithContext(ctx context.Context) AviatrixVgwConnOutput

func (AviatrixVgwConnOutput) VpcId

VPC ID where the Transit Gateway is located. Example: AWS: "vpc-abcd1234".

type AviatrixVgwConnState

type AviatrixVgwConnState struct {
	// BGP Local ASN (Autonomous System Number). Integer between 1-4294967294. Example: "65001".
	BgpLocalAsNum pulumi.StringPtrInput
	// Cloud Account used to create the AWS VGW that will be used for this connection. Example: "dev-account-1".
	BgpVgwAccount pulumi.StringPtrInput
	// ID of AWS VGW that will be used for this connection. Example: "vgw-abcd1234".
	BgpVgwId pulumi.StringPtrInput
	// Region of AWS VGW that will be used for this connection. Example: "us-east-1".
	BgpVgwRegion pulumi.StringPtrInput
	// The name of for Transit GW to VGW connection connection which is going to be created. Example: "my-connection-vgw-to-tgw".
	ConnName pulumi.StringPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false. Available as of provider version R2.19+.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Requires the transit_gateway's 'learned_cidrs_approval_mode' attribute be set to 'connection'. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Name of the Transit Gateway. Example: "my-transit-gw".
	GwName pulumi.StringPtrInput
	// Configure manual BGP advertised CIDRs for this connection. Available as of provider version R2.18+.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection. Available as of provider version R2.19.2.
	PrependAsPaths pulumi.StringArrayInput
	// VPC ID where the Transit Gateway is located. Example: AWS: "vpc-abcd1234".
	VpcId pulumi.StringPtrInput
}

func (AviatrixVgwConnState) ElementType

func (AviatrixVgwConnState) ElementType() reflect.Type

type AviatrixVpc

type AviatrixVpc struct {
	pulumi.CustomResourceState

	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// List of OCI availability domains.
	AvailabilityDomains pulumi.StringArrayOutput `pulumi:"availabilityDomains"`
	// Specify whether it is an Aviatrix FireNet VPC to be used for [Aviatrix FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) and [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) solutions. **Only AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixFirenetVpc pulumi.BoolPtrOutput `pulumi:"aviatrixFirenetVpc"`
	// Specify whether it is an [Aviatrix Transit VPC](https://docs.aviatrix.com/HowTos/create_vpc.html#aviatrix-transit-vpc) to be used for [Transit Network](https://docs.aviatrix.com/HowTos/transitvpc_faq.html) or [TGW](https://docs.aviatrix.com/HowTos/tgw_faq.html) solutions. **Only AWS, AWSGov, AWSChina, and Alibaba Cloud are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixTransitVpc pulumi.BoolPtrOutput `pulumi:"aviatrixTransitVpc"`
	// Azure VNet resource ID.
	AzureVnetResourceId pulumi.StringOutput `pulumi:"azureVnetResourceId"`
	// CIDR block.
	Cidr pulumi.StringPtrOutput `pulumi:"cidr"`
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192) are supported.
	CloudType pulumi.IntOutput `pulumi:"cloudType"`
	// Enable Native AWS Gateway Load Balancer for FireNet Function. Only valid with cloudType = 1 (AWS). **This option is only applicable to TGW-integrated FireNet**. Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableNativeGwlb pulumi.BoolPtrOutput `pulumi:"enableNativeGwlb"`
	// Switch to enable private oob subnet. Only supported for AWS, AWSGov and AWSChina providers. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnablePrivateOobSubnet pulumi.BoolPtrOutput `pulumi:"enablePrivateOobSubnet"`
	// List of OCI fault domains.
	FaultDomains pulumi.StringArrayOutput `pulumi:"faultDomains"`
	// Name of this subnet.
	Name pulumi.StringOutput `pulumi:"name"`
	// Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider. Example: 1. Available in provider version R2.17+.
	NumOfSubnetPairs pulumi.IntPtrOutput `pulumi:"numOfSubnetPairs"`
	// Switch to only launch private subnets. Only available when Private Mode is enabled on the Controller. Only AWS, Azure, AzureGov and AWSGov are supported. Available in Provider version R2.23+.
	PrivateModeSubnets pulumi.BoolPtrOutput `pulumi:"privateModeSubnets"`
	// List of private subnet of the VPC(AWS, Azure) to be created.
	PrivateSubnets AviatrixVpcPrivateSubnetArrayOutput `pulumi:"privateSubnets"`
	// List of public subnet of the VPC(AWS, Azure) to be created.
	PublicSubnets AviatrixVpcPublicSubnetArrayOutput `pulumi:"publicSubnets"`
	// Region of this subnet.
	Region pulumi.StringPtrOutput `pulumi:"region"`
	// The name of an existing resource group or a new resource group to be created for the Azure VNet.  A new resource group will be created if left blank. Only available for Azure, AzureGov and AzureChina providers. Available as of provider version R2.19+.
	ResourceGroup pulumi.StringOutput `pulumi:"resourceGroup"`
	// List of route table ids associated with this VPC. Only populated for AWS, AWSGov and Azure VPC.
	RouteTables pulumi.StringArrayOutput `pulumi:"routeTables"`
	// Subnet size. Only supported for AWS, Azure provider. Example: 24. Available in provider version R2.17+.
	SubnetSize pulumi.IntPtrOutput `pulumi:"subnetSize"`
	// List of subnets to be specify for GCP provider. Required to be non-empty for GCP provider, and empty for other providers.
	Subnets AviatrixVpcSubnetArrayOutput `pulumi:"subnets"`
	// ID of the VPC to be created.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_vpc** resource allows the creation and management of Aviatrix-created VPCs of various cloud types.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "awsVpc", &aviatrix.AviatrixVpcArgs{
			AccountName:        pulumi.String("devops"),
			AviatrixFirenetVpc: pulumi.Bool(false),
			AviatrixTransitVpc: pulumi.Bool(false),
			Cidr:               pulumi.String("10.0.0.0/16"),
			CloudType:          pulumi.Int(1),
			Region:             pulumi.String("us-west-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "gcpVpc", &aviatrix.AviatrixVpcArgs{
			AccountName: pulumi.String("devops"),
			CloudType:   pulumi.Int(4),
			Subnets: AviatrixVpcSubnetArray{
				&AviatrixVpcSubnetArgs{
					Cidr:   pulumi.String("10.10.0.0/24"),
					Name:   pulumi.String("subnet-1"),
					Region: pulumi.String("us-west1"),
				},
				&AviatrixVpcSubnetArgs{
					Cidr:   pulumi.String("10.11.0.0/24"),
					Name:   pulumi.String("subnet-2"),
					Region: pulumi.String("us-west2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "azureVnet", &aviatrix.AviatrixVpcArgs{
			AccountName:        pulumi.String("devops"),
			AviatrixFirenetVpc: pulumi.Bool(false),
			Cidr:               pulumi.String("12.0.0.0/16"),
			CloudType:          pulumi.Int(8),
			Region:             pulumi.String("Central US"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "ociVpc", &aviatrix.AviatrixVpcArgs{
			AccountName: pulumi.String("devops"),
			Cidr:        pulumi.String("10.0.0.0/24"),
			CloudType:   pulumi.Int(16),
			Region:      pulumi.String("us-ashburn-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "azureVnet", &aviatrix.AviatrixVpcArgs{
			AccountName:        pulumi.String("devops"),
			AviatrixFirenetVpc: pulumi.Bool(false),
			Cidr:               pulumi.String("12.0.0.0/16"),
			CloudType:          pulumi.Int(32),
			Region:             pulumi.String("USGov Arizona"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "awsgovVnet", &aviatrix.AviatrixVpcArgs{
			AccountName:        pulumi.String("devops"),
			AviatrixFirenetVpc: pulumi.Bool(false),
			AviatrixTransitVpc: pulumi.Bool(false),
			Cidr:               pulumi.String("12.0.0.0/20"),
			CloudType:          pulumi.Int(256),
			Region:             pulumi.String("us-gov-west-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "awsChinaVnet", &aviatrix.AviatrixVpcArgs{
			AccountName:        pulumi.String("devops"),
			AviatrixTransitVpc: pulumi.Bool(false),
			Cidr:               pulumi.String("12.0.0.0/20"),
			CloudType:          pulumi.Int(1024),
			Region:             pulumi.String("cn-north-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "azureChinaVnet", &aviatrix.AviatrixVpcArgs{
			AccountName: pulumi.String("devops"),
			Cidr:        pulumi.String("12.0.0.0/16"),
			CloudType:   pulumi.Int(2048),
			Region:      pulumi.String("China North"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpc(ctx, "aliyunVpc", &aviatrix.AviatrixVpcArgs{
			AccountName: pulumi.String("devops"),
			Cidr:        pulumi.String("10.0.0.0/20"),
			CloudType:   pulumi.Int(8192),
			Region:      pulumi.String("acs-us-west-1 (Silicon Valley)"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vpc** can be imported using the VPC's `name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVpc:AviatrixVpc test name

```

func GetAviatrixVpc

func GetAviatrixVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVpcState, opts ...pulumi.ResourceOption) (*AviatrixVpc, error)

GetAviatrixVpc gets an existing AviatrixVpc 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 NewAviatrixVpc

func NewAviatrixVpc(ctx *pulumi.Context,
	name string, args *AviatrixVpcArgs, opts ...pulumi.ResourceOption) (*AviatrixVpc, error)

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

func (*AviatrixVpc) ElementType

func (*AviatrixVpc) ElementType() reflect.Type

func (*AviatrixVpc) ToAviatrixVpcOutput

func (i *AviatrixVpc) ToAviatrixVpcOutput() AviatrixVpcOutput

func (*AviatrixVpc) ToAviatrixVpcOutputWithContext

func (i *AviatrixVpc) ToAviatrixVpcOutputWithContext(ctx context.Context) AviatrixVpcOutput

type AviatrixVpcArgs

type AviatrixVpcArgs struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringInput
	// Specify whether it is an Aviatrix FireNet VPC to be used for [Aviatrix FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) and [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) solutions. **Only AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixFirenetVpc pulumi.BoolPtrInput
	// Specify whether it is an [Aviatrix Transit VPC](https://docs.aviatrix.com/HowTos/create_vpc.html#aviatrix-transit-vpc) to be used for [Transit Network](https://docs.aviatrix.com/HowTos/transitvpc_faq.html) or [TGW](https://docs.aviatrix.com/HowTos/tgw_faq.html) solutions. **Only AWS, AWSGov, AWSChina, and Alibaba Cloud are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixTransitVpc pulumi.BoolPtrInput
	// CIDR block.
	Cidr pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192) are supported.
	CloudType pulumi.IntInput
	// Enable Native AWS Gateway Load Balancer for FireNet Function. Only valid with cloudType = 1 (AWS). **This option is only applicable to TGW-integrated FireNet**. Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableNativeGwlb pulumi.BoolPtrInput
	// Switch to enable private oob subnet. Only supported for AWS, AWSGov and AWSChina providers. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnablePrivateOobSubnet pulumi.BoolPtrInput
	// Name of this subnet.
	Name pulumi.StringPtrInput
	// Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider. Example: 1. Available in provider version R2.17+.
	NumOfSubnetPairs pulumi.IntPtrInput
	// Switch to only launch private subnets. Only available when Private Mode is enabled on the Controller. Only AWS, Azure, AzureGov and AWSGov are supported. Available in Provider version R2.23+.
	PrivateModeSubnets pulumi.BoolPtrInput
	// Region of this subnet.
	Region pulumi.StringPtrInput
	// The name of an existing resource group or a new resource group to be created for the Azure VNet.  A new resource group will be created if left blank. Only available for Azure, AzureGov and AzureChina providers. Available as of provider version R2.19+.
	ResourceGroup pulumi.StringPtrInput
	// Subnet size. Only supported for AWS, Azure provider. Example: 24. Available in provider version R2.17+.
	SubnetSize pulumi.IntPtrInput
	// List of subnets to be specify for GCP provider. Required to be non-empty for GCP provider, and empty for other providers.
	Subnets AviatrixVpcSubnetArrayInput
}

The set of arguments for constructing a AviatrixVpc resource.

func (AviatrixVpcArgs) ElementType

func (AviatrixVpcArgs) ElementType() reflect.Type

type AviatrixVpcArray

type AviatrixVpcArray []AviatrixVpcInput

func (AviatrixVpcArray) ElementType

func (AviatrixVpcArray) ElementType() reflect.Type

func (AviatrixVpcArray) ToAviatrixVpcArrayOutput

func (i AviatrixVpcArray) ToAviatrixVpcArrayOutput() AviatrixVpcArrayOutput

func (AviatrixVpcArray) ToAviatrixVpcArrayOutputWithContext

func (i AviatrixVpcArray) ToAviatrixVpcArrayOutputWithContext(ctx context.Context) AviatrixVpcArrayOutput

type AviatrixVpcArrayInput

type AviatrixVpcArrayInput interface {
	pulumi.Input

	ToAviatrixVpcArrayOutput() AviatrixVpcArrayOutput
	ToAviatrixVpcArrayOutputWithContext(context.Context) AviatrixVpcArrayOutput
}

AviatrixVpcArrayInput is an input type that accepts AviatrixVpcArray and AviatrixVpcArrayOutput values. You can construct a concrete instance of `AviatrixVpcArrayInput` via:

AviatrixVpcArray{ AviatrixVpcArgs{...} }

type AviatrixVpcArrayOutput

type AviatrixVpcArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpcArrayOutput) ElementType

func (AviatrixVpcArrayOutput) ElementType() reflect.Type

func (AviatrixVpcArrayOutput) Index

func (AviatrixVpcArrayOutput) ToAviatrixVpcArrayOutput

func (o AviatrixVpcArrayOutput) ToAviatrixVpcArrayOutput() AviatrixVpcArrayOutput

func (AviatrixVpcArrayOutput) ToAviatrixVpcArrayOutputWithContext

func (o AviatrixVpcArrayOutput) ToAviatrixVpcArrayOutputWithContext(ctx context.Context) AviatrixVpcArrayOutput

type AviatrixVpcInput

type AviatrixVpcInput interface {
	pulumi.Input

	ToAviatrixVpcOutput() AviatrixVpcOutput
	ToAviatrixVpcOutputWithContext(ctx context.Context) AviatrixVpcOutput
}

type AviatrixVpcMap

type AviatrixVpcMap map[string]AviatrixVpcInput

func (AviatrixVpcMap) ElementType

func (AviatrixVpcMap) ElementType() reflect.Type

func (AviatrixVpcMap) ToAviatrixVpcMapOutput

func (i AviatrixVpcMap) ToAviatrixVpcMapOutput() AviatrixVpcMapOutput

func (AviatrixVpcMap) ToAviatrixVpcMapOutputWithContext

func (i AviatrixVpcMap) ToAviatrixVpcMapOutputWithContext(ctx context.Context) AviatrixVpcMapOutput

type AviatrixVpcMapInput

type AviatrixVpcMapInput interface {
	pulumi.Input

	ToAviatrixVpcMapOutput() AviatrixVpcMapOutput
	ToAviatrixVpcMapOutputWithContext(context.Context) AviatrixVpcMapOutput
}

AviatrixVpcMapInput is an input type that accepts AviatrixVpcMap and AviatrixVpcMapOutput values. You can construct a concrete instance of `AviatrixVpcMapInput` via:

AviatrixVpcMap{ "key": AviatrixVpcArgs{...} }

type AviatrixVpcMapOutput

type AviatrixVpcMapOutput struct{ *pulumi.OutputState }

func (AviatrixVpcMapOutput) ElementType

func (AviatrixVpcMapOutput) ElementType() reflect.Type

func (AviatrixVpcMapOutput) MapIndex

func (AviatrixVpcMapOutput) ToAviatrixVpcMapOutput

func (o AviatrixVpcMapOutput) ToAviatrixVpcMapOutput() AviatrixVpcMapOutput

func (AviatrixVpcMapOutput) ToAviatrixVpcMapOutputWithContext

func (o AviatrixVpcMapOutput) ToAviatrixVpcMapOutputWithContext(ctx context.Context) AviatrixVpcMapOutput

type AviatrixVpcOutput

type AviatrixVpcOutput struct{ *pulumi.OutputState }

func (AviatrixVpcOutput) AccountName

func (o AviatrixVpcOutput) AccountName() pulumi.StringOutput

This parameter represents the name of a Cloud-Account in Aviatrix controller.

func (AviatrixVpcOutput) AvailabilityDomains

func (o AviatrixVpcOutput) AvailabilityDomains() pulumi.StringArrayOutput

List of OCI availability domains.

func (AviatrixVpcOutput) AviatrixFirenetVpc

func (o AviatrixVpcOutput) AviatrixFirenetVpc() pulumi.BoolPtrOutput

Specify whether it is an Aviatrix FireNet VPC to be used for [Aviatrix FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) and [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) solutions. **Only AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina are supported. Required to be false for other providers.** Valid values: true, false. Default: false.

func (AviatrixVpcOutput) AviatrixTransitVpc

func (o AviatrixVpcOutput) AviatrixTransitVpc() pulumi.BoolPtrOutput

Specify whether it is an [Aviatrix Transit VPC](https://docs.aviatrix.com/HowTos/create_vpc.html#aviatrix-transit-vpc) to be used for [Transit Network](https://docs.aviatrix.com/HowTos/transitvpc_faq.html) or [TGW](https://docs.aviatrix.com/HowTos/tgw_faq.html) solutions. **Only AWS, AWSGov, AWSChina, and Alibaba Cloud are supported. Required to be false for other providers.** Valid values: true, false. Default: false.

func (AviatrixVpcOutput) AzureVnetResourceId

func (o AviatrixVpcOutput) AzureVnetResourceId() pulumi.StringOutput

Azure VNet resource ID.

func (AviatrixVpcOutput) Cidr

CIDR block.

func (AviatrixVpcOutput) CloudType

func (o AviatrixVpcOutput) CloudType() pulumi.IntOutput

Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192) are supported.

func (AviatrixVpcOutput) ElementType

func (AviatrixVpcOutput) ElementType() reflect.Type

func (AviatrixVpcOutput) EnableNativeGwlb

func (o AviatrixVpcOutput) EnableNativeGwlb() pulumi.BoolPtrOutput

Enable Native AWS Gateway Load Balancer for FireNet Function. Only valid with cloudType = 1 (AWS). **This option is only applicable to TGW-integrated FireNet**. Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.

func (AviatrixVpcOutput) EnablePrivateOobSubnet

func (o AviatrixVpcOutput) EnablePrivateOobSubnet() pulumi.BoolPtrOutput

Switch to enable private oob subnet. Only supported for AWS, AWSGov and AWSChina providers. Valid values: true, false. Default value: false. Available as of provider version R2.18+.

func (AviatrixVpcOutput) FaultDomains

func (o AviatrixVpcOutput) FaultDomains() pulumi.StringArrayOutput

List of OCI fault domains.

func (AviatrixVpcOutput) Name

Name of this subnet.

func (AviatrixVpcOutput) NumOfSubnetPairs

func (o AviatrixVpcOutput) NumOfSubnetPairs() pulumi.IntPtrOutput

Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider. Example: 1. Available in provider version R2.17+.

func (AviatrixVpcOutput) PrivateModeSubnets

func (o AviatrixVpcOutput) PrivateModeSubnets() pulumi.BoolPtrOutput

Switch to only launch private subnets. Only available when Private Mode is enabled on the Controller. Only AWS, Azure, AzureGov and AWSGov are supported. Available in Provider version R2.23+.

func (AviatrixVpcOutput) PrivateSubnets

List of private subnet of the VPC(AWS, Azure) to be created.

func (AviatrixVpcOutput) PublicSubnets

List of public subnet of the VPC(AWS, Azure) to be created.

func (AviatrixVpcOutput) Region

Region of this subnet.

func (AviatrixVpcOutput) ResourceGroup

func (o AviatrixVpcOutput) ResourceGroup() pulumi.StringOutput

The name of an existing resource group or a new resource group to be created for the Azure VNet. A new resource group will be created if left blank. Only available for Azure, AzureGov and AzureChina providers. Available as of provider version R2.19+.

func (AviatrixVpcOutput) RouteTables

func (o AviatrixVpcOutput) RouteTables() pulumi.StringArrayOutput

List of route table ids associated with this VPC. Only populated for AWS, AWSGov and Azure VPC.

func (AviatrixVpcOutput) SubnetSize

func (o AviatrixVpcOutput) SubnetSize() pulumi.IntPtrOutput

Subnet size. Only supported for AWS, Azure provider. Example: 24. Available in provider version R2.17+.

func (AviatrixVpcOutput) Subnets

List of subnets to be specify for GCP provider. Required to be non-empty for GCP provider, and empty for other providers.

func (AviatrixVpcOutput) ToAviatrixVpcOutput

func (o AviatrixVpcOutput) ToAviatrixVpcOutput() AviatrixVpcOutput

func (AviatrixVpcOutput) ToAviatrixVpcOutputWithContext

func (o AviatrixVpcOutput) ToAviatrixVpcOutputWithContext(ctx context.Context) AviatrixVpcOutput

func (AviatrixVpcOutput) VpcId

ID of the VPC to be created.

type AviatrixVpcPrivateSubnet

type AviatrixVpcPrivateSubnet struct {
	// CIDR block.
	Cidr *string `pulumi:"cidr"`
	// Name of this subnet.
	Name *string `pulumi:"name"`
	// ID of this subnet.
	SubnetId *string `pulumi:"subnetId"`
}

type AviatrixVpcPrivateSubnetArgs

type AviatrixVpcPrivateSubnetArgs struct {
	// CIDR block.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Name of this subnet.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// ID of this subnet.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (AviatrixVpcPrivateSubnetArgs) ElementType

func (AviatrixVpcPrivateSubnetArgs) ToAviatrixVpcPrivateSubnetOutput

func (i AviatrixVpcPrivateSubnetArgs) ToAviatrixVpcPrivateSubnetOutput() AviatrixVpcPrivateSubnetOutput

func (AviatrixVpcPrivateSubnetArgs) ToAviatrixVpcPrivateSubnetOutputWithContext

func (i AviatrixVpcPrivateSubnetArgs) ToAviatrixVpcPrivateSubnetOutputWithContext(ctx context.Context) AviatrixVpcPrivateSubnetOutput

type AviatrixVpcPrivateSubnetArray

type AviatrixVpcPrivateSubnetArray []AviatrixVpcPrivateSubnetInput

func (AviatrixVpcPrivateSubnetArray) ElementType

func (AviatrixVpcPrivateSubnetArray) ToAviatrixVpcPrivateSubnetArrayOutput

func (i AviatrixVpcPrivateSubnetArray) ToAviatrixVpcPrivateSubnetArrayOutput() AviatrixVpcPrivateSubnetArrayOutput

func (AviatrixVpcPrivateSubnetArray) ToAviatrixVpcPrivateSubnetArrayOutputWithContext

func (i AviatrixVpcPrivateSubnetArray) ToAviatrixVpcPrivateSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcPrivateSubnetArrayOutput

type AviatrixVpcPrivateSubnetArrayInput

type AviatrixVpcPrivateSubnetArrayInput interface {
	pulumi.Input

	ToAviatrixVpcPrivateSubnetArrayOutput() AviatrixVpcPrivateSubnetArrayOutput
	ToAviatrixVpcPrivateSubnetArrayOutputWithContext(context.Context) AviatrixVpcPrivateSubnetArrayOutput
}

AviatrixVpcPrivateSubnetArrayInput is an input type that accepts AviatrixVpcPrivateSubnetArray and AviatrixVpcPrivateSubnetArrayOutput values. You can construct a concrete instance of `AviatrixVpcPrivateSubnetArrayInput` via:

AviatrixVpcPrivateSubnetArray{ AviatrixVpcPrivateSubnetArgs{...} }

type AviatrixVpcPrivateSubnetArrayOutput

type AviatrixVpcPrivateSubnetArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpcPrivateSubnetArrayOutput) ElementType

func (AviatrixVpcPrivateSubnetArrayOutput) Index

func (AviatrixVpcPrivateSubnetArrayOutput) ToAviatrixVpcPrivateSubnetArrayOutput

func (o AviatrixVpcPrivateSubnetArrayOutput) ToAviatrixVpcPrivateSubnetArrayOutput() AviatrixVpcPrivateSubnetArrayOutput

func (AviatrixVpcPrivateSubnetArrayOutput) ToAviatrixVpcPrivateSubnetArrayOutputWithContext

func (o AviatrixVpcPrivateSubnetArrayOutput) ToAviatrixVpcPrivateSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcPrivateSubnetArrayOutput

type AviatrixVpcPrivateSubnetInput

type AviatrixVpcPrivateSubnetInput interface {
	pulumi.Input

	ToAviatrixVpcPrivateSubnetOutput() AviatrixVpcPrivateSubnetOutput
	ToAviatrixVpcPrivateSubnetOutputWithContext(context.Context) AviatrixVpcPrivateSubnetOutput
}

AviatrixVpcPrivateSubnetInput is an input type that accepts AviatrixVpcPrivateSubnetArgs and AviatrixVpcPrivateSubnetOutput values. You can construct a concrete instance of `AviatrixVpcPrivateSubnetInput` via:

AviatrixVpcPrivateSubnetArgs{...}

type AviatrixVpcPrivateSubnetOutput

type AviatrixVpcPrivateSubnetOutput struct{ *pulumi.OutputState }

func (AviatrixVpcPrivateSubnetOutput) Cidr

CIDR block.

func (AviatrixVpcPrivateSubnetOutput) ElementType

func (AviatrixVpcPrivateSubnetOutput) Name

Name of this subnet.

func (AviatrixVpcPrivateSubnetOutput) SubnetId

ID of this subnet.

func (AviatrixVpcPrivateSubnetOutput) ToAviatrixVpcPrivateSubnetOutput

func (o AviatrixVpcPrivateSubnetOutput) ToAviatrixVpcPrivateSubnetOutput() AviatrixVpcPrivateSubnetOutput

func (AviatrixVpcPrivateSubnetOutput) ToAviatrixVpcPrivateSubnetOutputWithContext

func (o AviatrixVpcPrivateSubnetOutput) ToAviatrixVpcPrivateSubnetOutputWithContext(ctx context.Context) AviatrixVpcPrivateSubnetOutput

type AviatrixVpcPublicSubnet

type AviatrixVpcPublicSubnet struct {
	// CIDR block.
	Cidr *string `pulumi:"cidr"`
	// Name of this subnet.
	Name *string `pulumi:"name"`
	// ID of this subnet.
	SubnetId *string `pulumi:"subnetId"`
}

type AviatrixVpcPublicSubnetArgs

type AviatrixVpcPublicSubnetArgs struct {
	// CIDR block.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Name of this subnet.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// ID of this subnet.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (AviatrixVpcPublicSubnetArgs) ElementType

func (AviatrixVpcPublicSubnetArgs) ToAviatrixVpcPublicSubnetOutput

func (i AviatrixVpcPublicSubnetArgs) ToAviatrixVpcPublicSubnetOutput() AviatrixVpcPublicSubnetOutput

func (AviatrixVpcPublicSubnetArgs) ToAviatrixVpcPublicSubnetOutputWithContext

func (i AviatrixVpcPublicSubnetArgs) ToAviatrixVpcPublicSubnetOutputWithContext(ctx context.Context) AviatrixVpcPublicSubnetOutput

type AviatrixVpcPublicSubnetArray

type AviatrixVpcPublicSubnetArray []AviatrixVpcPublicSubnetInput

func (AviatrixVpcPublicSubnetArray) ElementType

func (AviatrixVpcPublicSubnetArray) ToAviatrixVpcPublicSubnetArrayOutput

func (i AviatrixVpcPublicSubnetArray) ToAviatrixVpcPublicSubnetArrayOutput() AviatrixVpcPublicSubnetArrayOutput

func (AviatrixVpcPublicSubnetArray) ToAviatrixVpcPublicSubnetArrayOutputWithContext

func (i AviatrixVpcPublicSubnetArray) ToAviatrixVpcPublicSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcPublicSubnetArrayOutput

type AviatrixVpcPublicSubnetArrayInput

type AviatrixVpcPublicSubnetArrayInput interface {
	pulumi.Input

	ToAviatrixVpcPublicSubnetArrayOutput() AviatrixVpcPublicSubnetArrayOutput
	ToAviatrixVpcPublicSubnetArrayOutputWithContext(context.Context) AviatrixVpcPublicSubnetArrayOutput
}

AviatrixVpcPublicSubnetArrayInput is an input type that accepts AviatrixVpcPublicSubnetArray and AviatrixVpcPublicSubnetArrayOutput values. You can construct a concrete instance of `AviatrixVpcPublicSubnetArrayInput` via:

AviatrixVpcPublicSubnetArray{ AviatrixVpcPublicSubnetArgs{...} }

type AviatrixVpcPublicSubnetArrayOutput

type AviatrixVpcPublicSubnetArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpcPublicSubnetArrayOutput) ElementType

func (AviatrixVpcPublicSubnetArrayOutput) Index

func (AviatrixVpcPublicSubnetArrayOutput) ToAviatrixVpcPublicSubnetArrayOutput

func (o AviatrixVpcPublicSubnetArrayOutput) ToAviatrixVpcPublicSubnetArrayOutput() AviatrixVpcPublicSubnetArrayOutput

func (AviatrixVpcPublicSubnetArrayOutput) ToAviatrixVpcPublicSubnetArrayOutputWithContext

func (o AviatrixVpcPublicSubnetArrayOutput) ToAviatrixVpcPublicSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcPublicSubnetArrayOutput

type AviatrixVpcPublicSubnetInput

type AviatrixVpcPublicSubnetInput interface {
	pulumi.Input

	ToAviatrixVpcPublicSubnetOutput() AviatrixVpcPublicSubnetOutput
	ToAviatrixVpcPublicSubnetOutputWithContext(context.Context) AviatrixVpcPublicSubnetOutput
}

AviatrixVpcPublicSubnetInput is an input type that accepts AviatrixVpcPublicSubnetArgs and AviatrixVpcPublicSubnetOutput values. You can construct a concrete instance of `AviatrixVpcPublicSubnetInput` via:

AviatrixVpcPublicSubnetArgs{...}

type AviatrixVpcPublicSubnetOutput

type AviatrixVpcPublicSubnetOutput struct{ *pulumi.OutputState }

func (AviatrixVpcPublicSubnetOutput) Cidr

CIDR block.

func (AviatrixVpcPublicSubnetOutput) ElementType

func (AviatrixVpcPublicSubnetOutput) Name

Name of this subnet.

func (AviatrixVpcPublicSubnetOutput) SubnetId

ID of this subnet.

func (AviatrixVpcPublicSubnetOutput) ToAviatrixVpcPublicSubnetOutput

func (o AviatrixVpcPublicSubnetOutput) ToAviatrixVpcPublicSubnetOutput() AviatrixVpcPublicSubnetOutput

func (AviatrixVpcPublicSubnetOutput) ToAviatrixVpcPublicSubnetOutputWithContext

func (o AviatrixVpcPublicSubnetOutput) ToAviatrixVpcPublicSubnetOutputWithContext(ctx context.Context) AviatrixVpcPublicSubnetOutput

type AviatrixVpcState

type AviatrixVpcState struct {
	// This parameter represents the name of a Cloud-Account in Aviatrix controller.
	AccountName pulumi.StringPtrInput
	// List of OCI availability domains.
	AvailabilityDomains pulumi.StringArrayInput
	// Specify whether it is an Aviatrix FireNet VPC to be used for [Aviatrix FireNet](https://docs.aviatrix.com/HowTos/firewall_network_faq.html) and [Transit FireNet](https://docs.aviatrix.com/HowTos/transit_firenet_faq.html) solutions. **Only AWS, Azure, AzureGov, AWSGov, AWSChina and AzureChina are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixFirenetVpc pulumi.BoolPtrInput
	// Specify whether it is an [Aviatrix Transit VPC](https://docs.aviatrix.com/HowTos/create_vpc.html#aviatrix-transit-vpc) to be used for [Transit Network](https://docs.aviatrix.com/HowTos/transitvpc_faq.html) or [TGW](https://docs.aviatrix.com/HowTos/tgw_faq.html) solutions. **Only AWS, AWSGov, AWSChina, and Alibaba Cloud are supported. Required to be false for other providers.** Valid values: true, false. Default: false.
	AviatrixTransitVpc pulumi.BoolPtrInput
	// Azure VNet resource ID.
	AzureVnetResourceId pulumi.StringPtrInput
	// CIDR block.
	Cidr pulumi.StringPtrInput
	// Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192) are supported.
	CloudType pulumi.IntPtrInput
	// Enable Native AWS Gateway Load Balancer for FireNet Function. Only valid with cloudType = 1 (AWS). **This option is only applicable to TGW-integrated FireNet**. Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+.
	EnableNativeGwlb pulumi.BoolPtrInput
	// Switch to enable private oob subnet. Only supported for AWS, AWSGov and AWSChina providers. Valid values: true, false. Default value: false. Available as of provider version R2.18+.
	EnablePrivateOobSubnet pulumi.BoolPtrInput
	// List of OCI fault domains.
	FaultDomains pulumi.StringArrayInput
	// Name of this subnet.
	Name pulumi.StringPtrInput
	// Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider. Example: 1. Available in provider version R2.17+.
	NumOfSubnetPairs pulumi.IntPtrInput
	// Switch to only launch private subnets. Only available when Private Mode is enabled on the Controller. Only AWS, Azure, AzureGov and AWSGov are supported. Available in Provider version R2.23+.
	PrivateModeSubnets pulumi.BoolPtrInput
	// List of private subnet of the VPC(AWS, Azure) to be created.
	PrivateSubnets AviatrixVpcPrivateSubnetArrayInput
	// List of public subnet of the VPC(AWS, Azure) to be created.
	PublicSubnets AviatrixVpcPublicSubnetArrayInput
	// Region of this subnet.
	Region pulumi.StringPtrInput
	// The name of an existing resource group or a new resource group to be created for the Azure VNet.  A new resource group will be created if left blank. Only available for Azure, AzureGov and AzureChina providers. Available as of provider version R2.19+.
	ResourceGroup pulumi.StringPtrInput
	// List of route table ids associated with this VPC. Only populated for AWS, AWSGov and Azure VPC.
	RouteTables pulumi.StringArrayInput
	// Subnet size. Only supported for AWS, Azure provider. Example: 24. Available in provider version R2.17+.
	SubnetSize pulumi.IntPtrInput
	// List of subnets to be specify for GCP provider. Required to be non-empty for GCP provider, and empty for other providers.
	Subnets AviatrixVpcSubnetArrayInput
	// ID of the VPC to be created.
	VpcId pulumi.StringPtrInput
}

func (AviatrixVpcState) ElementType

func (AviatrixVpcState) ElementType() reflect.Type

type AviatrixVpcSubnet

type AviatrixVpcSubnet struct {
	// CIDR block.
	Cidr *string `pulumi:"cidr"`
	// Name of this subnet.
	Name *string `pulumi:"name"`
	// Region of this subnet.
	Region *string `pulumi:"region"`
	// ID of this subnet.
	SubnetId *string `pulumi:"subnetId"`
}

type AviatrixVpcSubnetArgs

type AviatrixVpcSubnetArgs struct {
	// CIDR block.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Name of this subnet.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Region of this subnet.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// ID of this subnet.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (AviatrixVpcSubnetArgs) ElementType

func (AviatrixVpcSubnetArgs) ElementType() reflect.Type

func (AviatrixVpcSubnetArgs) ToAviatrixVpcSubnetOutput

func (i AviatrixVpcSubnetArgs) ToAviatrixVpcSubnetOutput() AviatrixVpcSubnetOutput

func (AviatrixVpcSubnetArgs) ToAviatrixVpcSubnetOutputWithContext

func (i AviatrixVpcSubnetArgs) ToAviatrixVpcSubnetOutputWithContext(ctx context.Context) AviatrixVpcSubnetOutput

type AviatrixVpcSubnetArray

type AviatrixVpcSubnetArray []AviatrixVpcSubnetInput

func (AviatrixVpcSubnetArray) ElementType

func (AviatrixVpcSubnetArray) ElementType() reflect.Type

func (AviatrixVpcSubnetArray) ToAviatrixVpcSubnetArrayOutput

func (i AviatrixVpcSubnetArray) ToAviatrixVpcSubnetArrayOutput() AviatrixVpcSubnetArrayOutput

func (AviatrixVpcSubnetArray) ToAviatrixVpcSubnetArrayOutputWithContext

func (i AviatrixVpcSubnetArray) ToAviatrixVpcSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcSubnetArrayOutput

type AviatrixVpcSubnetArrayInput

type AviatrixVpcSubnetArrayInput interface {
	pulumi.Input

	ToAviatrixVpcSubnetArrayOutput() AviatrixVpcSubnetArrayOutput
	ToAviatrixVpcSubnetArrayOutputWithContext(context.Context) AviatrixVpcSubnetArrayOutput
}

AviatrixVpcSubnetArrayInput is an input type that accepts AviatrixVpcSubnetArray and AviatrixVpcSubnetArrayOutput values. You can construct a concrete instance of `AviatrixVpcSubnetArrayInput` via:

AviatrixVpcSubnetArray{ AviatrixVpcSubnetArgs{...} }

type AviatrixVpcSubnetArrayOutput

type AviatrixVpcSubnetArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpcSubnetArrayOutput) ElementType

func (AviatrixVpcSubnetArrayOutput) Index

func (AviatrixVpcSubnetArrayOutput) ToAviatrixVpcSubnetArrayOutput

func (o AviatrixVpcSubnetArrayOutput) ToAviatrixVpcSubnetArrayOutput() AviatrixVpcSubnetArrayOutput

func (AviatrixVpcSubnetArrayOutput) ToAviatrixVpcSubnetArrayOutputWithContext

func (o AviatrixVpcSubnetArrayOutput) ToAviatrixVpcSubnetArrayOutputWithContext(ctx context.Context) AviatrixVpcSubnetArrayOutput

type AviatrixVpcSubnetInput

type AviatrixVpcSubnetInput interface {
	pulumi.Input

	ToAviatrixVpcSubnetOutput() AviatrixVpcSubnetOutput
	ToAviatrixVpcSubnetOutputWithContext(context.Context) AviatrixVpcSubnetOutput
}

AviatrixVpcSubnetInput is an input type that accepts AviatrixVpcSubnetArgs and AviatrixVpcSubnetOutput values. You can construct a concrete instance of `AviatrixVpcSubnetInput` via:

AviatrixVpcSubnetArgs{...}

type AviatrixVpcSubnetOutput

type AviatrixVpcSubnetOutput struct{ *pulumi.OutputState }

func (AviatrixVpcSubnetOutput) Cidr

CIDR block.

func (AviatrixVpcSubnetOutput) ElementType

func (AviatrixVpcSubnetOutput) ElementType() reflect.Type

func (AviatrixVpcSubnetOutput) Name

Name of this subnet.

func (AviatrixVpcSubnetOutput) Region

Region of this subnet.

func (AviatrixVpcSubnetOutput) SubnetId

ID of this subnet.

func (AviatrixVpcSubnetOutput) ToAviatrixVpcSubnetOutput

func (o AviatrixVpcSubnetOutput) ToAviatrixVpcSubnetOutput() AviatrixVpcSubnetOutput

func (AviatrixVpcSubnetOutput) ToAviatrixVpcSubnetOutputWithContext

func (o AviatrixVpcSubnetOutput) ToAviatrixVpcSubnetOutputWithContext(ctx context.Context) AviatrixVpcSubnetOutput

type AviatrixVpnCertDownload

type AviatrixVpnCertDownload struct {
	pulumi.CustomResourceState

	// Whether the VPN Certificate download is enabled. Supported Values: "true", "false".
	DownloadEnabled pulumi.BoolPtrOutput `pulumi:"downloadEnabled"`
	// List of SAML endpoint names for which the downloading should be enabled . Currently, only a single endpoint is supported. Example: ["samlEndpoint1"].
	SamlEndpoints pulumi.StringArrayOutput `pulumi:"samlEndpoints"`
}

The **aviatrix_vpn_cert_download** resource manages the VPN Certificate Download configuration for SAML Authentication

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnCertDownload(ctx, "testVpnCertDownload", &aviatrix.AviatrixVpnCertDownloadArgs{
			DownloadEnabled: pulumi.Bool(true),
			SamlEndpoints: pulumi.StringArray{
				pulumi.String("saml_endpoint_name"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vpn_cert_download** can be imported using the default id `vpn_cert_download`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVpnCertDownload:AviatrixVpnCertDownload test_vpn_cert_download vpn_cert_download

```

func GetAviatrixVpnCertDownload

func GetAviatrixVpnCertDownload(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVpnCertDownloadState, opts ...pulumi.ResourceOption) (*AviatrixVpnCertDownload, error)

GetAviatrixVpnCertDownload gets an existing AviatrixVpnCertDownload 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 NewAviatrixVpnCertDownload

func NewAviatrixVpnCertDownload(ctx *pulumi.Context,
	name string, args *AviatrixVpnCertDownloadArgs, opts ...pulumi.ResourceOption) (*AviatrixVpnCertDownload, error)

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

func (*AviatrixVpnCertDownload) ElementType

func (*AviatrixVpnCertDownload) ElementType() reflect.Type

func (*AviatrixVpnCertDownload) ToAviatrixVpnCertDownloadOutput

func (i *AviatrixVpnCertDownload) ToAviatrixVpnCertDownloadOutput() AviatrixVpnCertDownloadOutput

func (*AviatrixVpnCertDownload) ToAviatrixVpnCertDownloadOutputWithContext

func (i *AviatrixVpnCertDownload) ToAviatrixVpnCertDownloadOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadOutput

type AviatrixVpnCertDownloadArgs

type AviatrixVpnCertDownloadArgs struct {
	// Whether the VPN Certificate download is enabled. Supported Values: "true", "false".
	DownloadEnabled pulumi.BoolPtrInput
	// List of SAML endpoint names for which the downloading should be enabled . Currently, only a single endpoint is supported. Example: ["samlEndpoint1"].
	SamlEndpoints pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixVpnCertDownload resource.

func (AviatrixVpnCertDownloadArgs) ElementType

type AviatrixVpnCertDownloadArray

type AviatrixVpnCertDownloadArray []AviatrixVpnCertDownloadInput

func (AviatrixVpnCertDownloadArray) ElementType

func (AviatrixVpnCertDownloadArray) ToAviatrixVpnCertDownloadArrayOutput

func (i AviatrixVpnCertDownloadArray) ToAviatrixVpnCertDownloadArrayOutput() AviatrixVpnCertDownloadArrayOutput

func (AviatrixVpnCertDownloadArray) ToAviatrixVpnCertDownloadArrayOutputWithContext

func (i AviatrixVpnCertDownloadArray) ToAviatrixVpnCertDownloadArrayOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadArrayOutput

type AviatrixVpnCertDownloadArrayInput

type AviatrixVpnCertDownloadArrayInput interface {
	pulumi.Input

	ToAviatrixVpnCertDownloadArrayOutput() AviatrixVpnCertDownloadArrayOutput
	ToAviatrixVpnCertDownloadArrayOutputWithContext(context.Context) AviatrixVpnCertDownloadArrayOutput
}

AviatrixVpnCertDownloadArrayInput is an input type that accepts AviatrixVpnCertDownloadArray and AviatrixVpnCertDownloadArrayOutput values. You can construct a concrete instance of `AviatrixVpnCertDownloadArrayInput` via:

AviatrixVpnCertDownloadArray{ AviatrixVpnCertDownloadArgs{...} }

type AviatrixVpnCertDownloadArrayOutput

type AviatrixVpnCertDownloadArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpnCertDownloadArrayOutput) ElementType

func (AviatrixVpnCertDownloadArrayOutput) Index

func (AviatrixVpnCertDownloadArrayOutput) ToAviatrixVpnCertDownloadArrayOutput

func (o AviatrixVpnCertDownloadArrayOutput) ToAviatrixVpnCertDownloadArrayOutput() AviatrixVpnCertDownloadArrayOutput

func (AviatrixVpnCertDownloadArrayOutput) ToAviatrixVpnCertDownloadArrayOutputWithContext

func (o AviatrixVpnCertDownloadArrayOutput) ToAviatrixVpnCertDownloadArrayOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadArrayOutput

type AviatrixVpnCertDownloadInput

type AviatrixVpnCertDownloadInput interface {
	pulumi.Input

	ToAviatrixVpnCertDownloadOutput() AviatrixVpnCertDownloadOutput
	ToAviatrixVpnCertDownloadOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadOutput
}

type AviatrixVpnCertDownloadMap

type AviatrixVpnCertDownloadMap map[string]AviatrixVpnCertDownloadInput

func (AviatrixVpnCertDownloadMap) ElementType

func (AviatrixVpnCertDownloadMap) ElementType() reflect.Type

func (AviatrixVpnCertDownloadMap) ToAviatrixVpnCertDownloadMapOutput

func (i AviatrixVpnCertDownloadMap) ToAviatrixVpnCertDownloadMapOutput() AviatrixVpnCertDownloadMapOutput

func (AviatrixVpnCertDownloadMap) ToAviatrixVpnCertDownloadMapOutputWithContext

func (i AviatrixVpnCertDownloadMap) ToAviatrixVpnCertDownloadMapOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadMapOutput

type AviatrixVpnCertDownloadMapInput

type AviatrixVpnCertDownloadMapInput interface {
	pulumi.Input

	ToAviatrixVpnCertDownloadMapOutput() AviatrixVpnCertDownloadMapOutput
	ToAviatrixVpnCertDownloadMapOutputWithContext(context.Context) AviatrixVpnCertDownloadMapOutput
}

AviatrixVpnCertDownloadMapInput is an input type that accepts AviatrixVpnCertDownloadMap and AviatrixVpnCertDownloadMapOutput values. You can construct a concrete instance of `AviatrixVpnCertDownloadMapInput` via:

AviatrixVpnCertDownloadMap{ "key": AviatrixVpnCertDownloadArgs{...} }

type AviatrixVpnCertDownloadMapOutput

type AviatrixVpnCertDownloadMapOutput struct{ *pulumi.OutputState }

func (AviatrixVpnCertDownloadMapOutput) ElementType

func (AviatrixVpnCertDownloadMapOutput) MapIndex

func (AviatrixVpnCertDownloadMapOutput) ToAviatrixVpnCertDownloadMapOutput

func (o AviatrixVpnCertDownloadMapOutput) ToAviatrixVpnCertDownloadMapOutput() AviatrixVpnCertDownloadMapOutput

func (AviatrixVpnCertDownloadMapOutput) ToAviatrixVpnCertDownloadMapOutputWithContext

func (o AviatrixVpnCertDownloadMapOutput) ToAviatrixVpnCertDownloadMapOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadMapOutput

type AviatrixVpnCertDownloadOutput

type AviatrixVpnCertDownloadOutput struct{ *pulumi.OutputState }

func (AviatrixVpnCertDownloadOutput) DownloadEnabled

Whether the VPN Certificate download is enabled. Supported Values: "true", "false".

func (AviatrixVpnCertDownloadOutput) ElementType

func (AviatrixVpnCertDownloadOutput) SamlEndpoints

List of SAML endpoint names for which the downloading should be enabled . Currently, only a single endpoint is supported. Example: ["samlEndpoint1"].

func (AviatrixVpnCertDownloadOutput) ToAviatrixVpnCertDownloadOutput

func (o AviatrixVpnCertDownloadOutput) ToAviatrixVpnCertDownloadOutput() AviatrixVpnCertDownloadOutput

func (AviatrixVpnCertDownloadOutput) ToAviatrixVpnCertDownloadOutputWithContext

func (o AviatrixVpnCertDownloadOutput) ToAviatrixVpnCertDownloadOutputWithContext(ctx context.Context) AviatrixVpnCertDownloadOutput

type AviatrixVpnCertDownloadState

type AviatrixVpnCertDownloadState struct {
	// Whether the VPN Certificate download is enabled. Supported Values: "true", "false".
	DownloadEnabled pulumi.BoolPtrInput
	// List of SAML endpoint names for which the downloading should be enabled . Currently, only a single endpoint is supported. Example: ["samlEndpoint1"].
	SamlEndpoints pulumi.StringArrayInput
}

func (AviatrixVpnCertDownloadState) ElementType

type AviatrixVpnProfile

type AviatrixVpnProfile struct {
	pulumi.CustomResourceState

	// Base policy rule of the profile to be added. Enter "allowAll" or "denyAll", based on whether you want a whitelist or blacklist.
	BaseRule pulumi.StringPtrOutput `pulumi:"baseRule"`
	// This parameter is a switch used to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_user** resource. Valid values: true, false. Default value: true.
	ManageUserAttachment pulumi.BoolPtrOutput `pulumi:"manageUserAttachment"`
	// Enter any name for the VPN profile.
	Name pulumi.StringOutput `pulumi:"name"`
	// New security policy for the profile. Each policy has the following attributes:
	Policies AviatrixVpnProfilePolicyArrayOutput `pulumi:"policies"`
	// List of VPN users to attach to this profile. This should be set to null if `manageUserAttachment` is set to false.
	Users pulumi.StringArrayOutput `pulumi:"users"`
}

The **aviatrix_vpn_profile** resource allows the creation and management of Aviatrix VPN user profiles.

> **NOTE:** As of R2.15, management of user/profile attachment can be set using `manageUserAttachment`. This argument must be set to *true* in either **aviatrix_vpn_user** or **aviatrix_vpn_profile**. If attachment is managed in the **aviatrix_vpn_profile** (set to *true*), it must be set to *false* in the **aviatrix_vpn_user** resource and vice versa.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnProfile(ctx, "testVpnProfile", &aviatrix.AviatrixVpnProfileArgs{
			BaseRule: pulumi.String("allow_all"),
			Policies: AviatrixVpnProfilePolicyArray{
				&AviatrixVpnProfilePolicyArgs{
					Action: pulumi.String("deny"),
					Port:   pulumi.String("443"),
					Proto:  pulumi.String("tcp"),
					Target: pulumi.String("10.0.0.0/32"),
				},
				&AviatrixVpnProfilePolicyArgs{
					Action: pulumi.String("deny"),
					Port:   pulumi.String("443"),
					Proto:  pulumi.String("tcp"),
					Target: pulumi.String("10.0.0.1/32"),
				},
			},
			Users: pulumi.StringArray{
				pulumi.String("user1"),
				pulumi.String("user2"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vpn_profile** can be imported using the VPN profile's `name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVpnProfile:AviatrixVpnProfile test name

```

func GetAviatrixVpnProfile

func GetAviatrixVpnProfile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVpnProfileState, opts ...pulumi.ResourceOption) (*AviatrixVpnProfile, error)

GetAviatrixVpnProfile gets an existing AviatrixVpnProfile 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 NewAviatrixVpnProfile

func NewAviatrixVpnProfile(ctx *pulumi.Context,
	name string, args *AviatrixVpnProfileArgs, opts ...pulumi.ResourceOption) (*AviatrixVpnProfile, error)

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

func (*AviatrixVpnProfile) ElementType

func (*AviatrixVpnProfile) ElementType() reflect.Type

func (*AviatrixVpnProfile) ToAviatrixVpnProfileOutput

func (i *AviatrixVpnProfile) ToAviatrixVpnProfileOutput() AviatrixVpnProfileOutput

func (*AviatrixVpnProfile) ToAviatrixVpnProfileOutputWithContext

func (i *AviatrixVpnProfile) ToAviatrixVpnProfileOutputWithContext(ctx context.Context) AviatrixVpnProfileOutput

type AviatrixVpnProfileArgs

type AviatrixVpnProfileArgs struct {
	// Base policy rule of the profile to be added. Enter "allowAll" or "denyAll", based on whether you want a whitelist or blacklist.
	BaseRule pulumi.StringPtrInput
	// This parameter is a switch used to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_user** resource. Valid values: true, false. Default value: true.
	ManageUserAttachment pulumi.BoolPtrInput
	// Enter any name for the VPN profile.
	Name pulumi.StringPtrInput
	// New security policy for the profile. Each policy has the following attributes:
	Policies AviatrixVpnProfilePolicyArrayInput
	// List of VPN users to attach to this profile. This should be set to null if `manageUserAttachment` is set to false.
	Users pulumi.StringArrayInput
}

The set of arguments for constructing a AviatrixVpnProfile resource.

func (AviatrixVpnProfileArgs) ElementType

func (AviatrixVpnProfileArgs) ElementType() reflect.Type

type AviatrixVpnProfileArray

type AviatrixVpnProfileArray []AviatrixVpnProfileInput

func (AviatrixVpnProfileArray) ElementType

func (AviatrixVpnProfileArray) ElementType() reflect.Type

func (AviatrixVpnProfileArray) ToAviatrixVpnProfileArrayOutput

func (i AviatrixVpnProfileArray) ToAviatrixVpnProfileArrayOutput() AviatrixVpnProfileArrayOutput

func (AviatrixVpnProfileArray) ToAviatrixVpnProfileArrayOutputWithContext

func (i AviatrixVpnProfileArray) ToAviatrixVpnProfileArrayOutputWithContext(ctx context.Context) AviatrixVpnProfileArrayOutput

type AviatrixVpnProfileArrayInput

type AviatrixVpnProfileArrayInput interface {
	pulumi.Input

	ToAviatrixVpnProfileArrayOutput() AviatrixVpnProfileArrayOutput
	ToAviatrixVpnProfileArrayOutputWithContext(context.Context) AviatrixVpnProfileArrayOutput
}

AviatrixVpnProfileArrayInput is an input type that accepts AviatrixVpnProfileArray and AviatrixVpnProfileArrayOutput values. You can construct a concrete instance of `AviatrixVpnProfileArrayInput` via:

AviatrixVpnProfileArray{ AviatrixVpnProfileArgs{...} }

type AviatrixVpnProfileArrayOutput

type AviatrixVpnProfileArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpnProfileArrayOutput) ElementType

func (AviatrixVpnProfileArrayOutput) Index

func (AviatrixVpnProfileArrayOutput) ToAviatrixVpnProfileArrayOutput

func (o AviatrixVpnProfileArrayOutput) ToAviatrixVpnProfileArrayOutput() AviatrixVpnProfileArrayOutput

func (AviatrixVpnProfileArrayOutput) ToAviatrixVpnProfileArrayOutputWithContext

func (o AviatrixVpnProfileArrayOutput) ToAviatrixVpnProfileArrayOutputWithContext(ctx context.Context) AviatrixVpnProfileArrayOutput

type AviatrixVpnProfileInput

type AviatrixVpnProfileInput interface {
	pulumi.Input

	ToAviatrixVpnProfileOutput() AviatrixVpnProfileOutput
	ToAviatrixVpnProfileOutputWithContext(ctx context.Context) AviatrixVpnProfileOutput
}

type AviatrixVpnProfileMap

type AviatrixVpnProfileMap map[string]AviatrixVpnProfileInput

func (AviatrixVpnProfileMap) ElementType

func (AviatrixVpnProfileMap) ElementType() reflect.Type

func (AviatrixVpnProfileMap) ToAviatrixVpnProfileMapOutput

func (i AviatrixVpnProfileMap) ToAviatrixVpnProfileMapOutput() AviatrixVpnProfileMapOutput

func (AviatrixVpnProfileMap) ToAviatrixVpnProfileMapOutputWithContext

func (i AviatrixVpnProfileMap) ToAviatrixVpnProfileMapOutputWithContext(ctx context.Context) AviatrixVpnProfileMapOutput

type AviatrixVpnProfileMapInput

type AviatrixVpnProfileMapInput interface {
	pulumi.Input

	ToAviatrixVpnProfileMapOutput() AviatrixVpnProfileMapOutput
	ToAviatrixVpnProfileMapOutputWithContext(context.Context) AviatrixVpnProfileMapOutput
}

AviatrixVpnProfileMapInput is an input type that accepts AviatrixVpnProfileMap and AviatrixVpnProfileMapOutput values. You can construct a concrete instance of `AviatrixVpnProfileMapInput` via:

AviatrixVpnProfileMap{ "key": AviatrixVpnProfileArgs{...} }

type AviatrixVpnProfileMapOutput

type AviatrixVpnProfileMapOutput struct{ *pulumi.OutputState }

func (AviatrixVpnProfileMapOutput) ElementType

func (AviatrixVpnProfileMapOutput) MapIndex

func (AviatrixVpnProfileMapOutput) ToAviatrixVpnProfileMapOutput

func (o AviatrixVpnProfileMapOutput) ToAviatrixVpnProfileMapOutput() AviatrixVpnProfileMapOutput

func (AviatrixVpnProfileMapOutput) ToAviatrixVpnProfileMapOutputWithContext

func (o AviatrixVpnProfileMapOutput) ToAviatrixVpnProfileMapOutputWithContext(ctx context.Context) AviatrixVpnProfileMapOutput

type AviatrixVpnProfileOutput

type AviatrixVpnProfileOutput struct{ *pulumi.OutputState }

func (AviatrixVpnProfileOutput) BaseRule

Base policy rule of the profile to be added. Enter "allowAll" or "denyAll", based on whether you want a whitelist or blacklist.

func (AviatrixVpnProfileOutput) ElementType

func (AviatrixVpnProfileOutput) ElementType() reflect.Type

func (AviatrixVpnProfileOutput) ManageUserAttachment

func (o AviatrixVpnProfileOutput) ManageUserAttachment() pulumi.BoolPtrOutput

This parameter is a switch used to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_user** resource. Valid values: true, false. Default value: true.

func (AviatrixVpnProfileOutput) Name

Enter any name for the VPN profile.

func (AviatrixVpnProfileOutput) Policies

New security policy for the profile. Each policy has the following attributes:

func (AviatrixVpnProfileOutput) ToAviatrixVpnProfileOutput

func (o AviatrixVpnProfileOutput) ToAviatrixVpnProfileOutput() AviatrixVpnProfileOutput

func (AviatrixVpnProfileOutput) ToAviatrixVpnProfileOutputWithContext

func (o AviatrixVpnProfileOutput) ToAviatrixVpnProfileOutputWithContext(ctx context.Context) AviatrixVpnProfileOutput

func (AviatrixVpnProfileOutput) Users

List of VPN users to attach to this profile. This should be set to null if `manageUserAttachment` is set to false.

type AviatrixVpnProfilePolicy

type AviatrixVpnProfilePolicy struct {
	// Should be the opposite of the base rule for correct behavior. Valid values for action: "allow", "deny".
	Action string `pulumi:"action"`
	// Port to be allowed or denied. Valid values for port: a single port or a range of port numbers e.g.: "25", "25:1024". For "all" and "icmp", port should only be "0:65535".
	Port string `pulumi:"port"`
	// Protocol to allow or deny. Valid values for protocol: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".
	Proto string `pulumi:"proto"`
	// CIDR to be allowed or denied. Valid values for target: IPv4 CIDRs. Example: "10.30.0.0/16".
	Target string `pulumi:"target"`
}

type AviatrixVpnProfilePolicyArgs

type AviatrixVpnProfilePolicyArgs struct {
	// Should be the opposite of the base rule for correct behavior. Valid values for action: "allow", "deny".
	Action pulumi.StringInput `pulumi:"action"`
	// Port to be allowed or denied. Valid values for port: a single port or a range of port numbers e.g.: "25", "25:1024". For "all" and "icmp", port should only be "0:65535".
	Port pulumi.StringInput `pulumi:"port"`
	// Protocol to allow or deny. Valid values for protocol: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".
	Proto pulumi.StringInput `pulumi:"proto"`
	// CIDR to be allowed or denied. Valid values for target: IPv4 CIDRs. Example: "10.30.0.0/16".
	Target pulumi.StringInput `pulumi:"target"`
}

func (AviatrixVpnProfilePolicyArgs) ElementType

func (AviatrixVpnProfilePolicyArgs) ToAviatrixVpnProfilePolicyOutput

func (i AviatrixVpnProfilePolicyArgs) ToAviatrixVpnProfilePolicyOutput() AviatrixVpnProfilePolicyOutput

func (AviatrixVpnProfilePolicyArgs) ToAviatrixVpnProfilePolicyOutputWithContext

func (i AviatrixVpnProfilePolicyArgs) ToAviatrixVpnProfilePolicyOutputWithContext(ctx context.Context) AviatrixVpnProfilePolicyOutput

type AviatrixVpnProfilePolicyArray

type AviatrixVpnProfilePolicyArray []AviatrixVpnProfilePolicyInput

func (AviatrixVpnProfilePolicyArray) ElementType

func (AviatrixVpnProfilePolicyArray) ToAviatrixVpnProfilePolicyArrayOutput

func (i AviatrixVpnProfilePolicyArray) ToAviatrixVpnProfilePolicyArrayOutput() AviatrixVpnProfilePolicyArrayOutput

func (AviatrixVpnProfilePolicyArray) ToAviatrixVpnProfilePolicyArrayOutputWithContext

func (i AviatrixVpnProfilePolicyArray) ToAviatrixVpnProfilePolicyArrayOutputWithContext(ctx context.Context) AviatrixVpnProfilePolicyArrayOutput

type AviatrixVpnProfilePolicyArrayInput

type AviatrixVpnProfilePolicyArrayInput interface {
	pulumi.Input

	ToAviatrixVpnProfilePolicyArrayOutput() AviatrixVpnProfilePolicyArrayOutput
	ToAviatrixVpnProfilePolicyArrayOutputWithContext(context.Context) AviatrixVpnProfilePolicyArrayOutput
}

AviatrixVpnProfilePolicyArrayInput is an input type that accepts AviatrixVpnProfilePolicyArray and AviatrixVpnProfilePolicyArrayOutput values. You can construct a concrete instance of `AviatrixVpnProfilePolicyArrayInput` via:

AviatrixVpnProfilePolicyArray{ AviatrixVpnProfilePolicyArgs{...} }

type AviatrixVpnProfilePolicyArrayOutput

type AviatrixVpnProfilePolicyArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpnProfilePolicyArrayOutput) ElementType

func (AviatrixVpnProfilePolicyArrayOutput) Index

func (AviatrixVpnProfilePolicyArrayOutput) ToAviatrixVpnProfilePolicyArrayOutput

func (o AviatrixVpnProfilePolicyArrayOutput) ToAviatrixVpnProfilePolicyArrayOutput() AviatrixVpnProfilePolicyArrayOutput

func (AviatrixVpnProfilePolicyArrayOutput) ToAviatrixVpnProfilePolicyArrayOutputWithContext

func (o AviatrixVpnProfilePolicyArrayOutput) ToAviatrixVpnProfilePolicyArrayOutputWithContext(ctx context.Context) AviatrixVpnProfilePolicyArrayOutput

type AviatrixVpnProfilePolicyInput

type AviatrixVpnProfilePolicyInput interface {
	pulumi.Input

	ToAviatrixVpnProfilePolicyOutput() AviatrixVpnProfilePolicyOutput
	ToAviatrixVpnProfilePolicyOutputWithContext(context.Context) AviatrixVpnProfilePolicyOutput
}

AviatrixVpnProfilePolicyInput is an input type that accepts AviatrixVpnProfilePolicyArgs and AviatrixVpnProfilePolicyOutput values. You can construct a concrete instance of `AviatrixVpnProfilePolicyInput` via:

AviatrixVpnProfilePolicyArgs{...}

type AviatrixVpnProfilePolicyOutput

type AviatrixVpnProfilePolicyOutput struct{ *pulumi.OutputState }

func (AviatrixVpnProfilePolicyOutput) Action

Should be the opposite of the base rule for correct behavior. Valid values for action: "allow", "deny".

func (AviatrixVpnProfilePolicyOutput) ElementType

func (AviatrixVpnProfilePolicyOutput) Port

Port to be allowed or denied. Valid values for port: a single port or a range of port numbers e.g.: "25", "25:1024". For "all" and "icmp", port should only be "0:65535".

func (AviatrixVpnProfilePolicyOutput) Proto

Protocol to allow or deny. Valid values for protocol: "all", "tcp", "udp", "icmp", "sctp", "rdp", "dccp".

func (AviatrixVpnProfilePolicyOutput) Target

CIDR to be allowed or denied. Valid values for target: IPv4 CIDRs. Example: "10.30.0.0/16".

func (AviatrixVpnProfilePolicyOutput) ToAviatrixVpnProfilePolicyOutput

func (o AviatrixVpnProfilePolicyOutput) ToAviatrixVpnProfilePolicyOutput() AviatrixVpnProfilePolicyOutput

func (AviatrixVpnProfilePolicyOutput) ToAviatrixVpnProfilePolicyOutputWithContext

func (o AviatrixVpnProfilePolicyOutput) ToAviatrixVpnProfilePolicyOutputWithContext(ctx context.Context) AviatrixVpnProfilePolicyOutput

type AviatrixVpnProfileState

type AviatrixVpnProfileState struct {
	// Base policy rule of the profile to be added. Enter "allowAll" or "denyAll", based on whether you want a whitelist or blacklist.
	BaseRule pulumi.StringPtrInput
	// This parameter is a switch used to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_user** resource. Valid values: true, false. Default value: true.
	ManageUserAttachment pulumi.BoolPtrInput
	// Enter any name for the VPN profile.
	Name pulumi.StringPtrInput
	// New security policy for the profile. Each policy has the following attributes:
	Policies AviatrixVpnProfilePolicyArrayInput
	// List of VPN users to attach to this profile. This should be set to null if `manageUserAttachment` is set to false.
	Users pulumi.StringArrayInput
}

func (AviatrixVpnProfileState) ElementType

func (AviatrixVpnProfileState) ElementType() reflect.Type

type AviatrixVpnUser

type AviatrixVpnUser struct {
	pulumi.CustomResourceState

	// FQDN of a DNS based VPN service such as GeoVPN or UDP load balancer. Example: "vpn.testuser.com".
	DnsName pulumi.StringPtrOutput `pulumi:"dnsName"`
	// If ELB is enabled, this will be the name of the ELB, else it will be the name of the Aviatrix VPN gateway. Used together with `vpcId`. Example: "gw1".
	GwName pulumi.StringPtrOutput `pulumi:"gwName"`
	// This parameter is a switch to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_profile** resource. Valid values: true, false. Default value: false.
	ManageUserAttachment pulumi.BoolPtrOutput `pulumi:"manageUserAttachment"`
	// List of VPN profiles for user to attach to. This should be set to null if `manageUserAttachment` is set to false.
	Profiles pulumi.StringArrayOutput `pulumi:"profiles"`
	// This is the name of the SAML endpoint to which the user is to be associated. This is required if adding user to a SAML gateway/LB.
	SamlEndpoint pulumi.StringPtrOutput `pulumi:"samlEndpoint"`
	// VPN user's email. Example: "abc@xyz.com".
	UserEmail pulumi.StringPtrOutput `pulumi:"userEmail"`
	// VPN user name. Example: "user".
	UserName pulumi.StringOutput `pulumi:"userName"`
	// VPC ID of Aviatrix VPN gateway. Used together with `gwName`. Example: "vpc-abcd1234".
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
}

The **aviatrix_vpn_user** resource creates and manages Aviatrix VPN users.

> **NOTE:** As of R2.15, management of user/profile attachment can be set using `manageUserAttachment`. This argument must be to *true* in either **aviatrix_vpn_user** or **aviatrix_vpn_profile**. If attachment is managed in the **aviatrix_vpn_user** (set to *true*), it must be set to *false* in the **aviatrix_vpn_profile** resource and vice versa.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnUser(ctx, "testVpnUser", &aviatrix.AviatrixVpnUserArgs{
			GwName:    pulumi.String("gw1"),
			UserEmail: pulumi.String("user@aviatrix.com"),
			UserName:  pulumi.String("username1"),
			VpcId:     pulumi.String("vpc-abcd1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnUser(ctx, "testVpnUser", &aviatrix.AviatrixVpnUserArgs{
			DnsName:   pulumi.String("vpn.testuser.com"),
			UserEmail: pulumi.String("user@aviatrix.com"),
			UserName:  pulumi.String("username1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ```go package main

import (

"fmt"

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnUser(ctx, "testVpnUser", &aviatrix.AviatrixVpnUserArgs{
			GwName:    pulumi.String("gw1"),
			UserEmail: pulumi.String("user@aviatrix.com"),
			UserName:  pulumi.String("username1"),
			VpcId:     pulumi.String(fmt.Sprintf("%v~-~%v", aviatrix_vpc.Test_vpc.Vpc_id, aviatrix_account.Test_account.Gcloud_project_id)),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vpn_user** can be imported using the `user_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVpnUser:AviatrixVpnUser test user_name

```

func GetAviatrixVpnUser

func GetAviatrixVpnUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVpnUserState, opts ...pulumi.ResourceOption) (*AviatrixVpnUser, error)

GetAviatrixVpnUser gets an existing AviatrixVpnUser 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 NewAviatrixVpnUser

func NewAviatrixVpnUser(ctx *pulumi.Context,
	name string, args *AviatrixVpnUserArgs, opts ...pulumi.ResourceOption) (*AviatrixVpnUser, error)

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

func (*AviatrixVpnUser) ElementType

func (*AviatrixVpnUser) ElementType() reflect.Type

func (*AviatrixVpnUser) ToAviatrixVpnUserOutput

func (i *AviatrixVpnUser) ToAviatrixVpnUserOutput() AviatrixVpnUserOutput

func (*AviatrixVpnUser) ToAviatrixVpnUserOutputWithContext

func (i *AviatrixVpnUser) ToAviatrixVpnUserOutputWithContext(ctx context.Context) AviatrixVpnUserOutput

type AviatrixVpnUserAccelerator

type AviatrixVpnUserAccelerator struct {
	pulumi.CustomResourceState

	// Name of ELB to be added to VPN User Accelerator. Example: "Aviatrix-vpc-abcd2134".
	ElbName pulumi.StringOutput `pulumi:"elbName"`
}

The **aviatrix_vpn_user_accelerator** resource manages the [Aviatrix VPN User Accelerator](https://docs.aviatrix.com/HowTos/user_accelerator.html).

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aviatrix.NewAviatrixVpnUserAccelerator(ctx, "testVpcAccelerator", &aviatrix.AviatrixVpnUserAcceleratorArgs{
			ElbName: pulumi.String("Aviatrix-vpc-abcd2134"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

**vpn_user_accelerator** can be imported using the `elb_name`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrixVpnUserAccelerator:AviatrixVpnUserAccelerator test Aviatrix-vpc-abcd1234

```

func GetAviatrixVpnUserAccelerator

func GetAviatrixVpnUserAccelerator(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AviatrixVpnUserAcceleratorState, opts ...pulumi.ResourceOption) (*AviatrixVpnUserAccelerator, error)

GetAviatrixVpnUserAccelerator gets an existing AviatrixVpnUserAccelerator 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 NewAviatrixVpnUserAccelerator

func NewAviatrixVpnUserAccelerator(ctx *pulumi.Context,
	name string, args *AviatrixVpnUserAcceleratorArgs, opts ...pulumi.ResourceOption) (*AviatrixVpnUserAccelerator, error)

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

func (*AviatrixVpnUserAccelerator) ElementType

func (*AviatrixVpnUserAccelerator) ElementType() reflect.Type

func (*AviatrixVpnUserAccelerator) ToAviatrixVpnUserAcceleratorOutput

func (i *AviatrixVpnUserAccelerator) ToAviatrixVpnUserAcceleratorOutput() AviatrixVpnUserAcceleratorOutput

func (*AviatrixVpnUserAccelerator) ToAviatrixVpnUserAcceleratorOutputWithContext

func (i *AviatrixVpnUserAccelerator) ToAviatrixVpnUserAcceleratorOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorOutput

type AviatrixVpnUserAcceleratorArgs

type AviatrixVpnUserAcceleratorArgs struct {
	// Name of ELB to be added to VPN User Accelerator. Example: "Aviatrix-vpc-abcd2134".
	ElbName pulumi.StringInput
}

The set of arguments for constructing a AviatrixVpnUserAccelerator resource.

func (AviatrixVpnUserAcceleratorArgs) ElementType

type AviatrixVpnUserAcceleratorArray

type AviatrixVpnUserAcceleratorArray []AviatrixVpnUserAcceleratorInput

func (AviatrixVpnUserAcceleratorArray) ElementType

func (AviatrixVpnUserAcceleratorArray) ToAviatrixVpnUserAcceleratorArrayOutput

func (i AviatrixVpnUserAcceleratorArray) ToAviatrixVpnUserAcceleratorArrayOutput() AviatrixVpnUserAcceleratorArrayOutput

func (AviatrixVpnUserAcceleratorArray) ToAviatrixVpnUserAcceleratorArrayOutputWithContext

func (i AviatrixVpnUserAcceleratorArray) ToAviatrixVpnUserAcceleratorArrayOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorArrayOutput

type AviatrixVpnUserAcceleratorArrayInput

type AviatrixVpnUserAcceleratorArrayInput interface {
	pulumi.Input

	ToAviatrixVpnUserAcceleratorArrayOutput() AviatrixVpnUserAcceleratorArrayOutput
	ToAviatrixVpnUserAcceleratorArrayOutputWithContext(context.Context) AviatrixVpnUserAcceleratorArrayOutput
}

AviatrixVpnUserAcceleratorArrayInput is an input type that accepts AviatrixVpnUserAcceleratorArray and AviatrixVpnUserAcceleratorArrayOutput values. You can construct a concrete instance of `AviatrixVpnUserAcceleratorArrayInput` via:

AviatrixVpnUserAcceleratorArray{ AviatrixVpnUserAcceleratorArgs{...} }

type AviatrixVpnUserAcceleratorArrayOutput

type AviatrixVpnUserAcceleratorArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserAcceleratorArrayOutput) ElementType

func (AviatrixVpnUserAcceleratorArrayOutput) Index

func (AviatrixVpnUserAcceleratorArrayOutput) ToAviatrixVpnUserAcceleratorArrayOutput

func (o AviatrixVpnUserAcceleratorArrayOutput) ToAviatrixVpnUserAcceleratorArrayOutput() AviatrixVpnUserAcceleratorArrayOutput

func (AviatrixVpnUserAcceleratorArrayOutput) ToAviatrixVpnUserAcceleratorArrayOutputWithContext

func (o AviatrixVpnUserAcceleratorArrayOutput) ToAviatrixVpnUserAcceleratorArrayOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorArrayOutput

type AviatrixVpnUserAcceleratorInput

type AviatrixVpnUserAcceleratorInput interface {
	pulumi.Input

	ToAviatrixVpnUserAcceleratorOutput() AviatrixVpnUserAcceleratorOutput
	ToAviatrixVpnUserAcceleratorOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorOutput
}

type AviatrixVpnUserAcceleratorMap

type AviatrixVpnUserAcceleratorMap map[string]AviatrixVpnUserAcceleratorInput

func (AviatrixVpnUserAcceleratorMap) ElementType

func (AviatrixVpnUserAcceleratorMap) ToAviatrixVpnUserAcceleratorMapOutput

func (i AviatrixVpnUserAcceleratorMap) ToAviatrixVpnUserAcceleratorMapOutput() AviatrixVpnUserAcceleratorMapOutput

func (AviatrixVpnUserAcceleratorMap) ToAviatrixVpnUserAcceleratorMapOutputWithContext

func (i AviatrixVpnUserAcceleratorMap) ToAviatrixVpnUserAcceleratorMapOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorMapOutput

type AviatrixVpnUserAcceleratorMapInput

type AviatrixVpnUserAcceleratorMapInput interface {
	pulumi.Input

	ToAviatrixVpnUserAcceleratorMapOutput() AviatrixVpnUserAcceleratorMapOutput
	ToAviatrixVpnUserAcceleratorMapOutputWithContext(context.Context) AviatrixVpnUserAcceleratorMapOutput
}

AviatrixVpnUserAcceleratorMapInput is an input type that accepts AviatrixVpnUserAcceleratorMap and AviatrixVpnUserAcceleratorMapOutput values. You can construct a concrete instance of `AviatrixVpnUserAcceleratorMapInput` via:

AviatrixVpnUserAcceleratorMap{ "key": AviatrixVpnUserAcceleratorArgs{...} }

type AviatrixVpnUserAcceleratorMapOutput

type AviatrixVpnUserAcceleratorMapOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserAcceleratorMapOutput) ElementType

func (AviatrixVpnUserAcceleratorMapOutput) MapIndex

func (AviatrixVpnUserAcceleratorMapOutput) ToAviatrixVpnUserAcceleratorMapOutput

func (o AviatrixVpnUserAcceleratorMapOutput) ToAviatrixVpnUserAcceleratorMapOutput() AviatrixVpnUserAcceleratorMapOutput

func (AviatrixVpnUserAcceleratorMapOutput) ToAviatrixVpnUserAcceleratorMapOutputWithContext

func (o AviatrixVpnUserAcceleratorMapOutput) ToAviatrixVpnUserAcceleratorMapOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorMapOutput

type AviatrixVpnUserAcceleratorOutput

type AviatrixVpnUserAcceleratorOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserAcceleratorOutput) ElbName

Name of ELB to be added to VPN User Accelerator. Example: "Aviatrix-vpc-abcd2134".

func (AviatrixVpnUserAcceleratorOutput) ElementType

func (AviatrixVpnUserAcceleratorOutput) ToAviatrixVpnUserAcceleratorOutput

func (o AviatrixVpnUserAcceleratorOutput) ToAviatrixVpnUserAcceleratorOutput() AviatrixVpnUserAcceleratorOutput

func (AviatrixVpnUserAcceleratorOutput) ToAviatrixVpnUserAcceleratorOutputWithContext

func (o AviatrixVpnUserAcceleratorOutput) ToAviatrixVpnUserAcceleratorOutputWithContext(ctx context.Context) AviatrixVpnUserAcceleratorOutput

type AviatrixVpnUserAcceleratorState

type AviatrixVpnUserAcceleratorState struct {
	// Name of ELB to be added to VPN User Accelerator. Example: "Aviatrix-vpc-abcd2134".
	ElbName pulumi.StringPtrInput
}

func (AviatrixVpnUserAcceleratorState) ElementType

type AviatrixVpnUserArgs

type AviatrixVpnUserArgs struct {
	// FQDN of a DNS based VPN service such as GeoVPN or UDP load balancer. Example: "vpn.testuser.com".
	DnsName pulumi.StringPtrInput
	// If ELB is enabled, this will be the name of the ELB, else it will be the name of the Aviatrix VPN gateway. Used together with `vpcId`. Example: "gw1".
	GwName pulumi.StringPtrInput
	// This parameter is a switch to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_profile** resource. Valid values: true, false. Default value: false.
	ManageUserAttachment pulumi.BoolPtrInput
	// List of VPN profiles for user to attach to. This should be set to null if `manageUserAttachment` is set to false.
	Profiles pulumi.StringArrayInput
	// This is the name of the SAML endpoint to which the user is to be associated. This is required if adding user to a SAML gateway/LB.
	SamlEndpoint pulumi.StringPtrInput
	// VPN user's email. Example: "abc@xyz.com".
	UserEmail pulumi.StringPtrInput
	// VPN user name. Example: "user".
	UserName pulumi.StringInput
	// VPC ID of Aviatrix VPN gateway. Used together with `gwName`. Example: "vpc-abcd1234".
	VpcId pulumi.StringPtrInput
}

The set of arguments for constructing a AviatrixVpnUser resource.

func (AviatrixVpnUserArgs) ElementType

func (AviatrixVpnUserArgs) ElementType() reflect.Type

type AviatrixVpnUserArray

type AviatrixVpnUserArray []AviatrixVpnUserInput

func (AviatrixVpnUserArray) ElementType

func (AviatrixVpnUserArray) ElementType() reflect.Type

func (AviatrixVpnUserArray) ToAviatrixVpnUserArrayOutput

func (i AviatrixVpnUserArray) ToAviatrixVpnUserArrayOutput() AviatrixVpnUserArrayOutput

func (AviatrixVpnUserArray) ToAviatrixVpnUserArrayOutputWithContext

func (i AviatrixVpnUserArray) ToAviatrixVpnUserArrayOutputWithContext(ctx context.Context) AviatrixVpnUserArrayOutput

type AviatrixVpnUserArrayInput

type AviatrixVpnUserArrayInput interface {
	pulumi.Input

	ToAviatrixVpnUserArrayOutput() AviatrixVpnUserArrayOutput
	ToAviatrixVpnUserArrayOutputWithContext(context.Context) AviatrixVpnUserArrayOutput
}

AviatrixVpnUserArrayInput is an input type that accepts AviatrixVpnUserArray and AviatrixVpnUserArrayOutput values. You can construct a concrete instance of `AviatrixVpnUserArrayInput` via:

AviatrixVpnUserArray{ AviatrixVpnUserArgs{...} }

type AviatrixVpnUserArrayOutput

type AviatrixVpnUserArrayOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserArrayOutput) ElementType

func (AviatrixVpnUserArrayOutput) ElementType() reflect.Type

func (AviatrixVpnUserArrayOutput) Index

func (AviatrixVpnUserArrayOutput) ToAviatrixVpnUserArrayOutput

func (o AviatrixVpnUserArrayOutput) ToAviatrixVpnUserArrayOutput() AviatrixVpnUserArrayOutput

func (AviatrixVpnUserArrayOutput) ToAviatrixVpnUserArrayOutputWithContext

func (o AviatrixVpnUserArrayOutput) ToAviatrixVpnUserArrayOutputWithContext(ctx context.Context) AviatrixVpnUserArrayOutput

type AviatrixVpnUserInput

type AviatrixVpnUserInput interface {
	pulumi.Input

	ToAviatrixVpnUserOutput() AviatrixVpnUserOutput
	ToAviatrixVpnUserOutputWithContext(ctx context.Context) AviatrixVpnUserOutput
}

type AviatrixVpnUserMap

type AviatrixVpnUserMap map[string]AviatrixVpnUserInput

func (AviatrixVpnUserMap) ElementType

func (AviatrixVpnUserMap) ElementType() reflect.Type

func (AviatrixVpnUserMap) ToAviatrixVpnUserMapOutput

func (i AviatrixVpnUserMap) ToAviatrixVpnUserMapOutput() AviatrixVpnUserMapOutput

func (AviatrixVpnUserMap) ToAviatrixVpnUserMapOutputWithContext

func (i AviatrixVpnUserMap) ToAviatrixVpnUserMapOutputWithContext(ctx context.Context) AviatrixVpnUserMapOutput

type AviatrixVpnUserMapInput

type AviatrixVpnUserMapInput interface {
	pulumi.Input

	ToAviatrixVpnUserMapOutput() AviatrixVpnUserMapOutput
	ToAviatrixVpnUserMapOutputWithContext(context.Context) AviatrixVpnUserMapOutput
}

AviatrixVpnUserMapInput is an input type that accepts AviatrixVpnUserMap and AviatrixVpnUserMapOutput values. You can construct a concrete instance of `AviatrixVpnUserMapInput` via:

AviatrixVpnUserMap{ "key": AviatrixVpnUserArgs{...} }

type AviatrixVpnUserMapOutput

type AviatrixVpnUserMapOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserMapOutput) ElementType

func (AviatrixVpnUserMapOutput) ElementType() reflect.Type

func (AviatrixVpnUserMapOutput) MapIndex

func (AviatrixVpnUserMapOutput) ToAviatrixVpnUserMapOutput

func (o AviatrixVpnUserMapOutput) ToAviatrixVpnUserMapOutput() AviatrixVpnUserMapOutput

func (AviatrixVpnUserMapOutput) ToAviatrixVpnUserMapOutputWithContext

func (o AviatrixVpnUserMapOutput) ToAviatrixVpnUserMapOutputWithContext(ctx context.Context) AviatrixVpnUserMapOutput

type AviatrixVpnUserOutput

type AviatrixVpnUserOutput struct{ *pulumi.OutputState }

func (AviatrixVpnUserOutput) DnsName

FQDN of a DNS based VPN service such as GeoVPN or UDP load balancer. Example: "vpn.testuser.com".

func (AviatrixVpnUserOutput) ElementType

func (AviatrixVpnUserOutput) ElementType() reflect.Type

func (AviatrixVpnUserOutput) GwName

If ELB is enabled, this will be the name of the ELB, else it will be the name of the Aviatrix VPN gateway. Used together with `vpcId`. Example: "gw1".

func (AviatrixVpnUserOutput) ManageUserAttachment

func (o AviatrixVpnUserOutput) ManageUserAttachment() pulumi.BoolPtrOutput

This parameter is a switch to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_profile** resource. Valid values: true, false. Default value: false.

func (AviatrixVpnUserOutput) Profiles

List of VPN profiles for user to attach to. This should be set to null if `manageUserAttachment` is set to false.

func (AviatrixVpnUserOutput) SamlEndpoint

func (o AviatrixVpnUserOutput) SamlEndpoint() pulumi.StringPtrOutput

This is the name of the SAML endpoint to which the user is to be associated. This is required if adding user to a SAML gateway/LB.

func (AviatrixVpnUserOutput) ToAviatrixVpnUserOutput

func (o AviatrixVpnUserOutput) ToAviatrixVpnUserOutput() AviatrixVpnUserOutput

func (AviatrixVpnUserOutput) ToAviatrixVpnUserOutputWithContext

func (o AviatrixVpnUserOutput) ToAviatrixVpnUserOutputWithContext(ctx context.Context) AviatrixVpnUserOutput

func (AviatrixVpnUserOutput) UserEmail

VPN user's email. Example: "abc@xyz.com".

func (AviatrixVpnUserOutput) UserName

VPN user name. Example: "user".

func (AviatrixVpnUserOutput) VpcId

VPC ID of Aviatrix VPN gateway. Used together with `gwName`. Example: "vpc-abcd1234".

type AviatrixVpnUserState

type AviatrixVpnUserState struct {
	// FQDN of a DNS based VPN service such as GeoVPN or UDP load balancer. Example: "vpn.testuser.com".
	DnsName pulumi.StringPtrInput
	// If ELB is enabled, this will be the name of the ELB, else it will be the name of the Aviatrix VPN gateway. Used together with `vpcId`. Example: "gw1".
	GwName pulumi.StringPtrInput
	// This parameter is a switch to determine whether or not to manage VPN user attachments to the VPN profile using this resource. If this is set to false, attachment must be managed using the **aviatrix_vpn_profile** resource. Valid values: true, false. Default value: false.
	ManageUserAttachment pulumi.BoolPtrInput
	// List of VPN profiles for user to attach to. This should be set to null if `manageUserAttachment` is set to false.
	Profiles pulumi.StringArrayInput
	// This is the name of the SAML endpoint to which the user is to be associated. This is required if adding user to a SAML gateway/LB.
	SamlEndpoint pulumi.StringPtrInput
	// VPN user's email. Example: "abc@xyz.com".
	UserEmail pulumi.StringPtrInput
	// VPN user name. Example: "user".
	UserName pulumi.StringPtrInput
	// VPC ID of Aviatrix VPN gateway. Used together with `gwName`. Example: "vpc-abcd1234".
	VpcId pulumi.StringPtrInput
}

func (AviatrixVpnUserState) ElementType

func (AviatrixVpnUserState) ElementType() reflect.Type

type Aviatrix_spoke_external_device_conn

type Aviatrix_spoke_external_device_conn struct {
	pulumi.CustomResourceState

	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayOutput `pulumi:"approvedCidrs"`
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'.
	BackupBgpMd5Key pulumi.StringPtrOutput `pulumi:"backupBgpMd5Key"`
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrOutput `pulumi:"backupBgpRemoteAsNum"`
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrOutput `pulumi:"backupDirectConnect"`
	// Source CIDR for the tunnel from the backup Aviatrix spoke gateway.
	BackupLocalTunnelCidr pulumi.StringOutput `pulumi:"backupLocalTunnelCidr"`
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrOutput `pulumi:"backupPreSharedKey"`
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrOutput `pulumi:"backupRemoteGatewayIp"`
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringOutput `pulumi:"backupRemoteTunnelCidr"`
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrOutput `pulumi:"bgpLocalAsNum"`
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'.
	BgpMd5Key pulumi.StringPtrOutput `pulumi:"bgpMd5Key"`
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrOutput `pulumi:"bgpRemoteAsNum"`
	// Spoke external device connection name.
	ConnectionName pulumi.StringOutput `pulumi:"connectionName"`
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"`
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrOutput `pulumi:"customAlgorithms"`
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrOutput `pulumi:"directConnect"`
	// Enable Event Triggered HA. Default value: false. Valid values: true or false.
	EnableEventTriggeredHa pulumi.BoolPtrOutput `pulumi:"enableEventTriggeredHa"`
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrOutput `pulumi:"enableIkev2"`
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the spoke_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrOutput `pulumi:"enableLearnedCidrsApproval"`
	// Aviatrix spoke gateway name.
	GwName pulumi.StringOutput `pulumi:"gwName"`
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrOutput `pulumi:"haEnabled"`
	// Source CIDR for the tunnel from the Aviatrix spoke gateway.
	LocalTunnelCidr pulumi.StringOutput `pulumi:"localTunnelCidr"`
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'.
	ManualBgpAdvertisedCidrs pulumi.StringArrayOutput `pulumi:"manualBgpAdvertisedCidrs"`
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrOutput `pulumi:"phase1Authentication"`
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrOutput `pulumi:"phase1DhGroups"`
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrOutput `pulumi:"phase1Encryption"`
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled.
	Phase1RemoteIdentifiers pulumi.StringArrayOutput `pulumi:"phase1RemoteIdentifiers"`
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrOutput `pulumi:"phase2Authentication"`
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrOutput `pulumi:"phase2DhGroups"`
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrOutput `pulumi:"phase2Encryption"`
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrOutput `pulumi:"preSharedKey"`
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection.
	PrependAsPaths pulumi.StringArrayOutput `pulumi:"prependAsPaths"`
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringOutput `pulumi:"remoteGatewayIp"`
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrOutput `pulumi:"remoteSubnet"`
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringOutput `pulumi:"remoteTunnelCidr"`
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec'. Default value: 'IPsec'. Case insensitive.
	TunnelProtocol pulumi.StringPtrOutput `pulumi:"tunnelProtocol"`
	// VPC ID of the Aviatrix spoke gateway.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

The **aviatrix_spoke_external_device_conn** resource creates and manages the connection between the Aviatrix BGP enabled spoke gateway and an External Device for purposes of Transit Network.

## Notes

### customAlgorithms If set to true, the six algorithm arguments cannot all be default value. If set to false, default values will be used for all six algorithm arguments.

## Import

**spoke_external_device_conn** can be imported using the `connection_name` and `vpc_id`, e.g.

```sh

$ pulumi import aviatrix:index/aviatrix_spoke_external_device_conn:aviatrix_spoke_external_device_conn test connection_name~vpc_id

```

func GetAviatrix_spoke_external_device_conn

func GetAviatrix_spoke_external_device_conn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *Aviatrix_spoke_external_device_connState, opts ...pulumi.ResourceOption) (*Aviatrix_spoke_external_device_conn, error)

GetAviatrix_spoke_external_device_conn gets an existing Aviatrix_spoke_external_device_conn 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 NewAviatrix_spoke_external_device_conn

func NewAviatrix_spoke_external_device_conn(ctx *pulumi.Context,
	name string, args *Aviatrix_spoke_external_device_connArgs, opts ...pulumi.ResourceOption) (*Aviatrix_spoke_external_device_conn, error)

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

func (*Aviatrix_spoke_external_device_conn) ElementType

func (*Aviatrix_spoke_external_device_conn) ToAviatrix_spoke_external_device_connOutput

func (i *Aviatrix_spoke_external_device_conn) ToAviatrix_spoke_external_device_connOutput() Aviatrix_spoke_external_device_connOutput

func (*Aviatrix_spoke_external_device_conn) ToAviatrix_spoke_external_device_connOutputWithContext

func (i *Aviatrix_spoke_external_device_conn) ToAviatrix_spoke_external_device_connOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connOutput

type Aviatrix_spoke_external_device_connArgs

type Aviatrix_spoke_external_device_connArgs struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'.
	BackupBgpMd5Key pulumi.StringPtrInput
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrInput
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrInput
	// Source CIDR for the tunnel from the backup Aviatrix spoke gateway.
	BackupLocalTunnelCidr pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringPtrInput
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'.
	BgpMd5Key pulumi.StringPtrInput
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrInput
	// Spoke external device connection name.
	ConnectionName pulumi.StringInput
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the spoke_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Aviatrix spoke gateway name.
	GwName pulumi.StringInput
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrInput
	// Source CIDR for the tunnel from the Aviatrix spoke gateway.
	LocalTunnelCidr pulumi.StringPtrInput
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection.
	PrependAsPaths pulumi.StringArrayInput
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringInput
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringPtrInput
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec'. Default value: 'IPsec'. Case insensitive.
	TunnelProtocol pulumi.StringPtrInput
	// VPC ID of the Aviatrix spoke gateway.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a Aviatrix_spoke_external_device_conn resource.

func (Aviatrix_spoke_external_device_connArgs) ElementType

type Aviatrix_spoke_external_device_connArray

type Aviatrix_spoke_external_device_connArray []Aviatrix_spoke_external_device_connInput

func (Aviatrix_spoke_external_device_connArray) ElementType

func (Aviatrix_spoke_external_device_connArray) ToAviatrix_spoke_external_device_connArrayOutput

func (i Aviatrix_spoke_external_device_connArray) ToAviatrix_spoke_external_device_connArrayOutput() Aviatrix_spoke_external_device_connArrayOutput

func (Aviatrix_spoke_external_device_connArray) ToAviatrix_spoke_external_device_connArrayOutputWithContext

func (i Aviatrix_spoke_external_device_connArray) ToAviatrix_spoke_external_device_connArrayOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connArrayOutput

type Aviatrix_spoke_external_device_connArrayInput

type Aviatrix_spoke_external_device_connArrayInput interface {
	pulumi.Input

	ToAviatrix_spoke_external_device_connArrayOutput() Aviatrix_spoke_external_device_connArrayOutput
	ToAviatrix_spoke_external_device_connArrayOutputWithContext(context.Context) Aviatrix_spoke_external_device_connArrayOutput
}

Aviatrix_spoke_external_device_connArrayInput is an input type that accepts Aviatrix_spoke_external_device_connArray and Aviatrix_spoke_external_device_connArrayOutput values. You can construct a concrete instance of `Aviatrix_spoke_external_device_connArrayInput` via:

Aviatrix_spoke_external_device_connArray{ Aviatrix_spoke_external_device_connArgs{...} }

type Aviatrix_spoke_external_device_connArrayOutput

type Aviatrix_spoke_external_device_connArrayOutput struct{ *pulumi.OutputState }

func (Aviatrix_spoke_external_device_connArrayOutput) ElementType

func (Aviatrix_spoke_external_device_connArrayOutput) Index

func (Aviatrix_spoke_external_device_connArrayOutput) ToAviatrix_spoke_external_device_connArrayOutput

func (o Aviatrix_spoke_external_device_connArrayOutput) ToAviatrix_spoke_external_device_connArrayOutput() Aviatrix_spoke_external_device_connArrayOutput

func (Aviatrix_spoke_external_device_connArrayOutput) ToAviatrix_spoke_external_device_connArrayOutputWithContext

func (o Aviatrix_spoke_external_device_connArrayOutput) ToAviatrix_spoke_external_device_connArrayOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connArrayOutput

type Aviatrix_spoke_external_device_connInput

type Aviatrix_spoke_external_device_connInput interface {
	pulumi.Input

	ToAviatrix_spoke_external_device_connOutput() Aviatrix_spoke_external_device_connOutput
	ToAviatrix_spoke_external_device_connOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connOutput
}

type Aviatrix_spoke_external_device_connMap

type Aviatrix_spoke_external_device_connMap map[string]Aviatrix_spoke_external_device_connInput

func (Aviatrix_spoke_external_device_connMap) ElementType

func (Aviatrix_spoke_external_device_connMap) ToAviatrix_spoke_external_device_connMapOutput

func (i Aviatrix_spoke_external_device_connMap) ToAviatrix_spoke_external_device_connMapOutput() Aviatrix_spoke_external_device_connMapOutput

func (Aviatrix_spoke_external_device_connMap) ToAviatrix_spoke_external_device_connMapOutputWithContext

func (i Aviatrix_spoke_external_device_connMap) ToAviatrix_spoke_external_device_connMapOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connMapOutput

type Aviatrix_spoke_external_device_connMapInput

type Aviatrix_spoke_external_device_connMapInput interface {
	pulumi.Input

	ToAviatrix_spoke_external_device_connMapOutput() Aviatrix_spoke_external_device_connMapOutput
	ToAviatrix_spoke_external_device_connMapOutputWithContext(context.Context) Aviatrix_spoke_external_device_connMapOutput
}

Aviatrix_spoke_external_device_connMapInput is an input type that accepts Aviatrix_spoke_external_device_connMap and Aviatrix_spoke_external_device_connMapOutput values. You can construct a concrete instance of `Aviatrix_spoke_external_device_connMapInput` via:

Aviatrix_spoke_external_device_connMap{ "key": Aviatrix_spoke_external_device_connArgs{...} }

type Aviatrix_spoke_external_device_connMapOutput

type Aviatrix_spoke_external_device_connMapOutput struct{ *pulumi.OutputState }

func (Aviatrix_spoke_external_device_connMapOutput) ElementType

func (Aviatrix_spoke_external_device_connMapOutput) MapIndex

func (Aviatrix_spoke_external_device_connMapOutput) ToAviatrix_spoke_external_device_connMapOutput

func (o Aviatrix_spoke_external_device_connMapOutput) ToAviatrix_spoke_external_device_connMapOutput() Aviatrix_spoke_external_device_connMapOutput

func (Aviatrix_spoke_external_device_connMapOutput) ToAviatrix_spoke_external_device_connMapOutputWithContext

func (o Aviatrix_spoke_external_device_connMapOutput) ToAviatrix_spoke_external_device_connMapOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connMapOutput

type Aviatrix_spoke_external_device_connOutput

type Aviatrix_spoke_external_device_connOutput struct{ *pulumi.OutputState }

func (Aviatrix_spoke_external_device_connOutput) ApprovedCidrs

Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).

func (Aviatrix_spoke_external_device_connOutput) BackupBgpMd5Key

Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'.

func (Aviatrix_spoke_external_device_connOutput) BackupBgpRemoteAsNum

Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.

func (Aviatrix_spoke_external_device_connOutput) BackupDirectConnect

Backup direct connect for backup external device.

func (Aviatrix_spoke_external_device_connOutput) BackupLocalTunnelCidr

Source CIDR for the tunnel from the backup Aviatrix spoke gateway.

func (Aviatrix_spoke_external_device_connOutput) BackupPreSharedKey

Backup Pre-Shared Key.

func (Aviatrix_spoke_external_device_connOutput) BackupRemoteGatewayIp

Backup remote gateway IP.

func (Aviatrix_spoke_external_device_connOutput) BackupRemoteTunnelCidr

Destination CIDR for the tunnel to the backup external device.

func (Aviatrix_spoke_external_device_connOutput) BgpLocalAsNum

BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.

func (Aviatrix_spoke_external_device_connOutput) BgpMd5Key

BGP MD5 Authentication Key. Example: 'avx01,avx02'.

func (Aviatrix_spoke_external_device_connOutput) BgpRemoteAsNum

BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.

func (Aviatrix_spoke_external_device_connOutput) ConnectionName

Spoke external device connection name.

func (Aviatrix_spoke_external_device_connOutput) ConnectionType

Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.

func (Aviatrix_spoke_external_device_connOutput) CustomAlgorithms

Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**

func (Aviatrix_spoke_external_device_connOutput) DirectConnect

Set true for private network infrastructure.

func (Aviatrix_spoke_external_device_connOutput) ElementType

func (Aviatrix_spoke_external_device_connOutput) EnableEventTriggeredHa

Enable Event Triggered HA. Default value: false. Valid values: true or false.

func (Aviatrix_spoke_external_device_connOutput) EnableIkev2

Set as true to enable IKEv2 protocol.

func (Aviatrix_spoke_external_device_connOutput) EnableLearnedCidrsApproval

func (o Aviatrix_spoke_external_device_connOutput) EnableLearnedCidrsApproval() pulumi.BoolPtrOutput

Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the spoke_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false.

func (Aviatrix_spoke_external_device_connOutput) GwName

Aviatrix spoke gateway name.

func (Aviatrix_spoke_external_device_connOutput) HaEnabled

Set as true if there are two external devices. * ` backupRemoteGatewayIp ` - (Optional) Backup remote gateway IP. Required if HA enabled.

func (Aviatrix_spoke_external_device_connOutput) LocalTunnelCidr

Source CIDR for the tunnel from the Aviatrix spoke gateway.

func (Aviatrix_spoke_external_device_connOutput) ManualBgpAdvertisedCidrs

Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'.

func (Aviatrix_spoke_external_device_connOutput) Phase1Authentication

Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.

func (Aviatrix_spoke_external_device_connOutput) Phase1DhGroups

Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.

func (Aviatrix_spoke_external_device_connOutput) Phase1Encryption

Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".

func (Aviatrix_spoke_external_device_connOutput) Phase1RemoteIdentifiers

Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled.

func (Aviatrix_spoke_external_device_connOutput) Phase2Authentication

Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.

func (Aviatrix_spoke_external_device_connOutput) Phase2DhGroups

Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.

func (Aviatrix_spoke_external_device_connOutput) Phase2Encryption

Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".

func (Aviatrix_spoke_external_device_connOutput) PreSharedKey

Pre-Shared Key.

func (Aviatrix_spoke_external_device_connOutput) PrependAsPaths

Connection AS Path Prepend customized by specifying AS PATH for a BGP connection.

func (Aviatrix_spoke_external_device_connOutput) RemoteGatewayIp

Remote gateway IP.

func (Aviatrix_spoke_external_device_connOutput) RemoteSubnet

Remote CIDRs joined as a string with ','. Required for a 'static' type connection.

func (Aviatrix_spoke_external_device_connOutput) RemoteTunnelCidr

Destination CIDR for the tunnel to the external device.

func (Aviatrix_spoke_external_device_connOutput) ToAviatrix_spoke_external_device_connOutput

func (o Aviatrix_spoke_external_device_connOutput) ToAviatrix_spoke_external_device_connOutput() Aviatrix_spoke_external_device_connOutput

func (Aviatrix_spoke_external_device_connOutput) ToAviatrix_spoke_external_device_connOutputWithContext

func (o Aviatrix_spoke_external_device_connOutput) ToAviatrix_spoke_external_device_connOutputWithContext(ctx context.Context) Aviatrix_spoke_external_device_connOutput

func (Aviatrix_spoke_external_device_connOutput) TunnelProtocol

Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec'. Default value: 'IPsec'. Case insensitive.

func (Aviatrix_spoke_external_device_connOutput) VpcId

VPC ID of the Aviatrix spoke gateway.

type Aviatrix_spoke_external_device_connState

type Aviatrix_spoke_external_device_connState struct {
	// Set of approved CIDRs. Requires `enableLearnedCidrsApproval` to be true. Type: Set(String).
	ApprovedCidrs pulumi.StringArrayInput
	// Backup BGP MD5 Authentication Key. Valid with HA enabled for connection. Example: 'avx03,avx04'.
	BackupBgpMd5Key pulumi.StringPtrInput
	// Backup BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required if HA enabled for 'bgp' connection.
	BackupBgpRemoteAsNum pulumi.StringPtrInput
	// Backup direct connect for backup external device.
	BackupDirectConnect pulumi.BoolPtrInput
	// Source CIDR for the tunnel from the backup Aviatrix spoke gateway.
	BackupLocalTunnelCidr pulumi.StringPtrInput
	// Backup Pre-Shared Key.
	BackupPreSharedKey pulumi.StringPtrInput
	// Backup remote gateway IP.
	BackupRemoteGatewayIp pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the backup external device.
	BackupRemoteTunnelCidr pulumi.StringPtrInput
	// BGP local ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpLocalAsNum pulumi.StringPtrInput
	// BGP MD5 Authentication Key. Example: 'avx01,avx02'.
	BgpMd5Key pulumi.StringPtrInput
	// BGP remote ASN (Autonomous System Number). Integer between 1-4294967294. Required for 'bgp' connection.
	BgpRemoteAsNum pulumi.StringPtrInput
	// Spoke external device connection name.
	ConnectionName pulumi.StringPtrInput
	// Connection type. Valid values: 'bgp', 'static'. Default value: 'bgp'.
	ConnectionType pulumi.StringPtrInput
	// Switch to enable custom/non-default algorithms for IPSec Authentication/Encryption. Valid values: true, false. **NOTE: Please see notes here for more information.**
	CustomAlgorithms pulumi.BoolPtrInput
	// Set true for private network infrastructure.
	DirectConnect pulumi.BoolPtrInput
	// Enable Event Triggered HA. Default value: false. Valid values: true or false.
	EnableEventTriggeredHa pulumi.BoolPtrInput
	// Set as true to enable IKEv2 protocol.
	EnableIkev2 pulumi.BoolPtrInput
	// Enable learned CIDRs approval for the connection. Only valid with `connectionType` = 'bgp'. Requires the spoke_gateway's `learnedCidrsApprovalMode` attribute be set to 'connection'. Valid values: true, false. Default value: false.
	EnableLearnedCidrsApproval pulumi.BoolPtrInput
	// Aviatrix spoke gateway name.
	GwName pulumi.StringPtrInput
	// Set as true if there are two external devices.
	// * ` backupRemoteGatewayIp  ` - (Optional) Backup remote gateway IP. Required if HA enabled.
	HaEnabled pulumi.BoolPtrInput
	// Source CIDR for the tunnel from the Aviatrix spoke gateway.
	LocalTunnelCidr pulumi.StringPtrInput
	// Configure manual BGP advertised CIDRs for this connection. Only valid with `connectionType`= 'bgp'.
	ManualBgpAdvertisedCidrs pulumi.StringArrayInput
	// Phase one Authentication. Valid values: 'SHA-1', 'SHA-256', 'SHA-384' and 'SHA-512'. Default value: 'SHA-256'.
	Phase1Authentication pulumi.StringPtrInput
	// Phase one DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase1DhGroups pulumi.StringPtrInput
	// Phase one Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", and "AES-256-GCM-128". Default value: "AES-256-CBC".
	Phase1Encryption pulumi.StringPtrInput
	// Phase 1 remote identifier of the IPsec tunnel. This can be configured to be either the public IP address or the private IP address of the peer terminating the IPsec tunnel. Example: ["1.2.3.4"] when HA is disabled, ["1.2.3.4", "5.6.7.8"] when HA is enabled.
	Phase1RemoteIdentifiers pulumi.StringArrayInput
	// Phase two Authentication. Valid values: 'NO-AUTH', 'HMAC-SHA-1', 'HMAC-SHA-256', 'HMAC-SHA-384' and 'HMAC-SHA-512'. Default value: 'HMAC-SHA-256'.
	Phase2Authentication pulumi.StringPtrInput
	// Phase two DH Groups. Valid values: '1', '2', '5', '14', '15', '16', '17', '18', '19', '20' and '21'. Default value: '14'.
	Phase2DhGroups pulumi.StringPtrInput
	// Phase two Encryption. Valid values: "3DES", "AES-128-CBC", "AES-192-CBC", "AES-256-CBC", "AES-128-GCM-64", "AES-128-GCM-96", "AES-128-GCM-128", "AES-256-GCM-64", "AES-256-GCM-96", "AES-256-GCM-128" and "NULL-ENCR". Default value: "AES-256-CBC".
	Phase2Encryption pulumi.StringPtrInput
	// Pre-Shared Key.
	PreSharedKey pulumi.StringPtrInput
	// Connection AS Path Prepend customized by specifying AS PATH for a BGP connection.
	PrependAsPaths pulumi.StringArrayInput
	// Remote gateway IP.
	RemoteGatewayIp pulumi.StringPtrInput
	// Remote CIDRs joined as a string with ','. Required for a 'static' type connection.
	RemoteSubnet pulumi.StringPtrInput
	// Destination CIDR for the tunnel to the external device.
	RemoteTunnelCidr pulumi.StringPtrInput
	// Tunnel protocol, only valid with `connectionType` = 'bgp'. Valid values: 'IPsec'. Default value: 'IPsec'. Case insensitive.
	TunnelProtocol pulumi.StringPtrInput
	// VPC ID of the Aviatrix spoke gateway.
	VpcId pulumi.StringPtrInput
}

func (Aviatrix_spoke_external_device_connState) ElementType

type GetAviatrixCallerIdentityResult

type GetAviatrixCallerIdentityResult struct {
	// Aviatrix caller identity.
	Cid string `pulumi:"cid"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getAviatrixCallerIdentity.

func GetAviatrixCallerIdentity

func GetAviatrixCallerIdentity(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetAviatrixCallerIdentityResult, error)

The **aviatrix_caller_identity** data source provides the Aviatrix CID for use in other resources.

type GetAviatrixDeviceInterfacesArgs

type GetAviatrixDeviceInterfacesArgs struct {
	// Device name.
	DeviceName string `pulumi:"deviceName"`
}

A collection of arguments for invoking getAviatrixDeviceInterfaces.

type GetAviatrixDeviceInterfacesOutputArgs

type GetAviatrixDeviceInterfacesOutputArgs struct {
	// Device name.
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
}

A collection of arguments for invoking getAviatrixDeviceInterfaces.

func (GetAviatrixDeviceInterfacesOutputArgs) ElementType

type GetAviatrixDeviceInterfacesResult

type GetAviatrixDeviceInterfacesResult struct {
	DeviceName string `pulumi:"deviceName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of WAN interfaces.
	WanInterfaces []GetAviatrixDeviceInterfacesWanInterface `pulumi:"wanInterfaces"`
}

A collection of values returned by getAviatrixDeviceInterfaces.

func GetAviatrixDeviceInterfaces

func GetAviatrixDeviceInterfaces(ctx *pulumi.Context, args *GetAviatrixDeviceInterfacesArgs, opts ...pulumi.InvokeOption) (*GetAviatrixDeviceInterfacesResult, error)

Use this data source to get the list of device WAN interfaces for use in other resources.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixDeviceInterfaces(ctx, &GetAviatrixDeviceInterfacesArgs{
			DeviceName: "test-device",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAviatrixDeviceInterfacesResultOutput

type GetAviatrixDeviceInterfacesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixDeviceInterfaces.

func (GetAviatrixDeviceInterfacesResultOutput) DeviceName

func (GetAviatrixDeviceInterfacesResultOutput) ElementType

func (GetAviatrixDeviceInterfacesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixDeviceInterfacesResultOutput) ToGetAviatrixDeviceInterfacesResultOutput

func (o GetAviatrixDeviceInterfacesResultOutput) ToGetAviatrixDeviceInterfacesResultOutput() GetAviatrixDeviceInterfacesResultOutput

func (GetAviatrixDeviceInterfacesResultOutput) ToGetAviatrixDeviceInterfacesResultOutputWithContext

func (o GetAviatrixDeviceInterfacesResultOutput) ToGetAviatrixDeviceInterfacesResultOutputWithContext(ctx context.Context) GetAviatrixDeviceInterfacesResultOutput

func (GetAviatrixDeviceInterfacesResultOutput) WanInterfaces

List of WAN interfaces.

type GetAviatrixDeviceInterfacesWanInterface

type GetAviatrixDeviceInterfacesWanInterface struct {
	// Name of the WAN primary interface.
	WanPrimaryInterface string `pulumi:"wanPrimaryInterface"`
	// The WAN Primary interface public IP.
	WanPrimaryInterfacePublicIp string `pulumi:"wanPrimaryInterfacePublicIp"`
}

type GetAviatrixDeviceInterfacesWanInterfaceArgs

type GetAviatrixDeviceInterfacesWanInterfaceArgs struct {
	// Name of the WAN primary interface.
	WanPrimaryInterface pulumi.StringInput `pulumi:"wanPrimaryInterface"`
	// The WAN Primary interface public IP.
	WanPrimaryInterfacePublicIp pulumi.StringInput `pulumi:"wanPrimaryInterfacePublicIp"`
}

func (GetAviatrixDeviceInterfacesWanInterfaceArgs) ElementType

func (GetAviatrixDeviceInterfacesWanInterfaceArgs) ToGetAviatrixDeviceInterfacesWanInterfaceOutput

func (i GetAviatrixDeviceInterfacesWanInterfaceArgs) ToGetAviatrixDeviceInterfacesWanInterfaceOutput() GetAviatrixDeviceInterfacesWanInterfaceOutput

func (GetAviatrixDeviceInterfacesWanInterfaceArgs) ToGetAviatrixDeviceInterfacesWanInterfaceOutputWithContext

func (i GetAviatrixDeviceInterfacesWanInterfaceArgs) ToGetAviatrixDeviceInterfacesWanInterfaceOutputWithContext(ctx context.Context) GetAviatrixDeviceInterfacesWanInterfaceOutput

type GetAviatrixDeviceInterfacesWanInterfaceArray

type GetAviatrixDeviceInterfacesWanInterfaceArray []GetAviatrixDeviceInterfacesWanInterfaceInput

func (GetAviatrixDeviceInterfacesWanInterfaceArray) ElementType

func (GetAviatrixDeviceInterfacesWanInterfaceArray) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutput

func (i GetAviatrixDeviceInterfacesWanInterfaceArray) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutput() GetAviatrixDeviceInterfacesWanInterfaceArrayOutput

func (GetAviatrixDeviceInterfacesWanInterfaceArray) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutputWithContext

func (i GetAviatrixDeviceInterfacesWanInterfaceArray) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixDeviceInterfacesWanInterfaceArrayOutput

type GetAviatrixDeviceInterfacesWanInterfaceArrayInput

type GetAviatrixDeviceInterfacesWanInterfaceArrayInput interface {
	pulumi.Input

	ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutput() GetAviatrixDeviceInterfacesWanInterfaceArrayOutput
	ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutputWithContext(context.Context) GetAviatrixDeviceInterfacesWanInterfaceArrayOutput
}

GetAviatrixDeviceInterfacesWanInterfaceArrayInput is an input type that accepts GetAviatrixDeviceInterfacesWanInterfaceArray and GetAviatrixDeviceInterfacesWanInterfaceArrayOutput values. You can construct a concrete instance of `GetAviatrixDeviceInterfacesWanInterfaceArrayInput` via:

GetAviatrixDeviceInterfacesWanInterfaceArray{ GetAviatrixDeviceInterfacesWanInterfaceArgs{...} }

type GetAviatrixDeviceInterfacesWanInterfaceArrayOutput

type GetAviatrixDeviceInterfacesWanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) ElementType

func (GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) Index

func (GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutput

func (o GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutput() GetAviatrixDeviceInterfacesWanInterfaceArrayOutput

func (GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutputWithContext

func (o GetAviatrixDeviceInterfacesWanInterfaceArrayOutput) ToGetAviatrixDeviceInterfacesWanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixDeviceInterfacesWanInterfaceArrayOutput

type GetAviatrixDeviceInterfacesWanInterfaceInput

type GetAviatrixDeviceInterfacesWanInterfaceInput interface {
	pulumi.Input

	ToGetAviatrixDeviceInterfacesWanInterfaceOutput() GetAviatrixDeviceInterfacesWanInterfaceOutput
	ToGetAviatrixDeviceInterfacesWanInterfaceOutputWithContext(context.Context) GetAviatrixDeviceInterfacesWanInterfaceOutput
}

GetAviatrixDeviceInterfacesWanInterfaceInput is an input type that accepts GetAviatrixDeviceInterfacesWanInterfaceArgs and GetAviatrixDeviceInterfacesWanInterfaceOutput values. You can construct a concrete instance of `GetAviatrixDeviceInterfacesWanInterfaceInput` via:

GetAviatrixDeviceInterfacesWanInterfaceArgs{...}

type GetAviatrixDeviceInterfacesWanInterfaceOutput

type GetAviatrixDeviceInterfacesWanInterfaceOutput struct{ *pulumi.OutputState }

func (GetAviatrixDeviceInterfacesWanInterfaceOutput) ElementType

func (GetAviatrixDeviceInterfacesWanInterfaceOutput) ToGetAviatrixDeviceInterfacesWanInterfaceOutput

func (o GetAviatrixDeviceInterfacesWanInterfaceOutput) ToGetAviatrixDeviceInterfacesWanInterfaceOutput() GetAviatrixDeviceInterfacesWanInterfaceOutput

func (GetAviatrixDeviceInterfacesWanInterfaceOutput) ToGetAviatrixDeviceInterfacesWanInterfaceOutputWithContext

func (o GetAviatrixDeviceInterfacesWanInterfaceOutput) ToGetAviatrixDeviceInterfacesWanInterfaceOutputWithContext(ctx context.Context) GetAviatrixDeviceInterfacesWanInterfaceOutput

func (GetAviatrixDeviceInterfacesWanInterfaceOutput) WanPrimaryInterface

Name of the WAN primary interface.

func (GetAviatrixDeviceInterfacesWanInterfaceOutput) WanPrimaryInterfacePublicIp

func (o GetAviatrixDeviceInterfacesWanInterfaceOutput) WanPrimaryInterfacePublicIp() pulumi.StringOutput

The WAN Primary interface public IP.

type GetAviatrixFirenetFirewallInstanceAssociation

type GetAviatrixFirenetFirewallInstanceAssociation struct {
	Attached        bool   `pulumi:"attached"`
	EgressInterface string `pulumi:"egressInterface"`
	// Name of the primary FireNet gateway.
	FirenetGwName string `pulumi:"firenetGwName"`
	// Firewall instance name.
	// * `lanInterface`- Lan interface ID.
	FirewallName string `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId   string `pulumi:"instanceId"`
	LanInterface string `pulumi:"lanInterface"`
	// Management interface ID.
	// * `egressInterface`- Egress interface ID.
	// * `attached`- Switch to attach/detach firewall instance to/from fireNet.
	ManagementInterface string `pulumi:"managementInterface"`
	// Type of the firewall.
	VendorType string `pulumi:"vendorType"`
}

type GetAviatrixFirenetFirewallInstanceAssociationArgs

type GetAviatrixFirenetFirewallInstanceAssociationArgs struct {
	Attached        pulumi.BoolInput   `pulumi:"attached"`
	EgressInterface pulumi.StringInput `pulumi:"egressInterface"`
	// Name of the primary FireNet gateway.
	FirenetGwName pulumi.StringInput `pulumi:"firenetGwName"`
	// Firewall instance name.
	// * `lanInterface`- Lan interface ID.
	FirewallName pulumi.StringInput `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId   pulumi.StringInput `pulumi:"instanceId"`
	LanInterface pulumi.StringInput `pulumi:"lanInterface"`
	// Management interface ID.
	// * `egressInterface`- Egress interface ID.
	// * `attached`- Switch to attach/detach firewall instance to/from fireNet.
	ManagementInterface pulumi.StringInput `pulumi:"managementInterface"`
	// Type of the firewall.
	VendorType pulumi.StringInput `pulumi:"vendorType"`
}

func (GetAviatrixFirenetFirewallInstanceAssociationArgs) ElementType

func (GetAviatrixFirenetFirewallInstanceAssociationArgs) ToGetAviatrixFirenetFirewallInstanceAssociationOutput

func (i GetAviatrixFirenetFirewallInstanceAssociationArgs) ToGetAviatrixFirenetFirewallInstanceAssociationOutput() GetAviatrixFirenetFirewallInstanceAssociationOutput

func (GetAviatrixFirenetFirewallInstanceAssociationArgs) ToGetAviatrixFirenetFirewallInstanceAssociationOutputWithContext

func (i GetAviatrixFirenetFirewallInstanceAssociationArgs) ToGetAviatrixFirenetFirewallInstanceAssociationOutputWithContext(ctx context.Context) GetAviatrixFirenetFirewallInstanceAssociationOutput

type GetAviatrixFirenetFirewallInstanceAssociationArray

type GetAviatrixFirenetFirewallInstanceAssociationArray []GetAviatrixFirenetFirewallInstanceAssociationInput

func (GetAviatrixFirenetFirewallInstanceAssociationArray) ElementType

func (GetAviatrixFirenetFirewallInstanceAssociationArray) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutput

func (i GetAviatrixFirenetFirewallInstanceAssociationArray) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutput() GetAviatrixFirenetFirewallInstanceAssociationArrayOutput

func (GetAviatrixFirenetFirewallInstanceAssociationArray) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext

func (i GetAviatrixFirenetFirewallInstanceAssociationArray) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) GetAviatrixFirenetFirewallInstanceAssociationArrayOutput

type GetAviatrixFirenetFirewallInstanceAssociationArrayInput

type GetAviatrixFirenetFirewallInstanceAssociationArrayInput interface {
	pulumi.Input

	ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutput() GetAviatrixFirenetFirewallInstanceAssociationArrayOutput
	ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(context.Context) GetAviatrixFirenetFirewallInstanceAssociationArrayOutput
}

GetAviatrixFirenetFirewallInstanceAssociationArrayInput is an input type that accepts GetAviatrixFirenetFirewallInstanceAssociationArray and GetAviatrixFirenetFirewallInstanceAssociationArrayOutput values. You can construct a concrete instance of `GetAviatrixFirenetFirewallInstanceAssociationArrayInput` via:

GetAviatrixFirenetFirewallInstanceAssociationArray{ GetAviatrixFirenetFirewallInstanceAssociationArgs{...} }

type GetAviatrixFirenetFirewallInstanceAssociationArrayOutput

type GetAviatrixFirenetFirewallInstanceAssociationArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirenetFirewallInstanceAssociationArrayOutput) ElementType

func (GetAviatrixFirenetFirewallInstanceAssociationArrayOutput) Index

func (GetAviatrixFirenetFirewallInstanceAssociationArrayOutput) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutput

func (GetAviatrixFirenetFirewallInstanceAssociationArrayOutput) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext

func (o GetAviatrixFirenetFirewallInstanceAssociationArrayOutput) ToGetAviatrixFirenetFirewallInstanceAssociationArrayOutputWithContext(ctx context.Context) GetAviatrixFirenetFirewallInstanceAssociationArrayOutput

type GetAviatrixFirenetFirewallInstanceAssociationInput

type GetAviatrixFirenetFirewallInstanceAssociationInput interface {
	pulumi.Input

	ToGetAviatrixFirenetFirewallInstanceAssociationOutput() GetAviatrixFirenetFirewallInstanceAssociationOutput
	ToGetAviatrixFirenetFirewallInstanceAssociationOutputWithContext(context.Context) GetAviatrixFirenetFirewallInstanceAssociationOutput
}

GetAviatrixFirenetFirewallInstanceAssociationInput is an input type that accepts GetAviatrixFirenetFirewallInstanceAssociationArgs and GetAviatrixFirenetFirewallInstanceAssociationOutput values. You can construct a concrete instance of `GetAviatrixFirenetFirewallInstanceAssociationInput` via:

GetAviatrixFirenetFirewallInstanceAssociationArgs{...}

type GetAviatrixFirenetFirewallInstanceAssociationOutput

type GetAviatrixFirenetFirewallInstanceAssociationOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) Attached

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) EgressInterface

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) ElementType

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) FirenetGwName

Name of the primary FireNet gateway.

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) FirewallName

Firewall instance name. * `lanInterface`- Lan interface ID.

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) InstanceId

ID of Firewall instance.

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) LanInterface

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) ManagementInterface

Management interface ID. * `egressInterface`- Egress interface ID. * `attached`- Switch to attach/detach firewall instance to/from fireNet.

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) ToGetAviatrixFirenetFirewallInstanceAssociationOutput

func (o GetAviatrixFirenetFirewallInstanceAssociationOutput) ToGetAviatrixFirenetFirewallInstanceAssociationOutput() GetAviatrixFirenetFirewallInstanceAssociationOutput

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) ToGetAviatrixFirenetFirewallInstanceAssociationOutputWithContext

func (o GetAviatrixFirenetFirewallInstanceAssociationOutput) ToGetAviatrixFirenetFirewallInstanceAssociationOutputWithContext(ctx context.Context) GetAviatrixFirenetFirewallInstanceAssociationOutput

func (GetAviatrixFirenetFirewallInstanceAssociationOutput) VendorType

Type of the firewall.

type GetAviatrixFirenetFirewallManagerArgs

type GetAviatrixFirenetFirewallManagerArgs struct {
	// The FireNet gateway name.
	GatewayName string `pulumi:"gatewayName"`
	// Number of retries for `save` or `synchronize`. Example: 1. Default value: 0.
	NumberOfRetries *int `pulumi:"numberOfRetries"`
	// Panorama login password for API calls. Required for vendor type "Palo Alto Networks Panorama".
	Password *string `pulumi:"password"`
	// The public IP address of the Panorama instance. Required for vendor type "Palo Alto Networks Panorama".
	PublicIp *string `pulumi:"publicIp"`
	// Retry interval in seconds for `save` or `synchronize`. Example: 120. Default value: 300.
	RetryInterval *int `pulumi:"retryInterval"`
	// The name of firewall virtual router to program. If left unspecified, the Controller programs the Panorama template’s first router.
	RouteTable *string `pulumi:"routeTable"`
	// Switch to save or not.
	Save *bool `pulumi:"save"`
	// Switch to sync or not.
	Synchronize *bool `pulumi:"synchronize"`
	// Panorama template for each FireNet gateway. Required for vendor type "Palo Alto Networks Panorama".
	Template *string `pulumi:"template"`
	// Panorama template stack for each FireNet gateway. Required for vendor type "Palo Alto Networks Panorama".
	TemplateStack *string `pulumi:"templateStack"`
	// Panorama login name for API calls from the Controller. Required for vendor type "Palo Alto Networks Panorama".
	Username *string `pulumi:"username"`
	// Vendor type. Valid values: "Generic" and "Palo Alto Networks Panorama".
	VendorType string `pulumi:"vendorType"`
	// VPC ID.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenetFirewallManager.

type GetAviatrixFirenetFirewallManagerOutputArgs

type GetAviatrixFirenetFirewallManagerOutputArgs struct {
	// The FireNet gateway name.
	GatewayName pulumi.StringInput `pulumi:"gatewayName"`
	// Number of retries for `save` or `synchronize`. Example: 1. Default value: 0.
	NumberOfRetries pulumi.IntPtrInput `pulumi:"numberOfRetries"`
	// Panorama login password for API calls. Required for vendor type "Palo Alto Networks Panorama".
	Password pulumi.StringPtrInput `pulumi:"password"`
	// The public IP address of the Panorama instance. Required for vendor type "Palo Alto Networks Panorama".
	PublicIp pulumi.StringPtrInput `pulumi:"publicIp"`
	// Retry interval in seconds for `save` or `synchronize`. Example: 120. Default value: 300.
	RetryInterval pulumi.IntPtrInput `pulumi:"retryInterval"`
	// The name of firewall virtual router to program. If left unspecified, the Controller programs the Panorama template’s first router.
	RouteTable pulumi.StringPtrInput `pulumi:"routeTable"`
	// Switch to save or not.
	Save pulumi.BoolPtrInput `pulumi:"save"`
	// Switch to sync or not.
	Synchronize pulumi.BoolPtrInput `pulumi:"synchronize"`
	// Panorama template for each FireNet gateway. Required for vendor type "Palo Alto Networks Panorama".
	Template pulumi.StringPtrInput `pulumi:"template"`
	// Panorama template stack for each FireNet gateway. Required for vendor type "Palo Alto Networks Panorama".
	TemplateStack pulumi.StringPtrInput `pulumi:"templateStack"`
	// Panorama login name for API calls from the Controller. Required for vendor type "Palo Alto Networks Panorama".
	Username pulumi.StringPtrInput `pulumi:"username"`
	// Vendor type. Valid values: "Generic" and "Palo Alto Networks Panorama".
	VendorType pulumi.StringInput `pulumi:"vendorType"`
	// VPC ID.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenetFirewallManager.

func (GetAviatrixFirenetFirewallManagerOutputArgs) ElementType

type GetAviatrixFirenetFirewallManagerResult

type GetAviatrixFirenetFirewallManagerResult struct {
	GatewayName string `pulumi:"gatewayName"`
	// The provider-assigned unique ID for this managed resource.
	Id              string  `pulumi:"id"`
	NumberOfRetries *int    `pulumi:"numberOfRetries"`
	Password        *string `pulumi:"password"`
	PublicIp        *string `pulumi:"publicIp"`
	RetryInterval   *int    `pulumi:"retryInterval"`
	RouteTable      *string `pulumi:"routeTable"`
	Save            *bool   `pulumi:"save"`
	Synchronize     *bool   `pulumi:"synchronize"`
	Template        *string `pulumi:"template"`
	TemplateStack   *string `pulumi:"templateStack"`
	Username        *string `pulumi:"username"`
	VendorType      string  `pulumi:"vendorType"`
	VpcId           string  `pulumi:"vpcId"`
}

A collection of values returned by getAviatrixFirenetFirewallManager.

func GetAviatrixFirenetFirewallManager

Use this data source to do 'save' or 'sync' for Aviatrix FireNet firewall manager.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixFirenetFirewallManager(ctx, &GetAviatrixFirenetFirewallManagerArgs{
			GatewayName:   "transit",
			Password:      pulumi.StringRef("password"),
			PublicIp:      pulumi.StringRef("1.2.3.4"),
			RouteTable:    pulumi.StringRef("router"),
			Save:          pulumi.BoolRef(true),
			Template:      pulumi.StringRef("template"),
			TemplateStack: pulumi.StringRef("templatestack"),
			Username:      pulumi.StringRef("admin-api"),
			VendorType:    "Palo Alto Networks Panorama",
			VpcId:         "vpc-abcd123",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAviatrixFirenetFirewallManagerResultOutput

type GetAviatrixFirenetFirewallManagerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixFirenetFirewallManager.

func (GetAviatrixFirenetFirewallManagerResultOutput) ElementType

func (GetAviatrixFirenetFirewallManagerResultOutput) GatewayName

func (GetAviatrixFirenetFirewallManagerResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixFirenetFirewallManagerResultOutput) NumberOfRetries

func (GetAviatrixFirenetFirewallManagerResultOutput) Password

func (GetAviatrixFirenetFirewallManagerResultOutput) PublicIp

func (GetAviatrixFirenetFirewallManagerResultOutput) RetryInterval

func (GetAviatrixFirenetFirewallManagerResultOutput) RouteTable

func (GetAviatrixFirenetFirewallManagerResultOutput) Save

func (GetAviatrixFirenetFirewallManagerResultOutput) Synchronize

func (GetAviatrixFirenetFirewallManagerResultOutput) Template

func (GetAviatrixFirenetFirewallManagerResultOutput) TemplateStack

func (GetAviatrixFirenetFirewallManagerResultOutput) ToGetAviatrixFirenetFirewallManagerResultOutput

func (o GetAviatrixFirenetFirewallManagerResultOutput) ToGetAviatrixFirenetFirewallManagerResultOutput() GetAviatrixFirenetFirewallManagerResultOutput

func (GetAviatrixFirenetFirewallManagerResultOutput) ToGetAviatrixFirenetFirewallManagerResultOutputWithContext

func (o GetAviatrixFirenetFirewallManagerResultOutput) ToGetAviatrixFirenetFirewallManagerResultOutputWithContext(ctx context.Context) GetAviatrixFirenetFirewallManagerResultOutput

func (GetAviatrixFirenetFirewallManagerResultOutput) Username

func (GetAviatrixFirenetFirewallManagerResultOutput) VendorType

func (GetAviatrixFirenetFirewallManagerResultOutput) VpcId

type GetAviatrixFirenetVendorIntegrationArgs

type GetAviatrixFirenetVendorIntegrationArgs struct {
	// API token for API calls. Required and valid only for vendor type "Fortinet FortiGate".
	ApiToken *string `pulumi:"apiToken"`
	// Name of firewall instance.
	FirewallName *string `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId string `pulumi:"instanceId"`
	// Number of retries for `save` or `synchronize`. Example: 1. Default value: 0.
	NumberOfRetries *int `pulumi:"numberOfRetries"`
	// Firewall login password for API calls. Required for vendor type "Generic", "Palo Alto Networks VM-Series" and "Aviatrix FQDN Gateway".
	Password *string `pulumi:"password"`
	// Private key file. Valid only for vendor type "Check Point Cloud Guard". Use the `file` function to read from a file.
	PrivateKeyFile *string `pulumi:"privateKeyFile"`
	// The IP address of the firewall management interface for API calls from the Aviatrix Controller. If not set, the public IP of the firewall instance will be used. If the private IP is provided, please make sure that the controller can access the firewall.
	PublicIp *string `pulumi:"publicIp"`
	// Retry interval in seconds for `save` or `synchronize`. Example: 120. Default value: 300.
	RetryInterval *int `pulumi:"retryInterval"`
	// Specify the firewall virtual Router name you wish the Controller to program. If left unspecified, the Controller programs the firewall’s default router.
	RouteTable *string `pulumi:"routeTable"`
	// Switch to save or not.
	Save *bool `pulumi:"save"`
	// Switch to sync or not.
	Synchronize *bool `pulumi:"synchronize"`
	// Firewall login name for API calls from the Controller. Required for vendor type "Generic", "Palo Alto Networks VM-Series" and "Aviatrix FQDN Gateway".
	Username *string `pulumi:"username"`
	// Select PAN. Valid values: "Generic", "Palo Alto Networks VM-Series", "Aviatrix FQDN Gateway" and "Fortinet FortiGate".
	VendorType string `pulumi:"vendorType"`
	// VPC ID.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenetVendorIntegration.

type GetAviatrixFirenetVendorIntegrationOutputArgs

type GetAviatrixFirenetVendorIntegrationOutputArgs struct {
	// API token for API calls. Required and valid only for vendor type "Fortinet FortiGate".
	ApiToken pulumi.StringPtrInput `pulumi:"apiToken"`
	// Name of firewall instance.
	FirewallName pulumi.StringPtrInput `pulumi:"firewallName"`
	// ID of Firewall instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Number of retries for `save` or `synchronize`. Example: 1. Default value: 0.
	NumberOfRetries pulumi.IntPtrInput `pulumi:"numberOfRetries"`
	// Firewall login password for API calls. Required for vendor type "Generic", "Palo Alto Networks VM-Series" and "Aviatrix FQDN Gateway".
	Password pulumi.StringPtrInput `pulumi:"password"`
	// Private key file. Valid only for vendor type "Check Point Cloud Guard". Use the `file` function to read from a file.
	PrivateKeyFile pulumi.StringPtrInput `pulumi:"privateKeyFile"`
	// The IP address of the firewall management interface for API calls from the Aviatrix Controller. If not set, the public IP of the firewall instance will be used. If the private IP is provided, please make sure that the controller can access the firewall.
	PublicIp pulumi.StringPtrInput `pulumi:"publicIp"`
	// Retry interval in seconds for `save` or `synchronize`. Example: 120. Default value: 300.
	RetryInterval pulumi.IntPtrInput `pulumi:"retryInterval"`
	// Specify the firewall virtual Router name you wish the Controller to program. If left unspecified, the Controller programs the firewall’s default router.
	RouteTable pulumi.StringPtrInput `pulumi:"routeTable"`
	// Switch to save or not.
	Save pulumi.BoolPtrInput `pulumi:"save"`
	// Switch to sync or not.
	Synchronize pulumi.BoolPtrInput `pulumi:"synchronize"`
	// Firewall login name for API calls from the Controller. Required for vendor type "Generic", "Palo Alto Networks VM-Series" and "Aviatrix FQDN Gateway".
	Username pulumi.StringPtrInput `pulumi:"username"`
	// Select PAN. Valid values: "Generic", "Palo Alto Networks VM-Series", "Aviatrix FQDN Gateway" and "Fortinet FortiGate".
	VendorType pulumi.StringInput `pulumi:"vendorType"`
	// VPC ID.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenetVendorIntegration.

func (GetAviatrixFirenetVendorIntegrationOutputArgs) ElementType

type GetAviatrixFirenetVendorIntegrationResult

type GetAviatrixFirenetVendorIntegrationResult struct {
	ApiToken     *string `pulumi:"apiToken"`
	FirewallName *string `pulumi:"firewallName"`
	// The provider-assigned unique ID for this managed resource.
	Id              string  `pulumi:"id"`
	InstanceId      string  `pulumi:"instanceId"`
	NumberOfRetries *int    `pulumi:"numberOfRetries"`
	Password        *string `pulumi:"password"`
	PrivateKeyFile  *string `pulumi:"privateKeyFile"`
	PublicIp        *string `pulumi:"publicIp"`
	RetryInterval   *int    `pulumi:"retryInterval"`
	RouteTable      *string `pulumi:"routeTable"`
	Save            *bool   `pulumi:"save"`
	Synchronize     *bool   `pulumi:"synchronize"`
	Username        *string `pulumi:"username"`
	VendorType      string  `pulumi:"vendorType"`
	VpcId           string  `pulumi:"vpcId"`
}

A collection of values returned by getAviatrixFirenetVendorIntegration.

func GetAviatrixFirenetVendorIntegration

Use this data source to do 'save' or 'sync' for vendor integration purposes for Aviatrix FireNet.

> **NOTE:** FireNet with Panorama should be set up using the **aviatrix_firenet_firewall_manager** data source. Do not use `save` or `sync` options listed below.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixFirenetVendorIntegration(ctx, &GetAviatrixFirenetVendorIntegrationArgs{
			FirewallName: pulumi.StringRef("Avx-Firewall-Instance"),
			InstanceId:   "i-09ade2592661316f8",
			Password:     pulumi.StringRef("Avx123456#"),
			PublicIp:     pulumi.StringRef("10.11.12.13"),
			Save:         pulumi.BoolRef(true),
			Username:     pulumi.StringRef("admin"),
			VendorType:   "Palo Alto Networks VM-Series",
			VpcId:        "vpc-abcd123",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAviatrixFirenetVendorIntegrationResultOutput

type GetAviatrixFirenetVendorIntegrationResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixFirenetVendorIntegration.

func (GetAviatrixFirenetVendorIntegrationResultOutput) ApiToken

func (GetAviatrixFirenetVendorIntegrationResultOutput) ElementType

func (GetAviatrixFirenetVendorIntegrationResultOutput) FirewallName

func (GetAviatrixFirenetVendorIntegrationResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixFirenetVendorIntegrationResultOutput) InstanceId

func (GetAviatrixFirenetVendorIntegrationResultOutput) NumberOfRetries

func (GetAviatrixFirenetVendorIntegrationResultOutput) Password

func (GetAviatrixFirenetVendorIntegrationResultOutput) PrivateKeyFile

func (GetAviatrixFirenetVendorIntegrationResultOutput) PublicIp

func (GetAviatrixFirenetVendorIntegrationResultOutput) RetryInterval

func (GetAviatrixFirenetVendorIntegrationResultOutput) RouteTable

func (GetAviatrixFirenetVendorIntegrationResultOutput) Save

func (GetAviatrixFirenetVendorIntegrationResultOutput) Synchronize

func (GetAviatrixFirenetVendorIntegrationResultOutput) ToGetAviatrixFirenetVendorIntegrationResultOutput

func (o GetAviatrixFirenetVendorIntegrationResultOutput) ToGetAviatrixFirenetVendorIntegrationResultOutput() GetAviatrixFirenetVendorIntegrationResultOutput

func (GetAviatrixFirenetVendorIntegrationResultOutput) ToGetAviatrixFirenetVendorIntegrationResultOutputWithContext

func (o GetAviatrixFirenetVendorIntegrationResultOutput) ToGetAviatrixFirenetVendorIntegrationResultOutputWithContext(ctx context.Context) GetAviatrixFirenetVendorIntegrationResultOutput

func (GetAviatrixFirenetVendorIntegrationResultOutput) Username

func (GetAviatrixFirenetVendorIntegrationResultOutput) VendorType

func (GetAviatrixFirenetVendorIntegrationResultOutput) VpcId

type GetAviatrixFirewallInstanceImagesArgs

type GetAviatrixFirewallInstanceImagesArgs struct {
	// VPC ID. Example: AWS: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project_id", Azure: "vnet_name:rg_name:resource_guid", OCI: "vpc-oracle-test1".
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirewallInstanceImages.

type GetAviatrixFirewallInstanceImagesFirewallImage

type GetAviatrixFirewallInstanceImagesFirewallImage struct {
	// Name of the firewall image.
	FirewallImage string `pulumi:"firewallImage"`
	// List of firewall image versions.
	FirewallImageVersions []string `pulumi:"firewallImageVersions"`
	// List of firewall instance sizes.
	FirewallSizes []string `pulumi:"firewallSizes"`
}

type GetAviatrixFirewallInstanceImagesFirewallImageArgs

type GetAviatrixFirewallInstanceImagesFirewallImageArgs struct {
	// Name of the firewall image.
	FirewallImage pulumi.StringInput `pulumi:"firewallImage"`
	// List of firewall image versions.
	FirewallImageVersions pulumi.StringArrayInput `pulumi:"firewallImageVersions"`
	// List of firewall instance sizes.
	FirewallSizes pulumi.StringArrayInput `pulumi:"firewallSizes"`
}

func (GetAviatrixFirewallInstanceImagesFirewallImageArgs) ElementType

func (GetAviatrixFirewallInstanceImagesFirewallImageArgs) ToGetAviatrixFirewallInstanceImagesFirewallImageOutput

func (i GetAviatrixFirewallInstanceImagesFirewallImageArgs) ToGetAviatrixFirewallInstanceImagesFirewallImageOutput() GetAviatrixFirewallInstanceImagesFirewallImageOutput

func (GetAviatrixFirewallInstanceImagesFirewallImageArgs) ToGetAviatrixFirewallInstanceImagesFirewallImageOutputWithContext

func (i GetAviatrixFirewallInstanceImagesFirewallImageArgs) ToGetAviatrixFirewallInstanceImagesFirewallImageOutputWithContext(ctx context.Context) GetAviatrixFirewallInstanceImagesFirewallImageOutput

type GetAviatrixFirewallInstanceImagesFirewallImageArray

type GetAviatrixFirewallInstanceImagesFirewallImageArray []GetAviatrixFirewallInstanceImagesFirewallImageInput

func (GetAviatrixFirewallInstanceImagesFirewallImageArray) ElementType

func (GetAviatrixFirewallInstanceImagesFirewallImageArray) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

func (i GetAviatrixFirewallInstanceImagesFirewallImageArray) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutput() GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

func (GetAviatrixFirewallInstanceImagesFirewallImageArray) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutputWithContext

func (i GetAviatrixFirewallInstanceImagesFirewallImageArray) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutputWithContext(ctx context.Context) GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

type GetAviatrixFirewallInstanceImagesFirewallImageArrayInput

type GetAviatrixFirewallInstanceImagesFirewallImageArrayInput interface {
	pulumi.Input

	ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutput() GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput
	ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutputWithContext(context.Context) GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput
}

GetAviatrixFirewallInstanceImagesFirewallImageArrayInput is an input type that accepts GetAviatrixFirewallInstanceImagesFirewallImageArray and GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput values. You can construct a concrete instance of `GetAviatrixFirewallInstanceImagesFirewallImageArrayInput` via:

GetAviatrixFirewallInstanceImagesFirewallImageArray{ GetAviatrixFirewallInstanceImagesFirewallImageArgs{...} }

type GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

type GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput) ElementType

func (GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput) Index

func (GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

func (GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutputWithContext

func (o GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageArrayOutputWithContext(ctx context.Context) GetAviatrixFirewallInstanceImagesFirewallImageArrayOutput

type GetAviatrixFirewallInstanceImagesFirewallImageInput

type GetAviatrixFirewallInstanceImagesFirewallImageInput interface {
	pulumi.Input

	ToGetAviatrixFirewallInstanceImagesFirewallImageOutput() GetAviatrixFirewallInstanceImagesFirewallImageOutput
	ToGetAviatrixFirewallInstanceImagesFirewallImageOutputWithContext(context.Context) GetAviatrixFirewallInstanceImagesFirewallImageOutput
}

GetAviatrixFirewallInstanceImagesFirewallImageInput is an input type that accepts GetAviatrixFirewallInstanceImagesFirewallImageArgs and GetAviatrixFirewallInstanceImagesFirewallImageOutput values. You can construct a concrete instance of `GetAviatrixFirewallInstanceImagesFirewallImageInput` via:

GetAviatrixFirewallInstanceImagesFirewallImageArgs{...}

type GetAviatrixFirewallInstanceImagesFirewallImageOutput

type GetAviatrixFirewallInstanceImagesFirewallImageOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) ElementType

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) FirewallImage

Name of the firewall image.

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) FirewallImageVersions

List of firewall image versions.

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) FirewallSizes

List of firewall instance sizes.

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageOutput

func (GetAviatrixFirewallInstanceImagesFirewallImageOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageOutputWithContext

func (o GetAviatrixFirewallInstanceImagesFirewallImageOutput) ToGetAviatrixFirewallInstanceImagesFirewallImageOutputWithContext(ctx context.Context) GetAviatrixFirewallInstanceImagesFirewallImageOutput

type GetAviatrixFirewallInstanceImagesOutputArgs

type GetAviatrixFirewallInstanceImagesOutputArgs struct {
	// VPC ID. Example: AWS: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project_id", Azure: "vnet_name:rg_name:resource_guid", OCI: "vpc-oracle-test1".
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirewallInstanceImages.

func (GetAviatrixFirewallInstanceImagesOutputArgs) ElementType

type GetAviatrixFirewallInstanceImagesResult

type GetAviatrixFirewallInstanceImagesResult struct {
	// List of firewall images.
	FirewallImages []GetAviatrixFirewallInstanceImagesFirewallImage `pulumi:"firewallImages"`
	// The provider-assigned unique ID for this managed resource.
	Id    string `pulumi:"id"`
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getAviatrixFirewallInstanceImages.

func GetAviatrixFirewallInstanceImages

Use this data source to get the list of firewall instance images for use in other resources.

**NOTE:** A firenet enabled gateway in a security VPC is required for this data source.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixFirewallInstanceImages(ctx, &GetAviatrixFirewallInstanceImagesArgs{
			VpcId: "vpc-1234567",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAviatrixFirewallInstanceImagesResultOutput

type GetAviatrixFirewallInstanceImagesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixFirewallInstanceImages.

func (GetAviatrixFirewallInstanceImagesResultOutput) ElementType

func (GetAviatrixFirewallInstanceImagesResultOutput) FirewallImages

List of firewall images.

func (GetAviatrixFirewallInstanceImagesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixFirewallInstanceImagesResultOutput) ToGetAviatrixFirewallInstanceImagesResultOutput

func (o GetAviatrixFirewallInstanceImagesResultOutput) ToGetAviatrixFirewallInstanceImagesResultOutput() GetAviatrixFirewallInstanceImagesResultOutput

func (GetAviatrixFirewallInstanceImagesResultOutput) ToGetAviatrixFirewallInstanceImagesResultOutputWithContext

func (o GetAviatrixFirewallInstanceImagesResultOutput) ToGetAviatrixFirewallInstanceImagesResultOutputWithContext(ctx context.Context) GetAviatrixFirewallInstanceImagesResultOutput

func (GetAviatrixFirewallInstanceImagesResultOutput) VpcId

type GetAviatrixFirewallPolicyType

type GetAviatrixFirewallPolicyType struct {
	Action      string `pulumi:"action"`
	Description string `pulumi:"description"`
	// CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.
	DstIp string `pulumi:"dstIp"`
	// Indicates whether logging is enabled or not.
	// * `description`- Policy description.
	LogEnabled bool `pulumi:"logEnabled"`
	// A single port or a range of port numbers.
	// * `action`- `allow`, `deny` or `force-drop`(allow immediate packet dropping on established sessions).
	Port string `pulumi:"port"`
	// `all`, `tcp`, `udp`, `icmp`, `sctp`, `rdp` or `dccp`.
	Protocol string `pulumi:"protocol"`
	// CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.
	SrcIp string `pulumi:"srcIp"`
}

type GetAviatrixFirewallPolicyTypeArgs

type GetAviatrixFirewallPolicyTypeArgs struct {
	Action      pulumi.StringInput `pulumi:"action"`
	Description pulumi.StringInput `pulumi:"description"`
	// CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.
	DstIp pulumi.StringInput `pulumi:"dstIp"`
	// Indicates whether logging is enabled or not.
	// * `description`- Policy description.
	LogEnabled pulumi.BoolInput `pulumi:"logEnabled"`
	// A single port or a range of port numbers.
	// * `action`- `allow`, `deny` or `force-drop`(allow immediate packet dropping on established sessions).
	Port pulumi.StringInput `pulumi:"port"`
	// `all`, `tcp`, `udp`, `icmp`, `sctp`, `rdp` or `dccp`.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.
	SrcIp pulumi.StringInput `pulumi:"srcIp"`
}

func (GetAviatrixFirewallPolicyTypeArgs) ElementType

func (GetAviatrixFirewallPolicyTypeArgs) ToGetAviatrixFirewallPolicyTypeOutput

func (i GetAviatrixFirewallPolicyTypeArgs) ToGetAviatrixFirewallPolicyTypeOutput() GetAviatrixFirewallPolicyTypeOutput

func (GetAviatrixFirewallPolicyTypeArgs) ToGetAviatrixFirewallPolicyTypeOutputWithContext

func (i GetAviatrixFirewallPolicyTypeArgs) ToGetAviatrixFirewallPolicyTypeOutputWithContext(ctx context.Context) GetAviatrixFirewallPolicyTypeOutput

type GetAviatrixFirewallPolicyTypeArray

type GetAviatrixFirewallPolicyTypeArray []GetAviatrixFirewallPolicyTypeInput

func (GetAviatrixFirewallPolicyTypeArray) ElementType

func (GetAviatrixFirewallPolicyTypeArray) ToGetAviatrixFirewallPolicyTypeArrayOutput

func (i GetAviatrixFirewallPolicyTypeArray) ToGetAviatrixFirewallPolicyTypeArrayOutput() GetAviatrixFirewallPolicyTypeArrayOutput

func (GetAviatrixFirewallPolicyTypeArray) ToGetAviatrixFirewallPolicyTypeArrayOutputWithContext

func (i GetAviatrixFirewallPolicyTypeArray) ToGetAviatrixFirewallPolicyTypeArrayOutputWithContext(ctx context.Context) GetAviatrixFirewallPolicyTypeArrayOutput

type GetAviatrixFirewallPolicyTypeArrayInput

type GetAviatrixFirewallPolicyTypeArrayInput interface {
	pulumi.Input

	ToGetAviatrixFirewallPolicyTypeArrayOutput() GetAviatrixFirewallPolicyTypeArrayOutput
	ToGetAviatrixFirewallPolicyTypeArrayOutputWithContext(context.Context) GetAviatrixFirewallPolicyTypeArrayOutput
}

GetAviatrixFirewallPolicyTypeArrayInput is an input type that accepts GetAviatrixFirewallPolicyTypeArray and GetAviatrixFirewallPolicyTypeArrayOutput values. You can construct a concrete instance of `GetAviatrixFirewallPolicyTypeArrayInput` via:

GetAviatrixFirewallPolicyTypeArray{ GetAviatrixFirewallPolicyTypeArgs{...} }

type GetAviatrixFirewallPolicyTypeArrayOutput

type GetAviatrixFirewallPolicyTypeArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirewallPolicyTypeArrayOutput) ElementType

func (GetAviatrixFirewallPolicyTypeArrayOutput) Index

func (GetAviatrixFirewallPolicyTypeArrayOutput) ToGetAviatrixFirewallPolicyTypeArrayOutput

func (o GetAviatrixFirewallPolicyTypeArrayOutput) ToGetAviatrixFirewallPolicyTypeArrayOutput() GetAviatrixFirewallPolicyTypeArrayOutput

func (GetAviatrixFirewallPolicyTypeArrayOutput) ToGetAviatrixFirewallPolicyTypeArrayOutputWithContext

func (o GetAviatrixFirewallPolicyTypeArrayOutput) ToGetAviatrixFirewallPolicyTypeArrayOutputWithContext(ctx context.Context) GetAviatrixFirewallPolicyTypeArrayOutput

type GetAviatrixFirewallPolicyTypeInput

type GetAviatrixFirewallPolicyTypeInput interface {
	pulumi.Input

	ToGetAviatrixFirewallPolicyTypeOutput() GetAviatrixFirewallPolicyTypeOutput
	ToGetAviatrixFirewallPolicyTypeOutputWithContext(context.Context) GetAviatrixFirewallPolicyTypeOutput
}

GetAviatrixFirewallPolicyTypeInput is an input type that accepts GetAviatrixFirewallPolicyTypeArgs and GetAviatrixFirewallPolicyTypeOutput values. You can construct a concrete instance of `GetAviatrixFirewallPolicyTypeInput` via:

GetAviatrixFirewallPolicyTypeArgs{...}

type GetAviatrixFirewallPolicyTypeOutput

type GetAviatrixFirewallPolicyTypeOutput struct{ *pulumi.OutputState }

func (GetAviatrixFirewallPolicyTypeOutput) Action

func (GetAviatrixFirewallPolicyTypeOutput) Description

func (GetAviatrixFirewallPolicyTypeOutput) DstIp

CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.

func (GetAviatrixFirewallPolicyTypeOutput) ElementType

func (GetAviatrixFirewallPolicyTypeOutput) LogEnabled

Indicates whether logging is enabled or not. * `description`- Policy description.

func (GetAviatrixFirewallPolicyTypeOutput) Port

A single port or a range of port numbers. * `action`- `allow`, `deny` or `force-drop`(allow immediate packet dropping on established sessions).

func (GetAviatrixFirewallPolicyTypeOutput) Protocol

`all`, `tcp`, `udp`, `icmp`, `sctp`, `rdp` or `dccp`.

func (GetAviatrixFirewallPolicyTypeOutput) SrcIp

CIDRs separated by a comma or tag names such 'HR' or 'marketing' etc.

func (GetAviatrixFirewallPolicyTypeOutput) ToGetAviatrixFirewallPolicyTypeOutput

func (o GetAviatrixFirewallPolicyTypeOutput) ToGetAviatrixFirewallPolicyTypeOutput() GetAviatrixFirewallPolicyTypeOutput

func (GetAviatrixFirewallPolicyTypeOutput) ToGetAviatrixFirewallPolicyTypeOutputWithContext

func (o GetAviatrixFirewallPolicyTypeOutput) ToGetAviatrixFirewallPolicyTypeOutputWithContext(ctx context.Context) GetAviatrixFirewallPolicyTypeOutput

type GetAviatrixGatewayImageArgs

type GetAviatrixGatewayImageArgs struct {
	// Cloud type. Type: Integer. Example: 1 (AWS)
	CloudType int `pulumi:"cloudType"`
	// Software version. Type: String. Example: "6.4.2487"
	SoftwareVersion string `pulumi:"softwareVersion"`
}

A collection of arguments for invoking getAviatrixGatewayImage.

type GetAviatrixGatewayImageOutputArgs

type GetAviatrixGatewayImageOutputArgs struct {
	// Cloud type. Type: Integer. Example: 1 (AWS)
	CloudType pulumi.IntInput `pulumi:"cloudType"`
	// Software version. Type: String. Example: "6.4.2487"
	SoftwareVersion pulumi.StringInput `pulumi:"softwareVersion"`
}

A collection of arguments for invoking getAviatrixGatewayImage.

func (GetAviatrixGatewayImageOutputArgs) ElementType

type GetAviatrixGatewayImageResult

type GetAviatrixGatewayImageResult struct {
	CloudType int `pulumi:"cloudType"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Image version that is compatible with the given cloudType and software_version.
	ImageVersion    string `pulumi:"imageVersion"`
	SoftwareVersion string `pulumi:"softwareVersion"`
}

A collection of values returned by getAviatrixGatewayImage.

func GetAviatrixGatewayImage

func GetAviatrixGatewayImage(ctx *pulumi.Context, args *GetAviatrixGatewayImageArgs, opts ...pulumi.InvokeOption) (*GetAviatrixGatewayImageResult, error)

The **aviatrix_gateway_image** data source provides the current image version that pairs with the given software version and cloud type.

This data source is useful for getting the correct imageVersion for a gateway when upgrading the softwareVersion of the gateway.

type GetAviatrixGatewayImageResultOutput

type GetAviatrixGatewayImageResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixGatewayImage.

func (GetAviatrixGatewayImageResultOutput) CloudType

func (GetAviatrixGatewayImageResultOutput) ElementType

func (GetAviatrixGatewayImageResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixGatewayImageResultOutput) ImageVersion

Image version that is compatible with the given cloudType and software_version.

func (GetAviatrixGatewayImageResultOutput) SoftwareVersion

func (GetAviatrixGatewayImageResultOutput) ToGetAviatrixGatewayImageResultOutput

func (o GetAviatrixGatewayImageResultOutput) ToGetAviatrixGatewayImageResultOutput() GetAviatrixGatewayImageResultOutput

func (GetAviatrixGatewayImageResultOutput) ToGetAviatrixGatewayImageResultOutputWithContext

func (o GetAviatrixGatewayImageResultOutput) ToGetAviatrixGatewayImageResultOutputWithContext(ctx context.Context) GetAviatrixGatewayImageResultOutput

type GetAviatrixNetworkDomainsNetworkDomain

type GetAviatrixNetworkDomainsNetworkDomain struct {
	// Access Account name.
	Account string `pulumi:"account"`
	// Type of cloud service provider.
	CloudType string `pulumi:"cloudType"`
	// Egress inspection is enable or not.
	EgressInspection bool `pulumi:"egressInspection"`
	// Egress inspection name.
	EgressInspectionName string `pulumi:"egressInspectionName"`
	// Inspection policy name.
	InspectionPolicy string `pulumi:"inspectionPolicy"`
	// Firewall inspection for traffic within one Security Domain.
	IntraDomainInspection bool `pulumi:"intraDomainInspection"`
	// Intra domain inspection name.
	IntraDomainInspectionName string `pulumi:"intraDomainInspectionName"`
	// Network Domain name.
	Name string `pulumi:"name"`
	// Region of cloud provider.
	Region string `pulumi:"region"`
	// Route table's id.
	RouteTableId string `pulumi:"routeTableId"`
	// AWS TGW name.
	TgwName string `pulumi:"tgwName"`
	// Type of network domain.
	Type string `pulumi:"type"`
}

type GetAviatrixNetworkDomainsNetworkDomainArgs

type GetAviatrixNetworkDomainsNetworkDomainArgs struct {
	// Access Account name.
	Account pulumi.StringInput `pulumi:"account"`
	// Type of cloud service provider.
	CloudType pulumi.StringInput `pulumi:"cloudType"`
	// Egress inspection is enable or not.
	EgressInspection pulumi.BoolInput `pulumi:"egressInspection"`
	// Egress inspection name.
	EgressInspectionName pulumi.StringInput `pulumi:"egressInspectionName"`
	// Inspection policy name.
	InspectionPolicy pulumi.StringInput `pulumi:"inspectionPolicy"`
	// Firewall inspection for traffic within one Security Domain.
	IntraDomainInspection pulumi.BoolInput `pulumi:"intraDomainInspection"`
	// Intra domain inspection name.
	IntraDomainInspectionName pulumi.StringInput `pulumi:"intraDomainInspectionName"`
	// Network Domain name.
	Name pulumi.StringInput `pulumi:"name"`
	// Region of cloud provider.
	Region pulumi.StringInput `pulumi:"region"`
	// Route table's id.
	RouteTableId pulumi.StringInput `pulumi:"routeTableId"`
	// AWS TGW name.
	TgwName pulumi.StringInput `pulumi:"tgwName"`
	// Type of network domain.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetAviatrixNetworkDomainsNetworkDomainArgs) ElementType

func (GetAviatrixNetworkDomainsNetworkDomainArgs) ToGetAviatrixNetworkDomainsNetworkDomainOutput

func (i GetAviatrixNetworkDomainsNetworkDomainArgs) ToGetAviatrixNetworkDomainsNetworkDomainOutput() GetAviatrixNetworkDomainsNetworkDomainOutput

func (GetAviatrixNetworkDomainsNetworkDomainArgs) ToGetAviatrixNetworkDomainsNetworkDomainOutputWithContext

func (i GetAviatrixNetworkDomainsNetworkDomainArgs) ToGetAviatrixNetworkDomainsNetworkDomainOutputWithContext(ctx context.Context) GetAviatrixNetworkDomainsNetworkDomainOutput

type GetAviatrixNetworkDomainsNetworkDomainArray

type GetAviatrixNetworkDomainsNetworkDomainArray []GetAviatrixNetworkDomainsNetworkDomainInput

func (GetAviatrixNetworkDomainsNetworkDomainArray) ElementType

func (GetAviatrixNetworkDomainsNetworkDomainArray) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutput

func (i GetAviatrixNetworkDomainsNetworkDomainArray) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutput() GetAviatrixNetworkDomainsNetworkDomainArrayOutput

func (GetAviatrixNetworkDomainsNetworkDomainArray) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutputWithContext

func (i GetAviatrixNetworkDomainsNetworkDomainArray) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutputWithContext(ctx context.Context) GetAviatrixNetworkDomainsNetworkDomainArrayOutput

type GetAviatrixNetworkDomainsNetworkDomainArrayInput

type GetAviatrixNetworkDomainsNetworkDomainArrayInput interface {
	pulumi.Input

	ToGetAviatrixNetworkDomainsNetworkDomainArrayOutput() GetAviatrixNetworkDomainsNetworkDomainArrayOutput
	ToGetAviatrixNetworkDomainsNetworkDomainArrayOutputWithContext(context.Context) GetAviatrixNetworkDomainsNetworkDomainArrayOutput
}

GetAviatrixNetworkDomainsNetworkDomainArrayInput is an input type that accepts GetAviatrixNetworkDomainsNetworkDomainArray and GetAviatrixNetworkDomainsNetworkDomainArrayOutput values. You can construct a concrete instance of `GetAviatrixNetworkDomainsNetworkDomainArrayInput` via:

GetAviatrixNetworkDomainsNetworkDomainArray{ GetAviatrixNetworkDomainsNetworkDomainArgs{...} }

type GetAviatrixNetworkDomainsNetworkDomainArrayOutput

type GetAviatrixNetworkDomainsNetworkDomainArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixNetworkDomainsNetworkDomainArrayOutput) ElementType

func (GetAviatrixNetworkDomainsNetworkDomainArrayOutput) Index

func (GetAviatrixNetworkDomainsNetworkDomainArrayOutput) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutput

func (o GetAviatrixNetworkDomainsNetworkDomainArrayOutput) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutput() GetAviatrixNetworkDomainsNetworkDomainArrayOutput

func (GetAviatrixNetworkDomainsNetworkDomainArrayOutput) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutputWithContext

func (o GetAviatrixNetworkDomainsNetworkDomainArrayOutput) ToGetAviatrixNetworkDomainsNetworkDomainArrayOutputWithContext(ctx context.Context) GetAviatrixNetworkDomainsNetworkDomainArrayOutput

type GetAviatrixNetworkDomainsNetworkDomainInput

type GetAviatrixNetworkDomainsNetworkDomainInput interface {
	pulumi.Input

	ToGetAviatrixNetworkDomainsNetworkDomainOutput() GetAviatrixNetworkDomainsNetworkDomainOutput
	ToGetAviatrixNetworkDomainsNetworkDomainOutputWithContext(context.Context) GetAviatrixNetworkDomainsNetworkDomainOutput
}

GetAviatrixNetworkDomainsNetworkDomainInput is an input type that accepts GetAviatrixNetworkDomainsNetworkDomainArgs and GetAviatrixNetworkDomainsNetworkDomainOutput values. You can construct a concrete instance of `GetAviatrixNetworkDomainsNetworkDomainInput` via:

GetAviatrixNetworkDomainsNetworkDomainArgs{...}

type GetAviatrixNetworkDomainsNetworkDomainOutput

type GetAviatrixNetworkDomainsNetworkDomainOutput struct{ *pulumi.OutputState }

func (GetAviatrixNetworkDomainsNetworkDomainOutput) Account

Access Account name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) CloudType

Type of cloud service provider.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) EgressInspection

Egress inspection is enable or not.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) EgressInspectionName

Egress inspection name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) ElementType

func (GetAviatrixNetworkDomainsNetworkDomainOutput) InspectionPolicy

Inspection policy name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) IntraDomainInspection

Firewall inspection for traffic within one Security Domain.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) IntraDomainInspectionName

Intra domain inspection name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) Name

Network Domain name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) Region

Region of cloud provider.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) RouteTableId

Route table's id.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) TgwName

AWS TGW name.

func (GetAviatrixNetworkDomainsNetworkDomainOutput) ToGetAviatrixNetworkDomainsNetworkDomainOutput

func (o GetAviatrixNetworkDomainsNetworkDomainOutput) ToGetAviatrixNetworkDomainsNetworkDomainOutput() GetAviatrixNetworkDomainsNetworkDomainOutput

func (GetAviatrixNetworkDomainsNetworkDomainOutput) ToGetAviatrixNetworkDomainsNetworkDomainOutputWithContext

func (o GetAviatrixNetworkDomainsNetworkDomainOutput) ToGetAviatrixNetworkDomainsNetworkDomainOutputWithContext(ctx context.Context) GetAviatrixNetworkDomainsNetworkDomainOutput

func (GetAviatrixNetworkDomainsNetworkDomainOutput) Type

Type of network domain.

type GetAviatrixNetworkDomainsResult

type GetAviatrixNetworkDomainsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The list of all Network Domains
	NetworkDomains []GetAviatrixNetworkDomainsNetworkDomain `pulumi:"networkDomains"`
}

A collection of values returned by getAviatrixNetworkDomains.

func GetAviatrixNetworkDomains

func GetAviatrixNetworkDomains(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetAviatrixNetworkDomainsResult, error)

The **aviatrix_network_domains** data source provides details about all Network Domains created by the Aviatrix Controller. Available as of provider version 2.23+.

## Example Usage

type GetAviatrixSpokeGatewayInspectionSubnetsArgs

type GetAviatrixSpokeGatewayInspectionSubnetsArgs struct {
	// Spoke gateway name.
	GwName string `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixSpokeGatewayInspectionSubnets.

type GetAviatrixSpokeGatewayInspectionSubnetsOutputArgs

type GetAviatrixSpokeGatewayInspectionSubnetsOutputArgs struct {
	// Spoke gateway name.
	GwName pulumi.StringInput `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixSpokeGatewayInspectionSubnets.

func (GetAviatrixSpokeGatewayInspectionSubnetsOutputArgs) ElementType

type GetAviatrixSpokeGatewayInspectionSubnetsResult

type GetAviatrixSpokeGatewayInspectionSubnetsResult struct {
	GwName string `pulumi:"gwName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The list of all subnets available for the subnet inspection feature. This attribute is only supported for Azure.
	SubnetsForInspections []string `pulumi:"subnetsForInspections"`
}

A collection of values returned by getAviatrixSpokeGatewayInspectionSubnets.

func GetAviatrixSpokeGatewayInspectionSubnets

The **aviatrix_spoke_gateway_inspection_subnets** data source provides all subnets available for the subnet inspection feature.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixSpokeGatewayInspectionSubnets(ctx, &GetAviatrixSpokeGatewayInspectionSubnetsArgs{
			GwName: "gatewayname",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAviatrixSpokeGatewayInspectionSubnetsResultOutput

type GetAviatrixSpokeGatewayInspectionSubnetsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixSpokeGatewayInspectionSubnets.

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) ElementType

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) GwName

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) SubnetsForInspections

The list of all subnets available for the subnet inspection feature. This attribute is only supported for Azure.

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) ToGetAviatrixSpokeGatewayInspectionSubnetsResultOutput

func (GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) ToGetAviatrixSpokeGatewayInspectionSubnetsResultOutputWithContext

func (o GetAviatrixSpokeGatewayInspectionSubnetsResultOutput) ToGetAviatrixSpokeGatewayInspectionSubnetsResultOutputWithContext(ctx context.Context) GetAviatrixSpokeGatewayInspectionSubnetsResultOutput

type GetAviatrixTransitGatewayBgpLanInterface

type GetAviatrixTransitGatewayBgpLanInterface struct {
	// Subnet Info.
	Subnet string `pulumi:"subnet"`
	// VPC-ID of GCP cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type GetAviatrixTransitGatewayBgpLanInterfaceArgs

type GetAviatrixTransitGatewayBgpLanInterfaceArgs struct {
	// Subnet Info.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID of GCP cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetAviatrixTransitGatewayBgpLanInterfaceArgs) ElementType

func (GetAviatrixTransitGatewayBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayBgpLanInterfaceOutput

func (i GetAviatrixTransitGatewayBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayBgpLanInterfaceOutput() GetAviatrixTransitGatewayBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayBgpLanInterfaceOutputWithContext

func (i GetAviatrixTransitGatewayBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayBgpLanInterfaceOutput

type GetAviatrixTransitGatewayBgpLanInterfaceArray

type GetAviatrixTransitGatewayBgpLanInterfaceArray []GetAviatrixTransitGatewayBgpLanInterfaceInput

func (GetAviatrixTransitGatewayBgpLanInterfaceArray) ElementType

func (GetAviatrixTransitGatewayBgpLanInterfaceArray) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (i GetAviatrixTransitGatewayBgpLanInterfaceArray) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewayBgpLanInterfaceArray) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext

func (i GetAviatrixTransitGatewayBgpLanInterfaceArray) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayBgpLanInterfaceArrayInput

type GetAviatrixTransitGatewayBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput
	ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(context.Context) GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput
}

GetAviatrixTransitGatewayBgpLanInterfaceArrayInput is an input type that accepts GetAviatrixTransitGatewayBgpLanInterfaceArray and GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewayBgpLanInterfaceArrayInput` via:

GetAviatrixTransitGatewayBgpLanInterfaceArray{ GetAviatrixTransitGatewayBgpLanInterfaceArgs{...} }

type GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) ElementType

func (GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) Index

func (GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (o GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext

func (o GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayBgpLanInterfaceInput

type GetAviatrixTransitGatewayBgpLanInterfaceInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewayBgpLanInterfaceOutput() GetAviatrixTransitGatewayBgpLanInterfaceOutput
	ToGetAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(context.Context) GetAviatrixTransitGatewayBgpLanInterfaceOutput
}

GetAviatrixTransitGatewayBgpLanInterfaceInput is an input type that accepts GetAviatrixTransitGatewayBgpLanInterfaceArgs and GetAviatrixTransitGatewayBgpLanInterfaceOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewayBgpLanInterfaceInput` via:

GetAviatrixTransitGatewayBgpLanInterfaceArgs{...}

type GetAviatrixTransitGatewayBgpLanInterfaceOutput

type GetAviatrixTransitGatewayBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewayBgpLanInterfaceOutput) ElementType

func (GetAviatrixTransitGatewayBgpLanInterfaceOutput) Subnet

Subnet Info.

func (GetAviatrixTransitGatewayBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceOutput

func (o GetAviatrixTransitGatewayBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceOutput() GetAviatrixTransitGatewayBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceOutputWithContext

func (o GetAviatrixTransitGatewayBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayBgpLanInterfaceOutput) VpcId

VPC-ID of GCP cloud provider.

type GetAviatrixTransitGatewayHaBgpLanInterface

type GetAviatrixTransitGatewayHaBgpLanInterface struct {
	// Subnet Info.
	Subnet string `pulumi:"subnet"`
	// VPC-ID of GCP cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type GetAviatrixTransitGatewayHaBgpLanInterfaceArgs

type GetAviatrixTransitGatewayHaBgpLanInterfaceArgs struct {
	// Subnet Info.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID of GCP cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArgs) ElementType

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (i GetAviatrixTransitGatewayHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutput() GetAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext

func (i GetAviatrixTransitGatewayHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceOutput

type GetAviatrixTransitGatewayHaBgpLanInterfaceArray

type GetAviatrixTransitGatewayHaBgpLanInterfaceArray []GetAviatrixTransitGatewayHaBgpLanInterfaceInput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArray) ElementType

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (i GetAviatrixTransitGatewayHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext

func (i GetAviatrixTransitGatewayHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayHaBgpLanInterfaceArrayInput

type GetAviatrixTransitGatewayHaBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput
	ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput
}

GetAviatrixTransitGatewayHaBgpLanInterfaceArrayInput is an input type that accepts GetAviatrixTransitGatewayHaBgpLanInterfaceArray and GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewayHaBgpLanInterfaceArrayInput` via:

GetAviatrixTransitGatewayHaBgpLanInterfaceArray{ GetAviatrixTransitGatewayHaBgpLanInterfaceArgs{...} }

type GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ElementType

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) Index

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext

func (o GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewayHaBgpLanInterfaceInput

type GetAviatrixTransitGatewayHaBgpLanInterfaceInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutput() GetAviatrixTransitGatewayHaBgpLanInterfaceOutput
	ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceOutput
}

GetAviatrixTransitGatewayHaBgpLanInterfaceInput is an input type that accepts GetAviatrixTransitGatewayHaBgpLanInterfaceArgs and GetAviatrixTransitGatewayHaBgpLanInterfaceOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewayHaBgpLanInterfaceInput` via:

GetAviatrixTransitGatewayHaBgpLanInterfaceArgs{...}

type GetAviatrixTransitGatewayHaBgpLanInterfaceOutput

type GetAviatrixTransitGatewayHaBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) ElementType

func (GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) Subnet

Subnet Info.

func (GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (o GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutput() GetAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext

func (o GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewayHaBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewayHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewayHaBgpLanInterfaceOutput) VpcId

VPC-ID of GCP cloud provider.

type GetAviatrixTransitGatewaysGatewayList

type GetAviatrixTransitGatewaysGatewayList struct {
	// Aviatrix account name.
	AccountName string `pulumi:"accountName"`
	// When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.
	AllocateNewEip bool `pulumi:"allocateNewEip"`
	// Availability domain for OCI.
	AvailabilityDomain string `pulumi:"availabilityDomain"`
	// The name of the public IP address and its resource group in Azure to assign to this Transit Gateway.
	AzureEipNameResourceGroup string `pulumi:"azureEipNameResourceGroup"`
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop.
	BgpEcmp bool `pulumi:"bgpEcmp"`
	// BGP Hold Time.
	BgpHoldTime int `pulumi:"bgpHoldTime"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit.
	BgpLanInterfaces []GetAviatrixTransitGatewaysGatewayListBgpLanInterface `pulumi:"bgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP. Available as of provider version R2.21.0+.
	BgpLanIpLists []string `pulumi:"bgpLanIpLists"`
	// BGP route polling time. Unit is in seconds.
	BgpPollingTime string `pulumi:"bgpPollingTime"`
	// Instance ID of the transit gateway.
	CloudInstanceId string `pulumi:"cloudInstanceId"`
	// Type of cloud service provider.
	// * `connectedTransit"` -  Status of Connected Transit of transit gateway.
	CloudType        int  `pulumi:"cloudType"`
	ConnectedTransit bool `pulumi:"connectedTransit"`
	// A list of comma separated CIDRs to be customized for the spoke VPC routes.
	CustomizedSpokeVpcRoutes string `pulumi:"customizedSpokeVpcRoutes"`
	// Enables Active-Standby Mode, available only with HA enabled.
	EnableActiveStandby bool `pulumi:"enableActiveStandby"`
	// Enables Preemptive Mode for Active-Standby, available only with Active-Standby enabled.
	EnableActiveStandbyPreemptive bool `pulumi:"enableActiveStandbyPreemptive"`
	// Pre-allocate a network interface(eth4) for \"BGP over LAN\" functionality. Only valid for cloudType = 4 (GCP) and 8 (Azure). Available as of provider version R2.18+
	EnableBgpOverLan bool `pulumi:"enableBgpOverLan"`
	// Status of Encrypt Gateway EBS Volume of the transit gateway.
	EnableEncryptVolume bool `pulumi:"enableEncryptVolume"`
	// Enable firenet interfaces with AWS Gateway Load Balancer.
	EnableGatewayLoadBalancer bool `pulumi:"enableGatewayLoadBalancer"`
	// Sign of readiness for TGW connection.
	EnableHybridConnection bool `pulumi:"enableHybridConnection"`
	// Enable jumbo frame support for transit gateway.
	EnableJumboFrame bool `pulumi:"enableJumboFrame"`
	// Enable [monitor gateway subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet). Only valid for cloudType = 1 (AWS) or 256 (AWSGov).
	EnableMonitorGatewaySubnets bool `pulumi:"enableMonitorGatewaySubnets"`
	// Status of multi-tier transit mode on transit gateway.
	EnableMultiTierTransit bool `pulumi:"enableMultiTierTransit"`
	// Status of private OOB for the transit gateway.
	EnablePrivateOob bool `pulumi:"enablePrivateOob"`
	// Enable segmentation to allow association of transit gateway to security domains.
	EnableSegmentation bool `pulumi:"enableSegmentation"`
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance bool `pulumi:"enableSpotInstance"`
	// Enable summarize CIDR to TGW.
	EnableTransitSummarizeCidrToTgw bool `pulumi:"enableTransitSummarizeCidrToTgw"`
	// Status of Vpc Dns Server of the transit Gateway.
	EnableVpcDnsServer bool `pulumi:"enableVpcDnsServer"`
	// A list of comma separated CIDRs to be advertised to on-prem as "Excluded CIDR List".
	ExcludedAdvertisedSpokeRoutes string `pulumi:"excludedAdvertisedSpokeRoutes"`
	// Fault domain for OCI.
	FaultDomain string `pulumi:"faultDomain"`
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table.
	FilteredSpokeVpcRoutes string `pulumi:"filteredSpokeVpcRoutes"`
	// Aviatrix transit gateway name.
	GwName string `pulumi:"gwName"`
	// Size of transit gateway instance.
	GwSize string `pulumi:"gwSize"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit.
	HaBgpLanInterfaces []GetAviatrixTransitGatewaysGatewayListHaBgpLanInterface `pulumi:"haBgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP. Available as of provider version R2.21.0+.
	HaBgpLanIpLists []string `pulumi:"haBgpLanIpLists"`
	// The image version of the gateway.
	ImageVersion string `pulumi:"imageVersion"`
	// Status of Insane Mode of the transit gateway.
	InsaneMode bool `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode transit gateway.
	InsaneModeAz string `pulumi:"insaneModeAz"`
	// LAN Private Subnet. Only used for GCP Transit FireNet.
	LanPrivateSubnet string `pulumi:"lanPrivateSubnet"`
	// LAN VPC ID. Only used for GCP Transit FireNet.
	LanVpcId string `pulumi:"lanVpcId"`
	// Set the learned CIDRs approval mode.
	LearnedCidrsApprovalMode string `pulumi:"learnedCidrsApprovalMode"`
	// Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.
	LocalAsNumber string `pulumi:"localAsNumber"`
	// A set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true.
	MonitorExcludeLists []string `pulumi:"monitorExcludeLists"`
	// OOB availability zone.
	OobAvailabilityZone string `pulumi:"oobAvailabilityZone"`
	// OOB management subnet.
	OobManagementSubnet string `pulumi:"oobManagementSubnet"`
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths []string `pulumi:"prependAsPaths"`
	// Private IP address of the transit gateway created.
	PrivateIp string `pulumi:"privateIp"`
	// Public IP address of the Transit Gateway created.
	PublicIp string `pulumi:"publicIp"`
	// Security group used for the transit gateway.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// Status of Single AZ HA of transit gateway.
	SingleAzHa bool `pulumi:"singleAzHa"`
	// Status of Single IP Source Nat mode of the transit gateway.
	SingleIpSnat bool `pulumi:"singleIpSnat"`
	// The software version of the gateway.
	SoftwareVersion string `pulumi:"softwareVersion"`
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice string `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// The IPSec tunnel down detection time for the transit gateway.
	TunnelDetectionTime int `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
	// Region of cloud provider.
	VpcReg string `pulumi:"vpcReg"`
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'.
	Zone string `pulumi:"zone"`
}

type GetAviatrixTransitGatewaysGatewayListArgs

type GetAviatrixTransitGatewaysGatewayListArgs struct {
	// Aviatrix account name.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.
	AllocateNewEip pulumi.BoolInput `pulumi:"allocateNewEip"`
	// Availability domain for OCI.
	AvailabilityDomain pulumi.StringInput `pulumi:"availabilityDomain"`
	// The name of the public IP address and its resource group in Azure to assign to this Transit Gateway.
	AzureEipNameResourceGroup pulumi.StringInput `pulumi:"azureEipNameResourceGroup"`
	// Enable Equal Cost Multi Path (ECMP) routing for the next hop.
	BgpEcmp pulumi.BoolInput `pulumi:"bgpEcmp"`
	// BGP Hold Time.
	BgpHoldTime pulumi.IntInput `pulumi:"bgpHoldTime"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit.
	BgpLanInterfaces GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayInput `pulumi:"bgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP. Available as of provider version R2.21.0+.
	BgpLanIpLists pulumi.StringArrayInput `pulumi:"bgpLanIpLists"`
	// BGP route polling time. Unit is in seconds.
	BgpPollingTime pulumi.StringInput `pulumi:"bgpPollingTime"`
	// Instance ID of the transit gateway.
	CloudInstanceId pulumi.StringInput `pulumi:"cloudInstanceId"`
	// Type of cloud service provider.
	// * `connectedTransit"` -  Status of Connected Transit of transit gateway.
	CloudType        pulumi.IntInput  `pulumi:"cloudType"`
	ConnectedTransit pulumi.BoolInput `pulumi:"connectedTransit"`
	// A list of comma separated CIDRs to be customized for the spoke VPC routes.
	CustomizedSpokeVpcRoutes pulumi.StringInput `pulumi:"customizedSpokeVpcRoutes"`
	// Enables Active-Standby Mode, available only with HA enabled.
	EnableActiveStandby pulumi.BoolInput `pulumi:"enableActiveStandby"`
	// Enables Preemptive Mode for Active-Standby, available only with Active-Standby enabled.
	EnableActiveStandbyPreemptive pulumi.BoolInput `pulumi:"enableActiveStandbyPreemptive"`
	// Pre-allocate a network interface(eth4) for \"BGP over LAN\" functionality. Only valid for cloudType = 4 (GCP) and 8 (Azure). Available as of provider version R2.18+
	EnableBgpOverLan pulumi.BoolInput `pulumi:"enableBgpOverLan"`
	// Status of Encrypt Gateway EBS Volume of the transit gateway.
	EnableEncryptVolume pulumi.BoolInput `pulumi:"enableEncryptVolume"`
	// Enable firenet interfaces with AWS Gateway Load Balancer.
	EnableGatewayLoadBalancer pulumi.BoolInput `pulumi:"enableGatewayLoadBalancer"`
	// Sign of readiness for TGW connection.
	EnableHybridConnection pulumi.BoolInput `pulumi:"enableHybridConnection"`
	// Enable jumbo frame support for transit gateway.
	EnableJumboFrame pulumi.BoolInput `pulumi:"enableJumboFrame"`
	// Enable [monitor gateway subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet). Only valid for cloudType = 1 (AWS) or 256 (AWSGov).
	EnableMonitorGatewaySubnets pulumi.BoolInput `pulumi:"enableMonitorGatewaySubnets"`
	// Status of multi-tier transit mode on transit gateway.
	EnableMultiTierTransit pulumi.BoolInput `pulumi:"enableMultiTierTransit"`
	// Status of private OOB for the transit gateway.
	EnablePrivateOob pulumi.BoolInput `pulumi:"enablePrivateOob"`
	// Enable segmentation to allow association of transit gateway to security domains.
	EnableSegmentation pulumi.BoolInput `pulumi:"enableSegmentation"`
	// Enable spot instance. NOT supported for production deployment.
	EnableSpotInstance pulumi.BoolInput `pulumi:"enableSpotInstance"`
	// Enable summarize CIDR to TGW.
	EnableTransitSummarizeCidrToTgw pulumi.BoolInput `pulumi:"enableTransitSummarizeCidrToTgw"`
	// Status of Vpc Dns Server of the transit Gateway.
	EnableVpcDnsServer pulumi.BoolInput `pulumi:"enableVpcDnsServer"`
	// A list of comma separated CIDRs to be advertised to on-prem as "Excluded CIDR List".
	ExcludedAdvertisedSpokeRoutes pulumi.StringInput `pulumi:"excludedAdvertisedSpokeRoutes"`
	// Fault domain for OCI.
	FaultDomain pulumi.StringInput `pulumi:"faultDomain"`
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table.
	FilteredSpokeVpcRoutes pulumi.StringInput `pulumi:"filteredSpokeVpcRoutes"`
	// Aviatrix transit gateway name.
	GwName pulumi.StringInput `pulumi:"gwName"`
	// Size of transit gateway instance.
	GwSize pulumi.StringInput `pulumi:"gwSize"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit.
	HaBgpLanInterfaces GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayInput `pulumi:"haBgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP. Available as of provider version R2.21.0+.
	HaBgpLanIpLists pulumi.StringArrayInput `pulumi:"haBgpLanIpLists"`
	// The image version of the gateway.
	ImageVersion pulumi.StringInput `pulumi:"imageVersion"`
	// Status of Insane Mode of the transit gateway.
	InsaneMode pulumi.BoolInput `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode transit gateway.
	InsaneModeAz pulumi.StringInput `pulumi:"insaneModeAz"`
	// LAN Private Subnet. Only used for GCP Transit FireNet.
	LanPrivateSubnet pulumi.StringInput `pulumi:"lanPrivateSubnet"`
	// LAN VPC ID. Only used for GCP Transit FireNet.
	LanVpcId pulumi.StringInput `pulumi:"lanVpcId"`
	// Set the learned CIDRs approval mode.
	LearnedCidrsApprovalMode pulumi.StringInput `pulumi:"learnedCidrsApprovalMode"`
	// Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.
	LocalAsNumber pulumi.StringInput `pulumi:"localAsNumber"`
	// A set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true.
	MonitorExcludeLists pulumi.StringArrayInput `pulumi:"monitorExcludeLists"`
	// OOB availability zone.
	OobAvailabilityZone pulumi.StringInput `pulumi:"oobAvailabilityZone"`
	// OOB management subnet.
	OobManagementSubnet pulumi.StringInput `pulumi:"oobManagementSubnet"`
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths pulumi.StringArrayInput `pulumi:"prependAsPaths"`
	// Private IP address of the transit gateway created.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// Public IP address of the Transit Gateway created.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	// Security group used for the transit gateway.
	SecurityGroupId pulumi.StringInput `pulumi:"securityGroupId"`
	// Status of Single AZ HA of transit gateway.
	SingleAzHa pulumi.BoolInput `pulumi:"singleAzHa"`
	// Status of Single IP Source Nat mode of the transit gateway.
	SingleIpSnat pulumi.BoolInput `pulumi:"singleIpSnat"`
	// The software version of the gateway.
	SoftwareVersion pulumi.StringInput `pulumi:"softwareVersion"`
	// Price for spot instance. NOT supported for production deployment.
	SpotPrice pulumi.StringInput `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// The IPSec tunnel down detection time for the transit gateway.
	TunnelDetectionTime pulumi.IntInput `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Region of cloud provider.
	VpcReg pulumi.StringInput `pulumi:"vpcReg"`
	// Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'.
	Zone pulumi.StringInput `pulumi:"zone"`
}

func (GetAviatrixTransitGatewaysGatewayListArgs) ElementType

func (GetAviatrixTransitGatewaysGatewayListArgs) ToGetAviatrixTransitGatewaysGatewayListOutput

func (i GetAviatrixTransitGatewaysGatewayListArgs) ToGetAviatrixTransitGatewaysGatewayListOutput() GetAviatrixTransitGatewaysGatewayListOutput

func (GetAviatrixTransitGatewaysGatewayListArgs) ToGetAviatrixTransitGatewaysGatewayListOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListArgs) ToGetAviatrixTransitGatewaysGatewayListOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListOutput

type GetAviatrixTransitGatewaysGatewayListArray

type GetAviatrixTransitGatewaysGatewayListArray []GetAviatrixTransitGatewaysGatewayListInput

func (GetAviatrixTransitGatewaysGatewayListArray) ElementType

func (GetAviatrixTransitGatewaysGatewayListArray) ToGetAviatrixTransitGatewaysGatewayListArrayOutput

func (i GetAviatrixTransitGatewaysGatewayListArray) ToGetAviatrixTransitGatewaysGatewayListArrayOutput() GetAviatrixTransitGatewaysGatewayListArrayOutput

func (GetAviatrixTransitGatewaysGatewayListArray) ToGetAviatrixTransitGatewaysGatewayListArrayOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListArray) ToGetAviatrixTransitGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListArrayOutput

type GetAviatrixTransitGatewaysGatewayListArrayInput

type GetAviatrixTransitGatewaysGatewayListArrayInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListArrayOutput() GetAviatrixTransitGatewaysGatewayListArrayOutput
	ToGetAviatrixTransitGatewaysGatewayListArrayOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListArrayOutput
}

GetAviatrixTransitGatewaysGatewayListArrayInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListArray and GetAviatrixTransitGatewaysGatewayListArrayOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListArrayInput` via:

GetAviatrixTransitGatewaysGatewayListArray{ GetAviatrixTransitGatewaysGatewayListArgs{...} }

type GetAviatrixTransitGatewaysGatewayListArrayOutput

type GetAviatrixTransitGatewaysGatewayListArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListArrayOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListArrayOutput) Index

func (GetAviatrixTransitGatewaysGatewayListArrayOutput) ToGetAviatrixTransitGatewaysGatewayListArrayOutput

func (o GetAviatrixTransitGatewaysGatewayListArrayOutput) ToGetAviatrixTransitGatewaysGatewayListArrayOutput() GetAviatrixTransitGatewaysGatewayListArrayOutput

func (GetAviatrixTransitGatewaysGatewayListArrayOutput) ToGetAviatrixTransitGatewaysGatewayListArrayOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListArrayOutput) ToGetAviatrixTransitGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListArrayOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterface

type GetAviatrixTransitGatewaysGatewayListBgpLanInterface struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs) ElementType

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray []GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceInput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray) ElementType

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

func (i GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayInput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput
	ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput
}

GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray and GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayInput` via:

GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArray{ GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs{...} }

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput) Index

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceInput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput() GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput
	ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput
}

GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs and GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceInput` via:

GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceArgs{...}

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput

type GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListBgpLanInterfaceOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterface

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterface struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
}

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs struct {
	// A VPC Network address range selected from one of the available network ranges.
	Subnet pulumi.StringInput `pulumi:"subnet"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs) ElementType

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray []GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceInput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray) ElementType

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutputWithContext

func (i GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayInput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput() GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput
	ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput
}

GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray and GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayInput` via:

GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArray{ GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs{...} }

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput) Index

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArrayOutput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceInput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput() GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput
	ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput
}

GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs and GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceInput` via:

GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceArgs{...}

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput

type GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) ToGetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput

func (GetAviatrixTransitGatewaysGatewayListHaBgpLanInterfaceOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

type GetAviatrixTransitGatewaysGatewayListInput

type GetAviatrixTransitGatewaysGatewayListInput interface {
	pulumi.Input

	ToGetAviatrixTransitGatewaysGatewayListOutput() GetAviatrixTransitGatewaysGatewayListOutput
	ToGetAviatrixTransitGatewaysGatewayListOutputWithContext(context.Context) GetAviatrixTransitGatewaysGatewayListOutput
}

GetAviatrixTransitGatewaysGatewayListInput is an input type that accepts GetAviatrixTransitGatewaysGatewayListArgs and GetAviatrixTransitGatewaysGatewayListOutput values. You can construct a concrete instance of `GetAviatrixTransitGatewaysGatewayListInput` via:

GetAviatrixTransitGatewaysGatewayListArgs{...}

type GetAviatrixTransitGatewaysGatewayListOutput

type GetAviatrixTransitGatewaysGatewayListOutput struct{ *pulumi.OutputState }

func (GetAviatrixTransitGatewaysGatewayListOutput) AccountName

Aviatrix account name.

func (GetAviatrixTransitGatewaysGatewayListOutput) AllocateNewEip

When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) AvailabilityDomain

Availability domain for OCI.

func (GetAviatrixTransitGatewaysGatewayListOutput) AzureEipNameResourceGroup

func (o GetAviatrixTransitGatewaysGatewayListOutput) AzureEipNameResourceGroup() pulumi.StringOutput

The name of the public IP address and its resource group in Azure to assign to this Transit Gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) BgpEcmp

Enable Equal Cost Multi Path (ECMP) routing for the next hop.

func (GetAviatrixTransitGatewaysGatewayListOutput) BgpHoldTime

BGP Hold Time.

func (GetAviatrixTransitGatewaysGatewayListOutput) BgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit.

func (GetAviatrixTransitGatewaysGatewayListOutput) BgpLanIpLists

List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP. Available as of provider version R2.21.0+.

func (GetAviatrixTransitGatewaysGatewayListOutput) BgpPollingTime

BGP route polling time. Unit is in seconds.

func (GetAviatrixTransitGatewaysGatewayListOutput) CloudInstanceId

Instance ID of the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) CloudType

Type of cloud service provider. * `connectedTransit"` - Status of Connected Transit of transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) ConnectedTransit

func (GetAviatrixTransitGatewaysGatewayListOutput) CustomizedSpokeVpcRoutes

A list of comma separated CIDRs to be customized for the spoke VPC routes.

func (GetAviatrixTransitGatewaysGatewayListOutput) ElementType

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableActiveStandby

Enables Active-Standby Mode, available only with HA enabled.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableActiveStandbyPreemptive

func (o GetAviatrixTransitGatewaysGatewayListOutput) EnableActiveStandbyPreemptive() pulumi.BoolOutput

Enables Preemptive Mode for Active-Standby, available only with Active-Standby enabled.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableBgpOverLan

Pre-allocate a network interface(eth4) for \"BGP over LAN\" functionality. Only valid for cloudType = 4 (GCP) and 8 (Azure). Available as of provider version R2.18+

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableEncryptVolume

Status of Encrypt Gateway EBS Volume of the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableGatewayLoadBalancer

func (o GetAviatrixTransitGatewaysGatewayListOutput) EnableGatewayLoadBalancer() pulumi.BoolOutput

Enable firenet interfaces with AWS Gateway Load Balancer.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableHybridConnection

Sign of readiness for TGW connection.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableJumboFrame

Enable jumbo frame support for transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableMonitorGatewaySubnets

func (o GetAviatrixTransitGatewaysGatewayListOutput) EnableMonitorGatewaySubnets() pulumi.BoolOutput

Enable [monitor gateway subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet). Only valid for cloudType = 1 (AWS) or 256 (AWSGov).

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableMultiTierTransit

Status of multi-tier transit mode on transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnablePrivateOob

Status of private OOB for the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableSegmentation

Enable segmentation to allow association of transit gateway to security domains.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableSpotInstance

Enable spot instance. NOT supported for production deployment.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableTransitSummarizeCidrToTgw

func (o GetAviatrixTransitGatewaysGatewayListOutput) EnableTransitSummarizeCidrToTgw() pulumi.BoolOutput

Enable summarize CIDR to TGW.

func (GetAviatrixTransitGatewaysGatewayListOutput) EnableVpcDnsServer

Status of Vpc Dns Server of the transit Gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) ExcludedAdvertisedSpokeRoutes

func (o GetAviatrixTransitGatewaysGatewayListOutput) ExcludedAdvertisedSpokeRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be advertised to on-prem as "Excluded CIDR List".

func (GetAviatrixTransitGatewaysGatewayListOutput) FaultDomain

Fault domain for OCI.

func (GetAviatrixTransitGatewaysGatewayListOutput) FilteredSpokeVpcRoutes

A list of comma separated CIDRs to be filtered from the spoke VPC route table.

func (GetAviatrixTransitGatewaysGatewayListOutput) GwName

Aviatrix transit gateway name.

func (GetAviatrixTransitGatewaysGatewayListOutput) GwSize

Size of transit gateway instance.

func (GetAviatrixTransitGatewaysGatewayListOutput) HaBgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit.

func (GetAviatrixTransitGatewaysGatewayListOutput) HaBgpLanIpLists

List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP. Available as of provider version R2.21.0+.

func (GetAviatrixTransitGatewaysGatewayListOutput) ImageVersion

The image version of the gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) InsaneMode

Status of Insane Mode of the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) InsaneModeAz

AZ of subnet being created for Insane Mode transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) LanPrivateSubnet

LAN Private Subnet. Only used for GCP Transit FireNet.

func (GetAviatrixTransitGatewaysGatewayListOutput) LanVpcId

LAN VPC ID. Only used for GCP Transit FireNet.

func (GetAviatrixTransitGatewaysGatewayListOutput) LearnedCidrsApprovalMode

Set the learned CIDRs approval mode.

func (GetAviatrixTransitGatewaysGatewayListOutput) LocalAsNumber

Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations.

func (GetAviatrixTransitGatewaysGatewayListOutput) MonitorExcludeLists

A set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true.

func (GetAviatrixTransitGatewaysGatewayListOutput) OobAvailabilityZone

OOB availability zone.

func (GetAviatrixTransitGatewaysGatewayListOutput) OobManagementSubnet

OOB management subnet.

func (GetAviatrixTransitGatewaysGatewayListOutput) PrependAsPaths

List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.

func (GetAviatrixTransitGatewaysGatewayListOutput) PrivateIp

Private IP address of the transit gateway created.

func (GetAviatrixTransitGatewaysGatewayListOutput) PublicIp

Public IP address of the Transit Gateway created.

func (GetAviatrixTransitGatewaysGatewayListOutput) SecurityGroupId

Security group used for the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) SingleAzHa

Status of Single AZ HA of transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) SingleIpSnat

Status of Single IP Source Nat mode of the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) SoftwareVersion

The software version of the gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) SpotPrice

Price for spot instance. NOT supported for production deployment.

func (GetAviatrixTransitGatewaysGatewayListOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (GetAviatrixTransitGatewaysGatewayListOutput) ToGetAviatrixTransitGatewaysGatewayListOutput

func (o GetAviatrixTransitGatewaysGatewayListOutput) ToGetAviatrixTransitGatewaysGatewayListOutput() GetAviatrixTransitGatewaysGatewayListOutput

func (GetAviatrixTransitGatewaysGatewayListOutput) ToGetAviatrixTransitGatewaysGatewayListOutputWithContext

func (o GetAviatrixTransitGatewaysGatewayListOutput) ToGetAviatrixTransitGatewaysGatewayListOutputWithContext(ctx context.Context) GetAviatrixTransitGatewaysGatewayListOutput

func (GetAviatrixTransitGatewaysGatewayListOutput) TunnelDetectionTime

The IPSec tunnel down detection time for the transit gateway.

func (GetAviatrixTransitGatewaysGatewayListOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

func (GetAviatrixTransitGatewaysGatewayListOutput) VpcReg

Region of cloud provider.

func (GetAviatrixTransitGatewaysGatewayListOutput) Zone

Availability Zone. Only available for cloudType = 8 (Azure). Must be in the form 'az-n', for example, 'az-2'.

type GetAviatrixTransitGatewaysResult

type GetAviatrixTransitGatewaysResult struct {
	// The list of all transit gateways
	GatewayLists []GetAviatrixTransitGatewaysGatewayList `pulumi:"gatewayLists"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getAviatrixTransitGateways.

func GetAviatrixTransitGateways

func GetAviatrixTransitGateways(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetAviatrixTransitGatewaysResult, error)

The **aviatrix_transit_gateways** data source provides details about all transit gateways created by the Aviatrix Controller.

type GetAviatrixVpcPrivateSubnet

type GetAviatrixVpcPrivateSubnet struct {
	// Private subnet CIDR.
	Cidr string `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name string `pulumi:"name"`
	// Private subnet ID.
	SubnetId string `pulumi:"subnetId"`
}

type GetAviatrixVpcPrivateSubnetArgs

type GetAviatrixVpcPrivateSubnetArgs struct {
	// Private subnet CIDR.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name pulumi.StringInput `pulumi:"name"`
	// Private subnet ID.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetAviatrixVpcPrivateSubnetArgs) ElementType

func (GetAviatrixVpcPrivateSubnetArgs) ToGetAviatrixVpcPrivateSubnetOutput

func (i GetAviatrixVpcPrivateSubnetArgs) ToGetAviatrixVpcPrivateSubnetOutput() GetAviatrixVpcPrivateSubnetOutput

func (GetAviatrixVpcPrivateSubnetArgs) ToGetAviatrixVpcPrivateSubnetOutputWithContext

func (i GetAviatrixVpcPrivateSubnetArgs) ToGetAviatrixVpcPrivateSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcPrivateSubnetOutput

type GetAviatrixVpcPrivateSubnetArray

type GetAviatrixVpcPrivateSubnetArray []GetAviatrixVpcPrivateSubnetInput

func (GetAviatrixVpcPrivateSubnetArray) ElementType

func (GetAviatrixVpcPrivateSubnetArray) ToGetAviatrixVpcPrivateSubnetArrayOutput

func (i GetAviatrixVpcPrivateSubnetArray) ToGetAviatrixVpcPrivateSubnetArrayOutput() GetAviatrixVpcPrivateSubnetArrayOutput

func (GetAviatrixVpcPrivateSubnetArray) ToGetAviatrixVpcPrivateSubnetArrayOutputWithContext

func (i GetAviatrixVpcPrivateSubnetArray) ToGetAviatrixVpcPrivateSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcPrivateSubnetArrayOutput

type GetAviatrixVpcPrivateSubnetArrayInput

type GetAviatrixVpcPrivateSubnetArrayInput interface {
	pulumi.Input

	ToGetAviatrixVpcPrivateSubnetArrayOutput() GetAviatrixVpcPrivateSubnetArrayOutput
	ToGetAviatrixVpcPrivateSubnetArrayOutputWithContext(context.Context) GetAviatrixVpcPrivateSubnetArrayOutput
}

GetAviatrixVpcPrivateSubnetArrayInput is an input type that accepts GetAviatrixVpcPrivateSubnetArray and GetAviatrixVpcPrivateSubnetArrayOutput values. You can construct a concrete instance of `GetAviatrixVpcPrivateSubnetArrayInput` via:

GetAviatrixVpcPrivateSubnetArray{ GetAviatrixVpcPrivateSubnetArgs{...} }

type GetAviatrixVpcPrivateSubnetArrayOutput

type GetAviatrixVpcPrivateSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcPrivateSubnetArrayOutput) ElementType

func (GetAviatrixVpcPrivateSubnetArrayOutput) Index

func (GetAviatrixVpcPrivateSubnetArrayOutput) ToGetAviatrixVpcPrivateSubnetArrayOutput

func (o GetAviatrixVpcPrivateSubnetArrayOutput) ToGetAviatrixVpcPrivateSubnetArrayOutput() GetAviatrixVpcPrivateSubnetArrayOutput

func (GetAviatrixVpcPrivateSubnetArrayOutput) ToGetAviatrixVpcPrivateSubnetArrayOutputWithContext

func (o GetAviatrixVpcPrivateSubnetArrayOutput) ToGetAviatrixVpcPrivateSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcPrivateSubnetArrayOutput

type GetAviatrixVpcPrivateSubnetInput

type GetAviatrixVpcPrivateSubnetInput interface {
	pulumi.Input

	ToGetAviatrixVpcPrivateSubnetOutput() GetAviatrixVpcPrivateSubnetOutput
	ToGetAviatrixVpcPrivateSubnetOutputWithContext(context.Context) GetAviatrixVpcPrivateSubnetOutput
}

GetAviatrixVpcPrivateSubnetInput is an input type that accepts GetAviatrixVpcPrivateSubnetArgs and GetAviatrixVpcPrivateSubnetOutput values. You can construct a concrete instance of `GetAviatrixVpcPrivateSubnetInput` via:

GetAviatrixVpcPrivateSubnetArgs{...}

type GetAviatrixVpcPrivateSubnetOutput

type GetAviatrixVpcPrivateSubnetOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcPrivateSubnetOutput) Cidr

Private subnet CIDR.

func (GetAviatrixVpcPrivateSubnetOutput) ElementType

func (GetAviatrixVpcPrivateSubnetOutput) Name

Name of the Aviatrix VPC.

func (GetAviatrixVpcPrivateSubnetOutput) SubnetId

Private subnet ID.

func (GetAviatrixVpcPrivateSubnetOutput) ToGetAviatrixVpcPrivateSubnetOutput

func (o GetAviatrixVpcPrivateSubnetOutput) ToGetAviatrixVpcPrivateSubnetOutput() GetAviatrixVpcPrivateSubnetOutput

func (GetAviatrixVpcPrivateSubnetOutput) ToGetAviatrixVpcPrivateSubnetOutputWithContext

func (o GetAviatrixVpcPrivateSubnetOutput) ToGetAviatrixVpcPrivateSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcPrivateSubnetOutput

type GetAviatrixVpcPublicSubnet

type GetAviatrixVpcPublicSubnet struct {
	// Private subnet CIDR.
	Cidr string `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name string `pulumi:"name"`
	// Private subnet ID.
	SubnetId string `pulumi:"subnetId"`
}

type GetAviatrixVpcPublicSubnetArgs

type GetAviatrixVpcPublicSubnetArgs struct {
	// Private subnet CIDR.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name pulumi.StringInput `pulumi:"name"`
	// Private subnet ID.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetAviatrixVpcPublicSubnetArgs) ElementType

func (GetAviatrixVpcPublicSubnetArgs) ToGetAviatrixVpcPublicSubnetOutput

func (i GetAviatrixVpcPublicSubnetArgs) ToGetAviatrixVpcPublicSubnetOutput() GetAviatrixVpcPublicSubnetOutput

func (GetAviatrixVpcPublicSubnetArgs) ToGetAviatrixVpcPublicSubnetOutputWithContext

func (i GetAviatrixVpcPublicSubnetArgs) ToGetAviatrixVpcPublicSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcPublicSubnetOutput

type GetAviatrixVpcPublicSubnetArray

type GetAviatrixVpcPublicSubnetArray []GetAviatrixVpcPublicSubnetInput

func (GetAviatrixVpcPublicSubnetArray) ElementType

func (GetAviatrixVpcPublicSubnetArray) ToGetAviatrixVpcPublicSubnetArrayOutput

func (i GetAviatrixVpcPublicSubnetArray) ToGetAviatrixVpcPublicSubnetArrayOutput() GetAviatrixVpcPublicSubnetArrayOutput

func (GetAviatrixVpcPublicSubnetArray) ToGetAviatrixVpcPublicSubnetArrayOutputWithContext

func (i GetAviatrixVpcPublicSubnetArray) ToGetAviatrixVpcPublicSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcPublicSubnetArrayOutput

type GetAviatrixVpcPublicSubnetArrayInput

type GetAviatrixVpcPublicSubnetArrayInput interface {
	pulumi.Input

	ToGetAviatrixVpcPublicSubnetArrayOutput() GetAviatrixVpcPublicSubnetArrayOutput
	ToGetAviatrixVpcPublicSubnetArrayOutputWithContext(context.Context) GetAviatrixVpcPublicSubnetArrayOutput
}

GetAviatrixVpcPublicSubnetArrayInput is an input type that accepts GetAviatrixVpcPublicSubnetArray and GetAviatrixVpcPublicSubnetArrayOutput values. You can construct a concrete instance of `GetAviatrixVpcPublicSubnetArrayInput` via:

GetAviatrixVpcPublicSubnetArray{ GetAviatrixVpcPublicSubnetArgs{...} }

type GetAviatrixVpcPublicSubnetArrayOutput

type GetAviatrixVpcPublicSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcPublicSubnetArrayOutput) ElementType

func (GetAviatrixVpcPublicSubnetArrayOutput) Index

func (GetAviatrixVpcPublicSubnetArrayOutput) ToGetAviatrixVpcPublicSubnetArrayOutput

func (o GetAviatrixVpcPublicSubnetArrayOutput) ToGetAviatrixVpcPublicSubnetArrayOutput() GetAviatrixVpcPublicSubnetArrayOutput

func (GetAviatrixVpcPublicSubnetArrayOutput) ToGetAviatrixVpcPublicSubnetArrayOutputWithContext

func (o GetAviatrixVpcPublicSubnetArrayOutput) ToGetAviatrixVpcPublicSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcPublicSubnetArrayOutput

type GetAviatrixVpcPublicSubnetInput

type GetAviatrixVpcPublicSubnetInput interface {
	pulumi.Input

	ToGetAviatrixVpcPublicSubnetOutput() GetAviatrixVpcPublicSubnetOutput
	ToGetAviatrixVpcPublicSubnetOutputWithContext(context.Context) GetAviatrixVpcPublicSubnetOutput
}

GetAviatrixVpcPublicSubnetInput is an input type that accepts GetAviatrixVpcPublicSubnetArgs and GetAviatrixVpcPublicSubnetOutput values. You can construct a concrete instance of `GetAviatrixVpcPublicSubnetInput` via:

GetAviatrixVpcPublicSubnetArgs{...}

type GetAviatrixVpcPublicSubnetOutput

type GetAviatrixVpcPublicSubnetOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcPublicSubnetOutput) Cidr

Private subnet CIDR.

func (GetAviatrixVpcPublicSubnetOutput) ElementType

func (GetAviatrixVpcPublicSubnetOutput) Name

Name of the Aviatrix VPC.

func (GetAviatrixVpcPublicSubnetOutput) SubnetId

Private subnet ID.

func (GetAviatrixVpcPublicSubnetOutput) ToGetAviatrixVpcPublicSubnetOutput

func (o GetAviatrixVpcPublicSubnetOutput) ToGetAviatrixVpcPublicSubnetOutput() GetAviatrixVpcPublicSubnetOutput

func (GetAviatrixVpcPublicSubnetOutput) ToGetAviatrixVpcPublicSubnetOutputWithContext

func (o GetAviatrixVpcPublicSubnetOutput) ToGetAviatrixVpcPublicSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcPublicSubnetOutput

type GetAviatrixVpcSubnet

type GetAviatrixVpcSubnet struct {
	// Private subnet CIDR.
	Cidr string `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name string `pulumi:"name"`
	// Private subnet ID.
	SubnetId string `pulumi:"subnetId"`
}

type GetAviatrixVpcSubnetArgs

type GetAviatrixVpcSubnetArgs struct {
	// Private subnet CIDR.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Name of the Aviatrix VPC.
	Name pulumi.StringInput `pulumi:"name"`
	// Private subnet ID.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (GetAviatrixVpcSubnetArgs) ElementType

func (GetAviatrixVpcSubnetArgs) ElementType() reflect.Type

func (GetAviatrixVpcSubnetArgs) ToGetAviatrixVpcSubnetOutput

func (i GetAviatrixVpcSubnetArgs) ToGetAviatrixVpcSubnetOutput() GetAviatrixVpcSubnetOutput

func (GetAviatrixVpcSubnetArgs) ToGetAviatrixVpcSubnetOutputWithContext

func (i GetAviatrixVpcSubnetArgs) ToGetAviatrixVpcSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcSubnetOutput

type GetAviatrixVpcSubnetArray

type GetAviatrixVpcSubnetArray []GetAviatrixVpcSubnetInput

func (GetAviatrixVpcSubnetArray) ElementType

func (GetAviatrixVpcSubnetArray) ElementType() reflect.Type

func (GetAviatrixVpcSubnetArray) ToGetAviatrixVpcSubnetArrayOutput

func (i GetAviatrixVpcSubnetArray) ToGetAviatrixVpcSubnetArrayOutput() GetAviatrixVpcSubnetArrayOutput

func (GetAviatrixVpcSubnetArray) ToGetAviatrixVpcSubnetArrayOutputWithContext

func (i GetAviatrixVpcSubnetArray) ToGetAviatrixVpcSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcSubnetArrayOutput

type GetAviatrixVpcSubnetArrayInput

type GetAviatrixVpcSubnetArrayInput interface {
	pulumi.Input

	ToGetAviatrixVpcSubnetArrayOutput() GetAviatrixVpcSubnetArrayOutput
	ToGetAviatrixVpcSubnetArrayOutputWithContext(context.Context) GetAviatrixVpcSubnetArrayOutput
}

GetAviatrixVpcSubnetArrayInput is an input type that accepts GetAviatrixVpcSubnetArray and GetAviatrixVpcSubnetArrayOutput values. You can construct a concrete instance of `GetAviatrixVpcSubnetArrayInput` via:

GetAviatrixVpcSubnetArray{ GetAviatrixVpcSubnetArgs{...} }

type GetAviatrixVpcSubnetArrayOutput

type GetAviatrixVpcSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcSubnetArrayOutput) ElementType

func (GetAviatrixVpcSubnetArrayOutput) Index

func (GetAviatrixVpcSubnetArrayOutput) ToGetAviatrixVpcSubnetArrayOutput

func (o GetAviatrixVpcSubnetArrayOutput) ToGetAviatrixVpcSubnetArrayOutput() GetAviatrixVpcSubnetArrayOutput

func (GetAviatrixVpcSubnetArrayOutput) ToGetAviatrixVpcSubnetArrayOutputWithContext

func (o GetAviatrixVpcSubnetArrayOutput) ToGetAviatrixVpcSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcSubnetArrayOutput

type GetAviatrixVpcSubnetInput

type GetAviatrixVpcSubnetInput interface {
	pulumi.Input

	ToGetAviatrixVpcSubnetOutput() GetAviatrixVpcSubnetOutput
	ToGetAviatrixVpcSubnetOutputWithContext(context.Context) GetAviatrixVpcSubnetOutput
}

GetAviatrixVpcSubnetInput is an input type that accepts GetAviatrixVpcSubnetArgs and GetAviatrixVpcSubnetOutput values. You can construct a concrete instance of `GetAviatrixVpcSubnetInput` via:

GetAviatrixVpcSubnetArgs{...}

type GetAviatrixVpcSubnetOutput

type GetAviatrixVpcSubnetOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcSubnetOutput) Cidr

Private subnet CIDR.

func (GetAviatrixVpcSubnetOutput) ElementType

func (GetAviatrixVpcSubnetOutput) ElementType() reflect.Type

func (GetAviatrixVpcSubnetOutput) Name

Name of the Aviatrix VPC.

func (GetAviatrixVpcSubnetOutput) SubnetId

Private subnet ID.

func (GetAviatrixVpcSubnetOutput) ToGetAviatrixVpcSubnetOutput

func (o GetAviatrixVpcSubnetOutput) ToGetAviatrixVpcSubnetOutput() GetAviatrixVpcSubnetOutput

func (GetAviatrixVpcSubnetOutput) ToGetAviatrixVpcSubnetOutputWithContext

func (o GetAviatrixVpcSubnetOutput) ToGetAviatrixVpcSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcSubnetOutput

type GetAviatrixVpcTrackerArgs

type GetAviatrixVpcTrackerArgs struct {
	// Filters VPC list by access account name.
	AccountName *string `pulumi:"accountName"`
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr *string `pulumi:"cidr"`
	// Filters VPC list by cloud provider id. For example, cloudType = 1 will give all AWS VPCs.
	CloudType *int `pulumi:"cloudType"`
	// Filters VPC list by region (AWS/Azure only).
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getAviatrixVpcTracker.

type GetAviatrixVpcTrackerOutputArgs

type GetAviatrixVpcTrackerOutputArgs struct {
	// Filters VPC list by access account name.
	AccountName pulumi.StringPtrInput `pulumi:"accountName"`
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Filters VPC list by cloud provider id. For example, cloudType = 1 will give all AWS VPCs.
	CloudType pulumi.IntPtrInput `pulumi:"cloudType"`
	// Filters VPC list by region (AWS/Azure only).
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getAviatrixVpcTracker.

func (GetAviatrixVpcTrackerOutputArgs) ElementType

type GetAviatrixVpcTrackerResult

type GetAviatrixVpcTrackerResult struct {
	// Aviatrix access account associated with the VPC.
	AccountName *string `pulumi:"accountName"`
	// Subnet CIDR.
	Cidr *string `pulumi:"cidr"`
	// Cloud provider id hosting this VPC.
	CloudType *int `pulumi:"cloudType"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Subnet region.
	Region *string `pulumi:"region"`
	// List of VPCs from the VPC tracker.
	VpcLists []GetAviatrixVpcTrackerVpcList `pulumi:"vpcLists"`
}

A collection of values returned by getAviatrixVpcTracker.

func GetAviatrixVpcTracker

func GetAviatrixVpcTracker(ctx *pulumi.Context, args *GetAviatrixVpcTrackerArgs, opts ...pulumi.InvokeOption) (*GetAviatrixVpcTrackerResult, error)

Use this data source to get the list of VPC's for use in other resources.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.GetAviatrixVpcTracker(ctx, &GetAviatrixVpcTrackerArgs{
			AccountName: pulumi.StringRef("bar"),
			Cidr:        pulumi.StringRef("10.0.0.1/24"),
			CloudType:   pulumi.IntRef(1),
			Region:      pulumi.StringRef("us-west-1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Notes

* Please be aware this data source could take up to 20 minutes to refresh depending on the number of VPCs and cloud accounts.

type GetAviatrixVpcTrackerResultOutput

type GetAviatrixVpcTrackerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixVpcTracker.

func (GetAviatrixVpcTrackerResultOutput) AccountName

Aviatrix access account associated with the VPC.

func (GetAviatrixVpcTrackerResultOutput) Cidr

Subnet CIDR.

func (GetAviatrixVpcTrackerResultOutput) CloudType

Cloud provider id hosting this VPC.

func (GetAviatrixVpcTrackerResultOutput) ElementType

func (GetAviatrixVpcTrackerResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAviatrixVpcTrackerResultOutput) Region

Subnet region.

func (GetAviatrixVpcTrackerResultOutput) ToGetAviatrixVpcTrackerResultOutput

func (o GetAviatrixVpcTrackerResultOutput) ToGetAviatrixVpcTrackerResultOutput() GetAviatrixVpcTrackerResultOutput

func (GetAviatrixVpcTrackerResultOutput) ToGetAviatrixVpcTrackerResultOutputWithContext

func (o GetAviatrixVpcTrackerResultOutput) ToGetAviatrixVpcTrackerResultOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerResultOutput

func (GetAviatrixVpcTrackerResultOutput) VpcLists

List of VPCs from the VPC tracker.

type GetAviatrixVpcTrackerVpcList

type GetAviatrixVpcTrackerVpcList struct {
	// Filters VPC list by access account name.
	AccountName string `pulumi:"accountName"`
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr string `pulumi:"cidr"`
	// Filters VPC list by cloud provider id. For example, cloudType = 1 will give all AWS VPCs.
	CloudType int `pulumi:"cloudType"`
	// Number of running instances in the VPC.
	InstanceCount int `pulumi:"instanceCount"`
	// Subnet name.
	Name string `pulumi:"name"`
	// Filters VPC list by region (AWS/Azure only).
	Region string `pulumi:"region"`
	// List of subnets within this VPC (GCP only).
	Subnets []GetAviatrixVpcTrackerVpcListSubnet `pulumi:"subnets"`
	// VPC id.
	VpcId string `pulumi:"vpcId"`
}

type GetAviatrixVpcTrackerVpcListArgs

type GetAviatrixVpcTrackerVpcListArgs struct {
	// Filters VPC list by access account name.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Filters VPC list by cloud provider id. For example, cloudType = 1 will give all AWS VPCs.
	CloudType pulumi.IntInput `pulumi:"cloudType"`
	// Number of running instances in the VPC.
	InstanceCount pulumi.IntInput `pulumi:"instanceCount"`
	// Subnet name.
	Name pulumi.StringInput `pulumi:"name"`
	// Filters VPC list by region (AWS/Azure only).
	Region pulumi.StringInput `pulumi:"region"`
	// List of subnets within this VPC (GCP only).
	Subnets GetAviatrixVpcTrackerVpcListSubnetArrayInput `pulumi:"subnets"`
	// VPC id.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetAviatrixVpcTrackerVpcListArgs) ElementType

func (GetAviatrixVpcTrackerVpcListArgs) ToGetAviatrixVpcTrackerVpcListOutput

func (i GetAviatrixVpcTrackerVpcListArgs) ToGetAviatrixVpcTrackerVpcListOutput() GetAviatrixVpcTrackerVpcListOutput

func (GetAviatrixVpcTrackerVpcListArgs) ToGetAviatrixVpcTrackerVpcListOutputWithContext

func (i GetAviatrixVpcTrackerVpcListArgs) ToGetAviatrixVpcTrackerVpcListOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListOutput

type GetAviatrixVpcTrackerVpcListArray

type GetAviatrixVpcTrackerVpcListArray []GetAviatrixVpcTrackerVpcListInput

func (GetAviatrixVpcTrackerVpcListArray) ElementType

func (GetAviatrixVpcTrackerVpcListArray) ToGetAviatrixVpcTrackerVpcListArrayOutput

func (i GetAviatrixVpcTrackerVpcListArray) ToGetAviatrixVpcTrackerVpcListArrayOutput() GetAviatrixVpcTrackerVpcListArrayOutput

func (GetAviatrixVpcTrackerVpcListArray) ToGetAviatrixVpcTrackerVpcListArrayOutputWithContext

func (i GetAviatrixVpcTrackerVpcListArray) ToGetAviatrixVpcTrackerVpcListArrayOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListArrayOutput

type GetAviatrixVpcTrackerVpcListArrayInput

type GetAviatrixVpcTrackerVpcListArrayInput interface {
	pulumi.Input

	ToGetAviatrixVpcTrackerVpcListArrayOutput() GetAviatrixVpcTrackerVpcListArrayOutput
	ToGetAviatrixVpcTrackerVpcListArrayOutputWithContext(context.Context) GetAviatrixVpcTrackerVpcListArrayOutput
}

GetAviatrixVpcTrackerVpcListArrayInput is an input type that accepts GetAviatrixVpcTrackerVpcListArray and GetAviatrixVpcTrackerVpcListArrayOutput values. You can construct a concrete instance of `GetAviatrixVpcTrackerVpcListArrayInput` via:

GetAviatrixVpcTrackerVpcListArray{ GetAviatrixVpcTrackerVpcListArgs{...} }

type GetAviatrixVpcTrackerVpcListArrayOutput

type GetAviatrixVpcTrackerVpcListArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcTrackerVpcListArrayOutput) ElementType

func (GetAviatrixVpcTrackerVpcListArrayOutput) Index

func (GetAviatrixVpcTrackerVpcListArrayOutput) ToGetAviatrixVpcTrackerVpcListArrayOutput

func (o GetAviatrixVpcTrackerVpcListArrayOutput) ToGetAviatrixVpcTrackerVpcListArrayOutput() GetAviatrixVpcTrackerVpcListArrayOutput

func (GetAviatrixVpcTrackerVpcListArrayOutput) ToGetAviatrixVpcTrackerVpcListArrayOutputWithContext

func (o GetAviatrixVpcTrackerVpcListArrayOutput) ToGetAviatrixVpcTrackerVpcListArrayOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListArrayOutput

type GetAviatrixVpcTrackerVpcListInput

type GetAviatrixVpcTrackerVpcListInput interface {
	pulumi.Input

	ToGetAviatrixVpcTrackerVpcListOutput() GetAviatrixVpcTrackerVpcListOutput
	ToGetAviatrixVpcTrackerVpcListOutputWithContext(context.Context) GetAviatrixVpcTrackerVpcListOutput
}

GetAviatrixVpcTrackerVpcListInput is an input type that accepts GetAviatrixVpcTrackerVpcListArgs and GetAviatrixVpcTrackerVpcListOutput values. You can construct a concrete instance of `GetAviatrixVpcTrackerVpcListInput` via:

GetAviatrixVpcTrackerVpcListArgs{...}

type GetAviatrixVpcTrackerVpcListOutput

type GetAviatrixVpcTrackerVpcListOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcTrackerVpcListOutput) AccountName

Filters VPC list by access account name.

func (GetAviatrixVpcTrackerVpcListOutput) Cidr

Filters VPC list by CIDR (AWS/Azure only).

func (GetAviatrixVpcTrackerVpcListOutput) CloudType

Filters VPC list by cloud provider id. For example, cloudType = 1 will give all AWS VPCs.

func (GetAviatrixVpcTrackerVpcListOutput) ElementType

func (GetAviatrixVpcTrackerVpcListOutput) InstanceCount

Number of running instances in the VPC.

func (GetAviatrixVpcTrackerVpcListOutput) Name

Subnet name.

func (GetAviatrixVpcTrackerVpcListOutput) Region

Filters VPC list by region (AWS/Azure only).

func (GetAviatrixVpcTrackerVpcListOutput) Subnets

List of subnets within this VPC (GCP only).

func (GetAviatrixVpcTrackerVpcListOutput) ToGetAviatrixVpcTrackerVpcListOutput

func (o GetAviatrixVpcTrackerVpcListOutput) ToGetAviatrixVpcTrackerVpcListOutput() GetAviatrixVpcTrackerVpcListOutput

func (GetAviatrixVpcTrackerVpcListOutput) ToGetAviatrixVpcTrackerVpcListOutputWithContext

func (o GetAviatrixVpcTrackerVpcListOutput) ToGetAviatrixVpcTrackerVpcListOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListOutput

func (GetAviatrixVpcTrackerVpcListOutput) VpcId

VPC id.

type GetAviatrixVpcTrackerVpcListSubnet

type GetAviatrixVpcTrackerVpcListSubnet struct {
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr string `pulumi:"cidr"`
	// Subnet gateway ip.
	GwIp string `pulumi:"gwIp"`
	// Subnet name.
	Name string `pulumi:"name"`
	// Filters VPC list by region (AWS/Azure only).
	Region string `pulumi:"region"`
}

type GetAviatrixVpcTrackerVpcListSubnetArgs

type GetAviatrixVpcTrackerVpcListSubnetArgs struct {
	// Filters VPC list by CIDR (AWS/Azure only).
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Subnet gateway ip.
	GwIp pulumi.StringInput `pulumi:"gwIp"`
	// Subnet name.
	Name pulumi.StringInput `pulumi:"name"`
	// Filters VPC list by region (AWS/Azure only).
	Region pulumi.StringInput `pulumi:"region"`
}

func (GetAviatrixVpcTrackerVpcListSubnetArgs) ElementType

func (GetAviatrixVpcTrackerVpcListSubnetArgs) ToGetAviatrixVpcTrackerVpcListSubnetOutput

func (i GetAviatrixVpcTrackerVpcListSubnetArgs) ToGetAviatrixVpcTrackerVpcListSubnetOutput() GetAviatrixVpcTrackerVpcListSubnetOutput

func (GetAviatrixVpcTrackerVpcListSubnetArgs) ToGetAviatrixVpcTrackerVpcListSubnetOutputWithContext

func (i GetAviatrixVpcTrackerVpcListSubnetArgs) ToGetAviatrixVpcTrackerVpcListSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListSubnetOutput

type GetAviatrixVpcTrackerVpcListSubnetArray

type GetAviatrixVpcTrackerVpcListSubnetArray []GetAviatrixVpcTrackerVpcListSubnetInput

func (GetAviatrixVpcTrackerVpcListSubnetArray) ElementType

func (GetAviatrixVpcTrackerVpcListSubnetArray) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutput

func (i GetAviatrixVpcTrackerVpcListSubnetArray) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutput() GetAviatrixVpcTrackerVpcListSubnetArrayOutput

func (GetAviatrixVpcTrackerVpcListSubnetArray) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutputWithContext

func (i GetAviatrixVpcTrackerVpcListSubnetArray) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListSubnetArrayOutput

type GetAviatrixVpcTrackerVpcListSubnetArrayInput

type GetAviatrixVpcTrackerVpcListSubnetArrayInput interface {
	pulumi.Input

	ToGetAviatrixVpcTrackerVpcListSubnetArrayOutput() GetAviatrixVpcTrackerVpcListSubnetArrayOutput
	ToGetAviatrixVpcTrackerVpcListSubnetArrayOutputWithContext(context.Context) GetAviatrixVpcTrackerVpcListSubnetArrayOutput
}

GetAviatrixVpcTrackerVpcListSubnetArrayInput is an input type that accepts GetAviatrixVpcTrackerVpcListSubnetArray and GetAviatrixVpcTrackerVpcListSubnetArrayOutput values. You can construct a concrete instance of `GetAviatrixVpcTrackerVpcListSubnetArrayInput` via:

GetAviatrixVpcTrackerVpcListSubnetArray{ GetAviatrixVpcTrackerVpcListSubnetArgs{...} }

type GetAviatrixVpcTrackerVpcListSubnetArrayOutput

type GetAviatrixVpcTrackerVpcListSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcTrackerVpcListSubnetArrayOutput) ElementType

func (GetAviatrixVpcTrackerVpcListSubnetArrayOutput) Index

func (GetAviatrixVpcTrackerVpcListSubnetArrayOutput) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutput

func (o GetAviatrixVpcTrackerVpcListSubnetArrayOutput) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutput() GetAviatrixVpcTrackerVpcListSubnetArrayOutput

func (GetAviatrixVpcTrackerVpcListSubnetArrayOutput) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutputWithContext

func (o GetAviatrixVpcTrackerVpcListSubnetArrayOutput) ToGetAviatrixVpcTrackerVpcListSubnetArrayOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListSubnetArrayOutput

type GetAviatrixVpcTrackerVpcListSubnetInput

type GetAviatrixVpcTrackerVpcListSubnetInput interface {
	pulumi.Input

	ToGetAviatrixVpcTrackerVpcListSubnetOutput() GetAviatrixVpcTrackerVpcListSubnetOutput
	ToGetAviatrixVpcTrackerVpcListSubnetOutputWithContext(context.Context) GetAviatrixVpcTrackerVpcListSubnetOutput
}

GetAviatrixVpcTrackerVpcListSubnetInput is an input type that accepts GetAviatrixVpcTrackerVpcListSubnetArgs and GetAviatrixVpcTrackerVpcListSubnetOutput values. You can construct a concrete instance of `GetAviatrixVpcTrackerVpcListSubnetInput` via:

GetAviatrixVpcTrackerVpcListSubnetArgs{...}

type GetAviatrixVpcTrackerVpcListSubnetOutput

type GetAviatrixVpcTrackerVpcListSubnetOutput struct{ *pulumi.OutputState }

func (GetAviatrixVpcTrackerVpcListSubnetOutput) Cidr

Filters VPC list by CIDR (AWS/Azure only).

func (GetAviatrixVpcTrackerVpcListSubnetOutput) ElementType

func (GetAviatrixVpcTrackerVpcListSubnetOutput) GwIp

Subnet gateway ip.

func (GetAviatrixVpcTrackerVpcListSubnetOutput) Name

Subnet name.

func (GetAviatrixVpcTrackerVpcListSubnetOutput) Region

Filters VPC list by region (AWS/Azure only).

func (GetAviatrixVpcTrackerVpcListSubnetOutput) ToGetAviatrixVpcTrackerVpcListSubnetOutput

func (o GetAviatrixVpcTrackerVpcListSubnetOutput) ToGetAviatrixVpcTrackerVpcListSubnetOutput() GetAviatrixVpcTrackerVpcListSubnetOutput

func (GetAviatrixVpcTrackerVpcListSubnetOutput) ToGetAviatrixVpcTrackerVpcListSubnetOutputWithContext

func (o GetAviatrixVpcTrackerVpcListSubnetOutput) ToGetAviatrixVpcTrackerVpcListSubnetOutputWithContext(ctx context.Context) GetAviatrixVpcTrackerVpcListSubnetOutput

type LookupAviatrixAccountArgs

type LookupAviatrixAccountArgs struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccountName string `pulumi:"accountName"`
}

A collection of arguments for invoking getAviatrixAccount.

type LookupAviatrixAccountOutputArgs

type LookupAviatrixAccountOutputArgs struct {
	// Account name. This can be used for logging in to CloudN console or UserConnect controller.
	AccountName pulumi.StringInput `pulumi:"accountName"`
}

A collection of arguments for invoking getAviatrixAccount.

func (LookupAviatrixAccountOutputArgs) ElementType

type LookupAviatrixAccountResult

type LookupAviatrixAccountResult struct {
	AccountName string `pulumi:"accountName"`
	// Alibaba Cloud Account ID.
	AlicloudAccountId string `pulumi:"alicloudAccountId"`
	// Azure ARM Subscription ID.
	ArmSubscriptionId string `pulumi:"armSubscriptionId"`
	// AWS Account number.
	AwsAccountNumber string `pulumi:"awsAccountNumber"`
	// AWS Top Secret Region or Secret Region Custom Certificate Authority file name on the controller. Available as of provider R2.19.5+.
	AwsCaCertPath string `pulumi:"awsCaCertPath"`
	// A separate AWS App role ARN to assign to gateways created by the controller. Available as of provider version R2.19+.
	AwsGatewayRoleApp string `pulumi:"awsGatewayRoleApp"`
	// A separate AWS EC2 role ARN to assign to gateways created by the controller. Available as of provider version R2.19+.
	AwsGatewayRoleEc2 string `pulumi:"awsGatewayRoleEc2"`
	// AWS App role ARN.
	AwsRoleArn string `pulumi:"awsRoleArn"`
	// AWS EC2 role ARN.
	AwsRoleEc2 string `pulumi:"awsRoleEc2"`
	// AWSChina Account number. Available as of provider version R2.19+.
	AwschinaAccountNumber string `pulumi:"awschinaAccountNumber"`
	// If enabled, `awschinaRoleApp` and `awschinaRoleEc2` will be set. Available as of provider version R2.19+.
	AwschinaIam bool `pulumi:"awschinaIam"`
	// AWSChina App role ARN. Available as of provider version R2.19+.
	AwschinaRoleApp string `pulumi:"awschinaRoleApp"`
	// AWSChina EC2 role ARN. Available as of provider version R2.19+.
	AwschinaRoleEc2 string `pulumi:"awschinaRoleEc2"`
	// AWSGov Account number.
	AwsgovAccountNumber string `pulumi:"awsgovAccountNumber"`
	// If enabled, `awsgovRoleApp` and `awschinaRoleEc2` will be set. Available as of provider version R2.19+.
	AwsgovIam bool `pulumi:"awsgovIam"`
	// AWSGov App role ARN. Available as of provider version R2.19+.
	AwsgovRoleApp string `pulumi:"awsgovRoleApp"`
	// AWSGov EC2 role ARN. Available as of provider version R2.19+.
	AwsgovRoleEc2 string `pulumi:"awsgovRoleEc2"`
	// AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssAccountNumber string `pulumi:"awssAccountNumber"`
	// AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAccountName string `pulumi:"awssCapAccountName"`
	// AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapAgency string `pulumi:"awssCapAgency"`
	// AWS Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertKeyPath string `pulumi:"awssCapCertKeyPath"`
	// AWS Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwssCapCertPath string `pulumi:"awssCapCertPath"`
	// AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapRoleName string `pulumi:"awssCapRoleName"`
	// AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.
	AwssCapUrl string `pulumi:"awssCapUrl"`
	// AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsAccountNumber string `pulumi:"awstsAccountNumber"`
	// AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapAgency string `pulumi:"awstsCapAgency"`
	// AWS Top Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.
	AwstsCapCertKeyPath string `pulumi:"awstsCapCertKeyPath"`
	AwstsCapCertPath    string `pulumi:"awstsCapCertPath"`
	// AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapMission string `pulumi:"awstsCapMission"`
	// AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	// `awstsCapCertPath` - AWS Top Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.
	AwstsCapRoleName string `pulumi:"awstsCapRoleName"`
	// AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.
	AwstsCapUrl string `pulumi:"awstsCapUrl"`
	// AzureChina ARM Subscription ID. Available as of provider version R2.19+.
	AzurechinaSubscriptionId string `pulumi:"azurechinaSubscriptionId"`
	// AzureGov ARM Subscription ID.
	AzuregovSubscriptionId string `pulumi:"azuregovSubscriptionId"`
	// Type of cloud service provider.
	CloudType int `pulumi:"cloudType"`
	// GCloud Project ID.
	GcloudProjectId string `pulumi:"gcloudProjectId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getAviatrixAccount.

func LookupAviatrixAccount

func LookupAviatrixAccount(ctx *pulumi.Context, args *LookupAviatrixAccountArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixAccountResult, error)

The **aviatrix_account** data source provides details about a specific cloud account created by the Aviatrix Controller.

This data source can prove useful when a module accepts an account's detail as an input variable.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixAccount(ctx, &GetAviatrixAccountArgs{
			AccountName: "username",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixAccountResultOutput

type LookupAviatrixAccountResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixAccount.

func (LookupAviatrixAccountResultOutput) AccountName

func (LookupAviatrixAccountResultOutput) AlicloudAccountId

Alibaba Cloud Account ID.

func (LookupAviatrixAccountResultOutput) ArmSubscriptionId

Azure ARM Subscription ID.

func (LookupAviatrixAccountResultOutput) AwsAccountNumber

AWS Account number.

func (LookupAviatrixAccountResultOutput) AwsCaCertPath

AWS Top Secret Region or Secret Region Custom Certificate Authority file name on the controller. Available as of provider R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwsGatewayRoleApp

A separate AWS App role ARN to assign to gateways created by the controller. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwsGatewayRoleEc2

A separate AWS EC2 role ARN to assign to gateways created by the controller. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwsRoleArn

AWS App role ARN.

func (LookupAviatrixAccountResultOutput) AwsRoleEc2

AWS EC2 role ARN.

func (LookupAviatrixAccountResultOutput) AwschinaAccountNumber

func (o LookupAviatrixAccountResultOutput) AwschinaAccountNumber() pulumi.StringOutput

AWSChina Account number. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwschinaIam

If enabled, `awschinaRoleApp` and `awschinaRoleEc2` will be set. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwschinaRoleApp

AWSChina App role ARN. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwschinaRoleEc2

AWSChina EC2 role ARN. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwsgovAccountNumber

func (o LookupAviatrixAccountResultOutput) AwsgovAccountNumber() pulumi.StringOutput

AWSGov Account number.

func (LookupAviatrixAccountResultOutput) AwsgovIam

If enabled, `awsgovRoleApp` and `awschinaRoleEc2` will be set. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwsgovRoleApp

AWSGov App role ARN. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwsgovRoleEc2

AWSGov EC2 role ARN. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AwssAccountNumber

AWS Secret Region Account Number. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapAccountName

func (o LookupAviatrixAccountResultOutput) AwssCapAccountName() pulumi.StringOutput

AWS Secret Region Account Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapAgency

AWS Secret Region CAP Agency. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapCertKeyPath

func (o LookupAviatrixAccountResultOutput) AwssCapCertKeyPath() pulumi.StringOutput

AWS Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapCertPath

AWS Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapRoleName

AWS Secret Region Role Name. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwssCapUrl

AWS Secret Region CAP Url. Required when creating an account in AWS Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsAccountNumber

func (o LookupAviatrixAccountResultOutput) AwstsAccountNumber() pulumi.StringOutput

AWS Top Secret Region Account Number. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsCapAgency

AWS Top Secret Region CAP Agency. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsCapCertKeyPath

func (o LookupAviatrixAccountResultOutput) AwstsCapCertKeyPath() pulumi.StringOutput

AWS Top Secret Region CAP Certificate Key file name on the controller. Available as of provider R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsCapCertPath

func (LookupAviatrixAccountResultOutput) AwstsCapMission

AWS Top Secret Region Mission. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsCapRoleName

AWS Top Secret Region Role Name. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+. `awstsCapCertPath` - AWS Top Secret Region CAP Certificate file name on the controller. Available as of provider R2.19.5+.

func (LookupAviatrixAccountResultOutput) AwstsCapUrl

AWS Top Secret Region CAP Url. Required when creating an account in AWS Top Secret Region. Available as of provider version R2.19.5+.

func (LookupAviatrixAccountResultOutput) AzurechinaSubscriptionId

func (o LookupAviatrixAccountResultOutput) AzurechinaSubscriptionId() pulumi.StringOutput

AzureChina ARM Subscription ID. Available as of provider version R2.19+.

func (LookupAviatrixAccountResultOutput) AzuregovSubscriptionId

func (o LookupAviatrixAccountResultOutput) AzuregovSubscriptionId() pulumi.StringOutput

AzureGov ARM Subscription ID.

func (LookupAviatrixAccountResultOutput) CloudType

Type of cloud service provider.

func (LookupAviatrixAccountResultOutput) ElementType

func (LookupAviatrixAccountResultOutput) GcloudProjectId

GCloud Project ID.

func (LookupAviatrixAccountResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixAccountResultOutput) ToLookupAviatrixAccountResultOutput

func (o LookupAviatrixAccountResultOutput) ToLookupAviatrixAccountResultOutput() LookupAviatrixAccountResultOutput

func (LookupAviatrixAccountResultOutput) ToLookupAviatrixAccountResultOutputWithContext

func (o LookupAviatrixAccountResultOutput) ToLookupAviatrixAccountResultOutputWithContext(ctx context.Context) LookupAviatrixAccountResultOutput

type LookupAviatrixFirenetArgs

type LookupAviatrixFirenetArgs struct {
	// List of firewall instances associated with fireNet.
	FirewallInstanceAssociations []GetAviatrixFirenetFirewallInstanceAssociation `pulumi:"firewallInstanceAssociations"`
	// ID of the Security VPC.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenet.

type LookupAviatrixFirenetOutputArgs

type LookupAviatrixFirenetOutputArgs struct {
	// List of firewall instances associated with fireNet.
	FirewallInstanceAssociations GetAviatrixFirenetFirewallInstanceAssociationArrayInput `pulumi:"firewallInstanceAssociations"`
	// ID of the Security VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getAviatrixFirenet.

func (LookupAviatrixFirenetOutputArgs) ElementType

type LookupAviatrixFirenetResult

type LookupAviatrixFirenetResult struct {
	// Enable/Disable egress through firewall.
	EgressEnabled bool `pulumi:"egressEnabled"`
	// List of egress static CIDRs.
	EgressStaticCidrs []string `pulumi:"egressStaticCidrs"`
	// List of firewall instances associated with fireNet.
	FirewallInstanceAssociations []GetAviatrixFirenetFirewallInstanceAssociation `pulumi:"firewallInstanceAssociations"`
	// (Optional) Hashing algorithm to load balance traffic across the firewall.
	HashingAlgorithm string `pulumi:"hashingAlgorithm"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Enable/Disable traffic inspection.
	InspectionEnabled bool `pulumi:"inspectionEnabled"`
	// (Optional) Enable Keep Alive via Firewall LAN Interface.
	KeepAliveViaLanInterfaceEnabled bool `pulumi:"keepAliveViaLanInterfaceEnabled"`
	// Enable TGW segmentation for egress.
	TgwSegmentationForEgressEnabled bool `pulumi:"tgwSegmentationForEgressEnabled"`
	// ID of the Security VPC.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getAviatrixFirenet.

func LookupAviatrixFirenet

func LookupAviatrixFirenet(ctx *pulumi.Context, args *LookupAviatrixFirenetArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixFirenetResult, error)

The **aviatrix_firenet** data source provides details about a specific FireNet created by the Aviatrix Controller.

This data source can prove useful when a module accepts a FireNet's detail as an input variable.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixFirenet(ctx, &GetAviatrixFirenetArgs{
			VpcId: "vpc-abcdef",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixFirenetResultOutput

type LookupAviatrixFirenetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixFirenet.

func (LookupAviatrixFirenetResultOutput) EgressEnabled

Enable/Disable egress through firewall.

func (LookupAviatrixFirenetResultOutput) EgressStaticCidrs

List of egress static CIDRs.

func (LookupAviatrixFirenetResultOutput) ElementType

func (LookupAviatrixFirenetResultOutput) FirewallInstanceAssociations

List of firewall instances associated with fireNet.

func (LookupAviatrixFirenetResultOutput) HashingAlgorithm

(Optional) Hashing algorithm to load balance traffic across the firewall.

func (LookupAviatrixFirenetResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixFirenetResultOutput) InspectionEnabled

func (o LookupAviatrixFirenetResultOutput) InspectionEnabled() pulumi.BoolOutput

Enable/Disable traffic inspection.

func (LookupAviatrixFirenetResultOutput) KeepAliveViaLanInterfaceEnabled

func (o LookupAviatrixFirenetResultOutput) KeepAliveViaLanInterfaceEnabled() pulumi.BoolOutput

(Optional) Enable Keep Alive via Firewall LAN Interface.

func (LookupAviatrixFirenetResultOutput) TgwSegmentationForEgressEnabled

func (o LookupAviatrixFirenetResultOutput) TgwSegmentationForEgressEnabled() pulumi.BoolOutput

Enable TGW segmentation for egress.

func (LookupAviatrixFirenetResultOutput) ToLookupAviatrixFirenetResultOutput

func (o LookupAviatrixFirenetResultOutput) ToLookupAviatrixFirenetResultOutput() LookupAviatrixFirenetResultOutput

func (LookupAviatrixFirenetResultOutput) ToLookupAviatrixFirenetResultOutputWithContext

func (o LookupAviatrixFirenetResultOutput) ToLookupAviatrixFirenetResultOutputWithContext(ctx context.Context) LookupAviatrixFirenetResultOutput

func (LookupAviatrixFirenetResultOutput) VpcId

ID of the Security VPC.

type LookupAviatrixFirewallArgs

type LookupAviatrixFirewallArgs struct {
	// Name of the gateway associated with the firewall.
	GwName string `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixFirewall.

type LookupAviatrixFirewallOutputArgs

type LookupAviatrixFirewallOutputArgs struct {
	// Name of the gateway associated with the firewall.
	GwName pulumi.StringInput `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixFirewall.

func (LookupAviatrixFirewallOutputArgs) ElementType

type LookupAviatrixFirewallResult

type LookupAviatrixFirewallResult struct {
	// Indicates whether logging is enabled or not.
	BaseLogEnabled bool `pulumi:"baseLogEnabled"`
	// The firewall's base policy.
	BasePolicy string `pulumi:"basePolicy"`
	GwName     string `pulumi:"gwName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of policies associated with the firewall.
	Policies []GetAviatrixFirewallPolicyType `pulumi:"policies"`
}

A collection of values returned by getAviatrixFirewall.

func LookupAviatrixFirewall

func LookupAviatrixFirewall(ctx *pulumi.Context, args *LookupAviatrixFirewallArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixFirewallResult, error)

Use this data source to get the Aviatrix stateful firewall for use in other resources.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixFirewall(ctx, &GetAviatrixFirewallArgs{
			GwName: "gw-abcd",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixFirewallResultOutput

type LookupAviatrixFirewallResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixFirewall.

func (LookupAviatrixFirewallResultOutput) BaseLogEnabled

Indicates whether logging is enabled or not.

func (LookupAviatrixFirewallResultOutput) BasePolicy

The firewall's base policy.

func (LookupAviatrixFirewallResultOutput) ElementType

func (LookupAviatrixFirewallResultOutput) GwName

func (LookupAviatrixFirewallResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixFirewallResultOutput) Policies

List of policies associated with the firewall.

func (LookupAviatrixFirewallResultOutput) ToLookupAviatrixFirewallResultOutput

func (o LookupAviatrixFirewallResultOutput) ToLookupAviatrixFirewallResultOutput() LookupAviatrixFirewallResultOutput

func (LookupAviatrixFirewallResultOutput) ToLookupAviatrixFirewallResultOutputWithContext

func (o LookupAviatrixFirewallResultOutput) ToLookupAviatrixFirewallResultOutputWithContext(ctx context.Context) LookupAviatrixFirewallResultOutput

type LookupAviatrixGatewayArgs

type LookupAviatrixGatewayArgs struct {
	// Gateway name.
	GwName string `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixGateway.

type LookupAviatrixGatewayOutputArgs

type LookupAviatrixGatewayOutputArgs struct {
	// Gateway name.
	GwName pulumi.StringInput `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixGateway.

func (LookupAviatrixGatewayOutputArgs) ElementType

type LookupAviatrixGatewayResult

type LookupAviatrixGatewayResult struct {
	// Aviatrix account name.
	AccountName string `pulumi:"accountName"`
	// A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.
	AdditionalCidrs string `pulumi:"additionalCidrs"`
	// A list of CIDR ranges separated by comma to configure when 'designated_gateway' feature is enabled.
	AdditionalCidrsDesignatedGateway string `pulumi:"additionalCidrsDesignatedGateway"`
	// When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.
	AllocateNewEip bool `pulumi:"allocateNewEip"`
	// Availability domain for OCI.
	AvailabilityDomain        string `pulumi:"availabilityDomain"`
	AzureEipNameResourceGroup string `pulumi:"azureEipNameResourceGroup"`
	// Instance ID of the gateway.
	CloudInstanceId string `pulumi:"cloudInstanceId"`
	// Type of cloud service provider.
	CloudType int `pulumi:"cloudType"`
	// API hostname for DUO auth mode.
	DuoApiHostname string `pulumi:"duoApiHostname"`
	// Integration key for DUO auth mode.
	DuoIntegrationKey string `pulumi:"duoIntegrationKey"`
	// Push mode for DUO auth.
	DuoPushMode string `pulumi:"duoPushMode"`
	// ELB DNS Name.
	ElbDnsName string `pulumi:"elbDnsName"`
	// Name of the ELB created.
	ElbName string `pulumi:"elbName"`
	// Status of Designated Gateway feature for Gateway.
	EnableDesignatedGateway bool `pulumi:"enableDesignatedGateway"`
	// Status of ELB for the gateway.
	EnableElb bool `pulumi:"enableElb"`
	// Enable encrypt gateway EBS volume. Only supported for AWS provider.
	EnableEncryptVolume bool `pulumi:"enableEncryptVolume"`
	EnableJumboFrame    bool `pulumi:"enableJumboFrame"`
	// Status LDAP or not.
	EnableLdap                  bool `pulumi:"enableLdap"`
	EnableMonitorGatewaySubnets bool `pulumi:"enableMonitorGatewaySubnets"`
	EnablePublicSubnetFiltering bool `pulumi:"enablePublicSubnetFiltering"`
	EnableSpotInstance          bool `pulumi:"enableSpotInstance"`
	// Status of VPC Dns Server for Gateway.
	EnableVpcDnsServer bool `pulumi:"enableVpcDnsServer"`
	// Status of VPN NAT.
	EnableVpnNat bool `pulumi:"enableVpnNat"`
	// Fault domain for OCI.
	FaultDomain      string `pulumi:"faultDomain"`
	FqdnLanCidr      string `pulumi:"fqdnLanCidr"`
	FqdnLanInterface string `pulumi:"fqdnLanInterface"`
	FqdnLanVpcId     string `pulumi:"fqdnLanVpcId"`
	// Aviatrix gateway name.
	GwName string `pulumi:"gwName"`
	// Size of gateway Instance.
	GwSize string `pulumi:"gwSize"`
	// The provider-assigned unique ID for this managed resource.
	Id          string `pulumi:"id"`
	IdleTimeout int    `pulumi:"idleTimeout"`
	// The image version of the gateway.
	ImageVersion string `pulumi:"imageVersion"`
	// Status of Insane Mode for Gateway.
	InsaneMode bool `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode gateway.
	InsaneModeAz string `pulumi:"insaneModeAz"`
	// LDAP base DN.
	LdapBaseDn string `pulumi:"ldapBaseDn"`
	// LDAP bind DN.
	LdapBindDn string `pulumi:"ldapBindDn"`
	// LDAP server address.
	LdapServer string `pulumi:"ldapServer"`
	// LDAP user attribute.
	LdapUsernameAttribute string `pulumi:"ldapUsernameAttribute"`
	// Maximum connection of VPN access.
	MaxVpnConn          string   `pulumi:"maxVpnConn"`
	MonitorExcludeLists []string `pulumi:"monitorExcludeLists"`
	// A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.
	NameServers string `pulumi:"nameServers"`
	// URL for Okta auth mode.
	OktaUrl string `pulumi:"oktaUrl"`
	// Username suffix for Okta auth mode.
	OktaUsernameSuffix string `pulumi:"oktaUsernameSuffix"`
	// Two step authentication mode.
	OtpMode string `pulumi:"otpMode"`
	// HA gateway availability domain for OCI.
	PeeringHaAvailabilityDomain        string `pulumi:"peeringHaAvailabilityDomain"`
	PeeringHaAzureEipNameResourceGroup string `pulumi:"peeringHaAzureEipNameResourceGroup"`
	// Instance ID of the peering HA gateway.
	PeeringHaCloudInstanceId string `pulumi:"peeringHaCloudInstanceId"`
	// HA gateway fault domain for OCI.
	PeeringHaFaultDomain string `pulumi:"peeringHaFaultDomain"`
	// Aviatrix gateway unique name of HA gateway.
	PeeringHaGwName string `pulumi:"peeringHaGwName"`
	// Peering HA Gateway Size.
	PeeringHaGwSize string `pulumi:"peeringHaGwSize"`
	// The image version of the HA gateway.
	PeeringHaImageVersion string `pulumi:"peeringHaImageVersion"`
	// AZ of subnet being created for Insane Mode Peering HA Gateway. Required if insaneMode is set.
	PeeringHaInsaneModeAz string `pulumi:"peeringHaInsaneModeAz"`
	// Private IP address of HA gateway.
	PeeringHaPrivateIp string `pulumi:"peeringHaPrivateIp"`
	// Public IP address that you want assigned to the HA peering instance.
	PeeringHaPublicIp        string `pulumi:"peeringHaPublicIp"`
	PeeringHaSecurityGroupId string `pulumi:"peeringHaSecurityGroupId"`
	// The software version of the HA gateway.
	PeeringHaSoftwareVersion string `pulumi:"peeringHaSoftwareVersion"`
	// Public Subnet Information while creating Peering HA Gateway, only subnet is accepted. Required to create peering ha gateway if cloudType = 1 or 8 (AWS or Azure).
	PeeringHaSubnet string `pulumi:"peeringHaSubnet"`
	// Zone information for creating Peering HA Gateway. Required to create peering ha gateway if cloudType = 4 (GCP).
	PeeringHaZone string `pulumi:"peeringHaZone"`
	// Private IP address of the Gateway created.
	PrivateIp string `pulumi:"privateIp"`
	// NS server used by the gateway.
	PublicDnsServer string `pulumi:"publicDnsServer"`
	// Public IP address of the Gateway created.
	PublicIp                               string   `pulumi:"publicIp"`
	PublicSubnetFilteringGuardDutyEnforced bool     `pulumi:"publicSubnetFilteringGuardDutyEnforced"`
	PublicSubnetFilteringHaRouteTables     []string `pulumi:"publicSubnetFilteringHaRouteTables"`
	PublicSubnetFilteringRouteTables       []string `pulumi:"publicSubnetFilteringRouteTables"`
	RenegotiationInterval                  int      `pulumi:"renegotiationInterval"`
	// Status of SAML.
	SamlEnabled bool `pulumi:"samlEnabled"`
	// A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.
	SearchDomains string `pulumi:"searchDomains"`
	// Security group used for the gateway.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// Status of Single AZ HA.
	SingleAzHa bool `pulumi:"singleAzHa"`
	// Single IP Source NAT status for the container.
	SingleIpSnat bool `pulumi:"singleIpSnat"`
	// The software version of the gateway.
	SoftwareVersion string `pulumi:"softwareVersion"`
	// Status of split tunnel mode.
	SplitTunnel bool   `pulumi:"splitTunnel"`
	SpotPrice   string `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// Instance tag of cloud provider.
	TagLists            []string          `pulumi:"tagLists"`
	Tags                map[string]string `pulumi:"tags"`
	TunnelDetectionTime int               `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
	// Region of cloud provider.
	VpcReg string `pulumi:"vpcReg"`
	// Status of user access through VPN to the container.
	VpnAccess bool `pulumi:"vpnAccess"`
	// VPN CIDR block for the container.
	VpnCidr string `pulumi:"vpnCidr"`
	// ELB protocol for VPN gateway with ELB enabled.
	VpnProtocol string `pulumi:"vpnProtocol"`
	Zone        string `pulumi:"zone"`
}

A collection of values returned by getAviatrixGateway.

func LookupAviatrixGateway

func LookupAviatrixGateway(ctx *pulumi.Context, args *LookupAviatrixGatewayArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixGatewayResult, error)

The **aviatrix_gateway** data source provides details about a specific gateway created by the Aviatrix Controller.

This data source can prove useful when a module accepts a gateway's detail as an input variable. For example, requiring the gateway's name configuring a site2cloud connection.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixGateway(ctx, &GetAviatrixGatewayArgs{
			GwName: "gatewayname",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixGatewayResultOutput

type LookupAviatrixGatewayResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixGateway.

func (LookupAviatrixGatewayResultOutput) AccountName

Aviatrix account name.

func (LookupAviatrixGatewayResultOutput) AdditionalCidrs

A list of destination CIDR ranges that will also go through the VPN tunnel when Split Tunnel Mode is enabled.

func (LookupAviatrixGatewayResultOutput) AdditionalCidrsDesignatedGateway

func (o LookupAviatrixGatewayResultOutput) AdditionalCidrsDesignatedGateway() pulumi.StringOutput

A list of CIDR ranges separated by comma to configure when 'designated_gateway' feature is enabled.

func (LookupAviatrixGatewayResultOutput) AllocateNewEip

When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.

func (LookupAviatrixGatewayResultOutput) AvailabilityDomain

func (o LookupAviatrixGatewayResultOutput) AvailabilityDomain() pulumi.StringOutput

Availability domain for OCI.

func (LookupAviatrixGatewayResultOutput) AzureEipNameResourceGroup

func (o LookupAviatrixGatewayResultOutput) AzureEipNameResourceGroup() pulumi.StringOutput

func (LookupAviatrixGatewayResultOutput) CloudInstanceId

Instance ID of the gateway.

func (LookupAviatrixGatewayResultOutput) CloudType

Type of cloud service provider.

func (LookupAviatrixGatewayResultOutput) DuoApiHostname

API hostname for DUO auth mode.

func (LookupAviatrixGatewayResultOutput) DuoIntegrationKey

Integration key for DUO auth mode.

func (LookupAviatrixGatewayResultOutput) DuoPushMode

Push mode for DUO auth.

func (LookupAviatrixGatewayResultOutput) ElbDnsName

ELB DNS Name.

func (LookupAviatrixGatewayResultOutput) ElbName

Name of the ELB created.

func (LookupAviatrixGatewayResultOutput) ElementType

func (LookupAviatrixGatewayResultOutput) EnableDesignatedGateway

func (o LookupAviatrixGatewayResultOutput) EnableDesignatedGateway() pulumi.BoolOutput

Status of Designated Gateway feature for Gateway.

func (LookupAviatrixGatewayResultOutput) EnableElb

Status of ELB for the gateway.

func (LookupAviatrixGatewayResultOutput) EnableEncryptVolume

func (o LookupAviatrixGatewayResultOutput) EnableEncryptVolume() pulumi.BoolOutput

Enable encrypt gateway EBS volume. Only supported for AWS provider.

func (LookupAviatrixGatewayResultOutput) EnableJumboFrame

func (LookupAviatrixGatewayResultOutput) EnableLdap

Status LDAP or not.

func (LookupAviatrixGatewayResultOutput) EnableMonitorGatewaySubnets

func (o LookupAviatrixGatewayResultOutput) EnableMonitorGatewaySubnets() pulumi.BoolOutput

func (LookupAviatrixGatewayResultOutput) EnablePublicSubnetFiltering

func (o LookupAviatrixGatewayResultOutput) EnablePublicSubnetFiltering() pulumi.BoolOutput

func (LookupAviatrixGatewayResultOutput) EnableSpotInstance

func (o LookupAviatrixGatewayResultOutput) EnableSpotInstance() pulumi.BoolOutput

func (LookupAviatrixGatewayResultOutput) EnableVpcDnsServer

func (o LookupAviatrixGatewayResultOutput) EnableVpcDnsServer() pulumi.BoolOutput

Status of VPC Dns Server for Gateway.

func (LookupAviatrixGatewayResultOutput) EnableVpnNat

Status of VPN NAT.

func (LookupAviatrixGatewayResultOutput) FaultDomain

Fault domain for OCI.

func (LookupAviatrixGatewayResultOutput) FqdnLanCidr

func (LookupAviatrixGatewayResultOutput) FqdnLanInterface

func (LookupAviatrixGatewayResultOutput) FqdnLanVpcId

func (LookupAviatrixGatewayResultOutput) GwName

Aviatrix gateway name.

func (LookupAviatrixGatewayResultOutput) GwSize

Size of gateway Instance.

func (LookupAviatrixGatewayResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixGatewayResultOutput) IdleTimeout

func (LookupAviatrixGatewayResultOutput) ImageVersion

The image version of the gateway.

func (LookupAviatrixGatewayResultOutput) InsaneMode

Status of Insane Mode for Gateway.

func (LookupAviatrixGatewayResultOutput) InsaneModeAz

AZ of subnet being created for Insane Mode gateway.

func (LookupAviatrixGatewayResultOutput) LdapBaseDn

LDAP base DN.

func (LookupAviatrixGatewayResultOutput) LdapBindDn

LDAP bind DN.

func (LookupAviatrixGatewayResultOutput) LdapServer

LDAP server address.

func (LookupAviatrixGatewayResultOutput) LdapUsernameAttribute

func (o LookupAviatrixGatewayResultOutput) LdapUsernameAttribute() pulumi.StringOutput

LDAP user attribute.

func (LookupAviatrixGatewayResultOutput) MaxVpnConn

Maximum connection of VPN access.

func (LookupAviatrixGatewayResultOutput) MonitorExcludeLists

func (LookupAviatrixGatewayResultOutput) NameServers

A list of DNS servers used to resolve domain names by a connected VPN user when Split Tunnel Mode is enabled.

func (LookupAviatrixGatewayResultOutput) OktaUrl

URL for Okta auth mode.

func (LookupAviatrixGatewayResultOutput) OktaUsernameSuffix

func (o LookupAviatrixGatewayResultOutput) OktaUsernameSuffix() pulumi.StringOutput

Username suffix for Okta auth mode.

func (LookupAviatrixGatewayResultOutput) OtpMode

Two step authentication mode.

func (LookupAviatrixGatewayResultOutput) PeeringHaAvailabilityDomain

func (o LookupAviatrixGatewayResultOutput) PeeringHaAvailabilityDomain() pulumi.StringOutput

HA gateway availability domain for OCI.

func (LookupAviatrixGatewayResultOutput) PeeringHaAzureEipNameResourceGroup

func (o LookupAviatrixGatewayResultOutput) PeeringHaAzureEipNameResourceGroup() pulumi.StringOutput

func (LookupAviatrixGatewayResultOutput) PeeringHaCloudInstanceId

func (o LookupAviatrixGatewayResultOutput) PeeringHaCloudInstanceId() pulumi.StringOutput

Instance ID of the peering HA gateway.

func (LookupAviatrixGatewayResultOutput) PeeringHaFaultDomain

func (o LookupAviatrixGatewayResultOutput) PeeringHaFaultDomain() pulumi.StringOutput

HA gateway fault domain for OCI.

func (LookupAviatrixGatewayResultOutput) PeeringHaGwName

Aviatrix gateway unique name of HA gateway.

func (LookupAviatrixGatewayResultOutput) PeeringHaGwSize

Peering HA Gateway Size.

func (LookupAviatrixGatewayResultOutput) PeeringHaImageVersion

func (o LookupAviatrixGatewayResultOutput) PeeringHaImageVersion() pulumi.StringOutput

The image version of the HA gateway.

func (LookupAviatrixGatewayResultOutput) PeeringHaInsaneModeAz

func (o LookupAviatrixGatewayResultOutput) PeeringHaInsaneModeAz() pulumi.StringOutput

AZ of subnet being created for Insane Mode Peering HA Gateway. Required if insaneMode is set.

func (LookupAviatrixGatewayResultOutput) PeeringHaPrivateIp

func (o LookupAviatrixGatewayResultOutput) PeeringHaPrivateIp() pulumi.StringOutput

Private IP address of HA gateway.

func (LookupAviatrixGatewayResultOutput) PeeringHaPublicIp

Public IP address that you want assigned to the HA peering instance.

func (LookupAviatrixGatewayResultOutput) PeeringHaSecurityGroupId

func (o LookupAviatrixGatewayResultOutput) PeeringHaSecurityGroupId() pulumi.StringOutput

func (LookupAviatrixGatewayResultOutput) PeeringHaSoftwareVersion

func (o LookupAviatrixGatewayResultOutput) PeeringHaSoftwareVersion() pulumi.StringOutput

The software version of the HA gateway.

func (LookupAviatrixGatewayResultOutput) PeeringHaSubnet

Public Subnet Information while creating Peering HA Gateway, only subnet is accepted. Required to create peering ha gateway if cloudType = 1 or 8 (AWS or Azure).

func (LookupAviatrixGatewayResultOutput) PeeringHaZone

Zone information for creating Peering HA Gateway. Required to create peering ha gateway if cloudType = 4 (GCP).

func (LookupAviatrixGatewayResultOutput) PrivateIp

Private IP address of the Gateway created.

func (LookupAviatrixGatewayResultOutput) PublicDnsServer

NS server used by the gateway.

func (LookupAviatrixGatewayResultOutput) PublicIp

Public IP address of the Gateway created.

func (LookupAviatrixGatewayResultOutput) PublicSubnetFilteringGuardDutyEnforced

func (o LookupAviatrixGatewayResultOutput) PublicSubnetFilteringGuardDutyEnforced() pulumi.BoolOutput

func (LookupAviatrixGatewayResultOutput) PublicSubnetFilteringHaRouteTables

func (o LookupAviatrixGatewayResultOutput) PublicSubnetFilteringHaRouteTables() pulumi.StringArrayOutput

func (LookupAviatrixGatewayResultOutput) PublicSubnetFilteringRouteTables

func (o LookupAviatrixGatewayResultOutput) PublicSubnetFilteringRouteTables() pulumi.StringArrayOutput

func (LookupAviatrixGatewayResultOutput) RenegotiationInterval

func (o LookupAviatrixGatewayResultOutput) RenegotiationInterval() pulumi.IntOutput

func (LookupAviatrixGatewayResultOutput) SamlEnabled

Status of SAML.

func (LookupAviatrixGatewayResultOutput) SearchDomains

A list of domain names that will use the NameServer when a specific name is not in the destination when Split Tunnel Mode is enabled.

func (LookupAviatrixGatewayResultOutput) SecurityGroupId

Security group used for the gateway.

func (LookupAviatrixGatewayResultOutput) SingleAzHa

Status of Single AZ HA.

func (LookupAviatrixGatewayResultOutput) SingleIpSnat

Single IP Source NAT status for the container.

func (LookupAviatrixGatewayResultOutput) SoftwareVersion

The software version of the gateway.

func (LookupAviatrixGatewayResultOutput) SplitTunnel

Status of split tunnel mode.

func (LookupAviatrixGatewayResultOutput) SpotPrice

func (LookupAviatrixGatewayResultOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (LookupAviatrixGatewayResultOutput) TagLists

Instance tag of cloud provider.

func (LookupAviatrixGatewayResultOutput) Tags

func (LookupAviatrixGatewayResultOutput) ToLookupAviatrixGatewayResultOutput

func (o LookupAviatrixGatewayResultOutput) ToLookupAviatrixGatewayResultOutput() LookupAviatrixGatewayResultOutput

func (LookupAviatrixGatewayResultOutput) ToLookupAviatrixGatewayResultOutputWithContext

func (o LookupAviatrixGatewayResultOutput) ToLookupAviatrixGatewayResultOutputWithContext(ctx context.Context) LookupAviatrixGatewayResultOutput

func (LookupAviatrixGatewayResultOutput) TunnelDetectionTime

func (o LookupAviatrixGatewayResultOutput) TunnelDetectionTime() pulumi.IntOutput

func (LookupAviatrixGatewayResultOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

func (LookupAviatrixGatewayResultOutput) VpcReg

Region of cloud provider.

func (LookupAviatrixGatewayResultOutput) VpnAccess

Status of user access through VPN to the container.

func (LookupAviatrixGatewayResultOutput) VpnCidr

VPN CIDR block for the container.

func (LookupAviatrixGatewayResultOutput) VpnProtocol

ELB protocol for VPN gateway with ELB enabled.

func (LookupAviatrixGatewayResultOutput) Zone

type LookupAviatrixSpokeGatewayArgs

type LookupAviatrixSpokeGatewayArgs struct {
	// Spoke gateway name. It can be used for getting spoke gateway.
	GwName string `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixSpokeGateway.

type LookupAviatrixSpokeGatewayOutputArgs

type LookupAviatrixSpokeGatewayOutputArgs struct {
	// Spoke gateway name. It can be used for getting spoke gateway.
	GwName pulumi.StringInput `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixSpokeGateway.

func (LookupAviatrixSpokeGatewayOutputArgs) ElementType

type LookupAviatrixSpokeGatewayResult

type LookupAviatrixSpokeGatewayResult struct {
	// Aviatrix account name.
	AccountName string `pulumi:"accountName"`
	// When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.
	AllocateNewEip       bool     `pulumi:"allocateNewEip"`
	ApprovedLearnedCidrs []string `pulumi:"approvedLearnedCidrs"`
	// Availability domain for OCI.
	AvailabilityDomain        string `pulumi:"availabilityDomain"`
	AzureEipNameResourceGroup string `pulumi:"azureEipNameResourceGroup"`
	BgpEcmp                   bool   `pulumi:"bgpEcmp"`
	BgpHoldTime               int    `pulumi:"bgpHoldTime"`
	BgpPollingTime            int    `pulumi:"bgpPollingTime"`
	// Cloud instance ID.
	CloudInstanceId string `pulumi:"cloudInstanceId"`
	// Type of cloud service provider.
	CloudType int `pulumi:"cloudType"`
	// A list of comma separated CIDRs to be customized for the spoke VPC routes.
	CustomizedSpokeVpcRoutes string `pulumi:"customizedSpokeVpcRoutes"`
	DisableRoutePropagation  bool   `pulumi:"disableRoutePropagation"`
	// The EIP address of the Spoke Gateway.
	Eip                           string `pulumi:"eip"`
	EnableActiveStandby           bool   `pulumi:"enableActiveStandby"`
	EnableActiveStandbyPreemptive bool   `pulumi:"enableActiveStandbyPreemptive"`
	EnableAutoAdvertiseS2cCidrs   bool   `pulumi:"enableAutoAdvertiseS2cCidrs"`
	EnableBgp                     bool   `pulumi:"enableBgp"`
	// Status of Encrypt Volume of spoke gateway.
	EnableEncryptVolume         bool `pulumi:"enableEncryptVolume"`
	EnableJumboFrame            bool `pulumi:"enableJumboFrame"`
	EnableLearnedCidrsApproval  bool `pulumi:"enableLearnedCidrsApproval"`
	EnableMonitorGatewaySubnets bool `pulumi:"enableMonitorGatewaySubnets"`
	// Status of private OOB for the spoke gateway.
	EnablePrivateOob                 bool `pulumi:"enablePrivateOob"`
	EnablePrivateVpcDefaultRoute     bool `pulumi:"enablePrivateVpcDefaultRoute"`
	EnableSkipPublicRouteTableUpdate bool `pulumi:"enableSkipPublicRouteTableUpdate"`
	EnableSpotInstance               bool `pulumi:"enableSpotInstance"`
	// Status of VPC Dns Server of spoke gateway.
	EnableVpcDnsServer bool `pulumi:"enableVpcDnsServer"`
	// Fault domain for OCI.
	FaultDomain string `pulumi:"faultDomain"`
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table.
	FilteredSpokeVpcRoutes string `pulumi:"filteredSpokeVpcRoutes"`
	// Aviatrix spoke gateway name.
	GwName string `pulumi:"gwName"`
	// Size of spoke gateway instance.
	GwSize string `pulumi:"gwSize"`
	// HA gateway availability domain for OCI.
	HaAvailabilityDomain        string `pulumi:"haAvailabilityDomain"`
	HaAzureEipNameResourceGroup string `pulumi:"haAzureEipNameResourceGroup"`
	// Cloud instance ID of HA spoke gateway.
	HaCloudInstanceId string `pulumi:"haCloudInstanceId"`
	// The EIP address of the HA Spoke Gateway.
	HaEip string `pulumi:"haEip"`
	// HA gateway fault domain for OCI.
	HaFaultDomain string `pulumi:"haFaultDomain"`
	// Aviatrix spoke gateway unique name of HA spoke gateway.
	HaGwName string `pulumi:"haGwName"`
	// HA Gateway Size.
	HaGwSize string `pulumi:"haGwSize"`
	// The image version of the HA gateway.
	HaImageVersion string `pulumi:"haImageVersion"`
	// AZ of subnet being created for Insane Mode Spoke HA Gateway.
	HaInsaneModeAz string `pulumi:"haInsaneModeAz"`
	// HA OOB availability zone.
	HaOobAvailabilityZone string `pulumi:"haOobAvailabilityZone"`
	// HA OOB management subnet.
	HaOobManagementSubnet string `pulumi:"haOobManagementSubnet"`
	// Private IP address of HA spoke gateway.
	HaPrivateIp string `pulumi:"haPrivateIp"`
	// Public IP address of the HA spoke gateway.
	HaPublicIp        string `pulumi:"haPublicIp"`
	HaSecurityGroupId string `pulumi:"haSecurityGroupId"`
	// The software version of the HA gateway.
	HaSoftwareVersion string `pulumi:"haSoftwareVersion"`
	// HA Subnet.
	HaSubnet string `pulumi:"haSubnet"`
	// HA Zone.
	HaZone string `pulumi:"haZone"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The image version of the gateway.
	ImageVersion string `pulumi:"imageVersion"`
	// A list of comma separated CIDRs to be advertised to on-prem as "Included CIDR List".
	IncludedAdvertisedSpokeRoutes string `pulumi:"includedAdvertisedSpokeRoutes"`
	// Status of Insane Mode for Spoke Gateway.
	InsaneMode bool `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode spoke gateway.
	InsaneModeAz             string   `pulumi:"insaneModeAz"`
	LearnedCidrsApprovalMode string   `pulumi:"learnedCidrsApprovalMode"`
	LocalAsNumber            string   `pulumi:"localAsNumber"`
	MonitorExcludeLists      []string `pulumi:"monitorExcludeLists"`
	// OOB availability zone.
	OobAvailabilityZone string `pulumi:"oobAvailabilityZone"`
	// OOB management subnet.
	OobManagementSubnet string   `pulumi:"oobManagementSubnet"`
	PrependAsPaths      []string `pulumi:"prependAsPaths"`
	// Private IP address of the spoke gateway.
	PrivateIp string `pulumi:"privateIp"`
	// Public IP of spoke gateway.
	PublicIp string `pulumi:"publicIp"`
	// Security group used of the spoke gateway.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// Status of Single AZ HA of spoke gateway.
	SingleAzHa bool `pulumi:"singleAzHa"`
	// Status of Single IP Source NAT mode of the spoke gateway.
	SingleIpSnat bool `pulumi:"singleIpSnat"`
	// The software version of the gateway.
	SoftwareVersion              string   `pulumi:"softwareVersion"`
	SpokeBgpManualAdvertiseCidrs []string `pulumi:"spokeBgpManualAdvertiseCidrs"`
	SpotPrice                    string   `pulumi:"spotPrice"`
	// A VPC Network address range selected from one of the available network ranges.
	Subnet string `pulumi:"subnet"`
	// Instance tag of cloud provider.
	TagLists []string          `pulumi:"tagLists"`
	Tags     map[string]string `pulumi:"tags"`
	// Transit gateways attached to this spoke gateway.
	TransitGw           string `pulumi:"transitGw"`
	TunnelDetectionTime int    `pulumi:"tunnelDetectionTime"`
	// VPC-ID/VNet-Name of cloud provider.
	VpcId string `pulumi:"vpcId"`
	// Region of cloud provider.
	VpcReg string `pulumi:"vpcReg"`
	Zone   string `pulumi:"zone"`
}

A collection of values returned by getAviatrixSpokeGateway.

func LookupAviatrixSpokeGateway

func LookupAviatrixSpokeGateway(ctx *pulumi.Context, args *LookupAviatrixSpokeGatewayArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixSpokeGatewayResult, error)

The **aviatrix_spoke_gateway** data source provides details about a specific spoke gateway created by the Aviatrix Controller.

This data source can prove useful when a module accepts a spoke gateway's detail as an input variable.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixSpokeGateway(ctx, &GetAviatrixSpokeGatewayArgs{
			GwName: "gatewayname",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixSpokeGatewayResultOutput

type LookupAviatrixSpokeGatewayResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixSpokeGateway.

func (LookupAviatrixSpokeGatewayResultOutput) AccountName

Aviatrix account name.

func (LookupAviatrixSpokeGatewayResultOutput) AllocateNewEip

When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.

func (LookupAviatrixSpokeGatewayResultOutput) ApprovedLearnedCidrs

func (LookupAviatrixSpokeGatewayResultOutput) AvailabilityDomain

Availability domain for OCI.

func (LookupAviatrixSpokeGatewayResultOutput) AzureEipNameResourceGroup

func (o LookupAviatrixSpokeGatewayResultOutput) AzureEipNameResourceGroup() pulumi.StringOutput

func (LookupAviatrixSpokeGatewayResultOutput) BgpEcmp

func (LookupAviatrixSpokeGatewayResultOutput) BgpHoldTime

func (LookupAviatrixSpokeGatewayResultOutput) BgpPollingTime

func (LookupAviatrixSpokeGatewayResultOutput) CloudInstanceId

Cloud instance ID.

func (LookupAviatrixSpokeGatewayResultOutput) CloudType

Type of cloud service provider.

func (LookupAviatrixSpokeGatewayResultOutput) CustomizedSpokeVpcRoutes

func (o LookupAviatrixSpokeGatewayResultOutput) CustomizedSpokeVpcRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be customized for the spoke VPC routes.

func (LookupAviatrixSpokeGatewayResultOutput) DisableRoutePropagation

func (o LookupAviatrixSpokeGatewayResultOutput) DisableRoutePropagation() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) Eip

The EIP address of the Spoke Gateway.

func (LookupAviatrixSpokeGatewayResultOutput) ElementType

func (LookupAviatrixSpokeGatewayResultOutput) EnableActiveStandby

func (LookupAviatrixSpokeGatewayResultOutput) EnableActiveStandbyPreemptive

func (o LookupAviatrixSpokeGatewayResultOutput) EnableActiveStandbyPreemptive() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnableAutoAdvertiseS2cCidrs

func (o LookupAviatrixSpokeGatewayResultOutput) EnableAutoAdvertiseS2cCidrs() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnableBgp

func (LookupAviatrixSpokeGatewayResultOutput) EnableEncryptVolume

Status of Encrypt Volume of spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) EnableJumboFrame

func (LookupAviatrixSpokeGatewayResultOutput) EnableLearnedCidrsApproval

func (o LookupAviatrixSpokeGatewayResultOutput) EnableLearnedCidrsApproval() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnableMonitorGatewaySubnets

func (o LookupAviatrixSpokeGatewayResultOutput) EnableMonitorGatewaySubnets() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnablePrivateOob

Status of private OOB for the spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) EnablePrivateVpcDefaultRoute

func (o LookupAviatrixSpokeGatewayResultOutput) EnablePrivateVpcDefaultRoute() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnableSkipPublicRouteTableUpdate

func (o LookupAviatrixSpokeGatewayResultOutput) EnableSkipPublicRouteTableUpdate() pulumi.BoolOutput

func (LookupAviatrixSpokeGatewayResultOutput) EnableSpotInstance

func (LookupAviatrixSpokeGatewayResultOutput) EnableVpcDnsServer

Status of VPC Dns Server of spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) FaultDomain

Fault domain for OCI.

func (LookupAviatrixSpokeGatewayResultOutput) FilteredSpokeVpcRoutes

func (o LookupAviatrixSpokeGatewayResultOutput) FilteredSpokeVpcRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be filtered from the spoke VPC route table.

func (LookupAviatrixSpokeGatewayResultOutput) GwName

Aviatrix spoke gateway name.

func (LookupAviatrixSpokeGatewayResultOutput) GwSize

Size of spoke gateway instance.

func (LookupAviatrixSpokeGatewayResultOutput) HaAvailabilityDomain

HA gateway availability domain for OCI.

func (LookupAviatrixSpokeGatewayResultOutput) HaAzureEipNameResourceGroup

func (o LookupAviatrixSpokeGatewayResultOutput) HaAzureEipNameResourceGroup() pulumi.StringOutput

func (LookupAviatrixSpokeGatewayResultOutput) HaCloudInstanceId

Cloud instance ID of HA spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaEip

The EIP address of the HA Spoke Gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaFaultDomain

HA gateway fault domain for OCI.

func (LookupAviatrixSpokeGatewayResultOutput) HaGwName

Aviatrix spoke gateway unique name of HA spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaGwSize

HA Gateway Size.

func (LookupAviatrixSpokeGatewayResultOutput) HaImageVersion

The image version of the HA gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaInsaneModeAz

AZ of subnet being created for Insane Mode Spoke HA Gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaOobAvailabilityZone

HA OOB availability zone.

func (LookupAviatrixSpokeGatewayResultOutput) HaOobManagementSubnet

HA OOB management subnet.

func (LookupAviatrixSpokeGatewayResultOutput) HaPrivateIp

Private IP address of HA spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaPublicIp

Public IP address of the HA spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaSecurityGroupId

func (LookupAviatrixSpokeGatewayResultOutput) HaSoftwareVersion

The software version of the HA gateway.

func (LookupAviatrixSpokeGatewayResultOutput) HaSubnet

HA Subnet.

func (LookupAviatrixSpokeGatewayResultOutput) HaZone

HA Zone.

func (LookupAviatrixSpokeGatewayResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixSpokeGatewayResultOutput) ImageVersion

The image version of the gateway.

func (LookupAviatrixSpokeGatewayResultOutput) IncludedAdvertisedSpokeRoutes

func (o LookupAviatrixSpokeGatewayResultOutput) IncludedAdvertisedSpokeRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be advertised to on-prem as "Included CIDR List".

func (LookupAviatrixSpokeGatewayResultOutput) InsaneMode

Status of Insane Mode for Spoke Gateway.

func (LookupAviatrixSpokeGatewayResultOutput) InsaneModeAz

AZ of subnet being created for Insane Mode spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) LearnedCidrsApprovalMode

func (o LookupAviatrixSpokeGatewayResultOutput) LearnedCidrsApprovalMode() pulumi.StringOutput

func (LookupAviatrixSpokeGatewayResultOutput) LocalAsNumber

func (LookupAviatrixSpokeGatewayResultOutput) MonitorExcludeLists

func (LookupAviatrixSpokeGatewayResultOutput) OobAvailabilityZone

OOB availability zone.

func (LookupAviatrixSpokeGatewayResultOutput) OobManagementSubnet

OOB management subnet.

func (LookupAviatrixSpokeGatewayResultOutput) PrependAsPaths

func (LookupAviatrixSpokeGatewayResultOutput) PrivateIp

Private IP address of the spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) PublicIp

Public IP of spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) SecurityGroupId

Security group used of the spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) SingleAzHa

Status of Single AZ HA of spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) SingleIpSnat

Status of Single IP Source NAT mode of the spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) SoftwareVersion

The software version of the gateway.

func (LookupAviatrixSpokeGatewayResultOutput) SpokeBgpManualAdvertiseCidrs

func (o LookupAviatrixSpokeGatewayResultOutput) SpokeBgpManualAdvertiseCidrs() pulumi.StringArrayOutput

func (LookupAviatrixSpokeGatewayResultOutput) SpotPrice

func (LookupAviatrixSpokeGatewayResultOutput) Subnet

A VPC Network address range selected from one of the available network ranges.

func (LookupAviatrixSpokeGatewayResultOutput) TagLists

Instance tag of cloud provider.

func (LookupAviatrixSpokeGatewayResultOutput) Tags

func (LookupAviatrixSpokeGatewayResultOutput) ToLookupAviatrixSpokeGatewayResultOutput

func (o LookupAviatrixSpokeGatewayResultOutput) ToLookupAviatrixSpokeGatewayResultOutput() LookupAviatrixSpokeGatewayResultOutput

func (LookupAviatrixSpokeGatewayResultOutput) ToLookupAviatrixSpokeGatewayResultOutputWithContext

func (o LookupAviatrixSpokeGatewayResultOutput) ToLookupAviatrixSpokeGatewayResultOutputWithContext(ctx context.Context) LookupAviatrixSpokeGatewayResultOutput

func (LookupAviatrixSpokeGatewayResultOutput) TransitGw

Transit gateways attached to this spoke gateway.

func (LookupAviatrixSpokeGatewayResultOutput) TunnelDetectionTime

func (LookupAviatrixSpokeGatewayResultOutput) VpcId

VPC-ID/VNet-Name of cloud provider.

func (LookupAviatrixSpokeGatewayResultOutput) VpcReg

Region of cloud provider.

func (LookupAviatrixSpokeGatewayResultOutput) Zone

type LookupAviatrixTransitGatewayArgs

type LookupAviatrixTransitGatewayArgs struct {
	// Transit gateway name.
	GwName string `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixTransitGateway.

type LookupAviatrixTransitGatewayOutputArgs

type LookupAviatrixTransitGatewayOutputArgs struct {
	// Transit gateway name.
	GwName pulumi.StringInput `pulumi:"gwName"`
}

A collection of arguments for invoking getAviatrixTransitGateway.

func (LookupAviatrixTransitGatewayOutputArgs) ElementType

type LookupAviatrixTransitGatewayResult

type LookupAviatrixTransitGatewayResult struct {
	// Aviatrix account name.
	AccountName string `pulumi:"accountName"`
	// When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.
	AllocateNewEip bool `pulumi:"allocateNewEip"`
	// Approved learned CIDRs.
	ApprovedLearnedCidrs []string `pulumi:"approvedLearnedCidrs"`
	// Availability domain for OCI.
	AvailabilityDomain string `pulumi:"availabilityDomain"`
	// The name of the public IP address and its resource group in Azure to assign to this Transit Gateway.
	AzureEipNameResourceGroup string `pulumi:"azureEipNameResourceGroup"`
	// Status of Equal Cost Multi Path (ECMP) routing for the next hop.
	BgpEcmp bool `pulumi:"bgpEcmp"`
	// BGP Hold Time.
	BgpHoldTime int `pulumi:"bgpHoldTime"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer.
	BgpLanInterfaces []GetAviatrixTransitGatewayBgpLanInterface `pulumi:"bgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure.
	BgpLanIpLists []string `pulumi:"bgpLanIpLists"`
	// Intended CIDR list to advertise to VGW.
	BgpManualSpokeAdvertiseCidrs string `pulumi:"bgpManualSpokeAdvertiseCidrs"`
	// BGP route polling time.
	BgpPollingTime string `pulumi:"bgpPollingTime"`
	// Instance ID of the transit gateway.
	CloudInstanceId string `pulumi:"cloudInstanceId"`
	// Type of cloud service provider.
	// * `connectedTransit"` -  Status of Connected Transit of transit gateway.
	CloudType        int  `pulumi:"cloudType"`
	ConnectedTransit bool `pulumi:"connectedTransit"`
	// A list of comma separated CIDRs to be customized for the spoke VPC routes.
	CustomizedSpokeVpcRoutes string `pulumi:"customizedSpokeVpcRoutes"`
	// A list of CIDRs to be customized for the transit VPC routes.
	CustomizedTransitVpcRoutes []string `pulumi:"customizedTransitVpcRoutes"`
	// The EIP address of the Transit Gateway.
	Eip string `pulumi:"eip"`
	// Status of Active-Standby Mode.
	EnableActiveStandby bool `pulumi:"enableActiveStandby"`
	// Status of Preemptive Mode for Active-Standby.
	EnableActiveStandbyPreemptive bool `pulumi:"enableActiveStandbyPreemptive"`
	// Status of Advertise Transit VPC network CIDR of the transit gateway.
	EnableAdvertiseTransitCidr bool `pulumi:"enableAdvertiseTransitCidr"`
	// Status of BGP over LAN functionality.
	EnableBgpOverLan bool `pulumi:"enableBgpOverLan"`
	// Status of Egress Transit FireNet being enabled on the gateway.
	EnableEgressTransitFirenet bool `pulumi:"enableEgressTransitFirenet"`
	// Status of Encrypt Gateway EBS Volume of the transit gateway.
	EnableEncryptVolume bool `pulumi:"enableEncryptVolume"`
	// Status of FireNet Interfaces of the transit gateway.
	EnableFirenet bool `pulumi:"enableFirenet"`
	// Status of AWS Gateway Load Balancer.
	EnableGatewayLoadBalancer bool `pulumi:"enableGatewayLoadBalancer"`
	// Sign of readiness for TGW connection.
	EnableHybridConnection bool `pulumi:"enableHybridConnection"`
	// Status of jumbo frame support.
	EnableJumboFrame bool `pulumi:"enableJumboFrame"`
	// Status of Encrypted Transit Approval for transit gateway.
	EnableLearnedCidrsApproval bool `pulumi:"enableLearnedCidrsApproval"`
	// Status of monitor gateway subnets.
	EnableMonitorGatewaySubnets bool `pulumi:"enableMonitorGatewaySubnets"`
	// Status of multi-tier transit mode on transit gateway.
	EnableMultiTierTransit bool `pulumi:"enableMultiTierTransit"`
	// Status of private OOB for the transit gateway.
	EnablePrivateOob bool `pulumi:"enablePrivateOob"`
	// Status of segmentation.
	EnableSegmentation bool `pulumi:"enableSegmentation"`
	// Status of spot instance.
	EnableSpotInstance bool `pulumi:"enableSpotInstance"`
	// Status of Transit FireNet Interfaces of the transit gateway.
	EnableTransitFirenet bool `pulumi:"enableTransitFirenet"`
	// Status of transit summarize CIDR to TGW.
	EnableTransitSummarizeCidrToTgw bool `pulumi:"enableTransitSummarizeCidrToTgw"`
	// Status of Vpc Dns Server of the transit Gateway.
	EnableVpcDnsServer bool `pulumi:"enableVpcDnsServer"`
	// A list of comma separated CIDRs to be advertised to on-prem as "Excluded CIDR List".
	ExcludedAdvertisedSpokeRoutes string `pulumi:"excludedAdvertisedSpokeRoutes"`
	// Fault domain for OCI.
	FaultDomain string `pulumi:"faultDomain"`
	// A list of comma separated CIDRs to be filtered from the spoke VPC route table.
	FilteredSpokeVpcRoutes string `pulumi:"filteredSpokeVpcRoutes"`
	// Aviatrix transit gateway name.
	GwName string `pulumi:"gwName"`
	// Size of transit gateway instance.
	GwSize string `pulumi:"gwSize"`
	// HA gateway availability domain for OCI.
	HaAvailabilityDomain string `pulumi:"haAvailabilityDomain"`
	// The name of the public IP address and its resource group in Azure to assign to the HA Transit Gateway.
	HaAzureEipNameResourceGroup string `pulumi:"haAzureEipNameResourceGroup"`
	// Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit.
	HaBgpLanInterfaces []GetAviatrixTransitGatewayHaBgpLanInterface `pulumi:"haBgpLanInterfaces"`
	// List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure.
	HaBgpLanIpLists []string `pulumi:"haBgpLanIpLists"`
	// Cloud instance ID of HA transit gateway.
	HaCloudInstanceId string `pulumi:"haCloudInstanceId"`
	// The EIP address of the HA Transit Gateway.
	HaEip string `pulumi:"haEip"`
	// HA gateway fault domain for OCI.
	HaFaultDomain string `pulumi:"haFaultDomain"`
	// Aviatrix transit gateway unique name of HA transit gateway.
	// * `haGwSize"` - HA Gateway Size.
	HaGwName string `pulumi:"haGwName"`
	HaGwSize string `pulumi:"haGwSize"`
	// The image version of the HA gateway.
	HaImageVersion string `pulumi:"haImageVersion"`
	// AZ of subnet being created for Insane Mode Transit HA Gateway.
	HaInsaneModeAz string `pulumi:"haInsaneModeAz"`
	// Transit gateway lan interface cidr for the HA gateway.
	HaLanInterfaceCidr string `pulumi:"haLanInterfaceCidr"`
	// HA OOB availability zone.
	HaOobAvailabilityZone string `pulumi:"haOobAvailabilityZone"`
	// HA OOB management subnet.
	HaOobManagementSubnet string `pulumi:"haOobManagementSubnet"`
	// Private IP address that assigned to the HA Transit Gateway.
	HaPrivateIp string `pulumi:"haPrivateIp"`
	// Public IP address that assigned to the HA Transit Gateway.
	HaPublicIp string `pulumi:"haPublicIp"`
	// HA security group used for the transit gateway.
	HaSecurityGroupId string `pulumi:"haSecurityGroupId"`
	// The software version of the HA gateway.
	HaSoftwareVersion string `pulumi:"haSoftwareVersion"`
	// HA Subnet.
	HaSubnet string `pulumi:"haSubnet"`
	// HA Zone.
	HaZone string `pulumi:"haZone"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The image version of the gateway.
	ImageVersion string `pulumi:"imageVersion"`
	// Status of Insane Mode of the transit gateway.
	InsaneMode bool `pulumi:"insaneMode"`
	// AZ of subnet being created for Insane Mode transit gateway.
	InsaneModeAz string `pulumi:"insaneModeAz"`
	// Transit gateway lan interface cidr.
	LanInterfaceCidr string `pulumi:"lanInterfaceCidr"`
	// LAN Private Subnet for GCP Transit FireNet.
	LanPrivateSubnet string `pulumi:"lanPrivateSubnet"`
	// LAN VPC ID for GCP Transit FireNet.
	LanVpcId string `pulumi:"lanVpcId"`
	// Learned CIDRs approval mode.
	LearnedCidrsApprovalMode string `pulumi:"learnedCidrsApprovalMode"`
	// Local ASN number.
	LocalAsNumber string `pulumi:"localAsNumber"`
	// A set of monitored instance IDs.
	MonitorExcludeLists []string `pulumi:"monitorExcludeLists"`
	// OOB availability zone.
	OobAvailabilityZone string `pulumi:"oobAvailabilityZone"`
	// OOB management subnet.
	OobManagementSubnet string `pulumi:"oobManagementSubnet"`
	// List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.
	PrependAsPaths []string `pulumi:"prependAsPaths"`
	// Private IP address of the transit gateway created.
	PrivateIp string `pulumi:"privateIp"`
	// Public IP address of the Transit Gateway created.
	PublicIp string `pulumi:"publicIp"`
	// Security group used for the transit gateway.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// Status of Single AZ HA of transit gateway.
	SingleAzHa bool `pulumi:"singleAzHa"`
	// Status of Single IP Source Nat mode of the transit gateway.
	SingleIpSnat bool `pulumi:"singleIpSnat"`
	// The software version of the gateway.
	SoftwareVersion string `pulumi:"softwareVersion"`
	// Price for spot instance.
	SpotPrice string `pulumi:"spotPrice"`
	// Subnet Info.
	Subnet string `pulumi:"subnet"`
	// Instance tag of cloud provider.
	TagLists            []string          `pulumi:"tagLists"`
	Tags                map[string]string `pulumi:"tags"`
	TunnelDetectionTime int               `pulumi:"tunnelDetectionTime"`
	// VPC-ID of GCP cloud provider.
	VpcId string `pulumi:"vpcId"`
	// Region of cloud provider.
	VpcReg string `pulumi:"vpcReg"`
	// Availability Zone for Azure.
	Zone string `pulumi:"zone"`
}

A collection of values returned by getAviatrixTransitGateway.

func LookupAviatrixTransitGateway

func LookupAviatrixTransitGateway(ctx *pulumi.Context, args *LookupAviatrixTransitGatewayArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixTransitGatewayResult, error)

The **aviatrix_transit_gateway** data source provides details about a specific transit gateway created by the Aviatrix Controller.

This data source can prove useful when a module accepts a transit gateway's detail as an input variable. For example, requiring the transit gateway's name for a spoke gateway's attachment.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixTransitGateway(ctx, &GetAviatrixTransitGatewayArgs{
			GwName: "gatewayname",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixTransitGatewayResultOutput

type LookupAviatrixTransitGatewayResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixTransitGateway.

func (LookupAviatrixTransitGatewayResultOutput) AccountName

Aviatrix account name.

func (LookupAviatrixTransitGatewayResultOutput) AllocateNewEip

When value is false, an idle address in Elastic IP pool is reused for this gateway. Otherwise, a new Elastic IP is allocated and used for this gateway.

func (LookupAviatrixTransitGatewayResultOutput) ApprovedLearnedCidrs

Approved learned CIDRs.

func (LookupAviatrixTransitGatewayResultOutput) AvailabilityDomain

Availability domain for OCI.

func (LookupAviatrixTransitGatewayResultOutput) AzureEipNameResourceGroup

func (o LookupAviatrixTransitGatewayResultOutput) AzureEipNameResourceGroup() pulumi.StringOutput

The name of the public IP address and its resource group in Azure to assign to this Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) BgpEcmp

Status of Equal Cost Multi Path (ECMP) routing for the next hop.

func (LookupAviatrixTransitGatewayResultOutput) BgpHoldTime

BGP Hold Time.

func (LookupAviatrixTransitGatewayResultOutput) BgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer.

func (LookupAviatrixTransitGatewayResultOutput) BgpLanIpLists

List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure.

func (LookupAviatrixTransitGatewayResultOutput) BgpManualSpokeAdvertiseCidrs

func (o LookupAviatrixTransitGatewayResultOutput) BgpManualSpokeAdvertiseCidrs() pulumi.StringOutput

Intended CIDR list to advertise to VGW.

func (LookupAviatrixTransitGatewayResultOutput) BgpPollingTime

BGP route polling time.

func (LookupAviatrixTransitGatewayResultOutput) CloudInstanceId

Instance ID of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) CloudType

Type of cloud service provider. * `connectedTransit"` - Status of Connected Transit of transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) ConnectedTransit

func (LookupAviatrixTransitGatewayResultOutput) CustomizedSpokeVpcRoutes

func (o LookupAviatrixTransitGatewayResultOutput) CustomizedSpokeVpcRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be customized for the spoke VPC routes.

func (LookupAviatrixTransitGatewayResultOutput) CustomizedTransitVpcRoutes

func (o LookupAviatrixTransitGatewayResultOutput) CustomizedTransitVpcRoutes() pulumi.StringArrayOutput

A list of CIDRs to be customized for the transit VPC routes.

func (LookupAviatrixTransitGatewayResultOutput) Eip

The EIP address of the Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) ElementType

func (LookupAviatrixTransitGatewayResultOutput) EnableActiveStandby

Status of Active-Standby Mode.

func (LookupAviatrixTransitGatewayResultOutput) EnableActiveStandbyPreemptive

func (o LookupAviatrixTransitGatewayResultOutput) EnableActiveStandbyPreemptive() pulumi.BoolOutput

Status of Preemptive Mode for Active-Standby.

func (LookupAviatrixTransitGatewayResultOutput) EnableAdvertiseTransitCidr

func (o LookupAviatrixTransitGatewayResultOutput) EnableAdvertiseTransitCidr() pulumi.BoolOutput

Status of Advertise Transit VPC network CIDR of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableBgpOverLan

Status of BGP over LAN functionality.

func (LookupAviatrixTransitGatewayResultOutput) EnableEgressTransitFirenet

func (o LookupAviatrixTransitGatewayResultOutput) EnableEgressTransitFirenet() pulumi.BoolOutput

Status of Egress Transit FireNet being enabled on the gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableEncryptVolume

Status of Encrypt Gateway EBS Volume of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableFirenet

Status of FireNet Interfaces of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableGatewayLoadBalancer

func (o LookupAviatrixTransitGatewayResultOutput) EnableGatewayLoadBalancer() pulumi.BoolOutput

Status of AWS Gateway Load Balancer.

func (LookupAviatrixTransitGatewayResultOutput) EnableHybridConnection

func (o LookupAviatrixTransitGatewayResultOutput) EnableHybridConnection() pulumi.BoolOutput

Sign of readiness for TGW connection.

func (LookupAviatrixTransitGatewayResultOutput) EnableJumboFrame

Status of jumbo frame support.

func (LookupAviatrixTransitGatewayResultOutput) EnableLearnedCidrsApproval

func (o LookupAviatrixTransitGatewayResultOutput) EnableLearnedCidrsApproval() pulumi.BoolOutput

Status of Encrypted Transit Approval for transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableMonitorGatewaySubnets

func (o LookupAviatrixTransitGatewayResultOutput) EnableMonitorGatewaySubnets() pulumi.BoolOutput

Status of monitor gateway subnets.

func (LookupAviatrixTransitGatewayResultOutput) EnableMultiTierTransit

func (o LookupAviatrixTransitGatewayResultOutput) EnableMultiTierTransit() pulumi.BoolOutput

Status of multi-tier transit mode on transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnablePrivateOob

Status of private OOB for the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableSegmentation

Status of segmentation.

func (LookupAviatrixTransitGatewayResultOutput) EnableSpotInstance

Status of spot instance.

func (LookupAviatrixTransitGatewayResultOutput) EnableTransitFirenet

Status of Transit FireNet Interfaces of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) EnableTransitSummarizeCidrToTgw

func (o LookupAviatrixTransitGatewayResultOutput) EnableTransitSummarizeCidrToTgw() pulumi.BoolOutput

Status of transit summarize CIDR to TGW.

func (LookupAviatrixTransitGatewayResultOutput) EnableVpcDnsServer

Status of Vpc Dns Server of the transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) ExcludedAdvertisedSpokeRoutes

func (o LookupAviatrixTransitGatewayResultOutput) ExcludedAdvertisedSpokeRoutes() pulumi.StringOutput

A list of comma separated CIDRs to be advertised to on-prem as "Excluded CIDR List".

func (LookupAviatrixTransitGatewayResultOutput) FaultDomain

Fault domain for OCI.

func (LookupAviatrixTransitGatewayResultOutput) FilteredSpokeVpcRoutes

A list of comma separated CIDRs to be filtered from the spoke VPC route table.

func (LookupAviatrixTransitGatewayResultOutput) GwName

Aviatrix transit gateway name.

func (LookupAviatrixTransitGatewayResultOutput) GwSize

Size of transit gateway instance.

func (LookupAviatrixTransitGatewayResultOutput) HaAvailabilityDomain

HA gateway availability domain for OCI.

func (LookupAviatrixTransitGatewayResultOutput) HaAzureEipNameResourceGroup

func (o LookupAviatrixTransitGatewayResultOutput) HaAzureEipNameResourceGroup() pulumi.StringOutput

The name of the public IP address and its resource group in Azure to assign to the HA Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaBgpLanInterfaces

Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit.

func (LookupAviatrixTransitGatewayResultOutput) HaBgpLanIpLists

List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure.

func (LookupAviatrixTransitGatewayResultOutput) HaCloudInstanceId

Cloud instance ID of HA transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaEip

The EIP address of the HA Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaFaultDomain

HA gateway fault domain for OCI.

func (LookupAviatrixTransitGatewayResultOutput) HaGwName

Aviatrix transit gateway unique name of HA transit gateway. * `haGwSize"` - HA Gateway Size.

func (LookupAviatrixTransitGatewayResultOutput) HaGwSize

func (LookupAviatrixTransitGatewayResultOutput) HaImageVersion

The image version of the HA gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaInsaneModeAz

AZ of subnet being created for Insane Mode Transit HA Gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaLanInterfaceCidr

Transit gateway lan interface cidr for the HA gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaOobAvailabilityZone

HA OOB availability zone.

func (LookupAviatrixTransitGatewayResultOutput) HaOobManagementSubnet

HA OOB management subnet.

func (LookupAviatrixTransitGatewayResultOutput) HaPrivateIp

Private IP address that assigned to the HA Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaPublicIp

Public IP address that assigned to the HA Transit Gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaSecurityGroupId

HA security group used for the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaSoftwareVersion

The software version of the HA gateway.

func (LookupAviatrixTransitGatewayResultOutput) HaSubnet

HA Subnet.

func (LookupAviatrixTransitGatewayResultOutput) HaZone

HA Zone.

func (LookupAviatrixTransitGatewayResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixTransitGatewayResultOutput) ImageVersion

The image version of the gateway.

func (LookupAviatrixTransitGatewayResultOutput) InsaneMode

Status of Insane Mode of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) InsaneModeAz

AZ of subnet being created for Insane Mode transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) LanInterfaceCidr

Transit gateway lan interface cidr.

func (LookupAviatrixTransitGatewayResultOutput) LanPrivateSubnet

LAN Private Subnet for GCP Transit FireNet.

func (LookupAviatrixTransitGatewayResultOutput) LanVpcId

LAN VPC ID for GCP Transit FireNet.

func (LookupAviatrixTransitGatewayResultOutput) LearnedCidrsApprovalMode

func (o LookupAviatrixTransitGatewayResultOutput) LearnedCidrsApprovalMode() pulumi.StringOutput

Learned CIDRs approval mode.

func (LookupAviatrixTransitGatewayResultOutput) LocalAsNumber

Local ASN number.

func (LookupAviatrixTransitGatewayResultOutput) MonitorExcludeLists

A set of monitored instance IDs.

func (LookupAviatrixTransitGatewayResultOutput) OobAvailabilityZone

OOB availability zone.

func (LookupAviatrixTransitGatewayResultOutput) OobManagementSubnet

OOB management subnet.

func (LookupAviatrixTransitGatewayResultOutput) PrependAsPaths

List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices.

func (LookupAviatrixTransitGatewayResultOutput) PrivateIp

Private IP address of the transit gateway created.

func (LookupAviatrixTransitGatewayResultOutput) PublicIp

Public IP address of the Transit Gateway created.

func (LookupAviatrixTransitGatewayResultOutput) SecurityGroupId

Security group used for the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) SingleAzHa

Status of Single AZ HA of transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) SingleIpSnat

Status of Single IP Source Nat mode of the transit gateway.

func (LookupAviatrixTransitGatewayResultOutput) SoftwareVersion

The software version of the gateway.

func (LookupAviatrixTransitGatewayResultOutput) SpotPrice

Price for spot instance.

func (LookupAviatrixTransitGatewayResultOutput) Subnet

Subnet Info.

func (LookupAviatrixTransitGatewayResultOutput) TagLists

Instance tag of cloud provider.

func (LookupAviatrixTransitGatewayResultOutput) Tags

func (LookupAviatrixTransitGatewayResultOutput) ToLookupAviatrixTransitGatewayResultOutput

func (o LookupAviatrixTransitGatewayResultOutput) ToLookupAviatrixTransitGatewayResultOutput() LookupAviatrixTransitGatewayResultOutput

func (LookupAviatrixTransitGatewayResultOutput) ToLookupAviatrixTransitGatewayResultOutputWithContext

func (o LookupAviatrixTransitGatewayResultOutput) ToLookupAviatrixTransitGatewayResultOutputWithContext(ctx context.Context) LookupAviatrixTransitGatewayResultOutput

func (LookupAviatrixTransitGatewayResultOutput) TunnelDetectionTime

func (LookupAviatrixTransitGatewayResultOutput) VpcId

VPC-ID of GCP cloud provider.

func (LookupAviatrixTransitGatewayResultOutput) VpcReg

Region of cloud provider.

func (LookupAviatrixTransitGatewayResultOutput) Zone

Availability Zone for Azure.

type LookupAviatrixVpcArgs

type LookupAviatrixVpcArgs struct {
	// Name of the Aviatrix VPC.
	Name string `pulumi:"name"`
	// Filters the `routeTables` list to contain only public or private route tables. Valid values are 'private' or 'public'. If not set `routeTables` is not filtered.
	RouteTablesFilter *string `pulumi:"routeTablesFilter"`
}

A collection of arguments for invoking getAviatrixVpc.

type LookupAviatrixVpcOutputArgs

type LookupAviatrixVpcOutputArgs struct {
	// Name of the Aviatrix VPC.
	Name pulumi.StringInput `pulumi:"name"`
	// Filters the `routeTables` list to contain only public or private route tables. Valid values are 'private' or 'public'. If not set `routeTables` is not filtered.
	RouteTablesFilter pulumi.StringPtrInput `pulumi:"routeTablesFilter"`
}

A collection of arguments for invoking getAviatrixVpc.

func (LookupAviatrixVpcOutputArgs) ElementType

type LookupAviatrixVpcResult

type LookupAviatrixVpcResult struct {
	// Account name of the VPC created.
	AccountName string `pulumi:"accountName"`
	// List of OCI availability domains.
	AvailabilityDomains []string `pulumi:"availabilityDomains"`
	// Switch if the VPC created is an Aviatrix FireNet VPC or not.
	AviatrixFirenetVpc bool `pulumi:"aviatrixFirenetVpc"`
	// Switch if the VPC created is an Aviatrix Transit VPC or not.
	AviatrixTransitVpc bool `pulumi:"aviatrixTransitVpc"`
	// Azure vnet resource ID.
	AzureVnetResourceId string `pulumi:"azureVnetResourceId"`
	// Private subnet CIDR.
	Cidr string `pulumi:"cidr"`
	// Type of cloud service provider.
	CloudType int `pulumi:"cloudType"`
	// List of OCI fault domains.
	FaultDomains []string `pulumi:"faultDomains"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Private subnet name.
	Name string `pulumi:"name"`
	// Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider.
	NumOfSubnetPairs int `pulumi:"numOfSubnetPairs"`
	// List of private subnet of the VPC(AWS, Azure) created.
	PrivateSubnets []GetAviatrixVpcPrivateSubnet `pulumi:"privateSubnets"`
	// List of public subnet of the VPC(AWS, Azure) created.
	PublicSubnets []GetAviatrixVpcPublicSubnet `pulumi:"publicSubnets"`
	// Region of the VPC created.
	Region string `pulumi:"region"`
	// Resource group of the Azure VPC created.
	ResourceGroup string `pulumi:"resourceGroup"`
	// List of route table ids associated with this VPC. Only populated for AWS, AWSGov and Azure vpc.
	RouteTables       []string `pulumi:"routeTables"`
	RouteTablesFilter *string  `pulumi:"routeTablesFilter"`
	// Subnet size. Only supported for AWS, Azure provider.
	SubnetSize int `pulumi:"subnetSize"`
	// List of subnet of the VPC created.
	Subnets []GetAviatrixVpcSubnet `pulumi:"subnets"`
	// ID of the VPC created.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getAviatrixVpc.

func LookupAviatrixVpc

func LookupAviatrixVpc(ctx *pulumi.Context, args *LookupAviatrixVpcArgs, opts ...pulumi.InvokeOption) (*LookupAviatrixVpcResult, error)

The **aviatrix_vpc** data source provides details about a specific VPC created by the Aviatrix Controller.

This data source can prove useful when a module accepts any form of VPC detail as an input variable. For example, requiring a subnet CIDR specification when creating a gateway.

## Example Usage

```go package main

import (

"github.com/astipkovits/pulumi-aviatrix/sdk/go/aviatrix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err = aviatrix.LookupAviatrixVpc(ctx, &GetAviatrixVpcArgs{
			Name: "vpc-test",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAviatrixVpcResultOutput

type LookupAviatrixVpcResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAviatrixVpc.

func (LookupAviatrixVpcResultOutput) AccountName

Account name of the VPC created.

func (LookupAviatrixVpcResultOutput) AvailabilityDomains

func (o LookupAviatrixVpcResultOutput) AvailabilityDomains() pulumi.StringArrayOutput

List of OCI availability domains.

func (LookupAviatrixVpcResultOutput) AviatrixFirenetVpc

func (o LookupAviatrixVpcResultOutput) AviatrixFirenetVpc() pulumi.BoolOutput

Switch if the VPC created is an Aviatrix FireNet VPC or not.

func (LookupAviatrixVpcResultOutput) AviatrixTransitVpc

func (o LookupAviatrixVpcResultOutput) AviatrixTransitVpc() pulumi.BoolOutput

Switch if the VPC created is an Aviatrix Transit VPC or not.

func (LookupAviatrixVpcResultOutput) AzureVnetResourceId

func (o LookupAviatrixVpcResultOutput) AzureVnetResourceId() pulumi.StringOutput

Azure vnet resource ID.

func (LookupAviatrixVpcResultOutput) Cidr

Private subnet CIDR.

func (LookupAviatrixVpcResultOutput) CloudType

Type of cloud service provider.

func (LookupAviatrixVpcResultOutput) ElementType

func (LookupAviatrixVpcResultOutput) FaultDomains

List of OCI fault domains.

func (LookupAviatrixVpcResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAviatrixVpcResultOutput) Name

Private subnet name.

func (LookupAviatrixVpcResultOutput) NumOfSubnetPairs

func (o LookupAviatrixVpcResultOutput) NumOfSubnetPairs() pulumi.IntOutput

Number of public subnet and private subnet pair created. Only supported for AWS, Azure provider.

func (LookupAviatrixVpcResultOutput) PrivateSubnets

List of private subnet of the VPC(AWS, Azure) created.

func (LookupAviatrixVpcResultOutput) PublicSubnets

List of public subnet of the VPC(AWS, Azure) created.

func (LookupAviatrixVpcResultOutput) Region

Region of the VPC created.

func (LookupAviatrixVpcResultOutput) ResourceGroup

Resource group of the Azure VPC created.

func (LookupAviatrixVpcResultOutput) RouteTables

List of route table ids associated with this VPC. Only populated for AWS, AWSGov and Azure vpc.

func (LookupAviatrixVpcResultOutput) RouteTablesFilter

func (LookupAviatrixVpcResultOutput) SubnetSize

Subnet size. Only supported for AWS, Azure provider.

func (LookupAviatrixVpcResultOutput) Subnets

List of subnet of the VPC created.

func (LookupAviatrixVpcResultOutput) ToLookupAviatrixVpcResultOutput

func (o LookupAviatrixVpcResultOutput) ToLookupAviatrixVpcResultOutput() LookupAviatrixVpcResultOutput

func (LookupAviatrixVpcResultOutput) ToLookupAviatrixVpcResultOutputWithContext

func (o LookupAviatrixVpcResultOutput) ToLookupAviatrixVpcResultOutputWithContext(ctx context.Context) LookupAviatrixVpcResultOutput

func (LookupAviatrixVpcResultOutput) VpcId

ID of the VPC created.

type Provider

type Provider struct {
	pulumi.ProviderResourceState

	ControllerIp        pulumi.StringOutput    `pulumi:"controllerIp"`
	Password            pulumi.StringOutput    `pulumi:"password"`
	PathToCaCertificate pulumi.StringPtrOutput `pulumi:"pathToCaCertificate"`
	Username            pulumi.StringOutput    `pulumi:"username"`
}

The provider type for the aviatrix package. By default, resources use package-wide configuration settings, however an explicit `Provider` instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

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

func (*Provider) ElementType

func (*Provider) ElementType() reflect.Type

func (*Provider) ToProviderOutput

func (i *Provider) ToProviderOutput() ProviderOutput

func (*Provider) ToProviderOutputWithContext

func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type ProviderArgs

type ProviderArgs struct {
	ControllerIp pulumi.StringInput
	// Configuration block with settings to ignore tags across all resources.
	IgnoreTags            ProviderIgnoreTagsPtrInput
	Password              pulumi.StringInput
	PathToCaCertificate   pulumi.StringPtrInput
	SkipVersionValidation pulumi.BoolPtrInput
	Username              pulumi.StringInput
	VerifySslCertificate  pulumi.BoolPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type ProviderIgnoreTags

type ProviderIgnoreTags struct {
	KeyPrefixes []string `pulumi:"keyPrefixes"`
	Keys        []string `pulumi:"keys"`
}

type ProviderIgnoreTagsArgs

type ProviderIgnoreTagsArgs struct {
	KeyPrefixes pulumi.StringArrayInput `pulumi:"keyPrefixes"`
	Keys        pulumi.StringArrayInput `pulumi:"keys"`
}

func (ProviderIgnoreTagsArgs) ElementType

func (ProviderIgnoreTagsArgs) ElementType() reflect.Type

func (ProviderIgnoreTagsArgs) ToProviderIgnoreTagsOutput

func (i ProviderIgnoreTagsArgs) ToProviderIgnoreTagsOutput() ProviderIgnoreTagsOutput

func (ProviderIgnoreTagsArgs) ToProviderIgnoreTagsOutputWithContext

func (i ProviderIgnoreTagsArgs) ToProviderIgnoreTagsOutputWithContext(ctx context.Context) ProviderIgnoreTagsOutput

func (ProviderIgnoreTagsArgs) ToProviderIgnoreTagsPtrOutput

func (i ProviderIgnoreTagsArgs) ToProviderIgnoreTagsPtrOutput() ProviderIgnoreTagsPtrOutput

func (ProviderIgnoreTagsArgs) ToProviderIgnoreTagsPtrOutputWithContext

func (i ProviderIgnoreTagsArgs) ToProviderIgnoreTagsPtrOutputWithContext(ctx context.Context) ProviderIgnoreTagsPtrOutput

type ProviderIgnoreTagsInput

type ProviderIgnoreTagsInput interface {
	pulumi.Input

	ToProviderIgnoreTagsOutput() ProviderIgnoreTagsOutput
	ToProviderIgnoreTagsOutputWithContext(context.Context) ProviderIgnoreTagsOutput
}

ProviderIgnoreTagsInput is an input type that accepts ProviderIgnoreTagsArgs and ProviderIgnoreTagsOutput values. You can construct a concrete instance of `ProviderIgnoreTagsInput` via:

ProviderIgnoreTagsArgs{...}

type ProviderIgnoreTagsOutput

type ProviderIgnoreTagsOutput struct{ *pulumi.OutputState }

func (ProviderIgnoreTagsOutput) ElementType

func (ProviderIgnoreTagsOutput) ElementType() reflect.Type

func (ProviderIgnoreTagsOutput) KeyPrefixes

func (ProviderIgnoreTagsOutput) Keys

func (ProviderIgnoreTagsOutput) ToProviderIgnoreTagsOutput

func (o ProviderIgnoreTagsOutput) ToProviderIgnoreTagsOutput() ProviderIgnoreTagsOutput

func (ProviderIgnoreTagsOutput) ToProviderIgnoreTagsOutputWithContext

func (o ProviderIgnoreTagsOutput) ToProviderIgnoreTagsOutputWithContext(ctx context.Context) ProviderIgnoreTagsOutput

func (ProviderIgnoreTagsOutput) ToProviderIgnoreTagsPtrOutput

func (o ProviderIgnoreTagsOutput) ToProviderIgnoreTagsPtrOutput() ProviderIgnoreTagsPtrOutput

func (ProviderIgnoreTagsOutput) ToProviderIgnoreTagsPtrOutputWithContext

func (o ProviderIgnoreTagsOutput) ToProviderIgnoreTagsPtrOutputWithContext(ctx context.Context) ProviderIgnoreTagsPtrOutput

type ProviderIgnoreTagsPtrInput

type ProviderIgnoreTagsPtrInput interface {
	pulumi.Input

	ToProviderIgnoreTagsPtrOutput() ProviderIgnoreTagsPtrOutput
	ToProviderIgnoreTagsPtrOutputWithContext(context.Context) ProviderIgnoreTagsPtrOutput
}

ProviderIgnoreTagsPtrInput is an input type that accepts ProviderIgnoreTagsArgs, ProviderIgnoreTagsPtr and ProviderIgnoreTagsPtrOutput values. You can construct a concrete instance of `ProviderIgnoreTagsPtrInput` via:

        ProviderIgnoreTagsArgs{...}

or:

        nil

type ProviderIgnoreTagsPtrOutput

type ProviderIgnoreTagsPtrOutput struct{ *pulumi.OutputState }

func (ProviderIgnoreTagsPtrOutput) Elem

func (ProviderIgnoreTagsPtrOutput) ElementType

func (ProviderIgnoreTagsPtrOutput) KeyPrefixes

func (ProviderIgnoreTagsPtrOutput) Keys

func (ProviderIgnoreTagsPtrOutput) ToProviderIgnoreTagsPtrOutput

func (o ProviderIgnoreTagsPtrOutput) ToProviderIgnoreTagsPtrOutput() ProviderIgnoreTagsPtrOutput

func (ProviderIgnoreTagsPtrOutput) ToProviderIgnoreTagsPtrOutputWithContext

func (o ProviderIgnoreTagsPtrOutput) ToProviderIgnoreTagsPtrOutputWithContext(ctx context.Context) ProviderIgnoreTagsPtrOutput

type ProviderInput

type ProviderInput interface {
	pulumi.Input

	ToProviderOutput() ProviderOutput
	ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}

type ProviderOutput

type ProviderOutput struct{ *pulumi.OutputState }

func (ProviderOutput) ControllerIp

func (o ProviderOutput) ControllerIp() pulumi.StringOutput

func (ProviderOutput) ElementType

func (ProviderOutput) ElementType() reflect.Type

func (ProviderOutput) Password

func (o ProviderOutput) Password() pulumi.StringOutput

func (ProviderOutput) PathToCaCertificate

func (o ProviderOutput) PathToCaCertificate() pulumi.StringPtrOutput

func (ProviderOutput) ToProviderOutput

func (o ProviderOutput) ToProviderOutput() ProviderOutput

func (ProviderOutput) ToProviderOutputWithContext

func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

func (ProviderOutput) Username

func (o ProviderOutput) Username() pulumi.StringOutput

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL