bolt/vm_automation/ubuntu/tasks/set_user_password.sh

24 lines
726 B
Bash
Executable File

#!/bin/bash
# Task to set password for user (ubuntu::set_user_password)
# Input Variables
USERNAME="${PT_username:-moeny}"
# Function to check last command status
check_status() {
if [ $? -ne 0 ]; then
echo '{"status": "error", "message": "'"$1"'"}'
exit 1
fi
}
# Generate a random 15-character password (alphanumeric only)
USER_PASSWORD=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 15 | head -n 1)
check_status "Failed to generate password"
# Set the password for user
echo "${USERNAME}:${USER_PASSWORD}" | sudo chpasswd
check_status "Failed to set password for ${USERNAME} user"
echo "{\"status\": \"success\", \"message\": \"User ${USERNAME} password set to: ${USER_PASSWORD}\"}"
exit 0