Di perusahaan kami, kami mengelola BANYAK situs Drupal, pengaturan kami saat ini berjalan seperti ini:
- Setiap basis kode situs memiliki git repo sendiri
- Fitur-fitur baru yang sepertinya tidak cukup stabil untuk rilis berikutnya mendapatkan cabang fitur mereka sendiri di git
Di atas saya katakan cukup umum untuk sebagian besar situs Drupal.
Apa yang kami lakukan khusus di perusahaan kami adalah paket debian situs untuk penyebaran menggunakan perintah drush khusus - ' Drush Debian Packaging '.
Drush Debian Packaging menyediakan perintah Drush untuk membangun paket Debian dari situs Drupal sebagai sarana untuk menyebarkan situs Drupal ke server Debian atau Ubuntu.
Drush Debian Packaging menggunakan sistem kait Drupal untuk membangun paket Debian yang paling sesuai dengan kebutuhan situs Anda. Fitur termasuk:
- Konfigurasi host virtual otomatis untuk server web Apache2 dan Nginx
- Pengaturan cron di /etc/cron.d
- Penyebaran kode otomatis dengan pemisahan partisi untuk situs / default / file
- Konfigurasi otomatis melalui alat pengaturan dpkg debconf
- Proses penyebaran otomatis
- handler kustom Git VCS untuk membangun paket dari Git
Apa artinya ini?
Untuk membuat rilis:
cd /path/to/drupal-root
drush dh-make
Untuk menyebarkan rilis, pertama SCP. Deb ke semua server web di kluster. Kemudian pada semua server web jalankan (Anda dapat menggunakan paket linux cssh untuk mengetik perintah ke semua server di peternakan pada saat yang sama):
sudo dpkg -i drupal-site-yoursitehere.2011.05.25-1.all.deb
Di satu server web dijalankan:
cd /path/to/drupal-root
sudo -u drupal-site-yoursitehere drush updb && drush fra -y && drush cron
Selesai
Tentu saja untuk mengembalikan ini sekarang sepele dari sudut pandang basis kode, cukup instal versi .deb sebelumnya ke semua server web dan kembalikan database.
Senang menjawab pertanyaan tentang ini