-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathmanifest.jps
80 lines (71 loc) · 4.13 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
76
77
78
79
80
jpsType: install
jpsVersion: '0.2'
id: maiancart
name: Maian Cart
version: '3.3'
categories:
- apps/e-commerce
- apps/sales-and-marketing
homepage: https://www.maiancart.com/
logo: images/logo.png
description: Maian Cart is a fast, robust, and free e-commerce platform built using PHP & MySQL. It provides all the features you need to run your online store, including product management, order processing, customer management, and more.
globals:
ADMIN_DB_PASS: ${fn.password(10)}
CONNECT_PHP: /var/www/webroot/ROOT/control/connect.php
ACCESS_PHP: /var/www/webroot/ROOT/admin/control/access.php
nodes:
- cloudlets: 8
nodeType: apache2
engine: php8.1
- cloudlets: 8
nodeType: mariadb10
onInstall:
- deploy:
archive: https://www.maianmedia.com/downloads/maian_cart.zip
name: MaianCart-latest.zip
context: ROOT
- cmd[cp]: mv ${SERVER_WEBROOT}/ROOT/store/* /${SERVER_WEBROOT}/ROOT/ && rm -rf ${SERVER_WEBROOT}/ROOT/store
- cmd[sqldb]: |-
MYSQL_PWD=${nodes.sqldb.password} mysql -uroot -e "CREATE DATABASE maiancart;"
MYSQL_PWD=${nodes.sqldb.password} mysql -uroot -e "CREATE USER 'maiancart'@'%' IDENTIFIED BY '${globals.ADMIN_DB_PASS}';"
MYSQL_PWD=${nodes.sqldb.password} mysql -uroot -e "GRANT ALL PRIVILEGES ON maiancart.* TO 'maiancart'@'%' WITH GRANT OPTION;"
- replaceInFile:
- path: /etc/php.ini
nodeType: apache2
replacements:
- pattern: ".*zend_extension=.*opcache.so"
replacement: zend_extension=${SERVER_MODULES}/ioncube_loader_lin_5.4.so
- pattern: ".*extension=mysql.so"
replacement: extension=mysql.so
- pattern: ".*extension=gd.so"
replacement: extension=gd.so
- nodeType: mariadb10
path: /etc/my.cnf
replacements:
- replacement: |-
user=mysql
sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
pattern: user=mysql
- cmd [cp]:
- sed -i "s|define('DB_HOST', 'Host name goes here..');|define('DB_HOST', '${nodes.sqldb.address}');|g" ${globals.CONNECT_PHP}
- sed -i "s|define('DB_USER', 'Database user goes here..');|define('DB_USER', 'maiancart');|g" ${globals.CONNECT_PHP}
- sed -i "s|define('DB_PASS', 'Database password goes here..');|define('DB_PASS', '${globals.ADMIN_DB_PASS}');|g" ${globals.CONNECT_PHP}
- sed -i "s|define('DB_NAME', 'Database name goes here..');|define('DB_NAME', 'maiancart');|g" ${globals.CONNECT_PHP}
- sed -i "s|define('SECRET_KEY', 'abc12345');|define('SECRET_KEY', '${fn.random}');|g" ${globals.CONNECT_PHP}
- sed -i "s|define('USERNAME', 'Username goes here...');|define('USERNAME', 'admin');|g" ${globals.ACCESS_PHP}
- sed -i "s|define('PASSWORD', 'Password goes here...');|define('PASSWORD', '${user.appPassword}');|g" ${globals.ACCESS_PHP}
- upload:
nodeType: apache2
destPath: /usr/lib64/php/modules/ioncube_loader_lin_5.4.so
sourcePath: https://download.jelastic.com/public.php?service=files&t=95be9870710741be6fda2e19ef60c1d7&download
- restartNodes:
nodeGroup: cp
- cmd [cp]:
- "(curl http://${env.domain}/install/?s=1; curl http://${env.domain}/install/?s=2; curl http://${env.domain}/install/?s=3; curl -H 'Content-Type: application/x-www-form-urlencoded' -d 'mysql_version=MySQL5&charset=utf8_general_ci&tables=yes' http://${env.domain}/install/?s=4; curl -H 'Content-Type: application/x-www-form-urlencoded' -d 'website=Jelastic&email=${user.email}&storeInfo=yes' http://${env.domain}/install/?s=5; curl -H 'Content-Type: application/x-www-form-urlencoded' -d 'finish=yes' http://${env.domain}/install/?s=6; curl http://${env.domain}/install/?s=7) > /var/www/webroot/ROOT/install_logs.log"
- rm -rf /var/www/webroot/ROOT/install
success: |
Use the following credentials to access the Maian Cart admin panel:
**Admin panel URL:** [${env.protocol}://${env.domain}/admin/](${env.protocol}://${env.domain}/admin/)
**Admin name:** admin
**Admin password:** ${user.appPassword}
To add a custom domain name for your Maian Cart installation, follow the steps described in our [documentation](https://www.virtuozzo.com/application-platform-docs/custom-domains/).