# ContainerFileSystemCallbackAnnotation

- Kind: `class`
- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Version: `13.3.0`
- Namespace: `Aspire.Hosting.ApplicationModel`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/ContainerFileSystemCallbackAnnotation.cs)
- Implements: [IResourceAnnotation](/reference/api/csharp/aspire.hosting/iresourceannotation.md)

Represents a callback annotation that specifies files and folders that should be created or updated in a container.

## Definition

```csharp
namespace Aspire.Hosting.ApplicationModel;

public sealed class ContainerFileSystemCallbackAnnotation
    : Aspire.Hosting.ApplicationModel.IResourceAnnotation
{
    // ...
}
```

## Constructors

- [ContainerFileSystemCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/constructors.md#constructor)

## Properties

- [Callback](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/properties.md#callback) : `Func<ContainerFileSystemCallbackContext, CancellationToken, Task<IEnumerable<ContainerFileSystemItem>>>` `get; init` -- The callback to be executed when the container is created. Should return a tree of [ContainerFileSystemItem](/reference/api/csharp/aspire.hosting/containerfilesystemitem.md) entries to create (or update) in the container.
- [DefaultGroup](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/properties.md#defaultgroup) : `int?` `get; init` -- The GID of the default group for files/directories to be created or updated in the container. The GID defaults to 0 for root if null.
- [DefaultOwner](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/properties.md#defaultowner) : `int?` `get; init` -- The UID of the default owner for files/directories to be created or updated in the container. The UID defaults to 0 for root if null.
- [DestinationPath](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/properties.md#destinationpath) : `string` `get; init` -- The (absolute) base path to create the new file (and any parent directories) in the container. This path should already exist in the container.
- [Umask](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation/properties.md#umask) : `UnixFileMode?` `get; set` -- The umask to apply to files or folders without an explicit mode permission. If set to null, a default umask value of 0022 (octal) will be used. The umask takes away permissions from the default permission set (rather than granting them).
