Skip to content

Commit be8c395

Browse files
committed
Separate arm64 platform
1 parent 78e7cd4 commit be8c395

File tree

2 files changed

+92
-17
lines changed

2 files changed

+92
-17
lines changed
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
name: Linux arm64
2+
3+
on:
4+
push:
5+
branches:
6+
- develop
7+
- kilted
8+
- jazzy
9+
- humble-hawksbill
10+
pull_request:
11+
branches:
12+
- develop
13+
- kilted
14+
- jazzy
15+
- humble-hawksbill
16+
workflow_dispatch:
17+
18+
defaults:
19+
run:
20+
shell: bash
21+
22+
jobs:
23+
build:
24+
runs-on: ubuntu-latest
25+
container:
26+
image: ${{ matrix.docker_image }}
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
node-version: [20.X, 22.X, 24.X]
31+
architecture: [arm64]
32+
ros_distribution:
33+
- humble
34+
- jazzy
35+
- kilted
36+
- rolling
37+
include:
38+
# Humble Hawksbill (May 2022 - May 2027)
39+
- docker_image: ubuntu:jammy
40+
ros_distribution: humble
41+
# Jazzy Jalisco (May 2024 - May 2029)
42+
- docker_image: ubuntu:noble
43+
ros_distribution: jazzy
44+
# Kilted Kaiju (May 2025 - Dec 2026)
45+
- docker_image: ubuntu:noble
46+
ros_distribution: kilted
47+
# Rolling Ridley (No End-Of-Life)
48+
- docker_image: ubuntu:noble
49+
ros_distribution: rolling
50+
steps:
51+
- name: Setup Node.js ${{ matrix.node-version }} on ${{ matrix.architecture }}
52+
uses: actions/setup-node@v4
53+
with:
54+
node-version: ${{ matrix.node-version }}
55+
architecture: ${{ matrix.architecture }}
56+
57+
- name: Setup ROS2
58+
uses: ros-tooling/[email protected]
59+
with:
60+
required-ros-distributions: ${{ matrix.ros_distribution }}
61+
62+
- name: Install test-msgs on Linux
63+
run: |
64+
sudo apt install ros-${{ matrix.ros_distribution }}-test-msgs
65+
66+
- uses: actions/checkout@v4
67+
68+
- name: Build and test rclnodejs
69+
run: |
70+
uname -a
71+
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
72+
npm i
73+
npm run lint
74+
npm test
75+
npm run clean
76+
77+
- name: Coveralls Parallel
78+
uses: coverallsapp/github-action@v2
79+
with:
80+
github-token: ${{ secrets.GITHUB_TOKEN }}
81+
flag-name: run-${{ matrix.node-version }}-${{ matrix.architecture }}
82+
parallel: true
83+
84+
finish:
85+
needs: build
86+
runs-on: ubuntu-latest
87+
steps:
88+
- name: Coveralls Finished
89+
uses: coverallsapp/github-action@v2
90+
with:
91+
github-token: ${{ secrets.GITHUB_TOKEN }}
92+
parallel-finished: true

.github/workflows/linux-build-and-test.yml renamed to .github/workflows/linux-x64-build-and-test.yml

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -20,24 +20,7 @@ defaults:
2020
shell: bash
2121

2222
jobs:
23-
identify-ros-distro:
24-
uses: ./.github/workflows/identify-ros-distro.yml
25-
26-
matrix-prep:
27-
runs-on: ubuntu-latest
28-
outputs:
29-
arm64-matrix: ${{ steps.set-matrix.outputs.arm64-matrix }}
30-
steps:
31-
- id: set-matrix
32-
run: |
33-
if ${{ contains(github.base_ref, 'develop') || contains(github.ref, 'develop') }}; then
34-
echo "arm64-matrix=[{\"architecture\":\"arm64\",\"node-version\":\"22.X\",\"ubuntu-version\":\"24.04-arm\"}]" >> $GITHUB_OUTPUT
35-
else
36-
echo "arm64-matrix=[]" >> $GITHUB_OUTPUT
37-
fi
38-
3923
build:
40-
needs: [identify-ros-distro, matrix-prep]
4124
runs-on: ubuntu-latest
4225
container:
4326
image: ${{ matrix.docker_image }}

0 commit comments

Comments
 (0)