ci: create builds using devcontainer
This change makes it so that CI/CD builds against all supported platforms, utilizing the devcontainer as its environment rather than setting up one separately. This allows to have the CICD builds and dev local builds more similar and reduces the maintenance overhead. Co-authored-by: Peter Buchegger <peter@pbuchegger.at>
This commit is contained in:
parent
26b15d46f3
commit
e1994357f8
|
|
@ -9,62 +9,51 @@ env:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
submodules: recursive
|
submodules: recursive
|
||||||
- name: install-deps
|
- name: Compile using devcontainer
|
||||||
run: |
|
uses: devcontainers/ci@v0.3
|
||||||
sudo apt update
|
with:
|
||||||
sudo apt install -y git pkg-config build-essential meson libsdl2-dev libreadline-dev dfu-util cmake libusb-1.0-0 libusb-1.0-0-dev libcodec2-dev codec2
|
runCmd: |
|
||||||
- name: install miosix
|
|
||||||
run: |
|
|
||||||
wget https://miosix.org/toolchain/MiosixToolchainInstaller.run
|
|
||||||
chmod +x MiosixToolchainInstaller.run
|
|
||||||
sudo sh MiosixToolchainInstaller.run
|
|
||||||
wget https://github.com/v0l/radio_tool/releases/download/v$RADIO_TOOL_VERSION/radio_tool-$RADIO_TOOL_VERSION-Linux.deb
|
|
||||||
sudo dpkg -i radio_tool-$RADIO_TOOL_VERSION-Linux.deb
|
|
||||||
- name: Get opengd77 for wrapping
|
|
||||||
run: |
|
|
||||||
git clone https://github.com/open-ham/OpenGD77.git /tmp/OpenGD77
|
|
||||||
- name: setup meson
|
|
||||||
run: |
|
|
||||||
cd ${{github.workspace}}
|
|
||||||
meson setup build_linux
|
meson setup build_linux
|
||||||
meson setup --cross-file cross_arm.txt build_arm
|
meson setup --cross-file cross_arm.txt build_arm
|
||||||
meson setup --cross-file cross_cm7.txt build_cm7
|
meson setup --cross-file cross_cm7.txt build_cm7
|
||||||
- name: Compile linux
|
|
||||||
run: |
|
|
||||||
meson compile -C build_linux openrtx_linux
|
meson compile -C build_linux openrtx_linux
|
||||||
meson compile -C build_linux openrtx_linux_smallscreen
|
meson compile -C build_linux openrtx_linux_smallscreen
|
||||||
meson compile -C build_linux openrtx_linux_mod17
|
meson compile -C build_linux openrtx_linux_mod17
|
||||||
- name: Compile arm cortex m4 targets
|
meson compile -C build_arm openrtx_cs7000_bin
|
||||||
run: |
|
meson compile -C build_arm openrtx_cs7000_dfu
|
||||||
export PATH=$PATH:/tmp/OpenGD77/tools/Python/FirmwareLoader:/tmp/OpenGD77/firmware/tools
|
|
||||||
echo $PATH
|
|
||||||
meson compile -C build_arm openrtx_md3x0_wrap
|
|
||||||
meson compile -C build_arm openrtx_mduv3x0_wrap
|
|
||||||
meson compile -C build_arm openrtx_md9600_wrap
|
|
||||||
meson compile -C build_arm openrtx_gd77_wrap
|
|
||||||
meson compile -C build_arm openrtx_dm1801_wrap
|
|
||||||
meson compile -C build_arm openrtx_mod17_wrap
|
|
||||||
meson compile -C build_arm openrtx_cs7000_wrap
|
|
||||||
meson compile -C build_arm openrtx_dm1701_wrap
|
meson compile -C build_arm openrtx_dm1701_wrap
|
||||||
- name: Compile arm cortex m7 targets
|
meson compile -C build_arm openrtx_dm1801_wrap
|
||||||
run: |
|
meson compile -C build_arm openrtx_md3x0_wrap
|
||||||
export PATH=$PATH:/tmp/OpenGD77/tools/Python/FirmwareLoader:/tmp/OpenGD77/firmware/tools
|
meson compile -C build_arm openrtx_md9600_wrap
|
||||||
echo $PATH
|
meson compile -C build_arm openrtx_mduv3x0_wrap
|
||||||
|
meson compile -C build_arm openrtx_mod17_wrap
|
||||||
|
meson compile -C build_arm openrtx_gd77_wrap
|
||||||
meson compile -C build_cm7 openrtx_cs7000p_wrap
|
meson compile -C build_cm7 openrtx_cs7000p_wrap
|
||||||
|
meson compile -C build_cm7 openrtx_cs7000p_dfu
|
||||||
|
chmod -R 777 *
|
||||||
- uses: actions/upload-artifact@v4
|
- uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: release-bins
|
name: release-bins
|
||||||
path: |
|
path: |
|
||||||
${{github.workspace}}/build_arm/openrtx_*_wrap
|
${{github.workspace}}/build_cm7/openrtx_cs7000p_wrap.bin
|
||||||
|
${{github.workspace}}/build_cm7/openrtx_cs7000p_dfu
|
||||||
|
${{github.workspace}}/build_arm/openrtx_cs7000_bin
|
||||||
|
${{github.workspace}}/build_arm/openrtx_cs7000_dfu
|
||||||
|
${{github.workspace}}/build_arm/openrtx_dm1701_wrap
|
||||||
|
${{github.workspace}}/build_arm/openrtx_dm1801_wrap.sgl
|
||||||
|
${{github.workspace}}/build_arm/openrtx_gd77_wrap.sgl
|
||||||
${{github.workspace}}/build_linux/openrtx_linux
|
${{github.workspace}}/build_linux/openrtx_linux
|
||||||
${{github.workspace}}/build_linux/openrtx_linux_smallscreen
|
${{github.workspace}}/build_arm/openrtx_md3x0_wrap
|
||||||
${{github.workspace}}/build_linux/openrtx_linux_mod17
|
${{github.workspace}}/build_arm/openrtx_md9600_wrap
|
||||||
|
${{github.workspace}}/build_arm/openrtx_mduv3x0_wrap
|
||||||
|
${{github.workspace}}/build_arm/openrtx_mod17_wrap
|
||||||
|
if-no-files-found: error
|
||||||
build-zephyr:
|
build-zephyr:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue