diff --git a/.forgejo/workflows/build-docusaurus.yml b/.forgejo/workflows/build-docusaurus.yml new file mode 100644 index 0000000..bece92a --- /dev/null +++ b/.forgejo/workflows/build-docusaurus.yml @@ -0,0 +1,46 @@ +name: build-docusaurus +on: [push, pull_request] + +jobs: + build: + runs-on: docker + steps: + - name: checkout repository + uses: https://code.forgejo.org/actions/checkout@v4 + + - name: setup node + uses: https://github.com/actions/setup-node@v4 + with: + node-version: 20 + + - name: restore cached dependencies + uses: https://code.forgejo.org/actions/cache/restore@v4 + with: + path: | + ~/.npm + docusaurus/node_modules + key: ${{ runner.os }}-Docusaurus + + - name: install dependencies + run: npm install --frozen-lockfile + working-directory: docusaurus + + - name: build project + run: npm run build + working-directory: docusaurus + + - name: capture build artifacts + uses: https://code.forgejo.org/forgejo/upload-artifact@v4 + with: + name: docusaurus-artifacts.zip + path: docusaurus/build/ + if-no-files-found: error + + - name: cache downloaded dependencies + if: ${{ github.ref_name == github.event.repository.default_branch }} + uses: https://code.forgejo.org/actions/cache/save@v4 + with: + path: | + ~/.npm + docusaurus/node_modules + key: ${{ runner.os }}-Docusaurus