[ https://issues.apache.org/jira/browse/MESOS-6628?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Mahler updated MESOS-6628: ----------------------------------- Description: In order to support frameworks having multiple roles, we will introduce a {{FrameworkInfo.roles}} field as a {{repeated string}}. Note that because we cannot distinguish between an empty set of {{roles}} (new-style framework wanting no roles) and an unset {{role}} (old-style framework wanting the "*" role), we must introduce a framework capability (i.e. MULTI_ROLE). This capability will be required for a framework to use the new {{roles}} field. {code} message FrameworkInfo { ... // Roles are the entities to which allocations are made. // The framework must have at least one role in order to // be offered resources. Note that `role` is deprecated // in favor of `roles` and only one of these fields must // be used. Since we cannot distinguish between empty // `roles` and the default unset `role`, we require that // frameworks set the `MULTI_ROLE` capability if // setting the `roles` field. optional string role = 6 [default="*", deprecated=true]; repeated string roles = 12; ... } {code} Validation will be added in MESOS-6629 and we will prevent roles from being modified in MESOS-6631. was: In order to support frameworks having multiple roles, we will introduce a {{FrameworkInfo.roles}} field as a {{repeated string}}. Note that because we cannot distinguish between an empty set of {{roles}} (new-style framework wanting no roles) and an unset {{role}} (old-style framework wanting the "*" role), we must introduce a framework capability (i.e. MULTI_ROLE). This capability will be required for a framework to use the new {{roles}} field. {code} message FrameworkInfo { ... // Roles are the entities to which allocations are made. // The framework must have at least one role in order to // be offered resources. Note that `role` is deprecated // in favor of `roles` and only one of these fields must // be used. Since we cannot distinguish between empty // `roles` and the default unset `role`, we require that // frameworks set the `MULTI_ROLE` capability if // setting the `roles` field. optional string role = 6 [default="*", deprecated=true]; repeated string roles = 12; ... } {code} > Add a FrameworkInfo.roles field along with a MULTI_ROLE capability. > ------------------------------------------------------------------- > > Key: MESOS-6628 > URL: https://issues.apache.org/jira/browse/MESOS-6628 > Project: Mesos > Issue Type: Task > Components: framework api > Reporter: Benjamin Mahler > > In order to support frameworks having multiple roles, we will introduce a > {{FrameworkInfo.roles}} field as a {{repeated string}}. > Note that because we cannot distinguish between an empty set of {{roles}} > (new-style framework wanting no roles) and an unset {{role}} (old-style > framework wanting the "*" role), we must introduce a framework capability > (i.e. MULTI_ROLE). This capability will be required for a framework to use > the new {{roles}} field. > {code} > message FrameworkInfo { > ... > // Roles are the entities to which allocations are made. > // The framework must have at least one role in order to > // be offered resources. Note that `role` is deprecated > // in favor of `roles` and only one of these fields must > // be used. Since we cannot distinguish between empty > // `roles` and the default unset `role`, we require that > // frameworks set the `MULTI_ROLE` capability if > // setting the `roles` field. > optional string role = 6 [default="*", deprecated=true]; > repeated string roles = 12; > ... > } > {code} > Validation will be added in MESOS-6629 and we will prevent roles from being > modified in MESOS-6631. -- This message was sent by Atlassian JIRA (v6.3.4#6332)