🌳
pt0/deployF/k8sF/ctxF/klusterReachabilityAI.mts
3export const defaultKubeTimeoutSec = 20
5/**
6 * Resolve reachability for a cluster from its current cfg (appCfg.allKlusters > klusterCtx > appCfg >
7 * import-time klusterCfgRegistry populated by each klustersF/<name>/common.mjs).
8 */
9export const reachabilityFor = (cluster_name: string): string | number | undefined => {
10 return getCurKlusterCfg(cluster_name).reachability
13/** string reachability = cluster is down; returns the reason or undefined. */
14export const getOfflineReason = (cluster_name: string): string | undefined => {
15 const r = reachabilityFor(cluster_name)
16 return typeof r === 'string' ? r : undefined
19/** number reachability = custom timeout sec; otherwise the 20s default. */
20export const getKubeTimeoutSec = (cluster_name: string): number => {
21 const r = reachabilityFor(cluster_name)
22 return typeof r === 'number' ? r : defaultKubeTimeoutSec