From 0098515827afe517b0ba9390fec8fa9752a337b7 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Tue, 1 Apr 2025 00:26:47 +0200 Subject: [PATCH 01/17] 804: change to 7.3.0 packages --- .gitmodules | 2 +- linux_docker_resources/Dockerfile | 12 ++++++------ linux_docker_resources/Dockerfile-RHEL | 10 +++++----- linux_docker_resources/entry_point.sh | 24 ++++++++++++------------ windows_docker_resources/Dockerfile | 22 +++++++++++----------- 5 files changed, 35 insertions(+), 35 deletions(-) diff --git a/.gitmodules b/.gitmodules index 4aefa708..72471002 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,7 @@ [submodule "linux_docker_resources/rticonnextdds-src"] path = linux_docker_resources/rticonnextdds-src url = git@github.com:osrf/rticonnextdds-bins.git - branch = binaries/linux/amd64/6.0.1 + branch = binaries/linux/amd64/7.3.0 [submodule "linux_docker_resources/rticonnextdds-license"] path = linux_docker_resources/rticonnextdds-license url = git@github.com:osrf/rticonnextdds-license.git diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 972c929a..cff67304 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -153,7 +153,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y lcov 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 +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-7.3.0; 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 @@ -162,15 +162,15 @@ 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. +# Connext 7.3.0 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 \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-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 +RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run # Add the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 51249683..631b284c 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -185,16 +185,16 @@ 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. +# Connext 7.3.0 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; \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-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; + chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run; ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py # Add the RTI license file. diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 78da433b..36b305f6 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -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.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg \ + /tmp/rticonnextdds-src/openssl-3.0.12-7.3.0.7-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-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 diff --git a/windows_docker_resources/Dockerfile b/windows_docker_resources/Dockerfile index cf48f6db..6e1de2bf 100644 --- a/windows_docker_resources/Dockerfile +++ b/windows_docker_resources/Dockerfile @@ -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 pixi run 7z x -oC:\connext C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-target-x64Win64VS2017.zip +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.7-host-x64Win64.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.7-host-x64Win64.rtipkg +RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0.7-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 From e70a7e8aac72138c331b4f020ab33a1c34799b28 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Fri, 4 Apr 2025 17:04:48 +0200 Subject: [PATCH 02/17] =?UTF-8?q?804:=20Update=20to=207.3.0=20=E2=80=94=20?= =?UTF-8?q?no=20patch=20required.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- linux_docker_resources/Dockerfile | 3 +-- linux_docker_resources/Dockerfile-RHEL | 3 +-- linux_docker_resources/entry_point.sh | 10 +++++----- windows_docker_resources/Dockerfile | 8 ++++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index cff67304..4ba17ca3 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -166,8 +166,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect COPY rticonnextdds-src/ /tmp/rticonnextdds-src RUN 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg; do \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; do \ cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \ done RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 631b284c..04965f17 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -189,8 +189,7 @@ RUN dnf install \ COPY rticonnextdds-src/ /tmp/rticonnextdds-src RUN 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg; \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; \ do \ cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \ done; \ diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 36b305f6..6c820555 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -52,11 +52,11 @@ if [ "${ARCH}" = "x86_64" -a "${ID}" = "ubuntu" ]; then 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg \ - /tmp/rticonnextdds-src/openssl-3.0.12-7.3.0.7-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-target-x64Linux4gcc7.3.0.rtipkg + /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 diff --git a/windows_docker_resources/Dockerfile b/windows_docker_resources/Dockerfile index 6e1de2bf..691e5b97 100644 --- a/windows_docker_resources/Dockerfile +++ b/windows_docker_resources/Dockerfile @@ -55,12 +55,12 @@ RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-target-x64Win64V COPY rticonnextdds-license\rti_license.dat $RTI_LICENSE_FILE # Install Connext -RUN pixi run 7z x -oC:\connext C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-target-x64Win64VS2017.zip 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.7-host-x64Win64.rtipkg +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.7-host-x64Win64.rtipkg -RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0.7-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 From 391630758d21b9d66f3b4b3b9df57f58ffd9199b Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Fri, 4 Apr 2025 20:24:57 +0200 Subject: [PATCH 03/17] 804: apply logic to support jazzy and humble, TODO work on ./linux_docker_resources/entry_point.sh to support also humble and jazzy --- linux_docker_resources/Dockerfile | 35 ++++++++++++++++++++------ linux_docker_resources/Dockerfile-RHEL | 26 +++++++++++++------ 2 files changed, 45 insertions(+), 16 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 4ba17ca3..2a9719a4 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -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-7.3.0; 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 \ + 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; \ + 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 @@ -162,14 +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 7.3.0 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-7.3.0-pro-host-x64Linux.run \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-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-7.3.0-pro-host-x64Linux.run + done; \ + fi + +# 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 the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 04965f17..2a6a1540 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -185,15 +185,25 @@ RUN dnf install \ --refresh -y # Get and install the RTI web binaries. -# Connext 7.3.0 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-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; \ - chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-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 +# 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. From a838748e19e75cfca12155c315baf6eac90c5f05 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Tue, 1 Apr 2025 00:26:47 +0200 Subject: [PATCH 04/17] 804: change to 7.3.0 packages --- .gitmodules | 2 +- linux_docker_resources/Dockerfile | 12 ++++++------ linux_docker_resources/Dockerfile-RHEL | 10 +++++----- linux_docker_resources/entry_point.sh | 24 ++++++++++++------------ windows_docker_resources/Dockerfile | 22 +++++++++++----------- 5 files changed, 35 insertions(+), 35 deletions(-) diff --git a/.gitmodules b/.gitmodules index 4aefa708..72471002 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,7 @@ [submodule "linux_docker_resources/rticonnextdds-src"] path = linux_docker_resources/rticonnextdds-src url = git@github.com:osrf/rticonnextdds-bins.git - branch = binaries/linux/amd64/6.0.1 + branch = binaries/linux/amd64/7.3.0 [submodule "linux_docker_resources/rticonnextdds-license"] path = linux_docker_resources/rticonnextdds-license url = git@github.com:osrf/rticonnextdds-license.git diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index b4961356..3da80b9c 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -154,7 +154,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y lcov 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 +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-7.3.0; 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 @@ -163,15 +163,15 @@ 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. +# Connext 7.3.0 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 \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-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 +RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run # Add the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index b279a74b..afe5b4a0 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -186,16 +186,16 @@ 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. +# Connext 7.3.0 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; \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-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; + chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run; ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py # Add the RTI license file. diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 78da433b..36b305f6 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -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.7-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg \ + /tmp/rticonnextdds-src/openssl-3.0.12-7.3.0.7-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-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 diff --git a/windows_docker_resources/Dockerfile b/windows_docker_resources/Dockerfile index cf48f6db..6e1de2bf 100644 --- a/windows_docker_resources/Dockerfile +++ b/windows_docker_resources/Dockerfile @@ -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 pixi run 7z x -oC:\connext C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-target-x64Win64VS2017.zip +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.7-host-x64Win64.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.7-host-x64Win64.rtipkg +RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0.7-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 From bda310bc128d2e80301a94cf4276589df7095419 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Fri, 4 Apr 2025 17:04:48 +0200 Subject: [PATCH 05/17] =?UTF-8?q?804:=20Update=20to=207.3.0=20=E2=80=94=20?= =?UTF-8?q?no=20patch=20required.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- linux_docker_resources/Dockerfile | 3 +-- linux_docker_resources/Dockerfile-RHEL | 3 +-- linux_docker_resources/entry_point.sh | 10 +++++----- windows_docker_resources/Dockerfile | 8 ++++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 3da80b9c..2f0768bd 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -167,8 +167,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect COPY rticonnextdds-src/ /tmp/rticonnextdds-src RUN 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg; do \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; do \ cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \ done RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-host-x64Linux.run diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index afe5b4a0..772b6a5b 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -190,8 +190,7 @@ RUN dnf install \ COPY rticonnextdds-src/ /tmp/rticonnextdds-src RUN 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg; \ + /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-pro-target-x64Linux4gcc7.3.0.rtipkg; \ do \ cat $(echo ${splitpkg}.0?? | sort) > $splitpkg; \ done; \ diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 36b305f6..6c820555 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -52,11 +52,11 @@ if [ "${ARCH}" = "x86_64" -a "${ID}" = "ubuntu" ]; then 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.7-pro-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0.7-pro-target-x64Linux4gcc7.3.0.rtipkg \ - /tmp/rticonnextdds-src/openssl-3.0.12-7.3.0.7-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-host-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_security_plugins-7.3.0.7-target-x64Linux4gcc7.3.0.rtipkg + /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 diff --git a/windows_docker_resources/Dockerfile b/windows_docker_resources/Dockerfile index 6e1de2bf..691e5b97 100644 --- a/windows_docker_resources/Dockerfile +++ b/windows_docker_resources/Dockerfile @@ -55,12 +55,12 @@ RUN copy /b C:\TEMP\rticonnextdds-src\rti_connext_dds-7.3.0-pro-target-x64Win64V COPY rticonnextdds-license\rti_license.dat $RTI_LICENSE_FILE # Install Connext -RUN pixi run 7z x -oC:\connext C:\TEMP\rticonnextdds-src\openssl-3.0.12-7.3.0-target-x64Win64VS2017.zip 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.7-host-x64Win64.rtipkg +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.7-host-x64Win64.rtipkg -RUN %CONNEXTDDS_DIR%\bin\rtipkginstall.bat -u C:\TEMP\rticonnextdds-src\rti_security_plugins-7.3.0.7-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 From 58cb69af3487ac550f97dc3cfd617edec485c633 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Fri, 4 Apr 2025 20:24:57 +0200 Subject: [PATCH 06/17] 804: apply logic to support jazzy and humble, TODO work on ./linux_docker_resources/entry_point.sh to support also humble and jazzy --- linux_docker_resources/Dockerfile | 35 ++++++++++++++++++++------ linux_docker_resources/Dockerfile-RHEL | 26 +++++++++++++------ 2 files changed, 45 insertions(+), 16 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 2f0768bd..5b5da965 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -153,8 +153,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-7.3.0; 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 \ + 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; \ + 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 @@ -163,14 +170,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 7.3.0 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-7.3.0-pro-host-x64Linux.run \ - /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-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-7.3.0-pro-host-x64Linux.run + done; \ + fi + +# 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 the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 772b6a5b..30361f5e 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -186,15 +186,25 @@ RUN dnf install \ --refresh -y # Get and install the RTI web binaries. -# Connext 7.3.0 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-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; \ - chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-7.3.0-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 +# 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. From 557314235e0a4a6184ef45f035701fdc24db3498 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 17:26:29 -0700 Subject: [PATCH 07/17] Comment this out until it works. --- linux_docker_resources/Dockerfile | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 5b5da965..99509308 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -173,20 +173,20 @@ RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect COPY rticonnextdds-src/ /tmp/rticonnextdds-src # 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 +#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 # 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 From 2b628fb66e0769518c1cbea88efacb2a48e6f695 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 17:28:09 -0700 Subject: [PATCH 08/17] More comment. --- linux_docker_resources/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 99509308..0b243e98 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -189,7 +189,7 @@ COPY rticonnextdds-src/ /tmp/rticonnextdds-src # fi # 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 +#RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-*-pro-host-x64Linux.run # Add the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py From e1ae72833ff86d1acbc31d3a83b6b7c5084a799a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 14:38:21 -0700 Subject: [PATCH 09/17] Update available Connext versions from private submodule. --- windows_docker_resources/rticonnextdds-src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows_docker_resources/rticonnextdds-src b/windows_docker_resources/rticonnextdds-src index d28e1bd3..4b557344 160000 --- a/windows_docker_resources/rticonnextdds-src +++ b/windows_docker_resources/rticonnextdds-src @@ -1 +1 @@ -Subproject commit d28e1bd3b5ba6e71bc90687f481b5531111cd95f +Subproject commit 4b55734489ab0a90b7bd4265020d1aaa1a8e4184 From f2d1a9075990b54393f590f5940a5e53e858a577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 17:52:04 -0700 Subject: [PATCH 10/17] Update rticonnextdds-src submodule. --- windows_docker_resources/rticonnextdds-src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows_docker_resources/rticonnextdds-src b/windows_docker_resources/rticonnextdds-src index 4b557344..78e9410a 160000 --- a/windows_docker_resources/rticonnextdds-src +++ b/windows_docker_resources/rticonnextdds-src @@ -1 +1 @@ -Subproject commit 4b55734489ab0a90b7bd4265020d1aaa1a8e4184 +Subproject commit 78e9410a73b11666fbd196a0af1d926620cbfe91 From 02e0e06c3f244ab695ee3c03a8d93db603c047ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 18:24:56 -0700 Subject: [PATCH 11/17] Add 7.3.0 binaries. --- .gitmodules | 2 +- linux_docker_resources/rticonnextdds-src | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 72471002..5e57ccf1 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,7 @@ [submodule "linux_docker_resources/rticonnextdds-src"] path = linux_docker_resources/rticonnextdds-src url = git@github.com:osrf/rticonnextdds-bins.git - branch = binaries/linux/amd64/7.3.0 + branch = binaries/linux/amd64/omnibus [submodule "linux_docker_resources/rticonnextdds-license"] path = linux_docker_resources/rticonnextdds-license url = git@github.com:osrf/rticonnextdds-license.git diff --git a/linux_docker_resources/rticonnextdds-src b/linux_docker_resources/rticonnextdds-src index c8a7784e..3d367af7 160000 --- a/linux_docker_resources/rticonnextdds-src +++ b/linux_docker_resources/rticonnextdds-src @@ -1 +1 @@ -Subproject commit c8a7784e759cd275712d394e48c5b2f6612cea56 +Subproject commit 3d367af76020d1d174c36987f4fdff1d7aa2dbce From 6160727c2a08fc6d99695bb3e091a4b2734b6ad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 19:17:02 -0700 Subject: [PATCH 12/17] Can't work if you don't uncomment your trash patches guy. --- linux_docker_resources/Dockerfile | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 0b243e98..5b5da965 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -173,23 +173,23 @@ RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect COPY rticonnextdds-src/ /tmp/rticonnextdds-src # 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 +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 # 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 +RUN chmod 755 /tmp/rticonnextdds-src/rti_connext_dds-*-pro-host-x64Linux.run # Add the connextdds installation script used in entry_point.sh ADD rti_web_binaries_install_script.py /tmp/rti_web_binaries_install_script.py From 791bdf82f7f6f85c6eaae384c4b7ac7c3bef076a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven!=20Ragnar=C3=B6k?= Date: Fri, 4 Apr 2025 20:04:03 -0700 Subject: [PATCH 13/17] The new files have a different filename. --- linux_docker_resources/entry_point.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 6c820555..518c5b4f 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -55,8 +55,8 @@ if [ "${ARCH}" = "x86_64" -a "${ID}" = "ubuntu" ]; then /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 + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0-host-openssl-3.0-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-7.3.0-target-openssl-3.0-x64Linux4gcc7.3.0.rtipkg if [ $? -ne 0 ]; then echo "Connext not installed correctly (maybe you're on an ARM machine?)." >&2 exit 1 From 683cd99983fc7a84085f288e8a63f2188c7e9468 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Mon, 7 Apr 2025 13:55:07 +0200 Subject: [PATCH 14/17] #804: change the special case for jazzy and humble, move back to use RTI_NC_LICENSE_ACCEPTED=yes, populate rosdistro in the last docker layer to be used in the entry_point.sh --- linux_docker_resources/Dockerfile | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 5b5da965..2ece402b 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -153,13 +153,13 @@ 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. 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 +# Install the Connext binary from the OSRF repositories. if ROS_DISTRO is humble or jazzy +# install rti-connext-dds-6.0.1 else install rti-connext-dds-7.3.0-ros. RUN if test \( ${PLATFORM} = x86 -a ${INSTALL_CONNEXT_DEBS} = true \); then \ - 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 \ + if 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; \ + else \ + apt-get update && RTI_NC_LICENSE_ACCEPTED=yes apt-get install -y rti-connext-dds-7.3.0-ros; \ fi; \ fi @@ -244,6 +244,9 @@ RUN apt-get update && apt-get install -y \ RUN update-ccache-symlinks ENV DISPLAY=:99 +# Making the RTI Connext env variable to the entry_point.sh script so that it can be used to run +# the RTI Connext installation script. +ENV ROS_DISTRO=${ROS_DISTRO} # Create a user to own the build output. RUN useradd -u 1234 -m rosbuild From 14623b7772502f79a0d687a550bc3060a73f462d Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Mon, 7 Apr 2025 14:23:51 +0200 Subject: [PATCH 15/17] #804: Refactor logic to treat Jazzy and Humble as special cases when selecting the Connext version --- linux_docker_resources/Dockerfile | 14 +++++++------- linux_docker_resources/Dockerfile-RHEL | 15 ++++++++------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index 2ece402b..eb31559a 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -173,18 +173,18 @@ RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect COPY rticonnextdds-src/ /tmp/rticonnextdds-src # 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 \ +RUN if 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; \ + else \ + 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; \ fi diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 30361f5e..80d429b2 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -188,20 +188,21 @@ RUN dnf install \ # Get and install the RTI web binaries. COPY rticonnextdds-src/ /tmp/rticonnextdds-src # 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 \ +RUN if 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; \ + else \ + 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; \ fi + # 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 From 53bb83e1a91a6f968165620b5360a8409667b4c0 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Mon, 7 Apr 2025 17:26:10 +0200 Subject: [PATCH 16/17] #804: entry_point.sh Refactor entry_point.sh to install the correct Connext version based on ROS_DISTRO --- linux_docker_resources/entry_point.sh | 49 +++++++++++++++++++-------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/linux_docker_resources/entry_point.sh b/linux_docker_resources/entry_point.sh index 518c5b4f..88cba9f0 100755 --- a/linux_docker_resources/entry_point.sh +++ b/linux_docker_resources/entry_point.sh @@ -39,30 +39,51 @@ if [ "${ARCH}" = "x86_64" -a "${ID}" = "ubuntu" ]; then # Install RTI Connext DDS if we didn't find 'rmw_connextdds' within the "ignore-rmw" option strings. if [ -z "${IGNORE_CONNEXTDDS}" ]; then echo "Installing Connext..." + + export CONNEXT_FULL_VERSION="7.3.0" + export CONNEXT_DISPLAY_VERSION="$CONNEXT_FULL_VERSION" + if [ "${ROS_DISTRO}" = "jazzy" ] || [ "${ROS_DISTRO}" = "humble" ]; then + export CONNEXT_FULL_VERSION="6.0.1.25" + export CONNEXT_DISPLAY_VERSION="${CONNEXT_FULL_VERSION%.*}" + fi + case "${CI_ARGS}" in *--connext-debs*) echo "Using Debian package of Connext" - 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 + if test -r /opt/rti.com/rti_connext_dds-${CONNEXT_DISPLAY_VERSION}/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh; then + echo "Sourcing RTI setenv script /opt/rti.com/rti_connext_dds-${CONNEXT_DISPLAY_VERSION}/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh" + . /opt/rti.com/rti_connext_dds-${CONNEXT_DISPLAY_VERSION}/resource/scripts/rtisetenv_x64Linux4gcc7.3.0.sh fi ;; *) echo "Installing Connext binaries off RTI website..." - 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-openssl-3.0-x64Linux.rtipkg \ - /tmp/rticonnextdds-src/rti_security_plugins-7.3.0-target-openssl-3.0-x64Linux4gcc7.3.0.rtipkg + if test -x /tmp/rticonnextdds-src/rti_connext_dds-${CONNEXT_DISPLAY_VERSION}-pro-host-x64Linux.run; then + rtipkg_list="\ + /tmp/rticonnextdds-src/openssl-3.0.12-${CONNEXT_FULL_VERSION}-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/openssl-3.0.12-${CONNEXT_FULL_VERSION}-target-x64Linux4gcc7.3.0.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-${CONNEXT_FULL_VERSION}-host-openssl-3.0-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-${CONNEXT_FULL_VERSION}-target-openssl-3.0-x64Linux4gcc7.3.0.rtipkg \ + " + connext_base_architecture="x64Linux3gcc4.8.2" + if [ "${CONNEXT_FULL_VERSION}" = "6.0.1.25" ]; then + rtipkg_list="\ + /tmp/rticonnextdds-src/rti_connext_dds-${CONNEXT_FULL_VERSION}-pro-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/openssl-1.1.1k-${CONNEXT_FULL_VERSION}-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-${CONNEXT_FULL_VERSION}-host-x64Linux.rtipkg \ + /tmp/rticonnextdds-src/rti_security_plugins-${CONNEXT_FULL_VERSION}-target-x64Linux4gcc7.3.0.rtipkg \ + " + connext_base_architecture="x64Linux2.6gcc4.4.5" + fi + python3 -u /tmp/rti_web_binaries_install_script.py /tmp/rticonnextdds-src/rti_connext_dds-${CONNEXT_DISPLAY_VERSION}-pro-host-x64Linux.run \ + /home/rosbuild/rti_connext_dds-${CONNEXT_DISPLAY_VERSION} --rtipkg_paths \ + /tmp/rticonnextdds-src/rti_connext_dds-${CONNEXT_FULL_VERSION}-pro-target-x64Linux4gcc7.3.0.rtipkg \ + $rtipkg_list 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-7.3.0 - export RTI_OPENSSL_LIBS=$CONNEXTDDS_DIR/resource/app/lib/x64Linux2.6gcc4.4.5 + export CONNEXTDDS_DIR=/home/rosbuild/rti_connext_dds-${CONNEXT_DISPLAY_VERSION} + export RTI_OPENSSL_LIBS=$CONNEXTDDS_DIR/resource/app/lib/${connext_base_architecture} else echo "No connext installation files found found." >&2 exit 1 @@ -84,4 +105,4 @@ sed -i -e "s/rosbuild:x:$ORIG_GID:/rosbuild:x:$GID:/" /etc/group chown -R ${UID}:${GID} "${ORIG_HOME}" echo "done." -exec sudo -H -u rosbuild -E -- xvfb-run -s "-ac -screen 0 1280x1024x24" /bin/sh -c "$*" \ No newline at end of file +exec sudo -H -u rosbuild -E -- xvfb-run -s "-ac -screen 0 1280x1024x24" /bin/sh -c "$*" From b87e04aed08485029f1315f2457a915d16439156 Mon Sep 17 00:00:00 2001 From: Juan Carlos Chaves Puertas Date: Mon, 7 Apr 2025 18:01:57 +0200 Subject: [PATCH 17/17] #804: add coment explaining that rti Connext web installers are only supported on x86_64 --- linux_docker_resources/Dockerfile | 3 ++- linux_docker_resources/Dockerfile-RHEL | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/linux_docker_resources/Dockerfile b/linux_docker_resources/Dockerfile index eb31559a..ae425d90 100644 --- a/linux_docker_resources/Dockerfile +++ b/linux_docker_resources/Dockerfile @@ -169,7 +169,8 @@ RUN if test ${PLATFORM} = x86; then apt-get update && apt-get install --no-insta # Install dependencies for RTI web binaries install script. RUN apt-get update && apt-get install --no-install-recommends -y python3-pexpect -# Get and install the RTI web binaries. +# Get and install the RTI Connext web binaries. +# RTI Connext web binaries installation is only supported on x86_64. COPY rticonnextdds-src/ /tmp/rticonnextdds-src # Join the correct Connext version files based on the value of ROS_DISTRO. diff --git a/linux_docker_resources/Dockerfile-RHEL b/linux_docker_resources/Dockerfile-RHEL index 80d429b2..cfc3f507 100644 --- a/linux_docker_resources/Dockerfile-RHEL +++ b/linux_docker_resources/Dockerfile-RHEL @@ -185,8 +185,10 @@ RUN dnf install \ python3-pexpect \ --refresh -y -# Get and install the RTI web binaries. +# Get and install the RTI Connext web binaries. +# RTI Connext web binaries installation is only supported on x86_64. COPY rticonnextdds-src/ /tmp/rticonnextdds-src + # Join the correct Connext version files based on the value of ROS_DISTRO. RUN if test ${ROS_DISTRO} = jazzy -o ${ROS_DISTRO} = humble; then \ for splitpkg in \