|
10 | 10 |
|
11 | 11 | jobs: |
12 | 12 |
|
13 | | - micro_ros_zephyr_module: |
| 13 | + nightly_micro_ros_zephyr_module: |
14 | 14 | runs-on: ubuntu-latest |
15 | | - container: ubuntu:22.04 |
| 15 | + container: |
| 16 | + image: zephyrprojectrtos/ci:v0.26.17 |
| 17 | + options: --user root |
| 18 | + env: |
| 19 | + CMAKE_PREFIX_PATH: /opt/toolchains |
16 | 20 | strategy: |
17 | 21 | fail-fast: false |
18 | 22 | matrix: |
19 | | - zephyr_version: ["zephyr-v3.1.0", "zephyr-v2.7.2"] |
20 | | - distro: ["iron", "humble", "rolling", "jazzy"] |
| 23 | + zephyr_version: ["v4.0.0", "v4.1.0"] |
| 24 | + distro: ["rolling", "jazzy", "humble"] |
21 | 25 | include: |
22 | | - - distro: iron |
23 | | - branch: iron |
24 | 26 | - distro: rolling |
25 | 27 | branch: rolling |
26 | | - - distro: humble |
27 | | - branch: humble |
28 | 28 | - distro: jazzy |
29 | 29 | branch: jazzy |
30 | | - - zephyr_version: zephyr-v2.7.2 |
31 | | - zephyr_sdk: 0.14.2 |
32 | | - sdk_filename: zephyr-sdk-$TOOLCHAIN_VERSION\_linux-x86_64_minimal.tar.gz |
33 | | - - zephyr_version: zephyr-v3.1.0 |
34 | | - zephyr_sdk: 0.14.2 |
35 | | - sdk_filename: zephyr-sdk-$TOOLCHAIN_VERSION\_linux-x86_64_minimal.tar.gz |
| 30 | + - distro: humble |
| 31 | + branch: humble |
36 | 32 | steps: |
37 | | - - uses: actions/checkout@v2 |
| 33 | + - uses: actions/checkout@v4 |
38 | 34 | with: |
39 | 35 | path: micro_ros_zephyr_module |
40 | | - branch: ${{ matrix.branch }} |
| 36 | + ref: ${{ matrix.branch }} |
41 | 37 |
|
42 | 38 | - name: Build |
43 | 39 | shell: bash |
44 | 40 | run: | |
45 | | - # Install dependencies |
46 | | - apt update |
47 | | - export DEBIAN_FRONTEND=noninteractive |
48 | | - apt install -y --no-install-recommends wget git cmake ninja-build gperf \ |
49 | | - ccache dfu-util device-tree-compiler wget \ |
50 | | - python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \ |
51 | | - make gcc gcc-multilib g++-multilib libsdl2-dev |
52 | | - |
53 | | - # Install Zephyr environment |
54 | | - pip3 install --user -U west |
55 | | - export PATH=~/.local/bin:/github/home/.local/bin:"$PATH" |
56 | | - west init zephyrproject |
57 | | - cd zephyrproject |
| 41 | + # Zephyr setup |
| 42 | + apt -y update |
| 43 | + west init |
58 | 44 | cd zephyr |
59 | 45 | git checkout ${{ matrix.zephyr_version }} |
60 | 46 | cd .. |
61 | | - west update |
62 | | - west zephyr-export |
63 | | - pip3 install --user -r zephyr/scripts/requirements.txt |
64 | | - cd .. |
65 | | - export TOOLCHAIN_VERSION=${{ matrix.zephyr_sdk }} |
66 | | - export TOOLCHAIN_FILE_NAME=${{ matrix.sdk_filename }} |
67 | | - wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v$TOOLCHAIN_VERSION/$TOOLCHAIN_FILE_NAME |
68 | | - tar xvf $TOOLCHAIN_FILE_NAME |
69 | | - cd zephyr-sdk-$TOOLCHAIN_VERSION |
70 | | - ./setup.sh -h -t arm-zephyr-eabi -c |
71 | | - cd .. |
72 | | - source zephyr-sdk-$TOOLCHAIN_VERSION/environment-setup-x86_64-pokysdk-linux |
73 | | - export ZEPHYR_TOOLCHAIN_VARIANT=zephyr |
74 | | - export ZEPHYR_SDK_INSTALL_DIR=$(pwd)/zephyr-sdk-$TOOLCHAIN_VERSION |
75 | | - source zephyrproject/zephyr/zephyr-env.sh |
| 47 | + west update --narrow |
76 | 48 |
|
77 | 49 | # Installing micro-ROS prerequisites |
78 | 50 | pip3 install catkin_pkg lark-parser empy colcon-common-extensions |
79 | 51 |
|
80 | 52 | # Build with Serial USB transport |
81 | | - west build -b disco_l475_iot1 micro_ros_zephyr_module -- -DCONFIG_MICROROS_TRANSPORT_SERIAL_USB=y |
| 53 | + west build -b disco_l475_iot1 $GITHUB_WORKSPACE/micro_ros_zephyr_module -p -- -DCONFIG_MICROROS_TRANSPORT_SERIAL_USB=y |
82 | 54 |
|
83 | 55 | # Build with Serial transport |
84 | | - west build -b disco_l475_iot1 micro_ros_zephyr_module -- -DCONFIG_MICROROS_TRANSPORT_SERIAL=y |
| 56 | + west build -b disco_l475_iot1 $GITHUB_WORKSPACE/micro_ros_zephyr_module -p -- -DCONFIG_MICROROS_TRANSPORT_SERIAL=y |
0 commit comments