pulumi-library/crds/kubernetes/traefik/v1alpha1/tlsstore.go

155 lines
5.0 KiB
Go

// Code generated by crd2pulumi DO NOT EDIT.
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
package v1alpha1
import (
"context"
"reflect"
"antoine-roux.tk/projects/go/pulumi-library/crds/kubernetes/internal"
v1 "github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/meta/v1"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumix"
)
// TLSStore is the CRD implementation of a Traefik TLS Store. For the time being, only the TLSStore named default is supported. This means that you cannot have two stores that are named default in different Kubernetes namespaces. More info: https://doc.traefik.io/traefik/v2.10/https/tls/#certificates-stores
type TLSStore struct {
pulumi.CustomResourceState
ApiVersion pulumi.StringPtrOutput `pulumi:"apiVersion"`
Kind pulumi.StringPtrOutput `pulumi:"kind"`
Metadata v1.ObjectMetaOutput `pulumi:"metadata"`
// TLSStoreSpec defines the desired state of a TLSStore.
Spec TLSStoreSpecOutput `pulumi:"spec"`
}
// NewTLSStore registers a new resource with the given unique name, arguments, and options.
func NewTLSStore(ctx *pulumi.Context,
name string, args *TLSStoreArgs, opts ...pulumi.ResourceOption) (*TLSStore, error) {
if args == nil {
args = &TLSStoreArgs{}
}
args.ApiVersion = pulumi.StringPtr("traefik.io/v1alpha1")
args.Kind = pulumi.StringPtr("TLSStore")
opts = internal.PkgResourceDefaultOpts(opts)
var resource TLSStore
err := ctx.RegisterResource("kubernetes:traefik.io/v1alpha1:TLSStore", name, args, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// GetTLSStore gets an existing TLSStore 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 GetTLSStore(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *TLSStoreState, opts ...pulumi.ResourceOption) (*TLSStore, error) {
var resource TLSStore
err := ctx.ReadResource("kubernetes:traefik.io/v1alpha1:TLSStore", name, id, state, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// Input properties used for looking up and filtering TLSStore resources.
type tlsstoreState struct {
}
type TLSStoreState struct {
}
func (TLSStoreState) ElementType() reflect.Type {
return reflect.TypeOf((*tlsstoreState)(nil)).Elem()
}
type tlsstoreArgs struct {
ApiVersion *string `pulumi:"apiVersion"`
Kind *string `pulumi:"kind"`
Metadata *v1.ObjectMeta `pulumi:"metadata"`
// TLSStoreSpec defines the desired state of a TLSStore.
Spec *TLSStoreSpec `pulumi:"spec"`
}
// The set of arguments for constructing a TLSStore resource.
type TLSStoreArgs struct {
ApiVersion pulumi.StringPtrInput
Kind pulumi.StringPtrInput
Metadata v1.ObjectMetaPtrInput
// TLSStoreSpec defines the desired state of a TLSStore.
Spec TLSStoreSpecPtrInput
}
func (TLSStoreArgs) ElementType() reflect.Type {
return reflect.TypeOf((*tlsstoreArgs)(nil)).Elem()
}
type TLSStoreInput interface {
pulumi.Input
ToTLSStoreOutput() TLSStoreOutput
ToTLSStoreOutputWithContext(ctx context.Context) TLSStoreOutput
}
func (*TLSStore) ElementType() reflect.Type {
return reflect.TypeOf((**TLSStore)(nil)).Elem()
}
func (i *TLSStore) ToTLSStoreOutput() TLSStoreOutput {
return i.ToTLSStoreOutputWithContext(context.Background())
}
func (i *TLSStore) ToTLSStoreOutputWithContext(ctx context.Context) TLSStoreOutput {
return pulumi.ToOutputWithContext(ctx, i).(TLSStoreOutput)
}
func (i *TLSStore) ToOutput(ctx context.Context) pulumix.Output[*TLSStore] {
return pulumix.Output[*TLSStore]{
OutputState: i.ToTLSStoreOutputWithContext(ctx).OutputState,
}
}
type TLSStoreOutput struct{ *pulumi.OutputState }
func (TLSStoreOutput) ElementType() reflect.Type {
return reflect.TypeOf((**TLSStore)(nil)).Elem()
}
func (o TLSStoreOutput) ToTLSStoreOutput() TLSStoreOutput {
return o
}
func (o TLSStoreOutput) ToTLSStoreOutputWithContext(ctx context.Context) TLSStoreOutput {
return o
}
func (o TLSStoreOutput) ToOutput(ctx context.Context) pulumix.Output[*TLSStore] {
return pulumix.Output[*TLSStore]{
OutputState: o.OutputState,
}
}
func (o TLSStoreOutput) ApiVersion() pulumi.StringPtrOutput {
return o.ApplyT(func(v *TLSStore) pulumi.StringPtrOutput { return v.ApiVersion }).(pulumi.StringPtrOutput)
}
func (o TLSStoreOutput) Kind() pulumi.StringPtrOutput {
return o.ApplyT(func(v *TLSStore) pulumi.StringPtrOutput { return v.Kind }).(pulumi.StringPtrOutput)
}
func (o TLSStoreOutput) Metadata() v1.ObjectMetaOutput {
return o.ApplyT(func(v *TLSStore) v1.ObjectMetaOutput { return v.Metadata }).(v1.ObjectMetaOutput)
}
// TLSStoreSpec defines the desired state of a TLSStore.
func (o TLSStoreOutput) Spec() TLSStoreSpecOutput {
return o.ApplyT(func(v *TLSStore) TLSStoreSpecOutput { return v.Spec }).(TLSStoreSpecOutput)
}
func init() {
pulumi.RegisterInputType(reflect.TypeOf((*TLSStoreInput)(nil)).Elem(), &TLSStore{})
pulumi.RegisterOutputType(TLSStoreOutput{})
}