diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 841573cf30e..460207453e3 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -26,21 +26,34 @@ jobs: - uses: actions/checkout@v3 with: fetch-depth: 1 + + - uses: actions/setup-node@v3 + with: + node-version: 16 + cache: yarn - name: Install dependencies run: | apt-get update && apt-get install -y rsync nodejs npm doxygen npm install -g moxygen - - name: Build docs + - name: Build doxygen docs run: | qmk --verbose generate-docs + - name: Install yarn dependencies + working-directory: .build/docs + run: yarn install --frozen-lockfile + + - name: Build Docusaurus + working-directory: .build/docs + run: yarn build + - name: Deploy uses: JamesIves/github-pages-deploy-action@v4.4.1 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BASE_BRANCH: master BRANCH: gh-pages - FOLDER: .build/docs + FOLDER: .build/docs/build GIT_CONFIG_EMAIL: hello@qmk.fm diff --git a/docs/package-lock.json b/docs/package-lock.json index ed936edbeec..a0877ec70db 100644 --- a/docs/package-lock.json +++ b/docs/package-lock.json @@ -1,11 +1,11 @@ { - "name": "test", + "name": "qmk_firmware_docs", "version": "0.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "test", + "name": "qmk_firmware_docs", "version": "0.0.0", "dependencies": { "@docusaurus/core": "2.4.0", diff --git a/docs/package.json b/docs/package.json index d56d5c43443..a5d7d1ff9b9 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,5 +1,5 @@ { - "name": "test", + "name": "qmk_firmware_docs", "version": "0.0.0", "private": true, "scripts": { diff --git a/lib/python/qmk/cli/generate/docs.py b/lib/python/qmk/cli/generate/docs.py index eb3099e138b..81d3a7339d9 100644 --- a/lib/python/qmk/cli/generate/docs.py +++ b/lib/python/qmk/cli/generate/docs.py @@ -26,7 +26,8 @@ def generate_docs(cli): if DOXYGEN_PATH.exists(): shutil.rmtree(DOXYGEN_PATH) - shutil.copytree(DOCS_PATH, BUILD_DOCS_PATH) + # ignore node_modules when we're testing locally + shutil.copytree(DOCS_PATH, BUILD_DOCS_PATH, ignore=shutil.ignore_patterns("node_modules")) # When not verbose we want to hide all output args = {