コード例 #1
0
ファイル: app.py プロジェクト: vallantis/bench
def remove_app(app, bench_path='.'):
    if app not in get_apps(bench_path):
        print("No app named {0}".format(app))
        sys.exit(1)

    app_path = os.path.join(bench_path, 'apps', app)
    site_path = os.path.join(bench_path, 'sites')
    pip = os.path.join(bench_path, 'env', 'bin', 'pip')

    for site in os.listdir(site_path):
        req_file = os.path.join(site_path, site, 'site_config.json')
        if os.path.exists(req_file):
            out = subprocess.check_output(
                ["bench", "--site", site, "list-apps"],
                cwd=bench_path).decode('utf-8')
            if re.search(r'\b' + app + r'\b', out):
                print("Cannot remove, app is installed on site: {0}".format(
                    site))
                sys.exit(1)

    exec_cmd("{0} uninstall -y {1}".format(pip, app), cwd=bench_path)
    remove_from_appstxt(app, bench_path)
    shutil.rmtree(app_path)
    run_frappe_cmd("build", bench_path=bench_path)
    if get_config(bench_path).get('restart_supervisor_on_update'):
        restart_supervisor_processes(bench_path=bench_path)
    if get_config(bench_path).get('restart_systemd_on_update'):
        restart_systemd_processes(bench_path=bench_path)
コード例 #2
0
def _update(pull=False,
            patch=False,
            build=False,
            update_bench=False,
            auto=False,
            restart_supervisor=False,
            requirements=False,
            no_backup=False,
            bench_path='.',
            force=False,
            reset=False):
    conf = get_config(bench_path=bench_path)
    version_upgrade = is_version_upgrade(bench_path=bench_path)

    if version_upgrade[0] or (not version_upgrade[0] and force):
        validate_upgrade(version_upgrade[1],
                         version_upgrade[2],
                         bench_path=bench_path)

    before_update(bench_path=bench_path, requirements=requirements)

    if pull:
        pull_all_apps(bench_path=bench_path, reset=reset)

    if requirements:
        update_requirements(bench_path=bench_path)
        update_npm_packages(bench_path=bench_path)

    if version_upgrade[0] or (not version_upgrade[0] and force):
        pre_upgrade(version_upgrade[1],
                    version_upgrade[2],
                    bench_path=bench_path)
        import bench.utils, bench.app
        print('Reloading bench...')
        reload(bench.utils)
        reload(bench.app)

    if patch:
        if not no_backup:
            print('Backing up sites...')
            backup_all_sites(bench_path=bench_path)

        print('Patching sites...')
        patch_sites(bench_path=bench_path)
    if build:
        build_assets(bench_path=bench_path)
    if version_upgrade[0] or (not version_upgrade[0] and force):
        post_upgrade(version_upgrade[1],
                     version_upgrade[2],
                     bench_path=bench_path)
    if restart_supervisor or conf.get('restart_supervisor_on_update'):
        restart_supervisor_processes(bench_path=bench_path)

    print("_" * 80)
    print(
        "Bench: Deployment tool for Frappe and ERPNext (https://erpnext.org).")
    print(
        "Open source depends on your contributions, so please contribute bug reports, patches, fixes or cash and be a part of the community"
    )
    print()
コード例 #3
0
ファイル: app.py プロジェクト: vallantis/bench
def install_app(app,
                bench_path=".",
                verbose=False,
                no_cache=False,
                restart_bench=True,
                skip_assets=False):
    print('\n{0}Installing {1}{2}'.format(color.yellow, app, color.nc))
    logger.log("installing {}".format(app))

    pip_path = os.path.join(bench_path, "env", "bin", "pip")
    quiet_flag = "-q" if not verbose else ""
    app_path = os.path.join(bench_path, "apps", app)
    cache_flag = "--no-cache-dir" if no_cache else ""

    exec_cmd("{pip} install {quiet} -U -e {app} {no_cache}".format(
        pip=pip_path, quiet=quiet_flag, app=app_path, no_cache=cache_flag))

    if os.path.exists(os.path.join(app_path, 'package.json')):
        exec_cmd("yarn install", cwd=app_path)

    add_to_appstxt(app, bench_path=bench_path)

    if not skip_assets:
        build_assets(bench_path=bench_path, app=app)

    if restart_bench:
        conf = get_config(bench_path=bench_path)

        if conf.get('restart_supervisor_on_update'):
            restart_supervisor_processes(bench_path=bench_path)
        if conf.get('restart_systemd_on_update'):
            restart_systemd_processes(bench_path=bench_path)
コード例 #4
0
ファイル: utils.py プロジェクト: yakirtza/bench
def restart(web, supervisor, systemd):
    from bench.utils import restart_supervisor_processes, restart_systemd_processes
    from bench.config.common_site_config import get_config
    if get_config('.').get('restart_supervisor_on_update') or supervisor:
        restart_supervisor_processes(bench_path='.', web_workers=web)
    if get_config('.').get('restart_systemd_on_update') or systemd:
        restart_systemd_processes(bench_path='.', web_workers=web)
