Skip to content
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

Release 2.1.2 to ros2 #89

Merged
merged 7 commits into from
Dec 2, 2024
Merged
Show file tree
Hide file tree
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
9 changes: 5 additions & 4 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
---
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
language: "en-US"
language: en-US
early_access: false
reviews:
profile: "chill"
profile: chill
request_changes_workflow: false
high_level_summary: true
poem: false
Expand All @@ -12,6 +13,6 @@ reviews:
enabled: true
drafts: false
base_branches:
- "ros2-devel"
- ros2-devel
chat:
auto_reply: true
auto_reply: true
5 changes: 3 additions & 2 deletions .github/workflows/protect-default-branch.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
---
name: Validate PR head branch
on:
pull_request:
branches:
- "ros2"
- ros2

jobs:
check-head-branch:
Expand All @@ -20,4 +21,4 @@ jobs:
else
echo "PRs must come from branches containing 'hotfix' phrase or matching X.X.X-YYYYMMDD pattern."
exit 1
fi
fi
15 changes: 9 additions & 6 deletions .github/workflows/release-repository.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ on:
description: New version (used for tag).
required: true
release_name:
description:
Name of the release to be created. Version in the first place is recommended (e.g.
description: Name of the release to be created. Version in the first place is recommended (e.g.
`2.0.0-alpha`).
required: true
automatic_mode:
Expand Down Expand Up @@ -61,18 +60,21 @@ jobs:
--body "This PR incorporates release updates."

- name: Merge PR to main branch
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && github.event.inputs.release_candidate != env.MAIN_BRANCH && env.DIFF == 'true' }}
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && github.event.inputs.release_candidate
!= env.MAIN_BRANCH && env.DIFF == 'true' }}
run: |
gh pr merge ${{ github.event.inputs.release_candidate }} \
--merge --delete-branch

- name: Delete branch
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && github.event.inputs.release_candidate != env.MAIN_BRANCH && env.DIFF == 'false' }}
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && github.event.inputs.release_candidate
!= env.MAIN_BRANCH && env.DIFF == 'false' }}
run: |
git push origin --delete ${{ github.event.inputs.release_candidate }}

- name: Create prerelease
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && fromJSON(github.event.inputs.prerelease) == true}}
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && fromJSON(github.event.inputs.prerelease)
== true}}
run: |
gh release create ${{ github.event.inputs.version }} \
--target ${{ env.MAIN_BRANCH }} \
Expand All @@ -81,7 +83,8 @@ jobs:
--prerelease

- name: Create release
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && fromJSON(github.event.inputs.prerelease) == false}}
if: ${{ fromJSON(github.event.inputs.automatic_mode) == true && fromJSON(github.event.inputs.prerelease)
== false}}
run: |
gh release create ${{ github.event.inputs.version }} \
--target ${{ env.MAIN_BRANCH }} \
Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/ros-docker-image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ name: Build/Publish ROS Docker Image
on:
workflow_dispatch:
inputs:
panther_codebase_version:
description: Version of the panther_ros to be used in the docker image (branch/tag/commit).
required: true
type: string
default: ros2-devel
build_type:
description: Is it a "development" or a "stable" release?
required: true
Expand Down Expand Up @@ -48,13 +53,14 @@ jobs:
uses: actions/checkout@v2

- name: Build Docker Image
uses: husarion-ci/ros-docker-img-action@v0.5
uses: husarion-ci/ros-docker-img-action@v0.6
with:
dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }}
dockerhub_token: ${{ secrets.DOCKERHUB_TOKEN }}
main_branch_name: ros2
dockerfile: ${{ matrix.dockerfile }}
repo_name: ${{ matrix.repo_name }}
branch_name: ${{ inputs.panther_codebase_version }}
build_type: ${{ inputs.build_type }}
ros_distro: ${{ matrix.ros_distro }}
platforms: ${{ matrix.platforms }}
Expand Down
6 changes: 4 additions & 2 deletions Dockerfile.hardware
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
ARG ROS_DISTRO=humble
ARG BUILD_TEST=OFF

FROM husarnet/ros:${ROS_DISTRO}-ros-core

ARG BRANCH_NAME=ros2-devel
ARG BUILD_TEST=OFF

ENV HUSARION_ROS_BUILD_TYPE=hardware

