Amura.Hub.Plugin
1.6.0
dotnet add package Amura.Hub.Plugin --version 1.6.0
NuGet\Install-Package Amura.Hub.Plugin -Version 1.6.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Amura.Hub.Plugin" Version="1.6.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Amura.Hub.Plugin" Version="1.6.0" />
<PackageReference Include="Amura.Hub.Plugin" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Amura.Hub.Plugin --version 1.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Amura.Hub.Plugin, 1.6.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Amura.Hub.Plugin@1.6.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Amura.Hub.Plugin&version=1.6.0
#tool nuget:?package=Amura.Hub.Plugin&version=1.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Amura Hub Plugin SDK
Amura.Hub.Plugin fornece o Plugin SDK e os contratos compartilhados usados para criar plugins de integração do Amura Hub.
Esse pacote segue a versão AmuraHubPluginVersion em Version.props.
A linha do SDK segue SemVer estrito: o primeiro breaking release saindo de 0.x sobe para 1.0.0, e o fluxo de release nao aceita saltos arbitrarios de major.
Instalação
dotnet add package Amura.Hub.Plugin
O que o pacote inclui
- Contratos seguros do SDK 1.0 como
IIntegrationPlugin,PluginExecutionContext,IPluginOutboundCliente handlers especializados - Tipos para schema de configuração declarativa
- Definições de integração e alvos de saída declarativos (
OutboundTargets) - DTOs, eventos, serviços de aplicação e contratos de integração consumidos pelos plugins
- Modelos de domínio compartilhados usados pelo runtime e pelos plugins
Modelo de plugin
- O código-fonte dos plugins costuma viver no repositório
~/Projetos/HubPlugins(https://github.com/amura-sistemas/hub-plugins.git). - O artefato do plugin é distribuído como uma DLL acompanhada de
plugin.json config.schema.jsoné opcional e descreve apenas a configuração específica por cliente do plugin- O host mantém uma configuração global por
systemName, visível apenas no painel admin, comBaseUrieVariables - O plugin pode declarar defaults globais em
GlobalConfigurationDefaultseglobalConfigurationDefaults - O host injeta automaticamente na configuração por cliente os campos comuns
integrateOrders,publicationTypeepublishCategories - O plugin nao registra endpoints HTTP nem workers no host
- Em
config.schema.json,secretepasswordsao aceitos como equivalentes para campos sensiveis;secretcontinua sendo a forma canonica - Toda saída externa deve passar por
IPluginOutboundClient, usandotargetName + relativePath - O manifesto pode declarar
settingsSectionNameeoutboundTargetspara allowlist, auth e timeout - O plugin é executado pelo
Amura.Hub.PluginRunnerem processo separado, via gRPC sobre IPC local: Unix domain socket no Linux/macOS e named pipe no Windows - O pacote NuGet inclui analyzer
buildTransitive, falhando o build do plugin quando APIs proibidas forem usadas - Chaves sensíveis nao sao expostas ao plugin por
IPluginSettingsAccessor; o host injeta autenticação quando necessário - O runtime do host recarrega automaticamente alterações em artefatos de plugin visíveis no storage configurado, sem exigir restart da API
Configuração
- Escopo global do plugin:
BaseUriVariables:{name}
- Defaults globais:
- podem ser declarados em
IntegrationDefinition.GlobalConfigurationDefaults - podem ser declarados no manifesto
plugin.jsoncomglobalConfigurationDefaults - sao persistidos automaticamente pelo host quando ainda nao existe configuração global salva
- podem ser declarados em
- Escopo por cliente:
integrateOrderscom defaulttruepublicationTypecom defaultwithVariationspublishCategoriescom defaultfalse- campos específicos declarados pelo plugin em
config.schema.jsonouIntegrationDefinition
- O host continua aceitando aliases legados persistidos, mas esconde essas duplicatas da UI do cliente.
- O host ainda injeta aliases legados
UserAgenteEndpoints:{name}para compatibilidade de runtime. ConfigurationFieldType.Secreté o tipo interno canônico; o SDK tambem aceitapasswordna leitura do schema para compatibilidade.
Versionamento
AmuraHubPluginVersionacompanha tagssdk-vX.Y.Zdo repositório host.- A release local do SDK aceita apenas o próximo passo SemVer direto da última tag; em
0.x, o primeiro breaking release é1.0.0.
Referências
- Guia do Plugin SDK: https://github.com/amura-sistemas/HubIntegracao/blob/main/docs/plugins/sdk.md
- Schema de configuração: https://github.com/amura-sistemas/HubIntegracao/blob/main/docs/plugins/configuration-schema.md
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- CsvHelper (>= 33.0.1)
- MediatR (>= 12.2.0)
- MongoDB.Bson (>= 3.6.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.6.0 | 42 | 9/24/2026 |
| 1.5.0 | 96 | 9/4/2026 |
| 1.4.0 | 107 | 8/27/2026 |
| 1.3.0 | 133 | 7/9/2026 |
| 1.2.0 | 125 | 6/17/2026 |
| 1.1.1 | 121 | 6/16/2026 |
| 1.1.0 | 119 | 6/1/2026 |
| 1.0.2 | 122 | 5/29/2026 |
| 0.7.0 | 120 | 5/27/2026 |
| 0.6.1 | 119 | 5/11/2026 |
| 0.6.0 | 107 | 4/30/2026 |
| 0.5.0 | 114 | 4/29/2026 |
| 0.4.0 | 127 | 4/22/2026 |
| 0.3.0 | 122 | 4/14/2026 |
| 0.2.0 | 156 | 3/30/2026 |
| 0.1.0 | 113 | 3/26/2026 |