diff options
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/download_strategy.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index 8b6f95525..2dffccea5 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -282,6 +282,22 @@ class StrictSubversionDownloadStrategy < SubversionDownloadStrategy end end +# Download from SVN servers with invalid or self-signed certs +class UnsafeSubversionDownloadStrategy < SubversionDownloadStrategy + def fetch_repo target, url, revision=nil, ignore_externals=false + # Use "svn up" when the repository already exists locally. + # This saves on bandwidth and will have a similar effect to verifying the + # cache as it will make any changes to get the right revision. + svncommand = target.exist? ? 'up' : 'checkout' + args = [svn, svncommand, '--non-interactive', '--trust-server-cert', '--force'] + args << url if !target.exist? + args << target + args << '-r' << revision if revision + args << '--ignore-externals' if ignore_externals + quiet_safe_system(*args) + end +end + class GitDownloadStrategy < AbstractDownloadStrategy def initialize url, name, version, specs super |
