Skip to content

Publishing

One docs/ tree serves the whole site: index.html is the landing page, app.html the display, and the manual is built into docs/manual/.

GitHub Pages — the official location

.github/workflows/pages.yml builds the manual and publishes docs/ on every push to main:

→ https://delphi-fulldst-edm4hep.github.io/delphi-edm4hep-eventdisplay/

Pages needs the repository to be public, or a paid plan

GitHub Pages is not available for a private repository on a free plan, and the delphi-fullDST-edm4hep organisation is on the free plan — enabling it returns "Your current plan does not support GitHub Pages for this repository."

Either make this repository public, as delphi-edm4hep already is, or move the organisation to a paid plan. The workflow passes enablement: true, so Pages switches itself on the first time it can.

CERN web area — temporary

tar -cf - -C docs . | ssh -K lxplus \
  'tar -xf - -C /eos/user/s/sqian/www/delphi-edm4hep-eventdisplay'

→ https://sqian.web.cern.ch/delphi-edm4hep-eventdisplay/

ssh needs -K (or GSSAPIDelegateCredentials yes); without a forwarded credential there is no AFS token and you cannot read your own home directory. A Kerberos ticket (kinit) is required — the public-key path is refused.

Warning

tar does not consult .gitignore, so a file that is ignored still deploys. That once hid docs/logo.png being untracked: fine on EOS, a 404 on GitHub Pages.

Temporary

The EOS copy exists so the display was shareable before Pages was switched on. GitHub Pages is the official location; keep EOS in step or retire it once Pages is live.

What is committed

committed figure JSON (~0.5 MB), schema sidecars, the wheel the app installs, docs/logo.png
not committed standalone .html (plotly.js inlined, ~5 MB), docs/manual/ (built), *.root

After changing anything

delphi-display ... --view both      # regenerate the event figures
delphi-pages                        # rebuild docs/events/index.json
docs/build.sh                       # rebuild the wheel the browser app installs
mkdocs build                        # rebuild the manual into docs/manual/

.github/workflows/ci.yml lints, and fails if the committed wheel is stale against the source or if the site references a file that is not there.