Upload
timmillwood
View
638
Download
1
Embed Size (px)
Citation preview
Agenda❖ Introductions
❖ History of Deploy
❖What Deploy does in Drupal 8
❖ New concepts
➢Workspaces
➢Endpoints
❖ Use cases / Demo
❖ Installation
❖ Dependencies
❖ Questions?
Tim MillwoodAppnovation Technologies
❖ Started with Drupal: 2008
❖Worked at:
➢Mark Boulton Design
➢Acquia
➢Appnovation
Technologies
❖ Core & Contrib
maintainer
❖ Twitter: timmillwood
❖ D.O: timmillwood
Dick OlssonPfizer
❖ Started with Drupal: 2008
❖Worked at:
➢Node One
➢Al Jazeera
➢Pfizer
❖ Core contributor &
Contrib maintainer
❖ Twitter: dickolsson
❖ D.O: dixon_
Deploy: 2008Greg Dunlap❖ Original author of the
Drupal 6 version
❖ CMI initiative lead
❖ Then at Palantir
❖ Now at Lullabot
What Deploy does
❖Make all content entities revisionable
❖Replication of content between sites
❖Allows staging content
❖Using standard protocol for
replication
Workspaces
❖Collection of all site content
❖One site can have many workspaces
❖Similar to “site version” or “branch”
Multiversion
❖Endpoint concept will change
❖The URL to deploy from or two
❖Can be an external site
❖Can be defined via a plugin
EndpointsRelaxed
Installation❖ Drupal dependencies
➢Key Value Extensions
➢Multiversion
➢RELAXed Web Services
❖ External dependencies
➢ relaxedws/replicator
■ Composer Manager
■ `composer require relaxedws/replicator`
Multiversiond.o/project/multiversion
❖Extends revisions for content entities
❖Introduces workspaces
❖Revision tree
Relaxed Web Servicesd.o/project/relaxed
❖RESTful API for content entities
❖Replication.io protocol
❖Bi-directional replication
PHP Replicatorgithub.com/relaxedws/couchdb-
replicator
❖Implementation of standard protocol
❖CouchDB replicator written in PHP
❖A Google Summer of Code project
Google Summer of CodeAbout the GSoC project
❖Pick an org, pick a project, code!
❖Why Drupal?
❖My Project: Replicator
Replication process
❖Check source and target exists
❖Get peer information and generate ID
❖Read change log
❖Transfer missing revisions
CouchDB ClientOur contributions
❖CouchDB Client is a Doctrine project
❖PHP wrapper for CouchDB HTTP API
❖Supports streaming and other features
By the way...Decoupled Drupal is hot
❖Use Relaxed together with PouchDB
❖Decoupled front-end app
❖Offline capability
ReferencesLinks we’ve talked about
● https://www.drupal.org/project/key_value
● https://www.drupal.org/project/multiversion
● https://www.drupal.org/project/relaxed
● https://github.com/relaxedws/couchdb-replicator
● https://github.com/doctrine/couchdb-client
● https://www.youtube.com/user/timmillwood1/videos