Files
pulumi-incus/sdk/go/incus/clusterGroupMember.go
2025-12-08 10:47:09 -05:00

258 lines
9.7 KiB
Go
Generated

// Code generated by pulumi-language-go DO NOT EDIT.
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
package incus
import (
"context"
"reflect"
"errors"
"git.kalinow.ski/kiterun/pulumi-incus/sdk/go/incus/internal"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
type ClusterGroupMember struct {
pulumi.CustomResourceState
// **Required** - Name of the cluster group.
ClusterGroup pulumi.StringOutput `pulumi:"clusterGroup"`
// **Required** - Name of the cluster group member.
Member pulumi.StringOutput `pulumi:"member"`
// *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"`
}
// NewClusterGroupMember registers a new resource with the given unique name, arguments, and options.
func NewClusterGroupMember(ctx *pulumi.Context,
name string, args *ClusterGroupMemberArgs, opts ...pulumi.ResourceOption) (*ClusterGroupMember, error) {
if args == nil {
return nil, errors.New("missing one or more required arguments")
}
if args.ClusterGroup == nil {
return nil, errors.New("invalid value for required argument 'ClusterGroup'")
}
if args.Member == nil {
return nil, errors.New("invalid value for required argument 'Member'")
}
opts = internal.PkgResourceDefaultOpts(opts)
var resource ClusterGroupMember
err := ctx.RegisterResource("incus:index/clusterGroupMember:ClusterGroupMember", name, args, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// GetClusterGroupMember gets an existing ClusterGroupMember 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 GetClusterGroupMember(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *ClusterGroupMemberState, opts ...pulumi.ResourceOption) (*ClusterGroupMember, error) {
var resource ClusterGroupMember
err := ctx.ReadResource("incus:index/clusterGroupMember:ClusterGroupMember", name, id, state, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// Input properties used for looking up and filtering ClusterGroupMember resources.
type clusterGroupMemberState struct {
// **Required** - Name of the cluster group.
ClusterGroup *string `pulumi:"clusterGroup"`
// **Required** - Name of the cluster group member.
Member *string `pulumi:"member"`
// *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 ClusterGroupMemberState struct {
// **Required** - Name of the cluster group.
ClusterGroup pulumi.StringPtrInput
// **Required** - Name of the cluster group member.
Member 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 (ClusterGroupMemberState) ElementType() reflect.Type {
return reflect.TypeOf((*clusterGroupMemberState)(nil)).Elem()
}
type clusterGroupMemberArgs struct {
// **Required** - Name of the cluster group.
ClusterGroup string `pulumi:"clusterGroup"`
// **Required** - Name of the cluster group member.
Member string `pulumi:"member"`
// *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 ClusterGroupMember resource.
type ClusterGroupMemberArgs struct {
// **Required** - Name of the cluster group.
ClusterGroup pulumi.StringInput
// **Required** - Name of the cluster group member.
Member pulumi.StringInput
// *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 (ClusterGroupMemberArgs) ElementType() reflect.Type {
return reflect.TypeOf((*clusterGroupMemberArgs)(nil)).Elem()
}
type ClusterGroupMemberInput interface {
pulumi.Input
ToClusterGroupMemberOutput() ClusterGroupMemberOutput
ToClusterGroupMemberOutputWithContext(ctx context.Context) ClusterGroupMemberOutput
}
func (*ClusterGroupMember) ElementType() reflect.Type {
return reflect.TypeOf((**ClusterGroupMember)(nil)).Elem()
}
func (i *ClusterGroupMember) ToClusterGroupMemberOutput() ClusterGroupMemberOutput {
return i.ToClusterGroupMemberOutputWithContext(context.Background())
}
func (i *ClusterGroupMember) ToClusterGroupMemberOutputWithContext(ctx context.Context) ClusterGroupMemberOutput {
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupMemberOutput)
}
// ClusterGroupMemberArrayInput is an input type that accepts ClusterGroupMemberArray and ClusterGroupMemberArrayOutput values.
// You can construct a concrete instance of `ClusterGroupMemberArrayInput` via:
//
// ClusterGroupMemberArray{ ClusterGroupMemberArgs{...} }
type ClusterGroupMemberArrayInput interface {
pulumi.Input
ToClusterGroupMemberArrayOutput() ClusterGroupMemberArrayOutput
ToClusterGroupMemberArrayOutputWithContext(context.Context) ClusterGroupMemberArrayOutput
}
type ClusterGroupMemberArray []ClusterGroupMemberInput
func (ClusterGroupMemberArray) ElementType() reflect.Type {
return reflect.TypeOf((*[]*ClusterGroupMember)(nil)).Elem()
}
func (i ClusterGroupMemberArray) ToClusterGroupMemberArrayOutput() ClusterGroupMemberArrayOutput {
return i.ToClusterGroupMemberArrayOutputWithContext(context.Background())
}
func (i ClusterGroupMemberArray) ToClusterGroupMemberArrayOutputWithContext(ctx context.Context) ClusterGroupMemberArrayOutput {
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupMemberArrayOutput)
}
// ClusterGroupMemberMapInput is an input type that accepts ClusterGroupMemberMap and ClusterGroupMemberMapOutput values.
// You can construct a concrete instance of `ClusterGroupMemberMapInput` via:
//
// ClusterGroupMemberMap{ "key": ClusterGroupMemberArgs{...} }
type ClusterGroupMemberMapInput interface {
pulumi.Input
ToClusterGroupMemberMapOutput() ClusterGroupMemberMapOutput
ToClusterGroupMemberMapOutputWithContext(context.Context) ClusterGroupMemberMapOutput
}
type ClusterGroupMemberMap map[string]ClusterGroupMemberInput
func (ClusterGroupMemberMap) ElementType() reflect.Type {
return reflect.TypeOf((*map[string]*ClusterGroupMember)(nil)).Elem()
}
func (i ClusterGroupMemberMap) ToClusterGroupMemberMapOutput() ClusterGroupMemberMapOutput {
return i.ToClusterGroupMemberMapOutputWithContext(context.Background())
}
func (i ClusterGroupMemberMap) ToClusterGroupMemberMapOutputWithContext(ctx context.Context) ClusterGroupMemberMapOutput {
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupMemberMapOutput)
}
type ClusterGroupMemberOutput struct{ *pulumi.OutputState }
func (ClusterGroupMemberOutput) ElementType() reflect.Type {
return reflect.TypeOf((**ClusterGroupMember)(nil)).Elem()
}
func (o ClusterGroupMemberOutput) ToClusterGroupMemberOutput() ClusterGroupMemberOutput {
return o
}
func (o ClusterGroupMemberOutput) ToClusterGroupMemberOutputWithContext(ctx context.Context) ClusterGroupMemberOutput {
return o
}
// **Required** - Name of the cluster group.
func (o ClusterGroupMemberOutput) ClusterGroup() pulumi.StringOutput {
return o.ApplyT(func(v *ClusterGroupMember) pulumi.StringOutput { return v.ClusterGroup }).(pulumi.StringOutput)
}
// **Required** - Name of the cluster group member.
func (o ClusterGroupMemberOutput) Member() pulumi.StringOutput {
return o.ApplyT(func(v *ClusterGroupMember) pulumi.StringOutput { return v.Member }).(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 ClusterGroupMemberOutput) Remote() pulumi.StringPtrOutput {
return o.ApplyT(func(v *ClusterGroupMember) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
}
type ClusterGroupMemberArrayOutput struct{ *pulumi.OutputState }
func (ClusterGroupMemberArrayOutput) ElementType() reflect.Type {
return reflect.TypeOf((*[]*ClusterGroupMember)(nil)).Elem()
}
func (o ClusterGroupMemberArrayOutput) ToClusterGroupMemberArrayOutput() ClusterGroupMemberArrayOutput {
return o
}
func (o ClusterGroupMemberArrayOutput) ToClusterGroupMemberArrayOutputWithContext(ctx context.Context) ClusterGroupMemberArrayOutput {
return o
}
func (o ClusterGroupMemberArrayOutput) Index(i pulumi.IntInput) ClusterGroupMemberOutput {
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClusterGroupMember {
return vs[0].([]*ClusterGroupMember)[vs[1].(int)]
}).(ClusterGroupMemberOutput)
}
type ClusterGroupMemberMapOutput struct{ *pulumi.OutputState }
func (ClusterGroupMemberMapOutput) ElementType() reflect.Type {
return reflect.TypeOf((*map[string]*ClusterGroupMember)(nil)).Elem()
}
func (o ClusterGroupMemberMapOutput) ToClusterGroupMemberMapOutput() ClusterGroupMemberMapOutput {
return o
}
func (o ClusterGroupMemberMapOutput) ToClusterGroupMemberMapOutputWithContext(ctx context.Context) ClusterGroupMemberMapOutput {
return o
}
func (o ClusterGroupMemberMapOutput) MapIndex(k pulumi.StringInput) ClusterGroupMemberOutput {
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClusterGroupMember {
return vs[0].(map[string]*ClusterGroupMember)[vs[1].(string)]
}).(ClusterGroupMemberOutput)
}
func init() {
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupMemberInput)(nil)).Elem(), &ClusterGroupMember{})
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupMemberArrayInput)(nil)).Elem(), ClusterGroupMemberArray{})
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupMemberMapInput)(nil)).Elem(), ClusterGroupMemberMap{})
pulumi.RegisterOutputType(ClusterGroupMemberOutput{})
pulumi.RegisterOutputType(ClusterGroupMemberArrayOutput{})
pulumi.RegisterOutputType(ClusterGroupMemberMapOutput{})
}