🌳
pt0/serverF/kubePortFwdF/k8sPortFwdCtxF.mts
1import * as _ from 'lodash-es'
3import { portInOpenA, type OpenPortNoA } from '../../sharedF/portInOpenAAI.mts'
5export type K8sProxyItem = {
6 svcName: string
7 cluster_name: string
8}
10type K8sPortFwdCtxStore = {
11 k8sProxyA?: K8sProxyItem[]
14export const k8sPortFwdCtx = genGlobal2Ctx<K8sPortFwdCtxStore>()
16export const needsProxyQs = (qsH: {cluster_name?: string; isCnPg?: boolean; needsKubePortFwd?: boolean; ptNodePortNo?: number; openPortNoA?: OpenPortNoA}) => {
17 const {cluster_name, isCnPg, needsKubePortFwd, ptNodePortNo, openPortNoA} = qsH
18 if (needsKubePortFwd === false) return false
19 if (openPortNoA !== undefined) return !portInOpenA(ptNodePortNo, openPortNoA)
20 return cluster_name == 'minik' || isCnPg