Make git push mandatory
This commit is contained in:
		
							parent
							
								
									5e8138aa54
								
							
						
					
					
						commit
						3c0f6da546
					
				|  | @ -111,13 +111,6 @@ module API | |||
|       def gitaly_payload(action) | ||||
|         return unless %w[git-receive-pack git-upload-pack].include?(action) | ||||
| 
 | ||||
|         if action == 'git-receive-pack' | ||||
|           return unless Gitlab::GitalyClient.feature_enabled?( | ||||
|             :ssh_receive_pack, | ||||
|             status: Gitlab::GitalyClient::MigrationStatus::OPT_OUT | ||||
|           ) | ||||
|         end | ||||
| 
 | ||||
|         { | ||||
|           repository: repository.gitaly_repository, | ||||
|           address: Gitlab::GitalyClient.address(project.repository_storage), | ||||
|  |  | |||
|  | @ -10,6 +10,7 @@ module Gitlab | |||
|     INTERNAL_API_CONTENT_TYPE = 'application/vnd.gitlab-workhorse+json'.freeze | ||||
|     INTERNAL_API_REQUEST_HEADER = 'Gitlab-Workhorse-Api-Request'.freeze | ||||
|     NOTIFICATION_CHANNEL = 'workhorse:notifications'.freeze | ||||
|     ALLOWED_ACTIONS = %w[git_receive_pack git_upload_pack info_refs].freeze | ||||
| 
 | ||||
|     # Supposedly the effective key size for HMAC-SHA256 is 256 bits, i.e. 32 | ||||
|     # bytes https://tools.ietf.org/html/rfc4868#section-2.6 | ||||
|  | @ -17,6 +18,8 @@ module Gitlab | |||
| 
 | ||||
|     class << self | ||||
|       def git_http_ok(repository, is_wiki, user, action, show_all_refs: false) | ||||
|         raise "Unsupported action: #{action}" unless ALLOWED_ACTIONS.include?(action.to_s) | ||||
| 
 | ||||
|         project = repository.project | ||||
|         repo_path = repository.path_to_repo | ||||
|         params = { | ||||
|  | @ -31,24 +34,7 @@ module Gitlab | |||
|           token: Gitlab::GitalyClient.token(project.repository_storage) | ||||
|         } | ||||
|         params[:Repository] = repository.gitaly_repository.to_h | ||||
| 
 | ||||
|         feature_enabled = case action.to_s | ||||
|                           when 'git_receive_pack' | ||||
|                             Gitlab::GitalyClient.feature_enabled?( | ||||
|                               :post_receive_pack, | ||||
|                               status: Gitlab::GitalyClient::MigrationStatus::OPT_OUT | ||||
|                             ) | ||||
|                           when 'git_upload_pack' | ||||
|                             true | ||||
|                           when 'info_refs' | ||||
|                             true | ||||
|                           else | ||||
|                             raise "Unsupported action: #{action}" | ||||
|                           end | ||||
| 
 | ||||
|         if feature_enabled | ||||
|         params[:GitalyServer] = server | ||||
|         end | ||||
| 
 | ||||
|         params | ||||
|       end | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue