From 68a87feca38738610e12d54af0180e855a37ae80 Mon Sep 17 00:00:00 2001 From: Anthony Date: Sat, 21 Sep 2024 02:51:01 +0800 Subject: [PATCH] New Changes --- manifest.jps | 69 +++++++++++++++++++------------------------ scripts/beforeInit.js | 8 ++--- 2 files changed, 35 insertions(+), 42 deletions(-) diff --git a/manifest.jps b/manifest.jps index ed2c18b..6b18923 100644 --- a/manifest.jps +++ b/manifest.jps @@ -1,5 +1,5 @@ jpsType: install -jpsVersion: '1.7.2' +jpsVersion: '0.1' id: wordpress name: MightyBox WordPress Kit categories: @@ -25,42 +25,38 @@ mixins: - /scripts/common.yml globals: - isSingleDeploy: true + isSingleDeploy: ${settings.isSingleDeploy:true} BASE_URL: https://deploy.mightybox.io/kits/wp-mb-kit/raw/branch/main - DB_USER: user-${fn.random} - DB_PASS: ${fn.password(10)} + DB_USER: ${settings.DB_USER:user-[fn.random]} + DB_PASS: ${settings.DB_PASS:[fn.password(10)]} DB_HOST: 127.0.0.1 PROTOCOL: http - WP_ADMIN_PASS: ${fn.password(10)} + WP_ADMIN_PASS: ${settings.WP_ADMIN_PASS:[fn.password(10)]} SUCCESS: default - le-addon: true - DOMAIN: ${env.domain} - WP_ADMIN_PASS: ${fn.password(10)} - WP_TITLE: ${env.domain} - WP_URL: ${globals.PROTOCOL}://${globals.DOMAIN}/ onInstall: - addLimits - addMetadata - initLEsettings - - setupNode + - setupNode: + nodeId: cp - if (${globals.isSingleDeploy}): - setProtocol - setDomain - createUserDB - installWordpress - - if (${globals.le-addon}): - - installLEaddon - - setupLEdomain + - if (${settings.le-addon:false}): + - installLEaddon + - setupLEdomain - installMBaddons - install: - - jps: /scripts/events.jps?_r=${fn.random} - - jps: ${globals.BASE_URL}/scripts/addons.jps?_r=${fn.random} + - jps: /scripts/events.jps?_r=${fn.random} + - jps: ${globals.BASE_URL}/scripts/addons.jps?_r=${fn.random} - if ('${settings.success_email}' != 'false'): - - return: - type: success - message: /success/text/success-${globals.SUCCESS}.md?_r=${fn.random} - email: /success/email/success-${nodes.cp.master.nodeType}-${globals.SUCCESS}.md?_r=${fn.random} + - return: + type: success + message: /success/text/success-${globals.SUCCESS}.md?_r=${fn.random} + email: /success/email/success-${nodes.cp.master.nodeType}-${globals.SUCCESS}.md?_r=${fn.random} actions: addLimits: @@ -73,17 +69,16 @@ actions: script: | var metadata = { project: "${settings.project:default}", projectScope: "${settings.projectScope:production}" }; return api.env.control.ApplyEnvProperty ? - api.env.control.ApplyEnvProperty('${env.envName}', session, metadata) : - api.env.control.ApplyNodeGroupData('${env.envName}', session, 'cp', metadata); + api.env.control.ApplyEnvProperty('${env.name}', session, metadata) : + api.env.control.ApplyNodeGroupData('${env.name}', session, 'cp', metadata); setProtocol: - script: | - var resp = jelastic.billing.account.GetQuotas('environment.jelasticssl.enabled'); return { - result: resp.result, - ssl: resp.array[0] ? resp.array[0].value : false - }; - - if (${response.ssl} || ${globals.le-addon}): + result:0, + ssl: jelastic.billing.account.GetQuotas('environment.jelasticssl.enabled').array[0].value + } + - if (${response.ssl} || ${settings.le-addon:false}): setGlobals: PROTOCOL: https @@ -91,10 +86,10 @@ actions: - script: ${globals.BASE_URL}/scripts/idna.js domains: ${env.domain} - setGlobals: - DOMAIN: ${response.domains} + DOMAIN: ${response.domains} installLEaddon: - - install: https://raw.githubusercontent.com/jelastic-jps/lets-encrypt/master/manifest.jps?_r=${fn.random} + - install: https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps?_r=${fn.random} nodeGroup: cp skipEmail: true settings: @@ -105,11 +100,10 @@ actions: initLEsettings: - script: | - var resp = jelastic.billing.account.GetQuotas('environment.externalip.enabled'); return { - result: resp.result, - extIP: resp.array[0] ? Boolean(resp.array[0].value) : false - }; + result:0, + extIP: Boolean(jelastic.billing.account.GetQuotas('environment.externalip.enabled').array[0].value) + } - setGlobals: isExtIP: ${response.extIP} @@ -124,8 +118,7 @@ actions: setupLEdomain: - cmd[cp]: |- source /opt/letsencrypt/settings; - bash ~/bin/setupWP.sh --url https://${globals.DOMAIN}; - user: root + bash ~/bin/setupWP.sh --url https://${domain}; installWordpress: - install: ${globals.BASE_URL}/scripts/installWP.jps @@ -152,16 +145,16 @@ actions: - install: https://raw.githubusercontent.com/jelastic/templates/master/config_v2.jps?_r=${fn.random} settings: targetGroup: cp - targetNodes: ${nodes.cp.id} + targetNodes: ${this.nodeId} optimization: wordpress createUserDB: - log: Create user for DataBase - - cmd[cp]: |- + - cmd [cp]: |- wget https://raw.githubusercontent.com/jelastic-jps/wordpress-cluster/master/configs/sqldb/wordpress.cnf -O /etc/mysql/conf.d/wordpress.cnf &>> /var/log/run.log; wget https://deploy-proxy.mightybox.io/kits/wp-mb-kit/raw/branch/main/scripts/setupUser.sh -O ~/setupUser.sh &>> /var/log/run.log; bash ~/setupUser.sh ${globals.DB_USER} ${globals.DB_PASS} &>> /var/log/run.log; jem passwd set -p ${globals.DB_PASS} &>> /var/log/run.log; user: root -startPage: ${env.url} \ No newline at end of file +startPage: ${env.url} diff --git a/scripts/beforeInit.js b/scripts/beforeInit.js index a716e1e..abd8627 100644 --- a/scripts/beforeInit.js +++ b/scripts/beforeInit.js @@ -3,10 +3,10 @@ var isLS = jelastic.dev.apps.GetApp(lsAppid); // Define settings statically var settings = { - phpVersion: "php8.3", // Match variable name - lsAddon: true, // Simplify and match name - wafAddon: true, // Simplify and match name - wpProtectAddon: true // Simplify and match name + phpVersion: "php8.3", + lsAddon: true, + wafAddon: true, + wpProtectAddon: true }; return {