コード例 #5
0
def _update(pull=False,
            patch=False,
            build=False,
            update_bench=False,
            auto=False,
            restart_supervisor=False,
            requirements=False,
            no_backup=False,
            upgrade=False,
            bench_path='.',
            force=False,
            reset=False,
            force_frappe=False,
            force_erpnext=False,
            force_frappe_erpnext=False):
    conf = get_config(bench_path=bench_path)
    version_upgrade = is_version_upgrade(bench_path=bench_path)

    # if version_upgrade[0] and not upgrade:
    #     raise Exception("Major Version Upgrade")
    #
    # if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
    #     validate_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)

    before_update(bench_path=bench_path, requirements=requirements)

    if pull:
        pull_all_apps(bench_path=bench_path,
                      reset=reset,
                      force_frappe=force_frappe,
                      force_erpnext=force_erpnext,
                      force_frappe_erpnext=force_frappe_erpnext)

    # if requirements:
    #     update_requirements(bench_path=bench_path)

    if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
        pre_upgrade(version_upgrade[1],
                    version_upgrade[2],
                    bench_path=bench_path)
        import bench.utils, bench.app
        reload(bench.utils)
        reload(bench.app)

    if patch:
        if not no_backup:
            backup_all_sites(bench_path=bench_path)
        patch_sites(bench_path=bench_path)
    if build:
        build_assets(bench_path=bench_path)
    if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
        post_upgrade(version_upgrade[1],
                     version_upgrade[2],
                     bench_path=bench_path)
    if restart_supervisor or conf.get('restart_supervisor_on_update'):
        restart_supervisor_processes(bench_path=bench_path)

    print "_" * 80
    print "Bench: Open source installer + admin for Frappe and ERPNext (https://erpnext.com)"
    print
コード例 #6
0
ファイル: app.py プロジェクト: Kipngetich33/bench-test
def install_app(app,
                bench_path=".",
                verbose=False,
                no_cache=False,
                postprocess=True,
                skip_assets=False):
    logger.info("installing {}".format(app))

    pip_path = os.path.join(bench_path, "env", "bin", "pip")
    quiet_flag = "-q" if not verbose else ""
    app_path = os.path.join(bench_path, "apps", app)
    cache_flag = "--no-cache-dir" if no_cache else ""

    exec_cmd("{pip} install {quiet} -U -e {app} {no_cache}".format(
        pip=pip_path, quiet=quiet_flag, app=app_path, no_cache=cache_flag))
    add_to_appstxt(app, bench_path=bench_path)

    if postprocess:
        if not skip_assets:
            build_assets(bench_path=bench_path, app=app)
        conf = get_config(bench_path=bench_path)

        if conf.get('restart_supervisor_on_update'):
            restart_supervisor_processes(bench_path=bench_path)
        if conf.get('restart_systemd_on_update'):
            restart_systemd_processes(bench_path=bench_path)
コード例 #7
0
ファイル: utils.py プロジェクト: Nayar/bench
def restart(web, supervisor, systemd):
	"Restart supervisor processes or systemd units"
	from bench.utils import restart_supervisor_processes, restart_systemd_processes
	from bench.config.common_site_config import get_config
	if get_config('.').get('restart_supervisor_on_update') or supervisor:
		restart_supervisor_processes(bench_path='.', web_workers=web)
	if get_config('.').get('restart_systemd_on_update') or systemd:
		restart_systemd_processes(bench_path='.', web_workers=web)
コード例 #8
0
ファイル: update.py プロジェクト: frappe/bench
def _update(pull=False, patch=False, build=False, update_bench=False, auto=False, restart_supervisor=False,
		restart_systemd=False, requirements=False, no_backup=False, bench_path='.', force=False, reset=False):
	conf = get_config(bench_path=bench_path)
	version_upgrade = is_version_upgrade(bench_path=bench_path)

	if version_upgrade[0] or (not version_upgrade[0] and force):
		validate_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)

	before_update(bench_path=bench_path, requirements=requirements)

	if pull:
		pull_all_apps(bench_path=bench_path, reset=reset)

	if requirements:
		update_requirements(bench_path=bench_path)
		update_node_packages(bench_path=bench_path)

	if version_upgrade[0] or (not version_upgrade[0] and force):
		pre_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)
		import bench.utils, bench.app
		print('Reloading bench...')
		if sys.version_info >= (3, 4):
			import importlib
			importlib.reload(bench.utils)
			importlib.reload(bench.app)
		else:
			reload(bench.utils)
			reload(bench.app)

	if patch:
		if not no_backup:
			print('Backing up sites...')
			backup_all_sites(bench_path=bench_path)

		print('Patching sites...')
		patch_sites(bench_path=bench_path)
	if build:
		build_assets(bench_path=bench_path)
	if version_upgrade[0] or (not version_upgrade[0] and force):
		post_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)
	if restart_supervisor or conf.get('restart_supervisor_on_update'):
		restart_supervisor_processes(bench_path=bench_path)
	if restart_systemd or conf.get('restart_systemd_on_update'):
		restart_systemd_processes(bench_path=bench_path)

	print("_"*80)
	print("Bench: Deployment tool for Frappe and ERPNext (https://erpnext.org).")
	print("Open source depends on your contributions, so please contribute bug reports, patches, fixes or cash and be a part of the community")
	print()
