javiergayala.users

javiergayala.users

Molekuła Rola Ansible Rola Ansible Zarządzenie Jakością Ansible Wydanie GitHub (najnowszy SemVer) Data Wydania GitHub

To jest preferowana rola, która tworzy użytkowników na serwerach.

Zmienne Roli

  • users_list: lista zawierająca słowniki użytkowników do dodania

    • name: nazwa użytkownika do stworzenia

    • groups: lista dodatkowych grup oddzielona przecinkami. Domyślnie brak.

    • ssh_key: tekst zawierający publiczny klucz ssh użytkownika, który zostanie umieszczony w /home/$USER/.ssh/authorized_keys

    • sudoers: jeśli ustawione na yes, użytkownik zostanie dodany do pliku sudoers na serwerze.

    • sudo_opts: słownik zawierający opcje do użycia w pliku sudoers.

      • passwordless: (Boolean) domyślnie "False". Ustaw na "True", aby umożliwić komendy sudo bez podawania hasła.
      • hosts: domyślnie ALL. Gospodarze, na których użytkownik może uruchamiać sudo.
      • run_as: domyślnie (ALL). Użytkownicy, którzy mogą uruchamiać komendy sudo.
      • commands: domyślnie ALL. Komendy, które użytkownik może uruchamiać z sudo.
      • requiretty: (Boolean) domyślnie nie ustawione. Ustaw na False, aby wyłączyć wymóg posiadania TTY przy użyciu sudo.
    • user_sshkey_exclusive: domyślnie no. Ustawienie na yes informuje ansible o zarządzaniu kluczami w pliku authorized_keys, a każda opcja nieokreślona w playbooku zostanie usunięta.

    • use_os_prompt: domyślnie no. Ustawienie na yes lub True sprawi, że użytkownik NIE będzie używał specjalnego promptu bash. Jest to przydatne dla kont usługowych, takich jak konto wdrożeniowe jenkins lub rswebteam, lub każdego konta, które nie używa TTY.

users_list:
  - name: deployment
    groups: apache
    ssh_key: >
      ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGY
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      RdK8jlqm8tehUc9c9WhQ== klucz publiczny o niskim poziomie bezpieczeństwa vagrant
    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

Przykładowy Playbook

- hosts: servers
  roles:
    - { role: javiergayala.users, users_list: [{ name: user1 }] }

Testowanie

Aby przetestować i uruchomić tę rolę, będziesz potrzebować:

Zdecydowanie zaleca się używanie virtualenv do testów:

PYENV_HOME=$WORKSPACE/.pyenv/

# Usuń wcześniej zbudowany virtualenv
if [ -d $PYENV_HOME ]; then
    rm -rf $PYENV_HOME
fi

# Utwórz virtualenv i zainstaluj potrzebne pakiety
virtualenv --no-site-packages $PYENV_HOME
. $PYENV_HOME/bin/activate
pip install -r pip-requirements.txt

molecule test --all

Licencja

BSD

Informacje o autorze

Javier Ayala [email protected]

O projekcie

Add and configure user accounts

Zainstaluj
ansible-galaxy install javiergayala.users
Licencja
Unknown
Pobrania
132
Właściciel