def launch(args):
    cloud_config = config_proxy.get_cloud(args.cloud)
    cloud = get_current_cloud(args.cloud)

    # Instantiate DNS
    dns = DNS(cloud_config['AWS_ACCESS_KEY_ID'],
              cloud_config['AWS_SECRET_ACCESS_KEY'])

    # Server Type
    server_type = ("-").join(args.env_type.split("-")[-2:])

    # Instance Full Name
    zone_name = cloud_config['DNS_ZONE']

    full_instance_name = dns.get_next_host(
        args.env_type,
        zone_name
    )

    # Owner
    username = os.environ.get('USER')

    # Instance Size
    if args.size is None:
        sizes = config_proxy.SIZES
        default_size = sizes['default']
        size = sizes.get(server_type, default_size)
    else:
        size = args.size

    # Security Group List
    if args.security_groups is None:
        security_groups = [server_type, 'gonzo']
    else:
        security_groups = args.security_groups

    # Instance Base Image
    if args.image_id is None:
        image_id = cloud_config['IMAGE_ID']
    else:
        image_id = args.image_id

    # User Data
    if args.user_data_params is None:
        user_data_params = cloud_config.get('USER_DATA_PARAMS')
    else:
        user_data_params = args.user_data_params

    if not args.user_data_uri:
        user_data_uri = cloud_config.get('DEFAULT_USER_DATA')
        if user_data_uri is None:
            user_data = {}
        else:
            user_data = get_parsed_document(
                full_instance_name, user_data_uri,
                'USER_DATA_PARAMS', user_data_params
            )

    # Launch Instance
    instance = cloud.create_instance(
        name=full_instance_name,
        size=size,
        user_data=user_data,
        image_name=image_id,
        security_groups=security_groups,
        owner=username,
        key_name=cloud_config.get('PUBLIC_KEY_NAME'),
        volume_size=args.volume_size
    )

    print "Instance created: {}.{}".format(
        instance.name,
        cloud_config['DNS_ZONE']
    )

    dns.create_dns_record(instance.name,
                          instance.extra['gonzo_network_address'],
                          cloud_config['DNS_TYPE'],
                          cloud_config['DNS_ZONE'])
Returns the flags that need to be added to .c compilations.
dataset/ETHPy150Open onefinestay/gonzo/gonzo/scripts/launch.py/launch--crossover with--dataset/ETHPy150Open adobe/brackets-shell/gyp/pylib/gyp/msvs_emulation.py/MsvsSettings.GetCflagsC