From 480537669c8fbba5a3f0477bd342774b4d124b5e Mon Sep 17 00:00:00 2001 From: Carlos Espinoza Curto <148376273+Carlosespicur@users.noreply.github.com> Date: Wed, 24 Sep 2025 12:11:07 +0200 Subject: [PATCH 1/2] Update CI (#43) * Add CI and nightly for each distro Signed-off-by: Carlosespicur * Update git version Signed-off-by: Carlosespicur * Skip tests Signed-off-by: Carlosespicur * Change nightly to weekly * Change master to rolling in fork checker Signed-off-by: Carlosespicur --------- Signed-off-by: Carlosespicur (cherry picked from commit 8f322232bc71242e483d6bcbe8c1ba731ee8134e) # Conflicts: # .github/workflows/fork_checker.yml --- .github/workflows/fork_checker.yml | 4 +++ .github/workflows/humble-ci.yml | 16 +++++++++ .github/workflows/jazzy-ci.yml | 16 +++++++++ .github/workflows/kilted-ci.yml | 16 +++++++++ .github/workflows/reusable-ci.yml | 56 ++++++++++++++++++++++++++++++ .github/workflows/rolling-ci.yml | 16 +++++++++ .github/workflows/weekly-ci.yml | 37 ++++++++++++++++++++ 7 files changed, 161 insertions(+) create mode 100644 .github/workflows/humble-ci.yml create mode 100644 .github/workflows/jazzy-ci.yml create mode 100644 .github/workflows/kilted-ci.yml create mode 100644 .github/workflows/reusable-ci.yml create mode 100644 .github/workflows/rolling-ci.yml create mode 100644 .github/workflows/weekly-ci.yml diff --git a/.github/workflows/fork_checker.yml b/.github/workflows/fork_checker.yml index 2d247eff..f8478cf6 100644 --- a/.github/workflows/fork_checker.yml +++ b/.github/workflows/fork_checker.yml @@ -14,7 +14,11 @@ jobs: strategy: fail-fast: false matrix: +<<<<<<< HEAD branches: [foxy, galactic, humble, master] +======= + branches: [humble, jazzy, kilted, rolling] +>>>>>>> 8f32223 (Update CI (#43)) steps: - name: Check id: check diff --git a/.github/workflows/humble-ci.yml b/.github/workflows/humble-ci.yml new file mode 100644 index 00000000..53a458c9 --- /dev/null +++ b/.github/workflows/humble-ci.yml @@ -0,0 +1,16 @@ +name: rcutils CI Humble + +on: + push: + branches: [ humble ] + pull_request: + branches: [ humble ] + +jobs: + humble-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: ${{ github.ref }} + os: ubuntu-22.04 + docker-image: ubuntu:jammy + ros-distribution: humble diff --git a/.github/workflows/jazzy-ci.yml b/.github/workflows/jazzy-ci.yml new file mode 100644 index 00000000..46af6759 --- /dev/null +++ b/.github/workflows/jazzy-ci.yml @@ -0,0 +1,16 @@ +name: rcutils CI Jazzy + +on: + push: + branches: [ jazzy ] + pull_request: + branches: [ jazzy ] + +jobs: + jazzy-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: ${{ github.ref }} + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: jazzy diff --git a/.github/workflows/kilted-ci.yml b/.github/workflows/kilted-ci.yml new file mode 100644 index 00000000..1523d5ab --- /dev/null +++ b/.github/workflows/kilted-ci.yml @@ -0,0 +1,16 @@ +name: rcutils CI Kilted + +on: + push: + branches: [ kilted ] + pull_request: + branches: [ kilted ] + +jobs: + kilted-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: ${{ github.ref }} + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: kilted diff --git a/.github/workflows/reusable-ci.yml b/.github/workflows/reusable-ci.yml new file mode 100644 index 00000000..1ac5f175 --- /dev/null +++ b/.github/workflows/reusable-ci.yml @@ -0,0 +1,56 @@ +name: Reusable rcutils CI + +on: + workflow_call: + inputs: + branch: + description: "The rcutils branch to use for the workflow" + required: true + type: string + os: + description: "The OS to use for the workflow" + required: true + type: string + docker-image: + description: "The docker image to use for the workflow" + required: true + type: string + ros-distribution: + description: "The ROS distribution to use for the workflow" + required: true + type: string + +jobs: + build: + runs-on: ${{ inputs.os }} + strategy: + fail-fast: false + container: + image: ${{ inputs.docker-image }} + steps: + + - run: | + apt-get update && apt-get install -y git + shell: bash + + - name: Sync repository + uses: actions/checkout@v5 + with: + ref: ${{ inputs.branch }} + submodules: recursive + + - name: Setup ROS 2 + uses: ros-tooling/setup-ros@0.7.15 + with: + required-ros-distributions: ${{ inputs.ros-distribution }} + + - name : Download and install rcutils-dependencies + run: | + apt-get install ros-${{ inputs.ros-distribution }}-mimick-vendor + apt-get -y install ros-${{ inputs.ros-distribution }}-performance-test-fixture + + - uses : ros-tooling/action-ros-ci@0.4.5 + with: + package-name: "rcutils" + target-ros2-distro: ${{ inputs.ros-distribution }} + skip-tests: true diff --git a/.github/workflows/rolling-ci.yml b/.github/workflows/rolling-ci.yml new file mode 100644 index 00000000..2bd01d91 --- /dev/null +++ b/.github/workflows/rolling-ci.yml @@ -0,0 +1,16 @@ +name: rcutils CI Rolling + +on: + push: + branches: [ rolling ] + pull_request: + branches: [ rolling ] + +jobs: + rolling-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: ${{ github.ref }} + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: rolling diff --git a/.github/workflows/weekly-ci.yml b/.github/workflows/weekly-ci.yml new file mode 100644 index 00000000..15fe99bd --- /dev/null +++ b/.github/workflows/weekly-ci.yml @@ -0,0 +1,37 @@ +name: rcutils weekly CI (all distributions) + +on: + schedule: + # Run once per week to detect broken dependencies. + - cron: '59 23 * * 0' + workflow_dispatch: + +jobs: + humble-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: humble + os: ubuntu-22.04 + docker-image: ubuntu:jammy + ros-distribution: humble + jazzy-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: jazzy + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: jazzy + kilted-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: kilted + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: kilted + rolling-ci: + uses: ./.github/workflows/reusable-ci.yml + with: + branch: rolling + os: ubuntu-24.04 + docker-image: ubuntu:noble + ros-distribution: rolling From 89002bc67a1b20068cca31409b5acb5f0c361d1a Mon Sep 17 00:00:00 2001 From: Carlos Espinoza Curto <148376273+Carlosespicur@users.noreply.github.com> Date: Wed, 24 Sep 2025 12:17:07 +0200 Subject: [PATCH 2/2] Fix conflicts --- .github/workflows/fork_checker.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/fork_checker.yml b/.github/workflows/fork_checker.yml index f8478cf6..0a1ad3a1 100644 --- a/.github/workflows/fork_checker.yml +++ b/.github/workflows/fork_checker.yml @@ -14,11 +14,7 @@ jobs: strategy: fail-fast: false matrix: -<<<<<<< HEAD - branches: [foxy, galactic, humble, master] -======= branches: [humble, jazzy, kilted, rolling] ->>>>>>> 8f32223 (Update CI (#43)) steps: - name: Check id: check