■fileモジュール■copyモジュール■templateモジュールをまとめた(^^)/!■fileモジュールfileモジュール公式ドキュメントファイル、シンボリックリンク、またはディレクトリを設定や削除をする。||path|※必須項目。ファイルパスを指定する。||src|コントロールノードのファイルパスを指定する(state=linkの場合のみ)。||dest|destinationの略。srcを置く送信先であるターゲットノードの絶対パスを指定する。||attributes|ファイルまたはディレクトリの属性を指定する。||group|ファイル/ディレクトリを所有するグループを指定する。||mode|ファイル/ディレクトリに権限を付与する。8進数の指定(0644や'644')とシンボリックモード(u=rw,g=r,o=r)での指定が可能。||follow|既にファイルが存在する場合置き換えない。|シンボリックリンクを作成する。pathファイルのリンクを解除し、代わりにsrcでファイルへのシンボリックリンクを作成する||recurse|再帰的にファイル属性を変更するか(state=directory/state=hardの場合のみ)。既存のファイルを操作する場合に指定する。シンボリックリンクとして指定する。指定されたパス名のディレクトリを作成する。パス名の途中のディレクトリが存在しない場合はサブディレクトリも一緒に作成する。ハードリンクとして指定する。pathで指定したファイルが存在しない場合、空ファイルを作成する。ファイルが存在する場合、タイムスタンプが更新される。ディレクトリやファイル、シンボリックリンクを削除する。u=rw,g=r,o=r■copyモジュールcopyモジュール公式ドキュメントcopyモジュールはコントローラノードに存在するファイルを、ターゲットノードに送信することができます。ディレクトリごとファイルをコピーすることはできるが、空のディレクトリだけコピーできない。remote_srcパラメータによりリモートからリモートの別パスへのコピーができる。srcの代わりにcontentを指定することで実ファイルを用意せずに直接ファイルの内容を記載できる。||dest|※必須項目。コピー先のターゲットノードの絶対パス。srcがディレクトリの場合、これもディレクトリである必要がある。||src|コピー元を指定する。||attributes|ファイルの属性を指定する。||backup|yesの場合、上書きされるファイルのバックアップを作成する。バックアップはコピー先のファイルが存在するディレクトリと同じディレクトリに作成される。||content|srcの代わりに使用するとコピー先ファイルに記述する内容を指定する。||decrypt|暗号化されたファイルを復号化する。デフォルトはyes||directory_mode|ディレクトリのパーミッションを指定する||follow|yesの場合、destで指定した内容に従うことを示す。ファイルが存在する場合置き換えない。(要確認)デフォルトはno||force|yesを指定すれば、コピー先に既にファイルが存在する場合、ファイルの中身を比較して差分がある場合はコピーを実施する。noを指定した場合、コピー先にファイルが存在しない場合にのみ、コピーを実施する。||group|グループ名を指定する。||mode|chmodコマンドで設定できる権限設定||owner|chownコマンドで設定できる所有者ユーザの設定。||validate|所定の位置にコピーする前に実行する検証コマンド。検証するファイルへのパスは、「%s」を介して渡されます。shellは利用できない。||remote_src|ターゲットノード内でのファイルコピーyes/noで指定する。ターゲットノード内でhello.txtをコピーする。yes■templateモジュールtemplateモジュール公式ドキュメントファイルをターゲットノードにテンプレート化して送信する。テンプレートは、Jinja2によってテンプレートファイル内でifやforなどのプログラムっぽい記述ができる。||dest|コピー先の絶対パスの指定。||src|ローカルにあるJinja2テンプレートのパス。絶対パス、相対パスでの指定が可能。||group|chownコマンドで設定できる所有者グループの設定。||mode|chmodコマンドで設定できる権限設定。8進数の指定とシンボリックモードでの指定が可能。chownコマンドで設定できる所有者ユーザの設定。||validate|コピー前に実行される検証コマンド。検証するファイルのパスは『%s』で指定することが可能。内容と、内容が異なればファイルを置換。ファイルは宛先が存在しない場合にのみ転送される||newline_sequence|ファイルのテンプレートに使用する改行シーケンスを指定する。yestemplateモジュールはモジュール内で元のファイルを加工してサーバに配置するため設定ミスが発生しやすい。意図していない箇所がJinja2のフォーマットとして認識されてしまい処理されてしまう可能性もある。なれていない人はできるだけcopyモジュールを使用したり、コピー前に実行される検証コマンドvalidateをパラメータを利用して事前確認する。これからもっともっとパソコンさんと仲良くしていきたいです!バッジを贈って著者を応援しようバッジを受け取った著者にはZennから現金やAmazonギフト券が還元されます。■fileモジュール■copyモジュール■templateモジュールまとめZennエンジニアのための情報共有コミュニティAboutZennについて運営会社お知らせ・リリースGuides使い方Publicationよくある質問LinksTwitterGitHubメディアキットLegal利用規約プライバシーポリシ。