github.com/pulumi/pulumi-kubernetes/sdk/v3@v3.30.2/go/kubernetes/admissionregistration/v1alpha1/validatingAdmissionPolicyBinding.go (about)

     1  // Code generated by pulumigen DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package v1alpha1
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	metav1 "github.com/pulumi/pulumi-kubernetes/sdk/v3/go/kubernetes/meta/v1"
    11  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    12  )
    13  
    14  // ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters.
    15  type ValidatingAdmissionPolicyBinding struct {
    16  	pulumi.CustomResourceState
    17  
    18  	// APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
    19  	ApiVersion pulumi.StringPtrOutput `pulumi:"apiVersion"`
    20  	// Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    21  	Kind pulumi.StringPtrOutput `pulumi:"kind"`
    22  	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
    23  	Metadata metav1.ObjectMetaPtrOutput `pulumi:"metadata"`
    24  	// Specification of the desired behavior of the ValidatingAdmissionPolicyBinding.
    25  	Spec ValidatingAdmissionPolicyBindingSpecPtrOutput `pulumi:"spec"`
    26  }
    27  
    28  // NewValidatingAdmissionPolicyBinding registers a new resource with the given unique name, arguments, and options.
    29  func NewValidatingAdmissionPolicyBinding(ctx *pulumi.Context,
    30  	name string, args *ValidatingAdmissionPolicyBindingArgs, opts ...pulumi.ResourceOption) (*ValidatingAdmissionPolicyBinding, error) {
    31  	if args == nil {
    32  		args = &ValidatingAdmissionPolicyBindingArgs{}
    33  	}
    34  
    35  	args.ApiVersion = pulumi.StringPtr("admissionregistration.k8s.io/v1alpha1")
    36  	args.Kind = pulumi.StringPtr("ValidatingAdmissionPolicyBinding")
    37  	var resource ValidatingAdmissionPolicyBinding
    38  	err := ctx.RegisterResource("kubernetes:admissionregistration.k8s.io/v1alpha1:ValidatingAdmissionPolicyBinding", name, args, &resource, opts...)
    39  	if err != nil {
    40  		return nil, err
    41  	}
    42  	return &resource, nil
    43  }
    44  
    45  // GetValidatingAdmissionPolicyBinding gets an existing ValidatingAdmissionPolicyBinding resource's state with the given name, ID, and optional
    46  // state properties that are used to uniquely qualify the lookup (nil if not required).
    47  func GetValidatingAdmissionPolicyBinding(ctx *pulumi.Context,
    48  	name string, id pulumi.IDInput, state *ValidatingAdmissionPolicyBindingState, opts ...pulumi.ResourceOption) (*ValidatingAdmissionPolicyBinding, error) {
    49  	var resource ValidatingAdmissionPolicyBinding
    50  	err := ctx.ReadResource("kubernetes:admissionregistration.k8s.io/v1alpha1:ValidatingAdmissionPolicyBinding", name, id, state, &resource, opts...)
    51  	if err != nil {
    52  		return nil, err
    53  	}
    54  	return &resource, nil
    55  }
    56  
    57  // Input properties used for looking up and filtering ValidatingAdmissionPolicyBinding resources.
    58  type validatingAdmissionPolicyBindingState struct {
    59  }
    60  
    61  type ValidatingAdmissionPolicyBindingState struct {
    62  }
    63  
    64  func (ValidatingAdmissionPolicyBindingState) ElementType() reflect.Type {
    65  	return reflect.TypeOf((*validatingAdmissionPolicyBindingState)(nil)).Elem()
    66  }
    67  
    68  type validatingAdmissionPolicyBindingArgs struct {
    69  	// APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
    70  	ApiVersion *string `pulumi:"apiVersion"`
    71  	// Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    72  	Kind *string `pulumi:"kind"`
    73  	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
    74  	Metadata *metav1.ObjectMeta `pulumi:"metadata"`
    75  	// Specification of the desired behavior of the ValidatingAdmissionPolicyBinding.
    76  	Spec *ValidatingAdmissionPolicyBindingSpec `pulumi:"spec"`
    77  }
    78  
    79  // The set of arguments for constructing a ValidatingAdmissionPolicyBinding resource.
    80  type ValidatingAdmissionPolicyBindingArgs struct {
    81  	// APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
    82  	ApiVersion pulumi.StringPtrInput
    83  	// Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    84  	Kind pulumi.StringPtrInput
    85  	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
    86  	Metadata metav1.ObjectMetaPtrInput
    87  	// Specification of the desired behavior of the ValidatingAdmissionPolicyBinding.
    88  	Spec ValidatingAdmissionPolicyBindingSpecPtrInput
    89  }
    90  
    91  func (ValidatingAdmissionPolicyBindingArgs) ElementType() reflect.Type {
    92  	return reflect.TypeOf((*validatingAdmissionPolicyBindingArgs)(nil)).Elem()
    93  }
    94  
    95  type ValidatingAdmissionPolicyBindingInput interface {
    96  	pulumi.Input
    97  
    98  	ToValidatingAdmissionPolicyBindingOutput() ValidatingAdmissionPolicyBindingOutput
    99  	ToValidatingAdmissionPolicyBindingOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingOutput
   100  }
   101  
   102  func (*ValidatingAdmissionPolicyBinding) ElementType() reflect.Type {
   103  	return reflect.TypeOf((**ValidatingAdmissionPolicyBinding)(nil)).Elem()
   104  }
   105  
   106  func (i *ValidatingAdmissionPolicyBinding) ToValidatingAdmissionPolicyBindingOutput() ValidatingAdmissionPolicyBindingOutput {
   107  	return i.ToValidatingAdmissionPolicyBindingOutputWithContext(context.Background())
   108  }
   109  
   110  func (i *ValidatingAdmissionPolicyBinding) ToValidatingAdmissionPolicyBindingOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingOutput {
   111  	return pulumi.ToOutputWithContext(ctx, i).(ValidatingAdmissionPolicyBindingOutput)
   112  }
   113  
   114  // ValidatingAdmissionPolicyBindingArrayInput is an input type that accepts ValidatingAdmissionPolicyBindingArray and ValidatingAdmissionPolicyBindingArrayOutput values.
   115  // You can construct a concrete instance of `ValidatingAdmissionPolicyBindingArrayInput` via:
   116  //
   117  //	ValidatingAdmissionPolicyBindingArray{ ValidatingAdmissionPolicyBindingArgs{...} }
   118  type ValidatingAdmissionPolicyBindingArrayInput interface {
   119  	pulumi.Input
   120  
   121  	ToValidatingAdmissionPolicyBindingArrayOutput() ValidatingAdmissionPolicyBindingArrayOutput
   122  	ToValidatingAdmissionPolicyBindingArrayOutputWithContext(context.Context) ValidatingAdmissionPolicyBindingArrayOutput
   123  }
   124  
   125  type ValidatingAdmissionPolicyBindingArray []ValidatingAdmissionPolicyBindingInput
   126  
   127  func (ValidatingAdmissionPolicyBindingArray) ElementType() reflect.Type {
   128  	return reflect.TypeOf((*[]*ValidatingAdmissionPolicyBinding)(nil)).Elem()
   129  }
   130  
   131  func (i ValidatingAdmissionPolicyBindingArray) ToValidatingAdmissionPolicyBindingArrayOutput() ValidatingAdmissionPolicyBindingArrayOutput {
   132  	return i.ToValidatingAdmissionPolicyBindingArrayOutputWithContext(context.Background())
   133  }
   134  
   135  func (i ValidatingAdmissionPolicyBindingArray) ToValidatingAdmissionPolicyBindingArrayOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingArrayOutput {
   136  	return pulumi.ToOutputWithContext(ctx, i).(ValidatingAdmissionPolicyBindingArrayOutput)
   137  }
   138  
   139  // ValidatingAdmissionPolicyBindingMapInput is an input type that accepts ValidatingAdmissionPolicyBindingMap and ValidatingAdmissionPolicyBindingMapOutput values.
   140  // You can construct a concrete instance of `ValidatingAdmissionPolicyBindingMapInput` via:
   141  //
   142  //	ValidatingAdmissionPolicyBindingMap{ "key": ValidatingAdmissionPolicyBindingArgs{...} }
   143  type ValidatingAdmissionPolicyBindingMapInput interface {
   144  	pulumi.Input
   145  
   146  	ToValidatingAdmissionPolicyBindingMapOutput() ValidatingAdmissionPolicyBindingMapOutput
   147  	ToValidatingAdmissionPolicyBindingMapOutputWithContext(context.Context) ValidatingAdmissionPolicyBindingMapOutput
   148  }
   149  
   150  type ValidatingAdmissionPolicyBindingMap map[string]ValidatingAdmissionPolicyBindingInput
   151  
   152  func (ValidatingAdmissionPolicyBindingMap) ElementType() reflect.Type {
   153  	return reflect.TypeOf((*map[string]*ValidatingAdmissionPolicyBinding)(nil)).Elem()
   154  }
   155  
   156  func (i ValidatingAdmissionPolicyBindingMap) ToValidatingAdmissionPolicyBindingMapOutput() ValidatingAdmissionPolicyBindingMapOutput {
   157  	return i.ToValidatingAdmissionPolicyBindingMapOutputWithContext(context.Background())
   158  }
   159  
   160  func (i ValidatingAdmissionPolicyBindingMap) ToValidatingAdmissionPolicyBindingMapOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingMapOutput {
   161  	return pulumi.ToOutputWithContext(ctx, i).(ValidatingAdmissionPolicyBindingMapOutput)
   162  }
   163  
   164  type ValidatingAdmissionPolicyBindingOutput struct{ *pulumi.OutputState }
   165  
   166  func (ValidatingAdmissionPolicyBindingOutput) ElementType() reflect.Type {
   167  	return reflect.TypeOf((**ValidatingAdmissionPolicyBinding)(nil)).Elem()
   168  }
   169  
   170  func (o ValidatingAdmissionPolicyBindingOutput) ToValidatingAdmissionPolicyBindingOutput() ValidatingAdmissionPolicyBindingOutput {
   171  	return o
   172  }
   173  
   174  func (o ValidatingAdmissionPolicyBindingOutput) ToValidatingAdmissionPolicyBindingOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingOutput {
   175  	return o
   176  }
   177  
   178  // APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
   179  func (o ValidatingAdmissionPolicyBindingOutput) ApiVersion() pulumi.StringPtrOutput {
   180  	return o.ApplyT(func(v *ValidatingAdmissionPolicyBinding) pulumi.StringPtrOutput { return v.ApiVersion }).(pulumi.StringPtrOutput)
   181  }
   182  
   183  // Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   184  func (o ValidatingAdmissionPolicyBindingOutput) Kind() pulumi.StringPtrOutput {
   185  	return o.ApplyT(func(v *ValidatingAdmissionPolicyBinding) pulumi.StringPtrOutput { return v.Kind }).(pulumi.StringPtrOutput)
   186  }
   187  
   188  // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
   189  func (o ValidatingAdmissionPolicyBindingOutput) Metadata() metav1.ObjectMetaPtrOutput {
   190  	return o.ApplyT(func(v *ValidatingAdmissionPolicyBinding) metav1.ObjectMetaPtrOutput { return v.Metadata }).(metav1.ObjectMetaPtrOutput)
   191  }
   192  
   193  // Specification of the desired behavior of the ValidatingAdmissionPolicyBinding.
   194  func (o ValidatingAdmissionPolicyBindingOutput) Spec() ValidatingAdmissionPolicyBindingSpecPtrOutput {
   195  	return o.ApplyT(func(v *ValidatingAdmissionPolicyBinding) ValidatingAdmissionPolicyBindingSpecPtrOutput { return v.Spec }).(ValidatingAdmissionPolicyBindingSpecPtrOutput)
   196  }
   197  
   198  type ValidatingAdmissionPolicyBindingArrayOutput struct{ *pulumi.OutputState }
   199  
   200  func (ValidatingAdmissionPolicyBindingArrayOutput) ElementType() reflect.Type {
   201  	return reflect.TypeOf((*[]*ValidatingAdmissionPolicyBinding)(nil)).Elem()
   202  }
   203  
   204  func (o ValidatingAdmissionPolicyBindingArrayOutput) ToValidatingAdmissionPolicyBindingArrayOutput() ValidatingAdmissionPolicyBindingArrayOutput {
   205  	return o
   206  }
   207  
   208  func (o ValidatingAdmissionPolicyBindingArrayOutput) ToValidatingAdmissionPolicyBindingArrayOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingArrayOutput {
   209  	return o
   210  }
   211  
   212  func (o ValidatingAdmissionPolicyBindingArrayOutput) Index(i pulumi.IntInput) ValidatingAdmissionPolicyBindingOutput {
   213  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ValidatingAdmissionPolicyBinding {
   214  		return vs[0].([]*ValidatingAdmissionPolicyBinding)[vs[1].(int)]
   215  	}).(ValidatingAdmissionPolicyBindingOutput)
   216  }
   217  
   218  type ValidatingAdmissionPolicyBindingMapOutput struct{ *pulumi.OutputState }
   219  
   220  func (ValidatingAdmissionPolicyBindingMapOutput) ElementType() reflect.Type {
   221  	return reflect.TypeOf((*map[string]*ValidatingAdmissionPolicyBinding)(nil)).Elem()
   222  }
   223  
   224  func (o ValidatingAdmissionPolicyBindingMapOutput) ToValidatingAdmissionPolicyBindingMapOutput() ValidatingAdmissionPolicyBindingMapOutput {
   225  	return o
   226  }
   227  
   228  func (o ValidatingAdmissionPolicyBindingMapOutput) ToValidatingAdmissionPolicyBindingMapOutputWithContext(ctx context.Context) ValidatingAdmissionPolicyBindingMapOutput {
   229  	return o
   230  }
   231  
   232  func (o ValidatingAdmissionPolicyBindingMapOutput) MapIndex(k pulumi.StringInput) ValidatingAdmissionPolicyBindingOutput {
   233  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ValidatingAdmissionPolicyBinding {
   234  		return vs[0].(map[string]*ValidatingAdmissionPolicyBinding)[vs[1].(string)]
   235  	}).(ValidatingAdmissionPolicyBindingOutput)
   236  }
   237  
   238  func init() {
   239  	pulumi.RegisterInputType(reflect.TypeOf((*ValidatingAdmissionPolicyBindingInput)(nil)).Elem(), &ValidatingAdmissionPolicyBinding{})
   240  	pulumi.RegisterInputType(reflect.TypeOf((*ValidatingAdmissionPolicyBindingArrayInput)(nil)).Elem(), ValidatingAdmissionPolicyBindingArray{})
   241  	pulumi.RegisterInputType(reflect.TypeOf((*ValidatingAdmissionPolicyBindingMapInput)(nil)).Elem(), ValidatingAdmissionPolicyBindingMap{})
   242  	pulumi.RegisterOutputType(ValidatingAdmissionPolicyBindingOutput{})
   243  	pulumi.RegisterOutputType(ValidatingAdmissionPolicyBindingArrayOutput{})
   244  	pulumi.RegisterOutputType(ValidatingAdmissionPolicyBindingMapOutput{})
   245  }