eZ Content Staging <ul>Knock knock. Who’s there ? The REST of us ! </ul>Gaetano Giunta | eZ Global Partner Conference | Li...
What is content staging anyway?
Customer requirements <ul><li>Allow editors to edit many contents and preview (“stage” them) before pushing them to the site
For security purposes, no editor access at all to live site
Traditionally a “weak area” of eZ Publish: </li><ul><li>Preview works for one content at at time
The default model is to edit on the production server
Some content modifications can not be previewed (e.g. moving content, hiding it, etc...) </li></ul><li>New model: two sepa...
Everybody loves staging! <ul>Many use cases pop up once the basics are in place: <li>Chaining servers: editing > staging >...
Replicating content from one server to multiple installations
Sending partial replicas of content (a subtree of the whole content, or filtered-out contents)
Upcoming SlideShare
Loading in …5
×

E z Content Staging for the rest of us

1,812 views

Published on

Published in: Technology
  • Be the first to comment

E z Content Staging for the rest of us

  1. 1. eZ Content Staging <ul>Knock knock. Who’s there ? The REST of us ! </ul>Gaetano Giunta | eZ Global Partner Conference | Lisbon, 2012.2.9
  2. 2. What is content staging anyway?
  3. 3. Customer requirements <ul><li>Allow editors to edit many contents and preview (“stage” them) before pushing them to the site
  4. 4. For security purposes, no editor access at all to live site
  5. 5. Traditionally a “weak area” of eZ Publish: </li><ul><li>Preview works for one content at at time
  6. 6. The default model is to edit on the production server
  7. 7. Some content modifications can not be previewed (e.g. moving content, hiding it, etc...) </li></ul><li>New model: two separate servers </li></ul>
  8. 8. Everybody loves staging! <ul>Many use cases pop up once the basics are in place: <li>Chaining servers: editing > staging > production
  9. 9. Replicating content from one server to multiple installations
  10. 10. Sending partial replicas of content (a subtree of the whole content, or filtered-out contents)
  11. 11. Facilitate integration with external systems
  12. 12. ...I'm sure you have more </li></ul>
  13. 13. How it works <ul><li>All “change events” are registered on the source server - using the standard workflow triggers
  14. 14. Editors can view and pick change-events to be synced to remote server
  15. 15. All communication between the two servers is based on standard protocols: HTTP(S) and JSON </li><ul><li>Uses the ggwebservices extension as client
  16. 16. Basic auth supported (no oAuth yet) </li></ul><li>( for those living in a cave, this is called REST ) </li></ul>eZ ggws ezcs sync eZ ezcs [REST api] edit
  17. 17. Opening Pandora's box
  18. 18. But there is more... <ul>( for those living in a cave, this is called REST... ) ...and it is in fact a BETA implementation of the eZ REST API version 2.0 - the one that supports content creation, update and deletion <li>The server-part of the extension can be fully used stand-alone, queried by ajax or http clients
  19. 19. All manipulations of eZ Publish content are possible - except emptying trashcan :-) </li></ul>
  20. 20. The fine print: there are limitations too <ul><li>Content classes definition has to be identical on both servers
  21. 21. The same applies to sections definition, object states, etc...
  22. 22. Starting with a non-empty content tree to synchronize is not possible yet
  23. 23. Some datatypes are not fully supported (e.g. webshop-related ones)
  24. 24. And many more...
  25. 25. You are invited to play around with it and make sure the final version will fit your needs. Oh, and find bugs too </li></ul>
  26. 26. We want you
  27. 27. Where to find it <ul>Packages <li>Version 0.1: http://projects.ez.no/ezcontentstaging/downloads
  28. 28. ggwebservices extension: http://projects.ez.no/ggwebservices/downloads
  29. 29. Source code
  30. 30. https://github.com/gggeek/ezcontentstaging
  31. 31. ggwebservices extension: http://projects.ez.no/ggwebservices
  32. 32. Specs for the REST API as implemented
  33. 33. https://github.com/gggeek/ezcontentstaging/blob/master/doc/specs.ods
  34. 34. Get in touch Thanks to eZ partner ALTI
  35. 35. [email_address] http://www.alti.com/
  36. 36. @gggeek </li></ul>

×