Add xacro support to bazel_ros2_rules #1467
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: drake-ros continuous integration | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| concurrency: | |
| group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}-${{ github.ref == 'refs/heads/main' && github.sha || ''}} | |
| cancel-in-progress: true | |
| jobs: | |
| pre_commit: | |
| name: Run linters and formatters | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Install pre-commit | |
| run: pip install pre-commit | |
| - name: Run pre-commit hooks | |
| run: pre-commit run --all-files --show-diff-on-failure | |
| if: "! contains(github.event.pull_request.labels.*.name, 'status: defer ci')" | |
| build_container: | |
| name: Build drake-ros container image | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Free up runner space | |
| uses: ./.github/actions/free-disk-space | |
| - name: Build container image | |
| run: | | |
| docker build -t drake-ros:ci-${{ github.sha }} -f .devcontainer/Dockerfile . | |
| - name: Save container image | |
| run: | | |
| docker save drake-ros:ci-${{ github.sha }} | gzip > /tmp/drake-ros-image.tar.gz | |
| - name: Upload container image artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: drake-ros-image | |
| path: /tmp/drake-ros-image.tar.gz | |
| retention-days: 1 | |
| if: "! contains(github.event.pull_request.labels.*.name, 'status: defer ci')" | |
| bazel_ros2_rules_test: | |
| name: Build and test bazel_ros2_rules modules with bazel | |
| runs-on: ubuntu-24.04 | |
| needs: build_container | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Free up runner space | |
| uses: ./.github/actions/free-disk-space | |
| - name: Download container image artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: drake-ros-image | |
| path: /tmp | |
| - name: Load container image | |
| run: | | |
| docker load < /tmp/drake-ros-image.tar.gz | |
| - name: Configure AppArmor for ROS network isolation | |
| uses: ./.github/actions/configure-apparmor | |
| - name: Run bazel_ros2_rules tests | |
| run: | | |
| docker run --rm --privileged \ | |
| -v ${{ github.workspace }}:/drake-ros \ | |
| -u $(id -u):$(id -g) \ | |
| drake-ros:ci-${{ github.sha }} \ | |
| /drake-ros/.github/scripts/run_bazel_ros2_tests.sh | |
| if: "! contains(github.event.pull_request.labels.*.name, 'status: defer ci')" | |
| bazel_drake_ros_test: | |
| name: Build and test drake_ros modules with bazel | |
| runs-on: ubuntu-24.04 | |
| needs: build_container | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Free up runner space | |
| uses: ./.github/actions/free-disk-space | |
| - name: Download container image artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: drake-ros-image | |
| path: /tmp | |
| - name: Load container image | |
| run: | | |
| docker load < /tmp/drake-ros-image.tar.gz | |
| - name: Configure AppArmor for ROS network isolation | |
| uses: ./.github/actions/configure-apparmor | |
| - name: Run drake_ros bazel tests | |
| run: | | |
| docker run --rm --privileged \ | |
| -v ${{ github.workspace }}:/drake-ros \ | |
| -u $(id -u):$(id -g) \ | |
| drake-ros:ci-${{ github.sha }} \ | |
| /drake-ros/.github/scripts/run_bazel_drake_tests.sh | |
| if: "! contains(github.event.pull_request.labels.*.name, 'status: defer ci')" | |
| colcon_drake_ros_test: | |
| name: Build and test drake_ros packages with colcon | |
| runs-on: ubuntu-24.04 | |
| needs: build_container | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v5 | |
| - name: Free up runner space | |
| uses: ./.github/actions/free-disk-space | |
| - name: Download container image artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: drake-ros-image | |
| path: /tmp | |
| - name: Load container image | |
| run: | | |
| docker load < /tmp/drake-ros-image.tar.gz | |
| - name: Configure AppArmor for ROS network isolation | |
| uses: ./.github/actions/configure-apparmor | |
| - name: Run colcon tests | |
| run: | | |
| docker run --rm \ | |
| -v ${{ github.workspace }}:/drake-ros \ | |
| -u $(id -u):$(id -g) \ | |
| drake-ros:ci-${{ github.sha }} \ | |
| /drake-ros/.github/scripts/run_colcon_tests.sh | |
| if: "! contains(github.event.pull_request.labels.*.name, 'status: defer ci')" |