2017-06-27 2 views
0

Cookbookがプロビジョニングと構成を目的とするアプリケーションのバージョンとの調整に関して、シェフのCookbookのバージョン管理に関する一般的なベストプラクティスは何ですか?シェフの料理本のバージョンはどのようにアプリケーションのバージョンにマッピングされていますか?

私は、特定のアプリケーションのバージョンの設定の自動化のための私の料理を構築していた場合 - 私は私の料理の本バージョンにアプリケーションのバージョンのいくつかの関連性を持参する必要がありますか?そうでない場合は、クックブックのバージョンはアプリケーションのバージョンとどのように関連していますか?

アプリケーションのアップグレード時に、既存の料理への変更を必要とする追加コンポーネントまたは構成の変更を含むことができます。 cookbookのバージョンをアプリケーションのバージョンにマップするメカニズムがなければ、特定のアプリケーションのバージョンをプロビジョニングすることは難しいでしょう。

それが管理されている方法についてのすべてのアイデアは大歓迎されていますか?私達は私達のシェフの旅を始めたとき

答えて

0

は、我々は同様の懸念を持っていました。私たちのアプリケーションは、Jenkinsがビルド番号を割り当てているJenkinsベースのパイプライン経由で構築されています。言い換えれば、私たちのアプリケーションにはSemVerを使用していません。 SemVerへの移行は我々にとって非常に大きな努力となるでしょう。これらのアプリとそのホスティング環境を提供するシェフの料理本は、あなたが指摘した理由のために、わかりやすい直観的なマッピングが必要でした。私たちは、SemVerスキームを使用してCookbookを管理し、配信/設定するアプリケーションにSemVer以外のスキームを使用させることが、ユーザーにとって混乱していることを発見しました。理想的な世界では、すべてをSemVerに移行しますが、今は私たちの選択肢ではありません。 Cookbookを同じJenkinsパイプラインに通して、アプリケーションコードと一緒に配置し、Jenkinsビルド番号のmetadata.rbファイルに同じ自動プロセススタンプを付けることにしました。陪審員は、これが長期的にどれほどうまくいくのかまだまだ外れていますが、私たちはこれを1年ほどやっていますが、いくつかの粗いエッジにもかかわらず、正常に動作しているようです。

私は単にとしてこれを行う方法を我々のアプローチを共有しています。私は一般的なベストプラクティスとしてこれを行うことを主張するために十分に愛しているかどうかはわかりませんが、私にとってはそれが悪いことではないと思います。この道を踏み出すには、シェークサーバーのバージョン解決と同様に、バーキー(またはポリシーファイル)が料理のバージョンの解決方法を理解する時間を取ってください。

+0

ありがとうございます!あなたはシェフの料理本を一緒に持っていれば、シェフの料理本のアップグレードによってアプリケーションのバージョンも変わるでしょうか? –

+0

ええ - それは副作用の一つです...これは問題になります。しかし、私たちのリリース・ケイデンスは、一般的に組合で変わるようなものであるか、少なくとも両方をテストしたいと思っています。そして、両方のビルド・ナンバー・レビを持っていれば、テストの完了を追跡できます(どこでも自動ではありません) – kellyb

関連する問題