From 6e95da62b5bdb446c3c877ddbf914c2d2bf99002 Mon Sep 17 00:00:00 2001 From: Eduardo Ponz Segrelles Date: Fri, 22 Mar 2024 17:03:38 +0100 Subject: [PATCH] Add type support regeneration utility (#108) * Refs #20677: Add type support regeneration utility Signed-off-by: EduPonz * Refs #20677: Remove legacy script Signed-off-by: EduPonz * Refs #20677: Apply suggestions Signed-off-by: EduPonz --------- Signed-off-by: EduPonz --- fastdds_python/test/types/generate.sh | 7 --- .../scripts/update_generated_code_from_idl.sh | 46 +++++++++++++++++++ 2 files changed, 46 insertions(+), 7 deletions(-) delete mode 100755 fastdds_python/test/types/generate.sh create mode 100755 utils/scripts/update_generated_code_from_idl.sh diff --git a/fastdds_python/test/types/generate.sh b/fastdds_python/test/types/generate.sh deleted file mode 100755 index cb231455..00000000 --- a/fastdds_python/test/types/generate.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -if [[ -z "$(which fastddsgen)" ]]; then - echo "Cannot find fastddsgen. Please, include it in PATH environment variable" - exit -1 -fi - -fastddsgen -cdr both -python -replace test_complete.idl test_modules.idl diff --git a/utils/scripts/update_generated_code_from_idl.sh b/utils/scripts/update_generated_code_from_idl.sh new file mode 100755 index 00000000..9a7c5be4 --- /dev/null +++ b/utils/scripts/update_generated_code_from_idl.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +idl_files=( + './fastdds_python/test/types/test_modules.idl' + './fastdds_python/test/types/test_complete.idl' + './fastdds_python/test/types/test_included_modules.idl' + './fastdds_python_examples/HelloWorldExample/HelloWorld.idl' +) + +red='\E[1;31m' +yellow='\E[1;33m' +textreset='\E[1;0m' + +current_dir=$(git rev-parse --show-toplevel) + +if [[ ! "$(pwd -P)" -ef "${current_dir}" ]]; then + echo -e "${red}This script must be executed in the repository root directory.${textreset}" + exit -1 +fi + +if [[ -z "$(which fastddsgen)" ]]; then + echo "Cannot find fastddsgen. Please, include it in PATH environment variable" + exit -1 +fi + +ret_value=0 + +for idl_file in "${idl_files[@]}"; do + idl_dir=$(dirname "${idl_file}") + file_from_gen=$(basename "${idl_file}") + + echo -e "Processing ${yellow}${idl_file}${textreset}" + + cd "${idl_dir}" + + echo "Running: fastddsgen -cdr both -replace -flat-output-dir -python ${file_from_gen}" + fastddsgen -cdr both -replace -flat-output-dir -python ${file_from_gen} + + if [[ $? != 0 ]]; then + ret_value=-1 + fi + + cd - +done + +exit ${ret_value}