robertdebock.image_builder

image_builder

Pozwól swojemu systemowi korzystać z Lorax, narzędzia do budowy obrazów.

Travis GitHub Jakość Pobrania Wersja
travis github quality downloads Version

Przykładowy playbook

Ten przykład pochodzi z molecule/resources/converge.yml i jest testowany przy każdym pushu, pull request, i wydaniu.

---
- name: converge
  hosts: all
  become: yes
  gather_facts: yes

  roles:
    - role: robertdebock.image_builder

Maszyna może wymagać przygotowania za pomocą molecule/resources/prepare.yml:

---
- name: prepare
  hosts: all
  become: yes
  gather_facts: no

  roles:
    - role: robertdebock.bootstrap

Dla weryfikacji, molecule/resources/verify.yml uruchamia się po zastosowaniu roli.

---
- name: Verify
  hosts: all
  become: yes
  gather_facts: no

  tasks:
    - name: sprawdź, czy połączenie wciąż działa
      ping:

Zobacz także pełne wyjaśnienie i przykład jak używać tych ról.

Zmienne roli

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

---
# plik domyślny dla image_builder

image_builder_product: nazwa-schematu
image_builder_description: Mój pierwszy schemat
image_builder_version: 0.0.1

image_builder_installed_packages:
  - name: screen
    version: "4.*"
  - name: lsof
    version: "*"

# Użyj jednej z tych wartości: alibaba, ami, ext4-filesystem, google, live-iso,
# openstack, partitioned-disk, qcow2, tar, vhd lub vmdk
image_builder_type: tar

Wymagania

  • Dostęp do repozytorium z pakietami, prawdopodobnie w Internecie.
  • Niedawna wersja Ansible. (Testy są prowadzone na bieżącej, poprzedniej i następnej wersji Ansible.)

Aby zapewnić spełnienie wszystkich wymagań, można zainstalować następujące role, używając ansible-galaxy install -r requirements.yml:

---
- robertdebock.bootstrap

Kontekst

Ta rola jest częścią wielu compatible ról. Zapoznaj się z dokumentacją tych ról w celu uzyskania dalszych informacji.

Oto przegląd powiązanych ról: dependencies

Kompatybilność

Ta rola była testowana na tych obrazach kontenerów:

kontener tagi
el 7, 8
fedora wszystkie

Minimalna wersja Ansible wymagana to 2.9, testy zostały przeprowadzone dla:

  • Wersji poprzedniej.
  • Bieżącej wersji.
  • Wersji deweloperskiej.

Testowanie

Testy jednostkowe są przeprowadzane przy każdym commicie, pull request, wydaniu i okresowo.

Jeśli znajdziesz problemy, zarejestruj je w GitHub

Testowanie odbywa się przy użyciu Tox i Molecule:

Tox testuje wiele wersji ansible. Molecule testuje wiele dystrybucji.

Aby przetestować przy użyciu domyślnych ustawień (dowolna zainstalowana wersja ansible, przestrzeń nazw: robertdebock, obraz: fedora, 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 także testować wiele wersji Ansible i wybierać obrazy: Tox pozwala na testowanie wielu wersji Ansible. Aby uruchomić testy domyślne (przestrzeń nazw: robertdebock, obraz: fedora, tag: latest):

tox

# Aby uruchomić CentOS (przestrzeń nazw: `robertdebock`, tag: `latest`)
image="centos" tox
# Lub dostosuj więcej:
image="debian" tag="stable" tox

Licencja

Apache-2.0

Informacje o autorze

Robert de Bock

Proszę rozważ wsparcie mnie.

O projekcie

Allow your system to use Lorax, the image builder.

Zainstaluj
ansible-galaxy install robertdebock.image_builder
Licencja
apache-2.0
Pobrania
94
Właściciel
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.