Newer
Older
name: Main Workflow
on:
push:
schedule:
- cron: "0 0 * * 0"
jobs:
build:
name: Build
timeout-minutes: 10
strategy:
matrix:
rust-version: [
"1.56.1",
"1.60.0",
"1.62.0",
"1.63.0",
"1.64.0",
"1.65.0",
runs-on: ubuntu-latest
container: rust:${{ matrix.rust-version }}
steps:
- name: Checkout code from repository
uses: actions/checkout@v3
- name: Install Rust components
run: |
rustup component add rustfmt
rustup component add clippy
- name: Print Rust information
run: rustc --version
- name: Verify Rust code format
run: cargo fmt --all -- --check
- name: Verify Rust code linting
run: cargo clippy -- -D warnings -A unknown-lints
- name: Build development version
run: cargo build
- name: Build release version
run: cargo build --release
rust-version: [
"1.64.0",
"1.65.0",
runs-on: ubuntu-latest
container: rust:${{ matrix.rust-version }}
steps:
- name: Checkout code from repository
uses: actions/checkout@v3
- name: Install Rust components
run: |
rustup component add rustfmt
rustup component add clippy
- name: Print Rust information
run: rustc --version
- name: Verify Rust code format
run: cargo fmt --all -- --check
- name: Verify Rust code linting
run: cargo clippy -- -D warnings -A unknown-lints
- name: Install wasm-pack
run: cargo install wasm-pack
- name: Build WASM Web binary
run: wasm-pack build --release --target=web --out-dir=frontends/web/lib -- --features wasm
- name: Install Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Build and lint Web code
run: cd frontends/web && npm install && npm run build && npm run lint
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
build-sdl:
name: Build SDL
timeout-minutes: 10
strategy:
matrix:
rust-version: [
"1.61.0",
"1.62.0",
"1.63.0",
"1.64.0",
"1.65.0",
"1.66.0",
"1.67.0",
"1.68.0",
"latest"
]
runs-on: ubuntu-latest
container: rust:${{ matrix.rust-version }}
steps:
- name: Checkout code from repository
uses: actions/checkout@v3
- name: Install Rust components
run: |
rustup component add rustfmt
rustup component add clippy
- name: Print Rust information
run: rustc --version
- name: Verify Rust code format
run: cd frontends/sdl && cargo fmt --all -- --check
- name: Verify Rust code linting
run: cd frontends/sdl && cargo clippy -- -D warnings -A unknown-lints
- name: Install SDL dependencies
run: cd frontends/sdl && cargo install cargo-vcpkg && cargo vcpkg build
- name: Build development version
run: cd frontends/sdl && cargo build
- name: Build release version
run: cd frontends/sdl && cargo build --release