mirror of https://github.com/rancher/ui.git
Fix user+global+affinity labels
This commit is contained in:
parent
7e2e84429f
commit
a8e94d9827
|
|
@ -9,12 +9,21 @@ export default Ember.Component.extend({
|
|||
var obj = this.get('model')||{};
|
||||
var keys = Ember.keys(obj);
|
||||
keys.forEach(function(key) {
|
||||
var isUser = key.indexOf(C.LABEL.SYSTEM_PREFIX) !== 0;
|
||||
var type = 'user';
|
||||
if ( key.indexOf(C.LABEL.SCHED_AFFINITY) === 0 )
|
||||
{
|
||||
type = 'affinity';
|
||||
}
|
||||
else if ( key.indexOf(C.LABEL.SYSTEM_PREFIX) === 0 )
|
||||
{
|
||||
type = 'system';
|
||||
}
|
||||
|
||||
out.push(Ember.Object.create({
|
||||
key: key,
|
||||
value: obj[key],
|
||||
isUser: isUser,
|
||||
kind: (isUser ? 'User' : 'System'),
|
||||
type: type,
|
||||
isUser: (type === 'user'),
|
||||
}));
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
{{#each label in labelArray}}
|
||||
<tr {{bind-attr class="isUser::text-muted"}}>
|
||||
<td>{{label.kind}}</td>
|
||||
<tr {{bind-attr class="label.isUser::text-muted"}}>
|
||||
<td>{{uc-first label.type}}</td>
|
||||
<td>{{label.key}}</td>
|
||||
<td>{{label.value}}</td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ export default Ember.Mixin.create(Cattle.NewOrEditMixin, EditHealthCheck, EditLa
|
|||
},
|
||||
|
||||
addSchedulingRule: function() {
|
||||
this.send('addSystemLabel');
|
||||
this.send('addSystemLabel','','','affinity');
|
||||
},
|
||||
|
||||
removeSchedulingRule: function(obj) {
|
||||
|
|
@ -167,7 +167,6 @@ export default Ember.Mixin.create(Cattle.NewOrEditMixin, EditHealthCheck, EditLa
|
|||
this.initCommand();
|
||||
this.initEntryPoint();
|
||||
this.initMemory();
|
||||
this.initLabels();
|
||||
this.initHealthCheck();
|
||||
this.initScheduling();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,14 +8,21 @@ export default Ember.Mixin.create({
|
|||
addLabel: function() {
|
||||
this.get('labelArray').pushObject(Ember.Object.create({
|
||||
isUser: true,
|
||||
type: 'user',
|
||||
key: '',
|
||||
value: '',
|
||||
}));
|
||||
},
|
||||
|
||||
addSystemLabel: function(key, value) {
|
||||
addSystemLabel: function(key, value, type) {
|
||||
if ( !type )
|
||||
{
|
||||
type = ((key||'').indexOf(C.LABEL.SCHED_AFFINITY) === 0 ? 'affinity' : 'system');
|
||||
}
|
||||
|
||||
this.get('labelArray').pushObject(Ember.Object.create({
|
||||
isUser: false,
|
||||
type: type,
|
||||
key: key,
|
||||
value: value,
|
||||
}));
|
||||
|
|
@ -97,10 +104,21 @@ export default Ember.Mixin.create({
|
|||
var keys = Object.keys(obj);
|
||||
var out = [];
|
||||
keys.forEach(function(key) {
|
||||
var type = 'user';
|
||||
if ( key.indexOf(C.LABEL.SCHED_AFFINITY) === 0 )
|
||||
{
|
||||
type = 'affinity';
|
||||
}
|
||||
else if ( key.indexOf(C.LABEL.SYSTEM_PREFIX) === 0 )
|
||||
{
|
||||
type = 'system';
|
||||
}
|
||||
|
||||
out.push(Ember.Object.create({
|
||||
key: key,
|
||||
value: obj[key],
|
||||
isUser: key.indexOf(C.LABEL.SYSTEM_PREFIX) !== 0,
|
||||
type: type,
|
||||
isUser: (type === 'user'),
|
||||
}));
|
||||
});
|
||||
|
||||
|
|
@ -139,14 +157,25 @@ export default Ember.Mixin.create({
|
|||
return null;
|
||||
},
|
||||
|
||||
setLabel: function(key, value, user) {
|
||||
setLabel: function(key, value) {
|
||||
key = (key||'').toLowerCase();
|
||||
var type = 'user';
|
||||
if ( key.indexOf(C.LABEL.SCHED_AFFINITY) === 0 )
|
||||
{
|
||||
type = 'affinity';
|
||||
}
|
||||
else if ( key.indexOf(C.LABEL.SYSTEM_PREFIX) === 0 )
|
||||
{
|
||||
type = 'system';
|
||||
}
|
||||
|
||||
var existing = this.getLabel(key);
|
||||
if ( existing )
|
||||
{
|
||||
Ember.setProperties(existing,{
|
||||
value: value,
|
||||
isUser: !!user
|
||||
type: type,
|
||||
isUser: (type === 'user'),
|
||||
});
|
||||
}
|
||||
else
|
||||
|
|
@ -154,7 +183,8 @@ export default Ember.Mixin.create({
|
|||
existing = this.get('labelArray').pushObject(Ember.Object.create({
|
||||
key: key,
|
||||
value: value,
|
||||
isUser: !!user
|
||||
type: type,
|
||||
isUser: (type === 'user'),
|
||||
}));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -9,12 +9,20 @@ export default Ember.Mixin.create({
|
|||
var obj = this.get('labelResource.labels')||{};
|
||||
var keys = Ember.keys(obj).sort();
|
||||
keys.forEach(function(key) {
|
||||
var isUser = key.indexOf(C.LABEL.SYSTEM_PREFIX) !== 0;
|
||||
var type = 'user';
|
||||
if ( key.indexOf(C.LABEL.SCHED_AFFINITY) === 0 )
|
||||
{
|
||||
type = 'affinity';
|
||||
}
|
||||
else if ( key.indexOf(C.LABEL.SYSTEM_PREFIX) === 0 )
|
||||
{
|
||||
type = 'system';
|
||||
}
|
||||
out.push(Ember.Object.create({
|
||||
key: key,
|
||||
value: obj[key],
|
||||
isUser: isUser,
|
||||
kind: (isUser ? 'User' : 'System'),
|
||||
type: type,
|
||||
isUser: (type === 'user'),
|
||||
}));
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@
|
|||
|
||||
{{partial "container/edit-name"}}
|
||||
|
||||
{{partial "form-divider"}}
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-2 form-label">
|
||||
<label>Scale</label>
|
||||
|
|
|
|||
|
|
@ -50,9 +50,9 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
{{#each rule in labelArray}}
|
||||
{{#unless rule.isUser}}
|
||||
{{#if (eq rule.type "affinity")}}
|
||||
{{scheduling-rule-row rule=rule allHosts=allHosts remove="removeSchedulingRule"}}
|
||||
{{/unless}}
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
|||
|
|
@ -78,6 +78,7 @@ export default {
|
|||
SYSTEM_PREFIX: 'io.rancher.',
|
||||
SERVICE_NAME: 'io.rancher.service.name',
|
||||
SCHED_GLOBAL: 'io.rancher.scheduler.global',
|
||||
SCHED_AFFINITY: 'io.rancher.scheduler.affinity:',
|
||||
SCHED_CONTAINER: 'io.rancher.scheduler.affinity:container',
|
||||
SCHED_HOST_LABEL: 'io.rancher.scheduler.affinity:host_label',
|
||||
SCHED_CONTAINER_LABEL: 'io.rancher.scheduler.affinity:container_label',
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "ui",
|
||||
"version": "0.23.0-rc4",
|
||||
"version": "0.23.0-rc5",
|
||||
"private": true,
|
||||
"directories": {
|
||||
"doc": "doc",
|
||||
|
|
|
|||
Loading…
Reference in New Issue