a
This commit is contained in:
parent
b5256d1931
commit
b6da0e3c93
7 changed files with 28 additions and 6 deletions
|
@ -53,7 +53,7 @@ def setup(path, auth_name, auth_seed, auth_realm,
|
|||
dst=os.path.join(repo_name, "ucloud_common", "etcd3_wrapper"),
|
||||
)
|
||||
|
||||
install_available(os.path.join(repo_name, "Pipfile"))
|
||||
install_available(repo_name)
|
||||
|
||||
# Create virtualenv with site-packages enabled and install all dependencies
|
||||
sp.check_output(['pipenv','--site-packages', '--python', '3'], cwd=repo_name)
|
||||
|
|
|
@ -35,7 +35,7 @@ def setup(path, base_dir, file_prefix, etcd_url):
|
|||
# Clone etcd wrapper
|
||||
clone_etcd_wrapper(path=repo_name)
|
||||
|
||||
install_available(os.path.join(repo_name, "Pipfile"))
|
||||
install_available(repo_name)
|
||||
|
||||
# Create virtualenv with site-packages enabled and install all dependencies
|
||||
sp.check_output(['pipenv','--site-packages', '--python', '3'], cwd=repo_name)
|
||||
|
|
|
@ -2,10 +2,11 @@ import subprocess as sp
|
|||
import subprocess as sp
|
||||
import requests
|
||||
import json
|
||||
import os
|
||||
|
||||
from decouple import config
|
||||
|
||||
def install_available(pipfile):
|
||||
# def install_available(pipfile):
|
||||
""" Install Python packages or their dependencies mentioned in
|
||||
pipfile if they are available in System repos
|
||||
"""
|
||||
|
@ -55,6 +56,20 @@ def install_available(pipfile):
|
|||
except:
|
||||
print(f"Could not install {package}")
|
||||
|
||||
def install_available(project_path):
|
||||
if get_distro_name() == "alpine":
|
||||
sp.check_output(['pipenv', 'lock'])
|
||||
|
||||
with open(os.path.join(project_path, "Pipfile.lock")) as f:
|
||||
content = json.load(f)
|
||||
|
||||
for package in content["default"].keys():
|
||||
try:
|
||||
sp.check_output(["apk", "add", f"py3-{package}"])
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
def clone_common(path='.'):
|
||||
sp.check_output(['git', 'clone',
|
||||
f'https://code.ungleich.ch/ungleich-public/ucloud_common'], cwd=path)
|
||||
|
|
|
@ -49,7 +49,7 @@ def setup(path, ssh_username, ssh_key_path, ssh_key_pass, etcd_url, without_ceph
|
|||
dst=os.path.join(repo_name, "ucloud_common", "etcd3_wrapper"),
|
||||
)
|
||||
|
||||
install_available(os.path.join(repo_name, "Pipfile"))
|
||||
install_available(repo_name)
|
||||
|
||||
# Create virtualenv with site-packages enabled and install all dependencies
|
||||
sp.check_output(['pipenv','--site-packages', '--python', '3'], cwd=repo_name)
|
||||
|
|
|
@ -35,7 +35,7 @@ def setup(path, base_dir, etcd_url, without_ceph):
|
|||
|
||||
clone_etcd_wrapper(path=repo_name)
|
||||
|
||||
install_available(os.path.join(repo_name, "Pipfile"))
|
||||
install_available(repo_name)
|
||||
|
||||
# Create virtualenv with site-packages enabled and install all dependencies
|
||||
sp.check_output(['pipenv','--site-packages', '--python', '3'], cwd=repo_name)
|
||||
|
|
|
@ -47,7 +47,7 @@ def setup(path, vm_prefix, host_prefix, request_prefix, etcd_url):
|
|||
dst=os.path.join(repo_name, "ucloud_common", "etcd3_wrapper"),
|
||||
)
|
||||
|
||||
install_available(os.path.join(repo_name, "Pipfile"))
|
||||
install_available(repo_name)
|
||||
|
||||
# Create virtualenv with site-packages enabled and install all dependencies
|
||||
sp.check_output(['pipenv','--site-packages', '--python', '3'], cwd=repo_name)
|
||||
|
|
7
test.py
Normal file
7
test.py
Normal file
|
@ -0,0 +1,7 @@
|
|||
import json
|
||||
import os
|
||||
|
||||
with open(os.path.expanduser("~/Desktop/code/ucloud-vm/Pipfile.lock")) as f:
|
||||
# content = f.read()
|
||||
content = json.load(f)
|
||||
print(content["default"].keys())
|
Loading…
Reference in a new issue