コード例 #1
0
  parser = argparse.ArgumentParser()
  parser.add_argument("SourceServer", help="UUID of the server to clone")
  parser.add_argument("--region", default='DFW',
                      help="Region in which to create servers (DFW or ORD)")
  args = parser.parse_args()

  credential_file=os.path.expanduser("~/.rackspace_cloud_credentials")
  pyrax.set_credential_file(credential_file)
  if c1.is_valid_region(args.region, 'compute'):
    cs = pyrax.connect_to_cloudservers(region=args.region)
  else:
    print "The region you requested is not valid: %s" % args.region
    sys.exit(2)

  try:
    cs.servers.find(id=args.SourceServer)
  except:
    print "The source server UUID you specified was not found"
    print "in region %s : %s" % (args.region, args.SourceServer)
    print "Perhaps it is in a different region?"
    print "Aborting...."
    sys.exit(2)

  newserver = clone_server(cs, args.SourceServer);
  # Wait for network info to become available
  c1.wait_for_server_networks([newserver])
  # Print info for new server
  c1.print_servers_info([newserver])

# vim: ts=2 sw=2 tw=78 expandtab
コード例 #2
0
    pyrax.set_credential_file(credential_file)
    if c1.is_valid_region(args.region, "compute"):
        cs = pyrax.connect_to_cloudservers(region=args.region)
        dns = pyrax.connect_to_cloud_dns(region=args.region)
    else:
        print "The region you requested is not valid: %s" % args.region
        sys.exit(2)

    # unbuffer stdout for pretty output
    sys.stdout = os.fdopen(sys.stdout.fileno(), "w", 0)

    if not c4.is_valid_hostname(args.FQDN):
        print "This does not appear to be a valid host name: %s" % args.FQDN
        sys.exit(2)
    if not c1.is_valid_image(cs, args.image):
        print "This does not appear to be a valid image-uuid: %s" % args.image
        sys.exit(3)
    if not c1.is_valid_flavor(cs, args.flavor):
        print "This does not appear to be a valid flavor-id: %s" % args.flavor
        sys.exit(4)

    servers = c1.build_some_servers(cs, args.flavor, args.image, args.FQDN, 1)
    c1.wait_for_server_networks(servers)
    c1.print_servers_info(servers)
    pubIPv4 = cloud_server_public_ipv4(servers[0])
    c4.create_dns_record(dns, args.FQDN, pubIPv4, "A")
    pubIPv6 = cloud_server_public_ipv6(servers[0])
    c4.create_dns_record(dns, args.FQDN, pubIPv6, "AAAA")

# vim: ts=2 sw=2 tw=78 expandtab