Allow pip install for Windows
* Modified setup.py to only change directory permissions for OSX/Linux. This isn't needed for Windows Change-Id: I03645e81b5f4e8e6552830e040f8ae7ded7f202d
This commit is contained in:
parent
3a7c4c69c3
commit
f0114cc436
28
setup.py
28
setup.py
|
@ -16,11 +16,15 @@ limitations under the License.
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import pwd
|
|
||||||
import grp
|
|
||||||
import cloudcafe
|
import cloudcafe
|
||||||
|
import platform
|
||||||
import shutil
|
import shutil
|
||||||
|
|
||||||
|
# These imports are only possible on Linux/OSX
|
||||||
|
if platform.system().lower() != 'windows':
|
||||||
|
import pwd
|
||||||
|
import grp
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from setuptools import setup, find_packages
|
from setuptools import setup, find_packages
|
||||||
except ImportError:
|
except ImportError:
|
||||||
|
@ -101,20 +105,24 @@ else:
|
||||||
# State file
|
# State file
|
||||||
temp = open("~install", "w")
|
temp = open("~install", "w")
|
||||||
temp.close()
|
temp.close()
|
||||||
|
|
||||||
''' todo: This is MAC/Linux Only '''
|
# Get uid and gid of the current user to set permissions (Linux/OSX only)
|
||||||
# get who really executed this
|
if platform.system().lower() != 'windows':
|
||||||
sudo_user = os.getenv("SUDO_USER")
|
sudo_user = os.getenv("SUDO_USER")
|
||||||
uid = pwd.getpwnam(sudo_user).pw_uid
|
uid = pwd.getpwnam(sudo_user).pw_uid
|
||||||
gid = pwd.getpwnam(sudo_user).pw_gid
|
gid = pwd.getpwnam(sudo_user).pw_gid
|
||||||
|
|
||||||
config_dirs = os.listdir("configs")
|
config_dirs = os.listdir("configs")
|
||||||
for dir in config_dirs:
|
for dir in config_dirs:
|
||||||
if not os.path.exists("{0}/{1}".format(config_dir, dir)):
|
if not os.path.exists("{0}/{1}".format(config_dir, dir)):
|
||||||
print("Installing configurations for: {0}".format("{0}/{1}".format(config_dir, dir)))
|
print("Installing configurations for: {0}".format("{0}/{1}".format(config_dir, dir)))
|
||||||
os.makedirs("{0}/{1}".format(config_dir, dir))
|
os.makedirs("{0}/{1}".format(config_dir, dir))
|
||||||
os.chown("{0}/{1}".format(config_dir, dir), uid, gid)
|
# Fix the directory permissions
|
||||||
|
if platform.system().lower() != 'windows':
|
||||||
|
os.chown("{0}/{1}".format(config_dir, dir), uid, gid)
|
||||||
for file in os.listdir("configs/{0}".format(dir)):
|
for file in os.listdir("configs/{0}".format(dir)):
|
||||||
print("Installing {0}/{1}/{2}".format(config_dir, dir, file))
|
print("Installing {0}/{1}/{2}".format(config_dir, dir, file))
|
||||||
shutil.copy2("configs/{0}/{1}".format(dir, file), "{0}/{1}/{2}".format(config_dir, dir, file))
|
shutil.copy2("configs/{0}/{1}".format(dir, file), "{0}/{1}/{2}".format(config_dir, dir, file))
|
||||||
os.chown("{0}/{1}/{2}".format(config_dir, dir, file), uid, gid)
|
# Fix the directory permissions
|
||||||
|
if platform.system().lower() != 'windows':
|
||||||
|
os.chown("{0}/{1}/{2}".format(config_dir, dir, file), uid, gid)
|
||||||
|
|
Loading…
Reference in New Issue