name: Deploy Docs to GitHub Pages on: push: branches: - main pull_request: branches: - main jobs: build: name: Build Docusaurus runs-on: ubuntu-latest if: github.repository == 'OpenDevin/OpenDevin' 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.11" - 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: name: Deploy to GitHub Pages needs: build if: github.ref == 'refs/heads/main' && github.repository == 'OpenDevin/OpenDevin' # 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 }} runs-on: ubuntu-latest steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4