diff --git a/.github/workflows/humble-debian-build.yml b/.github/workflows/humble-debian-build.yml new file mode 100644 index 0000000000..426b935fa4 --- /dev/null +++ b/.github/workflows/humble-debian-build.yml @@ -0,0 +1,31 @@ +name: Debian Humble Build +on: + workflow_dispatch: + pull_request: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 1 * * *' + + +jobs: + humble_debian: + name: Humble debian build + runs-on: ubuntu-latest + env: + ROS_DISTRO: humble + container: ghcr.io/ros-controls/ros:humble-debian + steps: + - uses: actions/checkout@v4 + with: + path: src/ros2_controllers + ref: ${{ github.event_name == 'schedule' && 'humble' || '' }} + - name: Build and test + shell: bash + run: | + source /opt/ros2_ws/install/setup.bash + vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos + colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller + colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller control_msgs controller_manager_msgs + colcon test-result --verbose diff --git a/.github/workflows/humble-rhel-binary-build.yml b/.github/workflows/humble-rhel-binary-build.yml index 3653d4f0f4..8e54348b57 100644 --- a/.github/workflows/humble-rhel-binary-build.yml +++ b/.github/workflows/humble-rhel-binary-build.yml @@ -25,7 +25,13 @@ jobs: - uses: actions/checkout@v4 with: path: src/ros2_controllers +<<<<<<< HEAD - run: | +======= + ref: ${{ github.event_name == 'schedule' && 'humble' || '' }} + - name: Install dependencies + run: | +>>>>>>> 737a45b (Use correct ref for scheduled workflows (#1013)) rosdep update rosdep install -iy --from-path src/ros2_controllers source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash diff --git a/.github/workflows/iron-debian-build.yml b/.github/workflows/iron-debian-build.yml new file mode 100644 index 0000000000..c47fbe5cd9 --- /dev/null +++ b/.github/workflows/iron-debian-build.yml @@ -0,0 +1,31 @@ +name: Debian Iron Build +on: + workflow_dispatch: + pull_request: + branches: + - iron + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 1 * * *' + + +jobs: + iron_debian: + name: Iron debian build + runs-on: ubuntu-latest + env: + ROS_DISTRO: iron + container: ghcr.io/ros-controls/ros:iron-debian + steps: + - uses: actions/checkout@v4 + with: + path: src/ros2_controllers + ref: ${{ github.event_name == 'schedule' && 'iron' || '' }} + - name: Build and test + shell: bash + run: | + source /opt/ros2_ws/install/setup.bash + vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos + colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller + colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller control_msgs controller_manager_msgs + colcon test-result --verbose diff --git a/.github/workflows/iron-rhel-binary-build.yml b/.github/workflows/iron-rhel-binary-build.yml new file mode 100644 index 0000000000..c3bc1e6def --- /dev/null +++ b/.github/workflows/iron-rhel-binary-build.yml @@ -0,0 +1,35 @@ +name: RHEL Iron Binary Build +on: + workflow_dispatch: + pull_request: + branches: + - iron + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 1 * * *' + + +jobs: + iron_rhel_binary: + name: Iron RHEL binary build + runs-on: ubuntu-latest + env: + ROS_DISTRO: iron + container: ghcr.io/ros-controls/ros:iron-rhel + steps: + - uses: actions/checkout@v4 + with: + path: src/ros2_controllers + ref: ${{ github.event_name == 'schedule' && 'iron' || '' }} + - name: Install dependencies + run: | + rosdep update + rosdep install -iyr --from-path src/ros2_controllers || true + - name: Build and test + # source also underlay workspace with generate_parameter_library on rhel9 + run: | + source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash + source /opt/ros2_ws/install/setup.bash + colcon build --packages-skip rqt_joint_trajectory_controller + colcon test --packages-skip rqt_joint_trajectory_controller + colcon test-result --verbose diff --git a/.github/workflows/rolling-debian-build.yml b/.github/workflows/rolling-debian-build.yml new file mode 100644 index 0000000000..9169494b00 --- /dev/null +++ b/.github/workflows/rolling-debian-build.yml @@ -0,0 +1,32 @@ +name: Debian Rolling Build +on: + workflow_dispatch: + pull_request: + branches: + - master + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 1 * * *' + + +jobs: + rolling_debian: + name: Rolling debian build + runs-on: ubuntu-latest + env: + ROS_DISTRO: rolling + container: ghcr.io/ros-controls/ros:rolling-debian + steps: + - uses: actions/checkout@v4 + with: + path: src/ros2_controllers + # default behavior is correct on master branch + # ref: ${{ github.event_name == 'schedule' && 'master' || '' }} + - name: Build and test + shell: bash + run: | + source /opt/ros2_ws/install/setup.bash + vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos + colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller + colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller + colcon test-result --verbose diff --git a/.github/workflows/rolling-rhel-binary-build.yml b/.github/workflows/rolling-rhel-binary-build.yml index ca29f92ca0..64d3d4d8fe 100644 --- a/.github/workflows/rolling-rhel-binary-build.yml +++ b/.github/workflows/rolling-rhel-binary-build.yml @@ -25,7 +25,14 @@ jobs: - uses: actions/checkout@v4 with: path: src/ros2_controllers +<<<<<<< HEAD - run: | +======= + # default behavior is correct on master branch + # ref: ${{ github.event_name == 'schedule' && 'master' || '' }} + - name: Install dependencies + run: | +>>>>>>> 737a45b (Use correct ref for scheduled workflows (#1013)) rosdep update rosdep install -iy --from-path src/ros2_controllers source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash