3126: Handle "no local repository" case better.
[arvados.git] / services / api / app / models / commit.rb
index ee8c55c39200e2bbef3b76e79c2a8d31f8a8cdb7..a6b085722e90fb043a2277f7781727218e8e2559 100644 (file)
@@ -119,6 +119,9 @@ class Commit < ActiveRecord::Base
       raise ArgumentError.new "invalid sha1 #{sha1}"
     end
     src_gitdir, _ = git_dir_for repo_name
+    unless src_gitdir
+      raise ArgumentError.new "no local repository for #{repo_name}"
+    end
     dst_gitdir = Rails.configuration.git_internal_dir
     must_pipe("echo #{sha1.shellescape}",
               "git --git-dir #{src_gitdir.shellescape} pack-objects -q --revs --stdout",