# CommunityToolkit.Aspire.Hosting.K3s

- Package: `CommunityToolkit.Aspire.Hosting.K3s`
- Version: `13.4.1-beta.706`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/tree/d479e13473b1d29d06b974f144a0049289a3cb5c/src/CommunityToolkit.Aspire.Hosting.K3s)
- NuGet: [CommunityToolkit.Aspire.Hosting.K3s](https://www.nuget.org/packages/CommunityToolkit.Aspire.Hosting.K3s)

## Namespaces

### Aspire.Hosting

- [K3sBuilderExtensions](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sbuilderextensions.md) -- `class` `static` -- Provides extension methods for adding k3s cluster resources to an `Hosting.IDistributedApplicationBuilder`.
- [K3sHelmBuilderExtensions](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3shelmbuilderextensions.md) -- `class` `static` -- Extension methods for adding Helm release resources to a k3s cluster.
- [K3sManifestBuilderExtensions](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3smanifestbuilderextensions.md) -- `class` `static` -- Extension methods for applying Kubernetes YAML manifests to a k3s cluster.
- [K3sServiceEndpointExtensions](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sserviceendpointextensions.md) -- `class` `static` -- Extension methods for exposing Kubernetes services from a k3s cluster into the Aspire network.

### Aspire.Hosting.ApplicationModel

- [HelmReleaseResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/helmreleaseresource.md) -- `class` `sealed` `ats export` -- Represents a Helm chart release installed into a k3s cluster.
- [K3sAgentResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sagentresource.md) -- `class` `sealed` -- Represents a k3s agent (worker) node belonging to a [K3sClusterResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sclusterresource.md).
- [K3sClusterResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sclusterresource.md) -- `class` `sealed` `ats export` -- Represents a k3s Kubernetes cluster running as a privileged container resource. Injects the cluster's kubeconfig into a dependent resource. - Host processes receive `KUBECONFIG=<host-path>/local/kubeconfig.yaml`. - Containers receive `KUBECONFIG=/tmp/k3s-kubeconfig.yaml` and a file-level bind-mount of the container-network kubeconfig variant. Both are applied by the `BeforeStartEvent` subscriber registered in `AddK3sCluster`.
- [K3sServiceEndpointResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sserviceendpointresource.md) -- `class` `sealed` `ats export` -- Represents a Kubernetes Service exposed from a k3s cluster as an Aspire endpoint resource.
- [K8sManifestResource](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k8smanifestresource.md) -- `class` `sealed` `ats export` -- Represents a Kubernetes manifest (or Kustomize overlay) applied to the parent k3s cluster.

### CommunityToolkit.Aspire.Hosting

- [K3sClusterOptions](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sclusteroptions.md) -- `class` `sealed` -- Advanced options for [K3sBuilderExtensions.AddK3sCluster(IDistributedApplicationBuilder, string, int?, int?)](/reference/api/csharp/communitytoolkit.aspire.hosting.k3s/k3sbuilderextensions/methods.md#addk3scluster-idistributedapplicationbuilder-string-int-int).
