Disable LN on macaroon fail

This commit is contained in:
softsimon 2023-03-21 15:49:38 +09:00
parent cd2bda4b49
commit 758e4d4f4c
No known key found for this signature in database
GPG Key ID: 488D7DCFB5A430D7

View File

@ -4,21 +4,28 @@ import * as fs from 'fs';
import { AbstractLightningApi } from '../lightning-api-abstract-factory';
import { ILightningApi } from '../lightning-api.interface';
import config from '../../../config';
import logger from '../../../logger';
class LndApi implements AbstractLightningApi {
axiosConfig: AxiosRequestConfig = {};
constructor() {
if (config.LIGHTNING.ENABLED) {
this.axiosConfig = {
headers: {
'Grpc-Metadata-macaroon': fs.readFileSync(config.LND.MACAROON_PATH).toString('hex')
},
httpsAgent: new Agent({
ca: fs.readFileSync(config.LND.TLS_CERT_PATH)
}),
timeout: config.LND.TIMEOUT
};
try {
const macaroon = fs.readFileSync(config.LND.MACAROON_PATH).toString('hex');
this.axiosConfig = {
headers: {
'Grpc-Metadata-macaroon': macaroon
},
httpsAgent: new Agent({
ca: fs.readFileSync(config.LND.TLS_CERT_PATH)
}),
timeout: config.LND.TIMEOUT
};
} catch (e) {
logger.err(`Could not initialize LND Macaroon/TLS Cert. Disabling LIGHTNING. ` + (e instanceof Error ? e.message : e));
config.LIGHTNING.ENABLED = false;
}
}
}