-
Douwe Maan authored
Restrict pushes / merges to a protected branch to specific people # Relevant Issues - Closes #674 - Related to #179 # Screenshots ![2016-08-04_16-19-12](/uploads/c81032fe262949f3084974c4e622e9eb/2016-08-04_16-19-12.png) ![](https://gitlab.com/gitlab-org/gitlab-ee/uploads/342f06078b07b39c2c817b12c81b30fe/Screen_Shot_2016-07-27_at_6.50.56_PM.png) ![](https://gitlab.com/gitlab-org/gitlab-ee/uploads/52fe1ae3027d491270ea4845ae7ce54b/Screen_Shot_2016-07-27_at_6.51.02_PM.png) # Tasks - [ ] ee#674 !581 Restrict merges to specific people - [x] Implementation - [x] Model changes - [x] Protected branch `has_many` access levels - [x] Frontend - [x] How to add new users / roles? - [x] Dropdown should include users - [x] Dropdown shouldn't include users / roles that have already been selected - [x] Allow removing users / roles - [x] Removing a user from the project should remove their access (?) - [x] Test/refactor - [x] Extract common from {Merge,Push}AccessLevel models - [x] Clean up code that's removing users/roles that are already selected - [x] AccessLevelController? - [x] Fix build - [x] Add more tests - [x] Non `:push_code` users can't push even if added to an access level - [x] Remove access levels when a user is removed from a project - [x] Rebase off EE master instead of the "no one can push" feature branch - [x] Fix create for roles - [x] Fix update for roles - [x] Fix delete - [x] Fix create for users - [x] Fix update for users - [x] Fix defaults - [x] Verify - [x] API - [x] For a developer user - [x] When they are granted access specifically to - [x] Merge - [x] Push - [x] For a reporter user - [x] When they are granted access specifically to - [x] Merge - [x] Push - [x] Default branch protection - [x] CHANGELOG - [x] Screenshots - [x] Only show `:push_code` users in the dropdown - [x] Send email when user is added/removed from a protected branch - [x] Assign to {mini,end}boss - [x] Fix build - [x] Implement @dbalexandre's review comments - [x] EE should _add_ to CE - [x] Wait for [build](https://gitlab.com/gitlab-org/gitlab-ee/commit/61edf43d31452a0b972dc880e277c825d59f764f/builds) to pass - [x] Test by hand - [x] Assign to endboss - [x] Create CE MR to backport changes - [x] Implement @Douwe's comments - [x] access_level#humanize - [x] Blank line in _protected_branch.html.haml - [x] move stuff into shared partials? (_protected_branch_ee.html.haml) - [x] Can we move stuff into shared partials? (_create_protected_branch_ee.html.haml) - [x] The CE version has a bunch of extra attributes here, do we need those? - [x] We can't indent this section just in EE (protected_branches/show.html.haml) - [x] In EE, try not to add stuff to existing views. (protected_branches/show.html.haml) - [x] If we're gonna change multiline blocks to single-line blocks, we need to so in CE too. (factory) - [x] Split up `ProtectedBranches#show` - [x] Wait for [build](https://gitlab.com/gitlab-org/gitlab-ee/commit/3943254d5f92c9be520f685044d23bf75282d42a/builds) - [x] Implement Douwe's suggestions - [x] Add uniqueness validation - [x] Wait for @alfredo's UI enhancements - [x] Remove `show` page access controls - [x] Add more feature specs - [ ] Wait for review for @alfredo's work - [ ] Wait for merge See merge request !581
3851c497
To find the state of this project's repository at the time of any of these versions, check out
the tags.