Documentation Releasing

Every minor release will have a corresponding documentation release. This guide is an introduction of the whole release procedure.

Keep Multilingual Documents in Sync(manually)

Sometimes contributors do not update the content of the documentation in all languages. Before releasing, ensure the multilingual documents are in sync. This will be tracked by an issue. The issue should follow the format:

  1. This issue is to track documents which needs to sync zh for release 1.x:
  2. * #268

Update Reference Documents(manually)

Before releasing, we need to update reference docs in the website, which includes CLI references and component references. The whole process is done by scripts automatically. Follow these steps to update reference docs.

  1. Clone karmada-io/karmada and karmada-io/website to the local environment. It’s recommended to step up these two projects in the same folder.
  1. $ git clone https://github.com/karmada-io/karmada.git
  2. $ git clone https://github.com/karmada-io/website.git
  3. $ tree -L 1
  4. #.
  5. #├── karmada
  6. #├── website
  1. Run generate command in karmada root dir.
  1. cd karmada/
  2. go run ./hack/tools/genkarmadactldocs/gen_karmadactl_docs.go ../website/docs/reference/karmadactl/karmadactl-commands/
  3. go run ./hack/tools/genkarmadactldocs/gen_karmadactl_docs.go ../website/i18n/zh/docusaurus-plugin-content-docs/current/reference/karmadactl/karmadactl-commands/
  1. Generate reference docs of each component one by one. Here we take karmada-apiserver as an example.
  1. cd karmada/
  2. go build ./hack/tools/gencomponentdocs/.
  3. ./gencomponentdocs ../website/docs/reference/components/ karmada-apiserver
  4. ./gencomponentdocs ../website/i18n/zh/docusaurus-plugin-content-docs/current/reference/components/ karmada-apiserver

Setup release-1.x(manually)

  1. Update versions.json
  1. cd website/
  2. vim versions.json
  3. [
  4. v1.5 # add a new version tag
  5. v1.4
  6. v1.3
  7. ]
  1. Update versioned_docs
  1. mkdir versioned_docs/version-v1.5
  2. cp docs/* versioned_docs/version-v1.5 -r
  1. Update versioned_sidebars
  1. cp versioned_sidebars/version-v1.4-sidebars.json versioned_sidebars/version-v1.5-sidebars.json
  2. sed -i'' -e "s/version-v1.4/version-v1.5/g" versioned_sidebars/version-v1.5-sidebars.json
  3. # update version-v1.5-sidebars.json based on sidebars.js
  1. Update versioned_docs for zh
  1. mkdir i18n/zh/docusaurus-plugin-content-docs/version-v1.5
  2. cp i18n/zh/docusaurus-plugin-content-docs/current/* i18n/zh/docusaurus-plugin-content-docs/version-v1.5 -r
  1. Update versioned_sidebars for zh
  1. cp i18n/zh/docusaurus-plugin-content-docs/current.json i18n/zh/docusaurus-plugin-content-docs/version-v1.5.json
  2. sed -i'' -e "s/Next/v1.5/g" i18n/zh/docusaurus-plugin-content-docs/version-v1.5.json

Check the difference of website and send a pull request(manually)