diff --git a/mysql-create-superuser.sh b/mysql-create-superuser.sh index 4f01656..0e44c9c 100755 --- a/mysql-create-superuser.sh +++ b/mysql-create-superuser.sh @@ -1,19 +1,24 @@ #!/usr/bin/env bash -PWGEN=`which pwgen` -if [ -z "${PWGEN}" ]; -then - echo "Could not find \"pwgen\" binary" - exit 1 +# Function to generate a random password +generate_password() { + openssl rand -base64 30 | tr -dc 'a-zA-Z0-9' | head -c 40 +} + +# Check if pwgen is available +PWGEN=$(which pwgen 2>/dev/null) +if [ -z "${PWGEN}" ]; then + echo "pwgen not found, using openssl for password generation" + AUTOGEN_PASSWORD=$(generate_password) +else + AUTOGEN_PASSWORD=$(${PWGEN} -n1 -v 40) fi -AUTOGEN_PASSWORD=`pwgen -n1 -v 40` USERNAME="$1" -if [ -z "${USERNAME}" ]; -then - echo "Missing username" - exit 1 +if [ -z "${USERNAME}" ]; then + echo "Missing username" + exit 1 fi cat <