mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
@@ -1,2 +1,3 @@
|
||||
django-bower
|
||||
django-debug-toolbar
|
||||
packaging
|
||||
|
||||
@@ -22,13 +22,7 @@ from django.utils.six.moves import input
|
||||
|
||||
from modoboa.core.commands import Command
|
||||
from modoboa.lib.api_client import ModoAPIClient
|
||||
|
||||
try:
|
||||
import pip
|
||||
except ImportError:
|
||||
sys.stderr.write("Error: pip is required to install extensions.\n")
|
||||
sys.exit(2)
|
||||
|
||||
from modoboa.lib.sysutils import exec_cmd
|
||||
|
||||
DBCONN_TPL = """
|
||||
'{{ conn_name }}': {
|
||||
@@ -226,9 +220,12 @@ class DeployCommand(Command):
|
||||
extensions = [(extension, extension.replace("-", "_"))
|
||||
for extension in extensions]
|
||||
if not parsed_args.dont_install_extensions:
|
||||
pip_args = (
|
||||
["install"] + [extension[0] for extension in extensions])
|
||||
pip.main(pip_args)
|
||||
cmd = (
|
||||
sys.executable +
|
||||
" -m pip install " +
|
||||
" ".join([extension[0] for extension in extensions])
|
||||
)
|
||||
exec_cmd(cmd, capture_output=False)
|
||||
extra_settings = self.find_extra_settings(extensions)
|
||||
extensions = [extension[1] for extension in extensions]
|
||||
|
||||
|
||||
@@ -13,21 +13,21 @@ from __future__ import unicode_literals
|
||||
import io
|
||||
from os import path
|
||||
|
||||
from pip.req import parse_requirements
|
||||
from packaging.requirements import Requirement
|
||||
from setuptools import find_packages, setup
|
||||
|
||||
|
||||
def get_requirements(requirements_file):
|
||||
"""Use pip to parse requirements file."""
|
||||
"""Parse requirements file."""
|
||||
requirements = []
|
||||
if path.isfile(requirements_file):
|
||||
for req in parse_requirements(requirements_file, session="hack"):
|
||||
# check markers, such as
|
||||
#
|
||||
# rope_py3k ; python_version >= '3.0'
|
||||
#
|
||||
if req.match_markers():
|
||||
requirements.append(str(req.req))
|
||||
with io.open(requirements_file, encoding="utf-8") as fp:
|
||||
for line in fp:
|
||||
if line.startswith("#") or line.strip() == "":
|
||||
continue
|
||||
req = Requirement(line)
|
||||
if req.marker is None or req.marker.evaluate():
|
||||
requirements.append('%s%s' % (req.name, req.specifier))
|
||||
return requirements
|
||||
|
||||
|
||||
|
||||
@@ -5,3 +5,4 @@ testfixtures==4.7.0
|
||||
tox
|
||||
psycopg2-binary>=2.7.4
|
||||
mysqlclient>=1.3.3
|
||||
packaging
|
||||
|
||||
Reference in New Issue
Block a user