bugfix on webdav url retriving
This commit is contained in:
@@ -178,9 +178,9 @@ process.on('SIGINT', async () => {
|
||||
if (existsSync(config.CONTAINER_PLUGINS_CONFIG)) {
|
||||
console.log('[Startup] Initializing container plugins...');
|
||||
try {
|
||||
// Get webdavUrl from meta-core via LeaderClient
|
||||
// Get webdavUrlInternal from meta-core via LeaderClient (for container-to-container access)
|
||||
const leaderInfo = kvManager?.getLeaderInfo();
|
||||
const webdavUrl = leaderInfo?.webdavUrl;
|
||||
const webdavUrl = leaderInfo?.webdavUrlInternal ?? leaderInfo?.webdavUrl;
|
||||
if (webdavUrl) {
|
||||
console.log(`[Startup] WebDAV URL from meta-core: ${webdavUrl}`);
|
||||
} else {
|
||||
|
||||
@@ -155,9 +155,12 @@ export interface LeaderLockInfo {
|
||||
/** Redis connection URL (e.g., redis://10.0.1.50:6379) */
|
||||
redisUrl: string;
|
||||
|
||||
/** WebDAV URL for file access */
|
||||
/** WebDAV URL for file access (external, via nginx/HTTPS) */
|
||||
webdavUrl: string;
|
||||
|
||||
/** WebDAV URL for internal container-to-container access (direct to port 9000) */
|
||||
webdavUrlInternal: string;
|
||||
|
||||
/** Timestamp when leadership was acquired */
|
||||
timestamp: number;
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ export interface URLsResponse {
|
||||
apiUrl: string;
|
||||
redisUrl: string;
|
||||
webdavUrl: string;
|
||||
webdavUrlInternal: string;
|
||||
isLeader: boolean;
|
||||
}
|
||||
|
||||
@@ -117,6 +118,7 @@ export class LeaderClient {
|
||||
apiUrl: urls.apiUrl,
|
||||
redisUrl: urls.redisUrl,
|
||||
webdavUrl: urls.webdavUrl,
|
||||
webdavUrlInternal: urls.webdavUrlInternal,
|
||||
timestamp: Date.now(),
|
||||
pid: 0 // Unknown for remote leader
|
||||
};
|
||||
@@ -136,13 +138,22 @@ export class LeaderClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Get WebDAV URL from leader info
|
||||
* Get WebDAV URL from leader info (external, via nginx/HTTPS)
|
||||
*/
|
||||
async getWebdavUrl(): Promise<string | null> {
|
||||
const info = await this.getLeaderInfo();
|
||||
return info?.webdavUrl ?? null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get internal WebDAV URL from leader info (direct to port 9000)
|
||||
* Use this for container-to-container communication
|
||||
*/
|
||||
async getWebdavUrlInternal(): Promise<string | null> {
|
||||
const info = await this.getLeaderInfo();
|
||||
return info?.webdavUrlInternal ?? null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get meta-core API URL from leader info
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user