name: GitHub pages on: push: branches: - master paths: # One day we might include all htdocs folders: # - '**/htdocs/**' # Until then, follow jsdoc.conf.json:source directive - 'modules/luci-base/htdocs/luci-static/resources/**' - 'docs/**' jobs: build: if: endsWith( github.repository, 'luci' ) runs-on: ubuntu-latest # permissions: # pages: write # id-token: write # environment: # name: github-pages # url: ${{ steps.deployment.outputs.page_url }} steps: - name: Checkout code uses: actions/checkout@v6 - name: Install run: npm install - name: Build run: npm run doc - name: Archive docs as artifact uses: actions/upload-pages-artifact@v4 with: name: docs path: ./docs/ - name: Deploy uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/ enable_jekyll: false # Deploy step depends on the repo settings->pages config: choose Branch # "gh-pages", path "/". Deploy creates a commit on the gh-pages branch, # with the content of built docs folder "/docs" in repo root "/". # This is the "luci" repo, so the result of gh-pages is deployed to # ".github.io/luci" # - name: Deploy to GitHub Pages # id: deployment # uses: actions/deploy-pages@v4 # with: # artifact_name: docs