Skip to content

Feature/upstream consumer improvements - #18

Merged
SamTangJunwen merged 5 commits into
developfrom
feature/upstream-consumer-improvements
Jun 16, 2026
Merged

Feature/upstream consumer improvements#18
SamTangJunwen merged 5 commits into
developfrom
feature/upstream-consumer-improvements

Conversation

@SamTangJunwen

Copy link
Copy Markdown
Contributor

分支类型

  • feature/* → 目标分支:develop
  • release/* → 目标分支:main(合并后需同步回 develop)
  • hotfix/* → 目标分支:main(合并后需同步回 develop)
  • 其他(请说明)

变更说明

基于 Nexus/通用调用方集成实践,落实上游 Issue 审查计划中的高优先级与中低优先级改进,降低 DbMigrator、多租户冷启动与种子/配置重复维护成本。

AspNetCore / 迁移

  • 新增 IElsaDatabaseMigratorRunMigrations=false 时仍注册 migrator
  • MigrateElsaDatabasesAsync(force: true) 供生产 DbMigrator/CI 强制迁移 Elsa 库(修复文档与实现矛盾)
  • 新增 ElsaAbpDeferringTenantsProviderElsaAbpOptions.DeferTenantActivationUntilReady 在 ABP 租户库未就绪时仅返回 Host 租户,避免冷启动 FATAL

Application / 种子

  • ElsaAbpOpenIddictDataSeedContributor 迁入 Application(配置驱动,支持 RedirectUri 合并更新)
  • 新增 IElsaAbpPermissionSeeder;权限种子基类公开 GrantConfiguredRolePermissionsAsync
  • 演示 Host 通过 ElsaAbpHostOpenIddictDataSeedContributor 注册 OpenIddict 种子

Host / 样板

  • 新增 host/BioTrace.Elsa.Abp.DbMigrator:ABP 库迁移 + MigrateElsaDatabasesAsync(force: true)
  • Host 绑定 DeferTenantActivationUntilReady 配置项

文档 / Installer

  • CHANGELOG 增加 [1.0.0] 段落
  • 新增 docs/appsettings.elsa.studio.jsondocs/ui-theme-nexus.mddocs/elsa-upgrade-checklist.mddocs/samples/HttpApi.Host.Tests/
  • Installer 安装说明补充 merge-appsettings 与 DbMigrator 步骤

测试

  • 新增迁移 API、延迟租户激活、OpenIddict 种子单元测(AspNetCore.Tests / Application.Tests)

关联

Relates to 上游 Issue 审查(Nexus 调用方视角 #1#12);本 PR 覆盖 #2/#3/#4/#5/#7/#9#12 等项,#6(双 Swagger)维持文档现状,#1(Studio.Client NuGet)仅文档/Installer 引导。

测试

  • dotnet build BioTrace.Elsa.Abp.slnx
  • dotnet test BioTrace.Elsa.Abp.slnx(含新增单元测;EF / AspNetCore / Application 通过)
  • E2E_POSTGRES_HOST=postgres ./scripts/test-e2e.sh(17 通过,8 跳过为项目配置预期)
  • 已在调用方应用中验证(如适用)

发布说明(仅 release/hotfix 合并到 main 时填写)

不适用(目标分支为 develop)。合并 develop 后若发布 NuGet,建议在 common.props 对齐版本并切出 release/* 时再填写。


提交记录(5 条原子提交):

  1. feat(domain): 添加 DeferTenantActivationUntilReady 选项
  2. feat(aspnetcore): IElsaDatabaseMigrator 与延迟租户激活
  3. feat(application): OpenIddict 与 Permission 种子基类纳入 NuGet
  4. feat(host): 添加演示 DbMigrator 与 OpenIddict 种子 Host 适配
  5. docs: 补充上游 Issue 改进文档与 1.0.0 变更记录

SamTangJunwen and others added 5 commits June 15, 2026 08:28
ABP 租户库未就绪时可延迟 Elsa 租户激活,避免冷启动失败。

Co-authored-by: Cursor <cursoragent@cursor.com>
- RunMigrations=false 时仍注册 migrator;MigrateElsaDatabasesAsync(force: true) 供 DbMigrator 使用
- ElsaAbpDeferringTenantsProvider 在租户库未就绪时仅返回 Host 租户
- 补充迁移与延迟激活单元测

Co-authored-by: Cursor <cursoragent@cursor.com>
- ElsaAbpOpenIddictDataSeedContributor 迁入 Application(配置驱动,支持 RedirectUri 合并)
- IElsaAbpPermissionSeeder 接口与权限种子基类公开 GrantConfiguredRolePermissionsAsync
- 补充 OpenIddict 种子单元测

Co-authored-by: Cursor <cursoragent@cursor.com>
- host/BioTrace.Elsa.Abp.DbMigrator:ABP 库迁移 + MigrateElsaDatabasesAsync(force: true)
- ElsaAbpHostOpenIddictDataSeedContributor 继承 Application 基类并注册 DI
- Host 绑定 DeferTenantActivationUntilReady 配置项

Co-authored-by: Cursor <cursoragent@cursor.com>
- CHANGELOG [1.0.0]、DbMigrator/force 迁移与消费者指南更新
- 新增 UI 主题、Elsa 升级检查清单、Studio 配置片段与集成测样板
- Installer 安装说明纳入 merge-appsettings 与 DbMigrator 步骤

Co-authored-by: Cursor <cursoragent@cursor.com>
@SamTangJunwen
SamTangJunwen merged commit c35c854 into develop Jun 16, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant