Skip to content
Code-Schnipsel Gruppen Projekte
Commit ae0dba2d erstellt von Henning Leutz's avatar Henning Leutz :martial_arts_uniform:
Dateien durchsuchen

feat: php doc generation

Übergeordneter ae138833
No related branches found
No related tags found
Keine zugehörigen Merge Requests gefunden
{
"require": {
"phpdocumentor/phpdocumentor": "2.*"
}
}
Source Folder
------
In this folder are generation scripts which build the documentation.
<?php
$Curl = \curl_init();
\curl_setopt($Curl, CURLOPT_URL, 'https://update.quiqqer.com/packages.json');
\curl_setopt($Curl, CURLOPT_RETURNTRANSFER, true);
\curl_setopt($Curl, CURLOPT_CONNECTTIMEOUT, 10);
\curl_setopt($Curl, CURLOPT_TIMEOUT, 10);
$result = \curl_exec($Curl);
$result = \json_decode($result, true);
if (!isset($result['packages'])) {
echo 'Could not get packages.json from https://update.quiqqer.com'.PHP_EOL;
exit;
}
$dir = \dirname(\dirname(__FILE__));
$tmpDir = $dir.'/tmp';
$phpDoc = $dir.'/phpdoc';
$jsDoc = $dir.'/jsdoc';
if (!\file_exists($tmpDir)) {
\mkdir($tmpDir);
}
if (!\file_exists($phpDoc)) {
\mkdir($phpDoc);
} else {
\system('rm -rf '.$phpDoc);
\mkdir($phpDoc);
}
if (!\file_exists($jsDoc)) {
\mkdir($jsDoc);
} else {
\system('rm -rf '.$jsDoc);
\mkdir($jsDoc);
}
// fetch quiqqer packages
foreach ($result['packages'] as $package => $data) {
if (\strpos($package, 'quiqqer/') === false) {
continue;
}
if (!isset($data['dev-master'])
|| !isset($data['dev-master']['source']['type'])) {
echo "For package {$package} exist no master branch".PHP_EOL;
continue;
}
$type = $data['dev-master']['source']['type'];
if ($type !== 'git') {
echo "Missing git repo for {$package}".PHP_EOL;
continue;
}
\chdir($tmpDir);
$url = $data['dev-master']['source']['url'];
$group = explode('/', $package)[0];
$pkgName = explode('/', $package)[1];
echo PHP_EOL;
echo '### '.$package.PHP_EOL;
echo 'Fetching git repository'.PHP_EOL;
if (\file_exists($tmpDir.'/'.$package)) {
\system('git pull origin master');
} else {
\system('git clone '.$url.' '.$package);
}
}
echo PHP_EOL;
echo PHP_EOL;
echo 'Generate PHPDOC'.PHP_EOL;
chdir($dir);
system('vendor/bin/phpdoc -d "'.$tmpDir.'" -t "./phpdoc" --template="responsive"');
echo PHP_EOL;
echo PHP_EOL;
echo 'Done!'.PHP_EOL;
0% oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren