Commit de212bdf authored by Anastasia McDonald's avatar Anastasia McDonald

Merge branch 'group-deploy-token-api-resource' into 'master'

Fabricate group deploy token resource via API

See merge request gitlab-org/gitlab!75131
parents f5c62d08 fccd1ae7
...@@ -4,18 +4,11 @@ module QA ...@@ -4,18 +4,11 @@ module QA
module Resource module Resource
class GroupDeployToken < Base class GroupDeployToken < Base
attr_accessor :name, :expires_at attr_accessor :name, :expires_at
attr_writer :scopes
attribute :username do attribute :id
Page::Group::Settings::Repository.perform do |repository_page| attribute :token
repository_page.expand_deploy_tokens(&:token_username) attribute :username
end
end
attribute :password do
Page::Group::Settings::Repository.perform do |repository_page|
repository_page.expand_deploy_tokens(&:token_password)
end
end
attribute :group do attribute :group do
Group.fabricate! do |resource| Group.fabricate! do |resource|
...@@ -24,11 +17,33 @@ module QA ...@@ -24,11 +17,33 @@ module QA
end end
end end
attribute :project do def fabricate_via_api!
Project.fabricate! do |resource| super
resource.name = 'project-to-deploy' end
resource.description = 'project for adding deploy token test'
end def api_get_path
"/groups/#{group.id}/deploy_tokens"
end
def api_post_path
api_get_path
end
def api_post_body
{
name: @name,
scopes: @scopes
}
end
def api_delete_path
"/groups/#{group.id}/deploy_tokens/#{id}"
end
def resource_web_url(resource)
super
rescue ResourceURLMissingError
# this particular resource does not expose a web_url property
end end
def fabricate! def fabricate!
......
...@@ -21,9 +21,14 @@ module QA ...@@ -21,9 +21,14 @@ module QA
end end
let(:group_deploy_token) do let(:group_deploy_token) do
Resource::GroupDeployToken.fabricate_via_browser_ui! do |deploy_token| Resource::GroupDeployToken.fabricate_via_api! do |deploy_token|
deploy_token.name = 'nuget-group-deploy-token' deploy_token.name = 'nuget-group-deploy-token'
deploy_token.group = project.group deploy_token.group = project.group
deploy_token.scopes = %w[
read_repository
read_package_registry
write_package_registry
]
end end
end end
...@@ -70,7 +75,7 @@ module QA ...@@ -70,7 +75,7 @@ module QA
when :ci_job_token when :ci_job_token
'${CI_JOB_TOKEN}' '${CI_JOB_TOKEN}'
when :group_deploy_token when :group_deploy_token
"\"#{group_deploy_token.password}\"" "\"#{group_deploy_token.token}\""
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment