From cd88479dc1be180f45454c30930bd20efbfed0d7 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Fri, 16 Jul 2021 15:09:56 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../index/components/delete_project_modal.vue | 2 +- .../components/project_delete_button.vue | 4 --- app/assets/stylesheets/application_dark.scss | 4 +++ app/views/projects/_remove.html.haml | 2 +- doc/user/project/settings/index.md | 35 ++++++++++++++++--- locale/gitlab.pot | 18 +++++----- spec/features/projects_spec.rb | 2 +- .../project_delete_button_spec.js.snap | 4 --- 8 files changed, 47 insertions(+), 24 deletions(-) diff --git a/app/assets/javascripts/pages/admin/projects/index/components/delete_project_modal.vue b/app/assets/javascripts/pages/admin/projects/index/components/delete_project_modal.vue index b92fc8d125d..055d6f40c14 100644 --- a/app/assets/javascripts/pages/admin/projects/index/components/delete_project_modal.vue +++ b/app/assets/javascripts/pages/admin/projects/index/components/delete_project_modal.vue @@ -46,7 +46,7 @@ export default { return sprintf( s__(`AdminProjects| You’re about to permanently delete the project %{projectName}, its repository, - and all related resources including issues, merge requests, etc.. Once you confirm and press + and all related resources, including issues and merge requests. Once you confirm and press %{strong_start}Delete project%{strong_end}, it cannot be undone or recovered.`), { projectName: `${escape(this.projectName)}`, diff --git a/app/assets/javascripts/projects/components/project_delete_button.vue b/app/assets/javascripts/projects/components/project_delete_button.vue index 81d23a563e2..06711e4025a 100644 --- a/app/assets/javascripts/projects/components/project_delete_button.vue +++ b/app/assets/javascripts/projects/components/project_delete_button.vue @@ -24,9 +24,6 @@ export default { alertBody: __( 'Once a project is permanently deleted, it %{strongStart}cannot be recovered%{strongEnd}. Permanently deleting this project will %{strongStart}immediately delete%{strongEnd} its repositories and %{strongStart}all related resources%{strongEnd}, including issues, merge requests etc.', ), - modalBody: __( - "This action cannot be undone. You will lose this project's repository and all related resources, including issues, merge requests, etc.", - ), }, }; @@ -46,7 +43,6 @@ export default { -

{{ $options.strings.modalBody }}

diff --git a/app/assets/stylesheets/application_dark.scss b/app/assets/stylesheets/application_dark.scss index 90aab7ce342..30db4e2296d 100644 --- a/app/assets/stylesheets/application_dark.scss +++ b/app/assets/stylesheets/application_dark.scss @@ -57,4 +57,8 @@ body.gl-dark { } } } + + .md code { + background-color: $gray-200; + } } diff --git a/app/views/projects/_remove.html.haml b/app/views/projects/_remove.html.haml index e991a9b0ec7..cb0ec9f19c8 100644 --- a/app/views/projects/_remove.html.haml +++ b/app/views/projects/_remove.html.haml @@ -3,7 +3,7 @@ .sub-section %h4.danger-title= _('Delete project') %p - %strong= _('Deleting the project will delete its repository and all related resources including issues, merge requests, etc.') + %strong= _('Deleting the project will delete its repository and all related resources, including issues and merge requests.') = link_to _('Learn more.'), help_page_path('user/project/settings/index', anchor: 'removing-a-fork-relationship'), target: '_blank', rel: 'noopener noreferrer' %p %strong= _('Deleted projects cannot be restored!') diff --git a/doc/user/project/settings/index.md b/doc/user/project/settings/index.md index 9f1df5c2b89..d79d9f5b9dc 100644 --- a/doc/user/project/settings/index.md +++ b/doc/user/project/settings/index.md @@ -364,13 +364,18 @@ namespace if needed. #### Delete a project -NOTE: -Only project Owners and administrators have [permissions](../../permissions.md#project-members-permissions) to delete a project. +You can mark a project to be deleted. + +Prerequisite: + +- You must have at least the Owner role for a project. To delete a project: -1. Navigate to your project, and select **Settings > General > Advanced**. -1. In the "Delete project" section, click the **Delete project** button. +1. On the top bar, select **Menu > Projects** and find your project. +1. On the left sidebar, select **Settings > General**. +1. Expand **Advanced**. +1. In the "Delete project" section, select **Delete project**. 1. Confirm the action when asked to. This action deletes a project including all associated resources (issues, merge requests, and so on). @@ -385,6 +390,28 @@ WARNING: The default behavior of [delayed project deletion](https://gitlab.com/gitlab-org/gitlab/-/issues/32935) in GitLab 12.6 was changed to [Immediate deletion](https://gitlab.com/gitlab-org/gitlab/-/issues/220382) in GitLab 13.2. +#### Delete a project immediately **(PREMIUM)** + +> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/191367) in GitLab 14.1. + +If you don't want to wait, you can delete a project immediately. + +Prerequisites: + +- You must have at least the Owner role for a project. +- You have [marked the project for deletion](#delete-a-project). + +To immediately delete a project marked for deletion: + +1. On the top bar, select **Menu > Projects** and find your project. +1. On the left sidebar, select **Settings > General**. +1. Expand **Advanced**. +1. In the "Permanently delete project" section, select **Delete project**. +1. Confirm the action when asked to. + +Your project, its repository, and all related resources, including issues and merge requests, +are deleted. + #### Restore a project **(PREMIUM)** > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/32935) in GitLab 12.6. diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 607e37be54b..2d40344c4b3 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -2368,7 +2368,7 @@ msgstr "" msgid "AdminDashboard|Error loading the statistics. Please try again" msgstr "" -msgid "AdminProjects| You’re about to permanently delete the project %{projectName}, its repository, and all related resources including issues, merge requests, etc.. Once you confirm and press %{strong_start}Delete project%{strong_end}, it cannot be undone or recovered." +msgid "AdminProjects| You’re about to permanently delete the project %{projectName}, its repository, and all related resources, including issues and merge requests. Once you confirm and press %{strong_start}Delete project%{strong_end}, it cannot be undone or recovered." msgstr "" msgid "AdminProjects|Delete" @@ -10713,7 +10713,7 @@ msgstr "" msgid "Deleting a user has the following effects:" msgstr "" -msgid "Deleting the project will delete its repository and all related resources including issues, merge requests, etc." +msgid "Deleting the project will delete its repository and all related resources, including issues and merge requests." msgstr "" msgid "Deletion pending. This project will be deleted on %{date}. Repository and other project resources are read-only." @@ -23070,7 +23070,7 @@ msgstr "" msgid "Once a project is permanently deleted, it %{strongStart}cannot be recovered%{strongEnd}. Permanently deleting this project will %{strongStart}immediately delete%{strongEnd} its repositories and %{strongStart}all related resources%{strongEnd}, including issues, merge requests etc." msgstr "" -msgid "Once a project is permanently deleted, it cannot be recovered. You will lose this project's repository and all related resources, including issues, merge requests etc." +msgid "Once a project is permanently deleted, it cannot be recovered. You will lose this project's repository and all related resources, including issues and merge requests." msgstr "" msgid "Once imported, repositories can be mirrored over SSH. Read more %{link_start}here%{link_end}." @@ -23120,7 +23120,7 @@ msgstr "" msgid "Only Project Members" msgstr "" -msgid "Only active this projects shows up in the search and on the dashboard." +msgid "Only active projects show up in the search and on the dashboard." msgstr "" msgid "Only admins can delete project" @@ -23969,6 +23969,9 @@ msgstr "" msgid "PerformanceBar|Trace" msgstr "" +msgid "Permanently delete project" +msgstr "" + msgid "Permissions" msgstr "" @@ -33450,16 +33453,13 @@ msgstr "" msgid "This action cannot be undone, and will permanently delete the %{key} SSH key" msgstr "" -msgid "This action cannot be undone. You will lose this project's repository and all related resources, including issues, merge requests, etc." -msgstr "" - msgid "This action has been performed too many times. Try again later." msgstr "" -msgid "This action will %{strongOpen}permanently delete%{strongClose} %{codeOpen}%{project}%{codeClose} %{strongOpen}immediately%{strongClose}, including its repositories and all related resources, including issues, merge requests, etc." +msgid "This action will %{strongOpen}permanently delete%{strongClose} %{codeOpen}%{project}%{codeClose} %{strongOpen}immediately%{strongClose}, including its repositories and all related resources, including issues and merge requests." msgstr "" -msgid "This action will %{strongOpen}permanently delete%{strongClose} %{codeOpen}%{project}%{codeClose} %{strongOpen}on %{date}%{strongClose}, including its repositories and all related resources, including issues, merge requests, etc." +msgid "This action will %{strongOpen}permanently delete%{strongClose} %{codeOpen}%{project}%{codeClose} %{strongOpen}on %{date}%{strongClose}, including its repositories and all related resources, including issues and merge requests." msgstr "" msgid "This also resolves all related threads" diff --git a/spec/features/projects_spec.rb b/spec/features/projects_spec.rb index d19de5cf79d..a3d134d49eb 100644 --- a/spec/features/projects_spec.rb +++ b/spec/features/projects_spec.rb @@ -256,7 +256,7 @@ RSpec.describe 'Project' do expect(page).to have_selector '#confirm_name_input:focus' end - it 'deletes a project', :sidekiq_might_not_need_inline do + it 'deletes a project', :sidekiq_inline do expect { remove_with_confirm('Delete project', project.path, 'Yes, delete project') }.to change { Project.count }.by(-1) expect(page).to have_content "Project '#{project.full_name}' is in the process of being deleted." expect(Project.all.count).to be_zero diff --git a/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap b/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap index f0d72124379..c255fcce321 100644 --- a/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap +++ b/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap @@ -57,10 +57,6 @@ exports[`Project remove modal initialized matches the snapshot 1`] = ` /> -

- This action cannot be undone. You will lose this project's repository and all related resources, including issues, merge requests, etc. -

-