Microagent to fix issues with npm (#5314) #7843
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Workflow that builds and deploys the documentation website | |
name: Deploy Docs to GitHub Pages | |
# * Always run on "main" | |
# * Run on PRs that target the "main" branch and have changes in the "docs" folder or this workflow | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- 'docs/**' | |
- '.github/workflows/deploy-docs.yml' | |
branches: | |
- main | |
# If triggered by a PR, it will be in the same group. However, each commit on main will be in its own unique group | |
concurrency: | |
group: ${{ github.workflow }}-${{ (github.head_ref && github.ref) || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
# Build the documentation website | |
build: | |
if: github.repository == 'All-Hands-AI/OpenHands' | |
name: Build Docusaurus | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: npm | |
cache-dependency-path: docs/package-lock.json | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.12' | |
- name: Generate Python Docs | |
run: rm -rf docs/modules/python && pip install pydoc-markdown && pydoc-markdown | |
- name: Install dependencies | |
run: cd docs && npm ci | |
- name: Build website | |
run: cd docs && npm run build | |
- name: Upload Build Artifact | |
if: github.ref == 'refs/heads/main' | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: docs/build | |
# Deploy the documentation website | |
deploy: | |
if: github.ref == 'refs/heads/main' && github.repository == 'All-Hands-AI/OpenHands' | |
name: Deploy to GitHub Pages | |
runs-on: ubuntu-latest | |
# This job only runs on "main" so only run one of these jobs at a time | |
# otherwise it will fail if one is already running | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
needs: build | |
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment | |
permissions: | |
pages: write # to deploy to Pages | |
id-token: write # to verify the deployment originates from an appropriate source | |
# Deploy to the github-pages environment | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |