Skip to content

Commit

Permalink
environment examples are now supported
Browse files Browse the repository at this point in the history
  • Loading branch information
vdesabou committed Jul 27, 2023
1 parent d9aa5ab commit f0a3082
Show file tree
Hide file tree
Showing 2 changed files with 86 additions and 36 deletions.
61 changes: 43 additions & 18 deletions scripts/cli/playground
Original file line number Diff line number Diff line change
Expand Up @@ -8657,18 +8657,6 @@ playground_bootstrap_reproduction_model_command() {
test_file_directory="$(dirname "${test_file}")"
cd ${test_file_directory}

# determining the docker-compose file from from test_file
docker_compose_file=$(grep "environment" "$test_file" | grep DIR | grep start.sh | cut -d "/" -f 7 | cut -d '"' -f 1 | tail -n1 | xargs)
docker_compose_file="${test_file_directory}/${docker_compose_file}"
description_kebab_case="${description// /-}"
description_kebab_case=$(echo "$description_kebab_case" | tr '[:upper:]' '[:lower:]')

if [ "${docker_compose_file}" != "" ] && [ ! -f "${docker_compose_file}" ]
then
docker_compose_file=""
logwarn "📁 Could not determine docker-compose override file from $test_file !"
fi

topic_name="customer-$producer"
topic_name=$(echo $topic_name | tr '-' '_')
filename=$(basename -- "$test_file")
Expand Down Expand Up @@ -8715,9 +8703,52 @@ playground_bootstrap_reproduction_model_command() {

repro_dir=$root_folder/$output_folder/$final_dir
mkdir -p $repro_dir
tmp_dir=$(mktemp -d -t ci-XXXXXXXXXX)
trap 'rm -rf $tmp_dir' EXIT

description_kebab_case="${description// /-}"
description_kebab_case=$(echo "$description_kebab_case" | tr '[:upper:]' '[:lower:]')
repro_test_file="$repro_dir/$filename-repro-$description_kebab_case.$extension"

# determining the docker-compose file from from test_file
docker_compose_file=$(grep "environment" "$test_file" | grep DIR | grep start.sh | cut -d "/" -f 7 | cut -d '"' -f 1 | tail -n1 | xargs)
docker_compose_file="${test_file_directory}/${docker_compose_file}"

log "✨ Creating file $repro_test_file"
rm -f $repro_test_file
cp $test_file $repro_test_file

if [ "${docker_compose_file}" != "" ] && [ ! -f "${docker_compose_file}" ]
then
grep 'DOCKER_COMPOSE_FILE_OVERRIDE=$1' "$test_file"
if [ $? -eq 0 ]
then
# it means it is an environment example
# need to create the docker-compose file
docker_compose_file=""
docker_compose_test_file="$repro_dir/docker-compose.repro-$description_kebab_case.yml"
log "✨ Creating empty file $docker_compose_test_file"

echo "---" > $docker_compose_test_file
echo "version: '3.5'" >> $docker_compose_test_file
echo "" >> $docker_compose_test_file
echo "# override the services here, example " >> $docker_compose_test_file
echo "# services:" >> $docker_compose_test_file
echo "# connect:" >> $docker_compose_test_file
echo "# environment:" >> $docker_compose_test_file
echo "# CONNECT_BOOTSTRAP_SERVERS: \"broker:9092\"" >> $docker_compose_test_file

docker_compose_test_file_name=$(basename -- "$docker_compose_test_file")
cp $test_file $tmp_dir/tmp_file
line=$(grep -n 'DOCKER_COMPOSE_FILE_OVERRIDE=$1' $test_file | cut -d ":" -f 1 | tail -n1)

{ head -n $(($line-1)) $tmp_dir/tmp_file; echo "DOCKER_COMPOSE_FILE_OVERRIDE=../../$output_folder/$final_dir/$docker_compose_test_file_name"; tail -n +$(($line+1)) $tmp_dir/tmp_file; } > $repro_test_file
else
docker_compose_file=""
logwarn "📁 Could not determine docker-compose override file from $test_file !"
fi
fi

if [ "${docker_compose_file}" != "" ] && [ -f "${docker_compose_file}" ]
then
filename=$(basename -- "${docker_compose_file}")
Expand All @@ -8732,19 +8763,13 @@ playground_bootstrap_reproduction_model_command() {
docker_compose_test_file_name=$(basename -- "$docker_compose_test_file")
fi

log "✨ Creating file $repro_test_file"
rm -f $repro_test_file
if [ "${docker_compose_file}" != "" ]
then
filename=$(basename -- "${docker_compose_file}")
sed -e "s|$filename|$docker_compose_test_file_name|g" \
$test_file > $repro_test_file
else
cp $test_file $repro_test_file
fi

tmp_dir=$(mktemp -d -t ci-XXXXXXXXXX)
trap 'rm -rf $tmp_dir' EXIT
set +e
echo "#!/bin/bash" > $tmp_dir/intro
echo "###############################################" >> $tmp_dir/intro
Expand Down
61 changes: 43 additions & 18 deletions scripts/cli/src/bootstrap_reproduction_model_command.sh
Original file line number Diff line number Diff line change
Expand Up @@ -83,18 +83,6 @@ fi
test_file_directory="$(dirname "${test_file}")"
cd ${test_file_directory}

# determining the docker-compose file from from test_file
docker_compose_file=$(grep "environment" "$test_file" | grep DIR | grep start.sh | cut -d "/" -f 7 | cut -d '"' -f 1 | tail -n1 | xargs)
docker_compose_file="${test_file_directory}/${docker_compose_file}"
description_kebab_case="${description// /-}"
description_kebab_case=$(echo "$description_kebab_case" | tr '[:upper:]' '[:lower:]')

if [ "${docker_compose_file}" != "" ] && [ ! -f "${docker_compose_file}" ]
then
docker_compose_file=""
logwarn "📁 Could not determine docker-compose override file from $test_file !"
fi

topic_name="customer-$producer"
topic_name=$(echo $topic_name | tr '-' '_')
filename=$(basename -- "$test_file")
Expand Down Expand Up @@ -141,9 +129,52 @@ fi

repro_dir=$root_folder/$output_folder/$final_dir
mkdir -p $repro_dir
tmp_dir=$(mktemp -d -t ci-XXXXXXXXXX)
trap 'rm -rf $tmp_dir' EXIT

description_kebab_case="${description// /-}"
description_kebab_case=$(echo "$description_kebab_case" | tr '[:upper:]' '[:lower:]')
repro_test_file="$repro_dir/$filename-repro-$description_kebab_case.$extension"

# determining the docker-compose file from from test_file
docker_compose_file=$(grep "environment" "$test_file" | grep DIR | grep start.sh | cut -d "/" -f 7 | cut -d '"' -f 1 | tail -n1 | xargs)
docker_compose_file="${test_file_directory}/${docker_compose_file}"

log "✨ Creating file $repro_test_file"
rm -f $repro_test_file
cp $test_file $repro_test_file

if [ "${docker_compose_file}" != "" ] && [ ! -f "${docker_compose_file}" ]
then
grep 'DOCKER_COMPOSE_FILE_OVERRIDE=$1' "$test_file"
if [ $? -eq 0 ]
then
# it means it is an environment example
# need to create the docker-compose file
docker_compose_file=""
docker_compose_test_file="$repro_dir/docker-compose.repro-$description_kebab_case.yml"
log "✨ Creating empty file $docker_compose_test_file"

echo "---" > $docker_compose_test_file
echo "version: '3.5'" >> $docker_compose_test_file
echo "" >> $docker_compose_test_file
echo "# override the services here, example " >> $docker_compose_test_file
echo "# services:" >> $docker_compose_test_file
echo "# connect:" >> $docker_compose_test_file
echo "# environment:" >> $docker_compose_test_file
echo "# CONNECT_BOOTSTRAP_SERVERS: \"broker:9092\"" >> $docker_compose_test_file

docker_compose_test_file_name=$(basename -- "$docker_compose_test_file")
cp $test_file $tmp_dir/tmp_file
line=$(grep -n 'DOCKER_COMPOSE_FILE_OVERRIDE=$1' $test_file | cut -d ":" -f 1 | tail -n1)

{ head -n $(($line-1)) $tmp_dir/tmp_file; echo "DOCKER_COMPOSE_FILE_OVERRIDE=../../$output_folder/$final_dir/$docker_compose_test_file_name"; tail -n +$(($line+1)) $tmp_dir/tmp_file; } > $repro_test_file
else
docker_compose_file=""
logwarn "📁 Could not determine docker-compose override file from $test_file !"
fi
fi

if [ "${docker_compose_file}" != "" ] && [ -f "${docker_compose_file}" ]
then
filename=$(basename -- "${docker_compose_file}")
Expand All @@ -158,19 +189,13 @@ then
docker_compose_test_file_name=$(basename -- "$docker_compose_test_file")
fi

log "✨ Creating file $repro_test_file"
rm -f $repro_test_file
if [ "${docker_compose_file}" != "" ]
then
filename=$(basename -- "${docker_compose_file}")
sed -e "s|$filename|$docker_compose_test_file_name|g" \
$test_file > $repro_test_file
else
cp $test_file $repro_test_file
fi

tmp_dir=$(mktemp -d -t ci-XXXXXXXXXX)
trap 'rm -rf $tmp_dir' EXIT
set +e
echo "#!/bin/bash" > $tmp_dir/intro
echo "###############################################" >> $tmp_dir/intro
Expand Down

0 comments on commit f0a3082

Please sign in to comment.