#!/usr/bin/python # A minimal Web server to provide local source tarballs to AstroConda package # builds, using the same hostname alias ("astroconda-source") across sites. # # To get this working: # - Define an "astroconda-source" alias for the host where the local tarballs # are located. # - Place an SSL certificate file, "astroconda.pem", in the same directory as # the source tarballs. # - Start this script in the directory containing the source tarballs. # - Point each client build machine to a copy of the SSL certificate like so: # conda config --set ssl_verify /path/to/astroconda.pem. import BaseHTTPServer import SimpleHTTPServer import ssl # It seems common practice to use port 4443 for unprivileged HTTPS services but # 4440 is unassigned and less likely to conflict with any other HTTPS service: port=4440 httpd = BaseHTTPServer.HTTPServer( ('', port), SimpleHTTPServer.SimpleHTTPRequestHandler ) httpd.socket = ssl.wrap_socket( httpd.socket, certfile='astroconda.pem', # cert. kept in CWD with source tarballs server_side=True ) httpd.serve_forever()