Skip to content

Pin docusaurusVersion to V1 so the website deploy works again - #1624

Merged
julien-truffaut merged 1 commit into
masterfrom
fix-docs-deploy
Sep 5, 2026
Merged

Pin docusaurusVersion to V1 so the website deploy works again#1624
julien-truffaut merged 1 commit into
masterfrom
fix-docs-deploy

Conversation

@julien-truffaut

Copy link
Copy Markdown
Member

The website has not been republished since April. The publish step of every release run fails with:

error Command "deploy" not found.
[error] (docs / docusaurusPublishGhpages) java.lang.AssertionError: assertion failed:
        command returned 1: [/tmp/docusaurus...install_ssh.sh]

Most recently in the 3.4.0-RC2 release run, so the site still documents 3.3.0.

Cause

Scala Steward bumped sbt-mdoc 2.4.0 → 2.9.0 in 7e80437 (2026-04-14).

2.4.0 hardcoded the Docusaurus 1 command:

USE_SSH=true yarn publish-gh-pages

2.9.x introduced a docusaurusVersion setting and defaults it to V3:

case object V1 extends DocusaurusVersion { val publishArgs = List("publish-gh-pages") }
case object V3 extends DocusaurusVersion { val publishArgs = List("deploy") }
...
docusaurusVersion := DocusaurusVersion.V3,

But website/ is still Docusaurus 1 — siteConfig.js, sidebars.json, pages/, no docusaurus.config.js — and its package.json defines publish-gh-pages, with no deploy script. Hence the error.

Declaring V1 restores USE_SSH=true yarn publish-gh-pages, exactly what 2.4.0 ran.

Not the deploy key

Worth stating since the error message names install_ssh.sh: GIT_DEPLOY_KEY is fine. The failing runs show ssh authenticating normally before the script gets to the yarn command:

Setting up ssh...
Identity added: /home/runner/.ssh/id_rsa (julien@fp-tower.com)
error Command "deploy" not found.

Verification

docs/docusaurusCreateSite — the non-publishing counterpart of the failing task — runs mdoc, yarn install and the Docusaurus 1 build end to end, producing 248 html files.

Note yarn install needs Node ≥ 20.18.1 (cheerio@1.2.0); the CI runner satisfies this, and its yarn install already succeeded in the failing runs — only the command after it failed.

Follow-up

Docusaurus 1 has been end-of-life for years. Migrating website/ to Docusaurus 3 and dropping this setting is the real fix; this restores publishing in the meantime.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QRbVCYWp3bquNaXPYW12JY

The website publish has failed since sbt-mdoc was bumped from 2.4.0 to
2.9.0 in April, with:

    error Command "deploy" not found.

2.4.0 hardcoded `USE_SSH=true yarn publish-gh-pages`. 2.9.0 introduced a
docusaurusVersion setting that defaults to V3, whose publish step runs
`yarn deploy` instead. website/ is still Docusaurus 1 -- siteConfig.js,
sidebars.json, no docusaurus.config.js -- and its package.json defines
publish-gh-pages, not deploy.

Declaring V1 restores `USE_SSH=true yarn publish-gh-pages`, matching what
2.4.0 ran. The deploy key was never the problem; ssh authenticated fine
in the failing runs.

Verified by building the site end to end with docs/docusaurusCreateSite:
mdoc, yarn install and the Docusaurus 1 build all succeed, producing 248
html files.

Migrating the site to Docusaurus 3 is the longer-term fix and is left
alone here.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QRbVCYWp3bquNaXPYW12JY
@julien-truffaut
julien-truffaut merged commit 6007537 into master Sep 5, 2026
23 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