Exemple #1
0
def setup_bundle(args):
    """
    step 1
    outputs a .bundle file used as config for building
    """
    from pybundler.build import bundle
    from pybundler.build import build

    # fix --name
    if args.name == "":
        args.name = basename(args.target_path)
    # fix --toplevel
    if args.toplevel == "":
        args.toplevel = args.name

    bundle_file = join(args.workdir, args.name) + ".bundle"
    if isfile(bundle_file):
        if args.clean:
            os.remove(bundle_file)
        else:
            ans = raw_input("pybundler detected a previous bundle. overwrite? (Y/n) ")
            if str(ans).lower() == "y":
                os.remove(bundle_file)
            else:
                print "build terminated."
                sys.exit(0)

    build_config = bundle(args.target_path,
                          bundle_file, args.toplevel,
                          args.name, args.workdir,
                          args.exn, args.ext, args.exf)

    if args.build:
        final_file_path = join(args.workdir, build_config['project_name']) + ".pkg"
        build(build_config, final_file_path, args.workdir)
Exemple #2
0
def setup_build(args):
    """
    step 2
    outputs a .sh/.bash file to be distributed
    """
    from pybundler.build import build

    with open(args.target_path, 'r') as f:
        build_config = json.load(f)

    if args.workdir == "":
        args.workdir = build_config["__workdir"]
    final_file_path = join(args.workdir, build_config['project_name']) + ".pkg"

    build(build_config, final_file_path, args.workdir)