diff options
Diffstat (limited to 'app/services/resource_access_tokens/create_service.rb')
-rw-r--r-- | app/services/resource_access_tokens/create_service.rb | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/app/services/resource_access_tokens/create_service.rb b/app/services/resource_access_tokens/create_service.rb index 6ff8767a525..34aa414de8f 100644 --- a/app/services/resource_access_tokens/create_service.rb +++ b/app/services/resource_access_tokens/create_service.rb @@ -16,11 +16,12 @@ module ResourceAccessTokens return error(user.errors.full_messages.to_sentence) unless user.persisted? - member = create_membership(resource, user) + access_level = params[:access_level] || Gitlab::Access::MAINTAINER + member = create_membership(resource, user, access_level) unless member.persisted? delete_failed_user(user) - return error("Could not provision maintainer access to project access token") + return error("Could not provision #{Gitlab::Access.human_access(access_level).downcase} access to project access token") end token_response = create_personal_access_token(user) @@ -102,8 +103,8 @@ module ResourceAccessTokens Gitlab::Auth.resource_bot_scopes end - def create_membership(resource, user) - resource.add_user(user, :maintainer, expires_at: params[:expires_at]) + def create_membership(resource, user, access_level) + resource.add_user(user, access_level, expires_at: params[:expires_at]) end def log_event(token) |