update documentation. tweak scripts

This commit is contained in:
Don Bright 2013-02-19 19:43:25 -06:00
parent 85d3f3c7c9
commit c304adabe2
3 changed files with 32 additions and 17 deletions

View file

@ -4,6 +4,8 @@ OpenSCAD 2013.XX
Features:
o Console output is now enabled on Windows through the openscad.com executable
o Added basic syntax highlighting in the editor
o Commandline output of CGAL render to png image using '-o f.png --render'
o Regression test now creates single monolithic .html file for easier uploading
Bugfixes:
o OpenCSG rendering sometimes crashed when rendering large models
@ -11,6 +13,9 @@ o We didn't always print a warning when CSG normalization created too many eleme
o Binary STLs can now be read on big endian architectures
o Some binary STLs couldn't be read
o Fixed some issues related to ARM builds
o Improved regression dumptest multmatrix output portability
o Regression test auto-starts & stops Xvfb / Xvnc if on headless unix machine
o CGAL triangulation more lenient- enables partial rendering of 'bad' DXF data
OpenSCAD 2013.01
================

View file

@ -86,8 +86,8 @@ def read_sysinfo(filename):
if not data:
sinfo = platform.sys.platform
sinfo += '\nsystem cannot create offscreen GL framebuffer object'
sinfo += '\nsystem cannot create images'
sysid = platform.sys.platform+'_no_images'
sinfo += '\nsystem cannot create GL based images'
sysid = platform.sys.platform+'_no_GL_renderer'
return sinfo, sysid
machine = ezsearch('Machine:(.*?)\n',data)
@ -118,6 +118,7 @@ def read_sysinfo(filename):
for c in hexhash: hash += chr(ord(c)+97-48)
sysid = osplain + '_' + machine + '_' + renderer + '_' + hash
sysid = sysid.replace('(','_').replace(')','_')
sysid = sysid.lower()
return data, sysid

View file

@ -21,8 +21,9 @@
#
# This license is based on zlib license by Jean-loup Gailly and Mark Adler
# This script takes html output by test_pretty_print.py and uploads
# it to a web server.
# it to a web server over ssh using sftp.
#
# Simple example: (see help() for more info)
#
@ -30,7 +31,7 @@
#
#
# design
# Design
#
# On the remote web server there is a directory called 'openscad_tests'
# Inside of it is a file, 'index.html', that lists all the test reports
@ -59,14 +60,17 @@
# This script returns '1' on failure, '0' on success (shell-style)
#
import sys,os,platform,string
# todo: support plain old ftp ??
# todo: support new-fangled sites like dropbox ??
import sys,os,platform,string,getpass
try:
import paramiko
except:
x='''
please install the paramiko python library in your
PYTHONPATH If that is not feasible, you can upload the main html report
please install the paramiko python library in your PYTHONPATH
If that is not feasible, you can upload the single html report
file by hand to any site that accepts html code.
'''
@ -88,18 +92,17 @@ usage:
example1:
$ ctest # result is linux_x86_nvidia_report.html
$ test_upload.py --username=andreis --host=web.sourceforge.net \
--remotepath=/home/project-web/projectxyz/htdocs/
$ ctest # result is Testing/Temporary/linux_x86_nvidia_report.html
$ test_upload.py --username=andreis --host=web.sourceforge.net --remotepath=/home/project-web/projectxyz/htdocs/
$ firefox http://projectxyz.sourceforge.net/openscad_tests/index.html
# should display the test results
example2:
$ ctest # result in freebsd_ppc_gallium_report.html
$ test_upload.py --username=agorenko --host=fontanka.org --remotepath=/tmp/
$ ssh agorenko@fontanka.org "ls /tmp"
# result is 'index.html' 'freebsd_ppc_gallium_report.html'
$ ctest # result is Testing/Temporary/freebsd_ppc_gallium_report.html
$ test_upload.py --username=annag --host=fontanka.org --remotepath=/tmp/
$ ssh annag@fontanka.org "ls /tmp"
# result is 'index.html' 'freebsd_ppc_gallium_report.html' in /tmp
'''
print text
@ -157,15 +160,21 @@ def paramiko_upload( newrept_fname, username, host, remotepath ):
try:
client.connect(host,username=username)
except paramiko.PasswordRequiredException, e:
passw = getpass.getpass('enter passphrase for private key: ')
passw = getpass.getpass('enter passphrase for private ssh key: ')
client.connect(host,username=username,password=passw)
#stdin,stdout,stderr=client.exec_command('ls -l')
debug("find remote path " + basepath + " (or create) ")
debug("find remote path: " + remotepath)
ftp = client.open_sftp()
try:
ftp.chdir( remotepath )
except:
debug("failed to change dir to remote path: "+remotepath)
return 1
debug("find basepath ( or create ):" + basepath )
if not basepath in ftp.listdir():
ftp.mkdir( basepath )
ftp.chdir( basepath )
@ -205,7 +214,7 @@ def paramiko_upload( newrept_fname, username, host, remotepath ):
if newrept_basefname in text:
debug( newrept_basefname + " already linked from index.html")
else:
debug("add new reprt link to index.html")
debug("add new report link to index.html")
text = text.replace( blankchunk, blankchunk+'\n'+text2 )
f = ftp.file( 'index.html', 'w+' )