mirror of
https://github.com/redstrate/Kawari.git
synced 2025-05-12 14:47:46 +00:00
This makes it possible to use Kawari easily without compilation. You still need to acquire Oodle yourself since we build with the shared library version of Oodle. The USAGE instructions is modified accordingly.
78 lines
1.9 KiB
YAML
78 lines
1.9 KiB
YAML
name: Main
|
|
|
|
on:
|
|
push:
|
|
branches: [ "master" ]
|
|
pull_request:
|
|
branches: [ "master" ]
|
|
|
|
env:
|
|
CARGO_TERM_COLOR: always
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [windows-latest, ubuntu-latest]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/cache@v4
|
|
id: cache-deps
|
|
with:
|
|
path: |
|
|
~/.cargo/bin/
|
|
~/.cargo/registry/index/
|
|
~/.cargo/registry/cache/
|
|
~/.cargo/git/db/
|
|
target/
|
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
- uses: robinraju/release-downloader@v1
|
|
if: runner.os == 'Linux'
|
|
with:
|
|
repository: 'WorkingRobot/OodleUE'
|
|
fileName: 'gcc.zip'
|
|
latest: true
|
|
extract: true
|
|
- if: runner.os == 'Linux'
|
|
run: |
|
|
mkdir oodle
|
|
cp lib/Release/liboodle-network-shared.so oodle/
|
|
- uses: robinraju/release-downloader@v1
|
|
if: runner.os == 'Windows'
|
|
with:
|
|
repository: 'WorkingRobot/OodleUE'
|
|
fileName: 'clang-cl.zip'
|
|
latest: true
|
|
extract: true
|
|
- if: runner.os == 'Windows'
|
|
run: |
|
|
mkdir oodle
|
|
cp ar/Release/oodle-network-shared.lib oodle/
|
|
- name: Build
|
|
run: cargo build --release --verbose
|
|
- name: Run clippy
|
|
run: cargo clippy
|
|
- name: Run tests
|
|
run: cargo test --verbose
|
|
- name: Archive artifacts
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ runner.os }}-package
|
|
path: |
|
|
LICENSE
|
|
USAGE.md
|
|
README.md
|
|
Caddyfile
|
|
target/release/kawari-admin*
|
|
target/release/kawari-frontier*
|
|
target/release/kawari-lobby*
|
|
target/release/kawari-login*
|
|
target/release/kawari-patch*
|
|
target/release/kawari-web*
|
|
target/release/kawari-world*
|
|
!target/release/*.d
|
|
if-no-files-found: error
|