tehtbl.reboot

Status budowy

Opis roli

Zrestartuj system, jeśli zajdzie taka potrzeba.

Przykład playbooka

Ten przykład pochodzi z molecule/default/converge.yml i jest testowany przy każdym pushu, pull requeście i wydaniu.

---
- name: Converge
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: tehtbl.reboot

Maszyna, na której uruchamiasz ten playbook, może wymagać przygotowania. Używam tego playbooka, aby upewnić się, że wszystko jest gotowe, aby rola działała.

---
- name: Przygotowanie
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: tehtbl.bootstrap

Zmienne roli

Te zmienne są ustawione w defaults/main.yml:

---
# ------------------------------------------------------------------------
# plik domyślny dla restartu
# ------------------------------------------------------------------------

# Niektóre systemy operacyjne mogą określić, czy wymagany jest restart. 
# Ten parametr może być ustawiony na zawsze restartować.
reboot_always: false

# Jak długo czekać przed wysłaniem restartu.
reboot_delay: 4

# Liczba sekund na czekanie przed sprawdzeniem, czy maszyna jest dostępna.
reboot_up_delay: 8

# Możesz określić wiadomość przy uruchomieniu ponownie, co ułatwia audyt.
reboot_message: "restart wykonany przez rolę Ansible tehtbl.reboot"

Wymagania

  • Dostęp do repozytorium zawierającego pakiety, prawdopodobnie w internecie.
  • Niedawna wersja Ansible. (Testy są prowadzone na obecnej, poprzedniej i następnej wersji Ansible.)

Kontekst

Ta rola jest częścią wielu kompatybilnych ról. Sprawdź moje inne role po więcej informacji.

Kompatybilność

Ta rola była testowana na tych obrazach Docker:

Kontener Tag Pozwalaj na błędy
debian stable nie
debian testing nie
debian unstable tak
ubuntu xenial tak
ubuntu bionic nie
ubuntu focal nie
ubuntu devel tak

Ta rola była testowana na tych wersjach Ansible:

Testowanie za pomocą Tox

Testy jednostkowe są wykonywane przy każdym zatwierdzeniu, pull requeście, wydaniu oraz okresowo.

Jeśli napotkasz problemy, zarejestruj je w GitHub.

Testowanie odbywa się za pomocą Tox i Molecule:

Tox testuje różne wersje Ansible. Molecule testuje różne dystrybucje.

Aby przetestować używając domyślnych ustawień (dowolna zainstalowana wersja Ansible, przestrzeń nazw: tehtbl, obraz: ubuntu, tag: latest):

molecule test

# Lub wybierz konkretny obraz:
IMAGE="ubuntu" molecule test

# Lub wybierz konkretny obraz i konkretny tag:
IMAGE="debian" TAG="stable" tox

Możesz również przetestować różne wersje Ansible i wybrać odpowiednie obrazy:

Tox pozwala testować wiele wersji Ansible. Aby uruchomić testy domyślne (przestrzeń nazw: tehtbl, obraz: ubuntu, tag: latest):

tox

# Aby uruchomić testy dla Ubuntu (przestrzeń nazw: `tehtbl`, tag: `latest`)
IMAGE="ubuntu" tox

# Lub dostosuj więcej:
IMAGE="debian" TAG="stable" tox -e py37-ansible-current

Testowanie za pomocą Vagrant

Zainstaluj wtyczki vagrant za pomocą:

vagrant plugin install vagrant-reload

Rozpocznij testy za pomocą dostawcy VirtualBox:

vagrant up

Licencja

Licencja MIT

Informacje o autorze

Źródła

Ta praca opiera się na świetnej pracy wielu osób, np. Roberta de Bocka, Jeffa Geerlinga i Thomasa Waldmanna. Dziękuję!

Zainstaluj
ansible-galaxy install tehtbl.reboot
Licencja
mit
Pobrania
4.2k
Właściciel