You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@aurora.apache.org by Mark Chu-Carroll <mc...@twopensource.com> on 2014/02/03 17:30:55 UTC
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/
-----------------------------------------------------------
(Updated Feb. 3, 2014, 11:30 a.m.)
Review request for Aurora, Bill Farner and Brian Wickman.
Changes
-------
Addressed wickman's review comments.
Bugs: aurora-125 and aurora-80
https://issues.apache.org/jira/browse/aurora-125
https://issues.apache.org/jira/browse/aurora-80
Repository: aurora
Description
-------
Got an initial version of the end-to-end test working.
Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
"aurora run" and "aurora ssh" to probe the running tasks.
Diffs (updated)
-----
3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
Diff: https://reviews.apache.org/r/17457/diff/
Testing
-------
[sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
Bringing machine 'devtools' up with 'virtualbox' provider...
Bringing machine 'zookeeper' up with 'virtualbox' provider...
Bringing machine 'mesos-master' up with 'virtualbox' provider...
Bringing machine 'mesos-slave' up with 'virtualbox' provider...
Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
[devtools] VirtualBox VM is already running.
[zookeeper] VirtualBox VM is already running.
[mesos-master] VirtualBox VM is already running.
[mesos-slave] VirtualBox VM is already running.
[aurora-scheduler] VirtualBox VM is already running.
Cloning into '/home/vagrant/test_dev'...
done.
Already on 'e2e'
Already up-to-date.
+ VIRTUALENV_VERSION=1.10.1
+ which python2.7
++ which python2.7
+ PY=/usr/bin/python2.7
+ echo 'Using /usr/bin/python2.7'
Using /usr/bin/python2.7
+ '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
+ pushd build-support
~/test_dev/build-support ~/test_dev
+ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
+ tar zxvf virtualenv-1.10.1.tar.gz
virtualenv-1.10.1/
virtualenv-1.10.1/AUTHORS.txt
virtualenv-1.10.1/bin/
virtualenv-1.10.1/bin/rebuild-script.py
virtualenv-1.10.1/docs/
virtualenv-1.10.1/docs/_theme/
virtualenv-1.10.1/docs/_theme/nature/
virtualenv-1.10.1/docs/_theme/nature/static/
virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
virtualenv-1.10.1/docs/_theme/nature/theme.conf
virtualenv-1.10.1/docs/conf.py
virtualenv-1.10.1/docs/index.rst
virtualenv-1.10.1/docs/make.bat
virtualenv-1.10.1/docs/Makefile
virtualenv-1.10.1/docs/news.rst
virtualenv-1.10.1/LICENSE.txt
virtualenv-1.10.1/MANIFEST.in
virtualenv-1.10.1/PKG-INFO
virtualenv-1.10.1/README.rst
virtualenv-1.10.1/scripts/
virtualenv-1.10.1/scripts/virtualenv
virtualenv-1.10.1/setup.cfg
virtualenv-1.10.1/setup.py
virtualenv-1.10.1/virtualenv.egg-info/
virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
virtualenv-1.10.1/virtualenv.py
virtualenv-1.10.1/virtualenv_embedded/
virtualenv-1.10.1/virtualenv_embedded/activate.bat
virtualenv-1.10.1/virtualenv_embedded/activate.csh
virtualenv-1.10.1/virtualenv_embedded/activate.fish
virtualenv-1.10.1/virtualenv_embedded/activate.ps1
virtualenv-1.10.1/virtualenv_embedded/activate.sh
virtualenv-1.10.1/virtualenv_embedded/activate_this.py
virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
virtualenv-1.10.1/virtualenv_embedded/site.py
virtualenv-1.10.1/virtualenv_support/
virtualenv-1.10.1/virtualenv_support/__init__.py
virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
+ touch virtualenv-1.10.1/BOOTSTRAPPED
~/test_dev
+ popd
+ exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
Installing Setuptools..............................................................................................................................................................................................................................done.
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
/tmp/pants.BqUkIw ~/test_dev
Downloading/unpacking twitter.common.python==0.2.0
Running setup.py egg_info for package twitter.common.python
Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
Running setup.py egg_info for package setuptools
Installing collected packages: twitter.common.python, setuptools
Running setup.py install for twitter.common.python
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
Found existing installation: setuptools 0.9.8
Uninstalling setuptools:
Successfully uninstalled setuptools
Running setup.py install for setuptools
Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
Successfully installed twitter.common.python setuptools
Cleaning up...
twitter.common.python: Obtaining twitter.pants==0.0.13
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
twitter.common.python: Installing twitter.pants: 0.4ms
twitter.common.python: Distilling twitter.pants: 798.7ms
twitter.common.python: Obtaining twitter.common.quantity==0.1.0
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
twitter.common.python: Installing twitter.common.quantity: 0.2ms
twitter.common.python: Distilling twitter.common.quantity: 94.6ms
twitter.common.python: Obtaining elementtree
twitter.common.python: Obtaining elementtree :: Installing elementtree
twitter.common.python: Obtaining elementtree :: Distilling elementtree
twitter.common.python: Obtaining elementtree: 1681.4ms
twitter.common.python: Installing elementtree: 0.2ms
twitter.common.python: Distilling elementtree: 140.7ms
twitter.common.python: Obtaining twitter.common.config==0.1.0
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
twitter.common.python: Installing twitter.common.config: 0.2ms
twitter.common.python: Distilling twitter.common.config: 92.8ms
twitter.common.python: Obtaining ansicolors
twitter.common.python: Obtaining ansicolors :: Installing ansicolors
twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
twitter.common.python: Obtaining ansicolors: 603.0ms
twitter.common.python: Installing ansicolors: 0.2ms
twitter.common.python: Distilling ansicolors: 86.1ms
twitter.common.python: Obtaining twitter.common.confluence==0.1.0
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
twitter.common.python: Installing twitter.common.confluence: 0.3ms
twitter.common.python: Distilling twitter.common.confluence: 95.8ms
twitter.common.python: Obtaining psutil==1.1.2
twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
twitter.common.python: Installing psutil: 0.4ms
twitter.common.python: Distilling psutil: 446.3ms
twitter.common.python: Obtaining pygments
twitter.common.python: Obtaining pygments: 761.2ms
twitter.common.python: Obtaining twitter.common.decorators==0.1.0
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
twitter.common.python: Installing twitter.common.decorators: 0.2ms
twitter.common.python: Distilling twitter.common.decorators: 94.8ms
twitter.common.python: Obtaining pytest
twitter.common.python: Obtaining pytest :: Installing pytest
twitter.common.python: Obtaining pytest :: Distilling pytest
twitter.common.python: Obtaining pytest: 1700.3ms
twitter.common.python: Installing pytest: 0.3ms
twitter.common.python: Distilling pytest: 413.1ms
twitter.common.python: Obtaining pylint
twitter.common.python: Obtaining pylint :: Installing pylint
twitter.common.python: Obtaining pylint :: Distilling pylint
twitter.common.python: Obtaining pylint: 1301.7ms
twitter.common.python: Installing pylint: 0.3ms
twitter.common.python: Distilling pylint: 440.7ms
twitter.common.python: Obtaining pytest-cov
twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
twitter.common.python: Obtaining pytest-cov: 532.5ms
twitter.common.python: Installing pytest-cov: 0.2ms
twitter.common.python: Distilling pytest-cov: 88.1ms
twitter.common.python: Obtaining twitter.common.process==0.1.0
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
twitter.common.python: Installing twitter.common.process: 0.2ms
twitter.common.python: Distilling twitter.common.process: 110.1ms
twitter.common.python: Obtaining twitter.common.util==0.1.0
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
twitter.common.python: Installing twitter.common.util: 0.2ms
twitter.common.python: Distilling twitter.common.util: 91.9ms
twitter.common.python: Obtaining markdown
twitter.common.python: Obtaining markdown :: Installing Markdown
twitter.common.python: Obtaining markdown :: Distilling Markdown
twitter.common.python: Obtaining markdown: 1247.1ms
twitter.common.python: Installing Markdown: 0.5ms
twitter.common.python: Distilling Markdown: 495.1ms
twitter.common.python: Obtaining twitter.common.python==0.2.2
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
twitter.common.python: Installing twitter.common.python: 0.3ms
twitter.common.python: Distilling twitter.common.python: 238.7ms
twitter.common.python: Obtaining mako
twitter.common.python: Obtaining mako :: Installing Mako
twitter.common.python: Obtaining mako :: Distilling Mako
twitter.common.python: Obtaining mako: 1069.3ms
twitter.common.python: Installing Mako: 0.3ms
twitter.common.python: Distilling Mako: 291.9ms
twitter.common.python: Obtaining twitter.common.lang==0.1.0
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
twitter.common.python: Installing twitter.common.lang: 0.2ms
twitter.common.python: Distilling twitter.common.lang: 95.4ms
twitter.common.python: Obtaining twitter.common.collections==0.1.0
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
twitter.common.python: Installing twitter.common.collections: 0.2ms
twitter.common.python: Distilling twitter.common.collections: 103.2ms
twitter.common.python: Obtaining twitter.common.options==0.1.0
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
twitter.common.python: Installing twitter.common.options: 0.2ms
twitter.common.python: Distilling twitter.common.options: 92.8ms
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
twitter.common.python: Installing twitter.common.dirutil: 0.4ms
twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
twitter.common.python: Obtaining twitter.common.log==0.1.0
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
twitter.common.python: Installing twitter.common.log: 0.2ms
twitter.common.python: Distilling twitter.common.log: 135.2ms
twitter.common.python: Obtaining py>=1.4.19
twitter.common.python: Obtaining py>=1.4.19 :: Installing py
twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
twitter.common.python: Obtaining py>=1.4.19: 871.5ms
twitter.common.python: Installing py: 0.3ms
twitter.common.python: Distilling py: 319.6ms
twitter.common.python: Obtaining astroid>=0.24.3
twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
twitter.common.python: Installing astroid: 0.4ms
twitter.common.python: Distilling astroid: 399.9ms
twitter.common.python: Obtaining logilab-common>=0.53.0
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
twitter.common.python: Installing logilab-common: 0.4ms
twitter.common.python: Distilling logilab-common: 603.8ms
twitter.common.python: Obtaining cov-core>=1.6
twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
twitter.common.python: Installing cov-core: 0.4ms
twitter.common.python: Distilling cov-core: 93.6ms
twitter.common.python: Obtaining twitter.common.string==0.1.0
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
twitter.common.python: Installing twitter.common.string: 0.2ms
twitter.common.python: Distilling twitter.common.string: 93.8ms
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
twitter.common.python: Installing twitter.common.contextutil: 0.5ms
twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
twitter.common.python: Obtaining setuptools==1.1.7
twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
twitter.common.python: Installing setuptools: 0.3ms
twitter.common.python: Distilling setuptools: 618.8ms
twitter.common.python: Obtaining MarkupSafe>=0.9.2
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
twitter.common.python: Installing MarkupSafe: 0.3ms
twitter.common.python: Distilling MarkupSafe: 251.4ms
twitter.common.python: Obtaining coverage>=3.4
twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
twitter.common.python: Installing coverage: 0.3ms
twitter.common.python: Distilling coverage: 425.6ms
~/test_dev
Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
Wrote /home/vagrant/test_dev/dist/aurora_client.pex
Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
Wrote /home/vagrant/test_dev/dist/flask_example.pex
== Creating job
INFO] Creating job flask_example
INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
== Updating test job
INFO] Updating job: flask_example
INFO] Starting job update.
INFO] Examining instances: [0]
INFO] Killing instances: [0]
INFO] Instances killed
INFO] Adding instances: [0]
INFO] Instances added
INFO] Watching instances: [0]
INFO] Detected RUNNING instance 0
INFO] Instance 0 has been up and healthy for at least 30 seconds
INFO] Update successful
INFO] Response from scheduler: OK (message: Lock has been released.)
INFO] Killing tasks for job: example/vagrant/test/flask_example
INFO] Response from scheduler: OK (message: Tasks killed.)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
***
OK (all tests passed)
***
[sun-wukong incubator-aurora (e2e)]$
Thanks,
Mark Chu-Carroll
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Bill Farner <wf...@apache.org>.
> On Feb. 3, 2014, 8:15 p.m., Mark Chu-Carroll wrote:
> > src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora, line 32
> > <https://reviews.apache.org/r/17457/diff/3/?file=463336#file463336line32>
> >
> > Really? Shouldn't there be a newline at the end of the last line?
The file should indeed end with a newline, but reviewboard rendering a blank line at the end ~always means there's two newlines at the end IIRC.
- Bill
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33490
-----------------------------------------------------------
On Feb. 3, 2014, 8:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 8:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33490
-----------------------------------------------------------
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora
<https://reviews.apache.org/r/17457/#comment62947>
Really? Shouldn't there be a newline at the end of the last line?
- Mark Chu-Carroll
On Feb. 3, 2014, 11:30 a.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 11:30 a.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
> On Feb. 3, 2014, 2:31 p.m., Kevin Sweeney wrote:
> > examples/vagrant/provision-mesos-slave.sh, line 9
> > <https://reviews.apache.org/r/17457/diff/3/?file=463332#file463332line9>
> >
> > Rather than using sed here you can use interpolation as follows:
> >
> > eager expansion with $SLAVE_IP_ADDRESS
> > lazy expansion with \$?
>
> Mark Chu-Carroll wrote:
> Interpolation doesn't work in a here doc in a script. Try putting the following into a shell script file:
>
> export SLAVE_IP_ADDRESS="INTERPOLATE"
> cat >testfile <<"EOF"
> #!/bin/bash
> export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
> (
> while true
> do
> # TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
> /usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
> --attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
> echo "Master exited with $?, restarting."
> done
> ) & disown
> EOF
>
>
> -- Running that, and then looking in testfile:
>
>
>
> #!/bin/bash
> export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
> (
> while true
> do
> # TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
> /usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
> --attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
> echo "Master exited with $?, restarting."
> done
> ) & disown
>
>
> Kevin Sweeney wrote:
> Sorry I forgot to mention - "EOF" should be changed to just EOF.
>
> From [1], "Quoting or escaping the 'limit string' at the head of a here document disables parameter substitution within its body."
>
> [1] http://tldp.org/LDP/abs/html/here-docs.html
God, how I hate shell programming! :-)
- Mark
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33475
-----------------------------------------------------------
On Feb. 3, 2014, 3:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 3:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
> On Feb. 3, 2014, 2:31 p.m., Kevin Sweeney wrote:
> > examples/vagrant/provision-mesos-slave.sh, line 9
> > <https://reviews.apache.org/r/17457/diff/3/?file=463332#file463332line9>
> >
> > Rather than using sed here you can use interpolation as follows:
> >
> > eager expansion with $SLAVE_IP_ADDRESS
> > lazy expansion with \$?
Interpolation doesn't work in a here doc in a script. Try putting the following into a shell script file:
export SLAVE_IP_ADDRESS="INTERPOLATE"
cat >testfile <<"EOF"
#!/bin/bash
export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
(
while true
do
# TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
/usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
--attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
echo "Master exited with $?, restarting."
done
) & disown
EOF
-- Running that, and then looking in testfile:
#!/bin/bash
export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
(
while true
do
# TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
/usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
--attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
echo "Master exited with $?, restarting."
done
) & disown
- Mark
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33475
-----------------------------------------------------------
On Feb. 3, 2014, 3:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 3:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
> On Feb. 3, 2014, 11:31 a.m., Kevin Sweeney wrote:
> > examples/vagrant/provision-mesos-slave.sh, line 9
> > <https://reviews.apache.org/r/17457/diff/3/?file=463332#file463332line9>
> >
> > Rather than using sed here you can use interpolation as follows:
> >
> > eager expansion with $SLAVE_IP_ADDRESS
> > lazy expansion with \$?
>
> Mark Chu-Carroll wrote:
> Interpolation doesn't work in a here doc in a script. Try putting the following into a shell script file:
>
> export SLAVE_IP_ADDRESS="INTERPOLATE"
> cat >testfile <<"EOF"
> #!/bin/bash
> export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
> (
> while true
> do
> # TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
> /usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
> --attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
> echo "Master exited with $?, restarting."
> done
> ) & disown
> EOF
>
>
> -- Running that, and then looking in testfile:
>
>
>
> #!/bin/bash
> export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server
> (
> while true
> do
> # TODO(ksweeney): Scheduler assumes 'rack' and 'host' are present. Make them optional.
> /usr/local/sbin/mesos-slave --master=zk://192.168.33.2:2181/mesos/master --ip=$SLAVE_IP_ADDRESS \
> --attributes='host:$SLAVE_IP_ADDRESS;rack:a' --resources="cpus:4;mem:1024;disk:20000"
> echo "Master exited with $?, restarting."
> done
> ) & disown
>
Sorry I forgot to mention - "EOF" should be changed to just EOF.
>From [1], "Quoting or escaping the 'limit string' at the head of a here document disables parameter substitution within its body."
[1] http://tldp.org/LDP/abs/html/here-docs.html
- Kevin
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33475
-----------------------------------------------------------
On Feb. 3, 2014, 12:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 12:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33475
-----------------------------------------------------------
examples/vagrant/provision-mesos-slave.sh
<https://reviews.apache.org/r/17457/#comment62916>
Revert. Looks like you might need to rebase?
examples/vagrant/provision-mesos-slave.sh
<https://reviews.apache.org/r/17457/#comment62918>
Rather than using sed here you can use interpolation as follows:
eager expansion with $SLAVE_IP_ADDRESS
lazy expansion with \$?
- Kevin Sweeney
On Feb. 3, 2014, 8:30 a.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 8:30 a.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33452
-----------------------------------------------------------
src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora
<https://reviews.apache.org/r/17457/#comment62888>
extra newline
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora
<https://reviews.apache.org/r/17457/#comment62889>
extra newline
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
<https://reviews.apache.org/r/17457/#comment62887>
Please limit to 100 cols throughout
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
<https://reviews.apache.org/r/17457/#comment62890>
extra newline
- Bill Farner
On Feb. 3, 2014, 4:30 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 4:30 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33474
-----------------------------------------------------------
Vagrantfile
<https://reviews.apache.org/r/17457/#comment62914>
can you name these like mesos-slave1 and mesos-slave2? It's likely we'll want to perform operations on both frequently.
examples/vagrant/provision-dev-environment.sh
<https://reviews.apache.org/r/17457/#comment62915>
Why is python-setuptools being included here? The version that ships with ubuntu12.04 is old and buggy.
- Kevin Sweeney
On Feb. 3, 2014, 8:30 a.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 8:30 a.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33453
-----------------------------------------------------------
Ship it!
LGTM mod formatting nits
- Bill Farner
On Feb. 3, 2014, 4:30 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 4:30 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
> On Feb. 3, 2014, 1:47 p.m., Kevin Sweeney wrote:
> > examples/vagrant/provision-dev-environment.sh, line 5
> > <https://reviews.apache.org/r/17457/diff/4/?file=463503#file463503line5>
> >
> > git is already on this commandline and setuptools shouldn't be needed. From the virtualbox environment
> >
> > % vagrant ssh devtools
> > Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic x86_64)
> >
> > * Documentation: https://help.ubuntu.com/
> > Welcome to your Vagrant-built virtual machine.
> > Last login: Fri Sep 14 06:23:18 2012 from 10.0.2.2
> > vagrant@precise64:~$ python
> > Python 2.7.3 (default, Sep 26 2013, 20:03:06)
> > [GCC 4.6.3] on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> > >>> import setuptools
> > Traceback (most recent call last):
> > File "<stdin>", line 1, in <module>
> > ImportError: No module named setuptools
> > >>>
> > vagrant@precise64:~$ dpkg -L python-setuptools
> > Package `python-setuptools' is not installed.
> > Use dpkg --info (= dpkg-deb --info) to examine archive files,
> > and dpkg --contents (= dpkg-deb --contents) to list their contents.
>
> Mark Chu-Carroll wrote:
> I'll fix the double-git.
>
> But setuptools is necessary for vmware. In the vmware precise64 image default, pants doesn't work due to missing python packages. With setuptools, pants is able to bootstrap itself.
>
>
system-wide setuptools isn't necessary - pants downloads a bootstrap distribution of virtualenv directly.
vagrant@precise64:~/aurora$ ./pants
+ VIRTUALENV_VERSION=1.10.1
+ which python2.7
++ which python2.7
+ PY=/usr/bin/python2.7
+ echo 'Using /usr/bin/python2.7'
Using /usr/bin/python2.7
+ '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
+ pushd build-support
~/aurora/build-support ~/aurora
+ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1294k 100 1294k 0 0 411k 0 0:00:03 0:00:03 --:--:-- 413k
+ tar zxvf virtualenv-1.10.1.tar.gz
[...]
virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
[...]
+ exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.NR8A1C/tcp
New python executable in /tmp/pants.NR8A1C/tcp/bin/python2.7
Also creating executable in /tmp/pants.NR8A1C/tcp/bin/python
Installing Setuptools..............................................................................................................................................................................................................................done.
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
[...]
Pants 0.0.13 @ PANTS_BUILD_ROOT: /home/vagrant/aurora
Available subcommands:
py Python chroot manipulation.
help Provides help for available commands or a single specified command.
build Builds a specified target.
setup_py Generate setup.py-based Python projects from python_library targets.
goal Lists installed goals or else executes a named goal.
Default subcommand flags can be stored in ~/.pantsrc using the 'options' key of a
section named for the subcommand in ini style format, ie:
[build]
options: --log-exit
- Kevin
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33510
-----------------------------------------------------------
On Feb. 3, 2014, 12:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 12:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
> On Feb. 3, 2014, 4:47 p.m., Kevin Sweeney wrote:
> > examples/vagrant/provision-dev-environment.sh, line 5
> > <https://reviews.apache.org/r/17457/diff/4/?file=463503#file463503line5>
> >
> > git is already on this commandline and setuptools shouldn't be needed. From the virtualbox environment
> >
> > % vagrant ssh devtools
> > Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic x86_64)
> >
> > * Documentation: https://help.ubuntu.com/
> > Welcome to your Vagrant-built virtual machine.
> > Last login: Fri Sep 14 06:23:18 2012 from 10.0.2.2
> > vagrant@precise64:~$ python
> > Python 2.7.3 (default, Sep 26 2013, 20:03:06)
> > [GCC 4.6.3] on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> > >>> import setuptools
> > Traceback (most recent call last):
> > File "<stdin>", line 1, in <module>
> > ImportError: No module named setuptools
> > >>>
> > vagrant@precise64:~$ dpkg -L python-setuptools
> > Package `python-setuptools' is not installed.
> > Use dpkg --info (= dpkg-deb --info) to examine archive files,
> > and dpkg --contents (= dpkg-deb --contents) to list their contents.
I'll fix the double-git.
But setuptools is necessary for vmware. In the vmware precise64 image default, pants doesn't work due to missing python packages. With setuptools, pants is able to bootstrap itself.
- Mark
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33510
-----------------------------------------------------------
On Feb. 3, 2014, 3:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 3:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33510
-----------------------------------------------------------
examples/vagrant/provision-dev-environment.sh
<https://reviews.apache.org/r/17457/#comment62992>
git is already on this commandline and setuptools shouldn't be needed. From the virtualbox environment
% vagrant ssh devtools
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic x86_64)
* Documentation: https://help.ubuntu.com/
Welcome to your Vagrant-built virtual machine.
Last login: Fri Sep 14 06:23:18 2012 from 10.0.2.2
vagrant@precise64:~$ python
Python 2.7.3 (default, Sep 26 2013, 20:03:06)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import setuptools
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named setuptools
>>>
vagrant@precise64:~$ dpkg -L python-setuptools
Package `python-setuptools' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
- Kevin Sweeney
On Feb. 3, 2014, 12:16 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 12:16 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33523
-----------------------------------------------------------
Almost there, just one issue remaining.
examples/vagrant/provision-dev-environment.sh
<https://reviews.apache.org/r/17457/#comment63025>
kill eol whitespace
examples/vagrant/provision-mesos-slave.sh
<https://reviews.apache.org/r/17457/#comment63026>
Escape exit status with \$? for lazy interpolation.
- Kevin Sweeney
On Feb. 3, 2014, 2:55 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 2:55 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@apache.org>.
Pushed.
On Mon, Feb 3, 2014 at 6:48 PM, Kevin Sweeney <ke...@apache.org> wrote:
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
>
> Ship it!
>
> Ship It!
>
>
> - Kevin Sweeney
>
> On February 3rd, 2014, 3:43 p.m. PST, Mark Chu-Carroll wrote:
> Review request for Aurora, Bill Farner and Brian Wickman.
> By Mark Chu-Carroll.
>
> *Updated Feb. 3, 2014, 3:43 p.m.*
> *Bugs: * aurora-125 <https://issues.apache.org/jira/browse/aurora-125>,
> aurora-80 <https://issues.apache.org/jira/browse/aurora-80>
> *Repository: * aurora
> Description
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
> Testing
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
> Diffs
>
> - 3rdparty/python/BUILD (cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586)
> - Vagrantfile (98dcf439aed53da5e78440de04562baf63c7272f)
> - examples/vagrant/provision-aurora-scheduler.sh
> (e48291a8673aeb8888169747486b7d50a54f5a56)
> - examples/vagrant/provision-mesos-slave.sh
> (c2548a268e0fad7aa4f84d3fa48aea012007502b)
> - src/test/sh/org/apache/aurora/e2e/flask/BUILD (PRE-CREATION)
> - src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora
> (PRE-CREATION)
> - src/test/sh/org/apache/aurora/e2e/flask/flask_example.py
> (PRE-CREATION)
> - src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora
> (PRE-CREATION)
> - src/test/sh/org/apache/aurora/e2e/test_common.sh (PRE-CREATION)
> - src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh (PRE-CREATION)
>
> View Diff <https://reviews.apache.org/r/17457/diff/>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33530
-----------------------------------------------------------
Ship it!
Ship It!
- Kevin Sweeney
On Feb. 3, 2014, 3:43 p.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 3:43 p.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/
-----------------------------------------------------------
(Updated Feb. 3, 2014, 6:43 p.m.)
Review request for Aurora, Bill Farner and Brian Wickman.
Changes
-------
hopefully, last round of review changes!
Bugs: aurora-125 and aurora-80
https://issues.apache.org/jira/browse/aurora-125
https://issues.apache.org/jira/browse/aurora-80
Repository: aurora
Description
-------
Got an initial version of the end-to-end test working.
Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
"aurora run" and "aurora ssh" to probe the running tasks.
Diffs (updated)
-----
3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
Diff: https://reviews.apache.org/r/17457/diff/
Testing
-------
[sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
Bringing machine 'devtools' up with 'virtualbox' provider...
Bringing machine 'zookeeper' up with 'virtualbox' provider...
Bringing machine 'mesos-master' up with 'virtualbox' provider...
Bringing machine 'mesos-slave' up with 'virtualbox' provider...
Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
[devtools] VirtualBox VM is already running.
[zookeeper] VirtualBox VM is already running.
[mesos-master] VirtualBox VM is already running.
[mesos-slave] VirtualBox VM is already running.
[aurora-scheduler] VirtualBox VM is already running.
Cloning into '/home/vagrant/test_dev'...
done.
Already on 'e2e'
Already up-to-date.
+ VIRTUALENV_VERSION=1.10.1
+ which python2.7
++ which python2.7
+ PY=/usr/bin/python2.7
+ echo 'Using /usr/bin/python2.7'
Using /usr/bin/python2.7
+ '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
+ pushd build-support
~/test_dev/build-support ~/test_dev
+ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
+ tar zxvf virtualenv-1.10.1.tar.gz
virtualenv-1.10.1/
virtualenv-1.10.1/AUTHORS.txt
virtualenv-1.10.1/bin/
virtualenv-1.10.1/bin/rebuild-script.py
virtualenv-1.10.1/docs/
virtualenv-1.10.1/docs/_theme/
virtualenv-1.10.1/docs/_theme/nature/
virtualenv-1.10.1/docs/_theme/nature/static/
virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
virtualenv-1.10.1/docs/_theme/nature/theme.conf
virtualenv-1.10.1/docs/conf.py
virtualenv-1.10.1/docs/index.rst
virtualenv-1.10.1/docs/make.bat
virtualenv-1.10.1/docs/Makefile
virtualenv-1.10.1/docs/news.rst
virtualenv-1.10.1/LICENSE.txt
virtualenv-1.10.1/MANIFEST.in
virtualenv-1.10.1/PKG-INFO
virtualenv-1.10.1/README.rst
virtualenv-1.10.1/scripts/
virtualenv-1.10.1/scripts/virtualenv
virtualenv-1.10.1/setup.cfg
virtualenv-1.10.1/setup.py
virtualenv-1.10.1/virtualenv.egg-info/
virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
virtualenv-1.10.1/virtualenv.py
virtualenv-1.10.1/virtualenv_embedded/
virtualenv-1.10.1/virtualenv_embedded/activate.bat
virtualenv-1.10.1/virtualenv_embedded/activate.csh
virtualenv-1.10.1/virtualenv_embedded/activate.fish
virtualenv-1.10.1/virtualenv_embedded/activate.ps1
virtualenv-1.10.1/virtualenv_embedded/activate.sh
virtualenv-1.10.1/virtualenv_embedded/activate_this.py
virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
virtualenv-1.10.1/virtualenv_embedded/site.py
virtualenv-1.10.1/virtualenv_support/
virtualenv-1.10.1/virtualenv_support/__init__.py
virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
+ touch virtualenv-1.10.1/BOOTSTRAPPED
~/test_dev
+ popd
+ exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
Installing Setuptools..............................................................................................................................................................................................................................done.
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
/tmp/pants.BqUkIw ~/test_dev
Downloading/unpacking twitter.common.python==0.2.0
Running setup.py egg_info for package twitter.common.python
Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
Running setup.py egg_info for package setuptools
Installing collected packages: twitter.common.python, setuptools
Running setup.py install for twitter.common.python
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
Found existing installation: setuptools 0.9.8
Uninstalling setuptools:
Successfully uninstalled setuptools
Running setup.py install for setuptools
Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
Successfully installed twitter.common.python setuptools
Cleaning up...
twitter.common.python: Obtaining twitter.pants==0.0.13
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
twitter.common.python: Installing twitter.pants: 0.4ms
twitter.common.python: Distilling twitter.pants: 798.7ms
twitter.common.python: Obtaining twitter.common.quantity==0.1.0
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
twitter.common.python: Installing twitter.common.quantity: 0.2ms
twitter.common.python: Distilling twitter.common.quantity: 94.6ms
twitter.common.python: Obtaining elementtree
twitter.common.python: Obtaining elementtree :: Installing elementtree
twitter.common.python: Obtaining elementtree :: Distilling elementtree
twitter.common.python: Obtaining elementtree: 1681.4ms
twitter.common.python: Installing elementtree: 0.2ms
twitter.common.python: Distilling elementtree: 140.7ms
twitter.common.python: Obtaining twitter.common.config==0.1.0
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
twitter.common.python: Installing twitter.common.config: 0.2ms
twitter.common.python: Distilling twitter.common.config: 92.8ms
twitter.common.python: Obtaining ansicolors
twitter.common.python: Obtaining ansicolors :: Installing ansicolors
twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
twitter.common.python: Obtaining ansicolors: 603.0ms
twitter.common.python: Installing ansicolors: 0.2ms
twitter.common.python: Distilling ansicolors: 86.1ms
twitter.common.python: Obtaining twitter.common.confluence==0.1.0
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
twitter.common.python: Installing twitter.common.confluence: 0.3ms
twitter.common.python: Distilling twitter.common.confluence: 95.8ms
twitter.common.python: Obtaining psutil==1.1.2
twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
twitter.common.python: Installing psutil: 0.4ms
twitter.common.python: Distilling psutil: 446.3ms
twitter.common.python: Obtaining pygments
twitter.common.python: Obtaining pygments: 761.2ms
twitter.common.python: Obtaining twitter.common.decorators==0.1.0
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
twitter.common.python: Installing twitter.common.decorators: 0.2ms
twitter.common.python: Distilling twitter.common.decorators: 94.8ms
twitter.common.python: Obtaining pytest
twitter.common.python: Obtaining pytest :: Installing pytest
twitter.common.python: Obtaining pytest :: Distilling pytest
twitter.common.python: Obtaining pytest: 1700.3ms
twitter.common.python: Installing pytest: 0.3ms
twitter.common.python: Distilling pytest: 413.1ms
twitter.common.python: Obtaining pylint
twitter.common.python: Obtaining pylint :: Installing pylint
twitter.common.python: Obtaining pylint :: Distilling pylint
twitter.common.python: Obtaining pylint: 1301.7ms
twitter.common.python: Installing pylint: 0.3ms
twitter.common.python: Distilling pylint: 440.7ms
twitter.common.python: Obtaining pytest-cov
twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
twitter.common.python: Obtaining pytest-cov: 532.5ms
twitter.common.python: Installing pytest-cov: 0.2ms
twitter.common.python: Distilling pytest-cov: 88.1ms
twitter.common.python: Obtaining twitter.common.process==0.1.0
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
twitter.common.python: Installing twitter.common.process: 0.2ms
twitter.common.python: Distilling twitter.common.process: 110.1ms
twitter.common.python: Obtaining twitter.common.util==0.1.0
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
twitter.common.python: Installing twitter.common.util: 0.2ms
twitter.common.python: Distilling twitter.common.util: 91.9ms
twitter.common.python: Obtaining markdown
twitter.common.python: Obtaining markdown :: Installing Markdown
twitter.common.python: Obtaining markdown :: Distilling Markdown
twitter.common.python: Obtaining markdown: 1247.1ms
twitter.common.python: Installing Markdown: 0.5ms
twitter.common.python: Distilling Markdown: 495.1ms
twitter.common.python: Obtaining twitter.common.python==0.2.2
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
twitter.common.python: Installing twitter.common.python: 0.3ms
twitter.common.python: Distilling twitter.common.python: 238.7ms
twitter.common.python: Obtaining mako
twitter.common.python: Obtaining mako :: Installing Mako
twitter.common.python: Obtaining mako :: Distilling Mako
twitter.common.python: Obtaining mako: 1069.3ms
twitter.common.python: Installing Mako: 0.3ms
twitter.common.python: Distilling Mako: 291.9ms
twitter.common.python: Obtaining twitter.common.lang==0.1.0
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
twitter.common.python: Installing twitter.common.lang: 0.2ms
twitter.common.python: Distilling twitter.common.lang: 95.4ms
twitter.common.python: Obtaining twitter.common.collections==0.1.0
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
twitter.common.python: Installing twitter.common.collections: 0.2ms
twitter.common.python: Distilling twitter.common.collections: 103.2ms
twitter.common.python: Obtaining twitter.common.options==0.1.0
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
twitter.common.python: Installing twitter.common.options: 0.2ms
twitter.common.python: Distilling twitter.common.options: 92.8ms
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
twitter.common.python: Installing twitter.common.dirutil: 0.4ms
twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
twitter.common.python: Obtaining twitter.common.log==0.1.0
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
twitter.common.python: Installing twitter.common.log: 0.2ms
twitter.common.python: Distilling twitter.common.log: 135.2ms
twitter.common.python: Obtaining py>=1.4.19
twitter.common.python: Obtaining py>=1.4.19 :: Installing py
twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
twitter.common.python: Obtaining py>=1.4.19: 871.5ms
twitter.common.python: Installing py: 0.3ms
twitter.common.python: Distilling py: 319.6ms
twitter.common.python: Obtaining astroid>=0.24.3
twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
twitter.common.python: Installing astroid: 0.4ms
twitter.common.python: Distilling astroid: 399.9ms
twitter.common.python: Obtaining logilab-common>=0.53.0
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
twitter.common.python: Installing logilab-common: 0.4ms
twitter.common.python: Distilling logilab-common: 603.8ms
twitter.common.python: Obtaining cov-core>=1.6
twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
twitter.common.python: Installing cov-core: 0.4ms
twitter.common.python: Distilling cov-core: 93.6ms
twitter.common.python: Obtaining twitter.common.string==0.1.0
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
twitter.common.python: Installing twitter.common.string: 0.2ms
twitter.common.python: Distilling twitter.common.string: 93.8ms
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
twitter.common.python: Installing twitter.common.contextutil: 0.5ms
twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
twitter.common.python: Obtaining setuptools==1.1.7
twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
twitter.common.python: Installing setuptools: 0.3ms
twitter.common.python: Distilling setuptools: 618.8ms
twitter.common.python: Obtaining MarkupSafe>=0.9.2
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
twitter.common.python: Installing MarkupSafe: 0.3ms
twitter.common.python: Distilling MarkupSafe: 251.4ms
twitter.common.python: Obtaining coverage>=3.4
twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
twitter.common.python: Installing coverage: 0.3ms
twitter.common.python: Distilling coverage: 425.6ms
~/test_dev
Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
Wrote /home/vagrant/test_dev/dist/aurora_client.pex
Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
Wrote /home/vagrant/test_dev/dist/flask_example.pex
== Creating job
INFO] Creating job flask_example
INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
== Updating test job
INFO] Updating job: flask_example
INFO] Starting job update.
INFO] Examining instances: [0]
INFO] Killing instances: [0]
INFO] Instances killed
INFO] Adding instances: [0]
INFO] Instances added
INFO] Watching instances: [0]
INFO] Detected RUNNING instance 0
INFO] Instance 0 has been up and healthy for at least 30 seconds
INFO] Update successful
INFO] Response from scheduler: OK (message: Lock has been released.)
INFO] Killing tasks for job: example/vagrant/test/flask_example
INFO] Response from scheduler: OK (message: Tasks killed.)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
***
OK (all tests passed)
***
[sun-wukong incubator-aurora (e2e)]$
Thanks,
Mark Chu-Carroll
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/
-----------------------------------------------------------
(Updated Feb. 3, 2014, 5:55 p.m.)
Review request for Aurora, Bill Farner and Brian Wickman.
Changes
-------
Addressed more review comments.
Bugs: aurora-125 and aurora-80
https://issues.apache.org/jira/browse/aurora-125
https://issues.apache.org/jira/browse/aurora-80
Repository: aurora
Description
-------
Got an initial version of the end-to-end test working.
Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
"aurora run" and "aurora ssh" to probe the running tasks.
Diffs (updated)
-----
3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
Diff: https://reviews.apache.org/r/17457/diff/
Testing
-------
[sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
Bringing machine 'devtools' up with 'virtualbox' provider...
Bringing machine 'zookeeper' up with 'virtualbox' provider...
Bringing machine 'mesos-master' up with 'virtualbox' provider...
Bringing machine 'mesos-slave' up with 'virtualbox' provider...
Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
[devtools] VirtualBox VM is already running.
[zookeeper] VirtualBox VM is already running.
[mesos-master] VirtualBox VM is already running.
[mesos-slave] VirtualBox VM is already running.
[aurora-scheduler] VirtualBox VM is already running.
Cloning into '/home/vagrant/test_dev'...
done.
Already on 'e2e'
Already up-to-date.
+ VIRTUALENV_VERSION=1.10.1
+ which python2.7
++ which python2.7
+ PY=/usr/bin/python2.7
+ echo 'Using /usr/bin/python2.7'
Using /usr/bin/python2.7
+ '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
+ pushd build-support
~/test_dev/build-support ~/test_dev
+ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
+ tar zxvf virtualenv-1.10.1.tar.gz
virtualenv-1.10.1/
virtualenv-1.10.1/AUTHORS.txt
virtualenv-1.10.1/bin/
virtualenv-1.10.1/bin/rebuild-script.py
virtualenv-1.10.1/docs/
virtualenv-1.10.1/docs/_theme/
virtualenv-1.10.1/docs/_theme/nature/
virtualenv-1.10.1/docs/_theme/nature/static/
virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
virtualenv-1.10.1/docs/_theme/nature/theme.conf
virtualenv-1.10.1/docs/conf.py
virtualenv-1.10.1/docs/index.rst
virtualenv-1.10.1/docs/make.bat
virtualenv-1.10.1/docs/Makefile
virtualenv-1.10.1/docs/news.rst
virtualenv-1.10.1/LICENSE.txt
virtualenv-1.10.1/MANIFEST.in
virtualenv-1.10.1/PKG-INFO
virtualenv-1.10.1/README.rst
virtualenv-1.10.1/scripts/
virtualenv-1.10.1/scripts/virtualenv
virtualenv-1.10.1/setup.cfg
virtualenv-1.10.1/setup.py
virtualenv-1.10.1/virtualenv.egg-info/
virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
virtualenv-1.10.1/virtualenv.py
virtualenv-1.10.1/virtualenv_embedded/
virtualenv-1.10.1/virtualenv_embedded/activate.bat
virtualenv-1.10.1/virtualenv_embedded/activate.csh
virtualenv-1.10.1/virtualenv_embedded/activate.fish
virtualenv-1.10.1/virtualenv_embedded/activate.ps1
virtualenv-1.10.1/virtualenv_embedded/activate.sh
virtualenv-1.10.1/virtualenv_embedded/activate_this.py
virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
virtualenv-1.10.1/virtualenv_embedded/site.py
virtualenv-1.10.1/virtualenv_support/
virtualenv-1.10.1/virtualenv_support/__init__.py
virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
+ touch virtualenv-1.10.1/BOOTSTRAPPED
~/test_dev
+ popd
+ exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
Installing Setuptools..............................................................................................................................................................................................................................done.
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
/tmp/pants.BqUkIw ~/test_dev
Downloading/unpacking twitter.common.python==0.2.0
Running setup.py egg_info for package twitter.common.python
Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
Running setup.py egg_info for package setuptools
Installing collected packages: twitter.common.python, setuptools
Running setup.py install for twitter.common.python
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
Found existing installation: setuptools 0.9.8
Uninstalling setuptools:
Successfully uninstalled setuptools
Running setup.py install for setuptools
Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
Successfully installed twitter.common.python setuptools
Cleaning up...
twitter.common.python: Obtaining twitter.pants==0.0.13
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
twitter.common.python: Installing twitter.pants: 0.4ms
twitter.common.python: Distilling twitter.pants: 798.7ms
twitter.common.python: Obtaining twitter.common.quantity==0.1.0
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
twitter.common.python: Installing twitter.common.quantity: 0.2ms
twitter.common.python: Distilling twitter.common.quantity: 94.6ms
twitter.common.python: Obtaining elementtree
twitter.common.python: Obtaining elementtree :: Installing elementtree
twitter.common.python: Obtaining elementtree :: Distilling elementtree
twitter.common.python: Obtaining elementtree: 1681.4ms
twitter.common.python: Installing elementtree: 0.2ms
twitter.common.python: Distilling elementtree: 140.7ms
twitter.common.python: Obtaining twitter.common.config==0.1.0
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
twitter.common.python: Installing twitter.common.config: 0.2ms
twitter.common.python: Distilling twitter.common.config: 92.8ms
twitter.common.python: Obtaining ansicolors
twitter.common.python: Obtaining ansicolors :: Installing ansicolors
twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
twitter.common.python: Obtaining ansicolors: 603.0ms
twitter.common.python: Installing ansicolors: 0.2ms
twitter.common.python: Distilling ansicolors: 86.1ms
twitter.common.python: Obtaining twitter.common.confluence==0.1.0
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
twitter.common.python: Installing twitter.common.confluence: 0.3ms
twitter.common.python: Distilling twitter.common.confluence: 95.8ms
twitter.common.python: Obtaining psutil==1.1.2
twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
twitter.common.python: Installing psutil: 0.4ms
twitter.common.python: Distilling psutil: 446.3ms
twitter.common.python: Obtaining pygments
twitter.common.python: Obtaining pygments: 761.2ms
twitter.common.python: Obtaining twitter.common.decorators==0.1.0
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
twitter.common.python: Installing twitter.common.decorators: 0.2ms
twitter.common.python: Distilling twitter.common.decorators: 94.8ms
twitter.common.python: Obtaining pytest
twitter.common.python: Obtaining pytest :: Installing pytest
twitter.common.python: Obtaining pytest :: Distilling pytest
twitter.common.python: Obtaining pytest: 1700.3ms
twitter.common.python: Installing pytest: 0.3ms
twitter.common.python: Distilling pytest: 413.1ms
twitter.common.python: Obtaining pylint
twitter.common.python: Obtaining pylint :: Installing pylint
twitter.common.python: Obtaining pylint :: Distilling pylint
twitter.common.python: Obtaining pylint: 1301.7ms
twitter.common.python: Installing pylint: 0.3ms
twitter.common.python: Distilling pylint: 440.7ms
twitter.common.python: Obtaining pytest-cov
twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
twitter.common.python: Obtaining pytest-cov: 532.5ms
twitter.common.python: Installing pytest-cov: 0.2ms
twitter.common.python: Distilling pytest-cov: 88.1ms
twitter.common.python: Obtaining twitter.common.process==0.1.0
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
twitter.common.python: Installing twitter.common.process: 0.2ms
twitter.common.python: Distilling twitter.common.process: 110.1ms
twitter.common.python: Obtaining twitter.common.util==0.1.0
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
twitter.common.python: Installing twitter.common.util: 0.2ms
twitter.common.python: Distilling twitter.common.util: 91.9ms
twitter.common.python: Obtaining markdown
twitter.common.python: Obtaining markdown :: Installing Markdown
twitter.common.python: Obtaining markdown :: Distilling Markdown
twitter.common.python: Obtaining markdown: 1247.1ms
twitter.common.python: Installing Markdown: 0.5ms
twitter.common.python: Distilling Markdown: 495.1ms
twitter.common.python: Obtaining twitter.common.python==0.2.2
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
twitter.common.python: Installing twitter.common.python: 0.3ms
twitter.common.python: Distilling twitter.common.python: 238.7ms
twitter.common.python: Obtaining mako
twitter.common.python: Obtaining mako :: Installing Mako
twitter.common.python: Obtaining mako :: Distilling Mako
twitter.common.python: Obtaining mako: 1069.3ms
twitter.common.python: Installing Mako: 0.3ms
twitter.common.python: Distilling Mako: 291.9ms
twitter.common.python: Obtaining twitter.common.lang==0.1.0
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
twitter.common.python: Installing twitter.common.lang: 0.2ms
twitter.common.python: Distilling twitter.common.lang: 95.4ms
twitter.common.python: Obtaining twitter.common.collections==0.1.0
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
twitter.common.python: Installing twitter.common.collections: 0.2ms
twitter.common.python: Distilling twitter.common.collections: 103.2ms
twitter.common.python: Obtaining twitter.common.options==0.1.0
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
twitter.common.python: Installing twitter.common.options: 0.2ms
twitter.common.python: Distilling twitter.common.options: 92.8ms
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
twitter.common.python: Installing twitter.common.dirutil: 0.4ms
twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
twitter.common.python: Obtaining twitter.common.log==0.1.0
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
twitter.common.python: Installing twitter.common.log: 0.2ms
twitter.common.python: Distilling twitter.common.log: 135.2ms
twitter.common.python: Obtaining py>=1.4.19
twitter.common.python: Obtaining py>=1.4.19 :: Installing py
twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
twitter.common.python: Obtaining py>=1.4.19: 871.5ms
twitter.common.python: Installing py: 0.3ms
twitter.common.python: Distilling py: 319.6ms
twitter.common.python: Obtaining astroid>=0.24.3
twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
twitter.common.python: Installing astroid: 0.4ms
twitter.common.python: Distilling astroid: 399.9ms
twitter.common.python: Obtaining logilab-common>=0.53.0
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
twitter.common.python: Installing logilab-common: 0.4ms
twitter.common.python: Distilling logilab-common: 603.8ms
twitter.common.python: Obtaining cov-core>=1.6
twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
twitter.common.python: Installing cov-core: 0.4ms
twitter.common.python: Distilling cov-core: 93.6ms
twitter.common.python: Obtaining twitter.common.string==0.1.0
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
twitter.common.python: Installing twitter.common.string: 0.2ms
twitter.common.python: Distilling twitter.common.string: 93.8ms
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
twitter.common.python: Installing twitter.common.contextutil: 0.5ms
twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
twitter.common.python: Obtaining setuptools==1.1.7
twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
twitter.common.python: Installing setuptools: 0.3ms
twitter.common.python: Distilling setuptools: 618.8ms
twitter.common.python: Obtaining MarkupSafe>=0.9.2
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
twitter.common.python: Installing MarkupSafe: 0.3ms
twitter.common.python: Distilling MarkupSafe: 251.4ms
twitter.common.python: Obtaining coverage>=3.4
twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
twitter.common.python: Installing coverage: 0.3ms
twitter.common.python: Distilling coverage: 425.6ms
~/test_dev
Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
Wrote /home/vagrant/test_dev/dist/aurora_client.pex
Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
Wrote /home/vagrant/test_dev/dist/flask_example.pex
== Creating job
INFO] Creating job flask_example
INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
== Updating test job
INFO] Updating job: flask_example
INFO] Starting job update.
INFO] Examining instances: [0]
INFO] Killing instances: [0]
INFO] Instances killed
INFO] Adding instances: [0]
INFO] Instances added
INFO] Watching instances: [0]
INFO] Detected RUNNING instance 0
INFO] Instance 0 has been up and healthy for at least 30 seconds
INFO] Update successful
INFO] Response from scheduler: OK (message: Lock has been released.)
INFO] Killing tasks for job: example/vagrant/test/flask_example
INFO] Response from scheduler: OK (message: Tasks killed.)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
***
OK (all tests passed)
***
[sun-wukong incubator-aurora (e2e)]$
Thanks,
Mark Chu-Carroll
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/
-----------------------------------------------------------
(Updated Feb. 3, 2014, 3:16 p.m.)
Review request for Aurora, Bill Farner and Brian Wickman.
Changes
-------
Address review comments.
Bugs: aurora-125 and aurora-80
https://issues.apache.org/jira/browse/aurora-125
https://issues.apache.org/jira/browse/aurora-80
Repository: aurora
Description
-------
Got an initial version of the end-to-end test working.
Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
"aurora run" and "aurora ssh" to probe the running tasks.
Diffs (updated)
-----
3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
Diff: https://reviews.apache.org/r/17457/diff/
Testing
-------
[sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
Bringing machine 'devtools' up with 'virtualbox' provider...
Bringing machine 'zookeeper' up with 'virtualbox' provider...
Bringing machine 'mesos-master' up with 'virtualbox' provider...
Bringing machine 'mesos-slave' up with 'virtualbox' provider...
Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
[devtools] VirtualBox VM is already running.
[zookeeper] VirtualBox VM is already running.
[mesos-master] VirtualBox VM is already running.
[mesos-slave] VirtualBox VM is already running.
[aurora-scheduler] VirtualBox VM is already running.
Cloning into '/home/vagrant/test_dev'...
done.
Already on 'e2e'
Already up-to-date.
+ VIRTUALENV_VERSION=1.10.1
+ which python2.7
++ which python2.7
+ PY=/usr/bin/python2.7
+ echo 'Using /usr/bin/python2.7'
Using /usr/bin/python2.7
+ '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
+ pushd build-support
~/test_dev/build-support ~/test_dev
+ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
+ tar zxvf virtualenv-1.10.1.tar.gz
virtualenv-1.10.1/
virtualenv-1.10.1/AUTHORS.txt
virtualenv-1.10.1/bin/
virtualenv-1.10.1/bin/rebuild-script.py
virtualenv-1.10.1/docs/
virtualenv-1.10.1/docs/_theme/
virtualenv-1.10.1/docs/_theme/nature/
virtualenv-1.10.1/docs/_theme/nature/static/
virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
virtualenv-1.10.1/docs/_theme/nature/theme.conf
virtualenv-1.10.1/docs/conf.py
virtualenv-1.10.1/docs/index.rst
virtualenv-1.10.1/docs/make.bat
virtualenv-1.10.1/docs/Makefile
virtualenv-1.10.1/docs/news.rst
virtualenv-1.10.1/LICENSE.txt
virtualenv-1.10.1/MANIFEST.in
virtualenv-1.10.1/PKG-INFO
virtualenv-1.10.1/README.rst
virtualenv-1.10.1/scripts/
virtualenv-1.10.1/scripts/virtualenv
virtualenv-1.10.1/setup.cfg
virtualenv-1.10.1/setup.py
virtualenv-1.10.1/virtualenv.egg-info/
virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
virtualenv-1.10.1/virtualenv.py
virtualenv-1.10.1/virtualenv_embedded/
virtualenv-1.10.1/virtualenv_embedded/activate.bat
virtualenv-1.10.1/virtualenv_embedded/activate.csh
virtualenv-1.10.1/virtualenv_embedded/activate.fish
virtualenv-1.10.1/virtualenv_embedded/activate.ps1
virtualenv-1.10.1/virtualenv_embedded/activate.sh
virtualenv-1.10.1/virtualenv_embedded/activate_this.py
virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
virtualenv-1.10.1/virtualenv_embedded/site.py
virtualenv-1.10.1/virtualenv_support/
virtualenv-1.10.1/virtualenv_support/__init__.py
virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
+ touch virtualenv-1.10.1/BOOTSTRAPPED
~/test_dev
+ popd
+ exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
Installing Setuptools..............................................................................................................................................................................................................................done.
Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
/tmp/pants.BqUkIw ~/test_dev
Downloading/unpacking twitter.common.python==0.2.0
Running setup.py egg_info for package twitter.common.python
Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
Running setup.py egg_info for package setuptools
Installing collected packages: twitter.common.python, setuptools
Running setup.py install for twitter.common.python
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
Found existing installation: setuptools 0.9.8
Uninstalling setuptools:
Successfully uninstalled setuptools
Running setup.py install for setuptools
Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
Successfully installed twitter.common.python setuptools
Cleaning up...
twitter.common.python: Obtaining twitter.pants==0.0.13
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
twitter.common.python: Installing twitter.pants: 0.4ms
twitter.common.python: Distilling twitter.pants: 798.7ms
twitter.common.python: Obtaining twitter.common.quantity==0.1.0
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
twitter.common.python: Installing twitter.common.quantity: 0.2ms
twitter.common.python: Distilling twitter.common.quantity: 94.6ms
twitter.common.python: Obtaining elementtree
twitter.common.python: Obtaining elementtree :: Installing elementtree
twitter.common.python: Obtaining elementtree :: Distilling elementtree
twitter.common.python: Obtaining elementtree: 1681.4ms
twitter.common.python: Installing elementtree: 0.2ms
twitter.common.python: Distilling elementtree: 140.7ms
twitter.common.python: Obtaining twitter.common.config==0.1.0
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
twitter.common.python: Installing twitter.common.config: 0.2ms
twitter.common.python: Distilling twitter.common.config: 92.8ms
twitter.common.python: Obtaining ansicolors
twitter.common.python: Obtaining ansicolors :: Installing ansicolors
twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
twitter.common.python: Obtaining ansicolors: 603.0ms
twitter.common.python: Installing ansicolors: 0.2ms
twitter.common.python: Distilling ansicolors: 86.1ms
twitter.common.python: Obtaining twitter.common.confluence==0.1.0
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
twitter.common.python: Installing twitter.common.confluence: 0.3ms
twitter.common.python: Distilling twitter.common.confluence: 95.8ms
twitter.common.python: Obtaining psutil==1.1.2
twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
twitter.common.python: Installing psutil: 0.4ms
twitter.common.python: Distilling psutil: 446.3ms
twitter.common.python: Obtaining pygments
twitter.common.python: Obtaining pygments: 761.2ms
twitter.common.python: Obtaining twitter.common.decorators==0.1.0
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
twitter.common.python: Installing twitter.common.decorators: 0.2ms
twitter.common.python: Distilling twitter.common.decorators: 94.8ms
twitter.common.python: Obtaining pytest
twitter.common.python: Obtaining pytest :: Installing pytest
twitter.common.python: Obtaining pytest :: Distilling pytest
twitter.common.python: Obtaining pytest: 1700.3ms
twitter.common.python: Installing pytest: 0.3ms
twitter.common.python: Distilling pytest: 413.1ms
twitter.common.python: Obtaining pylint
twitter.common.python: Obtaining pylint :: Installing pylint
twitter.common.python: Obtaining pylint :: Distilling pylint
twitter.common.python: Obtaining pylint: 1301.7ms
twitter.common.python: Installing pylint: 0.3ms
twitter.common.python: Distilling pylint: 440.7ms
twitter.common.python: Obtaining pytest-cov
twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
twitter.common.python: Obtaining pytest-cov: 532.5ms
twitter.common.python: Installing pytest-cov: 0.2ms
twitter.common.python: Distilling pytest-cov: 88.1ms
twitter.common.python: Obtaining twitter.common.process==0.1.0
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
twitter.common.python: Installing twitter.common.process: 0.2ms
twitter.common.python: Distilling twitter.common.process: 110.1ms
twitter.common.python: Obtaining twitter.common.util==0.1.0
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
twitter.common.python: Installing twitter.common.util: 0.2ms
twitter.common.python: Distilling twitter.common.util: 91.9ms
twitter.common.python: Obtaining markdown
twitter.common.python: Obtaining markdown :: Installing Markdown
twitter.common.python: Obtaining markdown :: Distilling Markdown
twitter.common.python: Obtaining markdown: 1247.1ms
twitter.common.python: Installing Markdown: 0.5ms
twitter.common.python: Distilling Markdown: 495.1ms
twitter.common.python: Obtaining twitter.common.python==0.2.2
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
twitter.common.python: Installing twitter.common.python: 0.3ms
twitter.common.python: Distilling twitter.common.python: 238.7ms
twitter.common.python: Obtaining mako
twitter.common.python: Obtaining mako :: Installing Mako
twitter.common.python: Obtaining mako :: Distilling Mako
twitter.common.python: Obtaining mako: 1069.3ms
twitter.common.python: Installing Mako: 0.3ms
twitter.common.python: Distilling Mako: 291.9ms
twitter.common.python: Obtaining twitter.common.lang==0.1.0
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
twitter.common.python: Installing twitter.common.lang: 0.2ms
twitter.common.python: Distilling twitter.common.lang: 95.4ms
twitter.common.python: Obtaining twitter.common.collections==0.1.0
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
twitter.common.python: Installing twitter.common.collections: 0.2ms
twitter.common.python: Distilling twitter.common.collections: 103.2ms
twitter.common.python: Obtaining twitter.common.options==0.1.0
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
twitter.common.python: Installing twitter.common.options: 0.2ms
twitter.common.python: Distilling twitter.common.options: 92.8ms
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
twitter.common.python: Installing twitter.common.dirutil: 0.4ms
twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
twitter.common.python: Obtaining twitter.common.log==0.1.0
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
twitter.common.python: Installing twitter.common.log: 0.2ms
twitter.common.python: Distilling twitter.common.log: 135.2ms
twitter.common.python: Obtaining py>=1.4.19
twitter.common.python: Obtaining py>=1.4.19 :: Installing py
twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
twitter.common.python: Obtaining py>=1.4.19: 871.5ms
twitter.common.python: Installing py: 0.3ms
twitter.common.python: Distilling py: 319.6ms
twitter.common.python: Obtaining astroid>=0.24.3
twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
twitter.common.python: Installing astroid: 0.4ms
twitter.common.python: Distilling astroid: 399.9ms
twitter.common.python: Obtaining logilab-common>=0.53.0
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
twitter.common.python: Installing logilab-common: 0.4ms
twitter.common.python: Distilling logilab-common: 603.8ms
twitter.common.python: Obtaining cov-core>=1.6
twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
twitter.common.python: Installing cov-core: 0.4ms
twitter.common.python: Distilling cov-core: 93.6ms
twitter.common.python: Obtaining twitter.common.string==0.1.0
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
twitter.common.python: Installing twitter.common.string: 0.2ms
twitter.common.python: Distilling twitter.common.string: 93.8ms
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
twitter.common.python: Installing twitter.common.contextutil: 0.5ms
twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
twitter.common.python: Obtaining setuptools==1.1.7
twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
twitter.common.python: Installing setuptools: 0.3ms
twitter.common.python: Distilling setuptools: 618.8ms
twitter.common.python: Obtaining MarkupSafe>=0.9.2
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
twitter.common.python: Installing MarkupSafe: 0.3ms
twitter.common.python: Distilling MarkupSafe: 251.4ms
twitter.common.python: Obtaining coverage>=3.4
twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
twitter.common.python: Installing coverage: 0.3ms
twitter.common.python: Distilling coverage: 425.6ms
~/test_dev
Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
Wrote /home/vagrant/test_dev/dist/aurora_client.pex
Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
Wrote /home/vagrant/test_dev/dist/flask_example.pex
== Creating job
INFO] Creating job flask_example
INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
== Updating test job
INFO] Updating job: flask_example
INFO] Starting job update.
INFO] Examining instances: [0]
INFO] Killing instances: [0]
INFO] Instances killed
INFO] Adding instances: [0]
INFO] Instances added
INFO] Watching instances: [0]
INFO] Detected RUNNING instance 0
INFO] Instance 0 has been up and healthy for at least 30 seconds
INFO] Update successful
INFO] Response from scheduler: OK (message: Lock has been released.)
INFO] Killing tasks for job: example/vagrant/test/flask_example
INFO] Response from scheduler: OK (message: Tasks killed.)
INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
***
OK (all tests passed)
***
[sun-wukong incubator-aurora (e2e)]$
Thanks,
Mark Chu-Carroll
Re: Review Request 17457: Initial version of an end-to-end test using vagrant
Posted by Mark Chu-Carroll <mc...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17457/#review33476
-----------------------------------------------------------
examples/vagrant/provision-dev-environment.sh
<https://reviews.apache.org/r/17457/#comment62917>
Because in the vmware precise64 image, git and python-setuptools aren't included.
With these added to the list, the test works on both vmware and virtualbox.
- Mark Chu-Carroll
On Feb. 3, 2014, 11:30 a.m., Mark Chu-Carroll wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17457/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2014, 11:30 a.m.)
>
>
> Review request for Aurora, Bill Farner and Brian Wickman.
>
>
> Bugs: aurora-125 and aurora-80
> https://issues.apache.org/jira/browse/aurora-125
> https://issues.apache.org/jira/browse/aurora-80
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Got an initial version of the end-to-end test working.
>
> Currently creates a job, probes it via the scheduler pages, updates it, and kills it.
> AURORA-127 will extend this to run multiple instances; AURORA-125 will extend this to use
> "aurora run" and "aurora ssh" to probe the running tasks.
>
>
> Diffs
> -----
>
> 3rdparty/python/BUILD cc3e8c929e7b2b614a6ea3dbbb4e70d2f8d22586
> Vagrantfile 98dcf439aed53da5e78440de04562baf63c7272f
> examples/vagrant/provision-aurora-scheduler.sh e48291a8673aeb8888169747486b7d50a54f5a56
> examples/vagrant/provision-dev-environment.sh 7fc11bf523a054f6d068cf676e87bb043d854a25
> examples/vagrant/provision-mesos-slave.sh c2548a268e0fad7aa4f84d3fa48aea012007502b
> src/test/sh/org/apache/aurora/e2e/flask/BUILD PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example.py PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/flask/flask_example_updated.aurora PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_common.sh PRE-CREATION
> src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh PRE-CREATION
>
> Diff: https://reviews.apache.org/r/17457/diff/
>
>
> Testing
> -------
>
> [sun-wukong incubator-aurora (e2e)]$ sh src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh
> Bringing machine 'devtools' up with 'virtualbox' provider...
> Bringing machine 'zookeeper' up with 'virtualbox' provider...
> Bringing machine 'mesos-master' up with 'virtualbox' provider...
> Bringing machine 'mesos-slave' up with 'virtualbox' provider...
> Bringing machine 'aurora-scheduler' up with 'virtualbox' provider...
> [devtools] VirtualBox VM is already running.
> [zookeeper] VirtualBox VM is already running.
> [mesos-master] VirtualBox VM is already running.
> [mesos-slave] VirtualBox VM is already running.
> [aurora-scheduler] VirtualBox VM is already running.
> Cloning into '/home/vagrant/test_dev'...
> done.
> Already on 'e2e'
> Already up-to-date.
> + VIRTUALENV_VERSION=1.10.1
> + which python2.7
> ++ which python2.7
> + PY=/usr/bin/python2.7
> + echo 'Using /usr/bin/python2.7'
> Using /usr/bin/python2.7
> + '[' -f build-support/virtualenv-1.10.1/BOOTSTRAPPED ']'
> + pushd build-support
> ~/test_dev/build-support ~/test_dev
> + curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1294k 100 1294k 0 0 3261k 0 --:--:-- --:--:-- --:--:-- 3817k
> + tar zxvf virtualenv-1.10.1.tar.gz
> virtualenv-1.10.1/
> virtualenv-1.10.1/AUTHORS.txt
> virtualenv-1.10.1/bin/
> virtualenv-1.10.1/bin/rebuild-script.py
> virtualenv-1.10.1/docs/
> virtualenv-1.10.1/docs/_theme/
> virtualenv-1.10.1/docs/_theme/nature/
> virtualenv-1.10.1/docs/_theme/nature/static/
> virtualenv-1.10.1/docs/_theme/nature/static/nature.css_t
> virtualenv-1.10.1/docs/_theme/nature/static/pygments.css
> virtualenv-1.10.1/docs/_theme/nature/theme.conf
> virtualenv-1.10.1/docs/conf.py
> virtualenv-1.10.1/docs/index.rst
> virtualenv-1.10.1/docs/make.bat
> virtualenv-1.10.1/docs/Makefile
> virtualenv-1.10.1/docs/news.rst
> virtualenv-1.10.1/LICENSE.txt
> virtualenv-1.10.1/MANIFEST.in
> virtualenv-1.10.1/PKG-INFO
> virtualenv-1.10.1/README.rst
> virtualenv-1.10.1/scripts/
> virtualenv-1.10.1/scripts/virtualenv
> virtualenv-1.10.1/setup.cfg
> virtualenv-1.10.1/setup.py
> virtualenv-1.10.1/virtualenv.egg-info/
> virtualenv-1.10.1/virtualenv.egg-info/dependency_links.txt
> virtualenv-1.10.1/virtualenv.egg-info/entry_points.txt
> virtualenv-1.10.1/virtualenv.egg-info/not-zip-safe
> virtualenv-1.10.1/virtualenv.egg-info/PKG-INFO
> virtualenv-1.10.1/virtualenv.egg-info/SOURCES.txt
> virtualenv-1.10.1/virtualenv.egg-info/top_level.txt
> virtualenv-1.10.1/virtualenv.py
> virtualenv-1.10.1/virtualenv_embedded/
> virtualenv-1.10.1/virtualenv_embedded/activate.bat
> virtualenv-1.10.1/virtualenv_embedded/activate.csh
> virtualenv-1.10.1/virtualenv_embedded/activate.fish
> virtualenv-1.10.1/virtualenv_embedded/activate.ps1
> virtualenv-1.10.1/virtualenv_embedded/activate.sh
> virtualenv-1.10.1/virtualenv_embedded/activate_this.py
> virtualenv-1.10.1/virtualenv_embedded/deactivate.bat
> virtualenv-1.10.1/virtualenv_embedded/distutils-init.py
> virtualenv-1.10.1/virtualenv_embedded/distutils.cfg
> virtualenv-1.10.1/virtualenv_embedded/site.py
> virtualenv-1.10.1/virtualenv_support/
> virtualenv-1.10.1/virtualenv_support/__init__.py
> virtualenv-1.10.1/virtualenv_support/pip-1.4.1.tar.gz
> virtualenv-1.10.1/virtualenv_support/setuptools-0.9.8.tar.gz
> + touch virtualenv-1.10.1/BOOTSTRAPPED
> ~/test_dev
> + popd
> + exec /usr/bin/python2.7 build-support/virtualenv-1.10.1/virtualenv.py /tmp/pants.BqUkIw/tcp
> New python executable in /tmp/pants.BqUkIw/tcp/bin/python2.7
> Also creating executable in /tmp/pants.BqUkIw/tcp/bin/python
> Installing Setuptools..............................................................................................................................................................................................................................done.
> Installing Pip.....................................................................................................................................................................................................................................................................................................................................done.
> /tmp/pants.BqUkIw ~/test_dev
> Downloading/unpacking twitter.common.python==0.2.0
> Running setup.py egg_info for package twitter.common.python
>
> Downloading/unpacking setuptools==1.1.7 (from twitter.common.python==0.2.0)
> Running setup.py egg_info for package setuptools
>
> Installing collected packages: twitter.common.python, setuptools
> Running setup.py install for twitter.common.python
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/__init__.py (namespace package)
> Skipping installation of /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter/common/__init__.py (namespace package)
>
> Installing /tmp/pants.BqUkIw/tcp/lib/python2.7/site-packages/twitter.common.python-0.2.0-py2.7-nspkg.pth
> Found existing installation: setuptools 0.9.8
> Uninstalling setuptools:
> Successfully uninstalled setuptools
> Running setup.py install for setuptools
>
> Installing easy_install script to /tmp/pants.BqUkIw/tcp/bin
> Installing easy_install-2.7 script to /tmp/pants.BqUkIw/tcp/bin
> Successfully installed twitter.common.python setuptools
> Cleaning up...
> twitter.common.python: Obtaining twitter.pants==0.0.13
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Installing twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13 :: Distilling twitter.pants
> twitter.common.python: Obtaining twitter.pants==0.0.13: 1413.4ms
> twitter.common.python: Installing twitter.pants: 0.4ms
> twitter.common.python: Distilling twitter.pants: 798.7ms
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Installing twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0 :: Distilling twitter.common.quantity
> twitter.common.python: Obtaining twitter.common.quantity==0.1.0: 646.7ms
> twitter.common.python: Installing twitter.common.quantity: 0.2ms
> twitter.common.python: Distilling twitter.common.quantity: 94.6ms
> twitter.common.python: Obtaining elementtree
> twitter.common.python: Obtaining elementtree :: Installing elementtree
> twitter.common.python: Obtaining elementtree :: Distilling elementtree
> twitter.common.python: Obtaining elementtree: 1681.4ms
> twitter.common.python: Installing elementtree: 0.2ms
> twitter.common.python: Distilling elementtree: 140.7ms
> twitter.common.python: Obtaining twitter.common.config==0.1.0
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Installing twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0 :: Distilling twitter.common.config
> twitter.common.python: Obtaining twitter.common.config==0.1.0: 490.8ms
> twitter.common.python: Installing twitter.common.config: 0.2ms
> twitter.common.python: Distilling twitter.common.config: 92.8ms
> twitter.common.python: Obtaining ansicolors
> twitter.common.python: Obtaining ansicolors :: Installing ansicolors
> twitter.common.python: Obtaining ansicolors :: Distilling ansicolors
> twitter.common.python: Obtaining ansicolors: 603.0ms
> twitter.common.python: Installing ansicolors: 0.2ms
> twitter.common.python: Distilling ansicolors: 86.1ms
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Installing twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0 :: Distilling twitter.common.confluence
> twitter.common.python: Obtaining twitter.common.confluence==0.1.0: 759.4ms
> twitter.common.python: Installing twitter.common.confluence: 0.3ms
> twitter.common.python: Distilling twitter.common.confluence: 95.8ms
> twitter.common.python: Obtaining psutil==1.1.2
> twitter.common.python: Obtaining psutil==1.1.2 :: Installing psutil
> twitter.common.python: Obtaining psutil==1.1.2 :: Distilling psutil
> twitter.common.python: Obtaining psutil==1.1.2: 1487.2ms
> twitter.common.python: Installing psutil: 0.4ms
> twitter.common.python: Distilling psutil: 446.3ms
> twitter.common.python: Obtaining pygments
> twitter.common.python: Obtaining pygments: 761.2ms
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Installing twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0 :: Distilling twitter.common.decorators
> twitter.common.python: Obtaining twitter.common.decorators==0.1.0: 582.7ms
> twitter.common.python: Installing twitter.common.decorators: 0.2ms
> twitter.common.python: Distilling twitter.common.decorators: 94.8ms
> twitter.common.python: Obtaining pytest
> twitter.common.python: Obtaining pytest :: Installing pytest
> twitter.common.python: Obtaining pytest :: Distilling pytest
> twitter.common.python: Obtaining pytest: 1700.3ms
> twitter.common.python: Installing pytest: 0.3ms
> twitter.common.python: Distilling pytest: 413.1ms
> twitter.common.python: Obtaining pylint
> twitter.common.python: Obtaining pylint :: Installing pylint
> twitter.common.python: Obtaining pylint :: Distilling pylint
> twitter.common.python: Obtaining pylint: 1301.7ms
> twitter.common.python: Installing pylint: 0.3ms
> twitter.common.python: Distilling pylint: 440.7ms
> twitter.common.python: Obtaining pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Installing pytest-cov
> twitter.common.python: Obtaining pytest-cov :: Distilling pytest-cov
> twitter.common.python: Obtaining pytest-cov: 532.5ms
> twitter.common.python: Installing pytest-cov: 0.2ms
> twitter.common.python: Distilling pytest-cov: 88.1ms
> twitter.common.python: Obtaining twitter.common.process==0.1.0
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Installing twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0 :: Distilling twitter.common.process
> twitter.common.python: Obtaining twitter.common.process==0.1.0: 519.6ms
> twitter.common.python: Installing twitter.common.process: 0.2ms
> twitter.common.python: Distilling twitter.common.process: 110.1ms
> twitter.common.python: Obtaining twitter.common.util==0.1.0
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Installing twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0 :: Distilling twitter.common.util
> twitter.common.python: Obtaining twitter.common.util==0.1.0: 520.6ms
> twitter.common.python: Installing twitter.common.util: 0.2ms
> twitter.common.python: Distilling twitter.common.util: 91.9ms
> twitter.common.python: Obtaining markdown
> twitter.common.python: Obtaining markdown :: Installing Markdown
> twitter.common.python: Obtaining markdown :: Distilling Markdown
> twitter.common.python: Obtaining markdown: 1247.1ms
> twitter.common.python: Installing Markdown: 0.5ms
> twitter.common.python: Distilling Markdown: 495.1ms
> twitter.common.python: Obtaining twitter.common.python==0.2.2
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Installing twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2 :: Distilling twitter.common.python
> twitter.common.python: Obtaining twitter.common.python==0.2.2: 865.8ms
> twitter.common.python: Installing twitter.common.python: 0.3ms
> twitter.common.python: Distilling twitter.common.python: 238.7ms
> twitter.common.python: Obtaining mako
> twitter.common.python: Obtaining mako :: Installing Mako
> twitter.common.python: Obtaining mako :: Distilling Mako
> twitter.common.python: Obtaining mako: 1069.3ms
> twitter.common.python: Installing Mako: 0.3ms
> twitter.common.python: Distilling Mako: 291.9ms
> twitter.common.python: Obtaining twitter.common.lang==0.1.0
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Installing twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0 :: Distilling twitter.common.lang
> twitter.common.python: Obtaining twitter.common.lang==0.1.0: 796.2ms
> twitter.common.python: Installing twitter.common.lang: 0.2ms
> twitter.common.python: Distilling twitter.common.lang: 95.4ms
> twitter.common.python: Obtaining twitter.common.collections==0.1.0
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Installing twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0 :: Distilling twitter.common.collections
> twitter.common.python: Obtaining twitter.common.collections==0.1.0: 554.6ms
> twitter.common.python: Installing twitter.common.collections: 0.2ms
> twitter.common.python: Distilling twitter.common.collections: 103.2ms
> twitter.common.python: Obtaining twitter.common.options==0.1.0
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Installing twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0 :: Distilling twitter.common.options
> twitter.common.python: Obtaining twitter.common.options==0.1.0: 614.5ms
> twitter.common.python: Installing twitter.common.options: 0.2ms
> twitter.common.python: Distilling twitter.common.options: 92.8ms
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Installing twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0 :: Distilling twitter.common.dirutil
> twitter.common.python: Obtaining twitter.common.dirutil==0.1.0: 537.3ms
> twitter.common.python: Installing twitter.common.dirutil: 0.4ms
> twitter.common.python: Distilling twitter.common.dirutil: 109.1ms
> twitter.common.python: Obtaining twitter.common.log==0.1.0
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Installing twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0 :: Distilling twitter.common.log
> twitter.common.python: Obtaining twitter.common.log==0.1.0: 766.4ms
> twitter.common.python: Installing twitter.common.log: 0.2ms
> twitter.common.python: Distilling twitter.common.log: 135.2ms
> twitter.common.python: Obtaining py>=1.4.19
> twitter.common.python: Obtaining py>=1.4.19 :: Installing py
> twitter.common.python: Obtaining py>=1.4.19 :: Distilling py
> twitter.common.python: Obtaining py>=1.4.19: 871.5ms
> twitter.common.python: Installing py: 0.3ms
> twitter.common.python: Distilling py: 319.6ms
> twitter.common.python: Obtaining astroid>=0.24.3
> twitter.common.python: Obtaining astroid>=0.24.3 :: Installing astroid
> twitter.common.python: Obtaining astroid>=0.24.3 :: Distilling astroid
> twitter.common.python: Obtaining astroid>=0.24.3: 967.3ms
> twitter.common.python: Installing astroid: 0.4ms
> twitter.common.python: Distilling astroid: 399.9ms
> twitter.common.python: Obtaining logilab-common>=0.53.0
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Installing logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0 :: Distilling logilab-common
> twitter.common.python: Obtaining logilab-common>=0.53.0: 1364.0ms
> twitter.common.python: Installing logilab-common: 0.4ms
> twitter.common.python: Distilling logilab-common: 603.8ms
> twitter.common.python: Obtaining cov-core>=1.6
> twitter.common.python: Obtaining cov-core>=1.6 :: Installing cov-core
> twitter.common.python: Obtaining cov-core>=1.6 :: Distilling cov-core
> twitter.common.python: Obtaining cov-core>=1.6: 471.0ms
> twitter.common.python: Installing cov-core: 0.4ms
> twitter.common.python: Distilling cov-core: 93.6ms
> twitter.common.python: Obtaining twitter.common.string==0.1.0
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Installing twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0 :: Distilling twitter.common.string
> twitter.common.python: Obtaining twitter.common.string==0.1.0: 579.7ms
> twitter.common.python: Installing twitter.common.string: 0.2ms
> twitter.common.python: Distilling twitter.common.string: 93.8ms
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Installing twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0 :: Distilling twitter.common.contextutil
> twitter.common.python: Obtaining twitter.common.contextutil==0.1.0: 524.2ms
> twitter.common.python: Installing twitter.common.contextutil: 0.5ms
> twitter.common.python: Distilling twitter.common.contextutil: 92.6ms
> twitter.common.python: Obtaining setuptools==1.1.7
> twitter.common.python: Obtaining setuptools==1.1.7 :: Installing setuptools
> twitter.common.python: Obtaining setuptools==1.1.7 :: Distilling setuptools
> twitter.common.python: Obtaining setuptools==1.1.7: 2212.2ms
> twitter.common.python: Installing setuptools: 0.3ms
> twitter.common.python: Distilling setuptools: 618.8ms
> twitter.common.python: Obtaining MarkupSafe>=0.9.2
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Installing MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2 :: Distilling MarkupSafe
> twitter.common.python: Obtaining MarkupSafe>=0.9.2: 928.3ms
> twitter.common.python: Installing MarkupSafe: 0.3ms
> twitter.common.python: Distilling MarkupSafe: 251.4ms
> twitter.common.python: Obtaining coverage>=3.4
> twitter.common.python: Obtaining coverage>=3.4 :: Installing coverage
> twitter.common.python: Obtaining coverage>=3.4 :: Distilling coverage
> twitter.common.python: Obtaining coverage>=3.4: 1082.9ms
> twitter.common.python: Installing coverage: 0.3ms
> twitter.common.python: Distilling coverage: 425.6ms
> ~/test_dev
> Build operating on targets: OrderedSet([PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client)])
> Building PythonBinary PythonBinary(src/main/python/apache/aurora/client/bin/BUILD:aurora_client):
> Wrote /home/vagrant/test_dev/dist/aurora_client.pex
> Build operating on targets: OrderedSet([PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example)])
> Building PythonBinary PythonBinary(src/test/sh/org/apache/aurora/e2e/flask/BUILD:flask_example):
> Wrote /home/vagrant/test_dev/dist/flask_example.pex
> == Creating job
> INFO] Creating job flask_example
> INFO] Response from scheduler: OK (message: 1 new tasks pending for job vagrant/test/flask_example)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> == Updating test job
> INFO] Updating job: flask_example
> INFO] Starting job update.
> INFO] Examining instances: [0]
> INFO] Killing instances: [0]
> INFO] Instances killed
> INFO] Adding instances: [0]
> INFO] Instances added
> INFO] Watching instances: [0]
> INFO] Detected RUNNING instance 0
> INFO] Instance 0 has been up and healthy for at least 30 seconds
> INFO] Update successful
> INFO] Response from scheduler: OK (message: Lock has been released.)
> INFO] Killing tasks for job: example/vagrant/test/flask_example
> INFO] Response from scheduler: OK (message: Tasks killed.)
> INFO] Job url: http://precise64:8081/scheduler/vagrant/test/flask_example
> ***
> OK (all tests passed)
> ***
> [sun-wukong incubator-aurora (e2e)]$
>
>
> Thanks,
>
> Mark Chu-Carroll
>
>