コード例 #9
0
ファイル: update.py プロジェクト: ckosiegbu/bench
def _update(pull=False, patch=False, build=False, update_bench=False, auto=False, restart_supervisor=False, requirements=False, no_backup=False, upgrade=False, bench_path='.', force=False, reset=False):
	conf = get_config(bench_path=bench_path)
	version_upgrade = is_version_upgrade(bench_path=bench_path)

	if version_upgrade[0] and not upgrade:
		raise Exception("Major Version Upgrade")

	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		validate_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)

	before_update(bench_path=bench_path, requirements=requirements)

	if pull:
		pull_all_apps(bench_path=bench_path, reset=reset)

	if requirements:
		print 'Updating Python libraries...'
		update_requirements(bench_path=bench_path)

	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		pre_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)
		import bench.utils, bench.app
		print 'Reloading bench...'
		reload(bench.utils)
		reload(bench.app)

	if patch:
		if not no_backup:
			print 'Backing up sites...'
			backup_all_sites(bench_path=bench_path)

		print 'Patching sites...'
		patch_sites(bench_path=bench_path)
	if build:
		build_assets(bench_path=bench_path)
	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		post_upgrade(version_upgrade[1], version_upgrade[2], bench_path=bench_path)
	if restart_supervisor or conf.get('restart_supervisor_on_update'):
		restart_supervisor_processes(bench_path=bench_path)

	print "_"*80
	print "Bench: Deployment tool for Frappe and ERPNext (https://erpnext.org)."
	print "Open source depends on your contributions, so please contribute bug reports, patches, fixes or cash and be a part of the community"
	print
コード例 #10
0
ファイル: update.py プロジェクト: Dattatech/Test-Bench
def _update(pull=False, patch=False, build=False, bench=False, auto=False, restart_supervisor=False, requirements=False, no_backup=False, upgrade=False, bench_path='.', force=False):
	conf = get_config(bench=bench_path)
	version_upgrade = is_version_upgrade(bench=bench_path)

	if version_upgrade[0] and not upgrade:
		raise Exception("Major Version Upgrade")

	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		validate_upgrade(version_upgrade[1], version_upgrade[2], bench=bench_path)

	before_update(bench=bench_path, requirements=requirements)

	if pull:
		pull_all_apps(bench=bench_path)

	if requirements:
		update_requirements(bench=bench_path)

	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		pre_upgrade(version_upgrade[1], version_upgrade[2], bench=bench_path)
		import utils, app
		reload(utils)
		reload(app)

	if patch:
		if not no_backup:
			backup_all_sites(bench=bench_path)
		patch_sites(bench=bench_path)
	if build:
		build_assets(bench=bench_path)
	if upgrade and (version_upgrade[0] or (not version_upgrade[0] and force)):
		post_upgrade(version_upgrade[1], version_upgrade[2], bench=bench_path)
	if restart_supervisor or conf.get('restart_supervisor_on_update'):
		restart_supervisor_processes(bench=bench_path)

	print "_"*80
	print "Bench: Open source installer + admin for Frappe and ERPNext (https://erpnext.com)"
	print
コード例 #11
0
ファイル: utils.py プロジェクト: indictranstech/osmosis-bench
def restart():
    "Restart supervisor processes"
    from bench.utils import restart_supervisor_processes
    restart_supervisor_processes()
コード例 #12
0
ファイル: utils.py プロジェクト: Dattatech/Test-Bench
def restart():
	"Restart supervisor processes"
	from bench.utils import restart_supervisor_processes
	restart_supervisor_processes()
コード例 #13
0
ファイル: utils.py プロジェクト: lodhabhagya/bench-repo
def restart(web):
    "Restart supervisor processes"
    from bench.utils import restart_supervisor_processes
    restart_supervisor_processes(bench_path='.', web_workers=web)
コード例 #14
0
ファイル: utils.py プロジェクト: ESS-LLP/bench
def restart(web):
	"Restart supervisor processes"
	from bench.utils import restart_supervisor_processes
	restart_supervisor_processes(bench_path='.', web_workers=web)