Merge branch 'feature/migrate-repository-size-to-gitaly' into 'master'
Migrate Gitlab::Git::Repository#size to Gitaly Closes gitaly#437 See merge request !13259
This commit is contained in:
commit
6085ce1352
5 changed files with 25 additions and 5 deletions
|
@ -1 +1 @@
|
||||||
0.27.0
|
0.29.0
|
||||||
|
|
2
Gemfile
2
Gemfile
|
@ -401,7 +401,7 @@ group :ed25519 do
|
||||||
end
|
end
|
||||||
|
|
||||||
# Gitaly GRPC client
|
# Gitaly GRPC client
|
||||||
gem 'gitaly', '~> 0.24.0'
|
gem 'gitaly', '~> 0.26.0'
|
||||||
|
|
||||||
gem 'toml-rb', '~> 0.3.15', require: false
|
gem 'toml-rb', '~> 0.3.15', require: false
|
||||||
|
|
||||||
|
|
|
@ -270,7 +270,7 @@ GEM
|
||||||
po_to_json (>= 1.0.0)
|
po_to_json (>= 1.0.0)
|
||||||
rails (>= 3.2.0)
|
rails (>= 3.2.0)
|
||||||
gherkin-ruby (0.3.2)
|
gherkin-ruby (0.3.2)
|
||||||
gitaly (0.24.0)
|
gitaly (0.26.0)
|
||||||
google-protobuf (~> 3.1)
|
google-protobuf (~> 3.1)
|
||||||
grpc (~> 1.0)
|
grpc (~> 1.0)
|
||||||
github-linguist (4.7.6)
|
github-linguist (4.7.6)
|
||||||
|
@ -982,7 +982,7 @@ DEPENDENCIES
|
||||||
gettext (~> 3.2.2)
|
gettext (~> 3.2.2)
|
||||||
gettext_i18n_rails (~> 1.8.0)
|
gettext_i18n_rails (~> 1.8.0)
|
||||||
gettext_i18n_rails_js (~> 1.2.0)
|
gettext_i18n_rails_js (~> 1.2.0)
|
||||||
gitaly (~> 0.24.0)
|
gitaly (~> 0.26.0)
|
||||||
github-linguist (~> 4.7.0)
|
github-linguist (~> 4.7.0)
|
||||||
gitlab-flowdock-git-hook (~> 1.0.1)
|
gitlab-flowdock-git-hook (~> 1.0.1)
|
||||||
gitlab-markup (~> 1.5.1)
|
gitlab-markup (~> 1.5.1)
|
||||||
|
|
|
@ -282,7 +282,14 @@ module Gitlab
|
||||||
|
|
||||||
# Return repo size in megabytes
|
# Return repo size in megabytes
|
||||||
def size
|
def size
|
||||||
size = popen(%w(du -sk), path).first.strip.to_i
|
size = gitaly_migrate(:repository_size) do |is_enabled|
|
||||||
|
if is_enabled
|
||||||
|
size_by_gitaly
|
||||||
|
else
|
||||||
|
size_by_shelling_out
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
(size.to_f / 1024).round(2)
|
(size.to_f / 1024).round(2)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -943,6 +950,14 @@ module Gitlab
|
||||||
gitaly_ref_client.tags
|
gitaly_ref_client.tags
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def size_by_shelling_out
|
||||||
|
popen(%w(du -sk), path).first.strip.to_i
|
||||||
|
end
|
||||||
|
|
||||||
|
def size_by_gitaly
|
||||||
|
gitaly_repository_client.repository_size
|
||||||
|
end
|
||||||
|
|
||||||
def count_commits_by_gitaly(options)
|
def count_commits_by_gitaly(options)
|
||||||
gitaly_commit_client.commit_count(options[:ref], options)
|
gitaly_commit_client.commit_count(options[:ref], options)
|
||||||
end
|
end
|
||||||
|
|
|
@ -27,6 +27,11 @@ module Gitlab
|
||||||
request = Gitaly::RepackIncrementalRequest.new(repository: @gitaly_repo)
|
request = Gitaly::RepackIncrementalRequest.new(repository: @gitaly_repo)
|
||||||
GitalyClient.call(@storage, :repository_service, :repack_incremental, request)
|
GitalyClient.call(@storage, :repository_service, :repack_incremental, request)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def repository_size
|
||||||
|
request = Gitaly::RepositorySizeRequest.new(repository: @gitaly_repo)
|
||||||
|
GitalyClient.call(@storage, :repository_service, :repository_size, request).size
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue