Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

23
Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro

Transcript of Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Page 1: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Everything is

(or should be planned as)

a distribution!

Bryan Ollendyke@btopro

Page 2: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Dear Edtech,ELMSLN is hereAnd it wants to replace your vendors.Bryan Ollendyke@btopro

Wed you should check out..

Page 3: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

@btopro•Bryan Ollendyke

•Happy father of two, husband of one

•Penn State, College of Arts and Architecture’s e-Learning Institute

•Drupal developer since ’07

•Commits to 76 d.o. projects–~2k commits (github way more)

•More popular contrib–Tinynav

–profiler_builder

–outline_designer

–replicate_ui

•Constantly automating job out of existence

@btopro from twitter

Page 4: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Agenda

•What is a distribution vs Install profile

•Why you need Profiler Builder

•Ways to manage lots of profiles / distributions

•Turning a site into a profile

•Random examples

•Q&A

Page 5: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Skip ahead

•http://elmsln.org– All things ELMS Learning Network– Shameless plug

•http://drupal.psu.edu/– lots of great articles– Shameless plug for PSU’s community

•https://drupal.org/project/drupalorg_drush•http://drupal.org/project/profiler_builder•http://drupal.org/project/dslm•http://drupal.org/project/galaxy

(you all have devices)

Page 6: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

How can I play?ELMSLN

http://github.com/project/elmsln

http://github.com/project/elmsln-vagrant

–How the team collaborates

Nittany

http://github.com/project/nittany

http://github.com/project/nittany-vagrant

–Recommended distribution for PSU Drupal usage

Vagrant and Vagrant logo © 2013-14 HashiCorp

Page 7: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

What is an install profile?

•Drupal Flavor / install routine•Enable these modules

•Use this theme

•Run this php

•What can I include?•Custom modules / features

•Custom themes

•Custom libraries

Page 8: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

install profile

Page 9: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

What is a Distribution•Drush / “Make” files

•This defines everything that should be downloaded

•Install profile•And all the stuff in it

•Contrib Modules

•Contrib Themes

•Libraries•From d.o. and non-d.o. sources

•Patches

Page 10: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Distribution

Page 11: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Distributions on d.o

•Everything must be GPL v2•Leads to licensing hell

•External libraries this can be problematic

•External libraries must clear a “packaging whitelist”

•Some modules include .make files (which it spiders)

•I package everything on github nicely•Drupal.org there’s manual work to run my distros

Page 12: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Think of every site as a new distribution

Page 13: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

{what the last talk was saying!}

Name space everything

Page 14: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

View displays / pages / feedsFeeds

Feature namesField names

context / panel names

ANY machine names of any kind!

Page 15: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Profiler Builder

https://drupal.org/project/profiler_builder

Page 16: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Profiler Builder

•Build out site, then make it a profile•Looks at what’s enabled and creates install profile

•Reverts all enabled features automatically

•Robust API for adding and excluding items from builds

•Sniffs out patches / libraries and auto adds them to make files!

•Produces multiple make files

•Make file, make file specific to d.o., make file for local development

•Drush support

•Cooks, cleans and spit shines your shoes

Page 17: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Also.. Profiler Builder

•Always get dev

Page 18: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Ways to managelots of profiles / distributions

Page 19: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

DSLM

•http://drupal.org/project/dslm

•Drush Sym-link manager

•Alternate method of

–Multisite management

–Install profile management

•Support for multiple versions of Drupal (minor and major)

Page 20: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

DSLM

Graphic credit Penn State, CC SA 4.0

Page 21: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Galaxy

•“A Distribution of Distributions” - @nicxvan

•DSLM for multiple Drupal “Stacks” in same package

–APC optimization

•Cleaner devops to repo management when lots of repos involved

•Structure similar to D8

–core directory you no touch!

•Symlinks help abstract config from code

•Supports more then just Drupal

Page 22: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Demo

#elmsln#edtech#drupal@psu_elms@btopro

Photo credit Bryan Ollendyke, CC SA 4.0

Page 23: Everything is (or should be planned as) a distribution! Bryan Ollendyke @btopro.

Dear Edtech,ELMSLN is hereAnd it wants to replace your vendors.Bryan Ollendyke@btopro

REMEMBER WED-NESS-DAY