私たちの会社では、Drupalサイトをたくさん維持していますが、現在の設定は次のようになります。
- すべてのサイトのコードベースには独自のgitリポジトリがあります
- 次のリリースで十分に安定しない可能性が高い新機能は、gitで独自の機能ブランチを取得します
上記のことは、ほとんどのDrupalサイトでかなり一般的です。
私たちが私たちの特別なことは、カスタムのdrushコマンド-'Drush Debian Packaging ' を使用して、デプロイメント用のサイトをdebianパッケージ化することです。
Drush Debianパッケージは、DrupalサイトをDebianまたはUbuntuサーバーにデプロイする手段として、DrupalサイトのDebianパッケージを構築するためのDrushコマンドを提供します。
Drush Debianパッケージングは、Drupalフックシステムを利用して、サイトのニーズに最適なDebianパッケージを構築します。機能は次のとおりです。
- Apache2およびNginx Webサーバーの自動仮想ホスト構成
- /etc/cron.dでのcronのセットアップ
- サイト/デフォルト/ファイルのパーティション分割による自動コード展開
- dpkg debconf設定ツールによる自動構成
- 自動展開プロセス
- GitからパッケージをビルドするためのカスタムGit VCSハンドラー
これは何を意味するのでしょうか?
リリースをビルドするには:
cd /path/to/drupal-root
drush dh-make
リリースをデプロイするには、最初に.debをクラスター内のすべてのWebサーバーにSCPします。次に、すべてのWebサーバーで実行します(Linuxパッケージcsshを使用して、ファーム内のすべてのサーバーに同時にコマンドを入力できます)。
sudo dpkg -i drupal-site-yoursitehere.2011.05.25-1.all.deb
1つのWebサーバーで次を実行します。
cd /path/to/drupal-root
sudo -u drupal-site-yoursitehere drush updb && drush fra -y && drush cron
できた
もちろん、これをコードベースの観点からロールバックするのは簡単です。以前のバージョンの.debをすべてのWebサーバーにインストールし、データベースをロールバックするだけです。
これについての質問に答えて幸せ