From a224ed1586e00a45e18b2d9a81313814352c2a52 Mon Sep 17 00:00:00 2001 From: Marco Manco Date: Thu, 9 Dec 2021 10:23:18 +0100 Subject: [PATCH] refactor: change the workspaceName into the prettyName into tenant query/sub --- .../ActiveViewLogic/ActiveViewLogic.tsx | 10 +-- .../src/components/common/Navbar/Navbar.tsx | 2 +- .../common/Navbar/NavbarMenu/NavbarMenu.tsx | 2 +- .../DashboardLogic/DashboardLogic.tsx | 6 +- .../ModalCreateTemplate.tsx | 2 +- .../TemplatesTableLogic.tsx | 4 +- frontend/src/generated-types.tsx | 88 +++++++++---------- .../mutation/applyTenant.mutation.graphql | 2 +- .../mutation/createInstance.mutation.graphql | 4 +- .../mutation/createTemplate.mutation.graphql | 4 +- .../query/instances.query.graphql | 4 +- .../instancesLabelSelector.query.graphql | 6 +- .../query/keys.query.graphql | 2 +- .../query/templates.query.graphql | 4 +- .../query/tenant.query.graphql | 8 +- .../query/tenants.query.graphql | 2 +- .../subscription/instances.subscription.ts | 4 +- .../instancesLabelSelector.subscription.ts | 6 +- .../subscription/key.subscription.ts | 2 +- .../subscription/templates.subscription.ts | 4 +- .../subscription/tenant.subscription.ts | 8 +- .../tenantContext/TenantContext.tsx | 9 +- frontend/src/utils.ts | 2 + frontend/src/utilsLogic.tsx | 36 ++++---- 24 files changed, 118 insertions(+), 103 deletions(-) diff --git a/frontend/src/components/activePage/ActiveViewLogic/ActiveViewLogic.tsx b/frontend/src/components/activePage/ActiveViewLogic/ActiveViewLogic.tsx index a7ec6648a..3eded0db7 100644 --- a/frontend/src/components/activePage/ActiveViewLogic/ActiveViewLogic.tsx +++ b/frontend/src/components/activePage/ActiveViewLogic/ActiveViewLogic.tsx @@ -13,14 +13,14 @@ const ActiveViewLogic: FC<{}> = ({ ...props }) => { const workspaces = tenantData?.tenant?.spec?.workspaces?.map(workspace => { - const { workspaceWrapperTenantV1alpha2, workspaceId, role } = workspace!; + const { workspaceWrapperTenantV1alpha2, name, role } = workspace!; const { spec, status } = workspaceWrapperTenantV1alpha2?.itPolitoCrownlabsV1alpha1Workspace!; return { - prettyName: spec?.workspaceName as string, + prettyName: spec?.prettyName as string, role: WorkspaceRole[role!], - namespace: status?.namespace?.workspaceNamespace!, - id: workspaceId!, + namespace: status?.namespace?.name!, + id: name!, }; }) || []; @@ -31,7 +31,7 @@ const ActiveViewLogic: FC<{}> = ({ ...props }) => { return !tenantLoading && tenantData && !tenantError ? ( 0} diff --git a/frontend/src/components/common/Navbar/Navbar.tsx b/frontend/src/components/common/Navbar/Navbar.tsx index 834cde4f7..a831d6d1d 100644 --- a/frontend/src/components/common/Navbar/Navbar.tsx +++ b/frontend/src/components/common/Navbar/Navbar.tsx @@ -202,7 +202,7 @@ const Navbar: FC = ({ ...props }) => { {`${data?.tenant?.metadata?.tenantId}`} + >{`${data?.tenant?.metadata?.name}`} )} = ({ ...props }) => { const { routes } = props; const { data } = useContext(TenantContext); - const tenantId = data?.tenant?.metadata?.tenantId!; + const tenantId = data?.tenant?.metadata?.name!; const currentPath = useLocation().pathname; const [visible, setVisible] = useState(false); diff --git a/frontend/src/components/workspaces/DashboardLogic/DashboardLogic.tsx b/frontend/src/components/workspaces/DashboardLogic/DashboardLogic.tsx index e6ac4cfe4..24c9ca855 100644 --- a/frontend/src/components/workspaces/DashboardLogic/DashboardLogic.tsx +++ b/frontend/src/components/workspaces/DashboardLogic/DashboardLogic.tsx @@ -20,13 +20,13 @@ const DashboardLogic: FC<{}> = () => { return { workspaceId: workspace?.workspaceWrapperTenantV1alpha2 ?.itPolitoCrownlabsV1alpha1Workspace?.spec - ?.workspaceName as string, + ?.prettyName as string, role: WorkspaceRole[workspace?.role!], workspaceNamespace: workspace?.workspaceWrapperTenantV1alpha2 ?.itPolitoCrownlabsV1alpha1Workspace?.status?.namespace - ?.workspaceNamespace!, - workspaceName: workspace?.workspaceId!, + ?.name!, + workspaceName: workspace?.name!, }; }) ?? [] } diff --git a/frontend/src/components/workspaces/ModalCreateTemplate/ModalCreateTemplate.tsx b/frontend/src/components/workspaces/ModalCreateTemplate/ModalCreateTemplate.tsx index d56541b17..ae1ea7dd0 100644 --- a/frontend/src/components/workspaces/ModalCreateTemplate/ModalCreateTemplate.tsx +++ b/frontend/src/components/workspaces/ModalCreateTemplate/ModalCreateTemplate.tsx @@ -143,7 +143,7 @@ const ModalCreateTemplate: FC = ({ ...props }) => { !errorFetchTemplates && !loadingFetchTemplates && dataFetchTemplates?.templateList?.templates - ?.map(t => t?.spec?.name) + ?.map(t => t?.spec?.prettyName) .includes(formTemplate.name.trim()) ) { setValid(old => { diff --git a/frontend/src/components/workspaces/Templates/TemplatesTableLogic/TemplatesTableLogic.tsx b/frontend/src/components/workspaces/Templates/TemplatesTableLogic/TemplatesTableLogic.tsx index 6318a5652..4cddc0dcc 100644 --- a/frontend/src/components/workspaces/Templates/TemplatesTableLogic/TemplatesTableLogic.tsx +++ b/frontend/src/components/workspaces/Templates/TemplatesTableLogic/TemplatesTableLogic.tsx @@ -94,8 +94,8 @@ const TemplatesTableLogic: FC = ({ ...props }) => { getTemplate({ original: t!, alias: { - id: t?.metadata?.id!, - name: t?.spec?.name!, + id: t?.metadata?.name!, + name: t?.spec?.prettyName!, }, }) )! diff --git a/frontend/src/generated-types.tsx b/frontend/src/generated-types.tsx index 68928ec1f..c240807be 100644 --- a/frontend/src/generated-types.tsx +++ b/frontend/src/generated-types.tsx @@ -2631,7 +2631,7 @@ export type ApplyTenantMutationVariables = Exact<{ }>; -export type ApplyTenantMutation = { __typename?: 'Mutation', applyTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', tenantId?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe, email?: Maybe, workspaces?: Maybe, name?: Maybe }>>> }> }> }; +export type ApplyTenantMutation = { __typename?: 'Mutation', applyTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe, email?: Maybe, workspaces?: Maybe, name?: Maybe }>>> }> }> }; export type CreateInstanceMutationVariables = Exact<{ tenantNamespace: Scalars['String']; @@ -2642,7 +2642,7 @@ export type CreateInstanceMutationVariables = Exact<{ }>; -export type CreateInstanceMutation = { __typename?: 'Mutation', createdInstance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', templateName?: Maybe, templateDescription?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }; +export type CreateInstanceMutation = { __typename?: 'Mutation', createdInstance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }; export type CreateTemplateMutationVariables = Exact<{ workspaceId: Scalars['String']; @@ -2658,7 +2658,7 @@ export type CreateTemplateMutationVariables = Exact<{ }>; -export type CreateTemplateMutation = { __typename?: 'Mutation', createdTemplate?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', description?: Maybe, name?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', namespace?: Maybe, id?: Maybe }> }> }; +export type CreateTemplateMutation = { __typename?: 'Mutation', createdTemplate?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe }> }> }; export type DeleteInstanceMutationVariables = Exact<{ tenantNamespace: Scalars['String']; @@ -2694,35 +2694,35 @@ export type OwnedInstancesQueryVariables = Exact<{ }>; -export type OwnedInstancesQuery = { __typename?: 'Query', instanceList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceList', instances?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', templateName?: Maybe, templateDescription?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }>>> }> }; +export type OwnedInstancesQuery = { __typename?: 'Query', instanceList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceList', instances?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }>>> }> }; export type InstancesLabelSelectorQueryVariables = Exact<{ labels?: Maybe; }>; -export type InstancesLabelSelectorQuery = { __typename?: 'Query', instanceList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceList', instances?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, tenantCrownlabsPolitoItTenantRef?: Maybe<{ __typename?: 'TenantCrownlabsPolitoItTenantRef', tenantId?: Maybe, tenantV1alpha2Wrapper?: Maybe<{ __typename?: 'TenantV1alpha2Wrapper', itPolitoCrownlabsV1alpha2Tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe }> }> }> }>, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', templateName?: Maybe, templateDescription?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }>>> }> }; +export type InstancesLabelSelectorQuery = { __typename?: 'Query', instanceList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceList', instances?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, tenantCrownlabsPolitoItTenantRef?: Maybe<{ __typename?: 'TenantCrownlabsPolitoItTenantRef', name?: Maybe, tenantV1alpha2Wrapper?: Maybe<{ __typename?: 'TenantV1alpha2Wrapper', itPolitoCrownlabsV1alpha2Tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe }> }> }> }>, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }>>> }> }; export type SshKeysQueryVariables = Exact<{ tenantId: Scalars['String']; }>; -export type SshKeysQuery = { __typename?: 'Query', tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', tenantId?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, publicKeys?: Maybe>> }> }> }; +export type SshKeysQuery = { __typename?: 'Query', tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, publicKeys?: Maybe>> }> }> }; export type WorkspaceTemplatesQueryVariables = Exact<{ workspaceNamespace: Scalars['String']; }>; -export type WorkspaceTemplatesQuery = { __typename?: 'Query', templateList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TemplateList', templates?: Maybe, name?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', namespace?: Maybe, id?: Maybe }> }>>> }> }; +export type WorkspaceTemplatesQuery = { __typename?: 'Query', templateList?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TemplateList', templates?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe }> }>>> }> }; export type TenantQueryVariables = Exact<{ tenantId: Scalars['String']; }>; -export type TenantQuery = { __typename?: 'Query', tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, workspaces?: Maybe, workspaceId?: Maybe, workspaceWrapperTenantV1alpha2?: Maybe<{ __typename?: 'WorkspaceWrapperTenantV1alpha2', itPolitoCrownlabsV1alpha1Workspace?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha1Workspace', spec?: Maybe<{ __typename?: 'Spec3', workspaceName?: Maybe }>, status?: Maybe<{ __typename?: 'Status2', namespace?: Maybe<{ __typename?: 'Namespace', workspaceNamespace?: Maybe }> }> }> }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', tenantId?: Maybe }>, status?: Maybe<{ __typename?: 'Status', personalNamespace?: Maybe<{ __typename?: 'PersonalNamespace', name?: Maybe }> }> }> }; +export type TenantQuery = { __typename?: 'Query', tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, workspaces?: Maybe, name?: Maybe, workspaceWrapperTenantV1alpha2?: Maybe<{ __typename?: 'WorkspaceWrapperTenantV1alpha2', itPolitoCrownlabsV1alpha1Workspace?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha1Workspace', spec?: Maybe<{ __typename?: 'Spec3', prettyName?: Maybe }>, status?: Maybe<{ __typename?: 'Status2', namespace?: Maybe<{ __typename?: 'Namespace', name?: Maybe }> }> }> }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe }>, status?: Maybe<{ __typename?: 'Status', personalNamespace?: Maybe<{ __typename?: 'PersonalNamespace', name?: Maybe }> }> }> }; export type TenantsQueryVariables = Exact<{ labels?: Maybe; @@ -2730,7 +2730,7 @@ export type TenantsQueryVariables = Exact<{ }>; -export type TenantsQuery = { __typename?: 'Query', tenants?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantList', items?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe, email?: Maybe, workspaces?: Maybe, name?: Maybe }>>> }> }>>> }> }; +export type TenantsQuery = { __typename?: 'Query', tenants?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantList', items?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe, email?: Maybe, workspaces?: Maybe, name?: Maybe }>>> }> }>>> }> }; export type UpdatedOwnedInstancesSubscriptionVariables = Exact<{ tenantNamespace: Scalars['String']; @@ -2738,21 +2738,21 @@ export type UpdatedOwnedInstancesSubscriptionVariables = Exact<{ }>; -export type UpdatedOwnedInstancesSubscription = { __typename?: 'Subscription', updateInstance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceUpdate', updateType?: Maybe, instance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', templateName?: Maybe, templateDescription?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }> }; +export type UpdatedOwnedInstancesSubscription = { __typename?: 'Subscription', updateInstance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceUpdate', updateType?: Maybe, instance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }> }; export type UpdatedInstancesLabelSelectorSubscriptionVariables = Exact<{ labels?: Maybe; }>; -export type UpdatedInstancesLabelSelectorSubscription = { __typename?: 'Subscription', updateInstanceLabelSelector?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceUpdate', updateType?: Maybe, instance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, tenantCrownlabsPolitoItTenantRef?: Maybe<{ __typename?: 'TenantCrownlabsPolitoItTenantRef', tenantId?: Maybe, tenantV1alpha2Wrapper?: Maybe<{ __typename?: 'TenantV1alpha2Wrapper', itPolitoCrownlabsV1alpha2Tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe }> }> }> }>, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', templateName?: Maybe, templateDescription?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }> }; +export type UpdatedInstancesLabelSelectorSubscription = { __typename?: 'Subscription', updateInstanceLabelSelector?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2InstanceUpdate', updateType?: Maybe, instance?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Instance', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe, creationTimestamp?: Maybe }>, status?: Maybe<{ __typename?: 'Status3', ip?: Maybe, phase?: Maybe, url?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec4', running?: Maybe, prettyName?: Maybe, tenantCrownlabsPolitoItTenantRef?: Maybe<{ __typename?: 'TenantCrownlabsPolitoItTenantRef', name?: Maybe, tenantV1alpha2Wrapper?: Maybe<{ __typename?: 'TenantV1alpha2Wrapper', itPolitoCrownlabsV1alpha2Tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', firstName?: Maybe, lastName?: Maybe }> }> }> }>, templateCrownlabsPolitoItTemplateRef?: Maybe<{ __typename?: 'TemplateCrownlabsPolitoItTemplateRef', name?: Maybe, namespace?: Maybe, templateWrapper?: Maybe<{ __typename?: 'TemplateWrapper', itPolitoCrownlabsV1alpha2Template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, environmentType?: Maybe }>>> }> }> }> }> }> }> }> }; export type UpdatedSshKeysSubscriptionVariables = Exact<{ tenantId: Scalars['String']; }>; -export type UpdatedSshKeysSubscription = { __typename?: 'Subscription', updatedTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantUpdate', updateType?: Maybe, updatedKeys?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', tenantId?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, publicKeys?: Maybe>> }> }> }> }; +export type UpdatedSshKeysSubscription = { __typename?: 'Subscription', updatedTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantUpdate', updateType?: Maybe, updatedKeys?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe }>, spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, publicKeys?: Maybe>> }> }> }> }; export type UpdatedWorkspaceTemplatesSubscriptionVariables = Exact<{ workspaceNamespace: Scalars['String']; @@ -2760,14 +2760,14 @@ export type UpdatedWorkspaceTemplatesSubscriptionVariables = Exact<{ }>; -export type UpdatedWorkspaceTemplatesSubscription = { __typename?: 'Subscription', updatedTemplate?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TemplateUpdate', updateType?: Maybe, template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', description?: Maybe, name?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', namespace?: Maybe, id?: Maybe }> }> }> }; +export type UpdatedWorkspaceTemplatesSubscription = { __typename?: 'Subscription', updatedTemplate?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TemplateUpdate', updateType?: Maybe, template?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Template', spec?: Maybe<{ __typename?: 'Spec6', prettyName?: Maybe, description?: Maybe, environmentList?: Maybe, persistent?: Maybe, resources?: Maybe<{ __typename?: 'Resources', cpu?: Maybe, disk?: Maybe, memory?: Maybe }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe, namespace?: Maybe }> }> }> }; export type UpdatedTenantSubscriptionVariables = Exact<{ tenantId: Scalars['String']; }>; -export type UpdatedTenantSubscription = { __typename?: 'Subscription', updatedTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantUpdate', updateType?: Maybe, tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, workspaces?: Maybe, workspaceId?: Maybe, workspaceWrapperTenantV1alpha2?: Maybe<{ __typename?: 'WorkspaceWrapperTenantV1alpha2', itPolitoCrownlabsV1alpha1Workspace?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha1Workspace', spec?: Maybe<{ __typename?: 'Spec3', workspaceName?: Maybe }>, status?: Maybe<{ __typename?: 'Status2', namespace?: Maybe<{ __typename?: 'Namespace', workspaceNamespace?: Maybe }> }> }> }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', tenantId?: Maybe }>, status?: Maybe<{ __typename?: 'Status', personalNamespace?: Maybe<{ __typename?: 'PersonalNamespace', name?: Maybe }> }> }> }> }; +export type UpdatedTenantSubscription = { __typename?: 'Subscription', updatedTenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2TenantUpdate', updateType?: Maybe, tenant?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha2Tenant', spec?: Maybe<{ __typename?: 'Spec7', email?: Maybe, firstName?: Maybe, lastName?: Maybe, workspaces?: Maybe, name?: Maybe, workspaceWrapperTenantV1alpha2?: Maybe<{ __typename?: 'WorkspaceWrapperTenantV1alpha2', itPolitoCrownlabsV1alpha1Workspace?: Maybe<{ __typename?: 'ItPolitoCrownlabsV1alpha1Workspace', spec?: Maybe<{ __typename?: 'Spec3', prettyName?: Maybe }>, status?: Maybe<{ __typename?: 'Status2', namespace?: Maybe<{ __typename?: 'Namespace', name?: Maybe }> }> }> }> }>>> }>, metadata?: Maybe<{ __typename?: 'IoK8sApimachineryPkgApisMetaV1ObjectMetaV2', name?: Maybe }>, status?: Maybe<{ __typename?: 'Status', personalNamespace?: Maybe<{ __typename?: 'PersonalNamespace', name?: Maybe }> }> }> }> }; export const ApplyInstanceDocument = gql` @@ -2893,7 +2893,7 @@ export const ApplyTenantDocument = gql` applicationApplyPatchYamlInput: $patchJson ) { metadata { - tenantId: name + name } spec { firstName @@ -2966,8 +2966,8 @@ export const CreateInstanceDocument = gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent @@ -3024,7 +3024,7 @@ export const CreateTemplateDocument = gql` itPolitoCrownlabsV1alpha2TemplateInput: {kind: "Template", apiVersion: "crownlabs.polito.it/v1alpha2", spec: {prettyName: $templateName, description: $descriptionTemplate, environmentList: [{name: "default", environmentType: $environmentType, image: $image, guiEnabled: $guiEnabled, persistent: $persistent, resources: $resources}], workspaceCrownlabsPolitoItWorkspaceRef: {name: $workspaceId}}, metadata: {generateName: $templateId, namespace: $workspaceNamespace}} ) { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -3037,7 +3037,7 @@ export const CreateTemplateDocument = gql` } } metadata { - id: name + name namespace } } @@ -3286,8 +3286,8 @@ export const OwnedInstancesDocument = gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent @@ -3354,7 +3354,7 @@ export const InstancesLabelSelectorDocument = gql` running prettyName tenantCrownlabsPolitoItTenantRef { - tenantId: name + name tenantV1alpha2Wrapper { itPolitoCrownlabsV1alpha2Tenant { spec { @@ -3370,8 +3370,8 @@ export const InstancesLabelSelectorDocument = gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent @@ -3424,7 +3424,7 @@ export const SshKeysDocument = gql` query sshKeys($tenantId: String!) { tenant: itPolitoCrownlabsV1alpha2Tenant(name: $tenantId) { metadata { - tenantId: name + name } spec { email @@ -3476,7 +3476,7 @@ export const WorkspaceTemplatesDocument = gql` ) { templates: items { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -3489,7 +3489,7 @@ export const WorkspaceTemplatesDocument = gql` } } metadata { - id: name + name namespace } } @@ -3539,15 +3539,15 @@ export const TenantDocument = gql` lastName workspaces { role - workspaceId: name + name workspaceWrapperTenantV1alpha2 { itPolitoCrownlabsV1alpha1Workspace { spec { - workspaceName: prettyName + prettyName } status { namespace { - workspaceNamespace: name + name } } } @@ -3555,7 +3555,7 @@ export const TenantDocument = gql` } } metadata { - tenantId: name + name } status { personalNamespace { @@ -3604,7 +3604,7 @@ export const TenantsDocument = gql` tenants: itPolitoCrownlabsV1alpha2TenantList(labelSelector: $labels) { items { metadata { - tenantId: name + name } spec { firstName @@ -3681,8 +3681,8 @@ export const UpdatedOwnedInstancesDocument = gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent @@ -3748,7 +3748,7 @@ export const UpdatedInstancesLabelSelectorDocument = gql` running prettyName tenantCrownlabsPolitoItTenantRef { - tenantId: name + name tenantV1alpha2Wrapper { itPolitoCrownlabsV1alpha2Tenant { spec { @@ -3764,8 +3764,8 @@ export const UpdatedInstancesLabelSelectorDocument = gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent @@ -3815,7 +3815,7 @@ export const UpdatedSshKeysDocument = gql` updateType updatedKeys: payload { metadata { - tenantId: name + name } spec { email @@ -3865,7 +3865,7 @@ export const UpdatedWorkspaceTemplatesDocument = gql` updateType template: payload { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -3878,7 +3878,7 @@ export const UpdatedWorkspaceTemplatesDocument = gql` } } metadata { - id: name + name namespace } } @@ -3926,15 +3926,15 @@ export const UpdatedTenantDocument = gql` lastName workspaces { role - workspaceId: name + name workspaceWrapperTenantV1alpha2 { itPolitoCrownlabsV1alpha1Workspace { spec { - workspaceName: prettyName + prettyName } status { namespace { - workspaceNamespace: name + name } } } @@ -3942,7 +3942,7 @@ export const UpdatedTenantDocument = gql` } } metadata { - tenantId: name + name } status { personalNamespace { diff --git a/frontend/src/graphql-components/mutation/applyTenant.mutation.graphql b/frontend/src/graphql-components/mutation/applyTenant.mutation.graphql index 802c88248..9ed7d831f 100644 --- a/frontend/src/graphql-components/mutation/applyTenant.mutation.graphql +++ b/frontend/src/graphql-components/mutation/applyTenant.mutation.graphql @@ -10,7 +10,7 @@ mutation applyTenant( applicationApplyPatchYamlInput: $patchJson ) { metadata { - tenantId: name + name } spec { firstName diff --git a/frontend/src/graphql-components/mutation/createInstance.mutation.graphql b/frontend/src/graphql-components/mutation/createInstance.mutation.graphql index 3860c11ec..e427ca5d4 100644 --- a/frontend/src/graphql-components/mutation/createInstance.mutation.graphql +++ b/frontend/src/graphql-components/mutation/createInstance.mutation.graphql @@ -42,8 +42,8 @@ mutation createInstance( templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent diff --git a/frontend/src/graphql-components/mutation/createTemplate.mutation.graphql b/frontend/src/graphql-components/mutation/createTemplate.mutation.graphql index 1ca0658cd..2dba3178e 100644 --- a/frontend/src/graphql-components/mutation/createTemplate.mutation.graphql +++ b/frontend/src/graphql-components/mutation/createTemplate.mutation.graphql @@ -34,7 +34,7 @@ mutation createTemplate( } ) { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -47,7 +47,7 @@ mutation createTemplate( } } metadata { - id: name + name namespace } } diff --git a/frontend/src/graphql-components/query/instances.query.graphql b/frontend/src/graphql-components/query/instances.query.graphql index a79b18b21..74350b56b 100644 --- a/frontend/src/graphql-components/query/instances.query.graphql +++ b/frontend/src/graphql-components/query/instances.query.graphql @@ -22,8 +22,8 @@ query ownedInstances($tenantNamespace: String!) { templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent diff --git a/frontend/src/graphql-components/query/instancesLabelSelector.query.graphql b/frontend/src/graphql-components/query/instancesLabelSelector.query.graphql index 5759ea581..ab930756e 100644 --- a/frontend/src/graphql-components/query/instancesLabelSelector.query.graphql +++ b/frontend/src/graphql-components/query/instancesLabelSelector.query.graphql @@ -15,7 +15,7 @@ query instancesLabelSelector($labels: String) { running prettyName tenantCrownlabsPolitoItTenantRef { - tenantId: name + name tenantV1alpha2Wrapper { itPolitoCrownlabsV1alpha2Tenant { spec { @@ -31,8 +31,8 @@ query instancesLabelSelector($labels: String) { templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent diff --git a/frontend/src/graphql-components/query/keys.query.graphql b/frontend/src/graphql-components/query/keys.query.graphql index 54bf51f81..adcd523ff 100644 --- a/frontend/src/graphql-components/query/keys.query.graphql +++ b/frontend/src/graphql-components/query/keys.query.graphql @@ -1,7 +1,7 @@ query sshKeys($tenantId: String!) { tenant: itPolitoCrownlabsV1alpha2Tenant(name: $tenantId) { metadata { - tenantId: name + name } spec { email diff --git a/frontend/src/graphql-components/query/templates.query.graphql b/frontend/src/graphql-components/query/templates.query.graphql index 729f0c53f..20a84b102 100644 --- a/frontend/src/graphql-components/query/templates.query.graphql +++ b/frontend/src/graphql-components/query/templates.query.graphql @@ -4,7 +4,7 @@ query workspaceTemplates($workspaceNamespace: String!) { ) { templates: items { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -17,7 +17,7 @@ query workspaceTemplates($workspaceNamespace: String!) { } } metadata { - id: name + name namespace } } diff --git a/frontend/src/graphql-components/query/tenant.query.graphql b/frontend/src/graphql-components/query/tenant.query.graphql index cbe9d74fa..6a02b2306 100644 --- a/frontend/src/graphql-components/query/tenant.query.graphql +++ b/frontend/src/graphql-components/query/tenant.query.graphql @@ -6,15 +6,15 @@ query tenant($tenantId: String!) { lastName workspaces { role - workspaceId: name + name workspaceWrapperTenantV1alpha2 { itPolitoCrownlabsV1alpha1Workspace { spec { - workspaceName: prettyName + prettyName } status { namespace { - workspaceNamespace: name + name } } } @@ -22,7 +22,7 @@ query tenant($tenantId: String!) { } } metadata { - tenantId: name + name } status { personalNamespace { diff --git a/frontend/src/graphql-components/query/tenants.query.graphql b/frontend/src/graphql-components/query/tenants.query.graphql index 3e80538fb..2e2eb799a 100644 --- a/frontend/src/graphql-components/query/tenants.query.graphql +++ b/frontend/src/graphql-components/query/tenants.query.graphql @@ -2,7 +2,7 @@ query tenants($labels: String, $retrieveWorkspaces: Boolean = false) { tenants: itPolitoCrownlabsV1alpha2TenantList(labelSelector: $labels) { items { metadata { - tenantId: name + name } spec { firstName diff --git a/frontend/src/graphql-components/subscription/instances.subscription.ts b/frontend/src/graphql-components/subscription/instances.subscription.ts index 50b655a07..01b0cfa62 100644 --- a/frontend/src/graphql-components/subscription/instances.subscription.ts +++ b/frontend/src/graphql-components/subscription/instances.subscription.ts @@ -30,8 +30,8 @@ export default gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent diff --git a/frontend/src/graphql-components/subscription/instancesLabelSelector.subscription.ts b/frontend/src/graphql-components/subscription/instancesLabelSelector.subscription.ts index ddb6ffa13..bbbf4b2b3 100644 --- a/frontend/src/graphql-components/subscription/instancesLabelSelector.subscription.ts +++ b/frontend/src/graphql-components/subscription/instancesLabelSelector.subscription.ts @@ -21,7 +21,7 @@ export default gql` running prettyName tenantCrownlabsPolitoItTenantRef { - tenantId: name + name tenantV1alpha2Wrapper { itPolitoCrownlabsV1alpha2Tenant { spec { @@ -37,8 +37,8 @@ export default gql` templateWrapper { itPolitoCrownlabsV1alpha2Template { spec { - templateName: prettyName - templateDescription: description + prettyName + description environmentList { guiEnabled persistent diff --git a/frontend/src/graphql-components/subscription/key.subscription.ts b/frontend/src/graphql-components/subscription/key.subscription.ts index 359737d08..8792b2836 100644 --- a/frontend/src/graphql-components/subscription/key.subscription.ts +++ b/frontend/src/graphql-components/subscription/key.subscription.ts @@ -6,7 +6,7 @@ export default gql` updateType updatedKeys: payload { metadata { - tenantId: name + name } spec { email diff --git a/frontend/src/graphql-components/subscription/templates.subscription.ts b/frontend/src/graphql-components/subscription/templates.subscription.ts index 531cf1e32..a4cf2ba3d 100644 --- a/frontend/src/graphql-components/subscription/templates.subscription.ts +++ b/frontend/src/graphql-components/subscription/templates.subscription.ts @@ -12,7 +12,7 @@ export default gql` updateType template: payload { spec { - name: prettyName + prettyName description environmentList { guiEnabled @@ -25,7 +25,7 @@ export default gql` } } metadata { - id: name + name namespace } } diff --git a/frontend/src/graphql-components/subscription/tenant.subscription.ts b/frontend/src/graphql-components/subscription/tenant.subscription.ts index 3dfd0371f..7e4bece00 100644 --- a/frontend/src/graphql-components/subscription/tenant.subscription.ts +++ b/frontend/src/graphql-components/subscription/tenant.subscription.ts @@ -11,15 +11,15 @@ export default gql` lastName workspaces { role - workspaceId: name + name workspaceWrapperTenantV1alpha2 { itPolitoCrownlabsV1alpha1Workspace { spec { - workspaceName: prettyName + prettyName } status { namespace { - workspaceNamespace: name + name } } } @@ -27,7 +27,7 @@ export default gql` } } metadata { - tenantId: name + name } status { personalNamespace { diff --git a/frontend/src/graphql-components/tenantContext/TenantContext.tsx b/frontend/src/graphql-components/tenantContext/TenantContext.tsx index b25df9386..f375358dc 100644 --- a/frontend/src/graphql-components/tenantContext/TenantContext.tsx +++ b/frontend/src/graphql-components/tenantContext/TenantContext.tsx @@ -15,6 +15,8 @@ import { useSshKeysQuery, useTenantQuery, } from '../../generated-types'; +import { JSONDeepCopy } from '../../utils'; +import { workspaceGetName } from '../../utilsLogic'; import { updatedTenant } from '../subscription'; interface ITenantContext { @@ -52,7 +54,12 @@ const TenantContextProvider: FC> = props => { const { loading, error, subscribeToMore } = useTenantQuery({ variables: { tenantId: userId ?? '' }, - onCompleted: setData, + onCompleted: d => { + d!.tenant!.spec?.workspaces!.sort((a, b) => + workspaceGetName(a!).localeCompare(workspaceGetName(b!)) + ); + setData(JSONDeepCopy(d)); + }, fetchPolicy: 'network-only', onError: apolloErrorCatcher, }); diff --git a/frontend/src/utils.ts b/frontend/src/utils.ts index cffaf6444..d04ae4aff 100644 --- a/frontend/src/utils.ts +++ b/frontend/src/utils.ts @@ -114,3 +114,5 @@ export function makeListToggler( ); }; } + +export const JSONDeepCopy = (obj: T) => JSON.parse(JSON.stringify(obj)) as T; diff --git a/frontend/src/utilsLogic.tsx b/frontend/src/utilsLogic.tsx index de57798e7..7c4426b21 100644 --- a/frontend/src/utilsLogic.tsx +++ b/frontend/src/utilsLogic.tsx @@ -11,6 +11,7 @@ import { UpdatedOwnedInstancesSubscriptionResult, UpdatedWorkspaceTemplatesSubscriptionResult, UpdateType, + WorkspacesListItem2, WorkspaceTemplatesQuery, } from './generated-types'; import { getInstancePatchJson } from './graphql-components/utils'; @@ -58,17 +59,17 @@ export const updateQueryWorkspaceTemplatesQuery = ( if (prev.templateList?.templates) { if (updateType === UpdateType.Deleted) { setDataTemplate(old => - old.filter(t => t.id !== template.metadata?.id!) + old.filter(t => t.id !== template.metadata?.name!) ); } else if (updateType === UpdateType.Modified) { setDataTemplate(old => old.map(t => - t.id === template.metadata?.id + t.id === template.metadata?.name ? getTemplate({ original: template, alias: { - id: template.metadata.id!, - name: template.spec?.name!, + id: template.metadata.name!, + name: template.spec?.prettyName!, }, }) : t @@ -81,8 +82,8 @@ export const updateQueryWorkspaceTemplatesQuery = ( getTemplate({ original: template, alias: { - id: template.metadata?.id!, - name: template.spec?.name!, + id: template.metadata?.name!, + name: template.spec?.prettyName!, }, })!, ].sort((a, b) => a.id.localeCompare(b.id)) @@ -100,7 +101,7 @@ export const getInstances = ( tenantNamespace: string ) => { const { metadata, spec, status } = instance!; - const { environmentList, templateName } = spec + const { environmentList, prettyName } = spec ?.templateCrownlabsPolitoItTemplateRef?.templateWrapper ?.itPolitoCrownlabsV1alpha2Template?.spec! as any; const [{ guiEnabled, persistent, environmentType }] = environmentList; @@ -111,7 +112,7 @@ export const getInstances = ( gui: guiEnabled, persistent: persistent, idTemplate: spec?.templateCrownlabsPolitoItTemplateRef?.name!, - templatePrettyName: templateName, + templatePrettyName: prettyName, environmentType: environmentType, ip: status?.ip, status: status?.phase, @@ -201,32 +202,33 @@ export const getManagerInstances = ( index: number ) => { const { metadata, spec, status } = instance!; - const { environmentList, templateName } = spec + const { environmentList, prettyName } = spec ?.templateCrownlabsPolitoItTemplateRef?.templateWrapper ?.itPolitoCrownlabsV1alpha2Template?.spec! as any; const [{ guiEnabled, persistent, environmentType }] = environmentList; const { firstName, lastName } = spec?.tenantCrownlabsPolitoItTenantRef?.tenantV1alpha2Wrapper ?.itPolitoCrownlabsV1alpha2Tenant?.spec!; - const { tenantId } = spec?.tenantCrownlabsPolitoItTenantRef as any; - const { name, namespace } = spec?.templateCrownlabsPolitoItTemplateRef as any; + const { name: tenantName } = spec?.tenantCrownlabsPolitoItTenantRef as any; + const { name: templateName, namespace: templateNamespace } = + spec?.templateCrownlabsPolitoItTemplateRef as any; return { id: index, name: metadata?.name, prettyName: spec?.prettyName, gui: guiEnabled, persistent: persistent, - idTemplate: name, - templatePrettyName: templateName, + idTemplate: templateName, + templatePrettyName: prettyName, environmentType: environmentType, ip: status?.ip, status: status?.phase, url: status?.url, timeStamp: metadata?.creationTimestamp, - tenantId: tenantId, + tenantId: tenantName, tenantNamespace: metadata?.namespace, tenantDisplayName: `${firstName}\n${lastName}`, - workspaceId: namespace.replace(/^workspace-/, ''), + workspaceId: templateNamespace.replace(/^workspace-/, ''), running: spec?.running, } as Instance; }; @@ -459,3 +461,7 @@ export const setInstancePrettyname = async ( return false; } }; + +export const workspaceGetName = (ws: WorkspacesListItem2): string => + ws?.workspaceWrapperTenantV1alpha2?.itPolitoCrownlabsV1alpha1Workspace?.spec + ?.prettyName!;