Sha256: 71b24aae0d9ef4e9874639e5ef1df9c2780f2b8faf10e4d47469cca1c05eaaf8
Contents?: true
Size: 1.02 KB
Versions: 1
Compression:
Stored size: 1.02 KB
Contents
require 'active_support/core_ext/object' module EacLauncher module Git class Base < ::EacLauncher::Paths::Real module Subrepo def subrepo_status(subrepo_path) s = execute!('subrepo', 'status', subrepo_path.gsub(%r{\A/}, '')) raise s.strip.to_s if s.include?('is not a subrepo') r = subrepo_status_parse_output(s) raise "Empty subrepo status for |#{s}|\n" unless r.any? r end def subrepo_remote_url(subrepo_path) h = subrepo_status(subrepo_path) url = h['Remote URL'] return url if url.present? raise "Remote URL is blank for subrepo \"#{subrepo_path}\" (Subrepo status: #{h})" end private def subrepo_status_parse_output(s) r = {}.with_indifferent_access s.each_line do |l| m = /\A([^\:]+)\:(.*)\z/.match(l.strip) next unless m && m[2].present? r[m[1].strip] = m[2].strip end r end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
eac_launcher-0.6.0 | lib/eac_launcher/git/base/subrepo.rb |