summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/redmine/scm/adapters/mercurial_adapter.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/redmine/scm/adapters/mercurial_adapter.rb b/lib/redmine/scm/adapters/mercurial_adapter.rb
index 28f551574..e8531e612 100644
--- a/lib/redmine/scm/adapters/mercurial_adapter.rb
+++ b/lib/redmine/scm/adapters/mercurial_adapter.rb
@@ -85,6 +85,18 @@ module Redmine
:scmid => tip['node']))
end
+ def tags
+ as_ary(summary['repository']['tag']).map { |e| e['name'] }
+ end
+
+ # Returns map of {'tag' => 'nodeid', ...}
+ def tagmap
+ alist = as_ary(summary['repository']['tag']).map do |e|
+ e.values_at('name', 'node')
+ end
+ Hash[*alist.flatten]
+ end
+
def summary
@summary ||= hg 'rhsummary' do |io|
ActiveSupport::XmlMini.parse(io.read)['rhsummary']