From e5c99ebf68f31d630f2a35f7e4e79e93143a3607 Mon Sep 17 00:00:00 2001 From: Brett Smith Date: Tue, 23 Feb 2016 11:59:25 -0500 Subject: [PATCH] 8439: API server suggests RW+ Gitolite permissions for writers. This lets users with write permission do non-fast-forward pushes. --- .../api/app/controllers/arvados/v1/repositories_controller.rb | 4 ++-- .../functional/arvados/v1/repositories_controller_test.rb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/services/api/app/controllers/arvados/v1/repositories_controller.rb b/services/api/app/controllers/arvados/v1/repositories_controller.rb index 4bf9a6a094..183ed4d8a8 100644 --- a/services/api/app/controllers/arvados/v1/repositories_controller.rb +++ b/services/api/app/controllers/arvados/v1/repositories_controller.rb @@ -91,11 +91,11 @@ class Arvados::V1::RepositoriesController < ApplicationController @repo_info.values.each do |repo| repo[:user_permissions].each do |user_uuid, user_perms| if user_perms['can_manage'] - user_perms['gitolite_permissions'] = 'RW' + user_perms['gitolite_permissions'] = 'RW+' user_perms['can_write'] = true user_perms['can_read'] = true elsif user_perms['can_write'] - user_perms['gitolite_permissions'] = 'RW' + user_perms['gitolite_permissions'] = 'RW+' user_perms['can_read'] = true elsif user_perms['can_read'] user_perms['gitolite_permissions'] = 'R' diff --git a/services/api/test/functional/arvados/v1/repositories_controller_test.rb b/services/api/test/functional/arvados/v1/repositories_controller_test.rb index 514bb66bb2..241a34eb10 100644 --- a/services/api/test/functional/arvados/v1/repositories_controller_test.rb +++ b/services/api/test/functional/arvados/v1/repositories_controller_test.rb @@ -176,13 +176,13 @@ class Arvados::V1::RepositoriesControllerTest < ActionController::TestCase end if perms['can_write'] assert u.can? write: repo['uuid'] - assert_match /RW/, perms['gitolite_permissions'] + assert_match /RW\+/, perms['gitolite_permissions'] else refute_match /W/, perms['gitolite_permissions'] end if perms['can_manage'] assert u.can? manage: repo['uuid'] - assert_match /RW/, perms['gitolite_permissions'] + assert_match /RW\+/, perms['gitolite_permissions'] end end end -- 2.30.2