Write governance proposal results to storage #6829
Workflow file for this run
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: Build docs | |
on: | |
push: | |
branches: | |
- main | |
# Run in PRs with conflicts (https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request) | |
pull_request_target: | |
types: [opened, synchronize, reopened] | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number }} | |
cancel-in-progress: true | |
permissions: | |
id-token: write | |
contents: read | |
env: | |
RUSTC_WRAPPER: sccache | |
SCCACHE_S3_USE_SSL: ${{ secrets.CACHE_SSL }} | |
GIT_LFS_SKIP_SMUDGE: 1 | |
CARGO_INCREMENTAL: 0 | |
RUST_BACKTRACE: full | |
SCCACHE_BUCKET: namada-cache | |
SCCACHE_ENDPOINT: ${{ secrets.CACHE_ENDPOINT }} | |
AWS_ACCESS_KEY_ID: ${{ secrets.CACHE_ACCESS_KEY }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.CACHE_SECRET_KEY }} | |
jobs: | |
docs: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04] | |
nightly_version: [nightly-2023-06-01] | |
mdbook_version: [rust-lang/[email protected]] | |
mdbook_mermaid: [badboy/[email protected]] | |
mdbook_linkcheck: [Michael-F-Bryan/[email protected]] | |
mdbook_open_on_gh: [badboy/[email protected]] | |
mdbook_admonish: [tommilligan/[email protected]] | |
mdbook_katex: [lzanini/[email protected]] | |
mdbook_pagetoc: [slowsage/[email protected]] | |
make: | |
- name: Build development docs | |
folder: documentation/dev | |
bucket: namada-dev-static-website | |
command: cargo run --bin namada_encoding_spec && cd documentation/dev && mdbook build | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
if: ${{ github.event_name != 'pull_request_target' }} | |
- name: Checkout PR | |
uses: actions/checkout@v4 | |
if: ${{ github.event_name == 'pull_request_target' }} | |
# See comment in build-and-test.yml | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run sccache-cache | |
uses: mozilla-actions/[email protected] | |
- name: Setup rust toolchain | |
uses: oxidecomputer/actions-rs_toolchain@ad3f86084a8a5acf2c09cb691421b31cf8af7a36 | |
with: | |
profile: default | |
override: true | |
- name: Setup rust nightly | |
uses: oxidecomputer/actions-rs_toolchain@ad3f86084a8a5acf2c09cb691421b31cf8af7a36 | |
with: | |
toolchain: ${{ matrix.nightly_version }} | |
profile: default | |
- name: Show rust toolchain info | |
run: rustup show | |
- name: Start sccache server | |
run: sccache --start-server | |
- name: Install cargo tool | |
run: | | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_version }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_mermaid }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_linkcheck }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_open_on_gh }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_admonish }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_katex }}! | bash | |
curl -k https://installer.heliax.click/${{ matrix.mdbook_pagetoc }}! | bash | |
cd ${{ matrix.make.folder }} && mdbook-admonish install | |
- name: ${{ matrix.make.name }} | |
run: ${{ matrix.make.command }} | |
- name: Zip doc folder | |
run: tar -cvf ${{ matrix.make.bucket }}.tar ${{ matrix.make.folder }}/book | |
- name: Upload rendered docs | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ${{ matrix.make.bucket }}-${{ github.event.pull_request.head.sha || github.sha }} | |
path: ${{ matrix.make.bucket }}.tar | |
- name: Print sccache stats | |
if: always() | |
run: sccache --show-stats | |
- name: Stop sccache server | |
if: always() | |
run: sccache --stop-server || true | |
- name: Clean cargo cache | |
run: | | |
cargo install cargo-cache --no-default-features --features ci-autoclean cargo-cache | |
cargo-cache | |
rust-docs: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04] | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
if: ${{ github.event_name != 'pull_request_target' }} | |
- name: Checkout PR | |
uses: actions/checkout@v4 | |
if: ${{ github.event_name == 'pull_request_target' }} | |
# See comment in build-and-test.yml | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run sccache-cache | |
uses: mozilla-actions/[email protected] | |
- name: Setup rust toolchain | |
uses: oxidecomputer/actions-rs_toolchain@ad3f86084a8a5acf2c09cb691421b31cf8af7a36 | |
with: | |
profile: default | |
override: true | |
- name: Setup rust nightly | |
uses: oxidecomputer/actions-rs_toolchain@ad3f86084a8a5acf2c09cb691421b31cf8af7a36 | |
with: | |
toolchain: ${{ matrix.nightly_version }} | |
profile: default | |
- name: Show rust toolchain info | |
run: rustup show | |
- name: Start sccache server | |
run: sccache --start-server | |
- name: Build rust-docs | |
run: make build-doc | |
- name: Print sccache stats | |
if: always() | |
run: sccache --show-stats || true | |
- name: Stop sccache server | |
if: always() | |
run: sccache --stop-server || true | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
with: | |
version: v0.9.1 | |
- name: Login to private registry | |
uses: docker/login-action@v1 | |
with: | |
registry: ${{ secrets.REGISTRY_URL }} | |
username: ${{ secrets.REGISTRY_USERNAME }} | |
password: ${{ secrets.REGISTRY_PASSWORD }} | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: ${{ secrets.REGISTRY_URL }}/namada-rust-docs | |
tags: | | |
type=schedule | |
type=ref,event=branch | |
type=ref,event=pr | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=semver,pattern={{major}} | |
type=raw,value=latest | |
- name: Build and push `namada-rust-docs image` | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: docker/docs/Dockerfile | |
push: ${{ github.ref == 'refs/heads/main' }} | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
- name: Clean cargo cache | |
run: | | |
cargo install cargo-cache --no-default-features --features ci-autoclean cargo-cache | |
cargo-cache |