Skip to content
Snippets Groups Projects

Deploy token access for the dependency proxy

Merged Steve Abrams requested to merge 280586-dependency-proxy-deploy-tokens into master
Compare and Show latest version
9 files
+ 86
21
Compare changes
  • Side-by-side
  • Inline
Files
9
@@ -10,6 +10,7 @@ class DeployToken < ApplicationRecord
@@ -10,6 +10,7 @@ class DeployToken < ApplicationRecord
AVAILABLE_SCOPES = %i(read_repository read_registry write_registry
AVAILABLE_SCOPES = %i(read_repository read_registry write_registry
read_package_registry write_package_registry).freeze
read_package_registry write_package_registry).freeze
GITLAB_DEPLOY_TOKEN_NAME = 'gitlab-deploy-token'
GITLAB_DEPLOY_TOKEN_NAME = 'gitlab-deploy-token'
 
REQUIRED_DEPENDENCY_PROXY_SCOPES = %i[read_registry write_registry].freeze
default_value_for(:expires_at) { Forever.date }
default_value_for(:expires_at) { Forever.date }
@@ -46,6 +47,12 @@ def self.gitlab_deploy_token
@@ -46,6 +47,12 @@ def self.gitlab_deploy_token
active.find_by(name: GITLAB_DEPLOY_TOKEN_NAME)
active.find_by(name: GITLAB_DEPLOY_TOKEN_NAME)
end
end
 
def valid_dependency_proxy_deploy_token?
 
group_type? &&
 
active? &&
 
(scopes & REQUIRED_DEPENDENCY_PROXY_SCOPES).many?
 
end
 
def revoke!
def revoke!
update!(revoked: true)
update!(revoked: true)
end
end
Loading