SlideShare a Scribd company logo
1 of 23
Features
Gokul N K
Worked on

   while working at

Since then I have been working on

        at
Drupal is a database heavy content
      management system.

This makes the staging workflow a
        painful process.

 Enter Exportables(Part of Ctools)
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
Sharing Databases?
•Cumbersome process.
•In Distributed teams it can be a
nightmare.
•Content and Settings are not
separated.
•Cannot do DB dumps on live sites.
Before
      Move the changes from database to
                  the code.




      Code                        Settings and Content
Resides in File System                Database
After




 Code & Settings              Content
Resides in File System       Database
Advantage of saving settings
         in code
1. 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.
Enter Features
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.
For Features




Get comfortable with contexts and boxes.
        They will save your day.
Challenges in Features
1. 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.
Not all can problems can be fixed
     1. Features Extra :
         http://drupal.org/project/features_extra

     2. Features Plumber :
         http://drupal.org/project/features_plumber
     3. Features Override :
         http://drupal.org/project/features_override

     4. Ftools : http://drupal.org/project/ftools
Features Extra
     Support for few popular
   modules, which features module
   doesn’t support out of the box.

1. Blocks
2. Node-queue
3. Profile
Features Plumber
Remove wrongfully auto-detected
        dependencies.
Those who have worked with the
   features know the problem of
downloading a feature, copying it to
the correct location, clearing cache.

All this only to find out that you have
  forgotten to add something else.
    REPEAT THE PROCESS AGAIN :P
Features Tools
                           Auto create


Revert them All
http://drupal.org/node/986932



             S       Safe Auto create
Features Override
 View level overrides
Features Override
Advanced overrides. (Granular)
Configuration Module
Move the changes from database to
            the code.
Configuration Management
       Architecture




Will it solve the issue? May be most
         of them, but not all.
You are not an exception?




    Thank you, Gokul

More Related Content

Viewers also liked

Show this presentation_when_a_person_in_dippresion
Show this presentation_when_a_person_in_dippresionShow this presentation_when_a_person_in_dippresion
Show this presentation_when_a_person_in_dippresionAndra Manoj Kumar
 
Innovating solutions for pharma research & development
Innovating solutions for pharma research & developmentInnovating solutions for pharma research & development
Innovating solutions for pharma research & developmentJohn Douglas
 
Classic photoalbum
Classic photoalbumClassic photoalbum
Classic photoalbumakshay anand
 
Drupal Caching For Dummies
Drupal Caching For DummiesDrupal Caching For Dummies
Drupal Caching For DummiesGokul Nk
 
###Over printing### & line clearance sheet by Vishnu Datta M
###Over printing### & line clearance sheet by Vishnu Datta M###Over printing### & line clearance sheet by Vishnu Datta M
###Over printing### & line clearance sheet by Vishnu Datta MVishnu Datta Maremanda
 
Bioinfromatics - local alignment
Bioinfromatics - local alignmentBioinfromatics - local alignment
Bioinfromatics - local alignmentVivek Chandramohan
 
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay Anand
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay AnandDrug Registration in GCC (Gulf Cooperation Council) - by Akshay Anand
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay AnandAkshay Anand
 
Mobile Medical Apps and FDA Regulatory Approach
Mobile Medical Apps and FDA Regulatory ApproachMobile Medical Apps and FDA Regulatory Approach
Mobile Medical Apps and FDA Regulatory ApproachAkshay Anand
 
Regulatory approval process for invitro diagnostics in us
Regulatory approval process for invitro diagnostics in usRegulatory approval process for invitro diagnostics in us
Regulatory approval process for invitro diagnostics in usVinod Raj
 
D&C Act 1940 Schedule Y - A Presentation by Akshay Anand
D&C Act 1940 Schedule Y - A Presentation by Akshay AnandD&C Act 1940 Schedule Y - A Presentation by Akshay Anand
D&C Act 1940 Schedule Y - A Presentation by Akshay AnandAkshay Anand
 

