| #!/usr/bin/python | 
 | # | 
 | # Copyright 2010 Google Inc. All Rights Reserved. | 
 |  | 
 | """Script to wrap run_remote_tests.sh script. | 
 |  | 
 | This script can login to the chromeos machine using the test private key. | 
 | """ | 
 |  | 
 | __author__ = "asharif@google.com (Ahmad Sharif)" | 
 |  | 
 | import optparse | 
 | import os | 
 | import re | 
 | import sys | 
 |  | 
 | from utils import command_executer | 
 | from utils import misc | 
 |  | 
 |  | 
 | def Usage(parser, message): | 
 |   print "ERROR: " + message | 
 |   parser.print_help() | 
 |   sys.exit(0) | 
 |  | 
 | def Main(argv): | 
 |   parser = optparse.OptionParser() | 
 |   parser.add_option("-c", "--chromeos_root", dest="chromeos_root", | 
 |                     help="ChromeOS root checkout directory") | 
 |   parser.add_option("-r", "--remote", dest="remote", | 
 |                     help="Remote chromeos device.") | 
 |   options = parser.parse_args(argv)[0] | 
 |   if options.chromeos_root is None: | 
 |     Usage(parser, "chromeos_root must be given") | 
 |  | 
 |   if options.remote is None: | 
 |     Usage(parser, "remote must be given") | 
 |  | 
 |   options.chromeos_root = os.path.expanduser(options.chromeos_root) | 
 |  | 
 |   command = "ls -lt /" | 
 |   ce = command_executer.GetCommandExecuter() | 
 |   ce.CrosRunCommand(command, | 
 |                     chromeos_root=options.chromeos_root, | 
 |                     machine=options.remote) | 
 |  | 
 |   version_dir_path, script_name = misc.GetRoot(sys.argv[0]) | 
 |   version_dir = misc.GetRoot(version_dir_path)[1] | 
 |  | 
 |   # Tests to copy directories and files to the chromeos box. | 
 |   ce.CopyFiles(version_dir_path, | 
 |                "/tmp/" + version_dir, | 
 |                dest_machine=options.remote, | 
 |                dest_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |   ce.CopyFiles(version_dir_path, | 
 |                "/tmp/" + version_dir + "1", | 
 |                dest_machine=options.remote, | 
 |                dest_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |   ce.CopyFiles(sys.argv[0], | 
 |                "/tmp/" + script_name, | 
 |                recursive=False, | 
 |                dest_machine=options.remote, | 
 |                dest_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |   ce.CopyFiles(sys.argv[0], | 
 |                "/tmp/" + script_name + "1", | 
 |                recursive=False, | 
 |                dest_machine=options.remote, | 
 |                dest_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |  | 
 |   # Test to copy directories and files from the chromeos box. | 
 |   ce.CopyFiles("/tmp/" + script_name, | 
 |                "/tmp/hello", | 
 |                recursive=False, | 
 |                src_machine=options.remote, | 
 |                src_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |   ce.CopyFiles("/tmp/" + script_name, | 
 |                "/tmp/" + script_name, | 
 |                recursive=False, | 
 |                src_machine=options.remote, | 
 |                src_cros=True, | 
 |                chromeos_root=options.chromeos_root) | 
 |   board = ce.CrosLearnBoard(options.chromeos_root, options.remote) | 
 |   print board | 
 |   return 0 | 
 |  | 
 |  | 
 | if __name__ == "__main__": | 
 |   Main(sys.argv) |