Embulkの設定ファイルでエイリアスを使う
Embulkの設定ファイルを書いていると、同じ値が繰り返し現れることがある。
例えば、CSVをTSVに変換する設定ファイルを書いてみると、
in: type: file path_prefix: 'data/test.csv' parser: type: csv charset: SJIS delimiter: "," header_line: false columns: - {name: ID, type: long} - {name: STR, type: string} out: type: file path_prefix: result file_ext: tsv formatter: type: csv charset: SJIS delimiter: "\t" header_line: false columns: - {name: ID, type: long} - {name: STR, type: string}
のように、parserとformatterとで重複する内容が出てくる。
何とかできないのかなー、と考えていたら、YAMLにはエイリアスの仕組みがあるようだ。
以下のように書けば、OK。
in: type: file path_prefix: 'data/test.csv' parser: type: csv charset: &CHARSET SJIS delimiter: "," header_line: false columns: &COLUMNS - {name: ID, type: long} - {name: STR, type: string} out: type: file path_prefix: result file_ext: tsv formatter: type: csv charset: *CHARSET delimiter: "\t" header_line: false columns: *COLUMNS