I launched an instance with the AMI webpagetest-server-2014-11-25 - ami-9978f6ee.
ec2_key=AKIA ec2_secret=ABC api_key=blah headless=0 archive_s3_server=s3.amazonaws.com archive_s3_key=AKIA archive_s3_secret=ABC archive_s3_bucket=test_wpt_results archive_days=30 EC2.default=eu-west-1 EC2.eu-west-1.min=1 EC2.eu-west-1.max=10 EC2.eu-west-1.securityGroup=same-as-server EC2.eu-west-1.subnetId=same-as-server
The AWS key can manage EC2 and S3.
One launched, I open the webpagetest webui, and run a test with Chrome in the default region (Ireland), and get the “Waiting at the front of the queue” message indefinitely.
I see that a Windows instance was started automatically. I can login with RDP, wptdriver.exe is running and it checks for tests. In wptdriver.ini, the [WebPagetest] section contains no url nor location key, but ec2=1.
Does wptdriver.exe writes logs somewhere, so I can at least check where it is polling for jobs ?
I also tried running tests us-east-1 and eu-central-1, and also start a server in these regions.
So I checked the code of wptdriver, especially wpt_settings.cc.
It calls http://169.254.169.254/latest/user-data to get the server ip.
So I dit that on the Agent instance and noticed that wpt_server contains the public IP of the server. I expected the private IP.
So I added a rule in the Security Group to accept connections from the public IP of the agent, and it works fine now.
It’s more an EC2 question than a WPT question, but how would I configure my security group to only allow connections from public IPs of each new agent ?