diff --git a/src/warden-server/doc/README b/src/warden-server/doc/README index 059924d0c27e1fb6c06855dc564395c47aa3bea8..85cbdb54018228df4dba8528bd052e01f2a72523 100644 --- a/src/warden-server/doc/README +++ b/src/warden-server/doc/README @@ -45,7 +45,7 @@ A. Overall Information UNINSTALL UPDATE warden.mysql - warden20to21.patch + warden21to22.patch etc/ package_version warden-apache.conf @@ -226,7 +226,7 @@ C. Installation -------------------------------------------------------------------------------- D. Update -For update of the Warden server package from local machine use update.sh. + For update of the Warden server package from local machine use update.sh. Default destination directory is /opt/warden-server/. diff --git a/src/warden-server/doc/UPDATE b/src/warden-server/doc/UPDATE index c9ce426ac2998573d0a82265d28b5426a277b9fd..e6dbefe32d615d027434bcc648a2eb49a954bea4 100644 --- a/src/warden-server/doc/UPDATE +++ b/src/warden-server/doc/UPDATE @@ -32,9 +32,14 @@ B. Update steps C. Post-update steps -------------------- -1) Update Warden server database +1) Upgrade Warden server database + + $ mysql -u <user> -h localhost -p <password> < {warden-server_path}/doc/warden21to22.patch + + +ATTENTION: Running of the database update script may take a long time (in minutes - depending on the size of the database). +During this process the database will be not available! - $ mysql -u <user> -h localhost -p <password> < {warden-server_path}/doc/warden20to21.patch 2) Restart Apache server diff --git a/src/warden-server/doc/warden.mysql b/src/warden-server/doc/warden.mysql index 48a298232103f71148c97a8b8ecd3f43bc7b4af3..9fe1a5a49fb6138e56e3980881f86c9510528842 100644 --- a/src/warden-server/doc/warden.mysql +++ b/src/warden-server/doc/warden.mysql @@ -41,6 +41,10 @@ CREATE TABLE `clients` ( `receive_own_events` varchar(1) default NULL, `description_tags` varchar(256) default NULL, `ip_net_client` varchar(256) default NULL, +<<<<<<< HEAD +======= + `valid` varchar(1) default 't', +>>>>>>> warden-server-2.2 PRIMARY KEY (`client_id`) ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=latin1; SET character_set_client = @saved_cs_client; @@ -67,8 +71,17 @@ CREATE TABLE `events` ( `note` text, `priority` int(1) unsigned default NULL, `timeout` int(2) unsigned default NULL, +<<<<<<< HEAD `valid` varchar(1) default NULL, PRIMARY KEY (`id`) +======= + `valid` varchar(1) default 't', + `client_id` int(11) default NULL, + PRIMARY KEY (`id`), + KEY `idx_events_type_valid` (`type`,`valid`), + KEY `idx_events_client_id` (`client_id`), + KEY `idx_events_detected` (`detected`) +>>>>>>> warden-server-2.2 ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=latin1; SET character_set_client = @saved_cs_client; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; diff --git a/src/warden-server/doc/warden21to22.patch b/src/warden-server/doc/warden21to22.patch new file mode 100644 index 0000000000000000000000000000000000000000..2278f44379438fa88f593ab8f8a7aa3ea6fa9dd0 --- /dev/null +++ b/src/warden-server/doc/warden21to22.patch @@ -0,0 +1,18 @@ +ALTER TABLE `clients` +ADD `valid` varchar(1) DEFAULT 't'; + +ALTER TABLE `events` +ADD `client_id` int(11) DEFAULT NULL; + +UPDATE `events`, `clients` +SET events.client_id = clients.client_id +WHERE `events.hostname` = `clients.hostname` AND `events.service` = `clients.service`; + +ALTER TABLE `events` +DROP COLUMN `hostname`, +DROP COLUMN `service`; + +ALTER TABLE `events` +ADD INDEX `idx_events_type_valid` (`type`,`valid`), +ADD INDEX `idx_events_client_id` (`client_id`), +ADD INDEX `idx_events_detected` (`detected`); diff --git a/src/warden-server/lib/Warden.pm b/src/warden-server/lib/Warden.pm index 3eeccebdfdb93fc947899fb112bd961704f5c239..fe5dc3152adcb7ddd7da01cba3f078e0856ab71a 100755 --- a/src/warden-server/lib/Warden.pm +++ b/src/warden-server/lib/Warden.pm @@ -21,6 +21,23 @@ use MIME::Base64; use Crypt::X509; use SOAP::Lite; use Carp; +<<<<<<< HEAD +======= +use File::Basename; + +my $lib = File::Basename::dirname(__FILE__); +use lib $lib; +use WardenCommon; + + + +################################################################################ +# VARIABLES +################################################################################ +our $VERSION = "2.2"; +our $FILENAME = File::Basename::basename(__FILE__); +my $etc = "$lib/../etc"; +>>>>>>> warden-server-2.2 our $VERSION = "2.1"; diff --git a/src/warden-server/sh/install.sh b/src/warden-server/sh/install.sh index 425e899adb5d46e2ca2ce60e7cd6e51f26f091ea..dbc4844a2dd2fa1aeb3a2d3f3fcdbc031b7199ac 100755 --- a/src/warden-server/sh/install.sh +++ b/src/warden-server/sh/install.sh @@ -283,6 +283,7 @@ PerlSwitches -I $lib } +<<<<<<< HEAD changeServerPath() { echo "Update server path ..."; @@ -299,6 +300,9 @@ changeServerPath() create_symlinks() +======= +createSymlinks() +>>>>>>> warden-server-2.2 { echo "Creating symbolic links ..." for file in `ls -1 $bin` @@ -314,7 +318,7 @@ create_symlinks() #------------------------------------------------------------------------------- # list of used Perl modules -modules=(SOAP::Lite SOAP::Transport::HTTP DBI DBD::mysql Format::Human::Bytes Sys::Syslog File::Basename Net::CIDR::Lite DateTime Getopt::Std Switch IO::Socket::SSL MIME::Base64 Crypt::X509 Carp) +modules=(SOAP::Lite SOAP::Transport::HTTP DBI DBD::mysql Format::Human::Bytes Sys::Syslog File::Basename Net::CIDR::Lite DateTime Getopt::Std Switch IO::Socket::SSL MIME::Base64 Crypt::X509 Carp FindBin) # read input while getopts "d:k:c:a:Vh" options; do @@ -382,9 +386,12 @@ make_server_conf # create Apache configuration file make_apache_conf +<<<<<<< HEAD #update paths in utilities changeServerPath +======= +>>>>>>> warden-server-2.2 # crate symlinks from warden server bin directory to /usr/local/bin create_symlinks diff --git a/src/warden-server/sh/update.sh b/src/warden-server/sh/update.sh index f29fe545c943ff10a4386ce6cc7f3a984d234aba..2795a390fdd7938eb084ff4a38370477ce7d1d1a 100755 --- a/src/warden-server/sh/update.sh +++ b/src/warden-server/sh/update.sh @@ -354,7 +354,7 @@ $valid_strings" > $server_conf_file 2> $err; ret_val=`echo $?` #------------------------------------------------------------------------------- # list of used Perl modules -modules=(SOAP::Lite SOAP::Transport::HTTP DBI DBD::mysql Format::Human::Bytes Sys::Syslog File::Basename Net::CIDR::Lite DateTime Getopt::Std Switch IO::Socket::SSL MIME::Base64 Crypt::X509 Carp) +modules=(SOAP::Lite SOAP::Transport::HTTP DBI DBD::mysql Format::Human::Bytes Sys::Syslog File::Basename Net::CIDR::Lite DateTime Getopt::Std Switch IO::Socket::SSL MIME::Base64 Crypt::X509 Carp FindBin) # read input while getopts "d:Vh" options; do