2017-05-11
Ansible経由のGit反映で再帰的にチェックさせない
Ansible 経由で Git でのアップデートをする場合、サブモジュールがあると問題を起こす事があるのでそちらも対応できるようにする。結論からいっちゃえば「recursive」オプションを追加する。
失敗した場合のエラーメッセージ
fatal: [server01]: FAILED! => {"changed": false, "failed": true, "msg": "Failed to init/update submodules: Usage: git submodule [--quiet] add [-b branch] [--reference <repository>] [--] <repository> [<path>]\n or: git submodule [--quiet] status [--cached] [--recursive] [--] [<path>...]\n or: git submodule [--quiet] init [--] [<path>...]\n or: git submodule [--quiet] update [--init] [-N|--no-fetch] [--rebase] [--reference <repository>] [--merge] [--recursive] [--] [<path>...]\n or: git submodule [--quiet] summary [--cached|--files] [--summary-limit <n>] [commit] [--] [<path>...]\n or: git submodule [--quiet] foreach [--recursive] <command>\n or: git submodule [--quiet] sync [--] [<path>...]\n"}
recursive 設定
色々調べてたら Ansible のドキュメントにさっくり書いてあった。
| parameter | required | default | choices | comments | | :-------------------------- | :------- | :------ | :---------- | :--------------------------------------------------------------------------------------- | | recursive (added in 1.6) | no | yes | (yes|no) | if no, repository will be cloned without the --recursive option, skipping sub-modules. |
- name: Clone Repo
become: yes
become_user: user
git: repo=repo_url
dest=document_root
update=yes
recursive=no
accept_hostkey=yes
tags: GitClone
「recursive=no」を入れて解決。良かった良かった。