GitHub ActionsのワークフローでXMLファイルの構文をチェックする方法です。
xmllint
コマンドラインツールのxmllintが使えます。
簡略化されたものになりますが以下サンプルです。
- name: Install xmllint
run: sudo apt-get install -y libxml2-utils
- name: xmllint
run: xmllint sample.xml
xmllint-action
xmllint-actionというXMLの構文をチェックできるActionsが存在します。
内部ではコマンドラインのxmllintを使用しており、スキーマファイルを指定した妥当性検証を行っています。
xmllintの検証方法について
- 妥当性検証
- DTDやrelaxngなどのXMLスキーマを元に検証
- 要素名や階層などをチェックする
- 整形式検証
- XMLの文法に則っているか検証
まとめ
スキーマファイルを用いた厳密なチェックを行いたい場合はxmllint-actionを使用し、そうでなく文法のチェックのみであればコマンドラインツールのxmllintをそのまま使用するのが良さそうです。