Skip to content

Latest commit

 

History

History
62 lines (49 loc) · 2.81 KB

File metadata and controls

62 lines (49 loc) · 2.81 KB

StoneAssemblies Extensibility

NuGet based extensibility system for netcore apps.

Build Status

Quality Gate Status Lines of Code Coverage

Branch Status
master Build Status
develop Build Status

Usage

  1. Install NuGet Package StoneAssemblies.Extensibility in your application.

  2. Add a configuration section like this:

     {
         "Extensions": {
             "Sources": [
                 { 
                     "Uri": "%PRIVATE_REPO_URL%",
                     "Username": "%USERNAME%",
                     "Password": "%PASSWORD%" 
                 },
                 { 
                     "Uri": "https://api.nuget.org/v3/index.json",
                     "Searchable": "false" 
                 }
             ],
             "Packages" ["%PACKAGE_NAME%:%PACKAGE_VERSION%", "..."]
         }
     }
    

Create plugin

  1. Create a class library.

  2. By convention, the extensibility runtime looks for a class named Startup to execute the plugin initialization. The Startup class should look like this:

     public class Startup
     {
             public Startup(IConfiguration configuration)
             {
                 this.Configuration = configuration;
             }
    
             public IConfiguration Configuration { get; }
    
             public void ConfigureServices(IServiceCollection serviceCollection)
             {
                 // TODO: Register plugin service here!!
             }
     }
    
  3. Pack and publish the class library as NuGet package in a public or private registry.