jpsType: install jpsVersion: '1.1' id: wordpress name: WordPress categories: - apps/blogs - apps/content-management logo: https://raw.githubusercontent.com/mommaroodles/wordpress/master/images/wp.png homepage: https://webwolfhosting/ description: Thank you for choosing WebWolf. To get started, choose a unique name e.g. your domain name (domain) without the .COM, for your Environment and select a Region. For the Display Name you can choose anything you like, but we recommend that you enter your full domain name without the http(s). baseUrl: https://raw.githubusercontent.com/mommaroodles/wordpress/master settings: fields: - name: wp_title caption: WP Title type: string default: WordPress required: 'true' regex: "^[\\w-.]*$" regexText: Incorrect WP Title. globals: DB_USER: webwolf-${fn.random} DB_PASS: ${fn.password(20)} ADMIN_PASSWD: ${fn.password(20)} WP_TITLE: "${settings.wp_title}" ssl: true nodes: - nodeType: nginxphp-dockerized tag: 1.14.2-php-7.3.3 count: 1 cloudlets: 8 env: SERVER_WEBROOT: /var/www/webroot - nodeType: mysql tag: 8.0.16 count: 1 fixedCloudlets: 4 cloudlets: 8 onInstall: - script: "${baseUrl}/scripts/idna.js" actions: installWp: - cmd[cp]: |- sed -i 's|location / {|location / {\nif (!-e $request_filename){\nrewrite ^(.*)$ \/index.php?error=404;\n}|g' /etc/nginx/nginx.conf /etc/init.d/nginx restart user: root - cmd[sqldb]: |- mysql -uroot -p${nodes.sqldb.password} -e "CREATE DATABASE IF NOT EXISTS wordpress;" mysql -uroot -p${nodes.sqldb.password} -e "CREATE USER '${globals.DB_USER}'@'%' IDENTIFIED BY '${globals.DB_PASS}'; GRANT ALL ON wordpress.* TO '${globals.DB_USER}'@'%'; FLUSH PRIVILEGES;" - deploy: archive: https://wordpress.org/latest.tar.gz name: WordPress-latest.tar.gz context: ROOT - cmd[cp]: curl -fsSL 'https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar' -o /usr/local/bin/wp && chmod +x /usr/local/bin/wp user: root - cmd[cp]: |- wp core config --dbhost=${nodes.sqldb.address} --dbname=wordpress --dbuser=${globals.DB_USER} --dbpass=${globals.DB_PASS} --path=${SERVER_WEBROOT}/ROOT wp --allow-root core install --title=${globals.WP_TITLE} --admin_user=${user.email} --admin_password=${globals.ADMIN_PASSWD} --url=${this.idnaHost} --admin_email=${user.email} --path=${SERVER_WEBROOT}/ROOT wget ${baseUrl}/configs/wp-webwolf.php -O ${SERVER_WEBROOT}/ROOT/wp-webwolf.php sed -i "s/.*'wp-settings.php';.*/require_once ABSPATH . 'wp-webwolf.php';\n&/" ${SERVER_WEBROOT}/ROOT/wp-config.php success: /text/success.md