Skip to content

ci: docs publish deletes a version's javadoc silently when its build fails #1101

Description

@nikagra

docs/_utils/javadoc-multiversion.sh turns a failed javadoc into a ::warning:: and returns 0, so the multiversion build continues. docs/_utils/deploy.sh then rebuilds gh-pages from scratch out of that run's _build/dirhtml (mkdir gh-pages → git init → git add . → git push --force), so a version that produced no api/ has its live /api/ removed rather than left stale — and the workflow stays green.

Before the tolerant post-build, a failure raised CalledProcessError out of sphinx-multiversion, which rescues only OSError (sphinx_multiversion/main.py:221), so the run died and Deploy never executed.

gh-pages currently holds 16 version directories plus stable, each with a populated api/, so there is real content at stake.

Fix: record which built versions have a missing or empty api/, write them to the step summary, deploy anyway so the good versions still publish, then fail the job so the loss is visible. Failing before deploy would re-create the total-abort behaviour we are removing.

Wanted before the publish that adds scylla-4.x and repoints /stable/.

Refs: https://scylladb.atlassian.net/browse/DRIVER-1086

Jira: https://scylladb.atlassian.net/browse/DRIVER-1087

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions