Repository: aurora
Updated Branches:
  refs/heads/master 9b9b2ee7b -> e0624b27b


Update to Mesos 1.4

This is a non-breaking update to the latest Mesos version.

The mesos.interface Python package has a requirement on a
newer protobuf version. I applied the same update to Java
for consistency.

* Mesos update instructions: 
https://mesos.apache.org/documentation/latest/upgrades/
  (i.e no feature removed that we currently rely on)
* Mesos 1.3 changelog: https://mesos.apache.org/blog/mesos-1-3-0-released/
* Mesos 1.4 changelog: https://mesos.apache.org/blog/mesos-1-4-0-released/
* Protobuf update of Mesos: https://reviews.apache.org/r/58358
  (Zhitao Li says he tested compatibility with Aurora using the old protobufs)
* Protobuf changelog: https://github.com/google/protobuf/blob/3.3.x/CHANGES.txt

Testing Done:
I tested the following end to end test scenarios and they worked:

* this patch (Mesos 1.4) in the old vagrant box (against Mesos 1.2)
* this patch (Mesos 1.4) in the new vagrant box (against Mesos 1.4)
* master (Mesos 1.2) in the new vagrant box (against Mesos 1.4)

Reviewed at https://reviews.apache.org/r/63531/


Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/e0624b27
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/e0624b27
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/e0624b27

Branch: refs/heads/master
Commit: e0624b27b552293d844d1e26b3b1a843db2034b1
Parents: 9b9b2ee
Author: Stephan Erb <[email protected]>
Authored: Mon Nov 13 09:37:01 2017 +0100
Committer: Stephan Erb <[email protected]>
Committed: Mon Nov 13 09:37:01 2017 +0100

----------------------------------------------------------------------
 3rdparty/python/BUILD                                         | 2 +-
 3rdparty/python/requirements.txt                              | 2 +-
 RELEASE-NOTES.md                                              | 7 +++++++
 Vagrantfile                                                   | 2 +-
 build-support/packer/build.sh                                 | 3 ++-
 build.gradle                                                  | 4 ++--
 .../scheduler/configuration/executor/ExecutorModule.java      | 2 +-
 .../org/apache/aurora/scheduler/resources/AcceptedOffer.java  | 4 ++++
 8 files changed, 19 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/3rdparty/python/BUILD
----------------------------------------------------------------------
diff --git a/3rdparty/python/BUILD b/3rdparty/python/BUILD
index 4aa837e..f06c3f3 100644
--- a/3rdparty/python/BUILD
+++ b/3rdparty/python/BUILD
@@ -11,7 +11,7 @@
 # limitations under the License.
 #
 
