You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

技术问询:如何在Backstage中导入或获取Confluence页面内容?

Confluence文档导入/同步至Backstage的实现方案

以下是针对需求的几种可行方案,覆盖即时同步、批量导入等不同场景:

1. 官方Confluence插件的深度配置

你提到的跳转类插件是基础用法,官方的@backstage/plugin-confluence其实支持内容嵌入与实时同步,无需跳转即可在Backstage内查看Confluence文档:

  • 在app-config.yaml中配置Confluence实例、权限及目标空间/页面:
confluence:
  providers:
    - target: https://your-confluence-domain.com
      auth:
        type: bearer
        token: ${CONFLUENCE_API_TOKEN} # 从环境变量读取凭证,避免硬编码
      spaces:
        - key: YOUR_TARGET_SPACE_KEY
          filter:
            - type: page # 仅同步页面类型内容
            - label: backstage-sync # 可选:只同步带指定标签的页面
  • 配置完成后,可在Backstage的实体详情页(如服务、组件)添加Confluence文档标签页,直接渲染同步过来的页面内容,实现内容在Backstage内的展示。

2. 批量导入至Backstage TechDocs系统

如果需要将Confluence文档永久导入Backstage的内置文档体系(TechDocs),可以通过脚本批量处理:

  • 步骤:
    1. 调用Confluence REST API(GET /rest/api/content)获取目标页面列表,调用导出接口将页面内容转为Markdown格式
    2. 按照Backstage TechDocs的目录规范组织文件:每个实体对应一个docs目录,包含index.md及子页面
    3. 使用techdocs-cli publish命令将本地文档发布到Backstage的文档存储(如Git仓库、S3)
  • 优势:文档完全托管在Backstage生态内,无需依赖Confluence实例的可用性

3. 社区增强型插件

社区有针对Confluence集成的增强插件,比如backstage-plugin-confluence-enhanced,这类插件支持:

  • Confluence文档结构与Backstage实体层级的自动映射
  • 页面内容的离线缓存与定时同步
  • 在Backstage内直接编辑同步后的文档(部分版本支持双向同步)

注意事项

  • 权限:确保Backstage服务拥有Confluence实例的读取权限,优先使用API Token或OAuth2授权方式
  • 同步策略:可通过Backstage的调度功能配置定时同步,保证内容一致性
  • 实体关联:在catalog-info.yaml中通过docs字段将同步/导入的文档与对应实体绑定,比如:
metadata:
  annotations:
    backstage.io/techdocs-ref: dir:. # 关联本地TechDocs
    confluence.com/page-id: "123456" # 关联Confluence页面

内容的提问来源于stack exchange,提问作者Ritwik1711

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 05:15:29