feat(applaunchpad, dbprovider, template):support multi ns (#3927)

This commit is contained in:
xudaotutou
2023-09-13 18:48:44 +08:00
committed by GitHub
parent d3467d2510
commit cbcec7e3f2
7 changed files with 15 additions and 11 deletions
+3 -1
View File
@@ -55,8 +55,10 @@ class MasterSDK {
return {
user: {
id: session.user.userId,
k8sUsername: session.user.k8s_username,
name: session.user.name,
avatar: session.user.avatar
avatar: session.user.avatar,
nsid: session.user.nsid
},
kubeconfig: session.kubeconfig
};
+7 -5
View File
@@ -30,11 +30,13 @@ export type UserQuotaItemType = {
limit: number;
};
export type UserInfoV1 = {
readonly id: string;
readonly name: string;
readonly avatar: string;
};
export type UserInfoV1 = Readonly<{
id: string;
name: string;
avatar: string;
k8sUsername: string;
nsid: string;
}>;
export type SessionV1 = {
token?: OAuthToken;
@@ -266,7 +266,7 @@ export async function initK8s({ req }: { req: { headers: IncomingHttpHeaders } }
return Promise.reject('User is null');
}
const namespace = `ns-${kube_user.name}`;
const namespace = kc.contexts[0].namespace || `ns-${kube_user.name}`;
return Promise.resolve({
kc,
@@ -195,7 +195,7 @@ export async function getK8s({ kubeconfig }: { kubeconfig: string }) {
return Promise.reject('用户不存在');
}
const namespace = `ns-${kube_user.name}`;
const namespace = kc.contexts[0].namespace || `ns-${kube_user.name}`;
const applyYamlList = async (yamlList: string[], type: 'create' | 'replace') => {
// insert namespace
@@ -18,7 +18,7 @@ export const getUserNamespace = () => {
const kubeConfig = getUserKubeConfig();
const json: any = yaml.load(kubeConfig);
try {
return `ns-${json.users[0].name}`;
return json?.contexts[0]?.context?.namespace || `ns-${json.users[0].name}`;
} catch (err) {
return 'nx-';
}
@@ -212,7 +212,7 @@ export async function getK8s({ kubeconfig }: { kubeconfig: string }) {
return Promise.reject('用户不存在');
}
const namespace = GetUserDefaultNameSpace(kube_user.name);
const namespace = kc.contexts[0].namespace || GetUserDefaultNameSpace(kube_user.name);
const applyYamlList = async (yamlList: string[], type: 'create' | 'replace' | 'update') => {
// insert namespace
@@ -150,7 +150,7 @@ export async function getK8s({ kubeconfig }: { kubeconfig: string }) {
return Promise.reject('用户不存在');
}
const namespace = GetUserDefaultNameSpace(kube_user.name);
const namespace = kc.contexts[0].namespace || GetUserDefaultNameSpace(kube_user.name);
const applyYamlList = async (yamlList: string[], type: 'create' | 'replace' | 'dryrun') => {
// insert namespace