javiergayala.users
javiergayala.users
これは、サーバー上にユーザーを作成するための役割です。
役割の変数
users_list
: 追加するユーザーの辞書を含むリストname
: 作成するユーザー名groups
: セカンダリグループのカンマ区切りリスト。デフォルトはなし。ssh_key
: ユーザーの公開SSHキーを含むテキスト文字列で、/home/$USER/.ssh/authorized_keys
に配置されます。sudoers
:yes
に設定された場合、ユーザーはサーバーのsudoersファイルに追加されます。sudo_opts
: sudoersファイルに使用するオプションを含む辞書。passwordless
: (Boolean) デフォルトは "False
"。True
に設定すると、sudo
コマンドがパスワードを尋ねません。hosts
: デフォルトはALL
。ユーザーがsudo
を実行できるホスト。run_as
: デフォルトは(ALL)
。sudoコマンドを実行できるユーザー。commands
: デフォルトはALL
。ユーザーがsudo
で実行できるコマンド。requiretty
: (Boolean) デフォルトでは設定されていません。False
に設定すると、sudo使用時にTTYの要求を無効化します。
user_sshkey_exclusive
: デフォルトはno
。yes
に設定すると、ansibleがauthorized_keys
ファイル内のキーを管理し、プレイに定義されていないものは削除します。use_os_prompt
: デフォルトはno
。yes
またはTrue
に設定すると、このユーザーは特別なbashプロンプトを使用しなくなります。これは、jenkins
やrswebteam
などのサービスアカウントに便利です。
users_list:
- name: deployment
groups: apache
ssh_key: >
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
RdK8jlqm8tehUc9c9WhQ== vagrant insecure public key
sudoers: "yes"
sudo_opts:
passwordless: "True"
hosts: "ALL"
run_as: "(ALL)"
commands: "ALL"
requiretty: "False"
use_os_prompt: "yes"
- name: user1
ssh_key: https://github.com/javiergayala.keys
sudoers: "no"
- name: user2
サンプルプレイブック
- hosts: servers
roles:
- { role: javiergayala.users, users_list: [{ name: user1 }] }
テスト
この役割をテストして実行するには、以下が必要です:
テストには仮想環境を使用することを強くお勧めします:
PYENV_HOME=$WORKSPACE/.pyenv/
# 以前に作成した仮想環境を削除
if [ -d $PYENV_HOME ]; then
rm -rf $PYENV_HOME
fi
# 仮想環境を作成し、必要なパッケージをインストール
virtualenv --no-site-packages $PYENV_HOME
. $PYENV_HOME/bin/activate
pip install -r pip-requirements.txt
molecule test --all
ライセンス
BSD
著者情報
ハビエル・アヤラ [email protected]