The complete documentation is fully versioned. This means that there will be no static content that is the same across all versions. The documentation contains a drop down menu to set the version including Next
, a version-less preview.
Patch releases for docs can happen nearly any time, barring significant infrastructure changes. Currently, it's recommended to either ask for a release in #ask-documentation (internal Camunda employees only) or include a release date in the PR.
Issues or PRs labeled Bug
will be prioritized and released as soon as possible, but may not be immediate.
To perform a patch release, confirm what is on main
via staging at stage.docs.camunda.io is ready for release.
Then use the GitHub UI and follow the instructions below:
- Navigate to https://github.com/camunda/camunda-docs/releases and click Draft a new release
- Click Choose a tag and create a new tag representing the next patch release. The title with autopopulate.
- Click Autogenerate release notes. The Describe this release field will fill with PRs included in this release.
- Click Publish release.
The build process for publish-prod will kick off which could take around 30 min to finish. If publish-prod is successful, the updates will appear on docs.camunda.io.
Minor releases to Camunda 8 happen twice a year in April and October, on the second Tuesday of the month, and the documentation is versioned on the same cadence.
To prepare for a minor product release, you'll need to create a new docs version.
The versioning process copies a snapshot of the current documentation from the un-versioned source to a new versioned source location.
Docusaurus creates the new version in versioned_docs
. The contents in docs
immediately become the documentation for the next release. See the versioning docs for more details on source locations of versions.
To create the new versions:
-
Make the
./hacks/cutNewVersions.sh
shell file executable, if it isn't already:> chmod +x ./hacks/cutNewVersions.sh
-
Create a new branch, from
main
. For example,release-8.8-all-steps
. -
Update the versions at the top of the
./hacks/cutNewVersions.sh
file. -
Run the
./hacks/cutNewVersions.sh
script:> ./hacks/cutNewVersions.sh
-
Create a second branch, for example
release-8.8-first-step
, pointed at the first commit generated by the./hacks/cutNewVersions.sh
script. Open a PR for this branch, intomain
.Tip: This commit is very large, and will crash the browser of anyone trying to review it. Use the GitHub CLI to create this PR, to avoid crashing your own browser. Example:
gh pr create --assignee @me --title "release(8.8): release version 8.8 (the big PR)"
-
Switch back to the original branch, e.g.
release-8.8-all-steps
. -
Make manual updates for the new version:
-
Ensure the "unmaintained" banner does not appear for supported versions. We currently support all versions of Camunda 8 since none are older than 18 months.
// 👋 When cutting a new version, remove the banner for maintained versions by adding an entry. Remove the entry to versions >18 months old. versions: { "8.3": { banner: "none", }, },
-
Ensure the older docs do not appear in the sitemap. Only the unversioned links should appear in the sitemap.
In docusaurus.config.js, add the previously current version number to the ignorePatterns array:
sitemap: { changefreq: "weekly", priority: 0.5, ignorePatterns: [ "/docs/8.3/**", ], },
-
-
Fix cross-version links.
Cross-version linking will often break when a new version is cut. All but the first in this need to be corrected:
- Links that are intentionally crossing versions.
- Links that are accidentally crossing versions, i.e. markdown paths that mistakenly begin with
docs/
or browser paths that mistakenly lack a .md file extension. - DocCardList links, which currently require a browser path.
-
Correct redirects.
Adjust the .htaccess file to account for URL changes due to modifying vCurrent.
- Remove the
/next
version from redirects located in the new current version's section. - Add redirects for content that was moved in vNext prior to this release but not accounted for in the .htaccess.
- Add a banner for the next version at the top of [section 3]
Lines 144 to 150 in b44afba
See this example for guidance.
- Remove the
-
Open a second PR from the branch that includes all steps (e.g.
release-8-8-all-steps), targeting the branch from the first PR (e.g.
release-8-8-first-step`). This PR will be much easier for users to review in the GitHub UI, since it does not include the massive amount of content changes in the first step.Tip: Use the GitHub CLI to create this PR also. Specify the
--base
option to target the first PR. Example:gh pr create --base "release-8-8-first-step" --assignee @me --title "release(8.8): release version 8.8 (the reviewable PR)"
-
With successful build and approval, merge the second PR into the first. Then merge the first into
main
.
Use the GitHub UI and follow the instructions below:
- Navigate to https://github.com/camunda/camunda-docs/releases and click Draft a new release
- Click Choose a tag and create a new tag representing the minor release. The title with autopopulate.
- Click Autogenerate release notes. The Describe this release field will fill with PRs included in this release.
- Click Publish release.
The build process for publish-prod will kick off which could take around 30 min to finish. If publish-prod is successful, the updates will appear on docs.camunda.io.
The Algolia crawler runs as soon as a production publish completes.
Manually triggering the Algolia crawler is not intuitive(!!!) and requires admin access. Contact @akeller for assistance.
- Login to the Algolia dashboard.
- In the bottom left corner, click ** Data sources **, and after the UI loads, click ** Crawler **. If the sidebar is collapsed, you may only see a database icon (it looks like a barrel) instead of Data sources.
- Click camunda, which should show the status Idle.
- Click Resume crawling in the upper right corner. It will change to Cancel crawl, and the UI should update.
Once the crawl is complete, you should see the updates you expected as search results.