type: update
name: Add SFTP User
user: root
targetNodes:
nodeGroup: cp
settings:
sfpform:
fields:
- type: string
inputType: text
name: root_directory
caption: Root Directory
default: "/var/www/webroot/ROOT"
required: true
- type: checkbox
name: enable_ssh
caption: Also enable SSH access
default: false
globals:
username: "user${fn.random(10000,99999)}"
password: ${fn.password(min)}
sftpHost: ${env.domain}
sftpPort: 22
onInstall:
- cmd[cp]: bash <(curl -s https://deploy-proxy.mightybox.io/addons/add-sftp-user/raw/branch/main/install_sftp.sh)
- api: environment.control.ApplyNodeGroupData
nodeGroup: cp
data:
restart: true
- return: installSuccess
onUninstall:
- cmd[cp]: rm -f ./add-sftp.sh
actions:
add_sftp_user:
- cmd[cp]: ./add-sftp.sh
- return: sftpSuccess
responses:
installSuccess:
type: success
message: "Installed Successfully"
sftpSuccess:
type: success
email: |-
Connection Details
SFTP Host: ${globals.sftpHost}
Port: ${globals.sftpPort}
Login Credentials
Username: ${globals.username}
Password: ${globals.password}
message:
en: |-
Connection Details
SFTP Host: ${globals.sftpHost}
Port: ${globals.sftpPort}
Login Credentials
Username: ${globals.username}
Password: ${globals.password}
buttons:
- settings: sfpform
action: add_sftp_user
caption: Add SFTP/SSH User
confirmText: "Are you sure you want to add this SFTP user?"