SlideShare una empresa de Scribd logo
1 de 23
Using features/
            exportables in production
                           @drupalvolcon Antwerp April 20, 2010




Stijn De Meyere @stijndm www.sken.be                         VILLAVISCOM
Stijn De Meyere

                 freelance drupal dev as villaviscom.be
                 working closely with nascom.be
                 @stijndm
                 sken.be



Stijn De Meyere @stijndm www.sken.be                  VILLAVISCOM
The problem

                 Development local/online
                 Staging
                 Production




Stijn De Meyere @stijndm www.sken.be                 VILLAVISCOM
The problem

                 Different databases
                 No version control
                 Did we do that?




Stijn De Meyere @stijndm www.sken.be                 VILLAVISCOM
Solution


                 As much settings as possible in code




Stijn De Meyere @stijndm www.sken.be                    VILLAVISCOM
Features
                                       drupal.org/project/features




Stijn De Meyere @stijndm www.sken.be                                 VILLAVISCOM
Features


                 Allows you to export settings that live in the
                 database to code
                 A feature is a module, but more




Stijn De Meyere @stijndm www.sken.be                     VILLAVISCOM
Features: exportables
                 Strongarm (variables)
                 Permissions
                 Context
                 Imagecache
                 Views
                 Content (node + cck)
                 Set dependencies

Stijn De Meyere @stijndm www.sken.be     VILLAVISCOM
Features extra

                 drupal.org/project/features_extra
                 Taxonomy (vocabularies)
                 Nodequeue
                 Blocks



