Skip to content

Commit 573a611

Browse files
authored
Refactoring JE-61990
1 parent eae8f4b commit 573a611

File tree

1 file changed

+86
-72
lines changed

1 file changed

+86
-72
lines changed

manifest.yml

Lines changed: 86 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ baseUrl: https://raw.githubusercontent.com/sych74/magento/JE-61990
1717
onBeforeInit: /scripts/beforeinit.js?_r=${fn.random}
1818
onBeforeInstall: /scripts/beforeInstall.js?_r=${fn.random}
1919
nodes: definedInOnBeforeInstall
20+
2021
skipNodeEmails: true
2122

2223
settings:
@@ -110,83 +111,32 @@ onAfterMigrate:
110111
domain: ${env.domain}
111112

112113
globals:
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

124125
onInstall:
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

191141
actions:
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

Comments
 (0)