mirror of https://github.com/rancher/ui.git
59 lines
1.6 KiB
JavaScript
59 lines
1.6 KiB
JavaScript
import Route from '@ember/routing/route';
|
|
import { inject as service } from '@ember/service';
|
|
import { set, get } from '@ember/object';
|
|
import { on } from '@ember/object/evented';
|
|
import { hash } from 'rsvp';
|
|
import C from 'ui/utils/constants';
|
|
|
|
export default Route.extend({
|
|
globalStore: service(),
|
|
scope: service(),
|
|
session: service(),
|
|
|
|
model() {
|
|
const store = get(this, 'globalStore');
|
|
|
|
const cluster = get(this, 'scope.currentCluster');
|
|
const project = get(cluster, 'systemProject');
|
|
|
|
let fetchApps = [];
|
|
|
|
if ( project && get(cluster, 'enableClusterMonitoring') ) {
|
|
fetchApps = store.rawRequest({
|
|
url: `/v3/project/${ get(project, 'id') }/apps`,
|
|
method: 'GET',
|
|
}).then((res) => {
|
|
const out = [];
|
|
const apps = get(res, 'body.data') || [];
|
|
const clusterApp = apps.findBy('name', 'cluster-monitoring');
|
|
const operatorApp = apps.findBy('name', 'monitoring-operator');
|
|
|
|
if ( clusterApp ) {
|
|
out.push(store.createRecord(clusterApp));
|
|
}
|
|
if ( operatorApp ) {
|
|
out.push(store.createRecord(operatorApp));
|
|
}
|
|
|
|
return out;
|
|
});
|
|
}
|
|
|
|
return hash({
|
|
apps: fetchApps,
|
|
nodes: get(this, 'globalStore').findAll('node')
|
|
});
|
|
},
|
|
|
|
afterModel() {
|
|
// return hash(
|
|
// get(this, 'globalStore').findAll('clusterTemplateRevision'),
|
|
// get(this, 'globalStore').findAll('clusterTemplate'),
|
|
// );
|
|
},
|
|
|
|
setDefaultRoute: on('activate', function() {
|
|
set(this, `session.${ C.SESSION.CLUSTER_ROUTE }`, 'authenticated.cluster.monitoring.index');
|
|
}),
|
|
});
|