weareinteractive.sudo

Ansible weareinteractive.sudo ロール

ビルドステータス Galaxy GitHub タグ GitHub スター

weareinteractive.sudoAnsible のロールで、以下のことを行います:

  • sudoをインストールする
  • sudoを設定する

注意:

Ansible Galaxyが組織をサポートするようになったため、このロールは franklinkim.sudo から weareinteractive.sudo に移動しました!

インストール

ansible-galaxy を使用する場合:

$ ansible-galaxy install weareinteractive.sudo

requirements.yml を使用する場合:

- src: weareinteractive.sudo

git を使用する場合:

$ git clone https://github.com/weareinteractive/ansible-sudo.git weareinteractive.sudo

依存関係

  • Ansible >= 2.5

変数

このロールのデフォルト変数のリストで、defaults/main.ymlでも確認できます。

---
# sudo_defaults:
#  - defaults: env_reset
#  - name: user1
#    defaults: requiretty
# sudo_users:
#  - name: '%group1'
#  - name: 'bar'
#    nopasswd: yes
#  - name: '%group2'
#    commands: '/bin/ls'
#  - name: '%group3'
#    commands:
#      - /bin/ls
#      - /bin/df
#  - name: '%group4'
#    hosts: 127.0.0.1

# パッケージ名(バージョン)
sudo_package: sudo
# ユーザー名または %グループ名のリスト
sudo_users: []
# ユーザー名または %グループ名とそのデフォルトのリスト
sudo_defaults: []
# デフォルトのsudoersファイル
sudo_sudoers_file: ansible
# sudoers.d ディレクトリのパス
sudo_sudoers_d_path: /etc/sudoers.d
# `sudo_sudoers_d_path` の他のファイルを削除するか
purge_other_sudoers_files: no

使用例

以下はプレイブックの例です:

---

- hosts: all
  become: yes
  roles:
    - weareinteractive.sudo
  vars:
    sudo_defaults:
      - defaults: env_reset
      - defaults: secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
      - name: 'user1'
        defaults: 'requiretty'
      - name: '%group1'
        defaults: '!requiretty'
    sudo_users:
      - name: 'user1'
      - name: 'user2'
        nopasswd: yes
      - name: '%group1'
        hosts: 127.0.0.1
      - name: '%group2'
        commands: '/bin/ls'
      - name: '%group3'
        commands:
          - '/usr/bin/ls'
          - '/usr/bin/df'
          - '/usr/bin/mailq'
      - name: '%group4'
        users: 'user1,user2'
        groups: 'group1,group2'
    purge_other_sudoers_files: yes

テスト

$ git clone https://github.com/weareinteractive/ansible-sudo.git
$ cd ansible-sudo
$ make test

貢献

正式なスタイルガイドはありませんが、既存のコーディングスタイルを維持するようにしてください。新しい機能や変更された機能にはユニットテストと例を追加してください。

  1. フォークする
  2. フィーチャーブランチを作成する(git checkout -b my-new-feature
  3. 変更をコミットする(git commit -am 'Add some feature'
  4. ブランチにプッシュする(git push origin my-new-feature
  5. 新しいプルリクエストを作成する

注意: README.md ファイルを更新するには ansible-role をインストールして実行してください:

$ gem install ansible-role
$ ansible-role docgen

ライセンス

Copyright (c) We Are Interactive MITライセンスのもとに。

プロジェクトについて

Installs and configures sudo

インストール
ansible-galaxy install weareinteractive.sudo
ライセンス
mit
ダウンロード
300.4k