feat: sandbox
trampoline implementation (#935)
#700
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: Deploy Docs | |
on: | |
push: | |
branches: | |
- main | |
env: | |
CARGO_TERM_COLOR: always | |
RUSTFLAGS: "-D warnings" | |
RUSTDOCFLAGS: --html-in-header header.html | |
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
# Allow one concurrent deployment | |
concurrency: | |
group: "pages" | |
cancel-in-progress: true | |
jobs: | |
build-and-deploy: | |
if: github.repository == 'conda/rattler' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
- uses: prefix-dev/[email protected] | |
with: | |
manifest-path: py-rattler/pixi.toml | |
- name: Setup Pages | |
uses: actions/configure-pages@v5 | |
# This does the following: | |
# - Replaces the docs icon with one that clearly denotes it's not the released package on crates.io | |
# - Adds a meta tag that forces Google not to index any page on the site. | |
- name: Pre-docs-build | |
run: | | |
echo "<meta name=\"robots\" content=\"noindex\">" > header.html | |
- name: Build Rattler Documentation | |
run: cargo doc --workspace --no-deps --all-features --lib | |
- name: Build Py-rattler Documentation | |
run: pixi run --manifest-path py-rattler/pixi.toml build-docs | |
# This adds the following: | |
# - A top level redirect to the rattler crate documentation | |
# - A path to the py-rattler documentation | |
# - A secondary redirect to the rattler crate documentation | |
# - A robots.txt file to forbid any crawling of the site (to defer to the docs.rs site on search engines). | |
# - A .nojekyll file to disable Jekyll GitHub Pages builds. | |
- name: Finalize documentation | |
run: | | |
mkdir docs | |
cp target/doc/ docs/rattler -r | |
cp py-rattler/site/ docs/py-rattler -r | |
echo "<meta http-equiv=\"refresh\" content=\"0; url=rattler/index.html\">" > docs/index.html | |
echo "<meta http-equiv=\"refresh\" content=\"0; url=rattler/index.html\">" > docs/rattler/index.html | |
echo "User-Agent: *\nDisallow: /" > docs/robots.txt | |
touch docs/.nojekyll | |
# https://github.com/actions/upload-pages-artifact#file-permissions | |
- run: chmod -c -R +rX docs/ | |
- name: Upload artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: "docs" | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |