Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
0098515
804: change to 7.3.0 packages
lobolanja Mar 31, 2025
e70a7e8
804: Update to 7.3.0 — no patch required.
lobolanja Apr 4, 2025
3916307
804: apply logic to support jazzy and humble, TODO work on ./linux_do…
lobolanja Apr 4, 2025
a838748
804: change to 7.3.0 packages
lobolanja Mar 31, 2025
bda310b
804: Update to 7.3.0 — no patch required.
lobolanja Apr 4, 2025
58cb69a
804: apply logic to support jazzy and humble, TODO work on ./linux_do…
lobolanja Apr 4, 2025
5573142
Comment this out until it works.
nuclearsandwich Apr 5, 2025
2b628fb
More comment.
nuclearsandwich Apr 5, 2025
e1ae728
Update available Connext versions from private submodule.
nuclearsandwich Apr 4, 2025
f2d1a90
Update rticonnextdds-src submodule.
nuclearsandwich Apr 5, 2025
02e0e06
Add 7.3.0 binaries.
nuclearsandwich Apr 5, 2025
6160727
Can't work if you don't uncomment your trash patches guy.
nuclearsandwich Apr 5, 2025
791bdf8
The new files have a different filename.
nuclearsandwich Apr 5, 2025
2991d6a
Merge branch 'feature/804-update-rti-connext' of https://github.com/r…
lobolanja Apr 7, 2025
683cd99
#804: change the special case for jazzy and humble, move back to use …
lobolanja Apr 7, 2025
14623b7
#804: Refactor logic to treat Jazzy and Humble as special cases when …
lobolanja Apr 7, 2025
53bb83e
#804: entry_point.sh Refactor entry_point.sh to install the correct C…
lobolanja Apr 7, 2025
b87e04a
#804: add coment explaining that rti Connext web installers are only …
lobolanja Apr 7, 2025
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
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[submodule "linux_docker_resources/rticonnextdds-src"]
path = linux_docker_resources/rticonnextdds-src
url = [email protected]:osrf/rticonnextdds-bins.git
branch = binaries/linux/amd64/6.0.1
branch = binaries/linux/amd64/7.3.0
Comment thread
lobolanja marked this conversation as resolved.
Outdated
[submodule "linux_docker_resources/rticonnextdds-license"]
path = linux_docker_resources/rticonnextdds-license
url = [email protected]:osrf/rticonnextdds-license.git
Expand Down
36 changes: 27 additions & 9 deletions linux_docker_resources/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -152,8 +152,15 @@ RUN apt-get update && apt-get install --no-install-recommends -y lcov
# merged use the fork with the fix.
RUN pip3 install -U git+https://github.com/ahcorde/lcov-to-cobertura-xml@master

# Install the Connext binary from the OSRF repositories.
RUN if test \( ${PLATFORM} = x86 -a ${INSTALL_CONNEXT_DEBS} = true \); then apt-get update && RTI_NC_LICENSE_ACCEPTED=yes apt-get install -y rti-connext-dds-6.0.1; fi
# Install the Connext binary from the OSRF repositories. if ROS_DISTRO is rolling install
# rti-connext-dds-7.3.0-ros else if is humble or jazzy install rti-connext-dds-6.0.1
RUN if test \( ${PLATFORM} = x86 -a ${INSTALL_CONNEXT_DEBS} = true \); then \
Comment thread
lobolanja marked this conversation as resolved.
if test \( ${ROS_DISTRO} = rolling \); then \
apt-get update && RTI_LICENSE_AGREEMENT_ACCEPTED=accepted apt-get install -y rti-connext-dds-7.3.0-ros; \
elif test \( ${ROS_DISTRO} = humble -o ${ROS_DISTRO} = jazzy \); then \
apt-get update && RTI_NC_LICENSE_ACCEPTED=yes apt-get install -y rti-connext-dds-6.0.1; \
fi; \
Comment thread
lobolanja marked this conversation as resolved.
Outdated
fi

