import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * The `vsphere.DistributedPortGroup` resource can be used to manage * distributed port groups connected to vSphere Distributed Switches (VDS). * A vSphere Distributed Switch can be managed by the * `vsphere.DistributedVirtualSwitch` resource. * * Distributed port groups can be used as networks for virtual machines, allowing * the virtual machines to use the networking supplied by a vSphere Distributed * Switch, with a set of policies that apply to that individual network, if * desired. * * * For an overview on vSphere networking concepts, refer to the vSphere * [product documentation][ref-vsphere-net-concepts]. * * * For more information on distributed port groups, refer to the vSphere * [product documentation][ref-vsphere-dvportgroup]. * * [ref-vsphere-net-concepts]: https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vsphere-networking-8-0/introduction-to-vsphere-networking.html * [ref-vsphere-dvportgroup]: https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vsphere-networking-8-0/basic-networking-with-vnetwork-distributed-switches/dvport-groups.html * * > **NOTE:** This resource requires vCenter and is not available on * direct ESXi host connections. * * ## Example Usage * * The configuration below builds on the example given in the * `vsphere.DistributedVirtualSwitch` resource by * adding the `vsphere.DistributedPortGroup` resource, attaching itself to the * vSphere Distributed Switch and assigning VLAN ID 1000. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vsphere from "@pulumi/vsphere"; * * const config = new pulumi.Config(); * const hosts = config.getObject("hosts") || [ * "esxi-01.example.com", * "esxi-02.example.com", * "esxi-03.example.com", * ]; * const networkInterfaces = config.getObject("networkInterfaces") || [ * "vmnic0", * "vmnic1", * "vmnic2", * "vmnic3", * ]; * const datacenter = vsphere.getDatacenter({ * name: "dc-01", * }); * const host = (new Array(hosts.length)).map((_, i) => i).map(__index => (vsphere.getHost({ * name: hosts[__index], * datacenterId: _arg0_.id, * }))); * const vds = new vsphere.DistributedVirtualSwitch("vds", { * name: "vds-01", * datacenterId: datacenter.then(datacenter => datacenter.id), * uplinks: [ * "uplink1", * "uplink2", * "uplink3", * "uplink4", * ], * activeUplinks: [ * "uplink1", * "uplink2", * ], * standbyUplinks: [ * "uplink3", * "uplink4", * ], * hosts: [ * { * hostSystemId: host[0].then(host => host.id), * devices: [networkInterfaces], * }, * { * hostSystemId: host[1].then(host => host.id), * devices: [networkInterfaces], * }, * { * hostSystemId: host[2].then(host => host.id), * devices: [networkInterfaces], * }, * ], * }); * const pg = new vsphere.DistributedPortGroup("pg", { * name: "pg-01", * distributedVirtualSwitchUuid: vds.id, * vlanId: 1000, * }); * ``` * * ### Overriding VDS policies * * All of the default port policies available in the * `vsphere.DistributedVirtualSwitch` resource can be overridden on the port * group level by specifying new settings for them. * * As an example, we also take this example from the * `vsphere.DistributedVirtualSwitch` resource where we manually specify our * uplink count and uplink order. While the vSphere Distributed Switch has a * default policy of using the first uplink as an active uplink and the second * one as a standby, the overridden port group policy means that both uplinks * will be used as active uplinks in this specific port group. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vsphere from "@pulumi/vsphere"; * * const vds = new vsphere.DistributedVirtualSwitch("vds", { * name: "vds-01", * datacenterId: datacenter.id, * uplinks: [ * "uplink1", * "uplink2", * ], * activeUplinks: ["uplink1"], * standbyUplinks: ["uplink2"], * }); * const pg = new vsphere.DistributedPortGroup("pg", { * name: "pg-01", * distributedVirtualSwitchUuid: vds.id, * vlanId: 1000, * activeUplinks: [ * "uplink1", * "uplink2", * ], * standbyUplinks: [], * }); * ``` * * ## Import * * An existing port group can be imported into this resource using * * the managed object id of the port group, via the following command: * * [docs-import]: https://developer.hashicorp.com/terraform/cli/import * * ```sh * $ pulumi import vsphere:index/distributedPortGroup:DistributedPortGroup pg /dc-01/network/pg-01 * ``` * * The above would import the port group named `pg-01` that is located in the `dc-01` * * datacenter. */ export declare class DistributedPortGroup extends pulumi.CustomResource { /** * Get an existing DistributedPortGroup resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: DistributedPortGroupState, opts?: pulumi.CustomResourceOptions): DistributedPortGroup; /** * Returns true if the given object is an instance of DistributedPortGroup. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is DistributedPortGroup; /** * List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ readonly activeUplinks: pulumi.Output; /** * Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than * that of its own. */ readonly allowForgedTransmits: pulumi.Output; /** * Controls whether or not the Media Access Control (MAC) address can be changed. */ readonly allowMacChanges: pulumi.Output; /** * Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. */ readonly allowPromiscuous: pulumi.Output; /** * Allows the port group to create additional ports * past the limit specified in `numberOfPorts` if necessary. Default: `true`. * * > **NOTE:** Using `autoExpand` with a statically defined `numberOfPorts` * may lead to errors when the port count grows past the amount specified. If you * specify `numberOfPorts`, you may wish to set `autoExpand` to `false`. */ readonly autoExpand: pulumi.Output; /** * Indicates whether to block all ports by default. */ readonly blockAllPorts: pulumi.Output; /** * Allow the blocked setting of an individual port to override the setting in the portgroup. */ readonly blockOverrideAllowed: pulumi.Output; /** * Enable beacon probing on the ports this policy applies to. */ readonly checkBeacon: pulumi.Output; /** * The current version of the port group configuration, * incremented by subsequent updates to the port group. */ readonly configVersion: pulumi.Output; /** * Map of custom attribute ids to attribute * value string to set for port group. * * > **NOTE:** Custom attributes are not supported on direct ESXi host * connections and require vCenter Server. */ readonly customAttributes: pulumi.Output<{ [key: string]: string; } | undefined>; /** * An optional description for the port group. */ readonly description: pulumi.Output; /** * Allow VMDirectPath Gen2 on the ports this policy applies to. */ readonly directpathGen2Allowed: pulumi.Output; /** * The ID of the VDS to add the * port group to. Forces a new resource if changed. */ readonly distributedVirtualSwitchUuid: pulumi.Output; /** * The average egress bandwidth in bits per second if egress shaping is enabled on the port. */ readonly egressShapingAverageBandwidth: pulumi.Output; /** * The maximum egress burst size allowed in bytes if egress shaping is enabled on the port. */ readonly egressShapingBurstSize: pulumi.Output; /** * True if the traffic shaper is enabled for egress traffic on the port. */ readonly egressShapingEnabled: pulumi.Output; /** * The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port. */ readonly egressShapingPeakBandwidth: pulumi.Output; /** * If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. */ readonly failback: pulumi.Output; /** * The average ingress bandwidth in bits per second if ingress shaping is enabled on the port. */ readonly ingressShapingAverageBandwidth: pulumi.Output; /** * The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port. */ readonly ingressShapingBurstSize: pulumi.Output; /** * True if the traffic shaper is enabled for ingress traffic on the port. */ readonly ingressShapingEnabled: pulumi.Output; /** * The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port. */ readonly ingressShapingPeakBandwidth: pulumi.Output; /** * The generated UUID of the port group. */ readonly key: pulumi.Output; /** * Whether or not to enable LACP on all uplink ports. */ readonly lacpEnabled: pulumi.Output; /** * The uplink LACP mode to use. Can be one of active or passive. */ readonly lacpMode: pulumi.Output; /** * Allow a live port to be moved in and out of the portgroup. */ readonly livePortMovingAllowed: pulumi.Output; /** * The name of the port group. */ readonly name: pulumi.Output; /** * Indicates whether to enable netflow on all ports. */ readonly netflowEnabled: pulumi.Output; /** * Allow the enabling or disabling of Netflow on a port, contrary to the policy in the portgroup. */ readonly netflowOverrideAllowed: pulumi.Output; /** * The key of a network resource pool * to associate with this port group. The default is `-1`, which implies no * association. */ readonly networkResourcePoolKey: pulumi.Output; /** * Allow the network resource pool of an individual port to override the setting in the portgroup. */ readonly networkResourcePoolOverrideAllowed: pulumi.Output; /** * If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. */ readonly notifySwitches: pulumi.Output; /** * The number of ports available on this port * group. Cannot be decreased below the amount of used ports on the port group. */ readonly numberOfPorts: pulumi.Output; /** * Reset the setting of any ports in this portgroup back to the default setting when the port disconnects. */ readonly portConfigResetAtDisconnect: pulumi.Output; /** * An optional formatting policy for naming of * the ports in this port group. See the `portNameFormat` attribute listed * [here][ext-vsphere-portname-format] for details on the format syntax. * * [ext-vsphere-portname-format]: https://developer.broadcom.com/xapis/virtual-infrastructure-json-api/latest/data-structures/DVPortgroupConfigInfo/ */ readonly portNameFormat: pulumi.Output; /** * The secondary VLAN ID for this port. */ readonly portPrivateSecondaryVlanId: pulumi.Output; /** * Allow security policy settings on a port to override those on the portgroup. */ readonly securityPolicyOverrideAllowed: pulumi.Output; /** * Allow the traffic shaping policies of an individual port to override the settings in the portgroup. */ readonly shapingOverrideAllowed: pulumi.Output; /** * List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ readonly standbyUplinks: pulumi.Output; /** * A list of tag IDs to apply to this object. */ readonly tags: pulumi.Output; /** * The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, * failover_explicit, or loadbalance_loadbased. */ readonly teamingPolicy: pulumi.Output; /** * Allow any filter policies set on the individual port to override those in the portgroup. */ readonly trafficFilterOverrideAllowed: pulumi.Output; /** * If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet * forwarded done by the switch. */ readonly txUplink: pulumi.Output; /** * The port group type. Can be one of `earlyBinding` (static * binding) or `ephemeral`. Default: `earlyBinding`. */ readonly type: pulumi.Output; /** * Allow the uplink teaming policies on a port to override those on the portgroup. */ readonly uplinkTeamingOverrideAllowed: pulumi.Output; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ readonly vlanId: pulumi.Output; /** * Allow the VLAN configuration on a port to override those on the portgroup. */ readonly vlanOverrideAllowed: pulumi.Output; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ readonly vlanRanges: pulumi.Output; /** * Create a DistributedPortGroup resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: DistributedPortGroupArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering DistributedPortGroup resources. */ export interface DistributedPortGroupState { /** * List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ activeUplinks?: pulumi.Input[]>; /** * Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than * that of its own. */ allowForgedTransmits?: pulumi.Input; /** * Controls whether or not the Media Access Control (MAC) address can be changed. */ allowMacChanges?: pulumi.Input; /** * Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. */ allowPromiscuous?: pulumi.Input; /** * Allows the port group to create additional ports * past the limit specified in `numberOfPorts` if necessary. Default: `true`. * * > **NOTE:** Using `autoExpand` with a statically defined `numberOfPorts` * may lead to errors when the port count grows past the amount specified. If you * specify `numberOfPorts`, you may wish to set `autoExpand` to `false`. */ autoExpand?: pulumi.Input; /** * Indicates whether to block all ports by default. */ blockAllPorts?: pulumi.Input; /** * Allow the blocked setting of an individual port to override the setting in the portgroup. */ blockOverrideAllowed?: pulumi.Input; /** * Enable beacon probing on the ports this policy applies to. */ checkBeacon?: pulumi.Input; /** * The current version of the port group configuration, * incremented by subsequent updates to the port group. */ configVersion?: pulumi.Input; /** * Map of custom attribute ids to attribute * value string to set for port group. * * > **NOTE:** Custom attributes are not supported on direct ESXi host * connections and require vCenter Server. */ customAttributes?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * An optional description for the port group. */ description?: pulumi.Input; /** * Allow VMDirectPath Gen2 on the ports this policy applies to. */ directpathGen2Allowed?: pulumi.Input; /** * The ID of the VDS to add the * port group to. Forces a new resource if changed. */ distributedVirtualSwitchUuid?: pulumi.Input; /** * The average egress bandwidth in bits per second if egress shaping is enabled on the port. */ egressShapingAverageBandwidth?: pulumi.Input; /** * The maximum egress burst size allowed in bytes if egress shaping is enabled on the port. */ egressShapingBurstSize?: pulumi.Input; /** * True if the traffic shaper is enabled for egress traffic on the port. */ egressShapingEnabled?: pulumi.Input; /** * The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port. */ egressShapingPeakBandwidth?: pulumi.Input; /** * If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. */ failback?: pulumi.Input; /** * The average ingress bandwidth in bits per second if ingress shaping is enabled on the port. */ ingressShapingAverageBandwidth?: pulumi.Input; /** * The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port. */ ingressShapingBurstSize?: pulumi.Input; /** * True if the traffic shaper is enabled for ingress traffic on the port. */ ingressShapingEnabled?: pulumi.Input; /** * The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port. */ ingressShapingPeakBandwidth?: pulumi.Input; /** * The generated UUID of the port group. */ key?: pulumi.Input; /** * Whether or not to enable LACP on all uplink ports. */ lacpEnabled?: pulumi.Input; /** * The uplink LACP mode to use. Can be one of active or passive. */ lacpMode?: pulumi.Input; /** * Allow a live port to be moved in and out of the portgroup. */ livePortMovingAllowed?: pulumi.Input; /** * The name of the port group. */ name?: pulumi.Input; /** * Indicates whether to enable netflow on all ports. */ netflowEnabled?: pulumi.Input; /** * Allow the enabling or disabling of Netflow on a port, contrary to the policy in the portgroup. */ netflowOverrideAllowed?: pulumi.Input; /** * The key of a network resource pool * to associate with this port group. The default is `-1`, which implies no * association. */ networkResourcePoolKey?: pulumi.Input; /** * Allow the network resource pool of an individual port to override the setting in the portgroup. */ networkResourcePoolOverrideAllowed?: pulumi.Input; /** * If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. */ notifySwitches?: pulumi.Input; /** * The number of ports available on this port * group. Cannot be decreased below the amount of used ports on the port group. */ numberOfPorts?: pulumi.Input; /** * Reset the setting of any ports in this portgroup back to the default setting when the port disconnects. */ portConfigResetAtDisconnect?: pulumi.Input; /** * An optional formatting policy for naming of * the ports in this port group. See the `portNameFormat` attribute listed * [here][ext-vsphere-portname-format] for details on the format syntax. * * [ext-vsphere-portname-format]: https://developer.broadcom.com/xapis/virtual-infrastructure-json-api/latest/data-structures/DVPortgroupConfigInfo/ */ portNameFormat?: pulumi.Input; /** * The secondary VLAN ID for this port. */ portPrivateSecondaryVlanId?: pulumi.Input; /** * Allow security policy settings on a port to override those on the portgroup. */ securityPolicyOverrideAllowed?: pulumi.Input; /** * Allow the traffic shaping policies of an individual port to override the settings in the portgroup. */ shapingOverrideAllowed?: pulumi.Input; /** * List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ standbyUplinks?: pulumi.Input[]>; /** * A list of tag IDs to apply to this object. */ tags?: pulumi.Input[]>; /** * The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, * failover_explicit, or loadbalance_loadbased. */ teamingPolicy?: pulumi.Input; /** * Allow any filter policies set on the individual port to override those in the portgroup. */ trafficFilterOverrideAllowed?: pulumi.Input; /** * If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet * forwarded done by the switch. */ txUplink?: pulumi.Input; /** * The port group type. Can be one of `earlyBinding` (static * binding) or `ephemeral`. Default: `earlyBinding`. */ type?: pulumi.Input; /** * Allow the uplink teaming policies on a port to override those on the portgroup. */ uplinkTeamingOverrideAllowed?: pulumi.Input; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ vlanId?: pulumi.Input; /** * Allow the VLAN configuration on a port to override those on the portgroup. */ vlanOverrideAllowed?: pulumi.Input; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ vlanRanges?: pulumi.Input[]>; } /** * The set of arguments for constructing a DistributedPortGroup resource. */ export interface DistributedPortGroupArgs { /** * List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ activeUplinks?: pulumi.Input[]>; /** * Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than * that of its own. */ allowForgedTransmits?: pulumi.Input; /** * Controls whether or not the Media Access Control (MAC) address can be changed. */ allowMacChanges?: pulumi.Input; /** * Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. */ allowPromiscuous?: pulumi.Input; /** * Allows the port group to create additional ports * past the limit specified in `numberOfPorts` if necessary. Default: `true`. * * > **NOTE:** Using `autoExpand` with a statically defined `numberOfPorts` * may lead to errors when the port count grows past the amount specified. If you * specify `numberOfPorts`, you may wish to set `autoExpand` to `false`. */ autoExpand?: pulumi.Input; /** * Indicates whether to block all ports by default. */ blockAllPorts?: pulumi.Input; /** * Allow the blocked setting of an individual port to override the setting in the portgroup. */ blockOverrideAllowed?: pulumi.Input; /** * Enable beacon probing on the ports this policy applies to. */ checkBeacon?: pulumi.Input; /** * Map of custom attribute ids to attribute * value string to set for port group. * * > **NOTE:** Custom attributes are not supported on direct ESXi host * connections and require vCenter Server. */ customAttributes?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * An optional description for the port group. */ description?: pulumi.Input; /** * Allow VMDirectPath Gen2 on the ports this policy applies to. */ directpathGen2Allowed?: pulumi.Input; /** * The ID of the VDS to add the * port group to. Forces a new resource if changed. */ distributedVirtualSwitchUuid: pulumi.Input; /** * The average egress bandwidth in bits per second if egress shaping is enabled on the port. */ egressShapingAverageBandwidth?: pulumi.Input; /** * The maximum egress burst size allowed in bytes if egress shaping is enabled on the port. */ egressShapingBurstSize?: pulumi.Input; /** * True if the traffic shaper is enabled for egress traffic on the port. */ egressShapingEnabled?: pulumi.Input; /** * The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port. */ egressShapingPeakBandwidth?: pulumi.Input; /** * If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. */ failback?: pulumi.Input; /** * The average ingress bandwidth in bits per second if ingress shaping is enabled on the port. */ ingressShapingAverageBandwidth?: pulumi.Input; /** * The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port. */ ingressShapingBurstSize?: pulumi.Input; /** * True if the traffic shaper is enabled for ingress traffic on the port. */ ingressShapingEnabled?: pulumi.Input; /** * The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port. */ ingressShapingPeakBandwidth?: pulumi.Input; /** * Whether or not to enable LACP on all uplink ports. */ lacpEnabled?: pulumi.Input; /** * The uplink LACP mode to use. Can be one of active or passive. */ lacpMode?: pulumi.Input; /** * Allow a live port to be moved in and out of the portgroup. */ livePortMovingAllowed?: pulumi.Input; /** * The name of the port group. */ name?: pulumi.Input; /** * Indicates whether to enable netflow on all ports. */ netflowEnabled?: pulumi.Input; /** * Allow the enabling or disabling of Netflow on a port, contrary to the policy in the portgroup. */ netflowOverrideAllowed?: pulumi.Input; /** * The key of a network resource pool * to associate with this port group. The default is `-1`, which implies no * association. */ networkResourcePoolKey?: pulumi.Input; /** * Allow the network resource pool of an individual port to override the setting in the portgroup. */ networkResourcePoolOverrideAllowed?: pulumi.Input; /** * If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. */ notifySwitches?: pulumi.Input; /** * The number of ports available on this port * group. Cannot be decreased below the amount of used ports on the port group. */ numberOfPorts?: pulumi.Input; /** * Reset the setting of any ports in this portgroup back to the default setting when the port disconnects. */ portConfigResetAtDisconnect?: pulumi.Input; /** * An optional formatting policy for naming of * the ports in this port group. See the `portNameFormat` attribute listed * [here][ext-vsphere-portname-format] for details on the format syntax. * * [ext-vsphere-portname-format]: https://developer.broadcom.com/xapis/virtual-infrastructure-json-api/latest/data-structures/DVPortgroupConfigInfo/ */ portNameFormat?: pulumi.Input; /** * The secondary VLAN ID for this port. */ portPrivateSecondaryVlanId?: pulumi.Input; /** * Allow security policy settings on a port to override those on the portgroup. */ securityPolicyOverrideAllowed?: pulumi.Input; /** * Allow the traffic shaping policies of an individual port to override the settings in the portgroup. */ shapingOverrideAllowed?: pulumi.Input; /** * List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. */ standbyUplinks?: pulumi.Input[]>; /** * A list of tag IDs to apply to this object. */ tags?: pulumi.Input[]>; /** * The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, * failover_explicit, or loadbalance_loadbased. */ teamingPolicy?: pulumi.Input; /** * Allow any filter policies set on the individual port to override those in the portgroup. */ trafficFilterOverrideAllowed?: pulumi.Input; /** * If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet * forwarded done by the switch. */ txUplink?: pulumi.Input; /** * The port group type. Can be one of `earlyBinding` (static * binding) or `ephemeral`. Default: `earlyBinding`. */ type?: pulumi.Input; /** * Allow the uplink teaming policies on a port to override those on the portgroup. */ uplinkTeamingOverrideAllowed?: pulumi.Input; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ vlanId?: pulumi.Input; /** * Allow the VLAN configuration on a port to override those on the portgroup. */ vlanOverrideAllowed?: pulumi.Input; /** * The VLAN ID for single VLAN mode. 0 denotes no VLAN. */ vlanRanges?: pulumi.Input[]>; }