2016-06-07 13 views

Odpowiedz

10

Chociaż jest bardzo podobny, szablon pełni dodatkową funkcję.

  • copy zajmuje plik z hostem,
    „jak jest”,
    i kopiuje go do odległego miejsca przeznaczenia.
  • template zajmuje plik (szablon) z hostem,
    zmienia zmienne oparte na filtrowaniu Jinja2,
    i kopiuje go do odległego miejsca przeznaczenia.

Można użyć szablonu do skopiowania pliku bez formatowania szablonu z hosta do zdalnego miejsca docelowego.

Przykładem kopiowania przez szablon jest sytuacja, w której należy zaimportować niestandardowy plik konfiguracyjny na podstawie parametrów z hosta (lub w innym miejscu), na przykład pliku konfiguracji sieci, który pobiera właściwości hosta/poświadczenia z instancji bazy danych. Zauważ, że to samo można osiągnąć, używając copy/lineinfile - jest to po prostu inny sposób.

+1

Zastanawiam się jednak, czy należy wywoływać szablon tylko wtedy, gdy potrzebna jest jego funkcjonalność. Po co dodawać (minimalnie zaistniałe zdarzenie) obciążenie związane z wywoływaniem jinja2 tego, co masz na statyczną zawartość, która mogłaby mieć wpływ na środowisko wykonawcze, gdybyś miał ich zbyt dużo lub jeśli działałeś w środowisku o ograniczonych zasobach. Słysząc głośno, naprawdę. Ktoś pakuje się z ich dwoma centami :) – Sankalp