diff --git a/.github/workflows/jsdoc-to-gh-pages.yml b/.github/workflows/jsdoc-to-gh-pages.yml new file mode 100644 index 0000000..6928267 --- /dev/null +++ b/.github/workflows/jsdoc-to-gh-pages.yml @@ -0,0 +1,35 @@ +name: Publish JSDoc documentation in Node.js app in GitHub Pages + +on: + push: + branches: [ "dev" ] + pull_request: + branches: [ "dev" ] + +jobs: + gh-pages: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [ 22.x ] + + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: "npm" + - name: Install dependencies + run: npm ci + - name: Optional build step + run: npm run build --if-present + - name: Generate JSDoc + run: npm run docs + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GH_PAGES_TOKEN }} + publish_dir: ./public # replace with your JSDoc output directory if different diff --git a/.github/workflows/nodejs.yml b/.github/workflows/test-node.yml similarity index 63% rename from .github/workflows/nodejs.yml rename to .github/workflows/test-node.yml index b032b74..43a8d43 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/test-node.yml @@ -1,6 +1,6 @@ # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs -name: Node.js CI +name: Test Node.js app in CI on: push: @@ -9,7 +9,7 @@ on: branches: [ "dev" ] jobs: - build: + test: runs-on: ubuntu-latest strategy: @@ -17,12 +17,16 @@ jobs: node-version: [ 20.x, 22.x ] steps: - - uses: actions/checkout@v4 + - name: Checkout code + uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: "npm" - - run: npm ci - - run: npm run build --if-present - - run: npm test + - name: Install dependencies + run: npm ci + - name: Optional build step + run: npm run build --if-present + - name: Run tests + run: npm test diff --git a/.gitignore b/.gitignore index 2776320..dc4ae3d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,9 @@ node_modules/ jspm_packages/ +# Documentation directory +public + # Logs logs *.log diff --git a/package-lock.json b/package-lock.json index f6a7955..6583152 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "imergo-logger": "8.5.0" }, "devDependencies": { - "clean-jsdoc-theme": "4.2.18", + "clean-jsdoc-theme": "4.3.0", "docdash": "2.0.2", "jsdoc": "4.0.3" }, @@ -305,9 +305,9 @@ } }, "node_modules/clean-jsdoc-theme": { - "version": "4.2.18", - "resolved": "https://registry.npmjs.org/clean-jsdoc-theme/-/clean-jsdoc-theme-4.2.18.tgz", - "integrity": "sha512-iPz34GEhTZGW33Oi25IUgW1suGFuQZoDoCjn82BEI7Ck83CvJisrrxYv3WLjHA/wz8g82wy8WsUyRiTGajUZdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/clean-jsdoc-theme/-/clean-jsdoc-theme-4.3.0.tgz", + "integrity": "sha512-QMrBdZ2KdPt6V2Ytg7dIt0/q32U4COpxvR0UDhPjRRKRL0o0MvRCR5YpY37/4rPF1SI1AYEKAWyof7ndCb/dzA==", "dev": true, "dependencies": { "@jsdoc/salty": "^0.2.4", diff --git a/package.json b/package.json index 5f906ea..58998c3 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "imergo-logger": "8.5.0" }, "devDependencies": { - "clean-jsdoc-theme": "4.2.18", + "clean-jsdoc-theme": "4.3.0", "docdash": "2.0.2", "jsdoc": "4.0.3" },