From 61e02d7f6c073a52b66283a39dc27487b4b883dc Mon Sep 17 00:00:00 2001 From: Enrique Alcantara Date: Thu, 20 Apr 2023 15:52:11 -0400 Subject: [PATCH 1/6] Workspace create follow-up - Make sure we are sending all parameters to workspace create mutation - Fetch cluster agents from root group - Projects should have a devfile - Redirect to workspaces list after a workspace is created --- .../create/get_project_details_query.vue | 73 +++++++++++++--- .../remote_development/constants.js | 3 +- .../fragments/workspace.fragment.graphql | 14 ---- .../workspace_create.mutation.graphql | 5 -- .../get_group_cluster_agents.query.graphql | 11 +++ .../queries/get_project_details.query.graphql | 7 +- .../remote_development/init_workspaces_app.js | 36 +------- .../remote_development/pages/create.vue | 26 +++--- .../create/get_project_details_query_spec.js | 83 +++++++++++++++---- .../remote_development/mock_data/index.js | 13 ++- .../remote_development/pages/create_spec.js | 70 +++++++++------- locale/gitlab.pot | 5 +- 12 files changed, 209 insertions(+), 137 deletions(-) delete mode 100644 ee/app/assets/javascripts/remote_development/graphql/fragments/workspace.fragment.graphql create mode 100644 ee/app/assets/javascripts/remote_development/graphql/queries/get_group_cluster_agents.query.graphql diff --git a/ee/app/assets/javascripts/remote_development/components/create/get_project_details_query.vue b/ee/app/assets/javascripts/remote_development/components/create/get_project_details_query.vue index 49f029ed4deff1..95f05178e90a69 100644 --- a/ee/app/assets/javascripts/remote_development/components/create/get_project_details_query.vue +++ b/ee/app/assets/javascripts/remote_development/components/create/get_project_details_query.vue @@ -1,6 +1,7 @@ @@ -28,7 +30,7 @@ export default { :svg-path="emptyStateSvgPath" > diff --git a/ee/app/assets/javascripts/remote_development/constants.js b/ee/app/assets/javascripts/remote_development/constants.js index b40560df185828..63444320203b81 100644 --- a/ee/app/assets/javascripts/remote_development/constants.js +++ b/ee/app/assets/javascripts/remote_development/constants.js @@ -13,3 +13,8 @@ export const WORKSPACE_STATES = { terminated: 'Terminated', }; export const DEFAULT_DESIRED_STATE = WORKSPACE_STATES.running; + +export const ROUTES = { + index: 'index', + create: 'create', +}; diff --git a/ee/app/assets/javascripts/remote_development/pages/create.vue b/ee/app/assets/javascripts/remote_development/pages/create.vue index c68fd0592763e4..f445386e9c0080 100644 --- a/ee/app/assets/javascripts/remote_development/pages/create.vue +++ b/ee/app/assets/javascripts/remote_development/pages/create.vue @@ -7,7 +7,7 @@ import { helpPagePath } from '~/helpers/help_page_helper'; import SearchProjectsListbox from '../components/create/search_projects_listbox.vue'; import GetProjectDetailsQuery from '../components/create/get_project_details_query.vue'; import workspaceCreateMutation from '../graphql/mutations/workspace_create.mutation.graphql'; -import { DEFAULT_DESIRED_STATE, DEFAULT_DEVFILE_PATH, DEFAULT_EDITOR } from '../constants'; +import { DEFAULT_DESIRED_STATE, DEFAULT_DEVFILE_PATH, DEFAULT_EDITOR, ROUTES } from '../constants'; export const i18n = { title: s__('Workspaces|New workspace'), @@ -129,7 +129,7 @@ export default { return; } - this.$router.push('index'); + this.$router.push(ROUTES.index); } catch (error) { logError(error); createAlert({ message: i18n.createWorkspaceFailedMessage }); @@ -139,6 +139,7 @@ export default { }, }, i18n, + ROUTES, };