diff --git a/scripts/helper/functions.sh b/scripts/helper/functions.sh index 58a72c9c9..fd42fb959 100755 --- a/scripts/helper/functions.sh +++ b/scripts/helper/functions.sh @@ -112,14 +112,14 @@ clean_demo_env() } -check_num_certs() { +check_truststore_valid() { local DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" NUM_CERTS=$(docker run --rm -v $DIR/../security:/etc/kafka/secrets localbuild/connect:${CONFLUENT_DOCKER_TAG}-${CONNECTOR_VERSION} \ - keytool --list --keystore /etc/kafka/secrets/kafka.connect.truststore.jks --storepass confluent | grep trusted | wc -l) + keytool --list --keystore /etc/kafka/secrets/kafka.connect.truststore.jks --storepass confluent | grep trusted | wc -l | xargs) if [[ "$NUM_CERTS" -eq "1" ]]; then - return 1 + return 0 fi - return 0 + return 1 } create_certificates() diff --git a/scripts/start.sh b/scripts/start.sh index 50b5b41a1..3effae79b 100755 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -18,7 +18,7 @@ CLEAN=${CLEAN:-false} build_connect_image # Set the CLEAN variable to true if cert doesn't exist -if ! [[ -f "${DIR}/security/controlCenterAndKsqlDBServer-ca1-signed.crt" ]] || ! check_num_certs; then +if ! [[ -f "${DIR}/security/controlCenterAndKsqlDBServer-ca1-signed.crt" ]] || ! check_truststore_valid; then echo "INFO: Running with CLEAN=true because instructed or certificates don't yet exist." clean_demo_env CLEAN=true @@ -36,8 +36,8 @@ echo if [[ "$CLEAN" == "true" ]] ; then create_certificates || exit 1 - if [[ ! check_num_certs ]]; then - echo -e "\nERROR: Expected ~147 trusted certificates on the Kafka Connect server but got 1. Please troubleshoot and try again." + if ! check_truststore_valid; then + echo -e "\nERROR: Expected valid trusted certificates on the Kafka Connect server. Please troubleshoot and try again." exit 1 fi fi