Lets encrypt commands

HTML

Domain <input type="text" id="domain" onchange="onDatachange()" value="app.domain.com" /> App User <input type="text" id="appName" onchange="onDatachange()" value="operator" /> Super secret <input type="text" id="super" onchange="onDatachange()" value="super123"
/>
<br />

<textarea id="commandsText" cols="100" rows="25"></textarea>

JavaScript

function onDatachange() {
  var FQDN = document.getElementById('domain').value;
  var APP_USER = document.getElementById('appName').value;
  var SUPER_SECRET = document.getElementById('super').value;

  var text1 = `
sudo /etc/init.d/apache2 stop
sudo /root/certbot certonly
sudo /etc/init.d/apache2 start
sudo openssl pkcs12 -export -in /etc/letsencrypt/live/${FQDN}/fullchain.pem -inkey /etc/letsencrypt/live/${FQDN}/privkey.pem -out /home/${APP_USER}/etc/${FQDN}/${FQDN}.cert.p12 -name ${FQDN}
<<Supply 'secret' as password>>
sudo chown -R ${APP_USER}.${APP_USER} /home/${APP_USER}/etc/${FQDN}


keytool -importkeystore -deststorepass ${SUPER_SECRET} -destkeypass ${SUPER_SECRET} -destkeystore /home/${APP_USER}/etc/${FQDN}/${FQDN}.cert.jks -srckeystore /home/${APP_USER}/etc/${FQDN}/${FQDN}.cert.p12 -srcstorepass secret  -srcstoretype PKCS12  -alias ${FQDN}
rm /home/${APP_USER}/etc/${FQDN}/${FQDN}.cert.p12

echo ./grailsw \\
        -Dserver.address=0.0.0.0 \\
        -Dserver.port=8443 \\
        -Dserver.ssl.enabled=true \\
        -Dserver.ssl.key-store-password=${SUPER_SECRET} \\
        -Dserver.ssl.key-store=/home/${APP_USER}/etc/${FQDN}/${FQDN}.cert.jks \\
        -Dserver.ssl.key-alias=${FQDN} \\
        prod run-app

`

  document.getElementById('commandsText').value = text1

}
setTimeout(onDatachange, 2000);