Puppet und Cheff sind Konfigurationsmanagement-Tools. Meine Erfahrung mit Cheff ist nicht stark, deshalb konzentriere ich mich auf Marionetten.
Puppet hat die Möglichkeit Dateien zu liefern (ich stelle mir auch Cheff vor). Damit können Sie Ihre App bedienen. Wenn Sie geschickt mit nginx sind, hindert Sie nichts daran, es vor Marionette zu stellen und die erforderlichen Dateianforderungen an Ihr Maven-Repo zu übergeben oder einfach die Dateien von nginx zu liefern.
Im Allgemeinen ist es nicht ratsam, Ihr gesamtes Repo zu bedienen, da dies zu Fehlern führen wird. Erstellen Sie einen formelleren Veröffentlichungsprozess, bei dem an einem bestimmten Punkt die erforderlichen Artefakte in dem Bereich abgelegt werden, der von der Marionette als Dateien bereitgestellt wird.
Erstellen Sie eine einfache Logik wie (zum Beispiel installieren Sie immer eine Datei muapp-prod-latest.zip oder ähnliches).
Die Definition für diese Datei kann statisch bleiben und Sie verwalten die Datei im Dateisystem (z. B. Symlinks) oder sie kann eine Variable enthalten, die die Version definiert und die Version steuert.