Lines 1-4
Link Here
|
1 |
# Copyright 2007 MJ Ray |
1 |
# Copyright 2007 MJ Ray |
|
|
2 |
# Copyright 2016 PTFS Europe |
2 |
# |
3 |
# |
3 |
# This file is part of Koha. |
4 |
# This file is part of Koha. |
4 |
# |
5 |
# |
Lines 23-29
use warnings;
Link Here
|
23 |
use ExtUtils::MakeMaker; |
24 |
use ExtUtils::MakeMaker; |
24 |
use POSIX; |
25 |
use POSIX; |
25 |
use File::Spec; |
26 |
use File::Spec; |
26 |
use Getopt::Long; |
27 |
use Getopt::Long qw/HelpMessage/; |
27 |
use FindBin; # we need to enforce which C4::Installer::PerlModule is used in case more than one is installed |
28 |
use FindBin; # we need to enforce which C4::Installer::PerlModule is used in case more than one is installed |
28 |
|
29 |
|
29 |
use lib $FindBin::Bin; |
30 |
use lib $FindBin::Bin; |
Lines 72-77
Makefile.PL - Koha packager and installer
Link Here
|
72 |
|
73 |
|
73 |
make clean |
74 |
make clean |
74 |
|
75 |
|
|
|
76 |
=head2 CLI PARAMETERS |
77 |
|
78 |
--prev-install-log Read configuration from previous installation |
79 |
--install_mode Installation mode (dev, standard, single) |
80 |
--db_type Database (mysql, Pg) |
81 |
--db_host Database host (e.g. localhost) |
82 |
--db_port Database port (e.g. 3306) |
83 |
--db_name Database name (e.g. koha) |
84 |
--db_user Database user (e.g. kohaadmin) |
85 |
--db_pass Database password (e.g. katikoan) |
86 |
--zebra_marc_format Zebra MARC format (marc21, normarc, unimarc) |
87 |
--zebra_language Zebra language (e.g. en) |
88 |
--zebra_tokenizer Zebra tokenizer (chr, icu) |
89 |
--zebra_user Zebra user (e.g. kohauser) |
90 |
--zebra_pass Zebra password (e.g. zebrastripes) |
91 |
--auth_index_mode Authority index mode (grs1, dom) |
92 |
--bib_index_mode Bibliographic index mode (grs1, dom) |
93 |
--koha_user Koha Unix user (e.g. koha) |
94 |
--koha_group Koha Unix group (e.g. koha) |
95 |
--install_sru Install the SRU server (yes, no) |
96 |
--install_pazpar2 Install PazPar2 (yes, no) |
97 |
--use_memcached Use Memcached (yes, no) |
98 |
--font_dir Location of fonts (e.g. /usr/share/fonts/truetype/ttf-dejavu) |
99 |
--run_database_tests Run database dependent tests (yes, no) |
100 |
--install_base Base directory of installation (e.g. /usr/share/koha) |
101 |
--help Display this help message |
102 |
|
75 |
=head1 DESCRIPTION |
103 |
=head1 DESCRIPTION |
76 |
|
104 |
|
77 |
This is a packager and installer that uses |
105 |
This is a packager and installer that uses |
Lines 483-496
my %valid_config_values = (
Link Here
|
483 |
|
511 |
|
484 |
# get settings from command-line |
512 |
# get settings from command-line |
485 |
my $koha_install_log = ""; |
513 |
my $koha_install_log = ""; |
|
|
514 |
my $cli_koha_install_mode = ""; |
515 |
my $cli_koha_db_type = ""; |
516 |
my $cli_koha_db_host = ""; |
517 |
my $cli_koha_db_port = ""; |
518 |
my $cli_koha_db_name = ""; |
519 |
my $cli_koha_db_user = ""; |
520 |
my $cli_koha_db_pass = ""; |
521 |
my $cli_zebra_marc_format = ""; |
522 |
my $cli_zebra_language = "", |
523 |
my $cli_zebra_tokenizer = ""; |
524 |
my $cli_zebra_user = ""; |
525 |
my $cli_zebra_pass = ""; |
526 |
my $cli_koha_auth_index_mode = ""; |
527 |
my $cli_koha_bib_index_mode = ""; |
528 |
my $cli_koha_user = ""; |
529 |
my $cli_koha_group = ""; |
530 |
my $cli_koha_install_sru = ""; |
531 |
my $cli_koha_install_pazpar2 = ""; |
532 |
my $cli_koha_use_memcached = ""; |
533 |
my $cli_koha_font_dir = ""; |
534 |
my $cli_koha_run_database_tests = ""; |
535 |
my $cli_koha_install_base = ""; |
486 |
Getopt::Long::Configure('pass_through'); |
536 |
Getopt::Long::Configure('pass_through'); |
487 |
my $results = GetOptions( |
537 |
my $results = GetOptions( |
488 |
"prev-install-log=s" => \$koha_install_log |
538 |
"prev-install-log=s" => \$koha_install_log, |
489 |
); |
539 |
"install_mode=s" => \$cli_koha_install_mode, |
|
|
540 |
"db_type=s" => \$cli_koha_db_type, |
541 |
"db_host=s" => \$cli_koha_db_host, |
542 |
"db_port=s" => \$cli_koha_db_port, |
543 |
"db_name=s" => \$cli_koha_db_name, |
544 |
"db_user=s" => \$cli_koha_db_user, |
545 |
"db_pass=s" => \$cli_koha_db_pass, |
546 |
"zebra_marc_format=s" => \$cli_zebra_marc_format, |
547 |
"zebra_language=s" => \$cli_zebra_language, |
548 |
"zebra_tokenizer=s" => \$cli_zebra_tokenizer, |
549 |
"zebra_user=s" => \$cli_zebra_user, |
550 |
"zebra_pass=s" => \$cli_zebra_pass, |
551 |
"auth_index_mode=s" => \$cli_koha_auth_index_mode, |
552 |
"bib_index_mode=s" => \$cli_koha_bib_index_mode, |
553 |
"koha_user=s" => \$cli_koha_user, |
554 |
"koha_group=s" => \$cli_koha_group, |
555 |
"install_sru=s" => \$cli_koha_install_sru, |
556 |
"install_pazpar2=s" => \$cli_koha_install_pazpar2, |
557 |
"use_memcached=s" => \$cli_koha_use_memcached, |
558 |
"font_dir=s" => \$cli_koha_font_dir, |
559 |
"run_database_tests=s" => \$cli_koha_run_database_tests, |
560 |
"install_base=s" => \$cli_koha_install_base, |
561 |
"help" => sub { HelpMessage(0) }, |
562 |
) or HelpMessage(1); |
490 |
|
563 |
|
491 |
my %install_log_values = (); |
564 |
my %install_log_values = (); |
492 |
if ($koha_install_log ne "") { |
565 |
if ($koha_install_log ne "") { |
493 |
get_install_log_values($koha_install_log, \%install_log_values); |
566 |
get_install_log_values($koha_install_log, \%install_log_values); |
|
|
567 |
} else { |
568 |
# Try to set install_log_values for provided values; |
569 |
get_cli_values(\%install_log_values); |
494 |
} |
570 |
} |
495 |
|
571 |
|
496 |
my %config = get_configuration(\%config_defaults, \%valid_config_values, \%install_log_values); |
572 |
my %config = get_configuration(\%config_defaults, \%valid_config_values, \%install_log_values); |
Lines 736-741
sub _add_to_file_map {
Link Here
|
736 |
} |
812 |
} |
737 |
} |
813 |
} |
738 |
|
814 |
|
|
|
815 |
=head2 get_cli_values |
816 |
|
817 |
Reads values provided on cli for configuration values |
818 |
|
819 |
=cut |
820 |
|
821 |
sub get_cli_values { |
822 |
my $values = shift; |
823 |
my $map = { |
824 |
INSTALL_MODE => $cli_koha_install_mode, |
825 |
DB_TYPE => $cli_koha_db_type, |
826 |
DB_HOST => $cli_koha_db_host, |
827 |
DB_PORT => $cli_koha_db_port, |
828 |
DB_NAME => $cli_koha_db_name, |
829 |
DB_USER => $cli_koha_db_user, |
830 |
DB_PASS => $cli_koha_db_pass, |
831 |
ZEBRA_MARC_FORMAT => $cli_zebra_marc_format, |
832 |
ZEBRA_LANGUAGE => $cli_zebra_language, |
833 |
ZEBRA_TOKENIZER => $cli_zebra_tokenizer, |
834 |
ZEBRA_USER => $cli_zebra_user, |
835 |
ZEBRA_PASS => $cli_zebra_pass, |
836 |
AUTH_INDEX_MODE => $cli_koha_auth_index_mode, |
837 |
BIB_INDEX_MODE => $cli_koha_bib_index_mode, |
838 |
KOHA_USER => $cli_koha_user, |
839 |
KOHA_GROUP => $cli_koha_group, |
840 |
INSTALL_SRU => $cli_koha_install_sru, |
841 |
INSTALL_PAZPAR2 => $cli_koha_install_pazpar2, |
842 |
USE_MEMCACHED => $cli_koha_use_memcached, |
843 |
FONT_DIR => $cli_koha_font_dir, |
844 |
RUN_DATABASE_TESTS => $cli_koha_run_database_tests, |
845 |
INSTALL_BASE => $cli_koha_install_base |
846 |
}; |
847 |
foreach my $key (keys %{$map}) { |
848 |
$values->{$key} = $map->{$key} if ($map->{$key}); |
849 |
} |
850 |
} |
851 |
|
739 |
=head2 get_install_log_values |
852 |
=head2 get_install_log_values |
740 |
|
853 |
|
741 |
Reads value from the Koha install log specified by |
854 |
Reads value from the Koha install log specified by |
742 |
- |
|
|