Viewers also liked (20)

Show this presentation_when_a_person_in_dippresion
Show this presentation_when_a_person_in_dippresionShow this presentation_when_a_person_in_dippresion
Show this presentation_when_a_person_in_dippresion
 
Presentation5
Presentation5Presentation5
Presentation5
 
2014 gold medalists-list
2014 gold medalists-list2014 gold medalists-list
2014 gold medalists-list
 
Innovating solutions for pharma research & development
Innovating solutions for pharma research & developmentInnovating solutions for pharma research & development
Innovating solutions for pharma research & development
 
Certificate
CertificateCertificate
Certificate
 
DREAM:IN Tumkur
DREAM:IN TumkurDREAM:IN Tumkur
DREAM:IN Tumkur
 
Classic photoalbum
Classic photoalbumClassic photoalbum
Classic photoalbum
 
Drupal Caching For Dummies
Drupal Caching For DummiesDrupal Caching For Dummies
Drupal Caching For Dummies
 
Akshay Anand CV
Akshay Anand CVAkshay Anand CV
Akshay Anand CV
 
Civil engineering
Civil engineeringCivil engineering
Civil engineering
 
design qualification
design qualification design qualification
design qualification
 
###Over printing### & line clearance sheet by Vishnu Datta M
###Over printing### & line clearance sheet by Vishnu Datta M###Over printing### & line clearance sheet by Vishnu Datta M
###Over printing### & line clearance sheet by Vishnu Datta M
 
Memristor
MemristorMemristor
Memristor
 
Bioinfromatics - local alignment
Bioinfromatics - local alignmentBioinfromatics - local alignment
Bioinfromatics - local alignment
 
Market complaints
Market complaintsMarket complaints
Market complaints
 
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay Anand
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay AnandDrug Registration in GCC (Gulf Cooperation Council) - by Akshay Anand
Drug Registration in GCC (Gulf Cooperation Council) - by Akshay Anand
 
Bioinformatics
BioinformaticsBioinformatics
Bioinformatics
 
Mobile Medical Apps and FDA Regulatory Approach
Mobile Medical Apps and FDA Regulatory ApproachMobile Medical Apps and FDA Regulatory Approach
Mobile Medical Apps and FDA Regulatory Approach
 
Regulatory approval process for invitro diagnostics in us
Regulatory approval process for invitro diagnostics in usRegulatory approval process for invitro diagnostics in us
Regulatory approval process for invitro diagnostics in us
 
D&C Act 1940 Schedule Y - A Presentation by Akshay Anand
D&C Act 1940 Schedule Y - A Presentation by Akshay AnandD&C Act 1940 Schedule Y - A Presentation by Akshay Anand
D&C Act 1940 Schedule Y - A Presentation by Akshay Anand
 

Similar to Features

Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011camp_drupal_ua
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Mack Hardy
 
Intro to Features Module on Drupal
Intro to Features Module on DrupalIntro to Features Module on Drupal
Intro to Features Module on DrupalAidan Foster
 
DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DrupalDay
 
10 Reasons why you should be using features for your Drupal project
10 Reasons why you should be using features for your Drupal project10 Reasons why you should be using features for your Drupal project
10 Reasons why you should be using features for your Drupal projectWunderkraut
 
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationIBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationDevelopment Seed
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal infoSynapseindiappsdevelopment
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cfloraaluoch3
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara AnjargolianHakka Labs
 
Features & Installation Profiles
Features & Installation ProfilesFeatures & Installation Profiles
Features & Installation ProfilesDavid Watson
 
Migraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesMigraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesdrupalindia
 
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...hamidsamadi
 
Easy Drupal Project Deployment With Features Module & Drush
Easy Drupal Project Deployment With Features Module & DrushEasy Drupal Project Deployment With Features Module & Drush
Easy Drupal Project Deployment With Features Module & DrushQArea
 
