Ansible Playbook で文字列分割・結合・置換をする方法、他 Playbook に関するメモ
Ansible の Playbook について、調べる機会があったので詰まったことをメモしておくところです。
Ansible
Red Hat が開発するオープンソースの構成管理ツールです。
サーバを立ち上げる際、あらかじめ用意した設定ファイルに従って、ソフトウェアのインストールや設定を自動的に実行する事が出来ます。
特に大規模なコンピュータ・クラスターを構築する時に、時間の短縮やミスを削減できます。
構成管理に加え、オーケストレーションやソフトウェアデプロイメントの機能をもっています。
Ansible における一連の処理は Playbook という単位にまとめられ、Playbook はYAML形式で記述されます。
Jinja2
https://jinja.palletsprojects.com/
Ansible に最初から入っているテンプレートエンジン。
Playbook に Jinja2 を組み合わせることで、条件分岐や反復構造などを用いた動的、効率的な設定ファイルを作ることができます。
idiom
検索
ex. 文字列から正規表現で検索
string is match('^test')
文字列結合
ex. 文字列を改行区切りで結合
string | join('\n')
文字列分割
ex. 文字列を改行区切りで分割
string.split('\n')
文字列置換
ex. \rを空文字に置換
string | regex_replace('\r', '')