]>
git.proxmox.com Git - pve-manager.git/blob - bin/pveupdate
e9a230504df2d6a458f2c7aa695940924ca9ec25
12 use PVE
::RPCEnvironment
;
13 use PVE
::API2
::Subscription
;
16 initlog
('pvedailycron', 'daemon');
18 die "please run as root\n" if $> != 0;
20 $ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin';
22 PVE
::INotify
::inotify_init
();
24 my $rpcenv = PVE
::RPCEnvironment-
>init('cli');
26 $rpcenv->init_request();
27 $rpcenv->set_language($ENV{LANG
});
28 $rpcenv->set_user('root@pam');
30 my $nodename = PVE
::INotify
::nodename
();
32 eval { PVE
::API2
::Subscription-
>update({ node
=> $nodename }); };
34 syslog
('err', "update subscription info failed: $err");
37 my $dccfg = PVE
::Cluster
::cfs_read_file
('datacenter.cfg');
38 eval { PVE
::APLInfo
::update
($dccfg->{http_proxy
}); };
40 syslog
('err', "update appliance info failed - see /var/log/pveam.log for details");
43 if (my $info = PVE
::INotify
::read_file
('subscription')) {
44 # We assume that users with subscriptions want informations
46 if ($info->{status
} eq 'Active') {
47 eval { PVE
::API2
::APT-
>update_database({ node
=> $nodename, notify
=> 1, quiet
=> 1 }); };
49 syslog
('err', "update apt database failed: $err");
56 my $taskdir = "/var/log/pve/tasks";
57 my $filename = "$taskdir/index.1";
59 my $fh = IO
::File-
>new($filename, O_RDONLY
);
63 while (defined(my $line = <$fh>)) {
64 if ($line =~ m/^(\S+)(\s([0-9A-Za-z]{8})(\s(\S.*))?)?$/) {
73 # print "delete task older that $endtime\n" . localtime($endtime) . "\n";
80 return if $filename !~ m/^UPID:/;
83 if (($st = stat($filename)) && ($st->mtime < $endtime)) {
89 foreach my $subdir (qw(0 1 2 3 4 5 6 7 8 9 A B C D E F)) {
90 my $path = "$taskdir/$subdir";
95 syslog
('info', "cleanup removed $count task logs");