|
|
@ -2,6 +2,7 @@ const axios = require('axios'); |
|
|
|
const semverGt = require('semver/functions/gt'); |
|
|
|
const semverSatisfies = require('semver/functions/satisfies'); |
|
|
|
const semverMinVersion = require('semver/ranges/min-version'); |
|
|
|
const encode = require('lndconnect').encode; |
|
|
|
|
|
|
|
const diskLogic = require('logic/disk.js'); |
|
|
|
const constants = require('utils/const.js'); |
|
|
@ -145,6 +146,71 @@ async function getBackupStatus() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
async function getLndConnectUrls() { |
|
|
|
|
|
|
|
let cert; |
|
|
|
try { |
|
|
|
cert = await diskLogic.readLndCert(); |
|
|
|
} catch (error) { |
|
|
|
throw new NodeError('Unable to read lnd cert file'); |
|
|
|
} |
|
|
|
|
|
|
|
let macaroon; |
|
|
|
try { |
|
|
|
macaroon = await diskLogic.readLndAdminMacaroon(); |
|
|
|
} catch (error) { |
|
|
|
throw new NodeError('Unable to read lnd macaroon file'); |
|
|
|
} |
|
|
|
|
|
|
|
let restTorHost; |
|
|
|
try { |
|
|
|
restTorHost = await diskLogic.readLndRestHiddenService(); |
|
|
|
restTorHost += ':8080'; |
|
|
|
} catch (error) { |
|
|
|
throw new NodeError('Unable to read lnd REST hostname file'); |
|
|
|
} |
|
|
|
const restTor = encode({ |
|
|
|
host: restTorHost, |
|
|
|
cert, |
|
|
|
macaroon, |
|
|
|
}); |
|
|
|
|
|
|
|
let grpcTorHost; |
|
|
|
try { |
|
|
|
grpcTorHost = await diskLogic.readLndGrpcHiddenService(); |
|
|
|
grpcTorHost += ':10009'; |
|
|
|
} catch (error) { |
|
|
|
throw new NodeError('Unable to read lnd gRPC hostname file'); |
|
|
|
} |
|
|
|
const grpcTor = encode({ |
|
|
|
host: grpcTorHost, |
|
|
|
cert, |
|
|
|
macaroon, |
|
|
|
}); |
|
|
|
|
|
|
|
let restLocalHost = `${constants.DEVICE_HOSTNAME}:8080`; |
|
|
|
const restLocal = encode({ |
|
|
|
host: restLocalHost, |
|
|
|
cert, |
|
|
|
macaroon, |
|
|
|
}); |
|
|
|
|
|
|
|
let grpcLocalHost = `${constants.DEVICE_HOSTNAME}:10009`; |
|
|
|
const grpcLocal = encode({ |
|
|
|
host: grpcLocalHost, |
|
|
|
cert, |
|
|
|
macaroon, |
|
|
|
}); |
|
|
|
|
|
|
|
return { |
|
|
|
restTor, |
|
|
|
restLocal, |
|
|
|
grpcTor, |
|
|
|
grpcLocal |
|
|
|
}; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
async function requestShutdown() { |
|
|
|
try { |
|
|
|
await diskLogic.shutdown(); |
|
|
@ -173,6 +239,7 @@ module.exports = { |
|
|
|
getUpdateStatus, |
|
|
|
startUpdate, |
|
|
|
getBackupStatus, |
|
|
|
getLndConnectUrls, |
|
|
|
requestShutdown, |
|
|
|
requestReboot |
|
|
|
}; |
|
|
|