DOC: Document Remote Code Execution risk for Dataframe.query and comp… #2
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: Doc Build and Upload | |
on: | |
push: | |
branches: | |
- main | |
- 2.2.x | |
tags: | |
- '*' | |
pull_request: | |
branches: | |
- main | |
- 2.2.x | |
env: | |
ENV_FILE: environment.yml | |
PANDAS_CI: 1 | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
permissions: | |
contents: read | |
jobs: | |
web_and_docs: | |
name: Doc Build and Upload | |
runs-on: ubuntu-22.04 | |
concurrency: | |
# https://github.community/t/concurrecy-not-work-for-push/183068/7 | |
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-web-docs | |
cancel-in-progress: true | |
defaults: | |
run: | |
shell: bash -el {0} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Conda | |
uses: ./.github/actions/setup-conda | |
- name: Build Pandas | |
uses: ./.github/actions/build_pandas | |
- name: Test website | |
run: python -m pytest web/ | |
- name: Build website | |
run: python web/pandas_web.py web/pandas --target-path=web/build | |
- name: Build documentation | |
run: doc/make.py --warnings-are-errors | |
- name: Build documentation zip | |
run: doc/make.py zip_html | |
- name: Install ssh key | |
run: | | |
mkdir -m 700 -p ~/.ssh | |
echo "${{ secrets.server_ssh_key }}" > ~/.ssh/id_rsa | |
chmod 600 ~/.ssh/id_rsa | |
echo "${{ secrets.server_ip }} ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFjYkJBk7sos+r7yATODogQc3jUdW1aascGpyOD4bohj8dWjzwLJv/OJ/fyOQ5lmj81WKDk67tGtqNJYGL9acII=" > ~/.ssh/known_hosts | |
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/')) | |
- name: Copy cheatsheets into site directory | |
run: cp doc/cheatsheet/Pandas_Cheat_Sheet* web/build/ | |
- name: Upload web | |
run: rsync -az --delete --exclude='pandas-docs' --exclude='docs' --exclude='benchmarks' web/build/ web@${{ secrets.server_ip }}:/var/www/html | |
if: github.event_name == 'push' && github.ref == 'refs/heads/main' | |
- name: Upload dev docs | |
run: rsync -az --delete doc/build/html/ web@${{ secrets.server_ip }}:/var/www/html/pandas-docs/dev | |
if: github.event_name == 'push' && github.ref == 'refs/heads/main' | |
- name: Upload prod docs | |
run: rsync -az --delete doc/build/html/ web@${{ secrets.server_ip }}:/var/www/html/pandas-docs/version/${GITHUB_REF_NAME:1} | |
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') | |
- name: Move docs into site directory | |
run: mv doc/build/html web/build/docs | |
- name: Save website as an artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: website | |
path: web/build | |
retention-days: 14 |