Make doc site index default to the latest release (#7023)

Fix the order of lines in docs/versions so that v0.34 is last (the current release).

Related changes:

- Update docs/DOCS_README.md to reflect the current state of how we publish the site.
- Fix the build-docs target in Makefile to not perturb the package-lock.json during the build.
- Fix the Makefile rule to not clobber package-lock.json.
This commit is contained in:
M. J. Fromberger
2021-09-29 08:38:52 -07:00
committed by GitHub
parent 8758078786
commit 962caeae65
4 changed files with 30 additions and 11 deletions

View File

@@ -249,6 +249,7 @@ The author of the original pull request is responsible for solving the conflicts
merging the pull request. merging the pull request.
#### Creating a backport branch #### Creating a backport branch
If this is the first release candidate for a major release, you get to have the honor of creating If this is the first release candidate for a major release, you get to have the honor of creating
the backport branch! the backport branch!
@@ -334,6 +335,14 @@ If there were no release candidates, begin by creating a backport branch, as des
- `git tag -a v0.35.0 -m 'Release v0.35.0'` - `git tag -a v0.35.0 -m 'Release v0.35.0'`
- `git push origin v0.35.0` - `git push origin v0.35.0`
7. Make sure that `master` is updated with the latest `CHANGELOG.md`, `CHANGELOG_PENDING.md`, and `UPGRADING.md`. 7. Make sure that `master` is updated with the latest `CHANGELOG.md`, `CHANGELOG_PENDING.md`, and `UPGRADING.md`.
8. Add the release to the documentation site generator config (see
[DOCS_README.md](./docs/DOCS_README.md) for more details). In summary:
- Start on branch `master`.
- Add a new line at the bottom of [`docs/versions`](./docs/versions) to
ensure the newest release is the default for the landing page.
- Add a new entry to `themeConfig.versions` in
[`docs/.vuepress/config.js`](./docs/.vuepress/config.js) to include the
release in the dropdown versions menu.
#### Minor release (point releases) #### Minor release (point releases)

View File

@@ -131,11 +131,11 @@ generate_test_cert:
# generate server cerificate # generate server cerificate
@certstrap request-cert -cn server -ip 127.0.0.1 @certstrap request-cert -cn server -ip 127.0.0.1
# self-sign server cerificate with rootCA # self-sign server cerificate with rootCA
@certstrap sign server --CA "root CA" @certstrap sign server --CA "root CA"
# generate client cerificate # generate client cerificate
@certstrap request-cert -cn client -ip 127.0.0.1 @certstrap request-cert -cn client -ip 127.0.0.1
# self-sign client cerificate with rootCA # self-sign client cerificate with rootCA
@certstrap sign client --CA "root CA" @certstrap sign client --CA "root CA"
.PHONY: generate_test_cert .PHONY: generate_test_cert
############################################################################### ###############################################################################
@@ -214,7 +214,7 @@ DESTINATION = ./index.html.md
build-docs: build-docs:
@cd docs && \ @cd docs && \
while read -r branch path_prefix; do \ while read -r branch path_prefix; do \
(git checkout $${branch} && npm install && VUEPRESS_BASE="/$${path_prefix}/" npm run build) ; \ (git checkout $${branch} && npm ci && VUEPRESS_BASE="/$${path_prefix}/" npm run build) ; \
mkdir -p ~/output/$${path_prefix} ; \ mkdir -p ~/output/$${path_prefix} ; \
cp -r .vuepress/dist/* ~/output/$${path_prefix}/ ; \ cp -r .vuepress/dist/* ~/output/$${path_prefix}/ ; \
cp ~/output/$${path_prefix}/index.html ~/output ; \ cp ~/output/$${path_prefix}/index.html ~/output ; \

View File

@@ -2,17 +2,27 @@
The documentation for Tendermint Core is hosted at: The documentation for Tendermint Core is hosted at:
- <https://docs.tendermint.com/master/> - <https://docs.tendermint.com/>
built from the files in this (`/docs`) directory for built from the files in this [`docs` directory for `master`](https://github.com/tendermint/tendermint/tree/master/docs)
[master](https://github.com/tendermint/tendermint/tree/master/docs) respectively. and other supported release branches.
## How It Works ## How It Works
There is a CircleCI job listening for changes in the `/docs` directory, on both There is a [GitHub Actions workflow](https://github.com/tendermint/docs/actions/workflows/deployment.yml)
the `master` branch. Any updates to files in this directory in the `tendermint/docs` repository that clones and builds the documentation
on those branches will automatically trigger a website deployment. Under the hood, site from the contents of this `docs` directory, for `master` and for each
the private website repository has a `make build-docs` target consumed by a CircleCI job in that repo. supported release branch. Under the hood, this workflow runs `make build-docs`
from the [Makefile](../Makefile#L214).
The list of supported versions are defined in [`config.js`](./.vuepress/config.js),
which defines the UI menu on the documentation site, and also in
[`docs/versions`](./versions), which determines which branches are built.
The last entry in the `docs/versions` file determines which version is linked
by default from the generated `index.html`. This should generally be the most
recent release, rather than `master`, so that new users are not confused by
documentation for unreleased features.
## README ## README

View File

@@ -1,4 +1,4 @@
master master
v0.32.x v0.32 v0.32.x v0.32
v0.33.x v0.33 v0.33.x v0.33
v0.34.x v0.34 v0.34.x v0.34
master master