7
|
1 #!/usr/bin/perl -w
|
|
2 use lib '.';
|
|
3 use config;
|
|
4 use config::bootstrap;
|
|
5 use strict;
|
14
|
6 use URI;
|
|
7
|
7
|
8
|
|
9 use IMPL::require {
|
|
10 DoxygenTask => 'Benzin::Doxygen::MakedocTask',
|
14
|
11 HG => 'Benzin::SCC::Mercurial',
|
|
12 Config => 'IMPL::Config'
|
7
|
13 };
|
|
14
|
14
|
15 my @repos = (
|
|
16 {
|
15
|
17 doxyfile => 'doxyfile',
|
14
|
18 src => 'https://hg.implab.org/pub/ImplabNet'
|
|
19 },
|
|
20 {
|
15
|
21 doxyfile => 'Solution/doxyfile',
|
14
|
22 src => 'https://hg.implab.org/private/Pallada.PoiskAvia'
|
15
|
23 },
|
|
24 {
|
|
25 doxyfile => 'doxyfile',
|
|
26 src => 'https://hg.implab.org/private/Pallada.Kospas'
|
14
|
27 }
|
7
|
28 );
|
|
29
|
14
|
30 my $base = Config->AppDir('mercurial-data');
|
|
31
|
|
32 foreach my $desc (@repos) {
|
|
33 my $name = pop (@{[split /\//, $desc->{src}]});
|
|
34 print "processing: $name\n";
|
|
35 my $dir = File::Spec->catdir($base,$name);
|
15
|
36 my $update = 1;
|
14
|
37 if (-d $dir) {
|
|
38
|
|
39 my $repo = HG->new($dir,\%config::hgSettings);
|
|
40 my $income = $repo->Income();
|
|
41 if (@$income) {
|
|
42 print "donwloading changes\n";
|
|
43 $repo->Pull(['-u']);
|
|
44 $update = 1;
|
|
45 }
|
|
46 } else {
|
|
47 print "clonning $name to $dir\n";
|
|
48 my $repo = HG->Clone($desc->{src},$dir,[],\%config::hgSettings);
|
|
49 $update = 1;
|
|
50 }
|
|
51
|
|
52 if ($update) {
|
15
|
53 print "updating $name\n";
|
14
|
54 my $task = DoxygenTask->new(
|
|
55 doxyfile => File::Spec->catdir($dir,$desc->{doxyfile}),
|
|
56 makedoc => 1,
|
|
57 dataDirPath => Config->AppDir('doxygen-data', $name),
|
|
58 connection => $config::doxConnection
|
|
59 );
|
|
60
|
|
61 $task->DoWork();
|
|
62 } else {
|
|
63 print "$name is up to date\n";
|
|
64 }
|
|
65 }
|
|
66
|
|
67 #xmlDocPath => '/home/sergey/projects/Dusel/_doc/xml',
|
|
68 # collectionName => 'dusel',
|
|
69 # doxyfile => '/home/sergey/projects/Dusel/_doc/doxyfile',
|
|
70 # dataDirPath => File::Spec->catdir($base,'doxygen-data','dusel'),
|
|
71 # connection => $doxConnection,
|
|
72 # language => 'csharp'
|
|
73
|
|
74 #my $task = DoxygenTask->new(
|
|
75 # %config::doxSource
|
|
76 #);
|
|
77
|
|
78 #$task->DoWork();
|
7
|
79
|
|
80 print "completed\n"; |