116 lines
3.0 KiB
Plaintext
116 lines
3.0 KiB
Plaintext
<?php
|
|
|
|
pake_desc('Run the unit tests');
|
|
pake_task('test');
|
|
|
|
pake_desc('Check the code for psr2 standards');
|
|
pake_task('sniff');
|
|
|
|
pake_desc('Run php-cs-fixer on the src directory');
|
|
pake_task('fixer');
|
|
|
|
pake_desc('Update the README with the latest command output');
|
|
pake_task('readme');
|
|
|
|
pake_desc('Build phar file');
|
|
pake_task('phar');
|
|
|
|
pake_desc('PHP Lint the src folder');
|
|
pake_task('lint');
|
|
|
|
pake_desc('Display the version');
|
|
pake_task('version');
|
|
|
|
pake_desc('Create the selfupdate version file');
|
|
pake_task('version_file');
|
|
|
|
pake_desc('Copy to ~/bin');
|
|
pake_task('mv');
|
|
|
|
pake_desc('Build the app for deployment');
|
|
pake_task('build', 'version', 'version_file', 'readme', 'lint', 'fixer', 'sniff', 'phar');
|
|
|
|
pake_alias('default', 'build');
|
|
|
|
function run_build() {}
|
|
|
|
function run_test() {
|
|
passthru("phpunit");
|
|
}
|
|
|
|
function run_version() {
|
|
$composer = json_decode(file_get_contents('composer.json'));
|
|
echo "\n Building Markdown Resume Builder version " . $composer->version . "\n";
|
|
echo str_repeat("=", 80) . "\n";
|
|
}
|
|
|
|
function run_version_file() {
|
|
$composer = json_decode(file_get_contents('composer.json'));
|
|
file_put_contents('./version', $composer->version);
|
|
}
|
|
|
|
function run_lint() {
|
|
echo "\n * Linting files\n";
|
|
passthru("./build/lint -R ./src");
|
|
}
|
|
|
|
function run_phar()
|
|
{
|
|
echo " * Construction phar and moving to ./bin/md2resume\n";
|
|
$command =
|
|
'rm -f ./bin/md2resume && rm -f ./bin/md2resume.phar &&'
|
|
. 'php -dphar.readonly=0 build/empir make ./bin/md2resume.phar working.php . --exclude="'
|
|
. '*.git/*|*.gitignore|*test*|*Tests*|*.md|*/doc/*|*.lock|*token.txt|pakefile'
|
|
. '|.*|build/*|*.markdown|*.phar|*LICENSE|*AUTHORS|*CHANGELOG|*.dist|*.tpl'
|
|
. '" && chmod a+x ./bin/md2resume.phar'
|
|
. ' && mv ./bin/md2resume.phar ./bin/md2resume';
|
|
passthru($command);
|
|
}
|
|
|
|
function run_sniff()
|
|
{
|
|
echo " * Checking files for PSR2\n";
|
|
passthru("phpcs -p --standard=PSR2 ./src/ ./working.php");
|
|
}
|
|
|
|
function run_fixer()
|
|
{
|
|
echo "\n * Running php-cs-fixer\n";
|
|
passthru(
|
|
"php-cs-fixer fix ./bin/resume2.php"
|
|
. " && php-cs-fixer fix ./src/Resume/Cli/"
|
|
. " && php-cs-fixer fix ./src/Resume/Command/"
|
|
);
|
|
}
|
|
|
|
function run_readme()
|
|
{
|
|
echo " * Updating README documentation\n";
|
|
$readme = file("README.md");
|
|
$help = explode("\n", shell_exec("php ./working.php list --no-interaction"));
|
|
|
|
$helpStart = $helpEnd = 0;
|
|
foreach ($readme as $lineNumber => $line) {
|
|
if (trim($line) == "## Help") {
|
|
$helpStart = $lineNumber;
|
|
continue;
|
|
}
|
|
if ($helpStart && (substr(trim($line), 0, 2) == "##")) {
|
|
$helpEnd = $lineNumber;
|
|
break;
|
|
}
|
|
}
|
|
|
|
$output = join(array_slice($readme, 0, $helpStart + 1));
|
|
$output .= "\n " . implode("\n ", $help) . "\n";
|
|
$output .= join(array_slice($readme, $helpEnd));
|
|
|
|
file_put_contents("README.md", $output);
|
|
}
|
|
|
|
function run_mv() {
|
|
exec('cp ./bin/md2resume ~/bin/md2resume');
|
|
}
|
|
|
|
/* End of pakefile */
|