ceph-agent
Version:
Simple UI for Ceph storage
48 lines (41 loc) • 988 B
JavaScript
;
const MODULE_REQUIRE = 1
/* built-in */
/* NPM */
, noda = require('noda')
/* in-package */
, kmg = noda.inRequire('lib/kmg')
;
module.exports = function(req, res, agent, callback) {
agent.conn.findContainers((err, metas) => {
if (err) {
callback(err, 500);
return;
}
let items = metas.map(meta => {
return {
metaHref: `${agent.basepath}/${meta.name}?meta`,
href: `${agent.basepath}/${meta.name}/`,
text: meta.name,
count: meta.count,
size: kmg(meta.bytes) + 'B',
};
})
let meta, conn = agent.conn;
if (conn.get('style') == 'swift') {
meta = {
endPoint : conn.get('endPoint'),
username : conn.get('username'),
};
}
else {
meta = {
endPoint : conn.get('endPoint'),
};
}
let data = { meta, item: items };
let html = agent.render(`containers/${agent.conn.get('style')}`, data);
res.write(html);
callback();
});
};