API docs build #40
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
name: API docs build | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 13 * * *' | |
env: | |
POETRY_VERSION: "1.7.1" | |
PYTHON_VERSION: "3.10" | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
ref: bagatur/api_docs_build | |
path: langchain | |
- uses: actions/checkout@v4 | |
with: | |
repository: langchain-ai/langchain-google | |
path: langchain-google | |
- uses: actions/checkout@v4 | |
with: | |
repository: langchain-ai/langchain-datastax | |
path: langchain-datastax | |
- name: Move google libs | |
run: | | |
rm -rf \ | |
langchain/libs/partners/google-genai \ | |
langchain/libs/partners/google-vertexai \ | |
langchain/libs/partners/astradb | |
mv langchain-google/libs/genai langchain/libs/partners/google-genai | |
mv langchain-google/libs/vertexai langchain/libs/partners/google-vertexai | |
mv langchain-datastax/libs/astradb langchain/libs/partners/astradb | |
- name: Set Git config | |
working-directory: langchain | |
run: | | |
git config --local user.email "actions@github.com" | |
git config --local user.name "Github Actions" | |
- name: Merge master | |
working-directory: langchain | |
run: | | |
git fetch origin master | |
git merge origin/master -m "Merge master" --allow-unrelated-histories -X theirs | |
- name: Set up Python ${{ env.PYTHON_VERSION }} + Poetry ${{ env.POETRY_VERSION }} | |
uses: "./langchain/.github/actions/poetry_setup" | |
with: | |
python-version: ${{ env.PYTHON_VERSION }} | |
poetry-version: ${{ env.POETRY_VERSION }} | |
cache-key: api-docs | |
working-directory: langchain | |
- name: Install dependencies | |
working-directory: langchain | |
run: | | |
poetry run python -m pip install --upgrade --no-cache-dir pip setuptools | |
poetry run python -m pip install --upgrade --no-cache-dir sphinx readthedocs-sphinx-ext | |
# skip airbyte and ibm due to pandas dependency issue | |
poetry run python -m pip install $(ls ./libs/partners | grep -vE "airbyte|ibm" | xargs -I {} echo "./libs/partners/{}") | |
poetry run python -m pip install --exists-action=w --no-cache-dir -r docs/api_reference/requirements.txt | |
- name: Build docs | |
working-directory: langchain | |
run: | | |
poetry run python -m pip install --upgrade --no-cache-dir pip setuptools | |
poetry run python docs/api_reference/create_api_rst.py | |
poetry run python -m sphinx -T -E -b html -d _build/doctrees -c docs/api_reference docs/api_reference api_reference_build/html -j auto | |
# https://github.com/marketplace/actions/add-commit | |
- uses: EndBug/add-and-commit@v9 | |
with: | |
cwd: langchain | |
message: 'Update API docs build' |