Stijn De Meyere @stijndm www.sken.be                 VILLAVISCOM
Fun and easy
                 Easy creation
                 Easy additions
                 Diff (drupal.org/project/diff)
                 Easy maintenance with Drush (drush features-
                 update [feature-name] (drupal.org/project/
                 drush)
                 Acts as a module (because it is a module)

Stijn De Meyere @stijndm www.sken.be                  VILLAVISCOM
Fun and easy

                 Except the first export
                 Oh, and don’t forget ...
                 What to do whith stuff already in code?




Stijn De Meyere @stijndm www.sken.be                   VILLAVISCOM
When is a module a
                         feature
                 When the .info file has one of these:
                 features[context][] =
                 features[variable][] =
                 features[user][] =
                 features[node][] =
                 features[views][] =


Stijn De Meyere @stijndm www.sken.be                     VILLAVISCOM
Why is this important



Stijn De Meyere @stijndm www.sken.be   VILLAVISCOM
Why is this important
                 All (most of) our settings are in code
                 Source control
                 Easy deployment (upload, revert)
                 Operate and support
                 Getting rid of thix (and minimizing
                 template.php)


Stijn De Meyere @stijndm www.sken.be                      VILLAVISCOM
Other stuff



Stijn De Meyere @stijndm www.sken.be                 VILLAVISCOM
Display Suite

                 Has features support, but not for individual
                 objects
                 Individual display and fields export
                 (settings are in variables)




Stijn De Meyere @stijndm www.sken.be                    VILLAVISCOM
Formatters


                 Custom CCK formatters, hand coded or with
                 the help of drupal.org/project/
                 custom_formatters




Stijn De Meyere @stijndm www.sken.be                VILLAVISCOM
Feature server
                                       fserver




Stijn De Meyere @stijndm www.sken.be             VILLAVISCOM
Fserver

                 code.developmentseed.org/featureserver/
                 node/163
                 Make you site act as a module/feature server
                 Update notifications
                 Automated release in combination with
                 Project module (drupal.org/project/project)


Stijn De Meyere @stijndm www.sken.be                   VILLAVISCOM
Fserver examples


                 fserver.nascom.be/
                 fserver.pronovix.net/




Stijn De Meyere @stijndm www.sken.be     VILLAVISCOM
Jump-starting a project



Stijn De Meyere @stijndm www.sken.be   VILLAVISCOM
Jump-starting a project

                 Define default modules
                 Define default features
                 Standardising workflow
                 Drush + Drush Make



Stijn De Meyere @stijndm www.sken.be       VILLAVISCOM
Questions?



Stijn De Meyere @stijndm www.sken.be                VILLAVISCOM

Más contenido relacionado

Destacado

Drupal 7 Tutorial: Features Module
Drupal 7 Tutorial: Features ModuleDrupal 7 Tutorial: Features Module
Drupal 7 Tutorial: Features ModuleAcquia
 
CMS web publishing solution for a travel related website using Drupal
CMS web publishing solution for a travel related website using DrupalCMS web publishing solution for a travel related website using Drupal
CMS web publishing solution for a travel related website using DrupalInfoBeans Technologies Ltd.
 
What is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarWhat is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarSuzanne Dergacheva
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8Wong Hoi Sing Edison
 
Developing a Communication & Knowledge management Strategy - my experience at...
Developing a Communication & Knowledge management Strategy - my experience at...Developing a Communication & Knowledge management Strategy - my experience at...
Developing a Communication & Knowledge management Strategy - my experience at...Jacqueline Nyagahima
 
Build Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal GardensBuild Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal GardensAcquia
 
The Wonderful World of Drupal 8 Multilingual
The Wonderful World of Drupal 8 MultilingualThe Wonderful World of Drupal 8 Multilingual
The Wonderful World of Drupal 8 MultilingualSuzanne Dergacheva
 
Magento vs osCommerce vs Opencart
Magento vs osCommerce vs OpencartMagento vs osCommerce vs Opencart
Magento vs osCommerce vs OpencartGrape5
 
Drupal 8 Configuration Management with Features
Drupal 8 Configuration Management with FeaturesDrupal 8 Configuration Management with Features
Drupal 8 Configuration Management with FeaturesNuvole
 
Content Staging in Drupal 8
Content Staging in Drupal 8Content Staging in Drupal 8
Content Staging in Drupal 8Dick Olsson
 
Business benefits of Drupal 8
Business benefits of Drupal 8Business benefits of Drupal 8
Business benefits of Drupal 8Mediacurrent
 
Webform and Drupal 8
Webform and Drupal 8Webform and Drupal 8
Webform and Drupal 8Philip Norton
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsKris Buytaert
 
Decoupled Drupal: What This Means for Developers
Decoupled Drupal: What This Means for DevelopersDecoupled Drupal: What This Means for Developers
Decoupled Drupal: What This Means for DevelopersAcquia
 
Drupal 8: The Foundation for Digital Experience and Digital Business
Drupal 8: The Foundation for Digital Experience and Digital BusinessDrupal 8: The Foundation for Digital Experience and Digital Business
Drupal 8: The Foundation for Digital Experience and Digital BusinessAcquia
 
Introduction to Drupal for Absolute Beginners
Introduction to Drupal for Absolute BeginnersIntroduction to Drupal for Absolute Beginners
Introduction to Drupal for Absolute Beginnerseverlearner
 
Drupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionDrupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionJeff Geerling
 

Destacado (19)

Drupal Commerce
Drupal CommerceDrupal Commerce
Drupal Commerce
 
Drupal 7 Tutorial: Features Module
Drupal 7 Tutorial: Features ModuleDrupal 7 Tutorial: Features Module
Drupal 7 Tutorial: Features Module
 
CMS web publishing solution for a travel related website using Drupal
CMS web publishing solution for a travel related website using DrupalCMS web publishing solution for a travel related website using Drupal
CMS web publishing solution for a travel related website using Drupal
 
What is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarWhat is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? Webinar
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
 
Developing a Communication & Knowledge management Strategy - my experience at...
Developing a Communication & Knowledge management Strategy - my experience at...Developing a Communication & Knowledge management Strategy - my experience at...
Developing a Communication & Knowledge management Strategy - my experience at...
 
Build Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal GardensBuild Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal Gardens
 
The Wonderful World of Drupal 8 Multilingual
The Wonderful World of Drupal 8 MultilingualThe Wonderful World of Drupal 8 Multilingual
The Wonderful World of Drupal 8 Multilingual
 
Magento vs osCommerce vs Opencart
Magento vs osCommerce vs OpencartMagento vs osCommerce vs Opencart
Magento vs osCommerce vs Opencart
 
Drupal 8 Configuration Management with Features
Drupal 8 Configuration Management with FeaturesDrupal 8 Configuration Management with Features
Drupal 8 Configuration Management with Features
 
Content Staging in Drupal 8
Content Staging in Drupal 8Content Staging in Drupal 8
Content Staging in Drupal 8
 
Business benefits of Drupal 8
Business benefits of Drupal 8Business benefits of Drupal 8
Business benefits of Drupal 8
 
Webform and Drupal 8
Webform and Drupal 8Webform and Drupal 8
Webform and Drupal 8
 
Spree commerce
Spree commerceSpree commerce
Spree commerce
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey Results
 
Decoupled Drupal: What This Means for Developers
Decoupled Drupal: What This Means for DevelopersDecoupled Drupal: What This Means for Developers
Decoupled Drupal: What This Means for Developers
 
Drupal 8: The Foundation for Digital Experience and Digital Business
Drupal 8: The Foundation for Digital Experience and Digital BusinessDrupal 8: The Foundation for Digital Experience and Digital Business
Drupal 8: The Foundation for Digital Experience and Digital Business
 
Introduction to Drupal for Absolute Beginners
Introduction to Drupal for Absolute BeginnersIntroduction to Drupal for Absolute Beginners
Introduction to Drupal for Absolute Beginners
 
Drupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionDrupal 8 - A Brief Introduction
Drupal 8 - A Brief Introduction
 

Similar a Introduction to Drupal features

2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.comMathieu Buffenoir
 
How the hell do I run Docker in production, and will it scale?
How the hell do I run Docker in production, and will it scale?How the hell do I run Docker in production, and will it scale?
How the hell do I run Docker in production, and will it scale?Daniël van Gils
 
DockerCon EU 2015: Trading Bitcoin with Docker
DockerCon EU 2015: Trading Bitcoin with DockerDockerCon EU 2015: Trading Bitcoin with Docker
DockerCon EU 2015: Trading Bitcoin with DockerDocker, Inc.
 
Agile project management in IT - Sebastian Sussmann
Agile project management in IT - Sebastian SussmannAgile project management in IT - Sebastian Sussmann
Agile project management in IT - Sebastian SussmannDevDay.org
 
How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?Katarzyna Hoffman
 
How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?Cloud 66
 
Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1benDesigning
 
ZCM update VAI Brainforce
ZCM update VAI BrainforceZCM update VAI Brainforce
ZCM update VAI BrainforceRoel van Bueren
 
A (very) opinionated guide to MSBuild and Project Files
A (very) opinionated guide to MSBuild and Project FilesA (very) opinionated guide to MSBuild and Project Files
A (very) opinionated guide to MSBuild and Project FilesDavid Wengier
 
Ideal Deployment In .NET World
Ideal Deployment In .NET WorldIdeal Deployment In .NET World
Ideal Deployment In .NET WorldDima Pasko
 
Making Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer PerspectiveMaking Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer PerspectiveC4Media
 
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)Avoiding the domino effect in our [micro]services (SOLID at macro-design level)
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)CodelyTV
 
