mirror of
https://github.com/fosrl/pangolin.git
synced 2025-12-19 06:25:40 +00:00
Convert to exitNodeComm function
This commit is contained in:
@@ -3,7 +3,7 @@ import logger from "@server/logger";
|
|||||||
import { ExitNode } from "@server/db";
|
import { ExitNode } from "@server/db";
|
||||||
|
|
||||||
interface ExitNodeRequest {
|
interface ExitNodeRequest {
|
||||||
remoteType: string;
|
remoteType?: string;
|
||||||
localPath: string;
|
localPath: string;
|
||||||
method?: "POST" | "DELETE" | "GET" | "PUT";
|
method?: "POST" | "DELETE" | "GET" | "PUT";
|
||||||
data?: any;
|
data?: any;
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import {
|
|||||||
getValidCertificatesForDomains,
|
getValidCertificatesForDomains,
|
||||||
getValidCertificatesForDomainsHybrid
|
getValidCertificatesForDomainsHybrid
|
||||||
} from "./remoteCertificates";
|
} from "./remoteCertificates";
|
||||||
|
import { sendToExitNode } from "./exitNodeComms";
|
||||||
|
|
||||||
export class TraefikConfigManager {
|
export class TraefikConfigManager {
|
||||||
private intervalId: NodeJS.Timeout | null = null;
|
private intervalId: NodeJS.Timeout | null = null;
|
||||||
@@ -403,27 +404,11 @@ export class TraefikConfigManager {
|
|||||||
[exitNode] = await db.select().from(exitNodes).limit(1);
|
[exitNode] = await db.select().from(exitNodes).limit(1);
|
||||||
}
|
}
|
||||||
if (exitNode) {
|
if (exitNode) {
|
||||||
try {
|
await sendToExitNode(exitNode, {
|
||||||
await axios.post(
|
localPath: "/update-local-snis",
|
||||||
`${exitNode.reachableAt}/update-local-snis`,
|
method: "POST",
|
||||||
{ fullDomains: Array.from(domains) },
|
data: { fullDomains: Array.from(domains) }
|
||||||
{ headers: { "Content-Type": "application/json" } }
|
});
|
||||||
);
|
|
||||||
} catch (error) {
|
|
||||||
// pull data out of the axios error to log
|
|
||||||
if (axios.isAxiosError(error)) {
|
|
||||||
logger.error("Error updating local SNI:", {
|
|
||||||
message: error.message,
|
|
||||||
code: error.code,
|
|
||||||
status: error.response?.status,
|
|
||||||
statusText: error.response?.statusText,
|
|
||||||
url: error.config?.url,
|
|
||||||
method: error.config?.method
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
logger.error("Error updating local SNI:", error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
logger.error(
|
logger.error(
|
||||||
"No exit node found. Has gerbil registered yet?"
|
"No exit node found. Has gerbil registered yet?"
|
||||||
|
|||||||
Reference in New Issue
Block a user