diff options
| -rw-r--r-- | README.md | 1 | ||||
| -rw-r--r-- | lib/oxidized/source/csv.rb | 10 | 
2 files changed, 8 insertions, 3 deletions
| @@ -243,6 +243,7 @@ source:      file: ~/.config/oxidized/router.db      delimiter: !ruby/regexp /:/      gpg: 'false' +    gpg_password: 'password'      map:        name: 0        model: 1 diff --git a/lib/oxidized/source/csv.rb b/lib/oxidized/source/csv.rb index dc246ab..85fee77 100644 --- a/lib/oxidized/source/csv.rb +++ b/lib/oxidized/source/csv.rb @@ -19,9 +19,13 @@ class CSV < Source    def load      nodes = [] -    crypto = GPGME::Crypto.new -    file = (@cfg.gpg == 'false') ? open(File.expand_path @cfg.file) : crypto.decrypt(File.open(@cfg.file)) -    open(file).each_line do |line| +    if @cfg.gpg != 'false' +      crypto = GPGME::Crypto.new :password => @cfg.gpg_password +      file   = crypto.decrypt(File.open(@cfg.file)) +    else +      file = open(File.expand_path @cfg.file) +    end +    file.each_line do |line|        next if line.match(/^\s*#/)        data  = line.chomp.split(@cfg.delimiter, -1)        next if data.empty? | 
