Commit 7a409b87 authored by Alain Takoudjou's avatar Alain Takoudjou

Add Dashboard for apache website with Ajaxplorer and phpmyadmin

parent 9878019a
...@@ -10,11 +10,10 @@ parts = ...@@ -10,11 +10,10 @@ parts =
rdiff-backup rdiff-backup
dropbear dropbear
template-httpd-conf
application application
dashboard
phpmyadmin
instance-eggs instance-eggs
website1-template
website2-template
instance instance
instance-apache-php instance-apache-php
...@@ -53,6 +52,7 @@ extends = ...@@ -53,6 +52,7 @@ extends =
../../component/sqlite3/buildout.cfg ../../component/sqlite3/buildout.cfg
../../component/zlib/buildout.cfg ../../component/zlib/buildout.cfg
../../component/git/buildout.cfg ../../component/git/buildout.cfg
../../component/phantomjs/buildout.cfg
../../stack/resilient/buildout.cfg ../../stack/resilient/buildout.cfg
../../stack/slapos.cfg ../../stack/slapos.cfg
...@@ -73,7 +73,7 @@ md5sum = f9ee461a59e83592c19581dc9efc7dd9 ...@@ -73,7 +73,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 = 0c574497ad00ef2e1ce684ceccda3f5e md5sum = 6a78c7d4c361387ab247709eb33f2a35
mode = 0644 mode = 0644
[instance-apache-import] [instance-apache-import]
...@@ -140,40 +140,84 @@ url = http://freefr.dl.sourceforge.net/project/ajaxplorer/ajaxplorer/stable-chan ...@@ -140,40 +140,84 @@ url = http://freefr.dl.sourceforge.net/project/ajaxplorer/ajaxplorer/stable-chan
md5sum = 805cd6a473b3d3516388450afc5a0e6a md5sum = 805cd6a473b3d3516388450afc5a0e6a
strip-top-level-dir = true strip-top-level-dir = true
[website] [dashboard]
recipe = z3c.recipe.mkdir recipe = hexagonit.recipe.download
path1 = ${application:location}/data/files/public_html url = ${:_profile_base_location_}/src/dashboard.tar.gz
path2 = ${application:location}/data/files/public_html2 md5sum = b343f735eb03983c89a1f3a7eab109b3
paths = #strip-top-level-dir = true
${:path1}
${:path2}
[website1-template] [phpmyadmin]
recipe = slapos.recipe.template recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/templates/index.html.in url = http://cznic.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/4.1.4/phpMyAdmin-4.1.4-all-languages.zip
output = ${website:path1}/index.html md5sum = 019ef3b9c69b52cbf0dde251b43b93b3
md5sum = 979c36dc7dbf9d1e89818060f32a39b7 strip-top-level-dir = true
mode = 0644
folder = public_html [wordpress]
recipe = hexagonit.recipe.download
url = http://fr.wordpress.org/wordpress-3.8-fr_FR.tar.gz
md5sum = e63279a155edb215946e91a8a6b37bee
strip-top-level-dir = true
[website2-template] [prestashop]
recipe = slapos.recipe.template recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/templates/index.html.in url = http://www.prestashop.com/download/old/prestashop_1.5.6.2.zip
output = ${website:path2}/index.html md5sum = 3229c53959ca0d4ab5993d935f35f5c8
md5sum = 979c36dc7dbf9d1e89818060f32a39b7
mode = 0644
folder = public_html2 [joomla]
recipe = hexagonit.recipe.download
url = http://downloads.joomlacode.org/frsrelease/1/3/4/134333/Joomla_3.2.1-Stable-Full_Package.zip
md5sum = 000d5efdf8f7f50faf622308ef1e6540
[template-httpd-conf] [drupal]
recipe = hexagonit.recipe.download
url = http://ftp.drupal.org/files/projects/drupal-7.26.tar.gz
md5sum = 740bd57f524b8ac18a203b663ca1329d
strip-top-level-dir = true
[download-base]
recipe = slapos.recipe.download recipe = slapos.recipe.download
url = ${:_profile_base_location_}/templates/${:filename} url = ${:_profile_base_location_}/templates/${:filename}
mode = 0644 mode = 0644
filename = apache.conf.in
md5sum = ffb1105e2620e9e9f1f45093b67a3df8
location = ${buildout:parts-directory}/${:_buildout_section_name_} location = ${buildout:parts-directory}/${:_buildout_section_name_}
[template-httpd-conf]
<= download-base
filename = apache.conf.in
md5sum = ba3f9b91751b63007f170f77ee72f556
[template-phpmyadmin]
<= download-base
filename = phpmyadmin.inc.php.in
md5sum = aebc4d1d0944933b14fbc874da340a17
[template-dashboard]
<= download-base
filename = dashboard.conf.php.in
md5sum = aec9d1e78c4042bb2cd080b558ab8178
[template-configure]
<= download-base
filename = configure.js.in
md5sum = 9a6c8a799c41b7ca569d948a6eccc667
[template-testboot]
<= download-base
filename = test-boot.js.in
md5sum = aa9aa9b77666fb9d56d48b051210c6b5
[slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone
repository = http://git.erp5.org/repos/slapos.git
branch = grid-computing
git-executable = ${git:location}/bin/git
[check-recipe]
recipe = plone.recipe.command
stop-on-error = true
update-command = ${:command}
command =
grep parts ${buildout:develop-eggs-directory}/slapos.cookbook.egg-link
[networkcache] [networkcache]
# signature certificates of the following uploaders. # signature certificates of the following uploaders.
# Romain Courteaud # Romain Courteaud
...@@ -291,62 +335,3 @@ signature-certificate-list = ...@@ -291,62 +335,3 @@ signature-certificate-list =
-----END CERTIFICATE----- -----END CERTIFICATE-----
[versions] [versions]
Jinja2 = 2.6
Werkzeug = 0.9.1
#Error: Couldn't install: lxml 3.1.2
lxml = 3.1.1
# Numpy 1.7.0 doesn't install well
numpy = 1.6.2
# websockify 0.4.1 doesn't install well
websockify = 0.3.0
slapos.cookbook=0.78.1
setuptools = 0.6c12dev-r88846
MarkupSafe = 0.18
buildout-versions = 1.7
cliff = 1.4
cmd2 = 0.6.5.1
inotifyx = 0.2.0-1
itsdangerous = 0.22
lxml = 3.2.1
meld3 = 0.6.10
netaddr = 0.7.10
netifaces = 0.8-1
plone.recipe.command = 1.1
prettytable = 0.7.2
pytz = 2013b
rdiff-backup = 1.0.5
requests = 1.2.3
slapos.core = 0.35.1
slapos.recipe.build = 0.11.6
slapos.recipe.cmmi = 0.1.1
slapos.recipe.download = 1.0.dev-r4053
slapos.recipe.template = 2.4.2
supervisor = 3.0b2
xml-marshaller = 0.9.7
z3c.recipe.mkdir = 0.6
# Required by:
# slapos.core==0.35.1
Flask = 0.10.1
# Required by:
# slapos.cookbook==0.78.2.dev
lock-file = 2.0
# Required by:
# slapos.core==0.35.1
pyflakes = 0.7.3
# Required by:
# plone.recipe.command==1.1
setuptools = 0.8
# Required by:
# slapos.core==0.35.1
unittest2 = 0.5.1
# Required by:
# slapos.core==0.35.1
zope.interface = 4.0.5
...@@ -6,6 +6,7 @@ PidFile "${:pid_file}" ...@@ -6,6 +6,7 @@ PidFile "${:pid_file}"
Listen ${:ip}:${:port} Listen ${:ip}:${:port}
Listen ${:ip}:${:port2} Listen ${:ip}:${:port2}
Listen ${:ip}:${:port3} Listen ${:ip}:${:port3}
Listen ${:ip}:${:port4}
PHPINIDir ${:php_ini_dir} PHPINIDir ${:php_ini_dir}
ServerAdmin someone@email ServerAdmin someone@email
TypesConfig conf/mime.types TypesConfig conf/mime.types
...@@ -21,9 +22,13 @@ LogFormat "%h %{REMOTE_USER}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Ag ...@@ -21,9 +22,13 @@ LogFormat "%h %{REMOTE_USER}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Ag
LogFormat "%h %{REMOTE_USER}i %l %u %t \"%r\" %>s %b" common LogFormat "%h %{REMOTE_USER}i %l %u %t \"%r\" %>s %b" common
CustomLog "${:access_log}" common CustomLog "${:access_log}" common
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
NameVirtualHost ${:ip}:${:port2} NameVirtualHost ${:ip}:${:port2}
NameVirtualHost ${:ip}:${:port} NameVirtualHost ${:ip}:${:port}
NameVirtualHost ${:ip}:${:port3} NameVirtualHost ${:ip}:${:port3}
NameVirtualHost ${:ip}:${:port4}
<VirtualHost ${:ip}:${:port2}> <VirtualHost ${:ip}:${:port2}>
#ServerName www.example.com #ServerName www.example.com
...@@ -42,6 +47,9 @@ NameVirtualHost ${:ip}:${:port3} ...@@ -42,6 +47,9 @@ NameVirtualHost ${:ip}:${:port3}
DocumentRoot ${:document_root} DocumentRoot ${:document_root}
DirectoryIndex index.html index.php DirectoryIndex index.html index.php
SSLEngine on
SSLCertificateFile ${:cert_file}
SSLCertificateKeyFile ${:key_file}
</VirtualHost> </VirtualHost>
...@@ -76,14 +84,43 @@ NameVirtualHost ${:ip}:${:port3} ...@@ -76,14 +84,43 @@ NameVirtualHost ${:ip}:${:port3}
Require all denied Require all denied
</Directory> </Directory>
<Directory ${:public_html2}> <Directory ${:phpmyadmin_root}>
Options FollowSymLinks Options FollowSymLinks
AllowOverride All AllowOverride All
Require all granted Require all granted
</Directory> </Directory>
DocumentRoot ${:public_html2} DocumentRoot ${:phpmyadmin_root}
DirectoryIndex index.html index.php
SSLEngine on
SSLCertificateFile ${:cert_file}
SSLCertificateKeyFile ${:key_file}
</VirtualHost>
<VirtualHost ${:ip}:${:port4}>
#ServerName www.example.com
# Directory protection
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory ${:dashboard_root}>
Options FollowSymLinks
AuthName "LAMP Service Dashboard"
AuthType Basic
AuthUserFile ${:dashboard_pwd}
require valid-user
</Directory>
DocumentRoot ${:dashboard_root}
DirectoryIndex index.html index.php DirectoryIndex index.html index.php
SSLEngine on
SSLCertificateFile ${:cert_file}
SSLCertificateKeyFile ${:key_file}
</VirtualHost> </VirtualHost>
...@@ -100,6 +137,10 @@ LoadModule unixd_module modules/mod_unixd.so ...@@ -100,6 +137,10 @@ LoadModule unixd_module modules/mod_unixd.so
LoadModule access_compat_module modules/mod_access_compat.so LoadModule access_compat_module modules/mod_access_compat.so
LoadModule authz_core_module modules/mod_authz_core.so LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_host_module modules/mod_authz_host.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule log_config_module modules/mod_log_config.so LoadModule log_config_module modules/mod_log_config.so
LoadModule setenvif_module modules/mod_setenvif.so LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so LoadModule version_module modules/mod_version.so
...@@ -113,4 +154,5 @@ LoadModule rewrite_module modules/mod_rewrite.so ...@@ -113,4 +154,5 @@ LoadModule rewrite_module modules/mod_rewrite.so
LoadModule headers_module modules/mod_headers.so LoadModule headers_module modules/mod_headers.so
LoadModule dir_module modules/mod_dir.so LoadModule dir_module modules/mod_dir.so
LoadModule php5_module modules/libphp5.so LoadModule php5_module modules/libphp5.so
LoadModule alias_module modules/mod_alias.so LoadModule alias_module modules/mod_alias.so
\ No newline at end of file LoadModule ssl_module modules/mod_ssl.so
\ No newline at end of file
var page = require('webpage').create();
var url = '${:content-url}';
page.open(url, function(status){
page.evaluate(function(){
function eventFire(el, etype){
if (el.fireEvent) {
(el.fireEvent('on' + etype));
} else {
var evObj = document.createEvent('Events');
evObj.initEvent(etype, true, false);
el.dispatchEvent(evObj);
}
}
eventFire(document.getElementById('start_button'),'click');
document.getElementsByName('ADMIN_USER_LOGIN')[0].setValue('${:user}');
document.getElementsByName('ADMIN_USER_NAME')[0].setValue('${:user}');
document.getElementsByName('ADMIN_USER_PASS')[0].setValue('${:password}');
document.getElementsByName('ADMIN_USER_PASS2')[0].setValue('${:password}');
document.getElementsByName('STORAGE_TYPE')[0].setValue('${:storage-type}');
var button = document.getElementById('save_button')
button.removeClassName('disabled');
eventFire(button,'click');
});
phantom.exit();
});
\ No newline at end of file
<?php
/**
* The base configurations of the Dashboard.
*
*/
define('PUBLIC_BACKEND_URL', '${:public_html_backend}');
define('PUBLIC_URL', '${:public_html}');
define('MYSQL_BACKEND_URL', '${:phpmyadmin_backend}');
define('MYSQL_URL', '${:phpmyadmin}');
define('FILE_BACKEND_URL', '${:filemanager_backend}');
define('FILE_URL', '${:filemanager}');
define('DB_USER', '${:mysql_username}');
define('DB_PASSWORD', '${:mysql_password}');
define('DB_NAME', '${:mysql_database}');
define('DB_HOST', '${:mysql_host}');
define('DB_PORT', '${:mysql_port}');
define('APACHE_ERROR_FILE', '${:apache_error_log}');
define('APACHE_ACCESS_FILE', '${:apache_access_log}');
define('WWW_FOLDER', '${:www_folder}');
define('UPLOAD_FOLDER', '${:upload_folder}');
define('JOOMLA_FOLDER', '${:joomla_folder}');
define('PRESTASHOP_FOLDER', '${:prestashop_folder}');
define('DRUPAL_FOLDER', '${:drupal_folder}');
define('WP_FOLDER', '${:wp_folder}');
<html>
<head>
<title>Empty Website</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h3>Hi, this website folder is still empty. Please go to your File Manager administration (filemanager-url) and
upload your files into ${:folder} folder.</h3>
</body>
</html>
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/*
* This is needed for cookie based authentication to encrypt password in
* cookie
*/
$cfg['blowfish_secret'] = '${:rand_pwd}'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/*
* Servers configuration
*/
$i = 0;
/*
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = '${:mysql_host}';
$cfg['Servers'][$i]['port'] = '${:mysql_port}';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysql if your server does not have mysqli */
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
/*
* Directories for saving/loading files from server
*/
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
?>
\ No newline at end of file
var page = require('webpage').create();
var url = '${:content-url}'
page.open(url,function(status){
var form = page.evaluate(function(){
return document.getElementById('login_form');
});
if(form === null){
phantom.exit(1);
} else {
phantom.exit();
}
});
\ No newline at end of file
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