| 268 | } |
| 269 | |
| 270 | function packager(module_path, target_path, cb) { |
| 271 | var base_folder = path.dirname(module_path) |
| 272 | var module_folder_name = path.basename(module_path) |
| 273 | var pkg = require(path.join(module_path, 'package.json')) |
| 274 | var pkg_name = `${module_folder_name}-v${pkg.version.replace(/\./g, '-')}.tar.gz` |
| 275 | var target_fullpath = path.join(target_path, pkg_name) |
| 276 | |
| 277 | var cmd = `tar zcf ${target_fullpath} -C ${base_folder} --transform 's,${module_folder_name},module,' ${module_folder_name}` |
| 278 | |
| 279 | Common.logMod(`Gziping ${module_path} to ${target_fullpath}`) |
| 280 | |
| 281 | var tar = exec(cmd, (err, sto, ste) => { |
| 282 | if (err) { |
| 283 | console.error(sto.toString().trim()) |
| 284 | console.error(ste.toString().trim()) |
| 285 | } |
| 286 | }) |
| 287 | |
| 288 | tar.on('close', function (code) { |
| 289 | cb(code == 0 ? null : code, { |
| 290 | package_name: pkg_name, |
| 291 | path: target_fullpath |
| 292 | }) |
| 293 | }) |
| 294 | } |
| 295 | |
| 296 | function publish(PM2, folder, cb) { |
| 297 | var target_folder = folder ? path.resolve(folder) : process.cwd() |