Jump to: navigation, search

Difference between revisions of "Poppy"

m (Design)
Line 4: Line 4:
  
 
== Overview ==
 
== Overview ==
 +
 +
Poppy provides CDNaaS for OpenStack:
 +
 +
* REST API for CDN service provisioning
 +
* Multi-tenant
 +
* Integrated with Keystone for Authentication
 +
* Integrated with Designate for dynamic CNAMEing
 +
* Support for CDN providers (Fastly, MaxCDN, CloudFront, Akamai, Edgecast)
  
 
OpenStack operators have many choices when incorporating a Content Delivery Network (CDN) into their infrastructure -- the CDN marketplace has both tried-and-true vendors and up-and-coming upstarts with innovative new features.
 
OpenStack operators have many choices when incorporating a Content Delivery Network (CDN) into their infrastructure -- the CDN marketplace has both tried-and-true vendors and up-and-coming upstarts with innovative new features.
Line 21: Line 29:
 
Poppy is open to the developer community and CDN vendors to collaborate and build this exciting new product.
 
Poppy is open to the developer community and CDN vendors to collaborate and build this exciting new product.
  
== Weekly Poppy team meeting ==
+
= Community =
 +
== Meetings ==
  
 
If you are interested in [[Poppy]], you can attend the public [[Meetings/Poppy|meetings]] held weekly in `#openstack-meeting-alt` on freenode.  
 
If you are interested in [[Poppy]], you can attend the public [[Meetings/Poppy|meetings]] held weekly in `#openstack-meeting-alt` on freenode.  
 +
 +
Agenda:  [[Meetings/Poppy|Meetings/Poppy]]
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 32: Line 43:
 
|}
 
|}
  
Please feel free to add items to the agenda below with your name and we will cover them.
 
  
== Resources ==
+
= IRC (Freenode) =
==== Freenode ====
 
 
The Poppy team hangs out in <code><nowiki>#openstack-poppy</nowiki></code> channel on Freenode. Feel free to stop in anytime to chat with us. The crew is always happy to hear your ideas and answer questions.  
 
The Poppy team hangs out in <code><nowiki>#openstack-poppy</nowiki></code> channel on Freenode. Feel free to stop in anytime to chat with us. The crew is always happy to hear your ideas and answer questions.  
  
 
If you run into a bug, please report it using our issue tracker.
 
If you run into a bug, please report it using our issue tracker.
  
