数か月前にdrupalcampがあり、誰かが新しい構成(CMI)システムを使用したデプロイメントの管理について質問しました。考えられる理想的なワークフローの1つは、構成をバージョン管理に維持し、チームメンバー間で構成を移行できるようにすることです。
部屋で私たちが理解できた最高のもの(部分的にDrupalConポートランドでのプレゼンテーションに基づく)は次のとおりです。
また、settings.phpを使用して、2つの環境間でactive/stagingディレクトリを逆にします。ただし、1つのサーバーから次のサーバーへの展開ワークフローを理解することは複雑でしたが実行可能でしたが、複数のローカル環境(つまり、複数の開発者)から開発者(または相互)への推奨ワークフローは次のとおりです-考えられる問題はすべてのチームメンバーです。同じまたは類似の環境を共有しているので、1人のチームメイトのマシンの変更はどのように行われるのでしょうか。
CMIのメンテナと少し話し合った後、最善の方法についての議論はまだ終わっていませんが、現時点で最も意味のあることは次のとおりです。
今のところ簡潔にしておくと、質問に基づいて、または参照されている問題が公式の回答で解決されたときに展開しようとします。
つまり、まず、事実...
そのため、現時点では、ステージングディレクトリをバージョン管理することをお勧めします。各開発者は、Active Directory全体をコピーするか、特定の構成ファイルだけをコピーすることにより、そこに配置するものを完全に制御できます。次に、ステージングディレクトリの変更がコミットされ、本番環境にプッシュされ、構成のインポートが実行されます(UIまたはdrushを使用)。
これまでのところ素晴らしい答えです。みんなありがとう!
Drupal 8プロジェクトを最近開始し、次のワークフローを実装しました。
3つのフォルダがアクティブで、ステージングとエクスポートがあります。開発者はそれらをダンプしてエクスポートします。ステージに残したくない。共有構成がステージングフォルダーに直接格納されていない場合は、操作が簡単だと思います。それはただの伐採であり、私はこれについて難しい事実はありません...
現在のdrupal 8プロジェクトテンプレートはgithubで利用できます。また、devleoperのワークフローを高速化するための便利なdrushコマンドもいくつか作成しました。アクティブからエクスポートへの手動コピーは必要ありません。
私はまだこれを試していませんが、私の計画は、気になる構成のみを含む「デフォルト」の構成ファイルを含むカスタムモジュールを作成することです。他のモジュールには、他のモジュールをオーバーライドする構成を含めることができると思います。 (そうでない場合は、これを可能にする必要があります)。
Configフォルダーはそのままにしておく必要があると思います。それを無視します。インストール時に、個々のモジュールの構成ファイルすべてから自動生成されます。パスは長く、ランダムです。これらすべてをリポジトリに保持している場合は、別のリポジトリが必要になり、大量のデフォルトの不要な構成ファイルを運ぶことになります。
カスタムモジュールに構成を配置すると、メインコードベースの一部になります。
展開プロセスは次のようになります。
必要に応じて、環境ごとにカスタムモジュールを(独自の構成で)作成できます。
注:質問に対する厳密な意味での回答ではありませんが、とにかくここに置いておきます。Featuresのリリースが8.xになり、ほこりがもう少し落ち着いたら、再訪して編集/削除します。これはコメントとしては大きすぎたので、0.02ポンドを獲得したいと思いました:-)
Features の大ファンとして、 Features モジュールのD8インカネーションに注目することをお勧めします。
プロジェクトページから取得
機能の3.xバージョンは、Drupal 8で新しい構成管理システムと統合する予定です。単純なサイト構成をエクスポートする必要があるだけの場合は、機能の代わりにD8構成管理システムを使用する必要があります。 。D8の機能を使用して、バンドルされた機能(「フォトギャラリー機能」など)をエクスポートします。
私kindaが見る方法は、このアイデアにより、devteamsがサイトの小さな部分で作業しやすくなるということです。まだ不明な変数が多すぎるため、まだワークフローに進みませんが、現在の機能の展開手順との違いはそれほどありません。
CMIは素晴らしいです。しかし、私のサイトのほとんどはまだ機能モジュールで終了します(すべてのコンテンツタイプ、権限などをエクスポートする必要がないため、少量ですが)