import os
import shutil
import sys
import subprocess
def run_cmd(cmd, execution_path=None):
proc = subprocess.Popen(cmd, stdout=subprocess.PIPE,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE,
cwd=execution_path)
stdout, stderr = proc.communicate(timeout=120)
if proc.returncode != 0:
print(stdout.decode(), stderr.decode())
raise Exception(stderr.decode())
target_files = [
"lib",
"bin",
"package.json",
"LICENSE",
"README.md",
"README.OpenSource",
"SECURITY.md",
"ThirdPartyNoticeText.txt"
]
def run_pack(execution_path, dest_out_path):
copy_cmd = ["cp", "-r"] + target_files + [dest_out_path]
run_cmd(copy_cmd, execution_path)
run_cmd(["npm", "pack"], dest_out_path)
def main(args):
source_path = args[0]
dest_out_path = args[1]
run_pack(source_path, dest_out_path)
if __name__ == '__main__':
main(sys.argv[1:])