==== Documentation ====
+
= Presentations =
* [https://poppy.readthedocs.org Poppy Developer Guide]
+
[[Poppy/Talks|Poppy/Talks]]
* [https://ask.openstack.org/en/questions/ Ask OpenStack (Community Q&A)]
+
 
 +
= Status =
 +
 
 +
[[Poppy/Incubation Application|Applying for incubation]]
 +
 
 +
[[Poppy/Incubation_Discussion|Incubation Discussion]]
 +
 
 +
= Source =
 +
[https://github.com/stackforge/poppy Stackforge GitHub]
 +
 
 +
[https://launchpad.net/poppy Launchpad]
 +
 
 +
[https://bugs.launchpad.net/poppy Bugs]
  
==== Talks ====
+
[http://poppy.readthedocs.org Python documentation]
  Openstack Summit - Paris (Nov 2014)
 
  pop.py: An Open API for CDN Provisioning.  [https://www.openstack.org/vote-paris/Presentation/pop-py-an-open-api-for-cdn-provisioning Proposal]
 
  <small>''Allan Metts (Director of Engineering - Rackspace) and Amit Gandhi (Senior Software Manager - Rackspace)''</small>
 
  
== Contributor guide ==
+
[http://wiki.openstack.org/GerritWorkflow Contributing]
''Note: The Poppy team is currently building out this section of the wiki with tons of content to help you get started, so some pages are missing or incomplete at the moment. If you cannot find the information that you are looking for, please drop us a line in IRC (#openstack-poppy) and we'll be happy to help.''
 
  
===== Developer quick start =====
 
* [[Poppy/Welcome New Contributors|Welcome new contributors]]
 
* [[Poppy/Contributing|Contributing]]
 
* [https://poppy.readthedocs.org Read the docs]
 
* [[Poppy/FAQ|Frequently asked questions]]
 
  
===== API specs =====
+
= Design =
 
* [http://docs.cloudcdn.apiary.io API v1.0] ("under development")
 
* [http://docs.cloudcdn.apiary.io API v1.0] ("under development")
 
===== Design =====
 
 
* [[Poppy/Use Cases|Poppy use cases]]
 
* [[Poppy/Use Cases|Poppy use cases]]
 
* [[Poppy/Server Architecture|Server architecture]]
 
* [[Poppy/Server Architecture|Server architecture]]
 +
* [[Poppy/FAQ|Frequently asked questions]]
 +
  
 
===== Quality engineering =====
 
===== Quality engineering =====
Line 82: Line 94:
 
* [[Poppy/Getting help|Getting help]]
 
* [[Poppy/Getting help|Getting help]]
  
===== Community =====
+
= CDN Providers =
* [https://webchat.freenode.net/?channels=openstack-poppy #openstack-poppy] (IRC)
 
* [[Meetings/Poppy|Meetings]]
 
* [https://launchpad.net/poppy/+milestones Milestones]
 
* [https://blueprints.launchpad.net/poppy Blueprints]
 
* [https://bugs.launchpad.net/poppy Bugs]
 
* [https://github.com/stackforge/poppy Code]
 
 
 
== CDN Providers ==
 
 
''We are always looking for new CDN providers to join Poppy.  Feel free to ping us on #openstack-poppy to chat how you can contribute, and read some of the Getting Started guides above.  We look forward to having you on board!''
 
''We are always looking for new CDN providers to join Poppy.  Feel free to ping us on #openstack-poppy to chat how you can contribute, and read some of the Getting Started guides above.  We look forward to having you on board!''
  

Revision as of 18:09, 17 October 2014

Summary

An OpenStack-related Stackforge project designed to make CDN services easier to consume with a generic vendor-neutral API.

Overview

Poppy provides CDNaaS for OpenStack:

  • REST API for CDN service provisioning
  • Multi-tenant
  • Integrated with Keystone for Authentication
  • Integrated with Designate for dynamic CNAMEing
  • Support for CDN providers (Fastly, MaxCDN, CloudFront, Akamai, Edgecast)

OpenStack operators have many choices when incorporating a Content Delivery Network (CDN) into their infrastructure -- the CDN marketplace has both tried-and-true vendors and up-and-coming upstarts with innovative new features.

But these vendors often have highly-customized and proprietary provisioning APIs. This can be problematic when an operator wishes to support multiple providers -- or swap out one vendor for another. And these challenges spill over to developers who become forced into codifying the CDN instructions for multiple vendors into their applications.

Poppy aims to solve these challenges. Written as a modular, vendor-neutral API, Poppy incorporates a driver-based model that wraps provisioning instructions for all CDN vendors that support it. Application developers can write their code once, and Poppy will handle all the requisite translations behind-the-scenes.


Primary Mission

Poppy's primary mission is to provide a generic and modular vendor-neutral API that wraps provisioning instructions for CDN vendors that support it.

Status

Poppy is in its early development phase. As the API is fleshed out, and basic vendor support is added, the product will mature.

Poppy is open to the developer community and CDN vendors to collaborate and build this exciting new product.

Community

Meetings

If you are interested in Poppy, you can attend the public meetings held weekly in `#openstack-meeting-alt` on freenode.

Agenda: Meetings/Poppy

Meeting Time Local Time
UTC 1900 Thursdays http://www.timeanddate.com/worldclock/fixedtime.html?msg=Poppy+Meeting&iso=20140807T15


IRC (Freenode)

The Poppy team hangs out in #openstack-poppy channel on Freenode. Feel free to stop in anytime to chat with us. The crew is always happy to hear your ideas and answer questions.

If you run into a bug, please report it using our issue tracker.

Presentations

Poppy/Talks

Status

Applying for incubation

Incubation Discussion

Source

Stackforge GitHub

Launchpad

Bugs

Python documentation

Contributing


Design


Quality engineering
Resources

CDN Providers

We are always looking for new CDN providers to join Poppy. Feel free to ping us on #openstack-poppy to chat how you can contribute, and read some of the Getting Started guides above. We look forward to having you on board!