pulumi/tests/testdata/codegen/kubernetes20/dotnet/Helm/V3/Release.cs

124 lines
4.7 KiB
C#

// *** 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.Kubernetes.Helm.V3
{
/// <summary>
/// A non-overlay, non-component, non-Kubernetes resource.
/// </summary>
[KubernetesResourceType("kubernetes:helm.sh/v3:Release")]
public partial class Release : KubernetesResource
{
/// <summary>
/// Chart name to be installed. A path may be used.
/// </summary>
[Output("chart")]
public Output<string> Chart { get; private set; } = null!;
/// <summary>
/// List of assets (raw yaml files). Content is read and merged with values (with values taking precedence).
/// </summary>
[Output("valueYamlFiles")]
public Output<ImmutableArray<AssetOrArchive>> ValueYamlFiles { get; private set; } = null!;
/// <summary>
/// Custom values set for the release.
/// </summary>
[Output("values")]
public Output<ImmutableDictionary<string, object>> Values { get; private set; } = null!;
/// <summary>
/// Create a Release resource with the given unique name, arguments, and options.
/// </summary>
///
/// <param name="name">The unique name of the resource</param>
/// <param name="args">The arguments used to populate this resource's properties</param>
/// <param name="options">A bag of options that control this resource's behavior</param>
public Release(string name, Pulumi.Kubernetes.Types.Inputs.Helm.V3.ReleaseArgs? args = null, CustomResourceOptions? options = null)
: base("kubernetes:helm.sh/v3:Release", name, args ?? new Pulumi.Kubernetes.Types.Inputs.Helm.V3.ReleaseArgs(), MakeResourceOptions(options, ""))
{
}
internal Release(string name, ImmutableDictionary<string, object?> dictionary, CustomResourceOptions? options = null)
: base("kubernetes:helm.sh/v3:Release", name, new DictionaryResourceArgs(dictionary), MakeResourceOptions(options, ""))
{
}
private Release(string name, Input<string> id, CustomResourceOptions? options = null)
: base("kubernetes:helm.sh/v3:Release", name, null, MakeResourceOptions(options, id))
{
}
private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? 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;
}
/// <summary>
/// Get an existing Release resource's state with the given name, ID, and optional extra
/// properties used to qualify the lookup.
/// </summary>
///
/// <param name="name">The unique name of the resulting resource.</param>
/// <param name="id">The unique provider ID of the resource to lookup.</param>
/// <param name="options">A bag of options that control this resource's behavior</param>
public static Release Get(string name, Input<string> id, CustomResourceOptions? options = null)
{
return new Release(name, id, options);
}
}
}
namespace Pulumi.Kubernetes.Types.Inputs.Helm.V3
{
public class ReleaseArgs : global::Pulumi.ResourceArgs
{
/// <summary>
/// Chart name to be installed. A path may be used.
/// </summary>
[Input("chart", required: true)]
public Input<string> Chart { get; set; } = null!;
[Input("valueYamlFiles")]
private InputList<AssetOrArchive>? _valueYamlFiles;
/// <summary>
/// List of assets (raw yaml files). Content is read and merged with values.
/// </summary>
public InputList<AssetOrArchive> ValueYamlFiles
{
get => _valueYamlFiles ?? (_valueYamlFiles = new InputList<AssetOrArchive>());
set => _valueYamlFiles = value;
}
[Input("values")]
private InputMap<object>? _values;
/// <summary>
/// Custom values set for the release.
/// </summary>
public InputMap<object> Values
{
get => _values ?? (_values = new InputMap<object>());
set => _values = value;
}
public ReleaseArgs()
{
}
public static new ReleaseArgs Empty => new ReleaseArgs();
}
}