Share via


Aspire.Hosting.Kubernetes.Resources Namespace

Classes

AffinityV1

Represents the affinity configuration for a pod, including node affinity, pod affinity, and pod anti-affinity settings. This class defines rules to influence pod scheduling based on various criteria, such as node labels or inter-pod relationships.

AggregationRuleV1

Represents an aggregation rule for ClusterRoles in a Kubernetes environment. Aggregation rules allow defining how to aggregate multiple cluster roles for easier role-based access control (RBAC) management.

AllowedHostPathV1Beta1

Represents an allowed host path for a PodSecurityPolicy in Kubernetes.

AppArmorProfileV1

Represents the AppArmor profile configuration for a Kubernetes resource.

BaseKubernetesObject

Represents the base class for Kubernetes objects, providing common properties shared across Kubernetes resources.

BaseKubernetesResource

Serves as the foundational class for defining Kubernetes resources in the v1 API version.

CapabilitiesV1

Represents the capabilities configuration for a Kubernetes container. Capabilities allow fine-grained control over kernel-level privileges granted to a specific container in a Pod.

ClientIPConfigV1

Represents the configuration settings for client IP-based session affinity in a Kubernetes resource.

ClusterRole

Represents a Kubernetes ClusterRole resource in API version v1.

ClusterRoleBinding

Represents a ClusterRoleBinding in a Kubernetes cluster.

ConfigMap

Represents a Kubernetes ConfigMap resource.

ConfigMapEnvSourceV1

ConfigMapEnvSourceV1 represents a reference to a ConfigMap that provides key-value pair data for environment variables. The specified ConfigMap is used to populate the environment variables in a container.

ConfigMapKeySelectorV1

ConfigMapKeySelectorV1 represents a selector for a specific key in a ConfigMap. It is used to select a named key from a ConfigMap, with an optional flag to indicate if the key or ConfigMap is optional.

ConfigMapVolumeSourceV1

Represents a Kubernetes ConfigMap volume source configuration.

ContainerPortV1

Represents the configuration for a container port in Kubernetes.

ContainerResizePolicyV1

Represents a policy for resizing containers in a Kubernetes environment.

ContainerResourceMetricSourceV2

Represents a metric source that is defined by a resource usage of a specific container. This is used for scaling purposes in a Kubernetes environment, relying on container-level metrics.

ContainerV1

Represents a container configuration for a Kubernetes pod.

CrossVersionObjectReferenceV1

Represents a reference to an object across different API versions in Kubernetes.

CrossVersionObjectReferenceV2

Represents a reference to an object across different API versions in Kubernetes.

Deployment

Represents a Kubernetes Deployment resource for managing application deployments in a cluster.

DeploymentSpecV1

Represents the specification of a Kubernetes Deployment resource.

DeploymentStrategyV1

Describes the strategy used to replace old Pods with new ones in a Kubernetes Deployment.

EmptyDirVolumeSourceV1

Represents an EmptyDir volume source in Kubernetes, which is an ephemeral volume that is initially empty and then acts as a shared storage space for the containers that are associated with a particular pod. The data in the EmptyDir volume is lost when the pod is removed from a node.

EnvFromSourceV1

EnvFromSourceV1 represents an environment variable source used to populate environment variables in a container.

EnvVarSourceV1

EnvVarSourceV1 represents a source for an environment variable value in a Kubernetes resource. It provides multiple options to derive the value of an environment variable, such as from a specific key in a ConfigMap, a field reference within the resource, a resource field (e.g., CPU or memory usage), or a specific key in a Secret.

EnvVarV1

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.

EphemeralContainerV1

Represents an ephemeral container specification in a Kubernetes Pod. Ephemeral containers enable running short-lived operations or debugging within an already running Pod.

EphemeralVolumeSourceV1

Represents an ephemeral volume source in Kubernetes. An ephemeral volume is a temporary storage resource that is created and managed along with a pod's lifecycle. This object allows you to specify a PersistentVolumeClaim template to define the properties of the ephemeral volume.

ExecActionV1

ExecActionV1 represents an action that executes a command within a container.

ExternalMetricSourceV2

