Updated JSP Script, separated the actions
parent
6a272e82fe
commit
98c21b1a75
|
@ -0,0 +1,30 @@
|
|||
// Extract the provided details
|
||||
var USERNAME = "${globals.username}";
|
||||
var PASSWORD = "${fn.password(min)}";
|
||||
var ROOT_DIRECTORY = "/var/www/webroot/ROOT";
|
||||
var ENABLE_SSH = false;
|
||||
var EMAILS = "${user.email}";
|
||||
|
||||
// Check if user already exists
|
||||
if (jelastic.env.control.ExecCmdById('${env.envName}', '${nodes.cp.master.id}', 'id ' + USERNAME).result == 0) {
|
||||
return {
|
||||
result: 99,
|
||||
error: "User " + USERNAME + " already exists."
|
||||
};
|
||||
}
|
||||
|
||||
// Create the user, set password, and configure SFTP
|
||||
var cmd = [
|
||||
"GROUP=$(stat -c '%G' " + ROOT_DIRECTORY + ")",
|
||||
"useradd -m -d " + ROOT_DIRECTORY + " -g $GROUP " + USERNAME,
|
||||
"echo '" + USERNAME + ":" + PASSWORD + "' | chpasswd",
|
||||
"chown " + USERNAME + ":$GROUP " + ROOT_DIRECTORY,
|
||||
"chown -R root:$GROUP /var/www",
|
||||
"echo 'Match Group $GROUP' >> /etc/ssh/sshd_config",
|
||||
"echo ' ChrootDirectory " + ROOT_DIRECTORY + "' >> /etc/ssh/sshd_config",
|
||||
"echo ' PasswordAuthentication yes' >> /etc/ssh/sshd_config",
|
||||
"echo ' ForceCommand internal-sftp' >> /etc/ssh/sshd_config",
|
||||
"systemctl restart sshd"
|
||||
].join(" && ");
|
||||
|
||||
return jelastic.env.control.ExecCmdById('${env.envName}', '${nodes.cp.master.id}', cmd);
|
Loading…
Reference in New Issue