name: Website Build & Deploy
on:
workflow_dispatch:
push:
branches:
- main
schedule:
- cron: '0 0 * * *'
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- name: Check formatting
run: cargo fmt --all -- --check
- name: Clippy check
run: cargo clippy -- -D warnings
- name: Build
run: cargo build --release
- name: Test
run: cargo test --release
- name: Run
if: github.repository_owner == 'sergree'
run: cargo run --release
- name: Deploy
if: github.repository_owner == 'sergree'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build
keep_files: true