App-Pods2Site
view release on metacpan or search on metacpan
lib/App/Pods2Site.pm view on Meta::CPAN
my $podFinder = App::Pods2Site::PodFinder->new($args);
my ($sum, $partCounts) = $podFinder->getCounts();
die("No pods found!\n") unless $sum;
my $mainpagename = $args->getMainpage();
my $mainpage;
if ($mainpagename eq ':std')
{
$mainpage = $mainpagename;
}
else
{
foreach my $group (@{$podFinder->getGroups()})
{
foreach my $pod (@{$group->{pods}})
{
if ($pod->{name} eq $mainpagename)
{
$mainpage = $pod->{name};
$mainpage =~ s{::}{/}g;
$mainpage = "pod2html/$group->{name}/$mainpage.html";
last;
}
}
}
}
die("Failed to find the main page pod named '$mainpagename'\n") unless $mainpage;
my $counts = '';
foreach my $groupDef (@{$args->getGroupDefs()})
{
$counts .= ', ' if $counts;
$counts .= "$groupDef->{name}=$partCounts->{$groupDef->{name}}";
}
print "Found $sum pods ($counts).\n" if $args->isVerboseLevel(0);
print "Preparing pod work tree\n" if $args->isVerboseLevel(0);
my $podCopier = App::Pods2Site::PodCopier->new($args, $podFinder);
print "Prepared ", $podCopier->getCount(), " files\n" if $args->isVerboseLevel(0);
my $siteDir = $args->getSiteDir();
if (!-d $siteDir)
{
make_path($siteDir) || die("Failed to create sitedir '$siteDir': $!\n");
}
my $sitebuilder = $args->getSiteBuilder();
$sitebuilder->prepareCss($args);
print "Generating HTML from pods\n" if $args->isVerboseLevel(0);
my $pod2html = App::Pods2Site::Pod2HTML->new($args, $podCopier->getPodRoot(), $podCopier->getWorkGroups());
print "Generated ", $pod2html->getGenerated(), " documents (", $pod2html->getUptodate(), " up to date)\n" if $args->isVerboseLevel(0);
$sitebuilder->makeSite($args, $podCopier->getWorkGroups(), $partCounts, $mainpage);
$args->finish();
my $style = $args->getStyle();
my $updatedOrCreated = $args->getUpdating() ? 'updated' : 'created';
print "Site $updatedOrCreated in '$siteDir' using style '$style'.\n" if $args->isVerboseLevel(0);
chdir($cwd);
return 0;
}
1;
( run in 2.386 seconds using v1.01-cache-2.11-cpan-75ffa21a3d4 )