marcusburghardt.openscap

ansible-role-openscap

Ta rola zapewni, że środowisko deweloperskie do współpracy z projektami ComplianceAsCode będzie odpowiednio zainstalowane i skonfigurowane. Możesz na razie pominąć długie czytanie dokumentacji i zacząć programować wcześniej. ;)

Wszystkie zmienne, które możesz chcieć zmienić, są zdefiniowane w "defaults/main.yml". Możesz zmienić je bezpośrednio tam lub, co jest bardziej eleganckie i zalecane, nadpisać je w swoim Playbooku.

Ta rola będzie:

  • Opcjonalnie konfigurować dodatkowe repozytoria.
  • Instalować wszystkie niezbędne pakiety:
    • Pakiety wymagane do rozwoju, testów i dodatkowych narzędzi.
  • Instalować moduły Pythona:
    • Instalować dodatkowe moduły Pythona niezbędne do CMakeTests lub JSON, na przykład.
  • Konfigurować podstawowe środowisko:
    • Tworzyć główny folder (~/CaC)
    • Aktualizować zmienną PATH, jeśli to konieczne.
    • Tworzyć podfolder Forks, jeśli jakiekolwiek repozytorium jest forkowane.
  • Konfigurować git:
    • Zapewnić poprawne imię i e-mail, które będą pojawiać się w commitach do repozytoriów ComplianceAsCode.
  • Konfigurować laboratoria:
    • Kopiować pliki Vagrant do ~/CaC/Labs/VMs
    • Kopiować pliki instrukcji dla laboratoriów i testów związanych z VM w Labs/VMs.
    • TODO: Kopiować pliki instrukcji dla laboratoriów i testów związanych z kontenerami w Labs/Containers.
  • Zasilać środowisko:
    • Klonować repozytoria "fork", jeśli takie są dostępne i aktywne.
    • Klonować repozytoria "lab", jeśli takie są dostępne i aktywne.
    • Kopiować ogólne pliki instrukcji do ~/CaC

TODO

  • Otwarty na konstruktywne pomysły.

Aby zainstalować tę rolę

ansible-galaxy role install marcusburghardt.openscap

Wymagania

  • python3

Zmienne roli

Możesz dostosować swoje środowisko w bardzo prosty i scentralizowany sposób, edytując kilka zmiennych w:

  • defaults/main.yml

Jednak zdecydowanie zalecam nadpisanie tych zmiennych w swoim Playbooku. To jest znacznie bardziej eleganckie i daje więcej elastyczności. ;)

Aby to zrobić, zapoznaj się z "defaults/main.yml", który jest dobrze udokumentowany, by wyjaśnić cel i efekt każdej zmiennej. Następnie po prostu skopiuj to, co chcesz zmienić w swoim Playbooku i dostosuj to według swoich potrzeb. Spójrz na sekcję Przykładowy Playbook.

W rzadkich przypadkach możesz zmienić niektóre ustawienia, aby odzwierciedlić swoje lokalne środowisko w:

  • vars/*.yml Jeśli było to konieczne z jakiegoś powodu, rozważ zaproponowanie PR, aby poprawić rolę.

Zależności

Brak

Przykładowy Playbook

Ten playbook przygotuje wszystko z niezbędnymi zmiennymi. Znajdziesz próbkę w files/Ansible_Samples, o nazwie ansible_cac.yml.

Dla tego przykładu nazwijmy ten plik playbooka jako ansible_cac.yml, z następującą treścią:

- hosts: linux
  vars:
    - available_tasks:
      - { enabled: true, name: 'install_packages' }
      - { enabled: true, name: 'install_python_modules' }
      - { enabled: true, name: 'configure_env' }
      - { enabled: true, name: 'configure_labs' }
      - { enabled: true, name: 'populate_env' }

  roles:
    - marcusburghardt.openscap

Zauważ, że ta rola ansible została stworzona przez zestaw specyficznych zadań (available_tasks). Możesz włączać lub wyłączać kombinacje zadań w zależności od swoich potrzeb. Zakładając, że plik inwentarza hosts_cac znajduje się w tym samym folderze, z następującą treścią:

[linux:children]
install_packages
install_python_modules
configure_env
populate_env
configure_labs

...linie pominięte dla lepszej czytelności...

UWAGA: Możesz również znaleźć próbkę w files/Ansible_Samples, o nazwie hosts_cac.

Teraz, uruchom to polecenie, aby zobaczyć magię w działaniu:

ansible-playbook -K ansible_cac.yml

Może chciałbyś ustawić jakieś konfiguracje ansible dla tego środowiska.
Na przykład, zdefiniować lokalny folder na pobieranie ról.
Znajdziesz przykład pliku ansible.cfg w folderze files/Ansible_Samples, nazwanym ansible.cfg.

Licencja

Ten formularz kodu źródłowego podlega warunkom Publicznej Licencji Mozilla, v. 2.0. Jeśli kopia MPL nie została dołączona do tego pliku, możesz ją uzyskać pod adresem http://mozilla.org/MPL/2.0/.

Informacje o autorze

Marcus Burghardt

O projekcie

Role for quickly prepare a Development Environment for OpenSCAP projects.

Zainstaluj
ansible-galaxy install marcusburghardt.openscap
Licencja
mpl-2.0
Pobrania
136
Właściciel