Skip to content

Update the project approval settings section to Vue

Jiaan Louw requested to merge 335964-update-project-approval-section-to-vue into master

What does this MR do?

This MR updates the project approval settings section to Vue and removes the old HAML view as described in #335964 (closed).

This MR also changes the following:

  • Show the ApprovalSettingCheckbox as locked when a setting is enforced on by an administrator.
  • The approval settings form is now dynamic and no longer reloads the page on submission.
  • Updates the setting copy and setting order to match group-level approval rules.

Setup & Testing

To test the approval settings:

  1. You need a GitLab Ultimate license.
  2. Checkout the feature branch.
  3. View the Approval settings under Merge request (MR) approvals [GDK_HOST]/gitlab-org/gitlab-shell/edit
  4. Enable some of the settings.
  5. Test that the setting are enforced on one of the project's merge requests.
  6. Switch to main branch.
  7. View the Approval settings again and confirm that setting remain the same.

To test approval settings with enforcement:

  1. Enable the settings in Merge request (MR) approvals at [GDK_HOST]/admin/push_rule#merge-request-approval-settings
  2. Confirm that the Approval settings are locked in [GDK_HOST]/gitlab-org/gitlab-shell/edit

Screenshots or Screencasts (strongly suggested)

Before After
image Screenshot_2021-08-05_at_12-22-28_General___Settings___Gitlab_Org_Gitlab_Test

Enforced

Before After
image image

Editing

Same as before, the button is only enabled on changes
Kapture_2021-08-05_at_15.47.10

Saving

Alert is shown in the context
Screenshot_2021-08-05_at_12-23-45_General___Settings___Gitlab_Org_Gitlab_Test

Loading

Alert is shown in the context
image

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

Does this MR contain changes to processing or storing of credentials or tokens, authorization and authentication methods or other items described in the security review guidelines? If not, then delete this Security section.

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team

Related to #335964 (closed)

Edited by Austin Regnery

Merge request reports