Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 24 additions & 17 deletions zulip/zulip/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import os
import platform
import random
import subprocess
import sys
import time
import traceback
Expand Down Expand Up @@ -293,24 +294,30 @@ def generate_option_group(parser: optparse.OptionParser, prefix: str = "") -> op
def init_from_options(options: Any, client: Optional[str] = None) -> "Client":
if getattr(options, "provision", False):
requirements_path = os.path.abspath(os.path.join(sys.path[0], "requirements.txt"))
try:
import pip
except ImportError:
traceback.print_exc()
print(
"Module `pip` is not installed. To install `pip`, follow the instructions here: "
"https://pip.pypa.io/en/stable/installing/"
)
sys.exit(1)
if not pip.main(["install", "--upgrade", "--requirement", requirements_path]):
print(
"{color_green}You successfully provisioned the dependencies for {script}.{end_color}".format(
color_green="\033[92m",
end_color="\033[0m",
script=os.path.splitext(os.path.basename(sys.argv[0]))[0],
)
current_python_executable = os.path.abspath(sys.executable)
provisioning_exit_code = subprocess.call(
[
current_python_executable,
"-m",
"pip",
"install",
"--upgrade",
"--requirement",
requirements_path,
]
)
provisioning_succeeded = provisioning_exit_code == 0
color_green = "\033[92m"
color_red = "\033[91m"
print(
"{text_color}Dependency provisioning {status_text} for {script}.{end_color}".format(
text_color=color_green if provisioning_succeeded else color_red,
end_color="\033[0m",
script=os.path.splitext(os.path.basename(sys.argv[0]))[0],
status_text="succeeded" if provisioning_succeeded else "failed",
)
sys.exit(0)
)
sys.exit(provisioning_exit_code)

if options.zulip_client is not None:
client = options.zulip_client
Expand Down
1 change: 0 additions & 1 deletion zulip_bots/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@
],
},
install_requires=[
"pip",
"zulip",
"html2text",
"lxml",
Expand Down