Move tool path methods to AbstractDownloadStrategy
This commit is contained in:
parent
bec5e0671f
commit
3e1cc70fb4
@ -37,6 +37,49 @@ class AbstractDownloadStrategy
|
|||||||
def stage; end
|
def stage; end
|
||||||
def cached_location; end
|
def cached_location; end
|
||||||
def clear_cache; end
|
def clear_cache; end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def xzpath
|
||||||
|
"#{HOMEBREW_PREFIX}/opt/xz/bin/xz"
|
||||||
|
end
|
||||||
|
|
||||||
|
def lzippath
|
||||||
|
"#{HOMEBREW_PREFIX}/opt/lzip/bin/lzip"
|
||||||
|
end
|
||||||
|
|
||||||
|
def cvspath
|
||||||
|
@cvspath ||= %W[
|
||||||
|
/usr/bin/cvs
|
||||||
|
#{HOMEBREW_PREFIX}/bin/cvs
|
||||||
|
#{HOMEBREW_PREFIX}/opt/cvs/bin/cvs
|
||||||
|
#{which("cvs")}
|
||||||
|
].find { |p| File.executable? p }
|
||||||
|
end
|
||||||
|
|
||||||
|
def hgpath
|
||||||
|
@hgpath ||= %W[
|
||||||
|
#{which("hg")}
|
||||||
|
#{HOMEBREW_PREFIX}/bin/hg
|
||||||
|
#{HOMEBREW_PREFIX}/opt/mercurial/bin/hg
|
||||||
|
].find { |p| File.executable? p }
|
||||||
|
end
|
||||||
|
|
||||||
|
def bzrpath
|
||||||
|
@bzrpath ||= %W[
|
||||||
|
#{which("bzr")}
|
||||||
|
#{HOMEBREW_PREFIX}/bin/bzr
|
||||||
|
#{HOMEBREW_PREFIX}/opt/bazaar/bin/bzr
|
||||||
|
].find { |p| File.executable? p }
|
||||||
|
end
|
||||||
|
|
||||||
|
def fossilpath
|
||||||
|
@fossilpath ||= %W[
|
||||||
|
#{which("fossil")}
|
||||||
|
#{HOMEBREW_PREFIX}/bin/fossil
|
||||||
|
#{HOMEBREW_PREFIX}/opt/fossil/bin/fossil
|
||||||
|
].find { |p| File.executable? p }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class VCSDownloadStrategy < AbstractDownloadStrategy
|
class VCSDownloadStrategy < AbstractDownloadStrategy
|
||||||
@ -217,14 +260,6 @@ class CurlDownloadStrategy < AbstractDownloadStrategy
|
|||||||
super
|
super
|
||||||
end
|
end
|
||||||
|
|
||||||
def xzpath
|
|
||||||
"#{HOMEBREW_PREFIX}/opt/xz/bin/xz"
|
|
||||||
end
|
|
||||||
|
|
||||||
def lzippath
|
|
||||||
"#{HOMEBREW_PREFIX}/opt/lzip/bin/lzip"
|
|
||||||
end
|
|
||||||
|
|
||||||
def chdir
|
def chdir
|
||||||
entries = Dir['*']
|
entries = Dir['*']
|
||||||
case entries.length
|
case entries.length
|
||||||
@ -637,15 +672,6 @@ class CVSDownloadStrategy < VCSDownloadStrategy
|
|||||||
url=parts.join(':')
|
url=parts.join(':')
|
||||||
[ mod, url ]
|
[ mod, url ]
|
||||||
end
|
end
|
||||||
|
|
||||||
def cvspath
|
|
||||||
@path ||= %W[
|
|
||||||
/usr/bin/cvs
|
|
||||||
#{HOMEBREW_PREFIX}/bin/cvs
|
|
||||||
#{HOMEBREW_PREFIX}/opt/cvs/bin/cvs
|
|
||||||
#{which("cvs")}
|
|
||||||
].find { |p| File.executable? p }
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
class MercurialDownloadStrategy < VCSDownloadStrategy
|
class MercurialDownloadStrategy < VCSDownloadStrategy
|
||||||
@ -680,14 +706,6 @@ class MercurialDownloadStrategy < VCSDownloadStrategy
|
|||||||
def update
|
def update
|
||||||
cached_location.cd { quiet_safe_system hgpath, "pull", "--update" }
|
cached_location.cd { quiet_safe_system hgpath, "pull", "--update" }
|
||||||
end
|
end
|
||||||
|
|
||||||
def hgpath
|
|
||||||
@path ||= %W[
|
|
||||||
#{which("hg")}
|
|
||||||
#{HOMEBREW_PREFIX}/bin/hg
|
|
||||||
#{HOMEBREW_PREFIX}/opt/mercurial/bin/hg
|
|
||||||
].find { |p| File.executable? p }
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
class BazaarDownloadStrategy < VCSDownloadStrategy
|
class BazaarDownloadStrategy < VCSDownloadStrategy
|
||||||
@ -717,13 +735,6 @@ class BazaarDownloadStrategy < VCSDownloadStrategy
|
|||||||
def update
|
def update
|
||||||
cached_location.cd { quiet_safe_system bzrpath, "update" }
|
cached_location.cd { quiet_safe_system bzrpath, "update" }
|
||||||
end
|
end
|
||||||
|
|
||||||
def bzrpath
|
|
||||||
@path ||= %W[
|
|
||||||
#{which("bzr")}
|
|
||||||
#{HOMEBREW_PREFIX}/bin/bzr
|
|
||||||
].find { |p| File.executable? p }
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
class FossilDownloadStrategy < VCSDownloadStrategy
|
class FossilDownloadStrategy < VCSDownloadStrategy
|
||||||
@ -749,12 +760,6 @@ class FossilDownloadStrategy < VCSDownloadStrategy
|
|||||||
safe_system fossilpath, "pull", "-R", cached_location
|
safe_system fossilpath, "pull", "-R", cached_location
|
||||||
end
|
end
|
||||||
|
|
||||||
def fossilpath
|
|
||||||
@path ||= %W[
|
|
||||||
#{which("fossil")}
|
|
||||||
#{HOMEBREW_PREFIX}/bin/fossil
|
|
||||||
].find { |p| File.executable? p }
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
class DownloadStrategyDetector
|
class DownloadStrategyDetector
|
||||||
|
Loading…
x
Reference in New Issue
Block a user