cheapsdo2.0/.forgejo/workflows/build.yml

75 lines
2.2 KiB
YAML

on: push
jobs:
build-firmware:
runs-on: docker
container:
image: forgejo.zenerdio.de/sebastian/cheapsdo-ci:v0.1.0
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: build-cheapsdo-firmware
restore-keys: audit-cheapsdo
- run: cd firmware && CARGO_HOME=~/.cargo cargo build --target thumbv7m-none-eabi --release
build-linux:
runs-on: docker
container:
image: forgejo.zenerdio.de/sebastian/cheapsdo-ci:v0.1.0
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: build-cheapsdo-linux
restore-keys: build-cheapsdo-firmware
- run: cd hostsoftware && CARGO_HOME=~/.cargo cargo build --release
build-windows:
runs-on: docker
container:
image: forgejo.zenerdio.de/sebastian/cheapsdo-ci:v0.1.0
needs: build
steps:
- uses: actions/checkout@v3
- uses: actions/cache/restore@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: build-cheapsdo-windows
restore-keys: build-cheapsdo-linux
- run: cd hostsoftware && CARGO_HOME=~/.cargo cargo build --target x86_64-pc-windows-gnu --release
build-appimage:
runs-on: docker
container:
image: forgejo.zenerdio.de/sebastian/cheapsdo-ci:v0.1.0
needs: build
steps:
- uses: actions/checkout@v3
- uses: actions/cache/restore@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: build-cheapsdo-appimage
restore-keys: build-cheapsdo-linux
- run: cd hostsoftware && CARGO_HOME=~/.cargo PATH=$PATH:$CARGO_HOME/bin x build -r --format appimage