JSONファイルのチェック
背景
JSONファイルの中身や形式が意図しない設定になっていて事故が起きやすい
JSONファイルを扱うとき、目でシンタックスチェックをするのは疲れる
一般的なシンタックスエラーだけでなく、自前のルールでチェックをかけたい
Pythonやnode.jsで書くこともできると思うが、手軽にbashでチェックしてみたい
シェルスクリプトは移植性が高い
すでにコマンドラインツールがあるので組み合わせる
Gitサーバにプッシュされたイベントをトリガにjsonをチェックする
シェルスクリプトをJenkinsで実行する
結果をWebUIに返す
チェックしたいこと
jsonの構文エラー
jq
特定階層でキーが重複していないか
jqとsort, uniq
必須のキーが不足していないか
jqとgrep
文字コード
nkf
改行コード
nkf
結果
コンピュータによるチェックが終わってから、人間が本質的に見るべきとこだけ見る
安心して執筆、レビュー、Mergeできる
事故が減る
プルリクJenkins運用構築できそうにないので、とりあえずは手元でjqすることにした
このタスク、最近はPowerShell使うこともある
とくにjsonとしてパースできるかどうかくらいならWindowsの標準機能で十分
Get-Content hoge.json -Encoding UTF8 | ConvertFrom-Json