拥有多个源存储库时,Antora playbook 执行会崩溃

问题描述 投票:0回答:1

我从现在起就使用 Antora 2.3,随着文档站点的增长,我必须在我的 playbook.yaml 文件中引入更多源存储库。

目前,我有 50-60 个 Git 存储库,每个大小约为 15 MB,如剧本中提到的。 之后,我的网站生成在并行克隆我的 playbook.yaml

content.sources[]
中提到的存储库时开始崩溃(即从 Linux shell 中的 Antora 命令退出而没有任何错误)。

我尝试分配更多内存并收到与上述相同的问题

node --max-old-space-size=16384 `which antora` --cache-dir=./.cache/antora --generator custom-generate-site playbook.yaml --stacktrace 
asciidoc asciidoctor antora
1个回答
0
投票

作为解决方案,我们覆盖了 playbook 构建(generate-site.js 模块)。我们将主要剧本分成了几小册易于理解的剧本。我们称它们为金丝雀剧本。

async function buildCanaryPlaybooks(playbook, sourcesPerPb = 3) {
  let canaryPlaybooks = {};
  if(playbook.content.sources.length > sourcesPerPb){
    let sources = playbook.content.sources;
    for(let i=0,j=sources.length; i < j; i+=sourcesPerPb){
        let chunk = sources.slice(i, i+ sourcesPerPb)
        let canaryPlaybook = getNewPlaybook(playbook,chunk)
        canaryPlaybooks[i] = canaryPlaybook
    }
  }
  return canaryPlaybooks;
}
© www.soinside.com 2019 - 2024. All rights reserved.