yaml で書いた複数の設定ファイルをひとつの json に書き出す Gruntfile

  • 4
    Like
  • 0
    Comment
More than 1 year has passed since last update.

grunt ムネアツですね!

yaml で書いた複数の設定ファイルを、ひとつの json にまとめたい場合の Gruntfile です。
以下は、src/*.yml をまず src/*json に書き出し、js/settings.json にまとめる方法です。

使用するプラグイン

grunt-yaml

https://npmjs.org/package/grunt-yaml
npm install grunt-yaml --save-dev

grunt-extend

https://npmjs.org/package/grunt-extend
npm install grunt-extend --save-dev

module.exports = (grunt) ->
    pkg = grunt.file.readJSON 'package.json'
    grunt.initConfig
        yaml:
            my_target:
                files:
                    'src/hoge.json': ['src/hoge.yml']
                    'src/fuga.json': ['src/fuga.yml']
        extend:
            my_target:
                files: 'js/settings.json': ['src/*.json']
        watch:
            files: ['src/*.yml']
            tasks: ['yaml', 'extend']

    for t of pkg.devDependencies
        if t.substring(0, 6) is 'grunt-'
            grunt.loadNpmTasks t

    grunt.registerTask 'default', ['yaml', 'extend']