Skip to content

Update Windows action for rolling #1101

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 27 additions & 19 deletions .github/workflows/windows-build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,44 +23,52 @@ jobs:
matrix:
node-version: [22.X]
ros_distribution:
- humble
- jazzy
- kilted
- rolling
steps:
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

- name: Setup ROS2
uses: ros-tooling/[email protected]
with:
required-ros-distributions: ${{ matrix.ros_distribution }}
- name: Install pixi
shell: powershell
run: |
irm -useb https://pixi.sh/install.ps1 | iex
# Refresh PATH environment
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","User") + ";" + [System.Environment]::GetEnvironmentVariable("Path","Machine")
# Show installation location
Write-Host "Pixi installed at: $(where.exe pixi)"

- name: Install dependencies
shell: powershell
run: |
# Ensure pixi is accessible by using the full path
$pixiPath = "$env:USERPROFILE\.pixi\bin\pixi.exe"
irm https://raw.githubusercontent.com/ros2/ros2/refs/heads/kilted/pixi.toml -OutFile pixi.toml
& $pixiPath install
& $pixiPath shell

- name: Install 7-Zip
shell: powershell
run: |
choco install 7zip wget -y

- name: Install ROS2 Rolling (Conditional)
if: ${{ matrix.ros_distribution == '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

- name: Prebuild - Setup VS Dev Environment
uses: seanmiddleditch/gha-setup-vsdevenv@v4
wget --quiet https://github.com/ros2/ros2/releases/download/release-kilted-20250523/ros2-kilted-20250523-windows-release-amd64.zip -O rolling.zip
7z x rolling.zip -y -o/c/dev/kilted

- uses: actions/checkout@v4

- name: Build rclnodejs
shell: cmd
run: |
set RMW_IMPLEMENTATION=rmw_fastrtps_cpp
call "c:\dev\${{ matrix.ros_distribution }}\ros2-windows\setup.bat"
call "c:\dev\kilted\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: |
set RMW_IMPLEMENTATION=rmw_fastrtps_cpp
call "c:\dev\${{ matrix.ros_distribution }}\ros2-windows\setup.bat"
call "c:\dev\kilted\ros2-windows\local_setup.bat"
npm test
Loading