diff --git a/tests/README.md b/tests/README.md index 7661cab630f29..b3746a3cc4a12 100644 --- a/tests/README.md +++ b/tests/README.md @@ -385,7 +385,7 @@ Preparation In these steps, we will create an IAM role which has permission to create and destroy EC2 instances, set up a keypair used for ssh access to the test driver and worker machines, and create a security group to allow the test driver and workers to all communicate via TCP. -* [Create an IAM role](http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html#Using_CreateUser_console). We'll give this role the ability to launch or kill additional EC2 machines. +* [Create an IAM role](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html). We'll give this role the ability to launch or kill additional EC2 machines. - Create role "kafkatest-master" - Role type: Amazon EC2 - Attach policy: AmazonEC2FullAccess (this will allow our test-driver to create and destroy EC2 instances) @@ -393,7 +393,7 @@ set up a keypair used for ssh access to the test driver and worker machines, and * If you haven't already, [set up a keypair to use for SSH access](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html). For the purpose of this quickstart, let's say the keypair name is kafkatest, and you've saved the private key in kafktest.pem -* Next, create a security group called "kafkatest". +* Next, create a EC2 security group called "kafkatest". - After creating the group, inbound rules: allow SSH on port 22 from anywhere; also, allow access on all ports (0-65535) from other machines in the kafkatest group. Create the Test Driver @@ -423,7 +423,7 @@ the test driver machine. * Start by making sure you're up to date, and install git and ducktape: - $ sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get install -y git + $ sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get install -y python-pip git $ pip install ducktape * Get Kafka: @@ -469,6 +469,13 @@ the test driver machine. $ cd kafka/tests $ ducktape kafkatest/tests +* Update Worker VM + +If you change code in a branch on your driver VM, you need to update your worker VM to pick up this change: + + $ ./gradlew systemTestLibs + $ vagrant rsync + * To halt your workers without destroying persistent state, run `vagrant halt`. Run `vagrant destroy -f` to destroy all traces of your workers. Unit Tests diff --git a/vagrant/aws/aws-init.sh b/vagrant/aws/aws-init.sh index c0a6f677f0e5b..75176263438bf 100755 --- a/vagrant/aws/aws-init.sh +++ b/vagrant/aws/aws-init.sh @@ -18,16 +18,22 @@ # or bring up your mini Kafka cluster. # Install dependencies -sudo apt-get install -y maven openjdk-6-jdk build-essential \ - ruby-dev zlib1g-dev realpath python-setuptools +sudo apt-get install -y \ + maven \ + openjdk-8-jdk-headless \ + build-essential \ + ruby-dev \ + zlib1g-dev \ + realpath \ + python-setuptools base_dir=`dirname $0`/../.. if [ -z `which vagrant` ]; then echo "Installing vagrant..." - wget https://releases.hashicorp.com/vagrant/1.7.2/vagrant_1.7.2_x86_64.deb - sudo dpkg -i vagrant_1.7.2_x86_64.deb - rm -f vagrant_1.7.2_x86_64.deb + wget https://releases.hashicorp.com/vagrant/1.9.3/vagrant_1.9.3_x86_64.deb + sudo dpkg -i vagrant_1.9.3_x86_64.deb + rm -f vagrant_1.9.3_x86_64.deb fi # Install necessary vagrant plugins