Add missing methods for node #527
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Linux x64/arm64 | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| - kilted | |
| - jazzy | |
| - humble-hawksbill | |
| pull_request: | |
| branches: | |
| - develop | |
| - kilted | |
| - jazzy | |
| - humble-hawksbill | |
| workflow_dispatch: | |
| defaults: | |
| run: | |
| shell: bash | |
| jobs: | |
| identify-ros-distro: | |
| uses: ./.github/workflows/identify-ros-distro.yml | |
| matrix-prep: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| arm64-matrix: ${{ steps.set-matrix.outputs.arm64-matrix }} | |
| steps: | |
| - id: set-matrix | |
| run: | | |
| if ${{ contains(github.base_ref, 'develop') || contains(github.ref, 'develop') }}; then | |
| echo "arm64-matrix=[{\"architecture\":\"arm64\",\"node-version\":\"22.X\",\"ubuntu-version\":\"24.04-arm\"}]" >> $GITHUB_OUTPUT | |
| else | |
| echo "arm64-matrix=[]" >> $GITHUB_OUTPUT | |
| fi | |
| build: | |
| needs: [identify-ros-distro, matrix-prep] | |
| runs-on: ubuntu-${{ matrix.ubuntu-version }} | |
| container: | |
| image: ${{ needs.identify-ros-distro.outputs.linuxos }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| node-version: [20.X, 22.X, 24.X] | |
| architecture: [x64] | |
| ubuntu-version: [latest] | |
| # Include arm64 configuration from matrix-prep job | |
| include: ${{ fromJSON(needs.matrix-prep.outputs.arm64-matrix) }} | |
| steps: | |
| - name: Setup Node.js ${{ matrix.node-version }} on ${{ matrix.architecture }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| architecture: ${{ matrix.architecture }} | |
| - name: Setup ROS2 | |
| uses: ros-tooling/[email protected] | |
| with: | |
| required-ros-distributions: ${{ needs.identify-ros-distro.outputs.distro }} | |
| use-ros2-testing: true | |
| - name: Install test-msgs on Linux | |
| run: | | |
| sudo apt install ros-${{ needs.identify-ros-distro.outputs.distro }}-test-msgs | |
| - uses: actions/checkout@v4 | |
| - name: Build and test rclnodejs | |
| run: | | |
| uname -a | |
| source /opt/ros/${{ needs.identify-ros-distro.outputs.distro }}/setup.bash | |
| npm i | |
| npm run lint | |
| npm test | |
| npm run clean | |
| - name: Coveralls Parallel | |
| uses: coverallsapp/github-action@v2 | |
| with: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| flag-name: run-${{ matrix.node-version }}-${{ matrix.architecture }} | |
| parallel: true | |
| finish: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Coveralls Finished | |
| uses: coverallsapp/github-action@v2 | |
| with: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| parallel-finished: true |