mirror of
https://gitea.com/gitea/docs.git
synced 2026-11-05 17:45:46 +00:00
feat: add a cli product for the gt documentation
gt, the Gitea CLI, gets its own product next to the runner: the CLI entry in the header, its own sidebars, search scope, crawler start url and redirects, and `make cut-version PRODUCT=cli`. Until a release series is listed, the develop docs are served at /cli/ without the unreleased banner. A directory with an index page and no _category_.json now takes its sidebar label and position from that page, which leads the group, so the generated reference can be grouped by command. Signed-off-by: bircni <[email protected]>
This commit is contained in:
10 files changed
+104
-41
No files matched your search
+10
-8
@@ -4,10 +4,11 @@
|
||||
*
|
||||
* node scripts/cut-version.mjs docs 1.28 # freezes docs/ as 1.28
|
||||
* node scripts/cut-version.mjs runner 4 # freezes runner-docs/ as 4
|
||||
* node scripts/cut-version.mjs cli 0.1 # freezes cli-docs/ as 0.1
|
||||
*
|
||||
* For the docs it copies the english tree, every translation and the sidebar
|
||||
* file; for the runner the english tree and its sidebar. The version list
|
||||
* (`versions.json`, `runner-docs_versions.json`) is updated too.
|
||||
* file; for the runner and the cli the english tree and its sidebar. The
|
||||
* version list (`versions.json`, `<product>-docs_versions.json`) is updated too.
|
||||
*
|
||||
* The label, the release variables (`@version@`, `@dockerVersion@`, ...) and
|
||||
* which version is served at the root live in
|
||||
@@ -21,8 +22,8 @@ import process from 'node:process';
|
||||
|
||||
const [product, version] = process.argv.slice(2);
|
||||
|
||||
if (!product || !version || !['docs', 'runner'].includes(product)) {
|
||||
console.error('usage: node scripts/cut-version.mjs <docs|runner> <version>');
|
||||
if (!product || !version || !['docs', 'runner', 'cli'].includes(product)) {
|
||||
console.error('usage: node scripts/cut-version.mjs <docs|runner|cli> <version>');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
@@ -52,6 +53,7 @@ async function freeze(from, to) {
|
||||
async function freezeSidebar(from, to) {
|
||||
if (await exists(to)) throw new Error(`${to} already exists`);
|
||||
const sidebar = require(path.join(root, from));
|
||||
await mkdir(path.join(root, path.dirname(to)), { recursive: true });
|
||||
await writeFile(path.join(root, to), `${JSON.stringify(sidebar, null, 2)}\n`);
|
||||
console.log(` ${from} -> ${to}`);
|
||||
}
|
||||
@@ -80,12 +82,12 @@ if (product === 'docs') {
|
||||
|
||||
await addToVersions('versions.json');
|
||||
} else {
|
||||
await freeze('runner-docs', `runner-docs_versioned_docs/version-${version}`);
|
||||
await freeze(`${product}-docs`, `${product}-docs_versioned_docs/version-${version}`);
|
||||
await freezeSidebar(
|
||||
'runner-sidebars.js',
|
||||
`runner-docs_versioned_sidebars/version-${version}-sidebars.json`,
|
||||
`${product}-sidebars.js`,
|
||||
`${product}-docs_versioned_sidebars/version-${version}-sidebars.json`,
|
||||
);
|
||||
await addToVersions('runner-docs_versions.json');
|
||||
await addToVersions(`${product}-docs_versions.json`);
|
||||
}
|
||||
|
||||
console.log(
|
||||
|
||||
Reference in new issue
Block a user