Documentation
¶
Index ¶
- type GroupV2
- type GroupV2Args
- type GroupV2Array
- type GroupV2ArrayInput
- type GroupV2ArrayOutput
- type GroupV2Input
- type GroupV2Map
- type GroupV2MapInput
- type GroupV2MapOutput
- type GroupV2Output
- func (o GroupV2Output) AdminStateUp() pulumi.BoolPtrOutput
- func (o GroupV2Output) Description() pulumi.StringPtrOutput
- func (o GroupV2Output) EgressFirewallPolicyId() pulumi.StringPtrOutput
- func (GroupV2Output) ElementType() reflect.Type
- func (o GroupV2Output) IngressFirewallPolicyId() pulumi.StringPtrOutput
- func (o GroupV2Output) Name() pulumi.StringOutput
- func (o GroupV2Output) Ports() pulumi.StringArrayOutput
- func (o GroupV2Output) ProjectId() pulumi.StringOutput
- func (o GroupV2Output) Region() pulumi.StringOutput
- func (o GroupV2Output) Shared() pulumi.BoolPtrOutput
- func (o GroupV2Output) Status() pulumi.StringOutput
- func (o GroupV2Output) TenantId() pulumi.StringOutput
- func (o GroupV2Output) ToGroupV2Output() GroupV2Output
- func (o GroupV2Output) ToGroupV2OutputWithContext(ctx context.Context) GroupV2Output
- type GroupV2State
- type PolicyV2
- type PolicyV2Args
- type PolicyV2Array
- type PolicyV2ArrayInput
- type PolicyV2ArrayOutput
- type PolicyV2Input
- type PolicyV2Map
- type PolicyV2MapInput
- type PolicyV2MapOutput
- type PolicyV2Output
- func (o PolicyV2Output) Audited() pulumi.BoolPtrOutput
- func (o PolicyV2Output) Description() pulumi.StringPtrOutput
- func (PolicyV2Output) ElementType() reflect.Type
- func (o PolicyV2Output) Name() pulumi.StringOutput
- func (o PolicyV2Output) ProjectId() pulumi.StringOutput
- func (o PolicyV2Output) Region() pulumi.StringOutput
- func (o PolicyV2Output) Rules() pulumi.StringArrayOutput
- func (o PolicyV2Output) Shared() pulumi.BoolPtrOutput
- func (o PolicyV2Output) TenantId() pulumi.StringOutput
- func (o PolicyV2Output) ToPolicyV2Output() PolicyV2Output
- func (o PolicyV2Output) ToPolicyV2OutputWithContext(ctx context.Context) PolicyV2Output
- type PolicyV2State
- type RuleV2
- type RuleV2Args
- type RuleV2Array
- type RuleV2ArrayInput
- type RuleV2ArrayOutput
- type RuleV2Input
- type RuleV2Map
- type RuleV2MapInput
- type RuleV2MapOutput
- type RuleV2Output
- func (o RuleV2Output) Action() pulumi.StringPtrOutput
- func (o RuleV2Output) Description() pulumi.StringPtrOutput
- func (o RuleV2Output) DestinationIpAddress() pulumi.StringPtrOutput
- func (o RuleV2Output) DestinationPort() pulumi.StringPtrOutput
- func (RuleV2Output) ElementType() reflect.Type
- func (o RuleV2Output) Enabled() pulumi.BoolPtrOutput
- func (o RuleV2Output) IpVersion() pulumi.IntPtrOutput
- func (o RuleV2Output) Name() pulumi.StringOutput
- func (o RuleV2Output) ProjectId() pulumi.StringOutput
- func (o RuleV2Output) Protocol() pulumi.StringPtrOutput
- func (o RuleV2Output) Region() pulumi.StringOutput
- func (o RuleV2Output) Shared() pulumi.BoolPtrOutput
- func (o RuleV2Output) SourceIpAddress() pulumi.StringPtrOutput
- func (o RuleV2Output) SourcePort() pulumi.StringPtrOutput
- func (o RuleV2Output) TenantId() pulumi.StringOutput
- func (o RuleV2Output) ToRuleV2Output() RuleV2Output
- func (o RuleV2Output) ToRuleV2OutputWithContext(ctx context.Context) RuleV2Output
- type RuleV2State
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GroupV2 ¶
type GroupV2 struct { pulumi.CustomResourceState // Administrative up/down status for the firewall // group (must be "true" or "false" if provided - defaults to "true"). // Changing this updates the `adminStateUp` of an existing firewall group. AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // A description for the firewall group. Changing this // updates the `description` of an existing firewall group. Description pulumi.StringPtrOutput `pulumi:"description"` // The egress firewall policy resource // id for the firewall group. Changing this updates the // `egressFirewallPolicyId` of an existing firewall group. EgressFirewallPolicyId pulumi.StringPtrOutput `pulumi:"egressFirewallPolicyId"` // The ingress firewall policy resource // id for the firewall group. Changing this updates the // `ingressFirewallPolicyId` of an existing firewall group. IngressFirewallPolicyId pulumi.StringPtrOutput `pulumi:"ingressFirewallPolicyId"` // A name for the firewall group. Changing this // updates the `name` of an existing firewall. Name pulumi.StringOutput `pulumi:"name"` // Port(s) to associate this firewall group // with. Must be a list of strings. Changing this updates the associated ports // of an existing firewall group. Ports pulumi.StringArrayOutput `pulumi:"ports"` // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall group. Required if admin wants // to create a firewall group for another project. Changing this creates a new // firewall group. ProjectId pulumi.StringOutput `pulumi:"projectId"` // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall group. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall group. Region pulumi.StringOutput `pulumi:"region"` // or "false" if provided). If this is "true" the firewall group is visible to, // and can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall group. Only administrative users // can specify if the firewall group should be shared. Shared pulumi.BoolPtrOutput `pulumi:"shared"` // The status of the firewall group. Status pulumi.StringOutput `pulumi:"status"` // This argument conflicts and is interchangeable with // `projectId`. The owner of the firewall group. Required if admin wants to // create a firewall group for another tenant. Changing this creates a new // firewall group. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a v2 firewall group resource within OpenStack.
> **Note:** Firewall v2 has no support for OVN currently.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { rule1, err := firewall.NewRuleV2(ctx, "rule_1", &firewall.RuleV2Args{ Name: pulumi.String("firewall_rule_2"), Description: pulumi.String("drop TELNET traffic"), Action: pulumi.String("deny"), Protocol: pulumi.String("tcp"), DestinationPort: pulumi.String("23"), Enabled: pulumi.Bool(true), }) if err != nil { return err } rule2, err := firewall.NewRuleV2(ctx, "rule_2", &firewall.RuleV2Args{ Name: pulumi.String("firewall_rule_1"), Description: pulumi.String("drop NTP traffic"), Action: pulumi.String("deny"), Protocol: pulumi.String("udp"), DestinationPort: pulumi.String("123"), Enabled: pulumi.Bool(false), }) if err != nil { return err } policy1, err := firewall.NewPolicyV2(ctx, "policy_1", &firewall.PolicyV2Args{ Name: pulumi.String("firewall_ingress_policy"), Rules: pulumi.StringArray{ rule1.ID(), }, }) if err != nil { return err } policy2, err := firewall.NewPolicyV2(ctx, "policy_2", &firewall.PolicyV2Args{ Name: pulumi.String("firewall_egress_policy"), Rules: pulumi.StringArray{ rule2.ID(), }, }) if err != nil { return err } _, err = firewall.NewGroupV2(ctx, "group_1", &firewall.GroupV2Args{ Name: pulumi.String("firewall_group"), IngressFirewallPolicyId: policy1.ID(), EgressFirewallPolicyId: policy2.ID(), }) if err != nil { return err } return nil }) }
```
## Import
Firewall groups can be imported using the `id`, e.g.
```sh $ pulumi import openstack:firewall/groupV2:GroupV2 group_1 c9e39fb2-ce20-46c8-a964-25f3898c7a97 ```
func GetGroupV2 ¶
func GetGroupV2(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GroupV2State, opts ...pulumi.ResourceOption) (*GroupV2, error)
GetGroupV2 gets an existing GroupV2 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 NewGroupV2 ¶
func NewGroupV2(ctx *pulumi.Context, name string, args *GroupV2Args, opts ...pulumi.ResourceOption) (*GroupV2, error)
NewGroupV2 registers a new resource with the given unique name, arguments, and options.
func (*GroupV2) ElementType ¶
func (*GroupV2) ToGroupV2Output ¶
func (i *GroupV2) ToGroupV2Output() GroupV2Output
func (*GroupV2) ToGroupV2OutputWithContext ¶
func (i *GroupV2) ToGroupV2OutputWithContext(ctx context.Context) GroupV2Output
type GroupV2Args ¶
type GroupV2Args struct { // Administrative up/down status for the firewall // group (must be "true" or "false" if provided - defaults to "true"). // Changing this updates the `adminStateUp` of an existing firewall group. AdminStateUp pulumi.BoolPtrInput // A description for the firewall group. Changing this // updates the `description` of an existing firewall group. Description pulumi.StringPtrInput // The egress firewall policy resource // id for the firewall group. Changing this updates the // `egressFirewallPolicyId` of an existing firewall group. EgressFirewallPolicyId pulumi.StringPtrInput // The ingress firewall policy resource // id for the firewall group. Changing this updates the // `ingressFirewallPolicyId` of an existing firewall group. IngressFirewallPolicyId pulumi.StringPtrInput // A name for the firewall group. Changing this // updates the `name` of an existing firewall. Name pulumi.StringPtrInput // Port(s) to associate this firewall group // with. Must be a list of strings. Changing this updates the associated ports // of an existing firewall group. Ports pulumi.StringArrayInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall group. Required if admin wants // to create a firewall group for another project. Changing this creates a new // firewall group. ProjectId pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall group. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall group. Region pulumi.StringPtrInput // or "false" if provided). If this is "true" the firewall group is visible to, // and can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall group. Only administrative users // can specify if the firewall group should be shared. Shared pulumi.BoolPtrInput // This argument conflicts and is interchangeable with // `projectId`. The owner of the firewall group. Required if admin wants to // create a firewall group for another tenant. Changing this creates a new // firewall group. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a GroupV2 resource.
func (GroupV2Args) ElementType ¶
func (GroupV2Args) ElementType() reflect.Type
type GroupV2Array ¶
type GroupV2Array []GroupV2Input
func (GroupV2Array) ElementType ¶
func (GroupV2Array) ElementType() reflect.Type
func (GroupV2Array) ToGroupV2ArrayOutput ¶
func (i GroupV2Array) ToGroupV2ArrayOutput() GroupV2ArrayOutput
func (GroupV2Array) ToGroupV2ArrayOutputWithContext ¶
func (i GroupV2Array) ToGroupV2ArrayOutputWithContext(ctx context.Context) GroupV2ArrayOutput
type GroupV2ArrayInput ¶
type GroupV2ArrayInput interface { pulumi.Input ToGroupV2ArrayOutput() GroupV2ArrayOutput ToGroupV2ArrayOutputWithContext(context.Context) GroupV2ArrayOutput }
GroupV2ArrayInput is an input type that accepts GroupV2Array and GroupV2ArrayOutput values. You can construct a concrete instance of `GroupV2ArrayInput` via:
GroupV2Array{ GroupV2Args{...} }
type GroupV2ArrayOutput ¶
type GroupV2ArrayOutput struct{ *pulumi.OutputState }
func (GroupV2ArrayOutput) ElementType ¶
func (GroupV2ArrayOutput) ElementType() reflect.Type
func (GroupV2ArrayOutput) Index ¶
func (o GroupV2ArrayOutput) Index(i pulumi.IntInput) GroupV2Output
func (GroupV2ArrayOutput) ToGroupV2ArrayOutput ¶
func (o GroupV2ArrayOutput) ToGroupV2ArrayOutput() GroupV2ArrayOutput
func (GroupV2ArrayOutput) ToGroupV2ArrayOutputWithContext ¶
func (o GroupV2ArrayOutput) ToGroupV2ArrayOutputWithContext(ctx context.Context) GroupV2ArrayOutput
type GroupV2Input ¶
type GroupV2Input interface { pulumi.Input ToGroupV2Output() GroupV2Output ToGroupV2OutputWithContext(ctx context.Context) GroupV2Output }
type GroupV2Map ¶
type GroupV2Map map[string]GroupV2Input
func (GroupV2Map) ElementType ¶
func (GroupV2Map) ElementType() reflect.Type
func (GroupV2Map) ToGroupV2MapOutput ¶
func (i GroupV2Map) ToGroupV2MapOutput() GroupV2MapOutput
func (GroupV2Map) ToGroupV2MapOutputWithContext ¶
func (i GroupV2Map) ToGroupV2MapOutputWithContext(ctx context.Context) GroupV2MapOutput
type GroupV2MapInput ¶
type GroupV2MapInput interface { pulumi.Input ToGroupV2MapOutput() GroupV2MapOutput ToGroupV2MapOutputWithContext(context.Context) GroupV2MapOutput }
GroupV2MapInput is an input type that accepts GroupV2Map and GroupV2MapOutput values. You can construct a concrete instance of `GroupV2MapInput` via:
GroupV2Map{ "key": GroupV2Args{...} }
type GroupV2MapOutput ¶
type GroupV2MapOutput struct{ *pulumi.OutputState }
func (GroupV2MapOutput) ElementType ¶
func (GroupV2MapOutput) ElementType() reflect.Type
func (GroupV2MapOutput) MapIndex ¶
func (o GroupV2MapOutput) MapIndex(k pulumi.StringInput) GroupV2Output
func (GroupV2MapOutput) ToGroupV2MapOutput ¶
func (o GroupV2MapOutput) ToGroupV2MapOutput() GroupV2MapOutput
func (GroupV2MapOutput) ToGroupV2MapOutputWithContext ¶
func (o GroupV2MapOutput) ToGroupV2MapOutputWithContext(ctx context.Context) GroupV2MapOutput
type GroupV2Output ¶
type GroupV2Output struct{ *pulumi.OutputState }
func (GroupV2Output) AdminStateUp ¶
func (o GroupV2Output) AdminStateUp() pulumi.BoolPtrOutput
Administrative up/down status for the firewall group (must be "true" or "false" if provided - defaults to "true"). Changing this updates the `adminStateUp` of an existing firewall group.
func (GroupV2Output) Description ¶
func (o GroupV2Output) Description() pulumi.StringPtrOutput
A description for the firewall group. Changing this updates the `description` of an existing firewall group.
func (GroupV2Output) EgressFirewallPolicyId ¶
func (o GroupV2Output) EgressFirewallPolicyId() pulumi.StringPtrOutput
The egress firewall policy resource id for the firewall group. Changing this updates the `egressFirewallPolicyId` of an existing firewall group.
func (GroupV2Output) ElementType ¶
func (GroupV2Output) ElementType() reflect.Type
func (GroupV2Output) IngressFirewallPolicyId ¶
func (o GroupV2Output) IngressFirewallPolicyId() pulumi.StringPtrOutput
The ingress firewall policy resource id for the firewall group. Changing this updates the `ingressFirewallPolicyId` of an existing firewall group.
func (GroupV2Output) Name ¶
func (o GroupV2Output) Name() pulumi.StringOutput
A name for the firewall group. Changing this updates the `name` of an existing firewall.
func (GroupV2Output) Ports ¶
func (o GroupV2Output) Ports() pulumi.StringArrayOutput
Port(s) to associate this firewall group with. Must be a list of strings. Changing this updates the associated ports of an existing firewall group.
func (GroupV2Output) ProjectId ¶
func (o GroupV2Output) ProjectId() pulumi.StringOutput
This argument conflicts and is interchangeable with `tenantId`. The owner of the firewall group. Required if admin wants to create a firewall group for another project. Changing this creates a new firewall group.
func (GroupV2Output) Region ¶
func (o GroupV2Output) Region() pulumi.StringOutput
The region in which to obtain the v2 networking client. A networking client is needed to create a firewall group. If omitted, the `region` argument of the provider is used. Changing this creates a new firewall group.
func (GroupV2Output) Shared ¶
func (o GroupV2Output) Shared() pulumi.BoolPtrOutput
Sharing status of the firewall group (must be "true" or "false" if provided). If this is "true" the firewall group is visible to, and can be used in, firewalls in other tenants. Changing this updates the `shared` status of an existing firewall group. Only administrative users can specify if the firewall group should be shared.
func (GroupV2Output) Status ¶
func (o GroupV2Output) Status() pulumi.StringOutput
The status of the firewall group.
func (GroupV2Output) TenantId ¶
func (o GroupV2Output) TenantId() pulumi.StringOutput
This argument conflicts and is interchangeable with `projectId`. The owner of the firewall group. Required if admin wants to create a firewall group for another tenant. Changing this creates a new firewall group.
func (GroupV2Output) ToGroupV2Output ¶
func (o GroupV2Output) ToGroupV2Output() GroupV2Output
func (GroupV2Output) ToGroupV2OutputWithContext ¶
func (o GroupV2Output) ToGroupV2OutputWithContext(ctx context.Context) GroupV2Output
type GroupV2State ¶
type GroupV2State struct { // Administrative up/down status for the firewall // group (must be "true" or "false" if provided - defaults to "true"). // Changing this updates the `adminStateUp` of an existing firewall group. AdminStateUp pulumi.BoolPtrInput // A description for the firewall group. Changing this // updates the `description` of an existing firewall group. Description pulumi.StringPtrInput // The egress firewall policy resource // id for the firewall group. Changing this updates the // `egressFirewallPolicyId` of an existing firewall group. EgressFirewallPolicyId pulumi.StringPtrInput // The ingress firewall policy resource // id for the firewall group. Changing this updates the // `ingressFirewallPolicyId` of an existing firewall group. IngressFirewallPolicyId pulumi.StringPtrInput // A name for the firewall group. Changing this // updates the `name` of an existing firewall. Name pulumi.StringPtrInput // Port(s) to associate this firewall group // with. Must be a list of strings. Changing this updates the associated ports // of an existing firewall group. Ports pulumi.StringArrayInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall group. Required if admin wants // to create a firewall group for another project. Changing this creates a new // firewall group. ProjectId pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall group. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall group. Region pulumi.StringPtrInput // or "false" if provided). If this is "true" the firewall group is visible to, // and can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall group. Only administrative users // can specify if the firewall group should be shared. Shared pulumi.BoolPtrInput // The status of the firewall group. Status pulumi.StringPtrInput // This argument conflicts and is interchangeable with // `projectId`. The owner of the firewall group. Required if admin wants to // create a firewall group for another tenant. Changing this creates a new // firewall group. TenantId pulumi.StringPtrInput }
func (GroupV2State) ElementType ¶
func (GroupV2State) ElementType() reflect.Type
type PolicyV2 ¶
type PolicyV2 struct { pulumi.CustomResourceState // Audit status of the firewall policy // (must be "true" or "false" if provided - defaults to "false"). // This status is set to "false" whenever the firewall policy or any of its // rules are changed. Changing this updates the `audited` status of an existing // firewall policy. Audited pulumi.BoolPtrOutput `pulumi:"audited"` // A description for the firewall policy. Changing // this updates the `description` of an existing firewall policy. Description pulumi.StringPtrOutput `pulumi:"description"` // A name for the firewall policy. Changing this // updates the `name` of an existing firewall policy. Name pulumi.StringOutput `pulumi:"name"` // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another project. Changing this creates a new // firewall policy. ProjectId pulumi.StringOutput `pulumi:"projectId"` // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall policy. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall policy. Region pulumi.StringOutput `pulumi:"region"` // An array of one or more firewall rules that comprise // the policy. Changing this results in adding/removing rules from the // existing firewall policy. Rules pulumi.StringArrayOutput `pulumi:"rules"` // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. Only administrative users // can specify if the policy should be shared. Shared pulumi.BoolPtrOutput `pulumi:"shared"` // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another tenant. Changing this creates a new // firewall policy. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a v2 firewall policy resource within OpenStack.
> **Note:** Firewall v2 has no support for OVN currently.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { rule1, err := firewall.NewRuleV2(ctx, "rule_1", &firewall.RuleV2Args{ Name: pulumi.String("firewall_rule_1"), Description: pulumi.String("drop TELNET traffic"), Action: pulumi.String("deny"), Protocol: pulumi.String("tcp"), DestinationPort: pulumi.String("23"), Enabled: pulumi.Bool(true), }) if err != nil { return err } rule2, err := firewall.NewRuleV2(ctx, "rule_2", &firewall.RuleV2Args{ Name: pulumi.String("firewall_rule_2"), Description: pulumi.String("drop NTP traffic"), Action: pulumi.String("deny"), Protocol: pulumi.String("udp"), DestinationPort: pulumi.String("123"), Enabled: pulumi.Bool(false), }) if err != nil { return err } _, err = firewall.NewPolicyV2(ctx, "policy_1", &firewall.PolicyV2Args{ Name: pulumi.String("firewall_policy"), Rules: pulumi.StringArray{ rule1.ID(), rule2.ID(), }, }) if err != nil { return err } return nil }) }
```
## Import
Firewall Policies can be imported using the `id`, e.g.
```sh $ pulumi import openstack:firewall/policyV2:PolicyV2 policy_1 07f422e6-c596-474b-8b94-fe2c12506ce0 ```
func GetPolicyV2 ¶
func GetPolicyV2(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PolicyV2State, opts ...pulumi.ResourceOption) (*PolicyV2, error)
GetPolicyV2 gets an existing PolicyV2 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 NewPolicyV2 ¶
func NewPolicyV2(ctx *pulumi.Context, name string, args *PolicyV2Args, opts ...pulumi.ResourceOption) (*PolicyV2, error)
NewPolicyV2 registers a new resource with the given unique name, arguments, and options.
func (*PolicyV2) ElementType ¶
func (*PolicyV2) ToPolicyV2Output ¶
func (i *PolicyV2) ToPolicyV2Output() PolicyV2Output
func (*PolicyV2) ToPolicyV2OutputWithContext ¶
func (i *PolicyV2) ToPolicyV2OutputWithContext(ctx context.Context) PolicyV2Output
type PolicyV2Args ¶
type PolicyV2Args struct { // Audit status of the firewall policy // (must be "true" or "false" if provided - defaults to "false"). // This status is set to "false" whenever the firewall policy or any of its // rules are changed. Changing this updates the `audited` status of an existing // firewall policy. Audited pulumi.BoolPtrInput // A description for the firewall policy. Changing // this updates the `description` of an existing firewall policy. Description pulumi.StringPtrInput // A name for the firewall policy. Changing this // updates the `name` of an existing firewall policy. Name pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another project. Changing this creates a new // firewall policy. ProjectId pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall policy. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall policy. Region pulumi.StringPtrInput // An array of one or more firewall rules that comprise // the policy. Changing this results in adding/removing rules from the // existing firewall policy. Rules pulumi.StringArrayInput // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. Only administrative users // can specify if the policy should be shared. Shared pulumi.BoolPtrInput // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another tenant. Changing this creates a new // firewall policy. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a PolicyV2 resource.
func (PolicyV2Args) ElementType ¶
func (PolicyV2Args) ElementType() reflect.Type
type PolicyV2Array ¶
type PolicyV2Array []PolicyV2Input
func (PolicyV2Array) ElementType ¶
func (PolicyV2Array) ElementType() reflect.Type
func (PolicyV2Array) ToPolicyV2ArrayOutput ¶
func (i PolicyV2Array) ToPolicyV2ArrayOutput() PolicyV2ArrayOutput
func (PolicyV2Array) ToPolicyV2ArrayOutputWithContext ¶
func (i PolicyV2Array) ToPolicyV2ArrayOutputWithContext(ctx context.Context) PolicyV2ArrayOutput
type PolicyV2ArrayInput ¶
type PolicyV2ArrayInput interface { pulumi.Input ToPolicyV2ArrayOutput() PolicyV2ArrayOutput ToPolicyV2ArrayOutputWithContext(context.Context) PolicyV2ArrayOutput }
PolicyV2ArrayInput is an input type that accepts PolicyV2Array and PolicyV2ArrayOutput values. You can construct a concrete instance of `PolicyV2ArrayInput` via:
PolicyV2Array{ PolicyV2Args{...} }
type PolicyV2ArrayOutput ¶
type PolicyV2ArrayOutput struct{ *pulumi.OutputState }
func (PolicyV2ArrayOutput) ElementType ¶
func (PolicyV2ArrayOutput) ElementType() reflect.Type
func (PolicyV2ArrayOutput) Index ¶
func (o PolicyV2ArrayOutput) Index(i pulumi.IntInput) PolicyV2Output
func (PolicyV2ArrayOutput) ToPolicyV2ArrayOutput ¶
func (o PolicyV2ArrayOutput) ToPolicyV2ArrayOutput() PolicyV2ArrayOutput
func (PolicyV2ArrayOutput) ToPolicyV2ArrayOutputWithContext ¶
func (o PolicyV2ArrayOutput) ToPolicyV2ArrayOutputWithContext(ctx context.Context) PolicyV2ArrayOutput
type PolicyV2Input ¶
type PolicyV2Input interface { pulumi.Input ToPolicyV2Output() PolicyV2Output ToPolicyV2OutputWithContext(ctx context.Context) PolicyV2Output }
type PolicyV2Map ¶
type PolicyV2Map map[string]PolicyV2Input
func (PolicyV2Map) ElementType ¶
func (PolicyV2Map) ElementType() reflect.Type
func (PolicyV2Map) ToPolicyV2MapOutput ¶
func (i PolicyV2Map) ToPolicyV2MapOutput() PolicyV2MapOutput
func (PolicyV2Map) ToPolicyV2MapOutputWithContext ¶
func (i PolicyV2Map) ToPolicyV2MapOutputWithContext(ctx context.Context) PolicyV2MapOutput
type PolicyV2MapInput ¶
type PolicyV2MapInput interface { pulumi.Input ToPolicyV2MapOutput() PolicyV2MapOutput ToPolicyV2MapOutputWithContext(context.Context) PolicyV2MapOutput }
PolicyV2MapInput is an input type that accepts PolicyV2Map and PolicyV2MapOutput values. You can construct a concrete instance of `PolicyV2MapInput` via:
PolicyV2Map{ "key": PolicyV2Args{...} }
type PolicyV2MapOutput ¶
type PolicyV2MapOutput struct{ *pulumi.OutputState }
func (PolicyV2MapOutput) ElementType ¶
func (PolicyV2MapOutput) ElementType() reflect.Type
func (PolicyV2MapOutput) MapIndex ¶
func (o PolicyV2MapOutput) MapIndex(k pulumi.StringInput) PolicyV2Output
func (PolicyV2MapOutput) ToPolicyV2MapOutput ¶
func (o PolicyV2MapOutput) ToPolicyV2MapOutput() PolicyV2MapOutput
func (PolicyV2MapOutput) ToPolicyV2MapOutputWithContext ¶
func (o PolicyV2MapOutput) ToPolicyV2MapOutputWithContext(ctx context.Context) PolicyV2MapOutput
type PolicyV2Output ¶
type PolicyV2Output struct{ *pulumi.OutputState }
func (PolicyV2Output) Audited ¶
func (o PolicyV2Output) Audited() pulumi.BoolPtrOutput
Audit status of the firewall policy (must be "true" or "false" if provided - defaults to "false"). This status is set to "false" whenever the firewall policy or any of its rules are changed. Changing this updates the `audited` status of an existing firewall policy.
func (PolicyV2Output) Description ¶
func (o PolicyV2Output) Description() pulumi.StringPtrOutput
A description for the firewall policy. Changing this updates the `description` of an existing firewall policy.
func (PolicyV2Output) ElementType ¶
func (PolicyV2Output) ElementType() reflect.Type
func (PolicyV2Output) Name ¶
func (o PolicyV2Output) Name() pulumi.StringOutput
A name for the firewall policy. Changing this updates the `name` of an existing firewall policy.
func (PolicyV2Output) ProjectId ¶
func (o PolicyV2Output) ProjectId() pulumi.StringOutput
This argument conflicts and is interchangeable with `tenantId`. The owner of the firewall policy. Required if admin wants to create a firewall policy for another project. Changing this creates a new firewall policy.
func (PolicyV2Output) Region ¶
func (o PolicyV2Output) Region() pulumi.StringOutput
The region in which to obtain the v2 networking client. A networking client is needed to create a firewall policy. If omitted, the `region` argument of the provider is used. Changing this creates a new firewall policy.
func (PolicyV2Output) Rules ¶
func (o PolicyV2Output) Rules() pulumi.StringArrayOutput
An array of one or more firewall rules that comprise the policy. Changing this results in adding/removing rules from the existing firewall policy.
func (PolicyV2Output) Shared ¶
func (o PolicyV2Output) Shared() pulumi.BoolPtrOutput
Sharing status of the firewall policy (must be "true" or "false" if provided). If this is "true" the policy is visible to, and can be used in, firewalls in other tenants. Changing this updates the `shared` status of an existing firewall policy. Only administrative users can specify if the policy should be shared.
func (PolicyV2Output) TenantId ¶
func (o PolicyV2Output) TenantId() pulumi.StringOutput
This argument conflicts and is interchangeable with `projectId`. The owner of the firewall policy. Required if admin wants to create a firewall policy for another tenant. Changing this creates a new firewall policy.
func (PolicyV2Output) ToPolicyV2Output ¶
func (o PolicyV2Output) ToPolicyV2Output() PolicyV2Output
func (PolicyV2Output) ToPolicyV2OutputWithContext ¶
func (o PolicyV2Output) ToPolicyV2OutputWithContext(ctx context.Context) PolicyV2Output
type PolicyV2State ¶
type PolicyV2State struct { // Audit status of the firewall policy // (must be "true" or "false" if provided - defaults to "false"). // This status is set to "false" whenever the firewall policy or any of its // rules are changed. Changing this updates the `audited` status of an existing // firewall policy. Audited pulumi.BoolPtrInput // A description for the firewall policy. Changing // this updates the `description` of an existing firewall policy. Description pulumi.StringPtrInput // A name for the firewall policy. Changing this // updates the `name` of an existing firewall policy. Name pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another project. Changing this creates a new // firewall policy. ProjectId pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall policy. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall policy. Region pulumi.StringPtrInput // An array of one or more firewall rules that comprise // the policy. Changing this results in adding/removing rules from the // existing firewall policy. Rules pulumi.StringArrayInput // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. Only administrative users // can specify if the policy should be shared. Shared pulumi.BoolPtrInput // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall policy. Required if admin wants // to create a firewall policy for another tenant. Changing this creates a new // firewall policy. TenantId pulumi.StringPtrInput }
func (PolicyV2State) ElementType ¶
func (PolicyV2State) ElementType() reflect.Type
type RuleV2 ¶
type RuleV2 struct { pulumi.CustomResourceState // Action to be taken (must be "allow", "deny" or "reject") // when the firewall rule matches. Changing this updates the `action` of an // existing firewall rule. Default is `deny`. Action pulumi.StringPtrOutput `pulumi:"action"` // A description for the firewall rule. Changing this // updates the `description` of an existing firewall rule. Description pulumi.StringPtrOutput `pulumi:"description"` // The destination IP address on which the // firewall rule operates. Changing this updates the `destinationIpAddress` // of an existing firewall rule. DestinationIpAddress pulumi.StringPtrOutput `pulumi:"destinationIpAddress"` // The destination port on which the firewall // rule operates. Changing this updates the `destinationPort` of an existing // firewall rule. Require not `any` or empty protocol. DestinationPort pulumi.StringPtrOutput `pulumi:"destinationPort"` // Enabled status for the firewall rule (must be "true" // or "false" if provided - defaults to "true"). Changing this updates the // `enabled` status of an existing firewall rule. Enabled pulumi.BoolPtrOutput `pulumi:"enabled"` // IP version, either 4 or 6. Changing this // updates the `ipVersion` of an existing firewall rule. Default is `4`. IpVersion pulumi.IntPtrOutput `pulumi:"ipVersion"` // A unique name for the firewall rule. Changing this // updates the `name` of an existing firewall rule. Name pulumi.StringOutput `pulumi:"name"` // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another project. Changing this creates a new // firewall rule. ProjectId pulumi.StringOutput `pulumi:"projectId"` // (Optional; Required if `sourcePort` or `destinationPort` is not // empty) The protocol type on which the firewall rule operates. // Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the // `protocol` of an existing firewall rule. Default is `any`. Protocol pulumi.StringPtrOutput `pulumi:"protocol"` // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall rule. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall rule. Region pulumi.StringOutput `pulumi:"region"` // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. On Shared pulumi.BoolPtrOutput `pulumi:"shared"` // The source IP address on which the firewall // rule operates. Changing this updates the `sourceIpAddress` of an existing // firewall rule. SourceIpAddress pulumi.StringPtrOutput `pulumi:"sourceIpAddress"` // The source port on which the firewall // rule operates. Changing this updates the `sourcePort` of an existing // firewall rule. Require not `any` or empty protocol. SourcePort pulumi.StringPtrOutput `pulumi:"sourcePort"` // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another tenant. Changing this creates a new // firewall rule. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a v2 firewall rule resource within OpenStack.
> **Note:** Firewall v2 has no support for OVN currently.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := firewall.NewRuleV2(ctx, "rule_2", &firewall.RuleV2Args{ Name: pulumi.String("firewall_rule"), Description: pulumi.String("drop TELNET traffic"), Action: pulumi.String("deny"), Protocol: pulumi.String("tcp"), DestinationPort: pulumi.String("23"), Enabled: pulumi.Bool(true), }) if err != nil { return err } return nil }) }
```
## Import
Firewall Rules can be imported using the `id`, e.g.
```sh $ pulumi import openstack:firewall/ruleV2:RuleV2 rule_1 8dbc0c28-e49c-463f-b712-5c5d1bbac327 ```
func GetRuleV2 ¶
func GetRuleV2(ctx *pulumi.Context, name string, id pulumi.IDInput, state *RuleV2State, opts ...pulumi.ResourceOption) (*RuleV2, error)
GetRuleV2 gets an existing RuleV2 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 NewRuleV2 ¶
func NewRuleV2(ctx *pulumi.Context, name string, args *RuleV2Args, opts ...pulumi.ResourceOption) (*RuleV2, error)
NewRuleV2 registers a new resource with the given unique name, arguments, and options.
func (*RuleV2) ElementType ¶
func (*RuleV2) ToRuleV2Output ¶
func (i *RuleV2) ToRuleV2Output() RuleV2Output
func (*RuleV2) ToRuleV2OutputWithContext ¶
func (i *RuleV2) ToRuleV2OutputWithContext(ctx context.Context) RuleV2Output
type RuleV2Args ¶
type RuleV2Args struct { // Action to be taken (must be "allow", "deny" or "reject") // when the firewall rule matches. Changing this updates the `action` of an // existing firewall rule. Default is `deny`. Action pulumi.StringPtrInput // A description for the firewall rule. Changing this // updates the `description` of an existing firewall rule. Description pulumi.StringPtrInput // The destination IP address on which the // firewall rule operates. Changing this updates the `destinationIpAddress` // of an existing firewall rule. DestinationIpAddress pulumi.StringPtrInput // The destination port on which the firewall // rule operates. Changing this updates the `destinationPort` of an existing // firewall rule. Require not `any` or empty protocol. DestinationPort pulumi.StringPtrInput // Enabled status for the firewall rule (must be "true" // or "false" if provided - defaults to "true"). Changing this updates the // `enabled` status of an existing firewall rule. Enabled pulumi.BoolPtrInput // IP version, either 4 or 6. Changing this // updates the `ipVersion` of an existing firewall rule. Default is `4`. IpVersion pulumi.IntPtrInput // A unique name for the firewall rule. Changing this // updates the `name` of an existing firewall rule. Name pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another project. Changing this creates a new // firewall rule. ProjectId pulumi.StringPtrInput // (Optional; Required if `sourcePort` or `destinationPort` is not // empty) The protocol type on which the firewall rule operates. // Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the // `protocol` of an existing firewall rule. Default is `any`. Protocol pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall rule. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall rule. Region pulumi.StringPtrInput // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. On Shared pulumi.BoolPtrInput // The source IP address on which the firewall // rule operates. Changing this updates the `sourceIpAddress` of an existing // firewall rule. SourceIpAddress pulumi.StringPtrInput // The source port on which the firewall // rule operates. Changing this updates the `sourcePort` of an existing // firewall rule. Require not `any` or empty protocol. SourcePort pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another tenant. Changing this creates a new // firewall rule. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a RuleV2 resource.
func (RuleV2Args) ElementType ¶
func (RuleV2Args) ElementType() reflect.Type
type RuleV2Array ¶
type RuleV2Array []RuleV2Input
func (RuleV2Array) ElementType ¶
func (RuleV2Array) ElementType() reflect.Type
func (RuleV2Array) ToRuleV2ArrayOutput ¶
func (i RuleV2Array) ToRuleV2ArrayOutput() RuleV2ArrayOutput
func (RuleV2Array) ToRuleV2ArrayOutputWithContext ¶
func (i RuleV2Array) ToRuleV2ArrayOutputWithContext(ctx context.Context) RuleV2ArrayOutput
type RuleV2ArrayInput ¶
type RuleV2ArrayInput interface { pulumi.Input ToRuleV2ArrayOutput() RuleV2ArrayOutput ToRuleV2ArrayOutputWithContext(context.Context) RuleV2ArrayOutput }
RuleV2ArrayInput is an input type that accepts RuleV2Array and RuleV2ArrayOutput values. You can construct a concrete instance of `RuleV2ArrayInput` via:
RuleV2Array{ RuleV2Args{...} }
type RuleV2ArrayOutput ¶
type RuleV2ArrayOutput struct{ *pulumi.OutputState }
func (RuleV2ArrayOutput) ElementType ¶
func (RuleV2ArrayOutput) ElementType() reflect.Type
func (RuleV2ArrayOutput) Index ¶
func (o RuleV2ArrayOutput) Index(i pulumi.IntInput) RuleV2Output
func (RuleV2ArrayOutput) ToRuleV2ArrayOutput ¶
func (o RuleV2ArrayOutput) ToRuleV2ArrayOutput() RuleV2ArrayOutput
func (RuleV2ArrayOutput) ToRuleV2ArrayOutputWithContext ¶
func (o RuleV2ArrayOutput) ToRuleV2ArrayOutputWithContext(ctx context.Context) RuleV2ArrayOutput
type RuleV2Input ¶
type RuleV2Input interface { pulumi.Input ToRuleV2Output() RuleV2Output ToRuleV2OutputWithContext(ctx context.Context) RuleV2Output }
type RuleV2Map ¶
type RuleV2Map map[string]RuleV2Input
func (RuleV2Map) ElementType ¶
func (RuleV2Map) ToRuleV2MapOutput ¶
func (i RuleV2Map) ToRuleV2MapOutput() RuleV2MapOutput
func (RuleV2Map) ToRuleV2MapOutputWithContext ¶
func (i RuleV2Map) ToRuleV2MapOutputWithContext(ctx context.Context) RuleV2MapOutput
type RuleV2MapInput ¶
type RuleV2MapInput interface { pulumi.Input ToRuleV2MapOutput() RuleV2MapOutput ToRuleV2MapOutputWithContext(context.Context) RuleV2MapOutput }
RuleV2MapInput is an input type that accepts RuleV2Map and RuleV2MapOutput values. You can construct a concrete instance of `RuleV2MapInput` via:
RuleV2Map{ "key": RuleV2Args{...} }
type RuleV2MapOutput ¶
type RuleV2MapOutput struct{ *pulumi.OutputState }
func (RuleV2MapOutput) ElementType ¶
func (RuleV2MapOutput) ElementType() reflect.Type
func (RuleV2MapOutput) MapIndex ¶
func (o RuleV2MapOutput) MapIndex(k pulumi.StringInput) RuleV2Output
func (RuleV2MapOutput) ToRuleV2MapOutput ¶
func (o RuleV2MapOutput) ToRuleV2MapOutput() RuleV2MapOutput
func (RuleV2MapOutput) ToRuleV2MapOutputWithContext ¶
func (o RuleV2MapOutput) ToRuleV2MapOutputWithContext(ctx context.Context) RuleV2MapOutput
type RuleV2Output ¶
type RuleV2Output struct{ *pulumi.OutputState }
func (RuleV2Output) Action ¶
func (o RuleV2Output) Action() pulumi.StringPtrOutput
Action to be taken (must be "allow", "deny" or "reject") when the firewall rule matches. Changing this updates the `action` of an existing firewall rule. Default is `deny`.
func (RuleV2Output) Description ¶
func (o RuleV2Output) Description() pulumi.StringPtrOutput
A description for the firewall rule. Changing this updates the `description` of an existing firewall rule.
func (RuleV2Output) DestinationIpAddress ¶
func (o RuleV2Output) DestinationIpAddress() pulumi.StringPtrOutput
The destination IP address on which the firewall rule operates. Changing this updates the `destinationIpAddress` of an existing firewall rule.
func (RuleV2Output) DestinationPort ¶
func (o RuleV2Output) DestinationPort() pulumi.StringPtrOutput
The destination port on which the firewall rule operates. Changing this updates the `destinationPort` of an existing firewall rule. Require not `any` or empty protocol.
func (RuleV2Output) ElementType ¶
func (RuleV2Output) ElementType() reflect.Type
func (RuleV2Output) Enabled ¶
func (o RuleV2Output) Enabled() pulumi.BoolPtrOutput
Enabled status for the firewall rule (must be "true" or "false" if provided - defaults to "true"). Changing this updates the `enabled` status of an existing firewall rule.
func (RuleV2Output) IpVersion ¶
func (o RuleV2Output) IpVersion() pulumi.IntPtrOutput
IP version, either 4 or 6. Changing this updates the `ipVersion` of an existing firewall rule. Default is `4`.
func (RuleV2Output) Name ¶
func (o RuleV2Output) Name() pulumi.StringOutput
A unique name for the firewall rule. Changing this updates the `name` of an existing firewall rule.
func (RuleV2Output) ProjectId ¶
func (o RuleV2Output) ProjectId() pulumi.StringOutput
This argument conflicts and is interchangeable with `tenantId`. The owner of the firewall rule. Required if admin wants to create a firewall rule for another project. Changing this creates a new firewall rule.
func (RuleV2Output) Protocol ¶
func (o RuleV2Output) Protocol() pulumi.StringPtrOutput
(Optional; Required if `sourcePort` or `destinationPort` is not empty) The protocol type on which the firewall rule operates. Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the `protocol` of an existing firewall rule. Default is `any`.
func (RuleV2Output) Region ¶
func (o RuleV2Output) Region() pulumi.StringOutput
The region in which to obtain the v2 networking client. A networking client is needed to create a firewall rule. If omitted, the `region` argument of the provider is used. Changing this creates a new firewall rule.
func (RuleV2Output) Shared ¶
func (o RuleV2Output) Shared() pulumi.BoolPtrOutput
Sharing status of the firewall rule (must be "true" or "false" if provided). If this is "true" the policy is visible to, and can be used in, firewalls in other tenants. Changing this updates the `shared` status of an existing firewall policy. On
func (RuleV2Output) SourceIpAddress ¶
func (o RuleV2Output) SourceIpAddress() pulumi.StringPtrOutput
The source IP address on which the firewall rule operates. Changing this updates the `sourceIpAddress` of an existing firewall rule.
func (RuleV2Output) SourcePort ¶
func (o RuleV2Output) SourcePort() pulumi.StringPtrOutput
The source port on which the firewall rule operates. Changing this updates the `sourcePort` of an existing firewall rule. Require not `any` or empty protocol.
func (RuleV2Output) TenantId ¶
func (o RuleV2Output) TenantId() pulumi.StringOutput
This argument conflicts and is interchangeable with `projectId`. The owner of the firewall rule. Required if admin wants to create a firewall rule for another tenant. Changing this creates a new firewall rule.
func (RuleV2Output) ToRuleV2Output ¶
func (o RuleV2Output) ToRuleV2Output() RuleV2Output
func (RuleV2Output) ToRuleV2OutputWithContext ¶
func (o RuleV2Output) ToRuleV2OutputWithContext(ctx context.Context) RuleV2Output
type RuleV2State ¶
type RuleV2State struct { // Action to be taken (must be "allow", "deny" or "reject") // when the firewall rule matches. Changing this updates the `action` of an // existing firewall rule. Default is `deny`. Action pulumi.StringPtrInput // A description for the firewall rule. Changing this // updates the `description` of an existing firewall rule. Description pulumi.StringPtrInput // The destination IP address on which the // firewall rule operates. Changing this updates the `destinationIpAddress` // of an existing firewall rule. DestinationIpAddress pulumi.StringPtrInput // The destination port on which the firewall // rule operates. Changing this updates the `destinationPort` of an existing // firewall rule. Require not `any` or empty protocol. DestinationPort pulumi.StringPtrInput // Enabled status for the firewall rule (must be "true" // or "false" if provided - defaults to "true"). Changing this updates the // `enabled` status of an existing firewall rule. Enabled pulumi.BoolPtrInput // IP version, either 4 or 6. Changing this // updates the `ipVersion` of an existing firewall rule. Default is `4`. IpVersion pulumi.IntPtrInput // A unique name for the firewall rule. Changing this // updates the `name` of an existing firewall rule. Name pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `tenantId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another project. Changing this creates a new // firewall rule. ProjectId pulumi.StringPtrInput // (Optional; Required if `sourcePort` or `destinationPort` is not // empty) The protocol type on which the firewall rule operates. // Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the // `protocol` of an existing firewall rule. Default is `any`. Protocol pulumi.StringPtrInput // The region in which to obtain the v2 networking client. // A networking client is needed to create a firewall rule. If omitted, the // `region` argument of the provider is used. Changing this creates a new // firewall rule. Region pulumi.StringPtrInput // or "false" if provided). If this is "true" the policy is visible to, and // can be used in, firewalls in other tenants. Changing this updates the // `shared` status of an existing firewall policy. On Shared pulumi.BoolPtrInput // The source IP address on which the firewall // rule operates. Changing this updates the `sourceIpAddress` of an existing // firewall rule. SourceIpAddress pulumi.StringPtrInput // The source port on which the firewall // rule operates. Changing this updates the `sourcePort` of an existing // firewall rule. Require not `any` or empty protocol. SourcePort pulumi.StringPtrInput // This argument conflicts and is interchangeable // with `projectId`. The owner of the firewall rule. Required if admin wants // to create a firewall rule for another tenant. Changing this creates a new // firewall rule. TenantId pulumi.StringPtrInput }
func (RuleV2State) ElementType ¶
func (RuleV2State) ElementType() reflect.Type