49 lines
914 B
JavaScript
49 lines
914 B
JavaScript
'use strict';
|
|
|
|
const {promisify} = require('util');
|
|
const client = require('../redis');
|
|
|
|
async function getInfo(data){
|
|
let info = await client.HGETALL('host_' + data.host);
|
|
|
|
return info
|
|
}
|
|
|
|
|
|
async function listAll(){
|
|
try{
|
|
let hosts = await client.SMEMBERS('hosts');
|
|
return hosts;
|
|
}catch(error){
|
|
return new Error(error);
|
|
}
|
|
}
|
|
|
|
|
|
async function add(data){
|
|
try{
|
|
await client.SADD('hosts', data.host);
|
|
await client.HSET('host_' + data.host, 'ip', data.ip);
|
|
await client.HSET('host_' + data.host, 'updated', (new Date).getTime());
|
|
await client.HSET('host_' + data.host, 'username', data.username);
|
|
} catch (error){
|
|
|
|
return new Error(error);
|
|
|
|
}
|
|
}
|
|
|
|
|
|
async function remove(data){
|
|
try{
|
|
await client.SREM('hosts', data.host);
|
|
let count = await client.DEL('host_' + data.host);
|
|
return count;
|
|
} catch(error) {
|
|
return new Error(error);
|
|
}
|
|
}
|
|
|
|
|
|
module.exports = {getInfo, listAll, add, remove};
|