2017-06-27 3 views
0

Was sind die allgemeinen Best Practices im Umgang mit Chefkochbuchversionen in Bezug auf die Anpassung an Anwendungsversionen, die die Kochbücher bereitstellen und konfigurieren sollen?Wie werden Kochbuchversionen auf Anwendungsversionen abgebildet?

Wenn ich meine Kochbücher für Konfigurationsautomatisierung einer bestimmten Anwendungsversion baue - Muss ich etwas Relevanz der Anwendungsversion in meine Kochbuchversion bringen? Wenn nicht, wie sind die Kochbuchversionen mit Anwendungsversionen verknüpft?

Anwendungen, die aktualisiert werden, können zusätzliche Komponenten oder Konfigurationsänderungen enthalten, die eine Änderung an bestehenden Kochbüchern erfordern würden. Ohne einen Mechanismus, um die Kochbuchversionen der Anwendungsversion zuzuordnen, wäre es eine Herausforderung, eine gegebene Anwendungsversion bereitzustellen.

Alle Ideen, wie es verwaltet wird geschätzt?

Antwort

0

Als wir unsere Kochreise begannen, hatten wir ähnliche Bedenken. Unsere Anwendungen werden über eine Jenkins-basierte Pipeline erstellt, in der Build-Nummern von Jenkins zugewiesen werden. Mit anderen Worten, wir verwenden SemVer nicht für unsere Apps. Der Umzug nach SemVer wäre für uns ein sehr großer Aufwand. Die Chefkochbücher, die diese Apps und ihre Hosting-Umgebung liefern, mussten aus den von Ihnen genannten Gründen ein sauberes und intuitives Mapping haben. Wir haben festgestellt, dass das Verwalten von Kochbüchern mit einem SemVer-Schema und die Bereitstellung von Apps, die sie bereitstellen/konfigurieren, ein Nicht-SemVer-Schema verwenden, für unsere Benutzer verwirrend war. In einer idealen Welt würden wir alles zu SemVer bewegen, aber wir haben jetzt keine Option für uns. Wir entschieden uns, unsere Kochbücher durch die gleiche Jenkins-Pipeline laufen zu lassen und mit dem App-Code zusammengefügt zu werden und haben den gleichen automatisierten Prozess, um die metadata.rb-Datei mit der Jenkins-Build-Nummer zu stempeln. Die Jury ist sich noch nicht darüber im Klaren, wie gut das langfristig funktionieren wird, aber wir machen das seit fast einem Jahr und trotz einiger Ecken und Kanten scheint es gut zu funktionieren.

Ich teile unseren Ansatz einfach als einen Weg, dies zu tun. Ich bin mir nicht sicher, ob ich es genug liebe, um dies als eine allgemeine Best Practice zu propagieren, aber ich denke, es war das geringere Übel für uns. Wenn Sie sich entscheiden, diesen Weg zu gehen, nehmen Sie sich die Zeit zu verstehen, wie Berks (oder Policyfiles) Kochbuch Version Auflösung sowie Chef Server Version Auflösung funktioniert - das wird Ihnen einige Schmerzen sparen, so dass dies funktioniert.

+0

Danke! Nur wenige Fragen - Wenn Sie Kochkochbücher zusammengestellt haben, ändert sich bei jedem Upgrade von Kochbüchern auch die Version der Anwendung. –

+0

ja - das ist eine der Nebenwirkungen ... was ein Problem sein kann. aber unsere Freigabekadenz ist so, dass sie sich typischerweise in Verbindung ändern oder zumindest wollen wir beide testen und eine Build-Nummer rev auf beiden haben, die uns erlaubt, den Abschluss dieses Tests zu verfolgen (was nicht automatisch überall ist) – kellyb

Verwandte Themen