Revision history for Ubic 1.32 2011-07-07 * Fix ubic-admin setup again. Sorry. 1.31 2011-06-30 * fix ubic-admin setup - forgot to import IO::Handle (https://github.com/berekuk/Ubic/issues/13) 1.30 2011-06-28 * Ubic::AtomicFile for storing any file safely * POD improvements: - Ubic::Manual::Overview - Ubic::Service::SimpleDaemon now makes sense 1.29 2011-06-07 * ubic-admin script: fix crontab install when user doesn't have previous crontab * ubic script: fix 'ubic unknown-cmd' error reporting * watchdog improvements: - don't ask for status twice if service works - permanently set credentials instead of using forks for non-root services - log status obtained by status check, instead of just logging 'service is broken' * POD improvements: - Ubic::Manual::Intro - Ubic::Manual::Multiservices - various POD fixes 1.28 2011-04-21 * 'ubic status' always shows non-cached statuses if called by root * ubic.ping status now uses sane timeout when it checks service via http 1.27 2011-04-17 * ubic-admin script: - system-wide setup with one command 'ubic-admin setup' - home directory setup with the same 'ubic-admin setup' command - batch-mode with flag "--batch-mode" * configurable default_user (very helpful for home directory setup) * 'ubic status' changes: - real status will be checked and printed if current user is equal to service user - "Not a root, printing cached statuses" message removed; instead, 'ubic status' will print "[cached]" note for every cached status * ubic-ping service renamed to ubic.ping * ubic-watchdog and ubic-update now run as ubic.watchdog and ubic.update services instead of cron jobs; "ubic-watchdog ubic.watchdog" cron job is still recommended. * ubic-periodic script for recurrent job running 1.26 2011-04-10 Hotfix release (https://github.com/berekuk/Ubic/issues/12): * don't depend on Win32 modules * stale Win32 code removed (it didn't work anyway, so there is no point in packaging it in CPAN releases). 1.25 2011-03-31 * MacOSX support (and probably other POSIX systems too, including FreeBSD) * lots of refactoring: - Ubic::Daemon::OS modules family for OS-specific daemonization tasks - Ubic::Credentials::OS modules family for OS-specific user/group tasks 1.24 Wed Feb 23, 2011 * ubic-watchdog: change process name while checking specific service * check that uid change was successful before calling service action methods * default check_timeout() lowered from 10 minutes to 1 minute 1.23 Thu Dec 02, 2010 * ubic-ping: 404 message content fixed * ubic-watchdog: - set check_timeout alarm a bit earlier - another alarm before compiling services 1.22 Sun Nov 07, 2010 * Ubic::Multiservice: - default implementation of 'has_simple_service' method - POD improvements 1.21_01 Thu Oct 21, 2010 * fixed races in t/daemon.t 1.21 Tue Oct 19, 2010 * Ubic.pm: - set_ubic_dir() renamed to set_data_dir() (set_ubic_dir still remains in code for backward compatibility) - get_data_dir() and get_service_dir() methods - UBIC_LOCK_DIR, UBIC_TMP_DIR and UBIC_WATCHDOG_DIR env variables are deprecated; UBIC_DIR variable or set_data_dir() method should be used instead - bugfix in forked_call() method - it thrown "temp file not found after fork" exception occasionally in some cases - more consistent params validation in many methods * ubic-watchdog improvements: - separate non-blocking per-service lock (http://github.com/berekuk/ubic/issues#issue/1) - ubic-watchdog can now check selected set of services by name or glob - ubic-watchdog kills itself after $service->check_timeout() seconds * deprecated Ubic::Catalog module removed (it was renamed into Ubic::Multiservice long time ago) 1.20 Wed Oct 13, 2010 * documentation improvements 1.19 Tue Sep 14, 2010 * ubic-watchdog always uses Ubic->status interface to check service status 1.18 Tue Sep 14, 2010 * critical bugfix: ubic-watchdog correctly interpret extended statuses (thanks to Sawyer X for noticing this, see http://github.com/berekuk/Ubic/issues#issue/7) * Ubic::Lockf::Alarm moved to separate file, so PODs are now correct 1.17 Mon Sep 13, 2010 * Ubic::Run: recognize RedHat init script names (thanks to Sawyer X for the patch, see http://github.com/berekuk/Ubic/issues/#issue/5) * test improvements: - ubic-ping uses Config.pm to determine full perl binary path - memory-leak.t is more robust 1.16 Tue Sep 07, 2010 * Ubic::Daemon: - check_daemon() now returns proper Ubic::Daemon::Status object - don't log warning if daemon exited by sigterm - minor logging cleanup * Ubic::Service::SimpleDaemon returns daemon pid in status msg * test improvements: - using Test::TCP when testing ubic-ping - watchdog.t skips all tests if 'fakeroot' is not present * Ubic::Cmd: print 'running' result as good when it contains extended message 1.15 Mon Sep 06, 2010 * tests fixed to work under root user (http://github.com/berekuk/Ubic/issues#issue/4) 1.14 Thu Sep 02, 2010 * handle supplementary groups correctly * ubic-watchdog doesn't require root privileges anymore (unless service requires them, of course) * repo and bugtracker resources in META.yml * PodWeaver in dist.ini config, so all modules now have proper AUTHOR and COPYRIGHT sections * SimpleDaemon and Common services accept arrayref as 'group' value 1.13 Wed Sep 01, 2010 * Perl6::Slurp removed from dependencies * Ubic::Manual::FAQ now is actually added * group() method in services: - services can specify group(s) from which service should run, analogous to user() method - ubic will call setgid() before invoking any service methods - default group list consists only of main user's group, as returned by getpwnam; supplementary groups are not supported yet 1.12 Thu Aug 26, 2010 * Ubic::Manual::FAQ with first 2 questions * Ubic::Log documentation updated according to 1.11 changes 1.11 Thu Aug 26, 2010 * ubic-watchdog prints errors to stdout only 1.10 Wed Aug 18, 2010 * security bugfix: store all statuses in JSON format 1.09 Thu Aug 12, 2010 * bugfix: custom commands print 'ok' using green color and exit with zero code when there are not errors 1.08 Tue Aug 03, 2010 * bugfix: has_service for nested unexistent services * debian/ dir in distribution too 1.07 Fri Jul 30, 2010 * localize $@ in destructors * Ubic::Cmd refactoring, more consistent console results printing 1.06 Fri Jun 18, 2010 * using $Config{perlpath} in tests - should fix CPAN tests * Dist::Zilla 1.05 Sun Jun 13, 2010 MANIFEST up-to-date. Small POD improvements. 1.04 Tue May 25, 2010 - important bugfix: service locks fixed! - Ubic::Daemon: join all bin args if bin is arrayref. - Remove old configs from old yandex-ubic package. 1.02 Tue May 4, 2010 Remove old configs from old yandex-ubic package. 1.01 Thu Apr 29, 2010 Just fixing debian dependency issues. 1.00 Wed Apr 28, 2010 First opensource release.