Skip to content

Commit

Permalink
Showing 3 changed files with 18 additions and 21 deletions.
8 changes: 3 additions & 5 deletions bench/app.py
Original file line number Diff line number Diff line change
@@ -181,8 +181,7 @@ def install(self, skip_assets=False, verbose=True):

@step(title="Uninstalling App {repo}", success="App {repo} Uninstalled")
def uninstall(self):
env_python = get_env_cmd("python", bench_path=self.bench.name)
self.bench.run(f"{env_python} -m pip uninstall -y {self.repo}")
self.bench.run(f"{self.bench.python} -m pip uninstall -y {self.repo}")


def add_to_appstxt(app, bench_path="."):
@@ -355,12 +354,11 @@ def install_app(

bench = Bench(bench_path)
conf = bench.conf
python_path = get_env_cmd("python", bench_path=bench_path)
quiet_flag = "-q" if not verbose else ""
quiet_flag = "" if verbose else "-q"
app_path = os.path.realpath(os.path.join(bench_path, "apps", app))
cache_flag = "--no-cache-dir" if no_cache else ""

bench.run(f"{python_path} -m pip install {quiet_flag} -U -e {app_path} {cache_flag}")
bench.run(f"{bench.python} -m pip install {quiet_flag} -U -e {app_path} {cache_flag}")

if conf.get("developer_mode"):
install_python_dev_dependencies(apps=app)
25 changes: 13 additions & 12 deletions bench/bench.py
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@
import shutil
import sys
import logging
from typing import MutableSequence, TYPE_CHECKING
from typing import List, MutableSequence, TYPE_CHECKING

# imports - module imports
import bench
@@ -63,26 +63,29 @@ def __init__(self, path):
self.excluded_apps_txt = os.path.join(self.name, "sites", "excluded_apps.txt")

@property
def shallow_clone(self):
def python(self) -> str:
return get_env_cmd("python", bench_path=self.name)

@property
def shallow_clone(self) -> bool:
config = self.conf

if config:
if config.get("release_bench") or not config.get("shallow_clone"):
return False

if get_git_version() > 1.9:
return True
return get_git_version() > 1.9

@property
def excluded_apps(self):
def excluded_apps(self) -> List:
try:
with open(self.excluded_apps_txt) as f:
return f.read().strip().split("\n")
except Exception:
return []

@property
def sites(self):
def sites(self) -> List:
return [
path
for path in os.listdir(os.path.join(self.name, "sites"))
@@ -146,11 +149,10 @@ def sync(self):
return f.write("\n".join(self.apps))

def initialize_apps(self):
cmd = f"{get_env_cmd('python', bench_path=self.bench.name)} -m pip freeze"
is_installed = lambda app: app in installed_packages

try:
installed_packages = get_cmd_output(cmd=cmd, cwd=self.bench.name)
installed_packages = get_cmd_output(f"{self.bench.python} -m pip freeze", cwd=self.bench.name)
except Exception:
self.apps = []
return
@@ -232,16 +234,15 @@ def env(self, python="python3"):
- install frappe python dependencies
"""
frappe = os.path.join(self.bench.name, "apps", "frappe")
env_python = get_env_cmd("python", bench_path=self.bench.name)
virtualenv = get_venv_path()

if not os.path.exists(env_python):
if not os.path.exists(self.bench.python):
self.run(f"{virtualenv} -q env -p {python}")

self.run(f"{env_python} -m pip install -q -U pip")
self.run(f"{self.bench.python} -m pip install -U pip")

if os.path.exists(frappe):
self.run(f"{env_python} -m pip install -q -U -e {frappe}")
self.run(f"{self.bench.python} -m pip install -U -e {frappe}")

@step(title="Setting Up Bench Config", success="Bench Config Set Up")
def config(self, redis=True, procfile=True):
6 changes: 2 additions & 4 deletions bench/utils/bench.py
Original file line number Diff line number Diff line change
@@ -77,7 +77,6 @@ def update_python_packages(bench_path="."):
from bench.bench import Bench

bench = Bench(bench_path)
env_py = get_env_cmd("python", bench_path=bench.name)

apps = [app for app in bench.apps if app not in bench.excluded_apps]
apps.remove("frappe")
@@ -89,7 +88,7 @@ def update_python_packages(bench_path="."):
for app in apps:
app_path = os.path.join(bench_path, "apps", app)
click.secho(f"\nInstalling python dependencies for {app}", fg="yellow")
bench.run(f"{env_py} -m pip install -q -U -e {app_path}")
bench.run(f"{bench.python} -m pip install -U -e {app_path}")


def update_node_packages(bench_path="."):
@@ -117,13 +116,12 @@ def install_python_dev_dependencies(bench_path=".", apps=None):
elif apps is None:
apps = [app for app in bench.apps if app not in bench.excluded_apps]

env_py = get_env_cmd("python")
for app in apps:
app_path = os.path.join(bench_path, "apps", app)
dev_requirements_path = os.path.join(app_path, "dev-requirements.txt")

if os.path.exists(dev_requirements_path):
bench.run(f"{env_py} -m pip install -q -r {dev_requirements_path}")
bench.run(f"{bench.python} -m pip install -r {dev_requirements_path}")


def update_yarn_packages(bench_path="."):

0 comments on commit d63a988

Please sign in to comment.