@@ -, +, @@
---
Makefile.PL | 37 ++++++++++++++++++++++++++++++++++
debian/templates/koha-conf-site.xml.in | 7 +++++++
etc/koha-conf.xml | 5 +++++
rewrite-config.PL | 3 +++
4 files changed, 52 insertions(+)
--- a/Makefile.PL
+++ a/Makefile.PL
@@ -198,6 +198,16 @@ Directory for Zebra's data files.
Directory for Zebra's UNIX-domain sockets.
+=item ELASTICSEARCH_SERVERS
+
+Server:port of the Elasticsearch server to use, as a comma separated list:
+eg. 192.168.0.100:9200, localhost:9200
+
+=item ELASTICSEARCH_INDEX
+
+Unique index in Elasticsearch, for this Koha-instance
+eg. koha-mykoha or just koha
+
=item MISC_DIR
Directory for for miscellaenous scripts, among other
@@ -448,6 +458,9 @@ my %config_defaults = (
'USE_MEMCACHED' => 'no',
'MEMCACHED_SERVERS' => '127.0.0.1:11211',
'MEMCACHED_NAMESPACE' => 'KOHA',
+ 'USE_ELASTICSEARCH' => 'no',
+ 'ELASTICSEARCH_SERVERS' => '',
+ 'ELASTICSEARCH_INDEX' => 'koha',
'FONT_DIR' => '/usr/share/fonts/truetype/ttf-dejavu'
);
@@ -479,6 +492,7 @@ my %valid_config_values = (
'ZEBRA_TOKENIZER' => { chr => 1, icu => 1 },
'RUN_DATABASE_TESTS' => { 'yes' => 1, 'no' => 1 },
'USE_MEMCACHED' => { 'yes' => 1, 'no' => 1 },
+ 'USE_ELASTICSEARCH' => { 'yes' => 1, 'no' => 1 },
);
# get settings from command-line
@@ -1090,6 +1104,29 @@ Memcached namespace?);
$config{'MEMCACHED_NAMESPACE'} = _get_value('MEMCACHED_NAMESPACE', $msg, $defaults->{'MEMCACHED_NAMESPACE'}, $valid_values, $install_log_values);
}
+
+ $msg = q(
+Use Elasticsearch to serve search results?
+You will need a Elasticsearch server running.);
+ $msg .= _add_valid_values_disp('USE_ELASTICSEARCH', $valid_values);
+ $config{'USE_ELASTICSEARCH'} = _get_value('USE_ELASTICSEARCH', $msg, $defaults->{'USE_ELASTICSEARCH'}, $valid_values, $install_log_values);
+ if ($config{'USE_ELASTICSEARCH'} eq 'yes'){
+ $msg = q(
+Define the ELASTICSEARCH_SERVERS with a comma-separated list. Eg
+localhost:9200, 192.168.0.100:9200
+);
+ $msg = q(
+Elasticsearch server addresses?);
+ $config{'ELASTICSEARCH_SERVERS'} = _get_value('ELASTICSEARCH_SERVERS', $msg, $defaults->{'ELASTICSEARCH_SERVERS'}, $valid_values, $install_log_values);
+
+ $msg = q(
+What index name to use for this Koha-instance? It must be unique for each Koha
+sharing the same Elasticsearch-cluster
+
+Elasticsearch index?);
+ $config{'ELASTICSEARCH_INDEX'} = _get_value('ELASTICSEARCH_INDEX', $msg, $defaults->{'ELASTICSEARCH_INDEX'}, $valid_values, $install_log_values);
+ }
+
$msg = q(
Path to DejaVu fonts?);
$config{'FONT_DIR'} = _get_value('FONT_DIR', $msg, $defaults->{'FONT_DIR'}, $valid_values, $install_log_values);
--- a/debian/templates/koha-conf-site.xml.in
+++ a/debian/templates/koha-conf-site.xml.in
@@ -311,5 +311,12 @@ __END_SRU_PUBLICSERVER__
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
+
+ koha
+
+-->
+
--- a/etc/koha-conf.xml
+++ a/etc/koha-conf.xml
@@ -138,5 +138,10 @@ __PAZPAR2_TOGGLE_XML_POST__
__FONT_DIR__/DejaVuSans-BoldOblique.ttf
+
+ __ELASTICSEARCH_SERVERS__
+ __ELASTICSEARCH_INDEX__
+
+
--- a/rewrite-config.PL
+++ a/rewrite-config.PL
@@ -148,6 +148,9 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr";
"__USE_MEMCACHED__" => 'no',
"__MEMCACHED_SERVERS__" => "",
"__MEMCACHED_NAMESPACE__" => "",
+ "__USE_ELASTICSEARCH__" => 'no',
+ "__ELASTICSEARCH_SERVERS__" => "",
+ "__ELASTICSEARCH_INDEX__" => "koha",
"__FONT_DIR__" => "/usr/share/fonts/truetype/ttf-dejavu",
);
--