robo tize your local drupal 8 development
TRANSCRIPT
Robo-tize Drupal Development
Intros
Joe Stewart
Presenter Photo
@joevstewart
/in/joevstewart
https://www.drupal.org/u/joestewart
Has been participating in open source since 2000. Developing and supporting Drupal for over 10 years.
Had a great experience as the 2016 Drupalcon New Orleans DevOps Track Chair.
DevOps Lead
2
About
3
Mediacurrent helps organizations build highly impactful, elegantly designed Drupal websites that achieve the strategic results they need.
● Single-source provider● Specializing in Drupal since 2007● Headquartered in Atlanta, GA● Team of 60+ Drupal Experts including
development, design and strategy● Clients include: Large Enterprise and
high-profile global brands
4
Interior Page (/w large graphic)
robo.li
5
● git● phpunit● ssh/rsync● File manipulation● Shell execution● Much more
Included Tasks
6
● OOP PHP● Composer dependency● PSR-4: Autoloader● Logger● Annotated Commands
Features
7
● Drupal site installation● Drush site-install command● boedah/robo-drush from Packagist● Robo structure● Create task
Outline
8
Using Drush
● Flexible options
Site Install
9
Using Robo
● Same options
Site Install
10
Comparison
Site Install
11
Using Robo
● Command shown● Elapsed time shown
Site Install
12
● RoboFile extends Robo Tasks● loadTasks trait● Methods are commands
RoboFile.php
13
● camelCase() is camel:case command● Chained methods● Options array● Method header● “Stack” Tasks
Robo conventions
14
Help Output
15
Help Output
16
Help Output
17
Help Output
18
Tasks● src/loadTasks - trait● Task names follow PSR4
Robo Structure
19
Site Install Task
20
● Returns Result object● Options use variables
Site Install Task
21
● PHP● PSR4 Autoloader● Extendable● Reusable
Robo Benefits
● Error handling● Logger● Create our own library● Assemble steps together● Drush 9
22
● PSR4 Autoloader
Benefits
@Mediacurrent Mediacurrent.com
Thank you!
slideshare.net/mediacurrent