# Install the RTI dependencies.
RUN if test ${PLATFORM} = x86; then apt-get update && apt-get install --no-install-recommends -y default-jre-headless; fi
Expand All @@ -162,15 +169,26 @@ RUN if test ${PLATFORM} = x86; then apt-get update && apt-get install --no-insta
RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect

# Get and install the RTI web binaries.
# Connext 6.0.1 for jammy, the evaluation bundles don't contain security extensions so we need to distribute the pro binaries to ourselves.
COPY rticonnextdds-src/ /tmp/rticonnextdds-src
RUN for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-target-x64Linux4gcc7.3.0.rtipkg; do \

# Join the correct Connext version files based on the value of ROS_DISTRO.
RUN if test ${ROS_DISTRO} = rolling; then \
for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; do \
cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \
done; \
elif test ${ROS_DISTRO} = jazzy -o ${ROS_DISTRO} = humble; then \
for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-target-x64Linux4gcc7.3.0.rtipkg; do \
cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \
done
RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run
done; \
fi
Comment thread
lobolanja marked this conversation as resolved.
Outdated

# Make the RTI Connext installation script executable. For any version of Connext.
RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-*-pro-host-x64Linux.run
Comment thread
lobolanja marked this conversation as resolved.

# Add the connextdds installation script used in entry_point.sh
ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py
Expand Down
27 changes: 18 additions & 9 deletions linux_docker_resources/Dockerfile-RHEL
Original file line number Diff line number Diff line change
Expand Up @@ -185,16 +185,25 @@ RUN dnf install \
--refresh -y

# Get and install the RTI web binaries.
# Connext 6.0.1 for humble and beyond, the evaluation bundles don't contain security extensions so we need to distribute the pro binaries to ourselves.
COPY rticonnextdds-src/ /tmp/rticonnextdds-src
RUN for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-target-x64Linux4gcc7.3.0.rtipkg; \
do \
cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \
done; \
chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run;
# Join the correct Connext version files based on the value of ROS_DISTRO.
RUN if test ${ROS_DISTRO} = rolling; then \
for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; do \
cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \
done; \
elif test ${ROS_DISTRO} = jazzy -o ${ROS_DISTRO} = humble; then \
for splitpkg in \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-target-x64Linux4gcc7.3.0.rtipkg; do \
cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \
done; \
fi
Comment thread
lobolanja marked this conversation as resolved.
Outdated
# Make the RTI Connext installation script executable. For any version of Connext.
RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-*-pro-host-x64Linux.run

ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py

