It's because of these lines in lib/logstash/devutils/rake/vendor.rake.
161 if download =~ /.tar.gz/
162 prefix = download.gsub('.tar.gz', '').gsub('vendor/', '')
163 # prefix GeoLite2-ASN
164 untar(download) do |entry|
165 if !file['files'].nil?
166 next unless file['files'].include?(entry.full_name.gsub(prefix, ''))
167 out = entry.full_name.split("/").last
168 end
169 File.join('vendor', out)
170 end
...
Two problems here:
the gsub at 166 turns GeoLite2-ASN_20170620/GeoLite2-ASN.mmdb into _20170620/.mmdb which won't match anything. A sub would do but it's not a general solution.
the order or the include? is wrong and should be reversed (the entry includes the files)
Fix: replace lines 166 and 167 with
candidate = entry.full_name.split("/").last
next unless candidate.include?(file['files'])
out = candidate
The gem can't extract the ASN database defined in this
vendor.json
(I hope I got the semantic offiles
right)It's because of these lines in
lib/logstash/devutils/rake/vendor.rake
.Two problems here:
gsub
at 166 turnsGeoLite2-ASN_20170620/GeoLite2-ASN.mmdb
into_20170620/.mmdb
which won't match anything. Asub
would do but it's not a general solution.include?
is wrong and should be reversed (the entry includes the files)Fix: replace lines 166 and 167 with