From 432e8355714116de72d9a713c0d62382a549f40f Mon Sep 17 00:00:00 2001 From: Peter Muessig Date: Tue, 25 Mar 2025 14:48:48 +0100 Subject: [PATCH] Structure the tools folder with index modules --- .github/workflows/build.yml | 2 +- .github/workflows/deploy.yml | 2 +- package.json | 4 ++-- tools/builder/index.js | 1 + tools/{ => builder}/prepare-gh-pages.js | 0 tools/{ => deployer}/deploy-gh-pages.js | 0 tools/deployer/index.js | 1 + tools/dev-server/index.js | 1 + tools/{dev-server.js => dev-server/server.js} | 8 +++++--- tools/{ => utils}/download-assets.js | 0 10 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 tools/builder/index.js rename tools/{ => builder}/prepare-gh-pages.js (100%) rename tools/{ => deployer}/deploy-gh-pages.js (100%) create mode 100644 tools/deployer/index.js create mode 100644 tools/dev-server/index.js rename tools/{dev-server.js => dev-server/server.js} (93%) rename tools/{ => utils}/download-assets.js (100%) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ad357111..977a73b1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -28,4 +28,4 @@ jobs: run: npm install - name: Build and validate all steps - run: node tools/prepare-gh-pages.js + run: node tools/builder diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index db8b5589..4a95ca45 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -26,7 +26,7 @@ jobs: run: npm install - name: Build and validate all steps - run: node tools/prepare-gh-pages.js + run: node tools/deployer - name: Deploy to GH pages uses: peaceiris/actions-gh-pages@v4 diff --git a/package.json b/package.json index 9f38d681..e4b5e2ee 100644 --- a/package.json +++ b/package.json @@ -3,8 +3,8 @@ "author": "SAP SE", "private": true, "scripts": { - "build": "node tools/prepare-gh-pages.js", - "start": "node tools/dev-server.js" + "build": "node tools/builder", + "start": "node tools/dev-server" }, "devDependencies": { "@highlightjs/cdn-assets": "^11.11.1", diff --git a/tools/builder/index.js b/tools/builder/index.js new file mode 100644 index 00000000..88a4f82f --- /dev/null +++ b/tools/builder/index.js @@ -0,0 +1 @@ +require("./prepare-gh-pages"); diff --git a/tools/prepare-gh-pages.js b/tools/builder/prepare-gh-pages.js similarity index 100% rename from tools/prepare-gh-pages.js rename to tools/builder/prepare-gh-pages.js diff --git a/tools/deploy-gh-pages.js b/tools/deployer/deploy-gh-pages.js similarity index 100% rename from tools/deploy-gh-pages.js rename to tools/deployer/deploy-gh-pages.js diff --git a/tools/deployer/index.js b/tools/deployer/index.js new file mode 100644 index 00000000..83ec274e --- /dev/null +++ b/tools/deployer/index.js @@ -0,0 +1 @@ +require("./deploy-gh-pages"); diff --git a/tools/dev-server/index.js b/tools/dev-server/index.js new file mode 100644 index 00000000..d821517e --- /dev/null +++ b/tools/dev-server/index.js @@ -0,0 +1 @@ +require("./server"); diff --git a/tools/dev-server.js b/tools/dev-server/server.js similarity index 93% rename from tools/dev-server.js rename to tools/dev-server/server.js index fe407970..4f3ba47c 100644 --- a/tools/dev-server.js +++ b/tools/dev-server/server.js @@ -13,6 +13,8 @@ const express = require('express'); const app = express(); const port = 1337; +const cwd = process.cwd(); + async function convertMarkdown(md) { const converter = new showdown.Converter({ ghCompatibleHeaderId: true, @@ -38,14 +40,14 @@ async function getTemplate() { return templateFn; } -app.use("/node_modules", express.static(join(__dirname, "..", "node_modules"))); +app.use("/node_modules", express.static(join(cwd, "node_modules"))); app.use(async (req, res, next) => { let file, url; if (req.url.endsWith("/")) { for (const index of ["index.md", "README.md"]) { url = `${req.url}${index}`; - file = join(__dirname, "..", url); + file = join(cwd, url); if (existsSync(file) && statSync(file).isFile()) { break; } else { @@ -53,7 +55,7 @@ app.use(async (req, res, next) => { } } } else { - file = join(__dirname, "..", req.url); + file = join(cwd, req.url); if (!(existsSync(file) && statSync(file).isFile())) { file = undefined; } diff --git a/tools/download-assets.js b/tools/utils/download-assets.js similarity index 100% rename from tools/download-assets.js rename to tools/utils/download-assets.js