etcd.io
The etcd.io website, built using Hugo and hosted on Netlify.
Cloud build
Visit https://gitpod.io/#https://github.com/etcd-io/website to launch a Gitpod.io IDE that will allow you to build, preview and make changes to this repo.
Local build
To build and serve the site, you'll need the latest LTS release of Node. Like Netlify, we use nvm, the Node Version Manager, to install and manage Node versions:
$ nvm install --lts
Setup
- Clone this repo.
- From a terminal window, change to the cloned repo directory.
- Get NPM packages and git submodules, including the the Docsy theme:
$ npm install
Build or serve the site
To locally serve the site at localhost:8888, run the following command:
$ npm run serve
NOTE: If you want to check links locally, you (temporarily) might have some extra setup to do. For details, see issue #459.
To build and check links, run these commands:
$ npm run build
$ npm run check-links
You can also locally serve using Docker:
$ make docker-serve
Contributing
We welcome issues and PRs! For details, see Contributing.
If you submit a PR, Netlify will automatically create a deploy preview so that you can view your changes. Once merged, Netlify automcatically deploys to the production site etcd.io.
Releasing a new version of the etcd documentation
IMPORTANT: this section is out-of-date, see issue #406.
Follow these steps to add documentation for a newly released version of etcd, vX.Y:
-
Recursively copy content/docs/next into
content/docs/vX.Y
, wherevX.Y
is the newly released version of etcd. For example:cp -r content/docs/next content/docs/v3.5
-
In the
_index.md
file at the root of the new directory, update the frontmatter to reflect the new version:--- title: etcd version X.Y weight: 1000 cascade: version: vX.Y ---
-
Add the version to the
params.versions.all
array in the config.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.