Skip to content

Commit ecd6741

Browse files
committed
fixup!
1 parent 5f73bcc commit ecd6741

5 files changed

Lines changed: 101 additions & 4 deletions

File tree

‎.vercelignore‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Ignored the cloned `node` folder
2+
/node

‎package.json‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,14 @@
2121
"prepare": "husky || exit 0",
2222
"run": "node packages/cli/bin/cli.mjs",
2323
"watch": "node --watch packages/cli/bin/cli.mjs",
24+
"docs:build": "node --run build:site",
2425
"build:site": "bash scripts/deployments/site/main.sh",
2526
"build:beta": "bash scripts/deployments/beta/main.sh",
2627
"build": "node --run build:site",
27-
"deploy:site": "wrangler deploy --config scripts/deployments/site/wrangler.jsonc",
28-
"deploy:beta": "wrangler deploy --config scripts/deployments/beta/wrangler.jsonc",
29-
"preview:site": "wrangler versions upload --config scripts/deployments/site/wrangler.jsonc",
30-
"preview:beta": "wrangler versions upload --config scripts/deployments/beta/wrangler.jsonc",
28+
"deploy:site": "WRANGLER_LOG=debug wrangler deploy --config scripts/deployments/site/wrangler.jsonc",
29+
"deploy:beta": "WRANGLER_LOG=debug wrangler deploy --config scripts/deployments/beta/wrangler.jsonc",
30+
"preview:site": "WRANGLER_LOG=debug wrangler versions upload --config scripts/deployments/site/wrangler.jsonc",
31+
"preview:beta": "WRANGLER_LOG=debug wrangler versions upload --config scripts/deployments/beta/wrangler.jsonc",
3132
"changeset": "changeset",
3233
"changeset:version": "changeset version",
3334
"release": "changeset publish"

‎scripts/vercel-build.sh‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
set -e
2+
3+
# Use the tag captured during the prepare step as the docs version, so the
4+
# output reflects the nodejs/node release it was generated from (e.g. v26.0.0)
5+
# rather than the Node.js runtime version running this build (process.version).
6+
NODE_VERSION=$(cat .node-tag)
7+
8+
node packages/cli/bin/cli.mjs generate \
9+
-t orama-db \
10+
-t json \
11+
-t llms-txt \
12+
-t section-pages \
13+
-i "./node/doc/api/*.md" \
14+
--ignore "./node/doc/api/quic.md" \
15+
-o "./out" \
16+
-c "./node/CHANGELOG.md" \
17+
-v "$NODE_VERSION" \
18+
--type-map "./node/doc/type-map.json" \
19+
--config-file "./beta/doc-kit.config.mjs" \
20+
--log-level debug
21+
22+
cp ./node/doc/api/*.md "./out"
23+
24+
rm -rf node/
25+
rm -f .node-tag

‎scripts/vercel-prepare.sh‎

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
set -e
2+
3+
# Determine the latest stable release tag on nodejs/node (skip pre-releases
4+
# like `-rc`/`-nightly`, taking the highest version-sorted tag).
5+
LATEST_TAG=$(git ls-remote --tags --refs --sort='-v:refname' \
6+
https://github.com/nodejs/node.git 'v*' \
7+
| awk -F/ '$NF !~ /-/ { print $NF; exit }')
8+
9+
if [ -z "$LATEST_TAG" ]; then
10+
echo "Could not determine the latest nodejs/node release tag" >&2
11+
exit 1
12+
fi
13+
14+
# Persist the tag so the build step can use it as the docs version
15+
echo "$LATEST_TAG" > .node-tag
16+
17+
echo "Building docs for nodejs/node $LATEST_TAG"
18+
19+
# Clone the repository at that tag with no checkout and shallow history
20+
git clone --depth 1 --branch "$LATEST_TAG" --filter=blob:none --sparse \
21+
https://github.com/nodejs/node.git
22+
23+
# Move into the cloned directory
24+
cd node
25+
26+
# Enable sparse checkout and specify the folder
27+
git sparse-checkout set lib doc .
28+
29+
# TODO(@avivkeller): Remove this rewrite once nodejs/node embeds
30+
# `<DocumentationIndex />` directly.
31+
INTRODUCED_IN=$(sed -n 's/^<!--introduced_in=\(.*\)-->$/\1/p' ./doc/api/documentation.md)
32+
33+
{
34+
printf -- '---\nmdx: true\ntype: misc\n'
35+
if [ -n "$INTRODUCED_IN" ]; then
36+
printf -- 'introduced_in: %s\n' "$INTRODUCED_IN"
37+
fi
38+
printf -- '---\n'
39+
sed \
40+
-e 's|<!-- STABILITY_OVERVIEW_SLOT_BEGIN -->|<DocumentationIndex />|' \
41+
-e '/^<!--.*-->$/d' \
42+
-e '/^<!-- YAML$/,/^-->$/d' \
43+
./doc/api/documentation.md
44+
} > ./doc/api/index.md
45+
46+
rm ./doc/api/documentation.md
47+
48+
# Move back out
49+
cd ..
50+
51+
# Install dependencies
52+
pnpm install --frozen-lockfile
53+
54+
# Create the ./out directory
55+
mkdir -p out

‎vercel.json‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"cleanUrls": true,
3+
"headers": [
4+
{
5+
"source": "/assets/(.*)",
6+
"headers": [
7+
{
8+
"key": "Cache-Control",
9+
"value": "public, max-age=31536000, immutable"
10+
}
11+
]
12+
}
13+
]
14+
}

0 commit comments

Comments
 (0)