// *** WARNING: this file was generated by test. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** using System; using System.Collections.Generic; using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; namespace Pulumi.Example { /// /// test new feature with resoruces /// [ExampleResourceType("example:index:Foo")] public partial class Foo : Pulumi.CustomResource { /// /// A test for plain types /// [Output("defaultKubeClientSettings")] public Output DefaultKubeClientSettings { get; private set; } = null!; /// /// Create a Foo resource with the given unique name, arguments, and options. /// /// /// The unique name of the resource /// The arguments used to populate this resource's properties /// A bag of options that control this resource's behavior public Foo(string name, FooArgs args, CustomResourceOptions? options = null) : base("example:index:Foo", name, args ?? new FooArgs(), MakeResourceOptions(options, "")) { } private Foo(string name, Input id, CustomResourceOptions? options = null) : base("example:index:Foo", name, null, MakeResourceOptions(options, id)) { } private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) { var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. merged.Id = id ?? merged.Id; return merged; } /// /// Get an existing Foo resource's state with the given name, ID, and optional extra /// properties used to qualify the lookup. /// /// /// The unique name of the resulting resource. /// The unique provider ID of the resource to lookup. /// A bag of options that control this resource's behavior public static Foo Get(string name, Input id, CustomResourceOptions? options = null) { return new Foo(name, id, options); } } public sealed class FooArgs : Pulumi.ResourceArgs { [Input("argument")] public string? Argument { get; set; } /// /// Options for tuning the Kubernetes client used by a Provider. /// [Input("backupKubeClientSettings", required: true)] public Input BackupKubeClientSettings { get; set; } = null!; /// /// Options for tuning the Kubernetes client used by a Provider. /// [Input("kubeClientSettings")] public Input? KubeClientSettings { get; set; } /// /// describing things /// [Input("settings")] public Input? Settings { get; set; } public FooArgs() { } } }