-
Notifications
You must be signed in to change notification settings - Fork 33
/
manifest.jps
75 lines (68 loc) · 2.38 KB
/
manifest.jps
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
jpsVersion: 0.9
jpsType: install
logo: https://github.com/jelastic-jps/cyclos/raw/master/images/cyclos.png
description: Cyclos 4 PRO is a payment platform for large businesses and organisations. It is secure and reliable JAVA software that can be installed on your server. Both application server as the database server are fully clusterable. It offers mobile banking (Mobile app, SMS, USSD*, and IVR*), online banking and much more.
globals:
db_user: cyclos-${fn.random}
db_password: ${fn.password}
id: cyclos4
name: Cyclos 4 PRO
categories:
- apps/e-commerce
- apps/sales-and-marketing
homepage: http://www.cyclos.org/
nodes:
- cloudlets: 16
nodeGroup: cp
image: cyclos/cyclos:4.16.11-20240703
env:
DB_HOST: postgres
DB_NAME: cyclos
DB_USER: ${globals.db_user}
DB_PASSWORD: ${globals.db_password}
JAVA_OPTS: -Dcyclos.db.skipLock=true -Xms128m -Xmx1536m
links: sqldb:postgres
startServiceOnCreation: false
- cloudlets: 8
nodeGroup: sqldb
image: postgis/postgis
env:
POSTGRES_DB: cyclos
POSTGRES_USER: ${globals.db_user}
POSTGRES_PASSWORD: ${globals.db_password}
onAfterBindSSL:
if (nodes.bl):
- setSSL:
ssl: true
onAfterRemoveSSL:
if (nodes.bl):
- setSSL:
ssl: false
onAfterChangeTopology:
- if (${event.response.response.env.sslstate}):
setSSL:
ssl: true
- else:
setSSL:
ssl: false
onInstall:
- api: env.control.ExecDockerRunCmd
nodeId: ${nodes.cp.first.id}
actions:
setSSL:
- if (${this.ssl} == true):
setGlobals:
headerRemoteAddress: X-Forwarded-For
headerProtocol: https
- else:
setGlobals:
headerRemoteAddress: ''
headerProtocol: http
- cmd [cp]: |-
wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq && chmod +x /usr/bin/yq
/usr/bin/yq eval -i '.cyclos.header.remoteAddress = "${globals.headerRemoteAddress}"' /usr/local/cyclos/WEB-INF/classes/cyclos.properties
/usr/bin/yq eval -i '.cyclos.header.protocol = "${globals.headerProtocol}"' /usr/local/cyclos/WEB-INF/classes/cyclos.properties
- restartContainer[cp]
success: |
Instance address: [${env.url}](${env.url})
To add custom domain name for your Cyclos installation follow the steps described in our [documentation](http://docs.jelastic.com/custom-domains)