# Add the RTI license file.
Expand Down
24 changes: 12 additions & 12 deletions linux_docker_resources/entry_point.sh
Original file line number Diff line number Diff line change
Expand Up @@ -42,26 +42,26 @@ if [ "${ARCH}" = "x86_64" -a "${ID}" = "ubuntu" ]; then
case "${CI_ARGS}" in
*--connext-debs*)
echo "Using Debian package of Connext"
if test -r /opt/rti.com/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh; then
echo "Sourcing RTI setenv script /opt/rti.com/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh"
. /opt/rti.com/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh
if test -r /opt/rti.com/rti_connext_dds-7.3.0/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh; then
echo "Sourcing RTI setenv script /opt/rti.com/rti_connext_dds-7.3.0/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh"
. /opt/rti.com/rti_connext_dds-7.3.0/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh
fi
;;
*)
echo "Installing Connext binaries off RTI website..."
if test -x /tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run; then
python3 -u /tmp/rti_web_binaries_install_script.py /tmp/rticonnextdds-src/rti_connext_dds-6.0.1-pro-host-x64Linux.run \
/home/rosbuild/rti_connext_dds-6.0.1 --rtipkg_paths \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_connext_dds-6.0.1.25-pro-target-x64Linux4gcc7.3.0.rtipkg \
/tmp/rticonnextdds-src/openssl-1.1.1k-6.0.1.25-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_security_plugins-6.0.1.25-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_security_plugins-6.0.1.25-target-x64Linux4gcc7.3.0.rtipkg
if test -x /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run; then
python3 -u /tmp/rti_web_binaries_install_script.py /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \
/home/rosbuild/rti_connext_dds-7.3.0 --rtipkg_paths \
/tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg \
/tmp/rticonnextdds-src/openssl-3.0.12-7.3.0-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/openssl-3.0.12-7.3.0-target-x64Linux4gcc7.3.0.rtipkg \
/tmp/rticonnextdds-src/rti_security_plugins-7.3.0-host-x64Linux.rtipkg \
/tmp/rticonnextdds-src/rti_security_plugins-7.3.0-target-x64Linux4gcc7.3.0.rtipkg
if [ $? -ne 0 ]; then
echo "Connext not installed correctly (maybe you're on an ARM machine?)." >&2
exit 1
fi
export CONNEXTDDS_DIR=/home/rosbuild/rti_connext_dds-6.0.1
export CONNEXTDDS_DIR=/home/rosbuild/rti_connext_dds-7.3.0
export RTI_OPENSSL_LIBS=$CONNEXTDDS_DIR/resource/app/lib/x64Linux2.6gcc4.4.5
else
echo "No connext installation files found found." >&2
Expand Down
22 changes: 11 additions & 11 deletions windows_docker_resources/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -43,24 +43,24 @@ RUN pixi --color never --no-progress -q list

# Setup environment variables needed for Connext
ENV RTI_LICENSE_FILE C:\connext\rti_license.dat
ENV CONNEXTDDS_DIR C:\connext\rti_connext_dds-6.0.1
ENV RTI_OPENSSL_BIN C:\connext\openssl-1.1.1k\x64Win64VS2017\bin
ENV RTI_OPENSSL_LIB C:\connext\openssl-1.1.1k\x64Win64VS2017\lib
ENV CONNEXTDDS_DIR C:\connext\rti_connext_dds-7.3.0
ENV RTI_OPENSSL_BIN C:\connext\openssl-3.0.12\x64Win64VS2017\bin
ENV RTI_OPENSSL_LIB C:\connext\openssl-3.0.12\x64Win64VS2017\lib

# Copy over necessary Connext files into container
RUN IF NOT EXIST "C:\TEMP" mkdir C:\TEMP
COPY rticonnextdds-src\ C:\TEMP\rticonnextdds-src
RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-host-x64Win64.exe.??? C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-host-x64Win64.exe
RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-target-x64Win64VS2017.rtipkg.??? C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-target-x64Win64VS2017.rtipkg
RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-host-x64Win64.exe.??? C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-host-x64Win64.exe
RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-target-x64Win64VS2017.rtipkg.??? C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-target-x64Win64VS2017.rtipkg
COPY rticonnextdds-license\rti_license.dat $RTI_LICENSE_FILE

# Install Connext
RUN pixi run 7z x -oC:\connext C:\TEMP\rticonnextdds-src\openssl-1.1.1k-target-x64Win64VS2017.zip
RUN C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-host-x64Win64.exe --mode unattended --unattendedmodeui minimalWithDialogs --prefix C:\connext
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\openssl-1.1.1k-6.0.1.25-host-x64Win64.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_connext_dds-6.0.1-pro-target-x64Win64VS2017.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-6.0.1.25-host-x64Win64.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-6.0.1.25-target-x64Win64VS2017.rtipkg
RUN C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-host-x64Win64.exe --mode unattended --unattendedmodeui minimalWithDialogs --prefix C:\connext
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-host-x64Win64.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-target-x64Win64VS2017.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-target-x64Win64VS2017.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0-host-x64Win64.rtipkg
RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0-target-x64Win64VS2017.rtipkg

# Note that this *must* be in shell form, not exec form, so Docker on Windows appropriately substitutes %CI_ARGS%
WORKDIR C:\ci
Expand Down