Update Windows action for rolling #405
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: rclnodejs - Windows Build & Test | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| - jazzy | |
| - humble-hawksbill | |
| pull_request: | |
| branches: | |
| - develop | |
| - jazzy | |
| - humble-hawksbill | |
| workflow_dispatch: | |
| jobs: | |
| identify-ros-distro: | |
| uses: ./.github/workflows/identify-ros-distro.yml | |
| build: | |
| needs: identify-ros-distro | |
| runs-on: windows-2019 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| node-version: [22.X] | |
| steps: | |
| - name: Setup Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| - name: Install pixi | |
| shell: powershell | |
| run: | | |
| irm -useb https://pixi.sh/install.ps1 | iex | |
| - name: Setup ROS2 | |
| uses: ros-tooling/[email protected] | |
| with: | |
| required-ros-distributions: ${{ needs.identify-ros-distro.outputs.distro }} | |
| - name: Install dependencies | |
| shell: powershell | |
| run: | | |
| irm https://raw.githubusercontent.com/ros2/ros2/refs/heads/rolling/pixi.toml -OutFile pixi.toml | |
| pixi install | |
| - name: Install ROS2 Rolling (Conditional) | |
| if: ${{ needs.identify-ros-distro.outputs.distro == 'rolling' }} | |
| shell: bash | |
| run: | | |
| wget --quiet https://ci.ros2.org/view/packaging/job/packaging_windows/lastSuccessfulBuild/artifact/ws/ros2-package-windows-AMD64.zip -O rolling.zip | |
| 7z x rolling.zip -y -o/c/dev/rolling | |
| - uses: actions/checkout@v4 | |
| - name: Open new PowerShell session | |
| shell: powershell | |
| run: | | |
| start-process powershell -ArgumentList '-NoExit', '-Command', 'Write-Host "New PowerShell session started"' | |
| - name: Build rclnodejs | |
| shell: cmd | |
| run: | | |
| call "c:\dev\${{ needs.identify-ros-distro.outputs.distro }}\ros2-windows\setup.bat" | |
| npm i | |
| # On the windows/foxy combination the Eclipse CycloneDDS RMW implementation is used to workaround | |
| # an error when loading the default fastrtps ddl | |
| - name: Test rclnodejs | |
| shell: cmd | |
| run: | | |
| pixi shell | |
| call "c:\dev\${{ needs.identify-ros-distro.outputs.distro }}\ros2-windows\setup.bat" | |
| cmd /c "if ${{ needs.identify-ros-distro.outputs.distro }}==foxy (set RMW_IMPLEMENTATION=rmw_cyclonedds_cpp&&npm test)" | |
| cmd /c "if NOT ${{ needs.identify-ros-distro.outputs.distro }}==foxy (npm test)" |