Microservices: Improving the autonomy of our teams with Event-Driven Architec...
Microservices: Improving the autonomy of our teams with Event-Driven Architec...Microservices: Improving the autonomy of our teams with Event-Driven Architec...
Microservices: Improving the autonomy of our teams with Event-Driven Architec...CodelyTV
 
Power Tools For Browser-Based Design
Power Tools For Browser-Based DesignPower Tools For Browser-Based Design
Power Tools For Browser-Based DesignStephen Hay
 
Lessons Learned from running Docker in production
Lessons Learned from running Docker in productionLessons Learned from running Docker in production
Lessons Learned from running Docker in productionNicholas Dille
 
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...Concentrated Technology
 

Similar a Introduction to Drupal features (20)

2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com
 
How the hell do I run Docker in production, and will it scale?
How the hell do I run Docker in production, and will it scale?How the hell do I run Docker in production, and will it scale?
How the hell do I run Docker in production, and will it scale?
 
DockerCon EU 2015: Trading Bitcoin with Docker
DockerCon EU 2015: Trading Bitcoin with DockerDockerCon EU 2015: Trading Bitcoin with Docker
DockerCon EU 2015: Trading Bitcoin with Docker
 
Interaction Design with Wireframes
Interaction Design with WireframesInteraction Design with Wireframes
Interaction Design with Wireframes
 
