add memcached configuration option, small corrections for the build process and add installDrupal.sh file to the release
--- a/build/build_rpm_puppet.sh Tue Nov 15 23:35:59 2016 +0100
+++ b/build/build_rpm_puppet.sh Fri Nov 18 14:48:49 2016 +0100
@@ -30,6 +30,7 @@
echo "---> Packaging for puppet done"
echo "---> Copy puppet bootstrap"
cp /vagrant/root-puppet/var/lib/puppet/provision/bootstrap-puppet.sh .
+cp /vagrant/drupal/installDrupal.sh .
popd > /dev/null
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/build/drupal/installDrupal.sh Fri Nov 18 14:48:49 2016 +0100
@@ -0,0 +1,122 @@
+#!/bin/sh
+#
+clear
+TARFILE=sources.tar.gz
+DUMP=corpusdelaparole.sql
+APUSER=apache
+APGROUP=apache
+# Variables de configuration à modifier selon vos besoins
+#########################################################
+ROOT=/var/www/corpusdelaparole/drupal
+DBNAME=corpusdelaparole
+DBUSER=corpus
+DBPASS=aeTh3ohC
+DBSERV=127.0.0.1
+PHP=/opt/remi/php56/root/usr/bin/php
+#########################################################
+splashTitle() {
+cat <<"EOT"
+ __ _ _____ _ _____ _
+ / _(_) | __ \ | | / ____| | |
+ __ _| |_ _ | | | |_ __ _ _ _ __ __ _| | | (___ ___| |_ _ _ _ __
+ / _` | _| | | | | | '__| | | | '_ \ / _` | | \___ \ / _ \ __| | | | '_ \
+ | (_| | | | | | |__| | | | |_| | |_) | (_| | | ____) | __/ |_| |_| | |_) |
+ \__, |_| |_| |_____/|_| \__,_| .__/ \__,_|_| |_____/ \___|\__|\__,_| .__/
+ __/ | | | | |
+ |___/ |_| |_|
+
+EOT
+}
+
+splashTitle
+echo "--------------------------- PARAMETRES D'INSTALLATION -------------------------------------------------------"
+echo "-------------------------------------------------------------------------------------------------------------"
+echo "Dossier d'installation = $ROOT"
+echo "chemin php = $PHP"
+echo "Nom de la base de données = $DBNAME"
+echo "User Mysql = $DBUSER"
+echo "Mot de passe Mysql = $DBPASS"
+echo "Serveur Mysql = $DBSERV"
+echo "-------------------------------------------------------------------------------------------------------------"
+echo "-------------------------------------------------------------------------------------------------------------"
+read -r -p "Etes-vous sur(e) de vouloir installer avec les paramètres ci dessus ? [Oui/n]" response
+ response=${response,,} # tolower
+ if [[ $response =~ ^(oui|o| ) ]]; then
+ #
+ echo ""
+ echo ""
+ echo "-------------------- Installation du site corpus de la parole -----------------------------------------------"
+ echo "-------------------------------------------------------------------------------------------------------------"
+ #
+ # Errors are fatal
+ #
+ set -e
+
+ echo ""
+ echo "Copie des sources et du dump SQL dans $ROOT"
+ echo "-------------------------------------------"
+ echo "cp $TARFILE $ROOT/$TARFILE"
+ cp $TARFILE $ROOT/$TARFILE
+ echo "cp $DUMP $ROOT/$TARFILE"
+ cp $DUMP $ROOT/$DUMP
+ echo ">> Copie effectuée avec succès"
+ echo ""
+
+ cd $ROOT
+ echo "Extraction des sources dans $ROOT"
+ echo "---------------------------------"
+ echo "tar -xf $TARFILE"
+ tar -xf $TARFILE
+ echo ">> Extraction effectuée avec succès"
+ echo ""
+
+ echo "Restauration du dump de bdd dans la base $DBNAME"
+ echo "------------------------------------------------"
+ echo "mysql -u $DBUSER -p$DBPASS $DBNAME < $DUMP"
+ mysql -h $DBSERV -u $DBUSER -p$DBPASS $DBNAME < $DUMP
+ echo ""
+ echo "Vidage des tables accesslog,search_dataset,search_index,search_total,sessions,watchdog"
+ echo "--------------------------------------------------------------------------------------"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE accesslog"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE search_dataset"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE search_index"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE search_total"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE sessions"
+ mysql -h $DBSERV -u $DBUSER -D $DBNAME -p$DBPASS -e "TRUNCATE TABLE watchdog"
+ echo ">> Restauration effectuée avec succès"
+ echo ""
+ echo "Suppression de l'archive tar et du dump"
+ echo "-----------------------------------------------------"
+ rm $TARFILE
+ rm $DUMP
+ echo ">> Suppression effectuée avec succès"
+ echo ""
+ echo "Attribution des droits apache (httpd) sur les sources"
+ echo "-----------------------------------------------------"
+ echo "chown –R $APUSER:$APGROUP $ROOT/*"
+ chown $APUSER:$APGROUP -R $ROOT/*
+ echo ">> Droits apache attribués avec succès"
+ echo ""
+ echo "Mise à jour du fichier de configuation de drupal"
+ echo "-----------------------------------------------------"
+ echo "sed -E \"... database => $DBNAME \" sites/default/settings.php"
+ sed -e '' -E "s/^([[:space:]]+[\'\"]database[\'\"][[:space:]]+\=\>[[:space:]]+)([\'\"]).*[\'\"](.*)$/\1\2$DBNAME\2\3/" sites/default/settings.php
+ echo "sed -E \"... username => $DBUSER \" sites/default/settings.php"
+ sed -e '' -E "s/^([[:space:]]+[\'\"]username[\'\"][[:space:]]+\=\>[[:space:]]+)([\'\"]).*[\'\"](.*)$/\1\2$DBUSER\2\3/" sites/default/settings.php
+ echo "sed -E \"... password => $DBPASS \" sites/default/settings.php"
+ sed -e '' -E "s/^([[:space:]]+[\'\"]password[\'\"][[:space:]]+\=\>[[:space:]]+)([\'\"]).*[\'\"](.*)$/\1\2$DBPASS\2\3/" sites/default/settings.php
+ echo "sed -E \"... host => $DBSERV \" sites/default/settings.php"
+ sed -e '' -E "s/^([[:space:]]+[\'\"]host[\'\"][[:space:]]+\=\>[[:space:]]+)([\'\"]).*[\'\"](.*)$/\1\2$DBSERV\2\3/" sites/default/settings.php
+
+ echo "Vidage des caches Drupal"
+ echo "-----------------------------------------------------"
+ export DRUSH_OPTIONS="-q"
+ sudo -u $APUSER DRUSH_PHP="$PHP" /usr/local/bin/drush cc all
+ set -e
+
+ echo ""
+ echo ""
+ echo ">>>>>>>>>>>>>> INSTALLATION EFFECTUEE AVEC SUCCESS"
+ echo ""
+ echo ""
+ fi
--- a/dev/provisioning/bootstrap-puppet.sh Tue Nov 15 23:35:59 2016 +0100
+++ b/dev/provisioning/bootstrap-puppet.sh Fri Nov 18 14:48:49 2016 +0100
@@ -1,4 +1,6 @@
#!/usr/bin/env bash
+# Taken from https://github.com/hashicorp/puppet-bootstrap
+# (under Mozilla Public License Version 2.0)
# This bootstraps Puppet on CentOS 7.x
# It has been tested on CentOS 7.0 64bit
--- a/dev/provisioning/modules/sysconfig/manifests/apache.pp Tue Nov 15 23:35:59 2016 +0100
+++ b/dev/provisioning/modules/sysconfig/manifests/apache.pp Fri Nov 18 14:48:49 2016 +0100
@@ -3,63 +3,6 @@
) inherits sysconfig::params {
notify {'apache': name => "\$vhost : ${vhost}", withpath => true }
- #remove system apache
- # package { "audit-libs":
- # ensure => present
- # }->
- # package {"rhscl-httpd24-epel-7-x86_64":
- # ensure => present,
- # source => "https://www.softwarecollections.org/en/scls/rhscl/httpd24/epel-7-x86_64/download/rhscl-httpd24-epel-7-x86_64.noarch.rpm",
- # provider => rpm,
- # }->
- # class { '::apache':
- # default_vhost => false,
- # apache_name => 'httpd24-httpd',
- # service_name => 'httpd24-httpd',
- # httpd_dir => "/opt/rh/httpd24/root/etc/httpd",
- # server_root => "/opt/rh/httpd24/root/etc/httpd",
- # conf_dir => "/opt/rh/httpd24/root/etc/httpd/conf",
- # confd_dir => "/opt/rh/httpd24/root/etc/httpd/conf.d",
- # mod_dir => "/opt/rh/httpd24/root/etc/httpd/conf.d",
- # vhost_dir => "/opt/rh/httpd24/root/etc/httpd/conf.d",
- # ports_file => "/opt/rh/httpd24/root/etc/httpd/conf.d/ports.conf"
- # }
- # class { '::apache':
- # default_vhost => false,
- # server_signature => 'off',
- # server_tokens => 'prod'
- # }
- # file {[ "/var/www/corpusdelaparole",
- # "/var/www/corpusdelaparole/corpus",
- # "/var/www/corpusdelaparole/drupal"]:
- # ensure => directory,
- # owner => 'apache',
- # group => 'apache'
- # }->
- # file { "/etc/www":
- # ensure => directory,
- # }->
- # ::apache::vhost { $vhost:
- # port => '80',
- # docroot => "/var/www/corpusdelaparole/drupal",
- # options => ['-indexes'],
- # aliases => [
- # { alias => '/corpus', path => "/var/www/corpusdelaparole/corpus/public" },
- # ],
- # use_optional_includes => true,
- # directories => [
- # {
- # path => "/var/www/corpusdelaparole/drupal",
- # allow_override => ['all',]
- # },
- # {
- # path => "/var/www/corpusdelaparole/corpus/public",
- # allow_override => ['all',],
- # }
- # ],
- # custom_fragment => " <Location /corpus>\n IncludeOptional /etc/www/corpus_env.con[f]\n </Location>",
- # }
-
$apache_packages = [
'httpd'
]
--- a/dev/provisioning/modules/sysconfig/manifests/sys_upgrade.pp Tue Nov 15 23:35:59 2016 +0100
+++ b/dev/provisioning/modules/sysconfig/manifests/sys_upgrade.pp Fri Nov 18 14:48:49 2016 +0100
@@ -16,6 +16,6 @@
timeout => 1800,
onlyif => "/usr/bin/test `stat --format=%Y /var/lib/yum/rpmdb-indexes` -le $(( `date +%s` - 86400 )) -o ! -e /var/lib/puppet/state/first_run ",
#onlyif => "/usr/bin/test `stat --format=%Y /var/lib/yum/rpmdb-indexes` -le $(( `date +%s` ))",
- path => [ '/bin', '/usr/bin', '/uhttp://rpms.remirepo.net/RPM-GPG-KEY-remisr/local/bin' ]
+ path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
}
}
--- a/dev/provisioning/modules/sysconfig/templates/corpus/corpus_env.conf.erb Tue Nov 15 23:35:59 2016 +0100
+++ b/dev/provisioning/modules/sysconfig/templates/corpus/corpus_env.conf.erb Fri Nov 18 14:48:49 2016 +0100
@@ -10,7 +10,9 @@
SetEnv DB_USERNAME <%= @db_user %>
SetEnv DB_PASSWORD <%= @db_pw %>
-SetEnv CACHE_DRIVER file
+SetEnv CACHE_DRIVER memcached
+SetEnv CACHE_MEMCACHED_HOST /var/run/memcached/memcached.sock
+SetEnv CACHE_MEMCACHED_PORT 0
SetEnv SESSION_DRIVER file
SetEnv QUEUE_DRIVER sync
--- a/dev/provisioning/modules/sysconfig/templates/corpus/local.env.erb Tue Nov 15 23:35:59 2016 +0100
+++ b/dev/provisioning/modules/sysconfig/templates/corpus/local.env.erb Fri Nov 18 14:48:49 2016 +0100
@@ -10,7 +10,10 @@
DB_USERNAME=<%= @db_user %>
DB_PASSWORD=<%= @db_pw %>
-CACHE_DRIVER=file
+CACHE_DRIVER=memcached
+CACHE_MEMCACHED_HOST=/var/run/memcached/memcached.sock
+CACHE_MEMCACHED_PORT=0
+
SESSION_DRIVER=file
QUEUE_DRIVER=sync
--- a/server/src/.env.example Tue Nov 15 23:35:59 2016 +0100
+++ b/server/src/.env.example Fri Nov 18 14:48:49 2016 +0100
@@ -1,54 +1,77 @@
APP_ENV=local
APP_DEBUG=true
+# clé applicative, doit être une chaine de caractère aléatoire
APP_KEY=SomeRandomString
-APP_URL=http://corpus-parole.local
+
+# url de base de l'pplication
+APP_URL=http://corpus-parole.local/
+
+# Configuration du système de log (c.f. https://laravel.com/docs/5.3/errors#configuration)
+# Valeurs possibles: "single", "daily", "syslog", "errorlog"
APP_LOG="daily"
-# Available Settings: "single", "daily", "syslog", "errorlog"
+
-DATABASE_DRIVER=pgsql
+#configuration de la base de donnée
+DATABASE_DRIVER=mysql
DB_HOST=localhost
DB_DATABASE=corpus
DB_USERNAME=corpus
DB_PASSWORD=secret
+# configuration du cache
CACHE_DRIVER=file
-SESSION_DRIVER=file
-QUEUE_DRIVER=sync
+
+# configuration memcached
+CACHE_MEMCACHED_HOST=127.0.0.1
+CACHE_MEMCACHED_PORT=11211
+
+# URI de base Cocoon
+CORPUSPAROLE_COCOON_RDF_BASE_URI=
+# URL de moissonnage Cocoon
+CORPUSPAROLE_COCOON_OAIPMH_URL=
+
+
+# Configuration RDF4J
+CORPUSPAROLE_RDF4J_BASE_URL=http://172.16.1.5:8080/rdf4j-server
+CORPUSPAROLE_RDF4J_REPOSITORY=
+CORPUSPAROLE_RDF4J_REPOSITORY_RAW=
+CORPUSPAROLE_RDF4J_LEXVO_REPOSITORY=
+
+# Configuration Elasticsearch
+ELASTICSEARCH_URL=
+ELASTICSEARCH_LOG_PATH='logs/elasticsearch.log'
+ELASTICSEARCH_INDEX='corpus'
+ELASTICSEARCH_SHARDS=1
+ELASTICSEARCH_REPLICAS=1
+
+
+# Configuration registre Handle
+HANDLE_HOST=172.16.1.6
+HANDLE_PORT=8000
+HANDLE_PREFIX=12345.100
+
+HANDLE_ADMIN_ID=CORPUS_ADMIN
+HANDLE_CERT_OR_PKEY=""
+HANDLE_PASSWORD=NULL
+
+
+# Geonames user name (cf. http://www.geonames.org/login)
+GEONAMES_USERNAME="demo"
+
+
+### les pramètres suivant sont des paramêtre internes
+
+# configuration du système de mail (non utilisé)
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
-CORPUSPAROLE_ONTOLOGY_URL=http://corpusdelaparole.culture.fr/ontology/
-
-CORPUSPAROLE_COCOON_RDF_BASE_URI=
-CORPUSPAROLE_COCOON_OAIPMH_URL=
-CORPUSPAROLE_RDF4J_BASE_URL=http://172.16.1.5:8080/rdf4j-server
-CORPUSPAROLE_RDF4J_REPOSITORY=
-CORPUSPAROLE_RDF4J_REPOSITORY_RAW=
-CORPUSPAROLE_RDF4J_LEXVO_REPOSITORY=
-
-
-EASYRDF_HTTP_CLIENT_TIMEOUT=20
-
-ELASTICSEARCH_URL=
-ELASTICSEARCH_LOG_PATH='logs/elasticsearch.log'
-ELASTICSEARCH_INDEX='corpus'
-ELASTICSEARCH_SHARDS=1
-ELASTICSEARCH_REPLICAS=1
-
-HANDLE_HOST=172.16.1.6
-HANDLE_PORT=8000
-HANDLE_PREFIX=12345.100
-
-HANDLE_CERT_OR_PKEY=""
-HANDLE_PASSWORD=NULL
HANDLE_TEST_PREFIX=12345.101
-
HANDLE_TEST_CERT=""
HANDLE_TEST_CERT_PASSWORD=NULL
HANDLE_TEST_CERT_ADMIN_HANDLE=""
@@ -57,9 +80,16 @@
HANDLE_TEST_RSA_PASSWORD=NULL
HANDLE_TEST_RSA_ADMIN_HANDLE=""
-
HANDLE_TEST_DSA_KEY=""
HANDLE_TEST_DSA_PASSWORD=NULL
HANDLE_TEST_DSA_ADMIN_HANDLE=""
-GEONAMES_USERNAME="demo"
+# timeout par défaut pour le client HTTP EasyRDF
+EASYRDF_HTTP_CLIENT_TIMEOUT=20
+
+SESSION_DRIVER=file
+QUEUE_DRIVER=sync
+
+# URL de base pour l'ontologie Corpus de la Parole
+CORPUSPAROLE_ONTOLOGY_URL=http://corpusdelaparole.culture.fr/ontology/
+
--- a/server/src/config/cache.php Tue Nov 15 23:35:59 2016 +0100
+++ b/server/src/config/cache.php Fri Nov 18 14:48:49 2016 +0100
@@ -51,7 +51,7 @@
'driver' => 'memcached',
'servers' => [
[
- 'host' => '127.0.0.1', 'port' => 11211, 'weight' => 100,
+ 'host' => env('CACHE_MEMCACHED_HOST', '127.0.0.1'), 'port' => env('CACHE_MEMCACHED_PORT', 11211), 'weight' => 100,
],
],
],