| File: Resources\EnvVarV1.cs | Web Access |
| Project: src\src\Aspire.Hosting.Kubernetes\Aspire.Hosting.Kubernetes.csproj (Aspire.Hosting.Kubernetes) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using YamlDotNet.Serialization; namespace Aspire.Hosting.Kubernetes.Resources; /// <summary> /// EnvVarV1 represents an environment variable in a Kubernetes resource. /// It is used to define key-value pairs or to derive values from other Kubernetes resources /// through a configurable source. /// </summary> /// <remarks> /// EnvVarV1 contains properties to define the name and value of the environment variable directly, /// or to set the value dynamically using a source, such as a ConfigMap, Secret, or Field reference. /// </remarks> [YamlSerializable] public sealed class EnvVarV1 { /// <summary> /// Gets or sets the name of the environment variable. /// This property specifies the name of the environment variable and is a required field. /// </summary> [YamlMember(Alias = "name")] public string Name { get; set; } = null!; /// <summary> /// Gets or sets the literal value of the environment variable. /// This property is used to specify a constant string value that will be set directly /// as the environment variable's value in the container configuration. /// </summary> [YamlMember(Alias = "value")] public string Value { get; set; } = null!; /// <summary> /// Gets or sets the source for the environment variable value. /// This property allows specifying an external source from which the environment variable value /// will be derived, such as a key in a ConfigMap, a field reference from the object's metadata, /// a resource field (e.g., limits or requests for memory or CPU), or a key in a Secret. /// </summary> [YamlMember(Alias = "valueFrom")] public EnvVarSourceV1? ValueFrom { get; set; } }