forked from mirrors/jj
77cf968316
This means that <https://martinvonz.github.io/jj/latest/index.html> will not longer redirect to <https://martinvonz.github.io/jj/v0.18.0/index.html> (or similar) after the next release, as requested by @jyn514 on Discord. Instead, it will be a copy. Originally, the plan was to use mike's symlink functionality and make `latest` a symlink. See a comment inline for how that didn't work; we could do that after changing how GitHub Pages are built. Before the next `jj` release, and after this PR is merged, you can play with this by going to <https://martinvonz.github.io/jj/main/> which is an alias for <https://martinvonz.github.io/jj/prerelease/>. Because of previous commits in this PR, the latest version will be marked in the version selector as "latest", so hopefully this won't confuse users. Due to the parent commit, the "latest" URL will be considered canonical.
27 lines
1.6 KiB
Bash
Executable file
27 lines
1.6 KiB
Bash
Executable file
#!/bin/sh
|
|
# Set up a virtual environment with the required tools, build, and deploy the docs.
|
|
#
|
|
# Run from the root directory of the project as
|
|
# .github/scripts/docs-build-deploy 'https://martinvonz.github.io' prerelease main
|
|
# All arguments after the first are passed to `mike deploy`, run
|
|
# `poetry run -- mike deploy --help` for options. Note that `mike deploy`
|
|
# creates a commit directly on the `gh-pages` branch.
|
|
set -ev
|
|
|
|
export "SITE_URL_FOR_MKDOCS=$1"; shift
|
|
# Affects the generation of `sitemap.xml.gz` by `mkdocs`. See
|
|
# https://github.com/jimporter/mike/issues/103 and
|
|
# https://reproducible-builds.org/docs/source-date-epoch/
|
|
export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct docs/ mkdocs.yml)
|
|
# https://github.com/python-poetry/poetry/issues/1917 and
|
|
# https://github.com/python-poetry/poetry/issues/8623
|
|
export PYTHON_KEYRING_BACKEND=keyring.backends.fail.Keyring
|
|
poetry install --no-root # Only really needed once per environment unless there are updates
|
|
# TODO: `--alias-type symlink` is the
|
|
# default, and may be nicer in some ways. However,
|
|
# this requires deploying to GH Pages via a "custom GitHub Action", as in
|
|
# https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-with-a-custom-github-actions-workflow.
|
|
# Otherwise, you get an error:
|
|
# > Site contained a symlink that should be dereferenced: /main.
|
|
# > For more information, see https://docs.github.com/github/working-with-github-pages/troubleshooting-jekyll-build-errors-for-github-pages-sites#config-file-error.
|
|
poetry run -- mike deploy --alias-type copy "$@"
|