Represents an external metric source in Kubernetes for configuring autoscaling behavior based on metrics from external components or monitoring systems.

FieldSelectorAttributesV1

Represents the attributes used for field selection in Kubernetes resources. This class is designed to define constraints or conditions for selecting specific fields within Kubernetes resources, based on field keys and their associated values.

FieldSelectorRequirementV1

Represents a requirement used in a field selector in Kubernetes resources. This class is used to specify a filtering condition based on certain attributes or values of a Kubernetes resource.

FieldsV1

Represents the FieldsV1 class as part of the Kubernetes resource management utilities.

FsGroupStrategyOptionsV1Beta1

FSGroupStrategyOptionsV1Beta1 specifies the strategy options for controlling the FSGroup security context within a Pod Security Policy. This helps define the rules and ranges applicable to the FSGroup value, which specifies a supplemental group applied to the pod's file system.

GrpcActionV1

GRPCActionV1 represents a GRPC-based action within a Kubernetes resource.

HelmChart

Represents a Helm Chart metadata definition with properties corresponding to the chart.yaml specification.

HelmChartDependency

Represents a single dependency in a Helm Chart's dependencies section.

HelmChartMaintainer

Represents a maintainer of a Helm Chart as specified in the chart.yaml file.

HorizontalPodAutoscaler

Represents the Kubernetes HorizontalPodAutoscaler resource for managing the dynamic scaling of pods based on custom or predefined metrics.

HorizontalPodAutoscalerBehaviorV2

Defines the scaling behavior for a Horizontal Pod Autoscaler in Kubernetes.

HorizontalPodAutoscalerSpecV1

Specifies the desired behavior of a Horizontal Pod Autoscaler in Kubernetes for the autoscaling/v1 version.

HorizontalPodAutoscalerSpecV2

Represents the specification for a Horizontal Pod Autoscaler (HPA) in version v2 of the Kubernetes Autoscaling API. Provides configuration settings for scaling behavior, target resource, metrics, and replica limits.

HorizontalPodAutoscalerV2

Represents a Kubernetes resource for Horizontal Pod Autoscaling (HPA) under the autoscaling/v2 API version.

HostAliasV1

Represents a host alias configuration which maps an IP address to a set of hostnames. This is used for specifying additional host entries in a pod's /etc/hosts file.

HostPathVolumeSourceV1

Represents a HostPath volume source in Kubernetes. A HostPath volume mounts a directory from the host node's filesystem into a pod. This can be used for scenarios such as sharing data between containers or accessing specific host resources.

HostPortRangeV1Beta1

Represents a range of host ports that can be used in Kubernetes deployments.

HpaScalingPolicyV2

Represents the scaling policy configuration for Kubernetes Horizontal Pod Autoscaler (HPA) in version 2 API.

HpaScalingRulesV2

Represents the scaling rules for Kubernetes Horizontal Pod Autoscaler (HPA) in version 2 API.

HttpGetActionV1

HTTPGetActionV1 represents an HTTP GET request action in Kubernetes resources.

HttpHeaderV1

Represents an HTTP header with a name and value.

HttpIngressPathV1

Represents a path in an HTTP ingress rule for Kubernetes ingress resources.

HttpIngressRuleValueV1

Represents the HTTP ingress rule configuration for Kubernetes resources.

IdRangeV1Beta1

Represents a range of IDs with a minimum and maximum value. This can be used to specify a set of allowable IDs for policies or configurations requiring numeric ID ranges (e.g., supplemental groups, run-as-user configurations).

ImageVolumeSourceV1

Represents the configuration for an image-based volume source in a Kubernetes resource.

Ingress

Represents an Ingress resource in Kubernetes (networking.k8s.io/v1).

IngressBackendV1

Represents a backend for a Kubernetes ingress resource.

IngressRuleV1

Represents an ingress rule for Kubernetes resources.

IngressServiceBackendV1

Represents a backend service configuration in a Kubernetes ingress resource.

IngressSpecV1

Represents the specification of an Ingress resource in Kubernetes (networking.k8s.io/v1).

IngressTLSV1

Represents the TLS configuration for an Ingress resource in Kubernetes (networking.k8s.io/v1).

Int32OrStringV1

