1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-22 23:09:41 +02:00

refactor(k8s): namespace core logic (#12142)

Co-authored-by: testA113 <aliharriss1995@gmail.com>
Co-authored-by: Anthony Lapenna <anthony.lapenna@portainer.io>
Co-authored-by: James Carppe <85850129+jamescarppe@users.noreply.github.com>
Co-authored-by: Ali <83188384+testA113@users.noreply.github.com>
This commit is contained in:
Steven Kang 2024-10-01 14:15:51 +13:00 committed by GitHub
parent da010f3d08
commit ea228c3d6d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
276 changed files with 9241 additions and 3361 deletions

View file

@ -4,19 +4,21 @@ import axios, { parseAxiosError } from '@/portainer/services/axios';
import { notifyError } from '@/portainer/services/notifications';
import { EnvironmentId } from '@/react/portainer/environments/types';
import { DefaultOrSystemNamespace } from '../types';
import { PortainerNamespace } from '../types';
export function useNamespaceQuery<T = DefaultOrSystemNamespace>(
import { queryKeys } from './queryKeys';
export function useNamespaceQuery<T = PortainerNamespace>(
environmentId: EnvironmentId,
namespace: string,
{
select,
}: {
select?(namespace: DefaultOrSystemNamespace): T;
select?(namespace: PortainerNamespace): T;
} = {}
) {
return useQuery(
['environments', environmentId, 'kubernetes', 'namespaces', namespace],
queryKeys.namespace(environmentId, namespace),
() => getNamespace(environmentId, namespace),
{
onError: (err) => {
@ -33,11 +35,11 @@ export async function getNamespace(
namespace: string
) {
try {
const { data: ns } = await axios.get<DefaultOrSystemNamespace>(
const { data: ns } = await axios.get<PortainerNamespace>(
`kubernetes/${environmentId}/namespaces/${namespace}`
);
return ns;
} catch (e) {
throw parseAxiosError(e as Error, 'Unable to retrieve namespace');
throw parseAxiosError(e, 'Unable to retrieve namespace');
}
}