Features, Exportables & You
Features, Exportables & YouFeatures, Exportables & You
Features, Exportables & Youjskulski
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...Eric Sembrat
 
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii Marchenko
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii MarchenkoDevOps Days Kyiv 2019 -- Immutable everywhere // Sergii Marchenko
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii MarchenkoMykola Marzhan
 
Manage Deployments with Install Profiles and Git
Manage Deployments with Install Profiles and GitManage Deployments with Install Profiles and Git
Manage Deployments with Install Profiles and Gitnhepner
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with FeaturesNuvole
 

Similar to Features (20)

Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
Anna Fedoruk.Theworkflow.DrupalCamp Kyiv 2011
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
 
Intro to Features Module on Drupal
Intro to Features Module on DrupalIntro to Features Module on Drupal
Intro to Features Module on Drupal
 
DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8DDAY2014 - Features per Drupal 8
DDAY2014 - Features per Drupal 8
 
10 Reasons why you should be using features for your Drupal project
10 Reasons why you should be using features for your Drupal project10 Reasons why you should be using features for your Drupal project
10 Reasons why you should be using features for your Drupal project
 
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationIBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal info
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in c
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara Anjargolian
 
Features & Installation Profiles
Features & Installation ProfilesFeatures & Installation Profiles
Features & Installation Profiles
 
Migraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesMigraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sites
 
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
 
Recipes for Drupal distributions
Recipes for Drupal distributionsRecipes for Drupal distributions
Recipes for Drupal distributions
 
Easy Drupal Project Deployment With Features Module & Drush
Easy Drupal Project Deployment With Features Module & DrushEasy Drupal Project Deployment With Features Module & Drush
Easy Drupal Project Deployment With Features Module & Drush
 
Features, Exportables & You
Features, Exportables & YouFeatures, Exportables & You
Features, Exportables & You
 
Drupal
DrupalDrupal
Drupal
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
 
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii Marchenko
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii MarchenkoDevOps Days Kyiv 2019 -- Immutable everywhere // Sergii Marchenko
DevOps Days Kyiv 2019 -- Immutable everywhere // Sergii Marchenko
 
Manage Deployments with Install Profiles and Git
Manage Deployments with Install Profiles and GitManage Deployments with Install Profiles and Git
Manage Deployments with Install Profiles and Git
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with Features
 

Features

  • 2. Gokul N K Worked on while working at Since then I have been working on at
  • 3. Drupal is a database heavy content management system. This makes the staging workflow a painful process. Enter Exportables(Part of Ctools)
  • 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. Sharing Databases? •Cumbersome process. •In Distributed teams it can be a nightmare. •Content and Settings are not separated. •Cannot do DB dumps on live sites.
  • 6. Before Move the changes from database to the code. Code Settings and Content Resides in File System Database
  • 7. After Code & Settings Content Resides in File System Database
  • 8. Advantage of saving settings in code 1. 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.
  • 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. For Features Get comfortable with contexts and boxes. They will save your day.
  • 12. Challenges in Features 1. 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. Not all can problems can be fixed 1. Features Extra : http://drupal.org/project/features_extra 2. Features Plumber : http://drupal.org/project/features_plumber 3. Features Override : http://drupal.org/project/features_override 4. Ftools : http://drupal.org/project/ftools
  • 14. Features Extra Support for few popular modules, which features module doesn’t support out of the box. 1. Blocks 2. Node-queue 3. Profile
  • 15. Features Plumber Remove wrongfully auto-detected dependencies.
  • 16. Those who have worked with the features know the problem of downloading a feature, copying it to the correct location, clearing cache. All this only to find out that you have forgotten to add something else. REPEAT THE PROCESS AGAIN :P
  • 17. Features Tools Auto create Revert them All http://drupal.org/node/986932 S Safe Auto create
  • 18. Features Override View level overrides
  • 20.
  • 21. Configuration Module Move the changes from database to the code.
  • 22. Configuration Management Architecture Will it solve the issue? May be most of them, but not all.
  • 23. You are not an exception? Thank you, Gokul