Commit 55b2bae2 authored by Alain Takoudjou's avatar Alain Takoudjou

Add Moodle to lamp software, allow to set default app

parent 3e3afe4a
...@@ -234,7 +234,8 @@ dashboard_root = $${directory:www-dsh} ...@@ -234,7 +234,8 @@ dashboard_root = $${directory:www-dsh}
dashboard_pwd = $${htpasswd:output} dashboard_pwd = $${htpasswd:output}
pid_file = $${basedirectory:run}/apache.pid pid_file = $${basedirectory:run}/apache.pid
lock_file = $${basedirectory:run}/apache.lock lock_file = $${basedirectory:run}/apache.lock
ip = $${slap-network-information:global-ipv6} ipv6 = $${slap-network-information:global-ipv6}
ipv4 = $${slap-network-information:local-ipv4}
port = 8080 port = 8080
port2 = 8060 port2 = 8060
port3 = 8070 port3 = 8070
...@@ -258,7 +259,7 @@ configuration = ...@@ -258,7 +259,7 @@ configuration =
htdocs = $${directory:www} htdocs = $${directory:www}
pid-file = $${basedirectory:run}/apache.pid pid-file = $${basedirectory:run}/apache.pid
lock-file = $${basedirectory:run}/apache.lock lock-file = $${basedirectory:run}/apache.lock
ip = $${httpd-conf:ip} ip = $${httpd-conf:ipv6}
port = $${httpd-conf:port} port = $${httpd-conf:port}
url = http://[$${:ip}]:$${:port}/ url = http://[$${:ip}]:$${:port}/
error-log = $${directory:httpd-log}/error.log error-log = $${directory:httpd-log}/error.log
...@@ -332,7 +333,7 @@ software-url = $${slap-parameter:frontend-software-url} ...@@ -332,7 +333,7 @@ software-url = $${slap-parameter:frontend-software-url}
slave = true slave = true
config = url https-only custom_domain config = url https-only custom_domain
config-https-only = true config-https-only = true
config-url = https://[$${httpd-conf:ip}]:$${httpd-conf:port2}/ config-url = https://[$${httpd-conf:ipv6}]:$${httpd-conf:port2}/
return = site_url return = site_url
config-custom_domain = config-custom_domain =
...@@ -344,7 +345,7 @@ software-url = $${slap-parameter:frontend-software-url} ...@@ -344,7 +345,7 @@ software-url = $${slap-parameter:frontend-software-url}
slave = true slave = true
config = url https-only custom_domain config = url https-only custom_domain
config-https-only = true config-https-only = true
config-url = https://[$${httpd-conf:ip}]:$${httpd-conf:port3}/ config-url = https://[$${httpd-conf:ipv6}]:$${httpd-conf:port3}/
return = site_url return = site_url
config-custom_domain = config-custom_domain =
...@@ -356,7 +357,7 @@ software-url = $${slap-parameter:frontend-software-url} ...@@ -356,7 +357,7 @@ software-url = $${slap-parameter:frontend-software-url}
slave = true slave = true
config = url https-only custom_domain config = url https-only custom_domain
config-https-only = true config-https-only = true
config-url = https://[$${httpd-conf:ip}]:$${httpd-conf:port4}/ config-url = https://[$${httpd-conf:ipv6}]:$${httpd-conf:port4}/
return = site_url return = site_url
config-custom_domain = config-custom_domain =
...@@ -386,7 +387,9 @@ config-custom_domain = ...@@ -386,7 +387,9 @@ config-custom_domain =
[publish-connection-informations] [publish-connection-informations]
recipe = slapos.cookbook:publish recipe = slapos.cookbook:publish
dashboard_backend = https://[$${apache-php:ip}]:$${httpd-conf:port4} dashboard_backend = https://[$${apache-php:ip}]:$${httpd-conf:port4}
urlweb_ipv6 = http://[$${apache-php:ip}]:$${httpd-conf:port}/
dashboard = $${request-frontend-dashboard:connection-site_url} dashboard = $${request-frontend-dashboard:connection-site_url}
urlweb = $${request-frontend:connection-site_url}
login = $${dashboard_credential:user} login = $${dashboard_credential:user}
password = $${dashboard_credential:passwd} password = $${dashboard_credential:passwd}
...@@ -410,6 +413,7 @@ mysql_port = $${apache-php:mysql-port} ...@@ -410,6 +413,7 @@ mysql_port = $${apache-php:mysql-port}
apache_error_log = $${apache-php:error-log} apache_error_log = $${apache-php:error-log}
apache_access_log = $${apache-php:access-log} apache_access_log = $${apache-php:access-log}
joomla_folder = ${joomla:location} joomla_folder = ${joomla:location}
moodle_folder = ${moodle:location}
prestashop_folder = ${prestashop:location}/prestashop prestashop_folder = ${prestashop:location}/prestashop
drupal_folder = ${drupal:location} drupal_folder = ${drupal:location}
wp_folder = ${wordpress:location} wp_folder = ${wordpress:location}
...@@ -468,6 +472,9 @@ frontend-software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/s ...@@ -468,6 +472,9 @@ frontend-software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/s
dashboard-user = admin dashboard-user = admin
ajaxplorer-user = admin ajaxplorer-user = admin
ajaxplorer-pwd = insecure ajaxplorer-pwd = insecure
# wordpress | joomla | drupal | moodle | prestashop
default-app =
locale = fr_FR.UTF-8
# #
# * Configure Ajaxplorer, setup imagemagik in ajaxplorer # * Configure Ajaxplorer, setup imagemagik in ajaxplorer
...@@ -513,9 +520,11 @@ command = mkdir -p $${httpd-conf:public_html} && \ ...@@ -513,9 +520,11 @@ command = mkdir -p $${httpd-conf:public_html} && \
chmod -R 700 $${httpd-conf:public_html} && \ chmod -R 700 $${httpd-conf:public_html} && \
sed -i 's#/usr/bin/convert#$${:convert}#' $${apache-php:htdocs}/plugins/editor.imagick/manifest.xml && \ sed -i 's#/usr/bin/convert#$${:convert}#' $${apache-php:htdocs}/plugins/editor.imagick/manifest.xml && \
sed -i 's#enabled="false"#enabled="true"#' $${apache-php:htdocs}/plugins/editor.imagick/manifest.xml && \ sed -i 's#enabled="false"#enabled="true"#' $${apache-php:htdocs}/plugins/editor.imagick/manifest.xml && \
sed -i 's#//define("AJXP_LOCALE", "en_EN.UTF-8");#define("AJXP_LOCALE", "fr_FR.UTF-8");#' $${apache-php:htdocs}/conf/bootstrap_conf.php && \ sed -i 's#//define("AJXP_LOCALE", "en_EN.UTF-8");#define("AJXP_LOCALE", "$${slap-parameter:locale}");#' $${apache-php:htdocs}/conf/bootstrap_conf.php && \
sed -i 's#default="en"#default="fr"#' $${apache-php:htdocs}/plugins/boot.conf/manifest.xml && \ sed -i 's#default="en"#default="fr"#' $${apache-php:htdocs}/plugins/boot.conf/manifest.xml && \
sed -i 's#default="en"#default="fr"#' $${apache-php:htdocs}/plugins/core.ajaxplorer/manifest.xml && \ sed -i 's#default="en"#default="fr"#' $${apache-php:htdocs}/plugins/core.ajaxplorer/manifest.xml && \
cp -nr ${phpmyadmin:location}/* $${httpd-conf:phpmyadmin_root} && \ cp -nr ${phpmyadmin:location}/* $${httpd-conf:phpmyadmin_root} && \
cp -nr ${dashboard:location}/* $${httpd-conf:dashboard_root} cp -nr ${dashboard:location}/* $${httpd-conf:dashboard_root} && \
APP="$${slap-parameter:default-app}" && FOLDER="${buildout:parts-directory}/$APP" && \
if [ -z "$APP" ]; then echo "NO Default App"; else if [ -d "$FOLDER" ]; then [ "$(ls -A $${httpd-conf:public_html} )" ] && echo "Skip install defaul app..." || cp -r $FOLDER/* $${httpd-conf:public_html}/; fi fi
update-command = $${:command} update-command = $${:command}
diff -Naur old/lib/installlib.php new/lib/installlib.php
--- old/lib/installlib.php 2014-03-20 09:00:14.000000000 +0100
+++ new/lib/installlib.php 2014-03-27 11:49:22.768407281 +0100
@@ -52,11 +52,7 @@
} else {
$wwwroot .= 'https://';
}
- $hostport = explode(':', $_SERVER['HTTP_HOST']);
- $wwwroot .= reset($hostport);
- if ($_SERVER['SERVER_PORT'] != 80 and $_SERVER['SERVER_PORT'] != '443') {
- $wwwroot .= ':'.$_SERVER['SERVER_PORT'];
- }
+ $wwwroot .= $_SERVER['HTTP_HOST'];
$wwwroot .= $_SERVER['SCRIPT_NAME'];
list($wwwroot, $xtra) = explode('/install.php', $wwwroot);
diff -Naur old/lib/setuplib.php new/lib/setuplib.php
--- old/lib/setuplib.php 2014-03-20 09:00:14.000000000 +0100
+++ new/lib/setuplib.php 2014-03-27 11:49:52.588408724 +0100
@@ -867,7 +867,7 @@
function setup_get_remote_url() {
$rurl = array();
if (isset($_SERVER['HTTP_HOST'])) {
- list($rurl['host']) = explode(':', $_SERVER['HTTP_HOST']);
+ $rurl['host'] = $_SERVER['SERVER_NAME'];
} else {
$rurl['host'] = null;
}
...@@ -12,6 +12,7 @@ parts = ...@@ -12,6 +12,7 @@ parts =
mysql-python mysql-python
rdiff-backup rdiff-backup
dropbear dropbear
patch-moodle
application application
dashboard dashboard
...@@ -76,7 +77,7 @@ md5sum = f9ee461a59e83592c19581dc9efc7dd9 ...@@ -76,7 +77,7 @@ md5sum = f9ee461a59e83592c19581dc9efc7dd9
recipe = slapos.recipe.template recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-apachephp.cfg.in url = ${:_profile_base_location_}/instance-apachephp.cfg.in
output = ${buildout:directory}/template-apachephp.cfg output = ${buildout:directory}/template-apachephp.cfg
md5sum = edfa09a436b7b65770a8b35353d2ece0 md5sum = d882de2275f3f89b0b1acaf6f0c0963c
mode = 0644 mode = 0644
[instance-apache-import] [instance-apache-import]
...@@ -145,9 +146,9 @@ strip-top-level-dir = true ...@@ -145,9 +146,9 @@ strip-top-level-dir = true
[dashboard] [dashboard]
recipe = hexagonit.recipe.download recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/src/dashboard.tar.gz url = https://storage.host.cloud.univ-paris13.fr/data/public/f01e8f.php?dl=1
md5sum = b343f735eb03983c89a1f3a7eab109b3 md5sum = 3c163e62488446c860e9c381324c4fb7
#strip-top-level-dir = true strip-top-level-dir = true
[phpmyadmin] [phpmyadmin]
recipe = hexagonit.recipe.download recipe = hexagonit.recipe.download
...@@ -171,6 +172,20 @@ recipe = hexagonit.recipe.download ...@@ -171,6 +172,20 @@ recipe = hexagonit.recipe.download
url = http://downloads.joomlacode.org/frsrelease/1/3/4/134333/Joomla_3.2.1-Stable-Full_Package.zip url = http://downloads.joomlacode.org/frsrelease/1/3/4/134333/Joomla_3.2.1-Stable-Full_Package.zip
md5sum = 000d5efdf8f7f50faf622308ef1e6540 md5sum = 000d5efdf8f7f50faf622308ef1e6540
[moodle]
recipe = hexagonit.recipe.download
url = http://sunet.dl.sourceforge.net/project/moodle/Moodle/stable26/moodle-latest-26.tgz
md5sum = bef43032f8bca3500ecacf8ed9b83c2d
strip-top-level-dir = true
[patch-moodle]
recipe = plone.recipe.command
#stop-on-error = true
command =
cd ${moodle:location} && \
patch -p1 < ${moodle-url-patch:location}/${moodle-url-patch:filename}
update-command =
[drupal] [drupal]
recipe = hexagonit.recipe.download recipe = hexagonit.recipe.download
url = http://ftp.drupal.org/files/projects/drupal-7.26.tar.gz url = http://ftp.drupal.org/files/projects/drupal-7.26.tar.gz
...@@ -186,7 +201,7 @@ location = ${buildout:parts-directory}/${:_buildout_section_name_} ...@@ -186,7 +201,7 @@ location = ${buildout:parts-directory}/${:_buildout_section_name_}
[template-httpd-conf] [template-httpd-conf]
<= download-base <= download-base
filename = apache.conf.in filename = apache.conf.in
md5sum = ba3f9b91751b63007f170f77ee72f556 md5sum = f00c3c07ac2204c488658d3914c1a30f
[template-phpmyadmin] [template-phpmyadmin]
<= download-base <= download-base
...@@ -196,7 +211,7 @@ md5sum = aebc4d1d0944933b14fbc874da340a17 ...@@ -196,7 +211,7 @@ md5sum = aebc4d1d0944933b14fbc874da340a17
[template-dashboard] [template-dashboard]
<= download-base <= download-base
filename = dashboard.conf.php.in filename = dashboard.conf.php.in
md5sum = aec9d1e78c4042bb2cd080b558ab8178 md5sum = 85245bcb2357e5055f41a14af73b8c06
[template-configure] [template-configure]
<= download-base <= download-base
...@@ -208,6 +223,12 @@ md5sum = 9a6c8a799c41b7ca569d948a6eccc667 ...@@ -208,6 +223,12 @@ md5sum = 9a6c8a799c41b7ca569d948a6eccc667
filename = test-boot.js.in filename = test-boot.js.in
md5sum = aa9aa9b77666fb9d56d48b051210c6b5 md5sum = aa9aa9b77666fb9d56d48b051210c6b5
[moodle-url-patch]
<= download-base
url = ${:_profile_base_location_}/${:filename}
md5sum = f7bbe0da90ddef7bf104e485dc6c394b
filename = moodle-url.patch
[slapos.cookbook-repository] [slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone recipe = slapos.recipe.build:gitclone
repository = http://git.erp5.org/repos/slapos.git repository = http://git.erp5.org/repos/slapos.git
......
...@@ -3,10 +3,10 @@ ...@@ -3,10 +3,10 @@
# Basic server configuration # Basic server configuration
PidFile "${:pid_file}" PidFile "${:pid_file}"
Listen ${:ip}:${:port} Listen ${:ipv6}:${:port}
Listen ${:ip}:${:port2} Listen ${:ipv6}:${:port2}
Listen ${:ip}:${:port3} Listen ${:ipv6}:${:port3}
Listen ${:ip}:${:port4} Listen ${:ipv6}:${:port4}
PHPINIDir ${:php_ini_dir} PHPINIDir ${:php_ini_dir}
ServerAdmin someone@email ServerAdmin someone@email
TypesConfig conf/mime.types TypesConfig conf/mime.types
...@@ -25,11 +25,11 @@ CustomLog "${:access_log}" common ...@@ -25,11 +25,11 @@ CustomLog "${:access_log}" common
SSLRandomSeed startup builtin SSLRandomSeed startup builtin
SSLRandomSeed connect builtin SSLRandomSeed connect builtin
NameVirtualHost ${:ip}:${:port2} NameVirtualHost ${:ipv6}:${:port2}
NameVirtualHost ${:ip}:${:port} NameVirtualHost ${:ipv6}:${:port}
NameVirtualHost ${:ip}:${:port3} NameVirtualHost ${:ipv6}:${:port3}
NameVirtualHost ${:ip}:${:port4} NameVirtualHost ${:ipv6}:${:port4}
<VirtualHost ${:ip}:${:port2}> <VirtualHost ${:ipv6}:${:port2}>
#ServerName www.example.com #ServerName www.example.com
# Directory protection # Directory protection
...@@ -53,7 +53,7 @@ NameVirtualHost ${:ip}:${:port4} ...@@ -53,7 +53,7 @@ NameVirtualHost ${:ip}:${:port4}
</VirtualHost> </VirtualHost>
<VirtualHost ${:ip}:${:port}> <VirtualHost ${:ipv6}:${:port}>
#ServerName www.example.com #ServerName www.example.com
# Directory protection # Directory protection
...@@ -74,7 +74,9 @@ NameVirtualHost ${:ip}:${:port4} ...@@ -74,7 +74,9 @@ NameVirtualHost ${:ip}:${:port4}
</VirtualHost> </VirtualHost>
<VirtualHost ${:ip}:${:port3}>
<VirtualHost ${:ipv6}:${:port3}>
#ServerName www.example.com #ServerName www.example.com
# Directory protection # Directory protection
...@@ -98,7 +100,7 @@ NameVirtualHost ${:ip}:${:port4} ...@@ -98,7 +100,7 @@ NameVirtualHost ${:ip}:${:port4}
</VirtualHost> </VirtualHost>
<VirtualHost ${:ip}:${:port4}> <VirtualHost ${:ipv6}:${:port4}>
#ServerName www.example.com #ServerName www.example.com
# Directory protection # Directory protection
...@@ -127,8 +129,8 @@ NameVirtualHost ${:ip}:${:port4} ...@@ -127,8 +129,8 @@ NameVirtualHost ${:ip}:${:port4}
#Update PHP.INI #Update PHP.INI
php_value include_path ".:${:php_lib_path}" php_value include_path ".:${:php_lib_path}"
php_value upload_max_filesize 20M php_value upload_max_filesize 50M
php_value post_max_size 20M php_value post_max_size 50M
php_value output_buffering none php_value output_buffering none
......
...@@ -24,3 +24,4 @@ define('JOOMLA_FOLDER', '${:joomla_folder}'); ...@@ -24,3 +24,4 @@ define('JOOMLA_FOLDER', '${:joomla_folder}');
define('PRESTASHOP_FOLDER', '${:prestashop_folder}'); define('PRESTASHOP_FOLDER', '${:prestashop_folder}');
define('DRUPAL_FOLDER', '${:drupal_folder}'); define('DRUPAL_FOLDER', '${:drupal_folder}');
define('WP_FOLDER', '${:wp_folder}'); define('WP_FOLDER', '${:wp_folder}');
define('MOODLE_FOLDER', '${:moodle_folder}');
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment