rusefi/.github/workflows/build-simulator.yaml

53 lines
1.5 KiB
YAML

name: Simulator
on: [push, pull_request]
jobs:
# This is just to ensure the simulator compiles on Linux
build-simulator:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Checkout Submodules
run: |
git submodule update --init --depth=1 firmware/ChibiOS
git submodule update --init --depth=1 firmware/ChibiOS-Contrib
git submodule update --init --depth=1 firmware/libfirmware
git submodule update --init --depth=1 firmware/ext/lua
git submodule update --init --depth=1 firmware/controllers/lua/luaaa
git submodule update --init --depth=1 firmware/controllers/can/wideband_firmware
- uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '8'
- name: Print GCC version
working-directory: .
run: gcc -v
- name: Install multilib
run: |
sudo apt-get -o Acquire::Retries=3 update
sudo apt-get install gcc-multilib g++-multilib mtools dosfstools zip
- name: Generate Configs, Enums & Live Documentation
working-directory: ./firmware/
run: ./gen_default_everything.sh
- name: Compile Linux Simulator
working-directory: ./simulator/
run: ./compile.sh
- name: Run Linux Simulator for 10 seconds
working-directory: ./simulator/
run: ./build/rusefi_simulator 10
- name: Upload Linux built simulator
uses: actions/upload-artifact@v3
with:
name: rusefi_simulator_linux
path: ./simulator/build/rusefi_simulator