Class: MercurialDownloadStrategy
- Inherits:
-
VCSDownloadStrategy
- Object
- AbstractDownloadStrategy
- VCSDownloadStrategy
- MercurialDownloadStrategy
- Defined in:
- download_strategy.rb
Overview
Strategy for downloading a Mercurial repository.
Constant Summary
Constants inherited from VCSDownloadStrategy
VCSDownloadStrategy::REF_TYPES
Instance Attribute Summary
Attributes inherited from AbstractDownloadStrategy
#cache, #cached_location, #url
Instance Method Summary collapse
-
#initialize(url, name, version, **meta) ⇒ MercurialDownloadStrategy
constructor
A new instance of MercurialDownloadStrategy.
-
#last_commit ⇒ String
Return last commit's unique identifier for the repository.
-
#source_modified_time ⇒ Time
Returns the most recent modified time for all files in the current working directory after stage.
Methods inherited from VCSDownloadStrategy
#commit_outdated?, #fetch, #fetch_last_commit, #head?
Methods inherited from AbstractDownloadStrategy
#basename, #clear_cache, #fetch, #quiet!, #quiet?, #stage
Methods included from SystemCommand::Mixin
#system_command, #system_command!
Methods included from Context
current, current=, #debug?, #quiet?, #verbose?, #with_context
Constructor Details
#initialize(url, name, version, **meta) ⇒ MercurialDownloadStrategy
Returns a new instance of MercurialDownloadStrategy.
1249 1250 1251 1252 |
# File 'download_strategy.rb', line 1249 def initialize(url, name, version, **) super @url = @url.sub(%r{^hg://}, "") end |
Instance Method Details
#last_commit ⇒ String
Return last commit's unique identifier for the repository.
1269 1270 1271 1272 |
# File 'download_strategy.rb', line 1269 def last_commit out, = silent_command("hg", args: ["parent", "--template", "{node|short}", "-R", cached_location]) out.chomp end |
#source_modified_time ⇒ Time
Returns the most recent modified time for all files in the current working directory after stage.
1258 1259 1260 1261 1262 1263 |
# File 'download_strategy.rb', line 1258 def source_modified_time out, = silent_command("hg", args: ["tip", "--template", "{date|isodate}", "-R", cached_location]) Time.parse(out) end |