Represents a value that can be either a 32-bit integer or a string.

KeyToPathV1

Represents a mapping of a key from a data source (e.g., ConfigMap or Secret) to a specific file path.

LabelSelectorAttributesV1

Represents the attributes used for label selection in Kubernetes resources.

LabelSelectorRequirementV1

Represents a label selector requirement for Kubernetes resources. This is used to define conditions for filtering resources based on labels. Each requirement consists of a key, an operator, and a set of values that dictate how the label selector behaves.

LabelSelectorV1

Represents a label selector for Kubernetes resources. A label selector is used to filter resources based on their labels, enabling selection of a specific set of objects in a dynamic way.

LifecycleHandlerV1

Represents a handler for Kubernetes lifecycle events.

LifecycleV1

Represents the lifecycle configuration for a Kubernetes Pod container.

LocalObjectReferenceV1

Represents a reference to a Kubernetes object by name.

LocalVolumeSourceV1

Represents a local volume source in Kubernetes. This type is used to configure a PersistentVolume that is backed by local storage.

ManagedFieldsEntryV1

Represents an entry detailing managed fields within a Kubernetes resource metadata.

MetricIdentifierV2

Represents a metric identifier in a Kubernetes context, primarily used to identify and specify a metric related to various Kubernetes resources or objects.

MetricSpecV2

Represents a metric specification used for horizontal scaling in Kubernetes. Supports various types of metrics for monitoring and scaling, such as container resource metrics, external metrics, pod metrics, object metrics, and resource metrics.

MetricTargetV2

Represents a specification of a target value for a Kubernetes metric in version 2. Defines the target type and value criteria for monitoring and scaling resources.

Namespace

Represents a Kubernetes Namespace resource in the v1 API version.

NamespaceSpecV1

Represents the specification for a Kubernetes Namespace resource in the v1 API version.

NodeAffinityV1

Represents node affinity scheduling configuration for Kubernetes pods. This class defines the rules to determine node selection for a pod during scheduling. Node affinity allows a pod to specify constraints that limit the set of nodes it can be scheduled onto. This includes both hard requirements (requiredDuringSchedulingIgnoredDuringExecution) and soft preferences (preferredDuringSchedulingIgnoredDuringExecution).

NodeSelectorRequirementV1

Represents a node selector requirement used to constrain a set of nodes in Kubernetes.

NodeSelectorTermV1

Represents a Kubernetes node selector term used to define conditions for node selection.

NodeSelectorV1

Represents a node selector in Kubernetes scheduling configuration. The NodeSelectorV1 object contains a list of node selector terms that are used to specify node affinity. Each term specifies a set of match expressions that are evaluated to determine whether a node satisfies the scheduling constraints.

ObjectFieldSelectorV1

ObjectFieldSelectorV1 represents a selector that identifies a specific field of an object. It is used to specify the path to a field in the resource’s object structure and optionally, an API version to interpret the specified field.

ObjectMetaV1

Represents metadata for Kubernetes resources, encapsulating standard properties such as the resource's name, namespace, labels, annotations, and owner references.

ObjectMetricSourceV2

Represents a source for a metric that is associated with a specific Kubernetes object.

ObjectReferenceV1

Represents a reference to an object within a Kubernetes cluster.

OwnerReferenceV1

Represents a reference to the owner of a Kubernetes resource. This reference is often used to establish relationships between dependent resources and ensure cascading deletion when the owner resource is removed.

PersistentVolume

Represents a PersistentVolume resource in Kubernetes.

PersistentVolumeClaim

Represents a Kubernetes PersistentVolumeClaim resource in the v1 API version.

PersistentVolumeClaimSpecV1

Represents the specification of a Kubernetes PersistentVolumeClaim resource.

PersistentVolumeClaimTemplateV1

Represents a template for creating a PersistentVolumeClaim (PVC) in a Kubernetes environment.

PersistentVolumeClaimVolumeSourceV1

Represents the configuration for mounting a PersistentVolumeClaim as a volume source.

PersistentVolumeSpecV1

Represents the specification for a Kubernetes Persistent Volume. Defines the details of storage and access configurations for a PersistentVolume resource.

Pod

