mirror of
https://github.com/labring/sealos.git
synced 2026-10-29 17:25:58 +08:00
feat(applaunchpad, dbprovider, template):support multi ns (#3927)
This commit is contained in:
@@ -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
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user