You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
addon-context-linux/base/etc/one-context.d/20-set-username-password

38 lines
1.8 KiB

#!/bin/bash
# -------------------------------------------------------------------------- #
# Copyright 2010-2016, OpenNebula Systems #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); you may #
# not use this file except in compliance with the License. You may obtain #
# a copy of the License at #
# #
# http://www.apache.org/licenses/LICENSE-2.0 #
# #
# Unless required by applicable law or agreed to in writing, software #
# distributed under the License is distributed on an "AS IS" BASIS, #
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
# See the License for the specific language governing permissions and #
# limitations under the License. #
#--------------------------------------------------------------------------- #
if [ -z "${USERNAME}" ]; then
USERNAME=root
fi
if ! getent passwd "${USERNAME}" > /dev/null 2>&1; then
useradd -m "${USERNAME}"
fi
if [ -n "${CRYPTED_PASSWORD_BASE64}" ]; then
CRYPTED_PASSWORD=$(echo $CRYPTED_PASSWORD_BASE64 | base64 -d)
usermod -p "${CRYPTED_PASSWORD}" "${USERNAME}"
elif [ -n "${PASSWORD_BASE64}" ]; then
PASSWORD=$(echo $PASSWORD_BASE64 | base64 -d)
chpasswd <<< "${USERNAME}:${PASSWORD}"
elif [ -n "${CRYPTED_PASSWORD}" ]; then
usermod -p "${CRYPTED_PASSWORD}" "${USERNAME}"
elif [ -n "${PASSWORD}" ]; then
chpasswd <<< "${USERNAME}:${PASSWORD}"
fi