Represents a Kubernetes Pod resource in the v1 API version.

PodAffinityTermV1

Represents a term used to define pod affinity/anti-affinity requirements in Kubernetes. The PodAffinityTermV1 specifies conditions such as label selectors, namespace selectors, and topology keys that determine the placement of pods in relation to other pods in a cluster.

PodAffinityV1

Represents pod affinity rules for Kubernetes pod scheduling. This class defines the pod affinity and anti-affinity constraints that influence the placement of pods during scheduling.

PodAntiAffinityV1

Represents the pod anti-affinity rules used in Kubernetes scheduling policies.

PodDnsConfigOptionV1

Represents a DNS configuration option for a Pod in Kubernetes.

PodDnsConfigV1

Represents the DNS configuration for a Pod in Kubernetes.

PodOsv1

Represents the operating system information for a Pod in a Kubernetes cluster.

PodReadinessGateV1

Represents a PodReadinessGate configuration in a Kubernetes Pod specification. A readiness gate defines additional readiness conditions that a pod needs to satisfy to be considered ready. This is typically used for custom or external conditions.

PodResourceClaimV1

Represents a resource claim specification for a Kubernetes pod.

PodSchedulingGateV1

Represents a scheduling gate for a pod, used in conjunction with Kubernetes scheduling gates mechanism.

PodSecurityContextV1

Represents the security context settings for a Kubernetes Pod.

PodsMetricSourceV2

Represents a configuration for targeting metrics at the pod level in a Kubernetes environment. Provides specification for a metric associated with pod resources and the target value or criteria for monitoring and scaling purposes.

PodSpecV1

Represents the specification of a Kubernetes Pod defined in version 1. This class is used to configure various attributes of a pod, including containers, networking, scheduling, and security settings.

PodTemplate

Represents a PodTemplate resource in Kubernetes.

PodTemplateSpecV1

Represents the specification of a pod template in Kubernetes.

PolicyRuleV1

Represents a Kubernetes PolicyRule resource in API version v1.

PreferredSchedulingTermV1

Represents a preferred scheduling term used in Kubernetes node affinity configuration. Defines a preference for scheduling pods onto nodes based on specific criteria with an associated weight.

ProbeV1

Represents a probe configuration for Kubernetes containers. A probe is used to determine the health and readiness of a container by defining checks that can consist of various actions such as HTTP requests, executing commands, GRPC actions, or assessing TCP socket connectivity.

ReplicaSet

Represents a Kubernetes ReplicaSet resource in the apps/v1 API version.

ReplicaSetSpecV1

Defines the specification for a Kubernetes ReplicaSet.

ResourceAttributesV1

Represents the attributes of a resource in Kubernetes. This class facilitates the definition of resource attributes for Kubernetes objects, including identifiers like name, namespace, and resource type, as well as selectors for field and label-based filtering.

ResourceClaimV1

Represents a resource claim for Kubernetes resource management.

ResourceFieldSelectorV1

ResourceFieldSelectorV1 provides a means to reference a resource field's value, such as CPU or memory, from a container in a Kubernetes resource. It allows for detailed selection of the required resource and includes optional configuration to specify a container and/or a divisor for resource scaling.

ResourceMetricSourceV2

Represents a resource metric source used for Kubernetes scaling operations in version 2. Specifies the name of the resource and its corresponding targeting criteria.

ResourceRequirementsV1

Represents the resource requirements for a container or a pod in a Kubernetes environment.

Role

Defines a Kubernetes Role resource within the "rbac.authorization.k8s.io/v1" API group.

RoleBinding

Represents a Kubernetes RoleBinding resource, binding a Role or ClusterRole to a set of subjects (users, groups, or service accounts).

RoleRefV1

Represents a reference to a Kubernetes Role or ClusterRole.

RollingUpdateDeploymentV1

Represents the rolling update configuration for a Kubernetes Deployment. Defines the parameters for controlling the behavior of updating Pods in a Deployment.

RollingUpdateStatefulSetStrategyV1

Represents the rolling update strategy configuration for a StatefulSet in Kubernetes.

SeccompProfileV1

