@@ -17,6 +17,7 @@ baseUrl: https://raw.githubusercontent.com/sych74/magento/JE-61990
1717onBeforeInit : /scripts/beforeinit.js?_r=${fn.random}
1818onBeforeInstall : /scripts/beforeInstall.js?_r=${fn.random}
1919nodes : definedInOnBeforeInstall
20+
2021skipNodeEmails : true
2122
2223settings :
@@ -110,83 +111,32 @@ onAfterMigrate:
110111 domain : ${env.domain}
111112
112113globals :
113- SCRIPTS_PATH : https://raw.githubusercontent.com/sych74/magento-cluster/JE-66684/scripts
114- DB_USER : jelastic-${ fn.random}
115- DB_PASS : ${fn.password(10)}
114+ MG_SCRIPTS_PATH : https://raw.githubusercontent.com/sych74/magento-cluster/JE-66684/scripts
115+ DB_USER : ${settings.DB_USER:user-[ fn.random] }
116+ DB_PASS : ${settings.DB_PASS:[ fn.password(10)] }
116117 DB_HOST : sqldb
117- ES_PASS : ${fn.password(10)}
118+ ES_PASS : ${settings.ES_PASS:[ fn.password(10)] }
118119 PROTOCOL : http
119- MG_ADMIN_PASS : ${fn.password(10)}
120- LS_ADMIN_PASS : ${fn.password(10)}
120+ MG_ADMIN_PASS : ${settings.MG_ADMIN_PASS:[ fn.password(10)] }
121+ LS_ADMIN_PASS : ${settings.LS_ADMIN_PASS:[ fn.password(10)] }
121122 SUCCESS : success
122123 EMAIL : default
123124
124125onInstall :
125126 - addLimits
126- - script : ${globals.SCRIPTS_PATH}/idna.js
127- - setGlobals :
128- DOMAIN : ${response.domain}
129-
127+ - initLEsettings
128+ - setupNode
129+ - setupOpenSearch
130+ - setProtocol
131+ - setDomain
130132 - createUserDB
131-
132- - log : Nodes configurations
133- - install : https://raw.githubusercontent.com/jelastic/templates/master/config_v2.jps?_r=${fn.random}
134- settings :
135- targetGroup : cp
136- targetNodes : cp
137- optimization : magento
138-
139- - cmd[cp] : if test -f /usr/local/sbin/optimization.sh; then bash /usr/local/sbin/optimization.sh &>> /var/log/run.log; fi
140-
141- - if (/llsmp/.test("${nodes.cp.nodeType}")) :
142- - cmd[cp] : jem passwd set -p ${globals.LS_ADMIN_PASS}
143- user : root
144-
145- - setupOpenSearch
146-
147133 - installMagento
148-
149- - initLEwebroot
150-
151- - if (('${settings.le_addon:false}' == 'true') || ('${settings.cdn_addon:false}' == 'true')) :
152- - script : |
153- var actions = [];
154- if ('${settings.le_addon:false}' == 'true')
155- actions.push({
156- jps: "https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps?_r=${fn.random}?_r=${fn.random}",
157- nodeGroup: "cp",
158- skipEmail: "true",
159- settings: {
160- test: false,
161- skipEmail: true,
162- customDomains: "${globals.DOMAIN}",
163- fallbackToX1: true,
164- webroot: true,
165- webrootPath: "/var/www/webroot/ROOT/pub"
166- }
167- });
168- if ('${settings.cdn_addon:false}' == 'true')
169- actions.push({
170- jps: "https://raw.githubusercontent.com/edgeport/cdn/master/manifest.yml?_r=${fn.random}",
171- nodeGroup: "cp",
172- skipEmail: true,
173- settings: {
174- note: "${settings.noteCDN:}"
175- }
176- });
177- return { result: 0, onAfterReturn: { install: actions } };
178-
179- - if ('${settings.le_addon:false}' == 'true') :
180- - cmd[cp] : source /opt/letsencrypt/settings && echo $domain
181- - install :
182- jps : ${globals.SCRIPTS_PATH}/setupDomain.jps?_r=${fn.random}
183- settings :
184- domain : ${response.out}
185- - cmd[cp] : bash ~/bin/japp.sh ssl on;
186- - setGlobals :
187- PROTOCOL : https
188-
189- - if ('${settings.cdn_addon:false}' == 'true') : setupEdgeportCDN
134+ - if (${settings.le_addon:false}) :
135+ - installLEaddon
136+ - setupLEdomain
137+ - if (${settings.cdn_addon:false}) :
138+ - installCDN
139+ - setupCDN
190140
191141actions :
192142 addLimits :
@@ -195,30 +145,94 @@ actions:
195145 validation :
196146 maxCount : 1
197147
148+ setProtocol :
149+ - script : |
150+ return {
151+ result:0,
152+ ssl: jelastic.billing.account.GetQuotas('environment.jelasticssl.enabled').array[0].value
153+ }
154+ - if (${response.ssl} || ${settings.le-addon:false}) :
155+ setGlobals :
156+ PROTOCOL : https
157+
158+ setDomain :
159+ - script : ${globals.MG_SCRIPTS_PATH}/scripts/idna.js
160+ domains : ${env.domain}
161+ - setGlobals :
162+ DOMAIN : ${response.domains}
163+
198164 createUserDB :
199165 - log : Create user for DataBase
200166 - cmd [sqldb] : |-
201167 wget https://raw.githubusercontent.com/jelastic-jps/mysql-cluster/master/scripts/setupUser.sh -O ~/setupUser.sh &>> /var/log/run.log
202168 bash ~/setupUser.sh ${globals.DB_USER} ${globals.DB_PASS} &>> /var/log/run.log
203169 jem passwd set -p ${globals.DB_PASS} &>> /var/log/run.log
204170 user: root
205-
206- initLEwebroot :
171+
172+ installLEaddon :
173+ - install : https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps?_r=${fn.random}
174+ nodeGroup : cp
175+ skipEmail : true
176+ settings :
177+ test : false
178+ skipEmail : true
179+ fallbackToX1 : true
180+ withExtIp : ${globals.isExtIP}
181+
182+ initLEsettings :
183+ - script : |
184+ return {
185+ result:0,
186+ extIP: Boolean(jelastic.billing.account.GetQuotas('environment.externalip.enabled').array[0].value)
187+ }
188+ - setGlobals :
189+ isExtIP : ${response.extIP}
190+
207191 - cmd[cp] : |-
208192 [ ! -d /var/lib/jelastic/keys/letsencrypt ] && mkdir -p /var/lib/jelastic/keys/letsencrypt;
209193 echo "webroot=true" > /var/lib/jelastic/keys/letsencrypt/settings-custom;
210- echo "webrootPath=/var/www/webroot/ROOT/pub " >> /var/lib/jelastic/keys/letsencrypt/settings-custom;
194+ echo "webrootPath=/var/www/webroot/ROOT" >> /var/lib/jelastic/keys/letsencrypt/settings-custom;
211195 echo "test=false" >> /var/lib/jelastic/keys/letsencrypt/settings-custom;
196+ echo "withExtIp=${globals.isExtIP}" >> /var/lib/jelastic/keys/letsencrypt/settings-custom;
212197 user: root
213198
214- setupEdgeportCDN :
199+ setupLEdomain :
200+ - cmd[cp] : source /opt/letsencrypt/settings && echo $domain
201+ - install :
202+ jps : ${globals.MG_SCRIPTS_PATH}/setupDomain.jps?_r=${fn.random}
203+ settings :
204+ domain : ${response.out}
205+ - cmd[cp] : bash ~/bin/japp.sh ssl on;
206+
207+ installCDN :
208+ - install : https://raw.githubusercontent.com/edgeport/cdn/master/manifest.yml?_r=${fn.random}
209+ nodeGroup : cp
210+ skipEmail : true
211+ settings :
212+ note : ${settings.noteCDN:}
213+
214+ setupCDN :
215215 - script : return jelastic.dev.scripting.Eval("c05ffa5b45628a2a0c95467ebca8a0b4", session, "cdn.info", {partnerCode:1})
216216 - setGlobals :
217217 CDN : ${env.envName}-${response.response.partnerCode}.cdn.jelastic.net
218218 SUCCESS : success-cdn
219219 EMAIL : cdn
220220 - cmd[${nodes.cp.master.id}] : bash ~/bin/japp.sh edgeportCDN --cdn-url ${globals.CDN}
221221
222+ setupNode :
223+ - log : Nodes configurations
224+ - install : https://raw.githubusercontent.com/jelastic/templates/master/config_v2.jps?_r=${fn.random}
225+ settings :
226+ targetGroup : cp
227+ targetNodes : cp
228+ optimization : magento
229+
230+ - cmd[cp] : if test -f /usr/local/sbin/optimization.sh; then bash /usr/local/sbin/optimization.sh &>> /var/log/run.log; fi
231+
232+ - if (/llsmp/.test("${nodes.cp.nodeType}")) :
233+ - cmd[cp] : jem passwd set -p ${globals.LS_ADMIN_PASS}
234+ user : root
235+
222236 installMagento :
223237 - install : ${globals.SCRIPTS_PATH}/install.jps
224238 settings :
0 commit comments