ci: use github actions

This commit is contained in:
Kirill Chibisov 2023-10-10 20:15:14 +04:00 committed by GitHub
parent 78e4465d79
commit e2ffc4f183
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 91 additions and 78 deletions

45
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,45 @@
name: CI
on:
pull_request:
push:
branches: [main]
env:
RUST_BACKTRACE: 1
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-Cdebuginfo=0 --deny=warnings"
RUSTDOCFLAGS: "--deny=warnings"
jobs:
fmt:
name: Check Formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: hecrj/setup-rust-action@v1
with:
rust-version: nightly
components: rustfmt
- name: Check Formatting
run: cargo +nightly fmt --all -- --check
tests:
name: Tests
runs-on: ubuntu-latest
strategy:
matrix:
rust_version: ["1.65", stable, nightly]
steps:
- uses: actions/checkout@v3
- uses: hecrj/setup-rust-action@v1
with:
rust-version: ${{ matrix.rust_version }}
- name: Check documentation
run: cargo doc --no-deps --document-private-items
- name: Run tests
run: cargo test --verbose

45
.github/workflows/docs.yml vendored Normal file
View file

@ -0,0 +1,45 @@
name: Deploy Docs to GitHub Pages
on:
push:
branches:
- master
jobs:
doc:
name: Documentation on Github Pages
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Cargo cache
uses: actions/cache@v1
with:
path: ~/.cargo
key: cargo-stable
- name: Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install system dependencies
run: sudo apt-get install libxkbcommon-dev libwayland-dev
- name: Build Documentation
uses: actions-rs/cargo@v1
with:
command: doc
args: --no-deps
- name: Setup index
run: cp ./doc_index.html ./target/doc/index.html
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./target/doc