Repository: mesos Updated Branches: refs/heads/master 4bb2cb1ad -> 2f10e79bc
Style fixes in recent patch for service discovery info. See https://reviews.apache.org/r/29473 and comments by Ben Mahler. Review: https://reviews.apache.org/r/29727 Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/2f10e79b Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/2f10e79b Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/2f10e79b Branch: refs/heads/master Commit: 2f10e79bc863ced86300885d708596e844d35fbe Parents: 4bb2cb1 Author: Christos Kozyrakis <[email protected]> Authored: Wed Feb 4 21:00:32 2015 -0800 Committer: Adam B <[email protected]> Committed: Wed Feb 4 21:00:32 2015 -0800 ---------------------------------------------------------------------- include/mesos/mesos.proto | 3 +-- src/common/http.cpp | 37 ++----------------------------------- src/common/protobuf_utils.cpp | 2 +- src/tests/master_tests.cpp | 34 +++++++++++++++++++--------------- 4 files changed, 23 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/2f10e79b/include/mesos/mesos.proto ---------------------------------------------------------------------- diff --git a/include/mesos/mesos.proto b/include/mesos/mesos.proto index 2861216..3a2921d 100644 --- a/include/mesos/mesos.proto +++ b/include/mesos/mesos.proto @@ -1095,7 +1095,7 @@ message Port { * Collection of ports. */ message Ports { - repeated Port ports = 1; + repeated Port ports = 1; } @@ -1113,7 +1113,6 @@ message Ports { * service discovery system. */ message DiscoveryInfo { - enum Visibility { FRAMEWORK = 0; CLUSTER = 1; http://git-wip-us.apache.org/repos/asf/mesos/blob/2f10e79b/src/common/http.cpp ---------------------------------------------------------------------- diff --git a/src/common/http.cpp b/src/common/http.cpp index 915cba1..58a6065 100644 --- a/src/common/http.cpp +++ b/src/common/http.cpp @@ -106,39 +106,6 @@ JSON::Object model(const TaskStatus& status) return object; } -// Returns JSON object modeled on DiscoveryInfo -JSON::Object model(const DiscoveryInfo& discovery) -{ - JSON::Object object; - object.values["visibility"] = - DiscoveryInfo::Visibility_Name(discovery.visibility()); - if (discovery.has_name()) - object.values["name"] = discovery.name(); - if (discovery.has_environment()) - object.values["environment"] = discovery.environment(); - if (discovery.has_location()) - object.values["location"] = discovery.location(); - if (discovery.has_version()) - object.values["version"] = discovery.version(); - - JSON::Array ports; - if (discovery.has_ports()) { - foreach (const Port& port, discovery.ports().ports()) { - ports.values.push_back(JSON::Protobuf(port)); - } - } - object.values["ports"] = ports; - - JSON::Array labels; - if (discovery.has_labels()) { - foreach (const Label& label, discovery.labels().labels()) { - labels.values.push_back(JSON::Protobuf(label)); - } - } - object.values["labels"] = labels; - - return object; -} // TODO(bmahler): Expose the executor name / source. JSON::Object model(const Task& task) @@ -173,7 +140,7 @@ JSON::Object model(const Task& task) object.values["labels"] = labels; if (task.has_discovery()) { - object.values["discovery"] = model(task.discovery()); + object.values["discovery"] = JSON::Protobuf(task.discovery()); } return object; @@ -217,7 +184,7 @@ JSON::Object model( object.values["labels"] = labels; if (task.has_discovery()) { - object.values["discovery"] = model(task.discovery()); + object.values["discovery"] = JSON::Protobuf(task.discovery()); } return object; http://git-wip-us.apache.org/repos/asf/mesos/blob/2f10e79b/src/common/protobuf_utils.cpp ---------------------------------------------------------------------- diff --git a/src/common/protobuf_utils.cpp b/src/common/protobuf_utils.cpp index c4b53a8..f9ca23a 100644 --- a/src/common/protobuf_utils.cpp +++ b/src/common/protobuf_utils.cpp @@ -114,7 +114,7 @@ Task createTask( t.mutable_labels()->MergeFrom(task.labels()); if (task.has_discovery()) { - t.mutable_discovery()->MergeFrom(task.discovery()); + t.mutable_discovery()->MergeFrom(task.discovery()); } return t; http://git-wip-us.apache.org/repos/asf/mesos/blob/2f10e79b/src/tests/master_tests.cpp ---------------------------------------------------------------------- diff --git a/src/tests/master_tests.cpp b/src/tests/master_tests.cpp index 678d27f..3cb7660 100644 --- a/src/tests/master_tests.cpp +++ b/src/tests/master_tests.cpp @@ -2773,9 +2773,9 @@ TEST_F(MasterTest, TaskDiscoveryInfo) TaskInfo task; task.set_name("testtask"); task.mutable_task_id()->set_value("1"); - task.mutable_slave_id()->MergeFrom(offers.get()[0].slave_id()); - task.mutable_resources()->MergeFrom(offers.get()[0].resources()); - task.mutable_executor()->MergeFrom(DEFAULT_EXECUTOR_INFO); + task.mutable_slave_id()->CopyFrom(offers.get()[0].slave_id()); + task.mutable_resources()->CopyFrom(offers.get()[0].resources()); + task.mutable_executor()->CopyFrom(DEFAULT_EXECUTOR_INFO); // An expanded service discovery info to the task. DiscoveryInfo* info = task.mutable_discovery(); @@ -2784,6 +2784,7 @@ TEST_F(MasterTest, TaskDiscoveryInfo) info->set_environment("mytest"); info->set_location("mylocation"); info->set_version("v0.1.1"); + // Add two named ports to the discovery info. Ports* ports = info->mutable_ports(); Port* port1 = ports->add_ports(); @@ -2794,6 +2795,7 @@ TEST_F(MasterTest, TaskDiscoveryInfo) port2->set_number(9999); port2->set_name("myport2"); port2->set_protocol("udp"); + // Add two labels to the discovery info. Labels* labels = info->mutable_labels(); Label* label1 = labels->add_labels(); @@ -2874,11 +2876,12 @@ TEST_F(MasterTest, TaskDiscoveryInfo) ASSERT_EQ("v0.1.1", version.get()); // Verify content of two named ports. - Result<JSON::Array> portsObject = parse.get().find<JSON::Array>( - "frameworks[0].tasks[0].discovery.ports"); - EXPECT_SOME(portsObject); + Result<JSON::Array> portsArray = parse.get().find<JSON::Array>( + "frameworks[0].tasks[0].discovery.ports.ports"); + EXPECT_SOME(portsArray); - JSON::Array portsObject_ = portsObject.get(); + JSON::Array portsArray_ = portsArray.get(); + EXPECT_EQ(2, portsArray_.values.size()); // Verify the content of '8888:myport1:tcp' port. Try<JSON::Value> expected = JSON::parse( @@ -2888,7 +2891,7 @@ TEST_F(MasterTest, TaskDiscoveryInfo) " \"protocol\":\"tcp\"" "}"); ASSERT_SOME(expected); - EXPECT_EQ(expected.get(), portsObject_.values[0]); + EXPECT_EQ(expected.get(), portsArray_.values[0]); // Verify the content of '9999:myport2:udp' port. expected = JSON::parse( @@ -2898,14 +2901,15 @@ TEST_F(MasterTest, TaskDiscoveryInfo) " \"protocol\":\"udp\"" "}"); ASSERT_SOME(expected); - EXPECT_EQ(expected.get(), portsObject_.values[1]); + EXPECT_EQ(expected.get(), portsArray_.values[1]); // Verify content of two labels. - Result<JSON::Array> labelsObject = parse.get().find<JSON::Array>( - "frameworks[0].tasks[0].discovery.labels"); - EXPECT_SOME(labelsObject); + Result<JSON::Array> labelsArray = parse.get().find<JSON::Array>( + "frameworks[0].tasks[0].discovery.labels.labels"); + EXPECT_SOME(labelsArray); - JSON::Array labelsObject_ = labelsObject.get(); + JSON::Array labelsArray_ = labelsArray.get(); + EXPECT_EQ(2, labelsArray_.values.size()); // Verify the content of 'clearance:high' pair. expected = JSON::parse( @@ -2914,7 +2918,7 @@ TEST_F(MasterTest, TaskDiscoveryInfo) " \"value\":\"high\"" "}"); ASSERT_SOME(expected); - EXPECT_EQ(expected.get(), labelsObject_.values[0]); + EXPECT_EQ(expected.get(), labelsArray_.values[0]); // Verify the content of 'RPC:yes' pair. expected = JSON::parse( @@ -2923,7 +2927,7 @@ TEST_F(MasterTest, TaskDiscoveryInfo) " \"value\":\"yes\"" "}"); ASSERT_SOME(expected); - EXPECT_EQ(expected.get(), labelsObject_.values[1]); + EXPECT_EQ(expected.get(), labelsArray_.values[1]); EXPECT_CALL(exec, shutdown(_)) .Times(AtMost(1));
