#!/usr/bin/env python # Copyright (c) 2011 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import optparse import os import pydoc import shutil import sys def main(): parser = optparse.OptionParser() parser.add_option('-w', '--write', dest='dir', metavar='FILE', default=os.path.join(os.getcwd(), 'pyauto_docs'), help=('Directory path to write all of the documentation. ' 'Defaults to "pyauto_docs" in current directory.')) parser.add_option('-p', '--pyautolib', dest='pyautolib', metavar='FILE', default=os.getcwd(), help='Location of pyautolib directory') (options, args) = parser.parse_args() if not os.path.isdir(options.dir): os.makedirs(options.dir) # Add these paths so pydoc can find everything sys.path.append(os.path.join(options.pyautolib, '../../../third_party/')) sys.path.append(options.pyautolib) # Get a snapshot of the current directory where pydoc will export the files previous_contents = set(os.listdir(os.getcwd())) pydoc.writedocs(options.pyautolib) current_contents = set(os.listdir(os.getcwd())) if options.dir == os.getcwd(): print 'Export complete, files are located in %s' % options.dir return 1 new_files = current_contents.difference(previous_contents) for file_name in new_files: basename, extension = os.path.splitext(file_name) if extension == '.html': # Build the complete path full_path = os.path.join(os.getcwd(), file_name) existing_file_path = os.path.join(options.dir, file_name) if os.path.isfile(existing_file_path): os.remove(existing_file_path) shutil.move(full_path, options.dir) print 'Export complete, files are located in %s' % options.dir return 0 if __name__ == '__main__': sys.exit(main())