bool operator == (const TaskStatus& left, const TaskStatus& right) { return left.task_id() == right.task_id() && left.state() == right.state() && left.data() == right.data() && left.message() == right.message() && left.slave_id() == right.slave_id() && left.timestamp() == right.timestamp() && left.executor_id() == right.executor_id() && left.healthy() == right.healthy() && left.source() == right.source() && left.reason() == right.reason() && left.uuid() == right.uuid(); }
virtual Result<Labels> slaveTaskStatusLabelDecorator( const FrameworkID& frameworkId, const TaskStatus& status) { LOG(INFO) << "CalicoHook::task status label decorator"; if (!status.has_executor_id()) { LOG(WARNING) << "CalicoHook:: task status has no valid executor id"; return None(); } const ExecutorID executorId = status.executor_id(); if (!executors->contains(executorId)) { LOG(WARNING) << "CalicoHook:: no valid container id for: " << executorId; return None(); } const ContainerID containerId = executors->at(executorId); if (infos == NULL || !infos->contains(containerId)) { LOG(WARNING) << "CalicoHook:: no valid infos for: " << containerId; return None(); } const Info* info = (*infos)[containerId]; if (info->ipAddress.isNone()) { LOG(WARNING) << "CalicoHook:: no valid IP address"; return None(); } Labels labels; if (status.has_labels()) { labels.CopyFrom(status.labels()); } // Set IPAddress label. Label* label = labels.add_labels(); label->set_key(ipAddressLabelKey); label->set_value(info->ipAddress.get()); LOG(INFO) << "CalicoHook:: added label " << label->key() << ":" << label->value(); return labels; }