BigW Consortium Gitlab
1. Previously, we were not removing existing access levels before creating new ones. This is not a problem for EE, but _is_ for CE, since we restrict the number of access levels in CE to 1. 2. The correct approach is: CE -> delete all access levels before updating a protected branch EE -> delete developer access levels if "developers_can_{merge,push}" is switched off 3. The dispatch is performed by checking if a "length: 1" validation is present on the access levels or not. 4. Another source of problems was that we didn't put multiple queries in a transaction. If the `destroy_all` passes, but the `update` fails, we should have a rollback. 5. Modifying the API to provide users direct access to CRUD access levels will make things a lot simpler. 6. Create `create/update` services separately for this API, which perform the necessary data translation, before calling the regular `create/update` services. The translation code was getting too large for the API endpoint itself, so this move makes sense.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
access_requestable.rb | Loading commit data... | |
awardable.rb | Loading commit data... | |
cache_markdown_field.rb | Loading commit data... | |
case_sensitivity.rb | Loading commit data... | |
expirable.rb | Loading commit data... | |
faster_cache_keys.rb | Loading commit data... | |
has_status.rb | Loading commit data... | |
importable.rb | Loading commit data... | |
internal_id.rb | Loading commit data... | |
issuable.rb | Loading commit data... | |
mentionable.rb | Loading commit data... | |
milestoneish.rb | Loading commit data... | |
note_on_diff.rb | Loading commit data... | |
participable.rb | Loading commit data... | |
project_features_compatibility.rb | Loading commit data... | |
protected_branch_access.rb | Loading commit data... | |
referable.rb | Loading commit data... | |
sortable.rb | Loading commit data... | |
spammable.rb | Loading commit data... | |
strip_attribute.rb | Loading commit data... | |
subscribable.rb | Loading commit data... | |
taskable.rb | Loading commit data... | |
token_authenticatable.rb | Loading commit data... |