function EC2_LaunchInstance($region, $ami, $size, $user_data, $loc) { $ret = false; $key = GetSetting('ec2_key'); $secret = GetSetting('ec2_secret'); if ($key && $secret) { $ec2 = new AmazonEC2($key, $secret); $ec2->set_region($region); $response = $ec2->run_instances($ami, 1, 1, array('InstanceType' => $size, 'UserData' => base64_encode($user_data))); if ($response->isOK()) { $ret = true; if (isset($loc) && strlen($loc) && isset($response->body->instancesSet->item->instanceId)) { $instance_id = (string) $response->body->instancesSet->item->instanceId; $ec2->create_tags($instance_id, array(array('Key' => 'Name', 'Value' => 'WebPagetest Agent'), array('Key' => 'WPTLocations', 'Value' => $loc))); } } } return $ret; }