mirror of
https://github.com/hexedtech/codemp.git
synced 2024-10-22 17:59:20 +02:00
alemi
89c221ba40
kind of ugly because most of the build step is repeated but i don't really have a way to make conditional steps and can't add those config flags to the bare project because they make tests fail
74 lines
2.1 KiB
YAML
74 lines
2.1 KiB
YAML
name: lua
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- ci
|
|
- stable
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.platform.runner }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform:
|
|
- runner: ubuntu-latest
|
|
target: linux-x64-gnu
|
|
filename: libcodemp.so
|
|
- runner: windows-latest
|
|
target: win32-x64
|
|
filename: codemp.dll
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
- uses: arduino/setup-protoc@v3
|
|
- run: cargo build --release --features=lua
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: codemp-lua-${{ matrix.platform.target }}
|
|
path: target/release/${{ matrix.platform.filename }}
|
|
|
|
# macos requires some extra cargo config to make it work, but
|
|
# these settings make test fail so better limit them to this run
|
|
build-macos:
|
|
runs-on: ${{ matrix.platform.runner }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform:
|
|
- runner: macos-14
|
|
target: darwin-arm64
|
|
filename: codemp.dylib
|
|
#- runner: macos-12
|
|
# target: darwin-x64
|
|
# filename: codemp.dylib
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
- uses: arduino/setup-protoc@v3
|
|
# this is the extra config required for lua
|
|
- run: mkdir .cargo
|
|
- run: echo '${{ MLUA_CARGO_CONFIG_EXTRA_SETTINGS }}' > .cargo/config.toml
|
|
# TODO can we make it prettier?
|
|
- run: cargo build --release --features=lua
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: codemp-lua-${{ matrix.platform.target }}
|
|
path: target/release/${{ matrix.platform.filename }}
|
|
|
|
publish:
|
|
runs-on: ubuntu-latest
|
|
needs: [build, build-macos]
|
|
steps:
|
|
- uses: webfactory/ssh-agent@v0.9.0
|
|
with:
|
|
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
- uses: actions/download-artifact@v4
|
|
with:
|
|
pattern: codemp-lua-*
|
|
- run: tree
|
|
- run: scp * dev@codemp.dev:/srv/http/codemp/files/releases/lua/
|