actions-marketplace-validations/ROS 2 CI Action

Run ROS 2 package test in CI using Github Actions.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit May 15, 2026
License
Apache 2.0

Pinned Snippet

workflow.ymlSHA-pinned
uses: actions-marketplace-validations/ros-tooling_action-ros-ci@3a640b10f09b756dabe556dac5413aba369f71b0 # no releases — HEAD as of 2026-07-13

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
colcon-defaultsValid JSON content to use as a colcon defaults.yaml file. Use a pipe to provide a multiline string. See: https://colcon.readthedocs.io/en/released/user/configuration.html#defaults-yaml no""
colcon-mixin-repositoryMixin repository containing the mixin(s) specified through colcon-defaults or colcon-extra-argsnohttps://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
coverage-resultEnable code coverage results collection using 'colcon lcov-result' and 'colcon coveragepy-result'. Depends on 'skip-tests' not being enabled, i.e., tests being run. Enabled by default; set to 'false' to disable. notrue
coverage-ignore-patternIgnore all files matching this pattern in the coverage report. It will be injected in the 'colcon lcov-result --filter' option. Useful for ignoring tests or examples in the coverage report. no""
extra-cmake-argsAdditional flags passed to CMake (using colcon build --cmake-args) no""
colcon-extra-argsArbitrary space-separated additional flags to pass to colcon (build & test). no""
import-tokenGitHub personal access token (PAT) to use to import the repository. Useful if the repo is private. The PAT should have the "repo" scope. This currently only works for tokens for the GitHub server this action runs on. no""
package-nameLimit the package(s) to be built and tested. If left empty this will build and test everything in the workspace - including packages from vcs-repo-file-url imports. Passing multiple package names is allowed. Package names can be separated by any whitespace character. no""
target-ros1-distroROS 1 distribution to target for the build. Will be used both for `rosdep install` and `source setup.bash`. Either or both of `target-ros1-distro` and `target-ros2-distro`, but at least one must be specified. Typically, both are specified when building packages that rely on both ROS versions, such as the ros1_bridge. no
target-ros2-distroROS 2 distribution to target for the build. Will be used both for `rosdep install` and `source setup.bash`. Either or both of `target-ros1-distro` and `target-ros2-distro`, but at least one must be specified. Typically, both are specified when building packages that rely on both ROS versions, such as the ros1_bridge. no
vcs-repo-file-urlRepo file URL passed to vcs to initialize the colcon workspace. The URL may point to a local file, such as file://path/to/file.txt. For example, for ROS 2 Rolling source repositories, use: https://raw.githubusercontent.com/ros2/ros2/rolling/ros2.repos ""
skip-testsSkip tests and code coverage data processing. Set to 'true'. no""
skip-rosdep-installSkip rosdep install. This also skips `apt update`/`dnf check-update`. Set to 'true'. no""
no-symlink-installDo not use '--symlink-install' with 'colcon build'. Set to 'true'. no""
rosdep-checkCheck dependencies of packages using 'rosdep check'. Set to 'true'. no""
rosdep-skip-keysKeys to be skipped when installing dependencies via rosdep. Passing multiple keys is allowed. Keys names can be separated by any whitespace character. no""
refBranch or reference to checkout via vcstool. If unset will use the branch from where this action was triggered. Scheduled events default to latest commit of default branch. Set this if you want the scheduled job to run on on a specific branch. no""
git-ssh-portSSH port used to access repositories. Needed to override the ssh url with https when using a private server using a non-standard SSH port for git. no""
namedescription
ros-workspace-directory-nameroot directory name of the ROS workspace created for this CI code.