From be1edfcb4084de4f5e3db485eb40eae6627c4304 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 8 Jun 2017 17:09:06 +1000 Subject: [PATCH] Update gitlab:repo:check task to support subgroups gitlab:repo:check did not correctly support subgroups. This resulted in an error when checking subgroups: `Fatal: Not a git repository (or any of the parent directories): .git` Use Dir.glob to recursively walk repository directories. Only check those ending in .git --- changelogs/unreleased/mrchrisw-fix-check-subgroups.yml | 4 ++++ lib/tasks/gitlab/check.rake | 8 +++----- 2 files changed, 7 insertions(+), 5 deletions(-) create mode 100644 changelogs/unreleased/mrchrisw-fix-check-subgroups.yml diff --git a/changelogs/unreleased/mrchrisw-fix-check-subgroups.yml b/changelogs/unreleased/mrchrisw-fix-check-subgroups.yml new file mode 100644 index 000000000000..940c1c5d41b7 --- /dev/null +++ b/changelogs/unreleased/mrchrisw-fix-check-subgroups.yml @@ -0,0 +1,4 @@ +--- +title: Update gitlab:repo:check task to support subgroups +merge_request: +author: diff --git a/lib/tasks/gitlab/check.rake b/lib/tasks/gitlab/check.rake index 63c5e9b9c83c..5c2e1764ec1a 100644 --- a/lib/tasks/gitlab/check.rake +++ b/lib/tasks/gitlab/check.rake @@ -507,11 +507,9 @@ namespace :gitlab do desc "GitLab | Check the integrity of the repositories managed by GitLab" task check: :environment do Gitlab.config.repositories.storages.each do |name, repository_storage| - namespace_dirs = Dir.glob(File.join(repository_storage['path'], '*')) - - namespace_dirs.each do |namespace_dir| - repo_dirs = Dir.glob(File.join(namespace_dir, '*')) - repo_dirs.each { |repo_dir| check_repo_integrity(repo_dir) } + repo_dirs = Dir.glob(File.join(repository_storage['path'], '**/*')) + repo_dirs.each do |repo| + check_repo_integrity(repo) if repo.end_with?('.git') && File.directory?(repo) end end end -- GitLab