Repository: aurora Updated Branches: refs/heads/master 7b494f495 -> 7e276f28e
Isolate the `third_party/` repo to `mesos.native`. This lifts `mesos.interface` and `mesos.native` out of `requirements.txt`, ties their versions together and isolates the custom repository needed by `mesos.native` to its `python_requirement`. 3rdparty/python/BUILD | 26 ++++++++++++++++++++++++++ 3rdparty/python/requirements.txt | 2 -- pants.ini | 5 ----- 3 files changed, 26 insertions(+), 7 deletions(-) Testing Done: Successfully ran end-to-end with this change using a fresh vagrant image and clean repo via: ``` vagrant destroy && \ bash src/test/sh/org/apache/aurora/e2e/test_end_to_end.sh ``` Bugs closed: AURORA-1538 Reviewed at https://reviews.apache.org/r/40324/ Project: http://git-wip-us.apache.org/repos/asf/aurora/repo Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/7e276f28 Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/7e276f28 Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/7e276f28 Branch: refs/heads/master Commit: 7e276f28e36b556a4aa30f859f124ef2e254bcb4 Parents: 7b494f4 Author: John Sirois <[email protected]> Authored: Mon Nov 16 11:57:25 2015 -0600 Committer: Joshua Cohen <[email protected]> Committed: Mon Nov 16 11:57:25 2015 -0600 ---------------------------------------------------------------------- 3rdparty/python/BUILD | 26 ++++++++++++++++++++++++++ 3rdparty/python/requirements.txt | 17 +++++++++++++++-- examples/vagrant/provision-dev-cluster.sh | 1 + pants.ini | 5 ----- 4 files changed, 42 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/aurora/blob/7e276f28/3rdparty/python/BUILD ---------------------------------------------------------------------- diff --git a/3rdparty/python/BUILD b/3rdparty/python/BUILD index 7ef81d1..1a80d66 100644 --- a/3rdparty/python/BUILD +++ b/3rdparty/python/BUILD @@ -10,4 +10,30 @@ # See the License for the specific language governing permissions and # limitations under the License. # + +MESOS_REV = '0.23.0' + +python_requirement_library( + name = 'mesos.interface', + requirements = [ + python_requirement( + requirement = 'mesos.interface==%s' % MESOS_REV, + ) + ] +) + +python_requirement_library( + name = 'mesos.native', + requirements = [ + python_requirement( + requirement = 'mesos.native==%s' % MESOS_REV, + # This native egg must currently be fetched out-of-band. + # See examples/vagrant/provision-dev-cluster.sh which fetches + # to third_party/ and uses mesos.native to enable a running + # cluster inside the root Vagrant machine. + repository = '%s/third_party' % get_buildroot(), + ) + ] +) + python_requirements() http://git-wip-us.apache.org/repos/asf/aurora/blob/7e276f28/3rdparty/python/requirements.txt ---------------------------------------------------------------------- diff --git a/3rdparty/python/requirements.txt b/3rdparty/python/requirements.txt index 3a78b75..cfef18e 100644 --- a/3rdparty/python/requirements.txt +++ b/3rdparty/python/requirements.txt @@ -1,8 +1,21 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# NB: mesos requirements are defined in our sibling BUILD file. + bottle==0.11.6 CherryPy==3.6.0 mako==0.4.0 -mesos.interface==0.23.0 -mesos.native==0.23.0 mock==1.0.1 mox==0.5.3 pex==1.1.0 http://git-wip-us.apache.org/repos/asf/aurora/blob/7e276f28/examples/vagrant/provision-dev-cluster.sh ---------------------------------------------------------------------- diff --git a/examples/vagrant/provision-dev-cluster.sh b/examples/vagrant/provision-dev-cluster.sh index 4474543..3e4bf32 100755 --- a/examples/vagrant/provision-dev-cluster.sh +++ b/examples/vagrant/provision-dev-cluster.sh @@ -39,6 +39,7 @@ readonly MESOS_VERSION=0.23.0 function prepare_extras() { pushd aurora # Fetch the mesos egg, needed to build python components. + # The mesos.native target in 3rdparty/python/BUILD expects to find the native egg in third_party. mkdir -p third_party pushd third_party wget -c https://svn.apache.org/repos/asf/aurora/3rdparty/ubuntu/trusty64/python/mesos.native-${MESOS_VERSION}-py2.7-linux-x86_64.egg http://git-wip-us.apache.org/repos/asf/aurora/blob/7e276f28/pants.ini ---------------------------------------------------------------------- diff --git a/pants.ini b/pants.ini index 319d38e..b12248c 100644 --- a/pants.ini +++ b/pants.ini @@ -29,8 +29,3 @@ interpreter_requirement: CPython>=2.7,<3 # isolates one pytest session in one chroot per test target. More info here: # http://pantsbuild.github.io/options_reference.html#group_testpytest fast: False - - -[python-repos] -# This is needed for the mesos.native library, which must currently be fetched out-of-band. -repos: ['third_party/']