Agile project management in IT - Sebastian Sussmann
Agile project management in IT - Sebastian SussmannAgile project management in IT - Sebastian Sussmann
Agile project management in IT - Sebastian Sussmann
 
Deploying w7
Deploying w7Deploying w7
Deploying w7
 
How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?
 
How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?How the hell do I run my microservices in production, and will it scale?
How the hell do I run my microservices in production, and will it scale?
 
Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1
 
ZCM update VAI Brainforce
ZCM update VAI BrainforceZCM update VAI Brainforce
ZCM update VAI Brainforce
 
A (very) opinionated guide to MSBuild and Project Files
A (very) opinionated guide to MSBuild and Project FilesA (very) opinionated guide to MSBuild and Project Files
A (very) opinionated guide to MSBuild and Project Files
 
Ideal Deployment In .NET World
Ideal Deployment In .NET WorldIdeal Deployment In .NET World
Ideal Deployment In .NET World
 
Making Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer PerspectiveMaking Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer Perspective
 
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)Avoiding the domino effect in our [micro]services (SOLID at macro-design level)
Avoiding the domino effect in our [micro]services (SOLID at macro-design level)
 
Microservices: Improving the autonomy of our teams with Event-Driven Architec...
Microservices: Improving the autonomy of our teams with Event-Driven Architec...Microservices: Improving the autonomy of our teams with Event-Driven Architec...
Microservices: Improving the autonomy of our teams with Event-Driven Architec...
 
Power Tools For Browser-Based Design
Power Tools For Browser-Based DesignPower Tools For Browser-Based Design
Power Tools For Browser-Based Design
 
Lessons Learned from running Docker in production
Lessons Learned from running Docker in productionLessons Learned from running Docker in production
Lessons Learned from running Docker in production
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...
TechMentor Fall, 2011 - Using Task Sequences to Completely Automate Windows 7...
 

Último

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 

Último (20)

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 

Introduction to Drupal features

  • 1. Using features/ exportables in production @drupalvolcon Antwerp April 20, 2010 Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 2. Stijn De Meyere freelance drupal dev as villaviscom.be working closely with nascom.be @stijndm sken.be Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 3. The problem Development local/online Staging Production Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 4. The problem Different databases No version control Did we do that? Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 5. Solution As much settings as possible in code Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 6. Features drupal.org/project/features Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 7. Features Allows you to export settings that live in the database to code A feature is a module, but more Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 8. Features: exportables Strongarm (variables) Permissions Context Imagecache Views Content (node + cck) Set dependencies Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 9. Features extra drupal.org/project/features_extra Taxonomy (vocabularies) Nodequeue Blocks Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 10. Fun and easy Easy creation Easy additions Diff (drupal.org/project/diff) Easy maintenance with Drush (drush features- update [feature-name] (drupal.org/project/ drush) Acts as a module (because it is a module) Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 11. Fun and easy Except the first export Oh, and don’t forget ... What to do whith stuff already in code? Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 12. When is a module a feature When the .info file has one of these: features[context][] = features[variable][] = features[user][] = features[node][] = features[views][] = Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 13. Why is this important Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 14. Why is this important All (most of) our settings are in code Source control Easy deployment (upload, revert) Operate and support Getting rid of thix (and minimizing template.php) Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 15. Other stuff Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 16. Display Suite Has features support, but not for individual objects Individual display and fields export (settings are in variables) Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 17. Formatters Custom CCK formatters, hand coded or with the help of drupal.org/project/ custom_formatters Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 18. Feature server fserver Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 19. Fserver code.developmentseed.org/featureserver/ node/163 Make you site act as a module/feature server Update notifications Automated release in combination with Project module (drupal.org/project/project) Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 20. Fserver examples fserver.nascom.be/ fserver.pronovix.net/ Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 21. Jump-starting a project Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 22. Jump-starting a project Define default modules Define default features Standardising workflow Drush + Drush Make Stijn De Meyere @stijndm www.sken.be VILLAVISCOM
  • 23. Questions? Stijn De Meyere @stijndm www.sken.be VILLAVISCOM