-
+
+ {{form-user-labels
+ initialLabels=launchConfig.labels
+ setLabels=(action 'setLabels' 'user')
+ }}
+
+
{{form-scheduling
isService=true
diff --git a/app/components/stack-section/component.js b/app/components/stack-section/component.js
index 3af3734d3..3db843cfc 100644
--- a/app/components/stack-section/component.js
+++ b/app/components/stack-section/component.js
@@ -14,7 +14,7 @@ export default Ember.Component.extend(FilterState, {
collapsed: true,
classNames: ['stack-section'],
- filterableContent: Ember.computed.alias('model.services'),
+ filterableContent: Ember.computed.alias('model.unremovedServices'),
actions: {
toggleCollapse() {
diff --git a/app/environment/route.js b/app/environment/route.js
index 789a42a7b..79f918e46 100644
--- a/app/environment/route.js
+++ b/app/environment/route.js
@@ -12,7 +12,6 @@ export default Ember.Route.extend({
include: ['instances']
}).then((services) => {
env.set('services', services||[]);
- env.set('services.sortProperties', ['name','id']);
return Ember.Object.create({
stack: env,
all: all,
diff --git a/app/environments/route.js b/app/environments/route.js
index 35180b3c9..d039bb83c 100644
--- a/app/environments/route.js
+++ b/app/environments/route.js
@@ -20,7 +20,6 @@ export default Ember.Route.extend({
include: ['instances']
}).then((services) => {
env.set('services', services||[]);
- env.set('services.sortProperties', ['name','id']);
return env;
});
diff --git a/app/models/environment.js b/app/models/environment.js
index d9bcb767d..cd31713db 100644
--- a/app/models/environment.js
+++ b/app/models/environment.js
@@ -193,7 +193,10 @@ var Environment = Resource.extend({
unremovedServices: function() {
- return UnremovedArrayProxy.create({sourceContent: this.get('services')});
+ return UnremovedArrayProxy.create({
+ sourceContent: this.get('services'),
+ sortProperties: ['displayName','id']
+ });
}.property('services'),
externalIdInfo: function() {
diff --git a/app/models/loadbalancerconfig.js b/app/models/loadbalancerconfig.js
index 538e8c3d7..bfd506fe1 100644
--- a/app/models/loadbalancerconfig.js
+++ b/app/models/loadbalancerconfig.js
@@ -3,14 +3,13 @@ import Resource from 'ember-api-store/models/resource';
var LoadBalancerConfig = Resource.extend({
type: 'loadBalancerConfig',
- listeners: Ember.computed.alias('loadBalancerListeners'),
config: function() {
return this;
}.property()
});
LoadBalancerConfig.reopenClass({
- alwaysInclude: ['loadBalancerListeners','loadBalancers'],
+ alwaysInclude: ['loadBalancers'],
});
export default LoadBalancerConfig;
diff --git a/app/service/new-balancer/route.js b/app/service/new-balancer/route.js
index 16a647172..ef57ea706 100644
--- a/app/service/new-balancer/route.js
+++ b/app/service/new-balancer/route.js
@@ -14,7 +14,7 @@ export default Ember.Route.extend({
if ( params.serviceId )
{
- dependencies.pushObject(store.find('service', params.serviceId, {include: ['loadbalancerlisteners']}));
+ dependencies.pushObject(store.find('service', params.serviceId));
}
return Ember.RSVP.all(dependencies, 'Load dependencies').then(function(results) {
@@ -23,10 +23,12 @@ export default Ember.Route.extend({
var allCertificates = results[2];
var existing = results[3];
- var launchConfig, lbConfig, balancer, appCookie, lbCookie;
+ var launchConfig, lbConfig, balancer, appCookie, lbCookie, haproxyConfig;
if ( existing )
{
balancer = existing.cloneForNew();
+ delete balancer.instances;
+
launchConfig = balancer.get('launchConfig');
launchConfig.set('type','container');
launchConfig.set('healthCheck',null);
@@ -39,7 +41,6 @@ export default Ember.Route.extend({
lbConfig.set('type','loadBalancerConfig');
delete lbConfig.id;
lbConfig = store.createRecord(lbConfig);
- lbConfig.set('loadBalancerListeners', balancer.get('loadBalancerListeners'));
balancer.set('loadBalancerConfig', lbConfig);
appCookie = lbConfig.get('appCookieStickinessPolicy');
@@ -57,6 +58,14 @@ export default Ember.Route.extend({
lbCookie = store.createRecord(lbCookie);
lbConfig.set('lbCookieStickinessPolicy', lbCookie);
}
+
+ haproxyConfig = lbConfig.get('haproxyConfig');
+ if ( haproxyConfig )
+ {
+ haproxyConfig.set('type','haproxyConfig');
+ haproxyConfig = store.createRecord(haproxyConfig);
+ lbConfig.set('haproxyConfig', haproxyConfig);
+ }
}
}
else
@@ -89,6 +98,16 @@ export default Ember.Route.extend({
});
}
+ if ( !haproxyConfig )
+ {
+ haproxyConfig = store.createRecord({
+ type: 'haproxyConfig',
+ 'global': '',
+ 'defaults': ''
+ });
+ }
+
+ lbConfig.set('haproxyConfig', haproxyConfig);
balancer.set('loadBalancerConfig', lbConfig);
return {
@@ -99,6 +118,7 @@ export default Ember.Route.extend({
service: balancer,
config: lbConfig,
launchConfig: launchConfig,
+ haproxyConfig: haproxyConfig
};
});
},
diff --git a/app/service/new-balancer/template.hbs b/app/service/new-balancer/template.hbs
index 436ede140..53ec3093c 100644
--- a/app/service/new-balancer/template.hbs
+++ b/app/service/new-balancer/template.hbs
@@ -1,6 +1,7 @@
{{new-balancer
service=model.service
balancerConfig=model.config
+ haproxyConfig=model.haproxyConfig
existing=model.existingBalancer
allHosts=model.allHosts
allServices=model.allServices
diff --git a/config/environment.js b/config/environment.js
index bd777caf6..3b028e2db 100644
--- a/config/environment.js
+++ b/config/environment.js
@@ -49,9 +49,6 @@ module.exports = function(environment) {
'&include=hosts' +
'&include=instances' +
'&include=instance' +
- '&include=loadBalancerConfig' +
- '&include=loadBalancerTargets' +
- '&include=loadBalancerListeners' +
'&include=instanceLinks' +
'&include=ipAddresses',
baseAssets: '',
diff --git a/package.json b/package.json
index 5156910e2..5fd55970c 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "ui",
- "version": "0.70.0",
+ "version": "0.72.0",
"private": true,
"directories": {
"doc": "doc",
@@ -22,7 +22,7 @@
"license": "Apache 2",
"devDependencies": {
"broccoli-asset-rev": "^2.1.2",
- "ember-api-store": "^1.2.3",
+ "ember-api-store": "^1.2.4",
"ember-browserify": "^1.0.1",
"ember-cli": "1.13.8",
"ember-cli-app-version": "0.5.0",