X-Git-Url: http://git.equinoxoli.org/?p=koha-equinox.git;a=blobdiff_plain;f=rewrite-config.PL;h=8b886847f3de44536b043b37c00b9671115c59b4;hp=3239a59663ad21e6361dd13e73bb368963d414cb;hb=HEAD;hpb=8c9fe6b2ddb7d9ba2113750d89c0be1e855e9b5d diff --git a/rewrite-config.PL b/rewrite-config.PL index 3239a59..8479e12 100644 --- a/rewrite-config.PL +++ b/rewrite-config.PL @@ -19,6 +19,7 @@ # # 2007/11/12 Added DB_PORT and changed other keywords to reflect multi-dbms support. -fbcit +use Modern::Perl; use Sys::Hostname; use Socket; @@ -44,7 +45,7 @@ The following configuration keywords are available: PREFIX, BASE_DIR, CGI_DIR, LOG_DIR, PLUGINS_DIR, INSTALL_BASE, -DB_TYPE, DB_HOST, DB_PORT, DB_NAME, DB_PASS, DB_USER, WEBMASTER_EMAIL, WEBSERVER_DOMAIN, +DB_TYPE, DB_HOST, DB_PORT, DB_NAME, DB_PASS, DB_USER, DB_USE_TLS, DB_TLS_CA_CERT, DB_TLS_CLIENT_KEY, DB_TLS_CLIENT_CERT, WEBMASTER_EMAIL, WEBSERVER_DOMAIN, WEBSERVER_HOST, WEBSERVER_IP, WEBSERVER_PORT, WEBSERVER_PORT_LIBRARIAN, ZEBRA_PASS, ZEBRA_USER =head1 EXAMPLES @@ -59,6 +60,8 @@ also need to override WEBSERVER_IP. =cut +my $myhost; +my $mydomain; if ( $myhost = $ENV{WEBSERVER_HOST} || hostname ) { ( $mydomain = $myhost ) =~ s/.*?\.//; } else { @@ -66,6 +69,7 @@ if ( $myhost = $ENV{WEBSERVER_HOST} || hostname ) { $mydomain = 'localdomain'; } +my $myip; unless ( $myip = $ENV{WEBSERVER_IP} ) { my $byname = gethostbyname( $myhost ) or die "Could not get the IP address of $myhost, DNS fault? ($!)"; @@ -74,12 +78,12 @@ unless ( $myip = $ENV{WEBSERVER_IP} ) { } -$prefix = $ENV{'INSTALL_BASE'} || "/usr"; +my $prefix = $ENV{'INSTALL_BASE'} || "/usr"; # These are our configuration guesses # Keys were extracted by # "",/' -%configuration = ( +my %configuration = ( "__KOHA_INSTALLED_VERSION__" => "no_version_found", "__LOG_DIR__" => "/var/log", "__PLUGINS_DIR__" => "/var/lib/koha/plugins", @@ -89,6 +93,10 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr"; "__DB_PORT__" => "3306", "__DB_USER__" => "kohaadmin", "__DB_PASS__" => "katikoan", + "__DB_USE_TLS__" => "no", + "__DB_TLS_CA_CERTIFICATE__" => "", + "__DB_TLS_CLIENT_CERTIFICATE__" => "", + "__DB_TLS_CLIENT_KEY__"=>"", "__WEBMASTER_EMAIL__" => 'webmaster@'.$mydomain, "__WEBSERVER_DOMAIN__" => $mydomain, "__WEBSERVER_HOST__" => $myhost, @@ -103,6 +111,7 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr"; "__ZEBRA_PASS__" => "zebrastripes", "__ZEBRA_USER__" => "kohauser", '__BACKUP_DIR__' => "$prefix/var/spool", + '__API_CGI_DIR__' => "$prefix/api", '__INTRANET_CGI_DIR__' => "$prefix/intranet/cgi-bin", '__INTRANET_TMPL_DIR__' => "$prefix/intranet/templates", '__INTRANET_WWW_DIR__' => "$prefix/intranet/www", @@ -126,10 +135,10 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr"; '__ZEBRA_TOKENIZER__' => 'chr', '__ZEBRA_TOKENIZER_STMT__' => 'charmap word-phrase-utf.chr', '__ZEBRA_PTOKENIZER_STMT__' => 'charmap word-phrase-utf.chr', - '__ZEBRA_AUTH_CFG__' => 'zebra-authorities.cfg', - '__ZEBRA_BIB_CFG__' => 'zebra-biblios.cfg', - '__AUTH_RETRIEVAL_CFG__' => 'retrieval-info-auth-grs1.xml', - '__BIB_RETRIEVAL_CFG__' => 'retrieval-info-bib-grs1.xml', + '__AUTH_RETRIEVAL_CFG__' => 'retrieval-info-auth-dom.xml', + '__BIB_RETRIEVAL_CFG__' => 'retrieval-info-bib-dom.xml', + '__ZEBRA_AUTH_CFG__' => 'zebra-authorities-dom.cfg', + '__ZEBRA_BIB_CFG__' => 'zebra-biblios-dom.cfg', "__MERGE_SERVER_HOST__" => $myhost, "__MERGE_SERVER_PORT__" => '11001', "__PAZPAR2_HOST__" => $myhost, @@ -140,18 +149,20 @@ $prefix = $ENV{'INSTALL_BASE'} || "/usr"; "__INSTALL_PAZPAR2__" => 'no', "__PAZPAR2_TOGGLE_XML_PRE__" => '', - "__AUTH_INDEX_MODE__" => 'grs1', - "__BIB_INDEX_MODE__" => 'grs1', "__RUN_DATABASE_TESTS__" => 'no', "__PATH_TO_ZEBRA__" => "", - "__USE_MEMCACHED__" => 'no', + "__USE_MEMCACHED__" => 'yes', "__MEMCACHED_SERVERS__" => "", "__MEMCACHED_NAMESPACE__" => "", - "__FONT_DIR__" => "/usr/share/fonts/truetype/ttf-dejavu", + "__USE_ELASTICSEARCH__" => 'no', + "__ELASTICSEARCH_SERVERS__" => "localhost:9200", + "__ELASTICSEARCH_INDEX__" => "koha", + "__FONT_DIR__" => "/usr/share/fonts/truetype/dejavu", + "__TEMPLATE_CACHE_DIR__" => "/tmp/koha" ); # Override configuration from the environment -foreach $key (keys %configuration) { +foreach my $key (keys %configuration) { if (defined($ENV{$key})) { $configuration{$key} = $ENV{$key}; } @@ -164,8 +175,8 @@ if ($configuration{'__INSTALL_PAZPAR2__'} eq 'yes') { $configuration{'__PAZPAR2_TOGGLE_XML_POST__'} = ''; } -$fname = $ARGV[0]; -$file = &read_file($fname); +my $fname = $ARGV[0]; +my $file = &read_file($fname); $file =~ s/__.*?__/exists $configuration{$&} ? $configuration{$&} : $&/seg; # At this point, file is in 'blib' and by default @@ -173,21 +184,22 @@ $file =~ s/__.*?__/exists $configuration{$&} ? $configuration{$&} : $&/seg; # to make it writable. Note that stat and chmod # (the Perl functions) should work on Win32 my $old_perm; -$old_perm = (stat $fname)[2] & 07777; -my $new_perm = $old_perm | 0200; +$old_perm = (stat $fname)[2] & oct(7777); +my $new_perm = $old_perm | oct(200); chmod $new_perm, $fname; -open(OUTPUT,">$fname") || die "Can't open $fname for write: $!"; -print OUTPUT $file; -close(OUTPUT); +open(my $output, ">", $fname) || die "Can't open $fname for write: $!"; +print $output $file; +close($output); chmod $old_perm, $fname; # Idea taken from perlfaq5 -sub read_file($) { - local(*INPUT,$/); - open(INPUT,$_[0]) || die "Can't open $_[0] for read"; - my $file = ; +sub read_file { + local $/; + open(my $fh , '<', $_[0]) || die "Can't open $_[0] for read"; + my $file = <$fh>; + close $fh; return $file; }