Wie kann ich ansible-Befehl, wenn bestimmte Datei geändert
Ich bin mit ansible
zum bereitstellen von meine django App
mit
- name: Upgrade the virtualenv.
pip: requirements={{project_root}}/www/requirements.txt virtualenv={{project_root}}/www/virtualenv
Aber ich will nur ausführen, wenn requirements.txt geändert seit dem letzten ausführen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen wir, um zu bestimmen, wenn alle der Voraussetzung Dateien sich geändert haben. Die Schritte sind wie folgt:
Hier mein playbook, {{virtualenv.Anforderungen}} ist eine Liste von Anforderungs-Dateien, wie zB:
['/work/project/requirements.txt', '/work/project/requirements-prod.txt']
:Hier sind zwei Optionen:
stellen Sie Ihre requirements.txt unter Ansible-Steuerelement, und verwenden Sie 'copy' oder 'template' - Modul, dann rufen Sie 'pip' - Modul mit 'notify:' Anweisung
zweite Möglichkeit ist komplexer:
Ich mit diesem ziemlich kurzen workaround für git-repository.
Es ist nicht universell und nicht cross-Plattform-Rezept, aber funktioniert gut für viele Situationen.