summaryrefslogtreecommitdiff
path: root/app/services/resource_access_tokens/create_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/resource_access_tokens/create_service.rb')
-rw-r--r--app/services/resource_access_tokens/create_service.rb9
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)