Rheinwerk.yedit
// vim: ft=asciidoc
= yedit リポジトリ :toc: macro :toc-title:
toc::[]
== Ansible ロール: Yedit
このリポジトリには、yamlファイルを変更するためのansibleモジュールが含まれています。
yamlファイルを編集し、ansibleを通じて設定管理する良い方法を見つけられなかったので、これが私の試みです。
== インストール
Ansible Galaxyを通じてインストールできます:
$ ansible-galaxy install kwoodson.yedit
これを実行したら、他のユーザーがあなたのプレイブックの依存関係を知るために、requirements.yml
も追加してください:
---
- src: kwoodson.yedit
次に、使用する前にインポートしてプレイ内で参照できます:
roles:
- kwoodson.yedit
- yeditを使用するロール
== 例
時々、.ymlファイルを設定管理する必要があります。 [source,yaml]
- hosts: localhost
gather_facts: no
roles:
kwoodson.yedit tasks:
name: yamlファイルを管理する yedit: src: /tmp/test.yaml key: a.b.c value: d: e: f: これはテストです
name: 特定の値を取得する yedit: src: /tmp/test.yaml state: list key: a.b.c.d.e.f register: yeditout
debug: var=yeditout
== 開発
これはロールなので、Ansibleが認識する任意のロールディレクトリにコピーするだけです。詳細については、http://docs.ansible.com/ansible/latest/index.html[Ansibleのドキュメント]を参照してください:
- http://docs.ansible.com/ansible/devel/playbooks_reuse_roles.html#embedding-modules-and-plugins-in-roles[ロールにおけるモジュールとプラグインの埋め込み]
- http://docs.ansible.com/ansible/latest/intro_configuration.html#module-utils[module_utils]
== ドキュメント
完全なドキュメントはインラインでhttps://github.com/kwoodson/ansible-role-yedit/blob/master/library/yedit.py#L15[こちら]で利用できます。