diff --git a/changelogs/unreleased/services-usage-5.yml b/changelogs/unreleased/services-usage-5.yml new file mode 100644 index 0000000000000000000000000000000000000000..04657cf147d752ccfa75f81d674377341d5b6c94 --- /dev/null +++ b/changelogs/unreleased/services-usage-5.yml @@ -0,0 +1,5 @@ +--- +title: Use GpgKeys::CreateService when an admin creates a new GPG key for a user +merge_request: 34737 +author: Rajendra Kadam +type: fixed diff --git a/lib/api/users.rb b/lib/api/users.rb index 5f15787015193f2538b4b60f40bcb9ef1345b4c0..994d27e53deb99c941241a3a90f9184ac1d44da2 100644 --- a/lib/api/users.rb +++ b/lib/api/users.rb @@ -328,9 +328,9 @@ def reorder_users(users) user = User.find_by(id: params.delete(:id)) not_found!('User') unless user - key = user.gpg_keys.new(declared_params(include_missing: false)) + key = ::GpgKeys::CreateService.new(user, declared_params(include_missing: false)).execute - if key.save + if key.persisted? present key, with: Entities::GpgKey else render_validation_error!(key)