ansible
yumの実行 [#ib2ac132]
yum: name={{ item }}
- rsync
- gcc
- ntp
- ntpdate
ファイルのコピー [#lf418f19]
例1 [#o47d6d0c]
copy: src=/tmp/test/ dest=/home/hoge/
例2 [#m3e495eb]
copy: src=
/ansible/playbook/roles/common/files/resolv.conf dest=/etc/ owner=root group=root mode=0644
destのディレクトリがなくても作成される。
ファイルがある場合は上書きされるので注意。
ディレクトリの作成 [#z9e7a124]
file: state=directory path=/var/www/test
※recurse=yesをつけることで再帰的にディレクトリを作成する
リモートでシェルコマンドを実行 [#r3e553b5]
shell: コマンドの内容
例
shell: touch /tmp/test.`date +%Y%m%d`.txt
ローカルのシェルスクリプトをリモートで実行 [#s9c1e9d4]
script:
/test.sh
ファイルの文字置換 [#i2ab4171]
単一行 [#x58d39af]
- name: selinux disabled
lineinfile: >
backup=yes
dest=/etc/sysconfig/selinux
regexp='^SELINUX=enforcing'
line='SELINUX=disabled'
複数行 [#f30c1875]
- replace: dest=/tmp/test.txt regexp='^hoge' replace='HOGE'
- replace: dest=/tmp/test.txt regexp='^fuga' replace='FUGA'
‘- name’は必須ではないようです。上記記述例は公式サイトを参考にしています。
元の文字列を置換後の引数として使用する [#z1e84429]
- replace: dest=/etc/vsftpd/user_list regexp='^([a-z])' replace='#\1'
※pythonの書き方ルールに則ります
[置換前]
# hogehoge
# fugafuga
root
bin
daemon
[置換後]
# hogehoge
# fugafuga
#root
#bin
#daemon