mirror of
https://github.com/CoolProp/CoolProp.git
synced 2026-02-09 05:15:45 -05:00
60 lines
2.1 KiB
Python
60 lines
2.1 KiB
Python
"""
|
|
A script for making nightly builds.
|
|
|
|
Uses whatever the default python distro is on the building computer
|
|
|
|
To Use:
|
|
- SSH key should be uploaded to SF servers and key managed by pageant on building computer
|
|
- Add a shortcut to the .ppk private key file to the Startup folder in windows so that pageant will be started and key loaded at logon - you will be asked for password when you log in
|
|
- Windows Task should be setup in the task scheduler that will run python.exe with argument nightly_build.py in the source folder
|
|
|
|
Change ibell to your sourceforge name below
|
|
"""
|
|
|
|
def make_temp_folder():
|
|
while True:
|
|
try:
|
|
os.mkdir('dist_tmp')
|
|
break
|
|
except WindowsError:
|
|
pass
|
|
|
|
def delete_temp_folder():
|
|
if os.path.exists('dist_tmp'):
|
|
shutil.rmtree('dist_tmp')
|
|
|
|
def delete_py_build_folder():
|
|
if os.path.exists(os.path.join('wrappers','Python','build')):
|
|
shutil.rmtree(os.path.join('wrappers','Python','build'))
|
|
|
|
import subprocess, os, shutil, glob
|
|
|
|
for compiler in ['msvc','mingw32']:
|
|
delete_temp_folder()
|
|
delete_py_build_folder()
|
|
make_temp_folder()
|
|
|
|
if compiler == 'msvc':
|
|
compiler_string = []
|
|
elif compiler == 'mingw32':
|
|
compiler_string = ['--compiler=mingw32']
|
|
else:
|
|
raise ValueError
|
|
|
|
call_str = ['python','setup.py','build']+compiler_string+['bdist_msi','--dist-dir=../../dist_tmp']
|
|
print 'Calling: '+' '.join(call_str)
|
|
print subprocess.check_output(call_str,cwd=os.path.join('wrappers','Python'))
|
|
|
|
fpath = glob.glob('dist_tmp/*.msi')[0]
|
|
fName = fpath.split(os.sep,1)[1]
|
|
old_name = fpath
|
|
if compiler == 'mingw32':
|
|
root, ext = fName.rsplit('.', 1)
|
|
# Upload the MINGW32 version with a different name (with '-MINGW32' appended)
|
|
fName = root + '-mingw32.' + ext
|
|
|
|
call_str = ['pscp',old_name,'ibell,coolprop@frs.sf.net:/home/pfs/project/c/co/coolprop/CoolProp/Nightly/'+fName]
|
|
print 'Calling: '+' '.join(call_str)
|
|
print subprocess.check_output(call_str)
|
|
|
|
delete_temp_folder() |