geerlingguy / ansible-role-drupal

Ansible Role - Drupal
https://galaxy.ansible.com/geerlingguy/drupal/
MIT License
89 stars 52 forks source link

Add ability to control deployments / updates? #24

Closed geerlingguy closed 7 years ago

geerlingguy commented 7 years ago

Remaining Tasks

Summary

This role currently is set up to match Drupal VM's main use cases—namely, take an existing Drupal codebase and composer install then drush site-install it, or build a new Drupal codebase using a simple composer.json or drupal.make file, or build a new Drupal project based on the Drupal Composer project, then drush site-install it.

To be what I would term the ultimate Drupal role for Ansible, I want it to also support:

I've done a bit of work around this for personal projects, and also publicly in the Raspberry Pi Dramble project, but it would be good to wrap that stuff in this role.

Alternatively, if it's more flexible to put things in separate roles, we could break things apart into something like drupal-deploy and drupal-build role... but I'd rather keep things consolidated into this one role.

geerlingguy commented 7 years ago

As I'm working through the 'Drupal VM on Production' documentation and preparing a blog post (and maybe screencast) on the topic, I think it's even more relevant to have some deployment mechanism (even if only Git deploys are supported initially) built into the role.

Basically, if you set a git repo, the role will check out that repo into the project root, and then run through the rest of the stuff (Composer build, site install, etc.). And if there's a change, it could run a set of optional deployment things (like updb, config-import, cc, etc.).

geerlingguy commented 7 years ago

Working on this now.

geerlingguy commented 7 years ago

Working on some tests now.

geerlingguy commented 7 years ago

Added upstream issue in Drupal VM project: https://github.com/geerlingguy/drupal-vm/issues/1252

Everything else looks good. Once tests pass, I'll merge, then do a minor version bump since there are a couple variable changes... though nothing should break because of them.