332 lines
12 KiB
Go
Generated
332 lines
12 KiB
Go
Generated
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
|
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
|
|
|
package incus
|
|
|
|
import (
|
|
"context"
|
|
"reflect"
|
|
|
|
"git.kalinow.ski/kiterun/pulumi-incus/sdk/go/incus/internal"
|
|
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
|
)
|
|
|
|
type NetworkAcl struct {
|
|
pulumi.CustomResourceState
|
|
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
Config pulumi.StringMapOutput `pulumi:"config"`
|
|
// *Optional* - Description of the network ACL rule.
|
|
Description pulumi.StringOutput `pulumi:"description"`
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
Egresses NetworkAclEgressArrayOutput `pulumi:"egresses"`
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
Ingresses NetworkAclIngressArrayOutput `pulumi:"ingresses"`
|
|
// **Required** - Name of the network ACL.
|
|
Name pulumi.StringOutput `pulumi:"name"`
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
Project pulumi.StringOutput `pulumi:"project"`
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
|
}
|
|
|
|
// NewNetworkAcl registers a new resource with the given unique name, arguments, and options.
|
|
func NewNetworkAcl(ctx *pulumi.Context,
|
|
name string, args *NetworkAclArgs, opts ...pulumi.ResourceOption) (*NetworkAcl, error) {
|
|
if args == nil {
|
|
args = &NetworkAclArgs{}
|
|
}
|
|
|
|
if args.Project == nil {
|
|
args.Project = pulumi.StringPtr("default")
|
|
}
|
|
opts = internal.PkgResourceDefaultOpts(opts)
|
|
var resource NetworkAcl
|
|
err := ctx.RegisterResource("incus:index/networkAcl:NetworkAcl", name, args, &resource, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &resource, nil
|
|
}
|
|
|
|
// GetNetworkAcl gets an existing NetworkAcl resource's state with the given name, ID, and optional
|
|
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
|
func GetNetworkAcl(ctx *pulumi.Context,
|
|
name string, id pulumi.IDInput, state *NetworkAclState, opts ...pulumi.ResourceOption) (*NetworkAcl, error) {
|
|
var resource NetworkAcl
|
|
err := ctx.ReadResource("incus:index/networkAcl:NetworkAcl", name, id, state, &resource, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &resource, nil
|
|
}
|
|
|
|
// Input properties used for looking up and filtering NetworkAcl resources.
|
|
type networkAclState struct {
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
Config map[string]string `pulumi:"config"`
|
|
// *Optional* - Description of the network ACL rule.
|
|
Description *string `pulumi:"description"`
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
Egresses []NetworkAclEgress `pulumi:"egresses"`
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
Ingresses []NetworkAclIngress `pulumi:"ingresses"`
|
|
// **Required** - Name of the network ACL.
|
|
Name *string `pulumi:"name"`
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
Project *string `pulumi:"project"`
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
Remote *string `pulumi:"remote"`
|
|
}
|
|
|
|
type NetworkAclState struct {
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
Config pulumi.StringMapInput
|
|
// *Optional* - Description of the network ACL rule.
|
|
Description pulumi.StringPtrInput
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
Egresses NetworkAclEgressArrayInput
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
Ingresses NetworkAclIngressArrayInput
|
|
// **Required** - Name of the network ACL.
|
|
Name pulumi.StringPtrInput
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
Project pulumi.StringPtrInput
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
Remote pulumi.StringPtrInput
|
|
}
|
|
|
|
func (NetworkAclState) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*networkAclState)(nil)).Elem()
|
|
}
|
|
|
|
type networkAclArgs struct {
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
Config map[string]string `pulumi:"config"`
|
|
// *Optional* - Description of the network ACL rule.
|
|
Description *string `pulumi:"description"`
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
Egresses []NetworkAclEgress `pulumi:"egresses"`
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
Ingresses []NetworkAclIngress `pulumi:"ingresses"`
|
|
// **Required** - Name of the network ACL.
|
|
Name *string `pulumi:"name"`
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
Project *string `pulumi:"project"`
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
Remote *string `pulumi:"remote"`
|
|
}
|
|
|
|
// The set of arguments for constructing a NetworkAcl resource.
|
|
type NetworkAclArgs struct {
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
Config pulumi.StringMapInput
|
|
// *Optional* - Description of the network ACL rule.
|
|
Description pulumi.StringPtrInput
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
Egresses NetworkAclEgressArrayInput
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
Ingresses NetworkAclIngressArrayInput
|
|
// **Required** - Name of the network ACL.
|
|
Name pulumi.StringPtrInput
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
Project pulumi.StringPtrInput
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
Remote pulumi.StringPtrInput
|
|
}
|
|
|
|
func (NetworkAclArgs) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*networkAclArgs)(nil)).Elem()
|
|
}
|
|
|
|
type NetworkAclInput interface {
|
|
pulumi.Input
|
|
|
|
ToNetworkAclOutput() NetworkAclOutput
|
|
ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput
|
|
}
|
|
|
|
func (*NetworkAcl) ElementType() reflect.Type {
|
|
return reflect.TypeOf((**NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput {
|
|
return i.ToNetworkAclOutputWithContext(context.Background())
|
|
}
|
|
|
|
func (i *NetworkAcl) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput {
|
|
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclOutput)
|
|
}
|
|
|
|
// NetworkAclArrayInput is an input type that accepts NetworkAclArray and NetworkAclArrayOutput values.
|
|
// You can construct a concrete instance of `NetworkAclArrayInput` via:
|
|
//
|
|
// NetworkAclArray{ NetworkAclArgs{...} }
|
|
type NetworkAclArrayInput interface {
|
|
pulumi.Input
|
|
|
|
ToNetworkAclArrayOutput() NetworkAclArrayOutput
|
|
ToNetworkAclArrayOutputWithContext(context.Context) NetworkAclArrayOutput
|
|
}
|
|
|
|
type NetworkAclArray []NetworkAclInput
|
|
|
|
func (NetworkAclArray) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*[]*NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput {
|
|
return i.ToNetworkAclArrayOutputWithContext(context.Background())
|
|
}
|
|
|
|
func (i NetworkAclArray) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput {
|
|
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclArrayOutput)
|
|
}
|
|
|
|
// NetworkAclMapInput is an input type that accepts NetworkAclMap and NetworkAclMapOutput values.
|
|
// You can construct a concrete instance of `NetworkAclMapInput` via:
|
|
//
|
|
// NetworkAclMap{ "key": NetworkAclArgs{...} }
|
|
type NetworkAclMapInput interface {
|
|
pulumi.Input
|
|
|
|
ToNetworkAclMapOutput() NetworkAclMapOutput
|
|
ToNetworkAclMapOutputWithContext(context.Context) NetworkAclMapOutput
|
|
}
|
|
|
|
type NetworkAclMap map[string]NetworkAclInput
|
|
|
|
func (NetworkAclMap) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*map[string]*NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput {
|
|
return i.ToNetworkAclMapOutputWithContext(context.Background())
|
|
}
|
|
|
|
func (i NetworkAclMap) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput {
|
|
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclMapOutput)
|
|
}
|
|
|
|
type NetworkAclOutput struct{ *pulumi.OutputState }
|
|
|
|
func (NetworkAclOutput) ElementType() reflect.Type {
|
|
return reflect.TypeOf((**NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput {
|
|
return o
|
|
}
|
|
|
|
func (o NetworkAclOutput) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput {
|
|
return o
|
|
}
|
|
|
|
// *Optional* - Map of key/value pairs of
|
|
// network ACL config settings.
|
|
func (o NetworkAclOutput) Config() pulumi.StringMapOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
|
}
|
|
|
|
// *Optional* - Description of the network ACL rule.
|
|
func (o NetworkAclOutput) Description() pulumi.StringOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
|
}
|
|
|
|
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
|
func (o NetworkAclOutput) Egresses() NetworkAclEgressArrayOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) NetworkAclEgressArrayOutput { return v.Egresses }).(NetworkAclEgressArrayOutput)
|
|
}
|
|
|
|
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
|
//
|
|
// The network ACL rule supports:
|
|
func (o NetworkAclOutput) Ingresses() NetworkAclIngressArrayOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) NetworkAclIngressArrayOutput { return v.Ingresses }).(NetworkAclIngressArrayOutput)
|
|
}
|
|
|
|
// **Required** - Name of the network ACL.
|
|
func (o NetworkAclOutput) Name() pulumi.StringOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
|
}
|
|
|
|
// *Optional* - Name of the project where the network ACL will be created.
|
|
func (o NetworkAclOutput) Project() pulumi.StringOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
|
}
|
|
|
|
// *Optional* - The remote in which the resource will be created. If
|
|
// not provided, the provider's default remote will be used.
|
|
func (o NetworkAclOutput) Remote() pulumi.StringPtrOutput {
|
|
return o.ApplyT(func(v *NetworkAcl) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
|
}
|
|
|
|
type NetworkAclArrayOutput struct{ *pulumi.OutputState }
|
|
|
|
func (NetworkAclArrayOutput) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*[]*NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput {
|
|
return o
|
|
}
|
|
|
|
func (o NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput {
|
|
return o
|
|
}
|
|
|
|
func (o NetworkAclArrayOutput) Index(i pulumi.IntInput) NetworkAclOutput {
|
|
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkAcl {
|
|
return vs[0].([]*NetworkAcl)[vs[1].(int)]
|
|
}).(NetworkAclOutput)
|
|
}
|
|
|
|
type NetworkAclMapOutput struct{ *pulumi.OutputState }
|
|
|
|
func (NetworkAclMapOutput) ElementType() reflect.Type {
|
|
return reflect.TypeOf((*map[string]*NetworkAcl)(nil)).Elem()
|
|
}
|
|
|
|
func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput {
|
|
return o
|
|
}
|
|
|
|
func (o NetworkAclMapOutput) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput {
|
|
return o
|
|
}
|
|
|
|
func (o NetworkAclMapOutput) MapIndex(k pulumi.StringInput) NetworkAclOutput {
|
|
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkAcl {
|
|
return vs[0].(map[string]*NetworkAcl)[vs[1].(string)]
|
|
}).(NetworkAclOutput)
|
|
}
|
|
|
|
func init() {
|
|
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclInput)(nil)).Elem(), &NetworkAcl{})
|
|
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclArrayInput)(nil)).Elem(), NetworkAclArray{})
|
|
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclMapInput)(nil)).Elem(), NetworkAclMap{})
|
|
pulumi.RegisterOutputType(NetworkAclOutput{})
|
|
pulumi.RegisterOutputType(NetworkAclArrayOutput{})
|
|
pulumi.RegisterOutputType(NetworkAclMapOutput{})
|
|
}
|