Revision 469 (by ahitrov, 2014/12/24 13:57:26) |
Moving Contenido to Apache 2
|
use strict;
# ���� �������� ������ ����������� ����������
# �� ��������� ������
sub activity {
my $MAXIMUM_ACTIVITY = 10;
my $TOPS = `uptime`;
if ($TOPS =~ /load averages: ([\d\.]+), ([\d\.]+), ([\d\.]+)/)
{
my $CA = $2;
$CA = $1 if ($CA < $1);
if (($CA) > $MAXIMUM_ACTIVITY)
{
return 0;
}
}
return 1;
}
# ���������� pid'� ��������
sub save_pid {
my $FILE = shift;
open F, ">".$FILE.".pid" || die "�� ���� ������� pid ���� ".$FILE.".pid \n";
print F $$;
close F || die "�� ���� ������� pid ���� ".$FILE.".pid \n";
}
# �������� ����������� ���������� ���������
# �� ��� ��� ������
sub check_pid {
my $FILE = shift || __FILE__;
if (-s $FILE.".pid") {
open F, "<".$FILE.".pid" || die "�� ���� ������� pid ���� ".$FILE.".pid \n";
my $pid = (<F>)[0];
chomp $pid;
close F || die "�� ���� ������� pid ���� ".$FILE.".pid \n";
if (kill 0 => $pid) {
warn "��������� ��� �������� -> �����\n";
exit;
} else {
&save_pid($FILE);
}
} else {
&save_pid($FILE);
}
}
1;
Небольшая справка по веткам
cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.
koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.
utf8 – актуальная ветка, заточенная под UTF-8.
Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.