STOPSIGNAL SIGINT
Expand All @@ -13,7 +15,7 @@ RUN apt-get update && \
apt-get install -y \
ros-dev-tools && \
# Setup workspace
git clone -b ros2-devel https://github.com/husarion/panther_ros.git src/panther_ros && \
git clone -b ${BRANCH_NAME} https://github.com/husarion/panther_ros.git src/panther_ros && \
vcs import src < src/panther_ros/panther/panther_${HUSARION_ROS_BUILD_TYPE}.repos && \
cp -r src/ros2_controllers/diff_drive_controller src && \
cp -r src/ros2_controllers/imu_sensor_broadcaster src && \
Expand Down
6 changes: 4 additions & 2 deletions Dockerfile.simulation
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
ARG ROS_DISTRO=humble
ARG BUILD_TEST=OFF

FROM husarnet/ros:${ROS_DISTRO}-ros-core

ARG BRANCH_NAME=ros2-devel
ARG BUILD_TEST=OFF

ENV HUSARION_ROS_BUILD_TYPE=simulation

STOPSIGNAL SIGINT
Expand All @@ -13,7 +15,7 @@ RUN apt-get update && \
apt-get install -y \
ros-dev-tools && \
# Setup workspace
git clone -b ros2-devel https://github.com/husarion/panther_ros.git src/panther_ros && \
git clone -b ${BRANCH_NAME} https://github.com/husarion/panther_ros.git src/panther_ros && \
vcs import src < src/panther_ros/panther/panther_${HUSARION_ROS_BUILD_TYPE}.repos && \
cp -r src/ros2_controllers/diff_drive_controller src && \
cp -r src/ros2_controllers/imu_sensor_broadcaster src && \
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,6 @@ docker compose -f compose.simulation.yaml up
```

> [!NOTE]
> If you have an NVIDIA GPU, it is worth changing the compose configuration from cpu-config to gpu-config. For this purpose, it is necessary to install [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html). With NVIDIA Container Toolkit installed, modify following Docker compose file by replacing `*cpu-config` with `*gpu-config`: [compose.simulation.yaml](./demo/compose.simulation.yaml).
>
> 1. You can change robot model and namespace by editing the launch command in `compose.simulation.yaml`.
> 2. If you have an NVIDIA GPU, it is worth changing the compose configuration from `cpu-config` to `gpu-config`. For this purpose, it is necessary to install [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html). With NVIDIA Container Toolkit installed, modify following Docker compose file by replacing `*cpu-config` with `*gpu-config`: [compose.simulation.yaml](./demo/compose.simulation.yaml).
9 changes: 5 additions & 4 deletions demo/compose.minimal-setup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@ x-common-config: &common-config
restart: always
environment:
- RMW_IMPLEMENTATION=rmw_cyclonedds_cpp # Default FastDDS do not work
- ROBOT_NAMESPACE=panther
- ROBOT_MODEL=${ROBOT_MODEL:-panther}
- ROBOT_NAMESPACE=${ROBOT_MODEL:-panther}
- ROS_DOMAIN_ID=${ROS_DOMAIN_ID:-0}
services:
panther_ros:
image: husarion/panther:humble-2.1.1-20240828
image: husarion/panther:humble-2.1.2-20241125
container_name: panther_ros
<<: *common-config
devices:
Expand Down Expand Up @@ -37,7 +38,7 @@ services:
ros2 launch panther_bringup bringup.launch.py

gamepad_controller:
image: husarion/joy2twist:humble-1.0.0-20240725-stable
image: husarion/joy2twist:humble-1.0.0-20241003-stable
container_name: gamepad_controller
<<: *common-config
devices:
Expand All @@ -46,5 +47,5 @@ services:
- 'c 13:0 rmw' # gamepad
stop_signal: SIGINT
command: >
bash -c "ros2 launch joy2twist gamepad_controller.launch.py joy2twist_params_file:=$(ros2 pkg prefix joy2twist)/share/joy2twist/config/joy2twist_panther.yaml namespace:=panther"
bash -c "ros2 launch joy2twist gamepad_controller.launch.py joy2twist_params_file:=$(ros2 pkg prefix joy2twist)/share/joy2twist/config/joy2twist_ugv.yaml"

4 changes: 2 additions & 2 deletions demo/compose.simulation.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ x-gpu-config: &gpu-config
env_file: .env.gpu
services:
panther_gazebo:
image: husarion/panther-gazebo:humble-2.1.1-20240828
image: husarion/panther-gazebo:humble-2.1.2-20241125
container_name: panther_gazebo
<<:
- *common-config
- *cpu-config
volumes:
- /tmp/.X11-unix:/tmp/.X11-unix:rw
command: >
ros2 launch panther_gazebo simulation.launch.py namespace:=panther
ros2 launch panther_gazebo simulation.launch.py robot_model:=panther namespace:=panther

Loading