- [MUST] バージョン2以上でエラーが出ないように記述して下さい。
- [MUST] ソフトタブを使用し、2スペースとして下さい。
- [MUST] 変数名の前後に空白を入れてください。
#good
{{ var }}
#bad
{{var}}- [MUST] ファイルの先頭の
---の次に空行をいれないで下さい
#good
---
- name: Set php_executable variable to a default if not defined.
set_fact:
php_executable: php
when: php_executable is not defined
#bad
---
- name: Set php_executable variable to a default if not defined.
set_fact:
php_executable: php
when: php_executable is not defined- [SHOULD] 必要がなければクウォートしないで下さい
#good
- name: Set php_executable variable to a default if not defined.
#bad
- name: 'Set php_executable variable to a default if not defined.'- [MUST] yaml記法の部分は
True,Falseを使用して下さい。 - [MUST] moduleの引数は
true,falseを使用して下さい。
- [MUST] jinjaの形式の変数を使ってください。
#good
{{ var }}
#bad
$var- [MUST] 変数名は、先頭にロール名を付けてください。
- [MUST] 変数名は全て小文字としてください。
- [MUST]
.yamlではなく.ymlにして下さい。
- [SHOULD] ロールのリストをincludeする以上のことはしないでください。
-
[SHOULD] galaxy形式に則って下さい。
-
[SHOULD] ロールは他のロールからタスクをincludeしないでください。
-
[SHOULD] ロール名は簡潔で、可能な限り一単語にしてください。必要であれば
_を使ってください。 -
[SHOULD] タスク名は簡潔で、説明的にしてください。空白はOKです。
-
[SHOULD] 依存するロールがある場合は
meta/main.ymlに書いて下さい。 -
[SHOULD] ロール独自の変数は
vars/main.ymlではなくdefaults/main.ymlに書いて下さい。varsは上書きしにくいため。逆に上書きされたくない場合はvars配下に書いて下さい。 -
[SHOULD] [WIP]
meta/main.ymlに記載するgalaxy_tags(categories)は下記から追加して下さい。- centos
- ubuntu
- vagrant
- development
- production
- etc...
- [SHOULD]
commandではなくshellモジュールを使用して下さい。 - [SHOULD]
command、shellを使用した時は、-Cを指定しても問題が起きないようにしてください。 - [SHOULD]
ignore_errors: Trueは使わないでください。 - [SHOULD]
wgetではなくget_urlを使って下さい。
- [MUST]
nameは必ず書いて下さい。 - [SHOULD] block構文の使用を検討して下さい。(version 2 or later)
#good
- name: Check if Composer is installed.
stat: "path={{ composer_path }}"
register: composer_bin
- block:
- name: Download Composer installer.
get_url:
url: https://getcomposer.org/installer
dest: /tmp/composer-installer.php
mode: 0755
- name: Run Composer installer.
command: >
{{ php_executable }} composer-installer.php {% if composer_version != '' %} --version={{ composer_version }}{% endif %}
chdir=/tmp
when: not composer_bin.stat.exists
#bad
- name: Check if Composer is installed.
stat: "path={{ composer_path }}"
register: composer_bin
- name: Download Composer installer.
get_url:
url: https://getcomposer.org/installer
dest: /tmp/composer-installer.php
mode: 0755
when: not composer_bin.stat.exists
- name: Run Composer installer.
command: >
{{ php_executable }} composer-installer.php {% if composer_version != '' %} --version={{ composer_version }}{% endif %}
chdir=/tmp
when: not composer_bin.stat.exists- [SHOULD] 変数が設定されているかどうかを調べる場合はdefinedを使用して下さい。
#good
when:{{ my_var }} is defined
#bad
when:{{ my_var }}- [SHOULD] 1つのタスクで複数のOSの対応をしない(
ansible_os_familyを使わない)で下さい。OSが違う場合はplaybook(role)を別に定義して下さい。