etcd.io
This repository houses all of the assets used to build the etcd docs and website available at https://etcd.io.
Run the site locally
Prerequisites
In order to run the site locally, you need to have the following installed:
-
The Yarn package manager
-
The Hugo static site generator. Check the
netlify.toml
configuration file to see which version of Hugo you need to install.Note: You need to install the "extended" version of Hugo with support for Sass.
Setup
Once you've installed the prerequisites:
make setup
Running
Once the setup has completed, you can run the site in your local environment:
make serve
Docker
You can also run the site locally using Docker:
make docker-serve
Publishing the site
The site is published automatically by Netlify. Any time
changes are pushed to the master
branch, the site is rebuilt and redeployed.
Preview builds
Any time you submit a pull request to this repository, Netlify will publish a preview build of the changes in that pull request. You can find a link to the preview build in the checks section of the pull request, under netlify/etcd/deploy-preview.
Releasing a new version of the etcd documentation
In order to add documentation for a version of etcd, you need to:
-
Navigate to the
etcd-io/etcd
repo and checkout the tag for the version, for examplegit checkout v3.3.12
. -
Copy the
Documentation
directory from the mainetcd
repo into thecontent/docs
directory of this repository, renaming the directory to match the version. Here's an example for (non-existing) version 4.3.2:cp -rf /path/to/etcd-io/etcd/Documentation /path/to/etcd-io/website/content/docs/v4.3.2
-
In the
_index.md
file at the root of the new directory, update thetitle
metadata to reflect the new version. The title should readetcd version <new-version>
. -
Add the version to the
params.versions.all
array in theconfig.toml
configuration file. -
If the version is meant to be the latest version of etcd, change the
params.versions.latest
parameter to the desired new version. -
Submit a pull request with the changes.
Troubleshooting
If you have an issue with updating the documentation, file an issue against this repo and cc lucperkins.