6Development code installation procedure for PyXMake.
8@note: PyXMake installation file for development code.
12----------------------------------------------------------------------------------------------
19@author: garb_ma [DLR-FA,STM Braunschweig]
20----------------------------------------------------------------------------------------------
42 sys.path.insert(0,os.path.dirname(os.path.abspath(__file__)))
49 data = GetRequirements(os.path.dirname(os.path.abspath(__file__)),[
"--ignore",
"cmd,bin",
"--no-pin"])
52 target_url=
"https://fa-jenkins2:8080/job/STM_Archive/doclinks/1/"
53 data = urllib.request.urlopen(target_url).read().decode(
'utf-8').replace(
"\n",
"").split()
58 installed = {pkg.key
for pkg
in pkg_resources.working_set}
59 required = {x.lower()
for x
in data}; modules = [x
for x
in data]
60 missing = required - installed
65 if x.lower()
not in missing:
75 print(
"==================================")
76 print(
"Found unresolved dependencies:")
77 print(*update, sep =
"\n")
78 print(
"==================================")
79 print(
"Starting auto-installation process. Defaults to pip!")
80 print(
"Continue: [Y/N]; [pip/conda]")
82 user_input = [x.strip()
for x
in six.moves.input().lower().split(
";")]
84 if not user_input
or user_input[0] !=
"y":
86 print(
"Abort installation process")
90 package_manager = user_input[1]
92 package_manager =
"pip"
94 if package_manager
not in [
"pip",
"conda"]:
95 print(
"Unknown package manager. Use either pip or conda.")
98 print(
"Attempting installation using %s" % package_manager)
101 subprocess.check_call([os.getenv(
"pyx_python_exe",sys.executable),
'-m',
'pip',
'install', *update], stdout=subprocess.DEVNULL)
102 except subprocess.CalledProcessError:
103 print(
"Installation aborted. Some packages cannot be installed using default settings")
108if __name__ ==
'__main__' and __debug__: