Code driven development
Sunday 26 January 14
Why are we using Drupal?
• Content authorization.
• Large set of configurations.
• Lot of modules with huge amount of features
Sunday 26 January 14
Most used modules.
• Views
• Panels
• Context
• Date
• ....
Sunday 26 January 14
So what is code driven development?
Sunday 26 January 14
Export it! Export it all!!
Sunday 26 January 14
Workflows
Sunday 26 January 14
Dev > Staging > Production
Sunday 26 January 14
Why should we use workflows?
Sunday 26 January 14
To prevent the chaos!Sunday 26 January 14
Use version control!Sunday 26 January 14
Version controlling workflows
• http://www.drupal.org
• http://www.github.com
Sunday 26 January 14
github
• http://help.github.com/mac-set-up-git/
• http://help.github.com/fork-a-repo/
Sunday 26 January 14
Features modulehttp://www.drupal.org/project/features
Sunday 26 January 14
Drupal featureSunday 26 January 14
Useful modules for Features
• Strongarm - http://drupal.org/project/strongarm
• Node export - http://drupal.org/project/node_export
Sunday 26 January 14
Chaos toolsexportable api
http://www.drupal.org/project/ctoolshttp://drupal.org/node/928026
Sunday 26 January 14
Entity
Sunday 26 January 14
Drupalize your data!Use Entities!
Sunday 26 January 14
Entities and bundles
Sunday 26 January 14
When should we use entities?
Sunday 26 January 14
hook_entity_info()
Sunday 26 January 14
Entity APIhttp://www.drupal.org/project/entity
Sunday 26 January 14
Compatibility
• Rules
• Search API
• Features
• i18n
• Views
Sunday 26 January 14
CRUD API
• entity_create($entity_type, array $values)
• entity_save($entity_type, $entity)
• entity_delete($entity_type, $id)
• entity_view($entity_type, $entities, $view_mode = 'full', $langcode = NULL, $page = NULL)
• entity_access($op, $entity_type, $entity = NULL, $account = NULL)
Sunday 26 January 14
hook_entity_property_info()
Sunday 26 January 14
UUIDhttp://www.drupal.org/project/uuid
Universally Unique IDentifier
Sunday 26 January 14
UUID API
• entity_uuid_load()
• entity_uuid_save()
Sunday 26 January 14
Install profiles - Distributions
Sunday 26 January 14
Distributions
• Open Atrium
• Aegir
• Drupal Commons
• Pressflow
• Tattler
Sunday 26 January 14
DrushDrupal Shell
http://drupal.org/project/drush
Sunday 26 January 14
Makefilesdrush make
Sunday 26 January 14
Drupal 8
Sunday 26 January 14
Feature freeze2012 december
Sunday 26 January 14
CMIConfig Management Initiative
http://groups.drupal.org/build-systems-change-management/cmi
Sunday 26 January 14
CMI
• Signed file storage
• Active Store
• Configuration API
Sunday 26 January 14
Contribute
• http://drupal.org/sandbox/heyrocker/1145636
Sunday 26 January 14
Thank you for your attention!
Sunday 26 January 14
Top Related