60 lines
1.9 KiB
YAML
60 lines
1.9 KiB
YAML
|
# Compile and release a nightly version of the project if pushed to the `nightly` branch
|
||
|
name: Release Nightly
|
||
|
|
||
|
# Also require the cargo_test.yml workflow to run correctly before this one
|
||
|
on:
|
||
|
workflow_run:
|
||
|
workflows: ["Test"]
|
||
|
branches: ["nightly"]
|
||
|
types:
|
||
|
- completed
|
||
|
|
||
|
env:
|
||
|
|
||
|
jobs:
|
||
|
release:
|
||
|
runs-on: ubuntu-latest
|
||
|
|
||
|
steps:
|
||
|
- uses: actions/checkout@v4
|
||
|
|
||
|
- name: Install Cargo via Ubuntu package
|
||
|
run: sudo apt-get install -y cargo
|
||
|
|
||
|
- name: Cache dependencies (restore)
|
||
|
uses: actions/cache/restore@v2
|
||
|
with:
|
||
|
path: |
|
||
|
target
|
||
|
~/.cargo
|
||
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
||
|
|
||
|
- name: Update dependencies
|
||
|
run: cargo fetch
|
||
|
|
||
|
- name: Cache dependencies (save)
|
||
|
uses: actions/cache/save@v2
|
||
|
with:
|
||
|
path: |
|
||
|
target
|
||
|
~/.cargo
|
||
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
||
|
|
||
|
- name: Compile for Linux
|
||
|
run: cargo build --release --target x86_64-unknown-linux-gnu
|
||
|
|
||
|
- name: Compile for Windows
|
||
|
run: cargo build --release --target x86_64-pc-windows-gnu
|
||
|
|
||
|
- name: Compile for macOS
|
||
|
run: cargo build --release --target x86_64-apple-darwin
|
||
|
|
||
|
- name: Create release to Forgejo Repo Releases
|
||
|
uses: actions/forgejo-release@v2
|
||
|
with:
|
||
|
direction: upload
|
||
|
url: https://git.smgames.club
|
||
|
repo: mad-star-studio/Starlight
|
||
|
release-dir: dist/nightly
|
||
|
release-notes: |
|
||
|
This is a nightly release of the project. It may contain bugs and incomplete features.
|