moonlit-cli
1.0.0-next.9
dotnet tool install --global moonlit-cli --version 1.0.0-next.9
dotnet new tool-manifest
dotnet tool install --local moonlit-cli --version 1.0.0-next.9
#tool dotnet:?package=moonlit-cli&version=1.0.0-next.9&prerelease
nuke :add-package moonlit-cli --version 1.0.0-next.9
Moonlit Plugins
Overview
Moonlit Plugins is the core framework for building extensible plugins for the Moonlit release automation system. This package provides the foundation for creating custom plugins that integrate seamlessly with the Moonlit pipeline, offering a standardized approach to extending functionality.
Features
- Extensible plugin architecture for Moonlit applications
- Core abstractions for creating custom release pipeline middlewares
- Standardized context and result handling for plugin operations
- Service registration patterns for dependency injection
- Simplified configuration binding and management
Installation
Install the Moonlit Plugins package using the NuGet Package Manager:
Install-Package Wolfware.Moonlit.Plugins
Or via the .NET CLI:
dotnet add package Wolfware.Moonlit.Plugins
Usage
Creating a Custom Plugin
Implement a plugin by extending the PluginStartup
base class:
public sealed class MyCustomPluginStartup : PluginStartup
{
protected override void ConfigurePlugin(IServiceCollection services, IConfiguration configuration)
{
// Register your services and configure options here
}
protected override void AddMiddlewares(IServiceCollection services)
{
// Register your middlewares here
services.AddMiddleware<MyCustomMiddleware>("my-custom-action");
}
}
Implementing a Middleware
Create custom middleware components to extend the pipeline functionality:
public sealed class MyCustomMiddleware : ReleaseMiddleware<MyConfig>
{
protected override Task<MiddlewareResult> ExecuteAsync(
ReleaseContext context,
MyConfig configuration)
{
// Implement your middleware logic here
return Task.FromResult(MiddlewareResult.Success());
}
}
Pipeline Integration
Plugins created with this framework can be easily integrated into Moonlit release pipelines:
plugins:
- name: "my-custom-plugin"
url: "nuget://MyCompany.Moonlit.CustomPlugin/1.0.0"
middlewares:
- name: "thisIsARandomName"
run: "my-custom-plugin.my-custom-action"
config:
# Your middleware configuration
Requirements
- .NET 9.0 or higher
- Microsoft.Extensions.Configuration.Abstractions
- Microsoft.Extensions.Logging.Abstractions
- Microsoft.Extensions.Options.ConfigurationExtensions
License
This project is licensed under the terms specified in the LICENSE.txt file included with this package.
About Wolfware
Moonlit is a product of Wolfware LLC, providing modern tools for streamlined development workflows.
© 2025 Wolfware LLC. All rights reserved.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
Version | Downloads | Last Updated |
---|---|---|
1.0.0-next.9 | 506 | 7/24/2025 |
1.0.0-next.8 | 489 | 7/23/2025 |
1.0.0-next.7 | 491 | 7/23/2025 |
1.0.0-next.6 | 487 | 7/23/2025 |
1.0.0-next.5 | 278 | 7/21/2025 |
1.0.0-next.4 | 185 | 7/20/2025 |
1.0.0-next.3 | 188 | 7/20/2025 |
1.0.0-next.2 | 122 | 7/9/2025 |
1.0.0-next.1 | 122 | 7/9/2025 |
Initial Release