string[] PassThroughArgs { get; }
Gets the command-line arguments to pass through to the Aspire host.
.NET Aspire integration for the Runnable ecosystem.
ForgeTrust.Runnable.Aspire provides a modular way to define distributed applications using .NET Aspire. It allows you to encapsulate service defaults and resource registrations into modules.
Use AspireApp to start your Aspire AppHost:
await AspireApp<MyHostModule>.RunAsync(args);
Provides context and helper methods during the Aspire application startup process.
IResourceBuilder<TResource> Resolve<TResource>(IAspireComponent<TResource> dependency)
Resolves an Aspire resource from a component, ensuring each component is only generated once.
TResourceThe type of the resource.dependencyThe component providing the resource.A resource builder for the resolved resource.
string GetPathFromRoot(string relativePath)
Computes an absolute path from a path relative to the application root.
relativePathThe relative path.The computed absolute path.
A base class for defining an Aspire profile as a CLI command.
IEnumerable<AspireProfile> GetDependencies()
Gets the dependencies (other profiles) that this profile requires.
An enumerable of dependent profiles.
IEnumerable<IAspireComponent> GetComponents()
Gets the Aspire components that compose this profile.
An enumerable of Aspire components.
string[] PassThroughArgs { get; }
Gets the command-line arguments to pass through to the Aspire host.
Entry point for running an Aspire application with no specific root module.
Task RunAsync(string[] args)
Runs the Aspire application asynchronously.
argsCommand-line arguments.A task representing the run operation.
Entry point for running an Aspire application with a specific root module.
TModuleThe type of the root module.Task RunAsync(string[] args)
Runs the Aspire application asynchronously with the specified root module.
argsCommand-line arguments.A task representing the run operation.
Indicates that the implementing class is an Aspire component that can generate resources for the application. Classes implementing this interface are responsible for generating resources of type T,
TThe type of resource the component generates.IResourceBuilder<T> Generate(AspireStartupContext context, IDistributedApplicationBuilder appBuilder)
Generates and adds a resource to the Aspire distributed application builder.
contextThe Aspire startup context.appBuilderThe distributed application builder.A resource builder for the generated resource.
The base interface for Aspire components. For now this interface does not define any members, but it serves as a marker interface to identify classes that are Aspire components. This allows for future expansion and additional functionality to be added to all Aspire components if needed.