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(is_file($zipfile)){ unlink($zipfile); } $cwd = getcwd(); chdir($parent); $cmd = "zip -r '{$zipname}' '{$plugindirname}' {$exclude}"; system($cmd); chdir($cwd);