From 6d7ccca3310a7728b79e3717eeaf7cf1ae905b12 Mon Sep 17 00:00:00 2001 From: Gabriel Mazetto Date: Thu, 3 Mar 2016 01:17:05 -0300 Subject: Added an optional --force parameter for gitlab-projects fetch-remote The optional parameter will decide wheter to fetch using --force or not. fetching with --force is a requirement for Gitlab Geo secondary node replication. --- lib/gitlab_projects.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb index c1d175a..4f26d45 100644 --- a/lib/gitlab_projects.rb +++ b/lib/gitlab_projects.rb @@ -60,7 +60,7 @@ class GitlabProjects when 'import-project'; import_project when 'fork-project'; fork_project when 'fetch-remote'; fetch_remote - when 'update-head'; update_head + when 'update-head'; update_head when 'gc'; gc else $logger.warn "Attempt to execute invalid gitlab-projects command #{@command.inspect}." @@ -135,8 +135,13 @@ class GitlabProjects # timeout for fetch timeout = (ARGV.shift || 120).to_i + + # fetch with --force ? + forced = (ARGV.shift == '--force' || false) + $logger.info "Fetching remote #{@name} for project #{@project_name}." cmd = %W(git --git-dir=#{full_path} fetch #{@name} --tags) + cmd << '--force' if forced pid = Process.spawn(*cmd) begin -- cgit v1.2.1