Top Banner
Are You in the Right Are You in the Right Room? Room? Want to learn about Features module Are a beginner or intermediate drupaler who hasn't really used it yet Don't have an aversion to cute animals
34

Are You in the Right Room? Want to learn about Features module Are a beginner or intermediate drupaler who hasn't really used it yet Don't have an.

Jan 18, 2016

Download

Documents

Scarlett Hood
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Are You in the Right Are You in the Right Room?Room?

Want to learn about Features module Are a beginner or intermediate drupaler who hasn't really used it yet Don't have an aversion to cute animals

Page 2: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Features in the Real World... Features in the Real World... The Good, The Bad & The UglyThe Good, The Bad & The Ugly

Kristen PolCruzTech, LLC (Freelance)

Web, Drupal & [email protected]

Santa Cruz, CA

Page 3: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.
Page 4: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

What We'll CoverWhat We'll Cover What is the Features module Common use case How to create a feature module Reasons you should use it What can and cannot be saved What you should not save Pushing features to staging or live

Page 5: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

What is Features?What is Features?

“The features module enables the capture and management of features in Drupal. A feature is a collection of Drupal entities which taken together satisfy a certain use-case.”---- drupal.org/project/features

Page 6: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Clear as Mud?Clear as Mud?

Page 7: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

mycoolmodule.modulemycoolmodule.module

What is Features?What is Features?

Page 8: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Common Use CaseCommon Use CaseThe Old Way...The Old Way...

DEV SITE - Step #1: Configure your content typesDEV SITE - Step #1: Configure your content types

Page 9: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Common Use CaseCommon Use CaseThe Old Way...The Old Way...

DEV SITE - Step #2: Configure your viewsDEV SITE - Step #2: Configure your views

Page 10: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Common Use CaseCommon Use CaseThe Old Way...The Old Way...

DEV SITE - Step #3: Configure your imagecache DEV SITE - Step #3: Configure your imagecache presetspresets

Page 11: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Common Use CaseCommon Use CaseThe Old Way...The Old Way...

DEV SITE - Step #4: Configure your permissionsDEV SITE - Step #4: Configure your permissions

Page 12: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Common Use CaseCommon Use CaseThe Old Way...The Old Way...

DEV SITE - Step #5: Configure some other stuffDEV SITE - Step #5: Configure some other stuff

Page 13: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

How do I get all these changes How do I get all these changes to the staging and live site???to the staging and live site???

Step #1: Configure your content typesStep #1: Configure your content types

Step #2: Configure your viewsStep #2: Configure your views

Step #3: Configure your imagecache presetsStep #3: Configure your imagecache presets

Step #4: Configure your permissionsStep #4: Configure your permissions

Step #5: Configure some other stuffStep #5: Configure some other stuff

Step #6: Pray that you didn't screw anything upStep #6: Pray that you didn't screw anything up

Step #7: Figure out what is wrong and fix itStep #7: Figure out what is wrong and fix it

Page 14: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.
Page 15: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Step #1: Configure your content typesStep #1: Configure your content types

Step #2: Configure your viewsStep #2: Configure your views

Step #3: Configure your imagecache presetsStep #3: Configure your imagecache presets

Step #4: Configure your permissionsStep #4: Configure your permissions

Step #5: Configure some other stuffStep #5: Configure some other stuff

Step #6: Create your feature moduleStep #6: Create your feature module

Common Use CaseCommon Use CaseThe New Way...The New Way...

Page 16: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

How do I get all these changes How do I get all these changes to the staging and live site???to the staging and live site???

Step #1: Copy feature moduleStep #1: Copy feature module

Step #2: Enable feature moduleStep #2: Enable feature module

Step #3: Smile!Step #3: Smile!

Page 17: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Demo...Demo...10:45

Page 18: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

More Reasons...More Reasons...

11:00

Page 19: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Settings are Saved in CodeSettings are Saved in Code

Revisioning system See changes in module Tag revisions Revert back to old tags

Page 20: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Port your Module to Port your Module to Another SiteAnother Site

Reusable features Requires careful thought Beware of dependencies Watch out for conflicts

Page 21: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Share Between DevelopersShare Between Developers

Sharing is nice! Coordination is required Different feature modules for different developers

Page 22: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Push Changes to Push Changes to Staging & Live SitesStaging & Live Sites

Streamline deployment Keep sites in better sync Less downtime

Page 23: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Know If Something Know If Something Has ChangedHas Changed

Spying is good Diff module is your friend Catch problems before they break your site

Page 24: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

What Can Be Saved?What Can Be Saved?Anything* exportable or jiggered to work with features module...

CCK fields contexts content types dependencies imagecache presets menus menu links mini panels

panels permissions roles rules taxonomy variables (strongarm) views etc...

Page 25: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

What Cannot Be Saved?What Cannot Be Saved?

Anything already in code Content (nodes, comments, etc.) Blocks* Module settings that aren't exportable & aren't in variables table

* try features_extra module (in dev)

Page 26: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

What Should NOT Be Saved?What Should NOT Be Saved?

Do NOT save variables that change automatically in code or very BAD or very UGLY things may happen...

Page 27: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Push to Staging & LivePush to Staging & Live Make sure your feature modules are updated Check in code to repository & create tag Put staging/live site in maintenance mode Back up staging/live database Add/update any contrib modules if necessary Push code to staging/live site Revert feature modules on staging/live site Do additional configuration as needed Test! Take out of maintenance mode

Page 28: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

The GoodThe Good

Config in code Reusable features Better collaboration Easier deployment Track changes

Page 29: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

The BadThe Bad

Cannot save everything Can have a gazillion checkboxes UI is slow for large features Javascript-only UI

Page 30: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

The UglyThe Ugly Browser can crash after you have clicked a gazillion checkboxes Saving certain variables can cause ugly things to happen Site can crash if you update feature modules before contrib modules

11:15

Page 31: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

DrushDrush

drush features drush features-update [feature-module(s)] drush features-update-all drush features-revert [feature-module(s)] drush features-revert-all drush features-diff [feature-module(s)] drush features-export ...

EXTRA

Page 32: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Features HooksFeatures Hooks hook_features_api hook_features_export hook_features_export_alter hook_features_export_options hook_features_export_rebuild hook_features_export_render hook_features_export_revert hook_features_pipe_component_alter

EXTRA

Page 33: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Q&AQ&A

Page 34: Are You in the Right Room?  Want to learn about Features module  Are a beginner or intermediate drupaler who hasn't really used it yet  Don't have an.

Thank Thank you...you...