Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.



Published on

Can feature solve the eternal

  • Be the first to comment

  • Be the first to like this


  1. 1. Features
  2. 2. Gokul N KWorked on while working atSince then I have been working on at
  3. 3. Drupal is a database heavy content management system.This makes the staging workflow a painful process. Enter Exportables(Part of Ctools)
  4. 4. Ctools is a group of nifty APIs and tools to improve the developer experience and efficiency. Earl Miles (Merlin of Chaos) Did you know that Ctools stool for Chaos Tools
  5. 5. Sharing Databases?•Cumbersome process.•In Distributed teams it can be anightmare.•Content and Settings are notseparated.•Cannot do DB dumps on live sites.
  6. 6. Before Move the changes from database to the code. Code Settings and ContentResides in File System Database
  7. 7. After Code & Settings ContentResides in File System Database
  8. 8. Advantage of saving settings in code1. All settings in code.2. Can be revisioned.3. Database changes can be grouped. Hence easier to move selective changes to production.4. Content and settings are separated.
  9. 9. Enter Features
  10. 10. Why features?1. Development of website makes more contextual meaning, when it is discussed feature wise.2. Easier to export feature by feature.3. No need of any database changes on staging and prod.
  11. 11. For FeaturesGet comfortable with contexts and boxes. They will save your day.
  12. 12. Challenges in Features1. Two people can’t work on same feature simultaneously.2. Auto-detected dependencies can be wrong.3. Once features are over-ridden then updates cannot be used.4. Features that extend existing features.
  13. 13. Not all can problems can be fixed 1. Features Extra : 2. Features Plumber : 3. Features Override : 4. Ftools :
  14. 14. Features Extra Support for few popular modules, which features module doesn’t support out of the box.1. Blocks2. Node-queue3. Profile
  15. 15. Features PlumberRemove wrongfully auto-detected dependencies.
  16. 16. Those who have worked with the features know the problem ofdownloading a feature, copying it tothe correct location, clearing cache.All this only to find out that you have forgotten to add something else. REPEAT THE PROCESS AGAIN :P
  17. 17. Features Tools Auto createRevert them All S Safe Auto create
  18. 18. Features Override View level overrides
  19. 19. Features OverrideAdvanced overrides. (Granular)
  20. 20. Configuration ModuleMove the changes from database to the code.
  21. 21. Configuration Management ArchitectureWill it solve the issue? May be most of them, but not all.
  22. 22. You are not an exception? Thank you, Gokul