产品派
返回

Backstage 1.55支持脚手架任务中断恢复

开源InfoQ 中文站2026/10/26 18:01:19
AI 导读

Backstage 1.55面向开发者门户和平台工程团队发布,新增脚手架任务自动恢复能力,可处理因崩溃或超时而中断的软件模板流程。同时,目录模块清理了多项废弃 API,搜索模块迁移至 Elasticsearch 8,升级前需要检查相关兼容性变更。

任务恢复通过新增的 `scaffolder.taskRecovery` 配置段启用,取代此前的三个实验性标记。启用后,系统会从最后一个已完成步骤继续执行,在任务结束前保留任务密钥,并持久化已完成步骤的输出供后续步骤使用。由于恢复过程可能重复执行动作,相关动作必须具备幂等性或检查点机制。该能力部分解决了长期存在的重跑问题:此前任务失败后通常只能重新运行完整流程。

工作区序列化属于可选能力,需要单独配置提供程序。新的数据库提供程序限制为50 MB,更适合开发环境;生产环境建议使用 GCP 模块或其他外部存储方案。

本次升级包含多项重大变更。目录后端移除 `catalog.enableRelationsCompatibility`,实体关系现在只返回 `targetRef`,并删除已废弃的 CodeOwnersProcessor 与 AnnotateScmSlugEntityProcessor,建议改用社区模块。Elasticsearch 模块要求 8.19 或更高版本,但 AWS 和 OpenSearch 提供程序不受影响;读取原始客户端响应的自定义代码需要调整。TechDocs 默认不再加载内置白名单之外的 MkDocs 插件,额外插件必须通过 `techdocs.generator.mkdocs.dangerouslyAllowAdditionalPlugins` 显式声明。UI 链接组件、GitHub 仓库创建动作、增量摄取权限和 Sentry 脚手架动作也有兼容性变化。

治理与性能方面,1.54.6补丁版本引入的 `scaffolder.requireScmUserCredentials` 要求 GitHub、GitLab、Bitbucket 和 Azure DevOps 动作使用用户凭证;拒绝未知权限的策略必须显式允许 `scaffolder.template.dry-run`。GitLab 合并请求和推送动作改为本地比较文件,使数百文件仓库的 API 请求从约300次降至10次以内,步骤耗时由5至15秒缩短到约3秒。目录、搜索和 TechDocs 等核心插件也改为页面渲染时加载,以减小初始包体积。

自9月15日起,该版本已发布三个补丁版本。1.55.1修复 `backstage-cli pm verify-patches` 命令及新前端系统的 TechDocs 附加组件;1.55.2和1.55.3则改进了 TechDocs 对 MkDocs Markdown 扩展配置的处理。版本还包含7个软件包的安全修复,涉及 OIDC、Cloudflare Access 认证提供程序和代理后端;后者现在要求配置应用受众标识。后续版本 1.56.0-next.2 已于10月6日进入预发布阶段。

Backstage开发者门户脚手架ElasticsearchTechDocs

本文基于公开渠道信息整理,内容可能存在不准确或遗漏之处,不代表本站立场,如内容涉及侵权或错误,请联系我们处理。

阅读原文