Олександр Лінивий — multisite platform with continuous delivery process for...
TRANSCRIPT
Multisite platform with continuous delivery process
for multiple development agencies
Oleksandr LinyvyiDrupal developer @AdyaxEmail: [email protected]: @lazylinolDrupal.org: https://drupal.org/user/984134
Overview1. Requirements2. Drupal core +
subsites3. Core updates4. Gitlab5. Serverside structure
6. Deployment process7. Jenkins8. Additional utils9. Pros/Cons10.Summary
The idea
Standard Drupal multisitingEach subsite = separate repositoryCore is common (obviously )
https://about.gitlab.com/features/
Serverside structure3 instances
Dev
Preprod
Production
VarnishNginx + php-fpmMariaDBMemcacheSOLR
Deploy?Just a simple git pullBut done by ansible playbook
Usage: ansible-playbook -i ./hosts ./project_deploy.yml -e "instance=dev project=hello version=develop"
Jenkins
Running code builds
Deploying code to target instances
Files/DB sync across the instances
Doing some misc stuff
in our case it is responsible for:
ProsFlexible rights management in GitlabEasy to keep core updatedLittle effort to extend (add new site)
ConsFixed instances numberUsing drush for syncs/backupsNeed to override core modules in certain cases
That’s it
Thank you!