A super simple tool for merging YAML files.
For the command line
npm install -g @alexlafroscia/yaml-merge
For use through Node
npm install --save @alexlafroscia/yaml-merge
yaml-merge takes a series of
yaml files and merges them from left to right. This means that the first file will be overwritten by properties of the second, which is overwritten by properties of the third, etc.
When using this tool from the command line, the output file will simply be written to
yaml-merge test/fixtures/basic/a.yml test/fixtures/basic/b.yml a: foo: bar b: foo: bar
This way, you can pipe the output to whatever you want. For example, this will write the new
yaml file to
yaml-merge test/fixtures/basic/a.yml test/fixtures/basic/b.yml > output.yml
The provided file names will be resolved relative to the current directory. So, you an provide a relative path to the files, or an absolute path -- either method works just fine.
As a Node package
yaml-merge also provides a
node package that can be consumed to get the output file programmatically.
const resolve = require('path').resolve; const merge = require('@alexlafroscia/yaml-merge'); const output = merge(resolve('relative/path/to/file.yml'), '/Users/you/some/other/file.yml'); console.log(output); // Prints out the resulting YAML as a string