Represents the seccomp profile configuration for a Kubernetes resource. Seccomp profiles provide additional security by filtering system calls that interact with the Linux kernel, allowing finer control over the system-level operations accessible to the container or process.

Secret

Represents a Kubernetes Secret resource in the v1 API version.

SecretEnvSourceV1

SecretEnvSourceV1 represents a reference to a Secret used for populating environment variables in a container.

SecretKeySelectorV1

SecretKeySelectorV1 represents a reference to a specific key within a Secret in Kubernetes. It is used to identify and optionally retrieve the key's value from a named Secret resource.

SecretVolumeSourceV1

Represents a volume source based on a Kubernetes Secret.

SecurityContextV1

Represents the security context configuration for a Kubernetes container or pod.

SeLinuxOptionsV1

Represents the SELinux options that are applied to a container or pod in Kubernetes.

Service

Represents a Kubernetes Service resource in the v1 API version.

ServiceBackendPortV1

Represents a service backend port configuration in Kubernetes.

ServicePortV1

Represents a port configuration for a Kubernetes Service in API version V1.

ServiceSpecV1

Defines the specification for a Kubernetes Service resource.

SessionAffinityConfigV1

Represents the configuration for session affinity in a Kubernetes Service resource.

SleepActionV1

Represents an action to pause execution for a specified duration in seconds.

StatefulSet

Represents a Kubernetes StatefulSet resource in the "apps/v1" API group.

StatefulSetOrdinalsV1

Represents the configuration of ordinals for a StatefulSet in Kubernetes.

StatefulSetPersistentVolumeClaimRetentionPolicyV1

Represents the retention policy for PersistentVolumeClaims (PVCs) associated with a StatefulSet in Kubernetes.

StatefulSetSpecV1

Represents the specification of a Kubernetes StatefulSet resource.

StatefulSetUpdateStrategyV1

Represents the update strategy configuration for a Kubernetes StatefulSet resource.

SubjectV1

Represents a subject in Kubernetes RoleBinding or ClusterRoleBinding resources.

SysctlV1

Represents a sysctl setting in the Pod's security context in a Kubernetes environment.

TcpSocketActionV1

Represents a TCP socket action configuration used in Kubernetes resources. This class is typically utilized for health or readiness probes or lifecycle handlers, allowing the definition of connectivity checks to a specified host and port via TCP.

TolerationV1

Represents a toleration configuration for Kubernetes pods. Used to tolerate taints that would otherwise prevent a pod from being scheduled onto a node. Defines the behavior of tolerating taints based on key-value pairs, operators, effects, and optional toleration durations.

TopologySpreadConstraintV1

Represents the topology spread constraints for distributing pods across a Kubernetes cluster. These constraints define policies for balancing pods across different node topologies such as zones or regions. The constraints aim to ensure high availability and resilience by spreading pods evenly based on the specified rules.

TypedLocalObjectReferenceV1

Represents a reference to a Kubernetes object with a specific type, enabling identification of a local object within the same namespace.

TypedObjectReferenceV1

Represents a reference to a Kubernetes object with a specified kind and API group.

VolumeDeviceV1

Represents a raw block device that is mapped into a Kubernetes container. This class is used to define the name of a volume and the device path in which the volume is mapped on the container.

VolumeMountV1

Represents a volume mount configuration in a Kubernetes container.

VolumeNodeAffinityV1

Represents the volume node affinity configuration in Kubernetes. VolumeNodeAffinityV1 describes the node-specific constraints for a PersistentVolume to ensure storage resources are bound to specific nodes based on the required scheduling and node affinity rules.

VolumeResourceRequirementsV1

Represents the resource requirements for a Kubernetes volume.

VolumeV1

Represents a volume configuration definition within a Kubernetes pod. This class allows specifying different types of volume sources such as Image, HostPath, Persistent Volume Claim, ConfigMap, Secret, and others, enabling configuration of data storage in a pod.

WeightedPodAffinityTermV1

Represents a weighted pod affinity term used in Kubernetes scheduling policies. WeightedPodAffinityTermV1 defines a preference for scheduling pods closer to other pods based on affinity/anti-affinity rules.

WindowsSecurityContextOptionsV1

Represents the Windows-specific security context options for a container or pod in Kubernetes.