kidoOooOoooOOom

IT系で開発やってます

INI LIKEフォーマットをparse

node.jsのプログラムから、ansibleのinventory に記載した hosts情報を使ってごにょごにょしたいような場合、INI フォーマットをparseする ini モジュールを使えば簡単。

iniファイル

[webservers]
foo.example.com
bar.example.com

[dbservers]
one.example.com
two.example.com
three.example.com

iniモジュールで parseして出力

var ini = require('ini');

var output = ini.parse(fs.readFileSync('/ansible/inventory/nodejs/web-dev', 'utf-8'));
console.log(output);

出力結果

{ webservers: { 'foo.example.com': true, 'bar.example.com': true },
  dbservers: 
   { 'one.example.com': true,
     'two.example.com': true,
     'three.example.com': true } }