Class: Topaz::Sources
- Inherits:
-
Object
- Object
- Topaz::Sources
- Defined in:
- lib/topaz.rb
Class Method Summary collapse
-
.add(url) ⇒ Object
Adds a source.
-
.list ⇒ Object
(also: sources)
Returns an array of sources.
-
.remove(url) ⇒ Object
Removes a source.
-
.update ⇒ Object
Updates the source cache.
Class Method Details
.add(url) ⇒ Object
Adds a source.
109 110 111 112 113 114 115 116 117 118 |
# File 'lib/topaz.rb', line 109 def add(url) out = `gem sources -a "#{url}"` if out =~ /(.+) is not a URI/ raise 'URL provided is not valid' elsif out =~ /While executing gem \.\.\. \(Zlib::GzipFile::Error\)/ raise 'Failed to access RubyGem repository' elsif out =~ /added to sources/ return true end end |
.list ⇒ Object Also known as: sources
Returns an array of sources.
121 122 123 124 125 |
# File 'lib/topaz.rb', line 121 def list sources = `gem sources -l`.scan(/^.+/) sources.delete('*** CURRENT SOURCES ***') return sources end |
.remove(url) ⇒ Object
Removes a source.
129 130 131 132 133 134 135 136 |
# File 'lib/topaz.rb', line 129 def remove(url) out = `gem sources -r "#{url}"` if out =~ /not present in cache/ raise 'Provided source is not in the cache' elsif out =~ /removed from sources/ return true end end |
.update ⇒ Object
Updates the source cache
139 140 141 |
# File 'lib/topaz.rb', line 139 def update `gem sources -u` end |