-MESOS_REV = '1.2.0'
+MESOS_REV = '1.4.0'
 
 python_requirement_library(
   name = 'mesos.interface',

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/3rdparty/python/requirements.txt
----------------------------------------------------------------------
diff --git a/3rdparty/python/requirements.txt b/3rdparty/python/requirements.txt
index 0c04b98..155930d 100644
--- a/3rdparty/python/requirements.txt
+++ b/3rdparty/python/requirements.txt
@@ -20,7 +20,7 @@ mako==1.0.4
 mock==1.0.1
 mox==0.5.3
 pex==1.1.14
-protobuf==2.6.1
+protobuf==3.3.0
 psutil==5.2.0
 pystachio==0.8.3
 requests==2.11.1

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/RELEASE-NOTES.md
----------------------------------------------------------------------
diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md
index 1a3cbec..92f9c98 100644
--- a/RELEASE-NOTES.md
+++ b/RELEASE-NOTES.md
@@ -1,3 +1,10 @@
+0.20.0 (unreleased)
+===================
+
+### New/updated:
+
+- Updated to Mesos 1.4.0.
+
 0.19.0
 ======
 

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/Vagrantfile
----------------------------------------------------------------------
diff --git a/Vagrantfile b/Vagrantfile
index ac10630..2c4d23a 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -25,7 +25,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
   config.vm.hostname = "aurora.local"
   # See build-support/packer/README.md for instructions on updating this box.
   config.vm.box = "apache-aurora/dev-environment"
-  config.vm.box_version = "0.0.13"
+  config.vm.box_version = "0.0.14"
 
   config.vm.define "devcluster" do |dev|
     dev.vm.network :private_network, ip: "192.168.33.7", :auto_config => false

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/build-support/packer/build.sh
----------------------------------------------------------------------
diff --git a/build-support/packer/build.sh b/build-support/packer/build.sh
index 7b7914c..8544412 100644
--- a/build-support/packer/build.sh
+++ b/build-support/packer/build.sh
@@ -17,7 +17,7 @@ set -o errexit
 set -o nounset
 set -o verbose
 
-readonly MESOS_VERSION=1.2.0
+readonly MESOS_VERSION=1.4.0
 
 function remove_unused {
   # The default ubuntu/trusty64 image includes juju-core, which adds ~300 MB 
to our image.
@@ -147,6 +147,7 @@ function warm_artifact_cache {
 }
 
 function compact_box {
+  apt-get autoremove -y --purge
   apt-get clean
 
   # By design, this will fail as it writes until the disk is full.

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index ddf153d..aa416b7 100644
--- a/build.gradle
+++ b/build.gradle
@@ -89,7 +89,7 @@ For more details, please see 
https://issues.apache.org/jira/browse/AURORA-1169
   ext.logbackRev = '1.2.3'
   ext.mybatisRev = '3.4.1'
   ext.nettyRev = '4.0.52.Final'
-  ext.protobufRev = '2.6.1'
+  ext.protobufRev = '3.3.0'
   ext.servletRev = '3.1.0'
   ext.slf4jRev = '1.7.25'
   ext.stringTemplateRev = '3.2.1'
@@ -387,7 +387,7 @@ dependencies {
   compile "org.apache.curator:curator-client:${curatorRev}"
   compile "org.apache.curator:curator-framework:${curatorRev}"
   compile "org.apache.curator:curator-recipes:${curatorRev}"
-  compile 'org.apache.mesos:mesos:1.2.0'
+  compile 'org.apache.mesos:mesos:1.4.0'
   compile "org.asynchttpclient:async-http-client:${asyncHttpclientRev}"
   compile "org.apache.shiro:shiro-guice:${shiroRev}"
   compile "org.apache.shiro:shiro-web:${shiroRev}"

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/src/main/java/org/apache/aurora/scheduler/configuration/executor/ExecutorModule.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/aurora/scheduler/configuration/executor/ExecutorModule.java
 
b/src/main/java/org/apache/aurora/scheduler/configuration/executor/ExecutorModule.java
index 6594325..76ce39e 100644
--- 
a/src/main/java/org/apache/aurora/scheduler/configuration/executor/ExecutorModule.java
+++ 
b/src/main/java/org/apache/aurora/scheduler/configuration/executor/ExecutorModule.java
@@ -151,7 +151,7 @@ public class ExecutorModule extends AbstractModule {
                 v -> Protos.Volume.newBuilder()
                     .setHostPath(v.getHostPath())
                     .setContainerPath(v.getContainerPath())
-                    
.setMode(Protos.Volume.Mode.valueOf(v.getMode().getValue()))
+                    
.setMode(Protos.Volume.Mode.forNumber(v.getMode().getValue()))
                     .build()))
             .build();
 

http://git-wip-us.apache.org/repos/asf/aurora/blob/e0624b27/src/main/java/org/apache/aurora/scheduler/resources/AcceptedOffer.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/aurora/scheduler/resources/AcceptedOffer.java 
b/src/main/java/org/apache/aurora/scheduler/resources/AcceptedOffer.java
index e8ea3f2..430ed0f 100644
--- a/src/main/java/org/apache/aurora/scheduler/resources/AcceptedOffer.java
+++ b/src/main/java/org/apache/aurora/scheduler/resources/AcceptedOffer.java
@@ -37,6 +37,10 @@ public final class AcceptedOffer {
    * Reserved resource filter.
    */
   @VisibleForTesting
+  // See: 
https://github.com/apache/mesos/commit/d06d05c76eca13745ca73039b93ad684b9d07196
+  // The role field has been deprecated. We'll need to migrate to the roles 
field instead
+  // and enable it via the MULTI_ROLES capability.
+  @SuppressWarnings("deprecation")
   static final Predicate<Resource> RESERVED = e -> e.hasRole() && 
!e.getRole().equals("*");
 
   /**

Reply via email to