Situs ini dihosting di tetesan DigitalOcean, yang dibuat menggunakan Ansible (lihat tools/deployment/digitalocean.yml
).
Untuk memprovisi ulang server:
# Download the required roles
ansible-galaxy install -r tools/deployment/requirements.yml --force
# Run the provision playbook
ansible-playbook tools/deployment/provision.yml
Penerapan situs ini untuk dikelola dengan Ansible dan Ansistrano. Ansible Vault digunakan untuk mengelola informasi sensitif seperti kata sandi basis data.
Penerapan dipicu secara otomatis ketika perubahan dikirim ke GitHub, dan dilakukan secara otomatis melalui Tindakan GitHub pada setiap pengiriman ke cabang production
.
Untuk menjalankan penerapan secara manual, jalankan ansible-playbook tools/deployment/deploy.yml --ask-vault-pass
. Kata sandi Vault disimpan di LastPass.
File pengaturan produksi dihasilkan secara otomatis selama penerapan. Hal ini dilakukan dengan menggunakan peran opdavies.drupal_settings_files Ansible, menggunakan variabel dari tools/deployment/vars/deploy_vars.yml
, dan dilakukan selama langkah pembuatan After update code
Ansistrano.
Untuk melihat status semua migrasi:
./run drush migrate:status
Untuk menjalankan semua migrasi:
./run drush migrate:import --all
Untuk menjalankan semua migrasi dan memperbarui konten migrasi yang ada:
./run drush migrate:import --all --update
Memperbarui inti Drupal (dan yang lainnya) dapat dilakukan menggunakan Komposer. Karena proyek ini dibangun menggunakan proyek inti yang direkomendasikan Drupal, semua dependensi perlu diperbarui:
./run composer update drupal/core-* --with-all-dependencies
Setelah ini selesai, file composer.lock
yang diperbarui dapat dikomit dan dikirim.
Untuk menjaga halaman pembicaraan dalam urutan yang benar, berdasarkan kapan pembicaraan berikutnya diberikan, tanggal created
node pembicaraan secara otomatis diperbarui pada setiap penyimpanan agar sesuai dengan tanggal acara yang paling akan datang untuk pembicaraan itu.
Tampilannya kemudian mengurutkan node pembicaraan berdasarkan tanggal created
.