/** * Build tar gzip archive file. * * @return true|false Whether successful or not. */ public function build() { // Patch config file first $this->patchConfigFile(); // Patch package.xml file $files = $this->patchPackageFile(); // Create tgz archive $archiver = new Archiver($this->name . '-' . $this->version . '.tgz'); // add all files defined in package.xml file foreach ($files as $file) { $archiver->addFile($file, str_replace($this->packageDir, '', $file)); } // add package.xml $archiver->addFile($this->packageFile, str_replace($this->packageDir, '', $this->packageFile)); $archiver->compress(); $this->log[] = $this->name . '-' . $this->version . '.tgz created'; return implode($this->log, "\n"); }