moodle_local_treestudyplan/build.php

54 lines
1 KiB
PHP

<?php
$plugin = new stdClass;
include('version.php');
$a = explode("_",$plugin->component,2);
$plugin->type = $a[0];
$plugin->name = $a[1];
$exclude_paths = [
"build", // dir for build zip files
"build/*",
"build.*",
"amd/src",
"amd/src/*",
".git",
".git/*",
".gitignore",
"*.zip",
];
// Determine some paths
$wd = realpath(dirname(__FILE__));
$parent = dirname($wd);
$plugindirname = basename($wd);
$builddir = $wd."/"."build";
$zipname = $builddir."/"."{$plugin->name}-{$plugin->version}.zip";
// create the exclude line
$exclude = "-x ";
foreach($exclude_paths as $x){
$exclude .= "'{$plugindirname}/{$x}' ";
}
if(!is_dir($builddir)){
mkdir($builddir);
if(!is_dir($builddir)){
print("Cannot access dir '{$builddir}' to store zip files\n");
exit(1);
}
}
if(file_exists($zipfile)){
print("Zip file '{$zipfile}' already exists. Exiting...\n");
exit(1);
}
$cwd = getcwd();
chdir($parent);
$cmd = "zip -r '{$zipname}' '{$plugindirname}' {$exclude}";
system($cmd);
chdir($cwd);