For seller to contribute a list (if a template), s/he needs to make sure the template works in CloudStack, and the template should contain URL to the actual machine image. So when the listing is enabled by admin, user should be able to launch the VM immediately. There are two ways image can get into CloudStack instance: 1. Admin click on a button to import the image prior to listing is enabled. 2. Image gets imported when first user click on launch VM. So the template listing should be more than marketing message.
As for SaaS/PaaS listings, it will be up to the seller to specify what action user can take. At bare minimum, seller can provide a URL for its website. I like to hear some feedback from SaaS/PaaS vendors on how you see the user experience should look like. Good feedback on where to locate the listings. Jie -----Original Message----- From: Chiradeep Vittal [mailto:chiradeep.vit...@citrix.com] Sent: Wednesday, July 11, 2012 12:05 PM To: CloudStack DeveloperList Subject: Re: CloudStack Marketplace - need feedback On 7/11/12 11:11 AM, "Jie Feng" <jie.f...@citrix.com> wrote: >Thanks John for the feedback. I looked at OpenNebula marketplace >(thanks Sebastien for contributing the link), which is a marketplace of >virtual appliance metadata hosted by OpenNebula. In that scenario, >admin needs to go to this marketplace website to import virtual >appliances into its cloud. The only type of product supported is >virtual appliance. I proposed to have the marketplace source code being >part of an add-on feature admin can install with CloudStack (instead of >a global hosting >service) for two reasons: > >1. Simplify the experience for admins so that they don't need to go to >another place to get the listings This may be so, but it seems to me that those contributing their listings will have to A) sign or acknowledge the Apache CLA B) Grant the ASF copyright license for the contribution. This seems onerous and perhaps awkward. To me it seems that the contributions are nothing more than marketing messages ("this product does X function and it is great because it does Y) and metadata. Furthermore, there is no way for other marketplace participants to evaluate (rankings) these messages. A third point is that it is hard to keep these up-to-date as marketing messages change more often than there are releases. As John K said, it seems more appropriate to host these elsewhere. The thirdparty hosters can also add useful information such as rankings and versioning. >2. Enable admin to offer its own marketplace with support for both >templates and SaaS/PaaS It seems to me what is required is: A. A packaging format (zip of html/javascript+manifest for e.g.) that marketplace sellers can specify their wares B. A mechanism in CloudStack that can fetch a listing of these offerings from a URL C. A way for the admin to specify the above URL or URLs inside CloudStack so that the end-user marketplace UI can fetch these package manifests. > >The marketplace functionality source code will be in the CloudStack >source code tree. As for the listings, for simplicity, I was thinking >to create a folder in the source code tree to store seller listings, >just like how plugins are stored. For templates, the listing will only >store metadata, but not the actual binary of the templates. Listing >might include source code seller provides to do something after user >click on "acquire service" (Is this necessary?). John's idea about a >separate repository and feed is also interesting. I like to explore >more on the voting process. How is it going to work and who will be >voting? Can we follow the same process to qualify CloudStack plugins >for this marketplace listing? > >Jie > >-----Original Message----- >From: John Kinsella [mailto:j...@stratosec.co] >Sent: Tuesday, July 10, 2012 10:46 AM >To: <cloudstack-dev@incubator.apache.org> >Subject: Re: CloudStack Marketplace - need feedback > >I'm wondering if you would want that code running on each CS >installation, or maybe have just a link/iframe out to a marketplace >running somewhere else? That would allow much easier management of the >content - one scenario that comes to mind is if a seller's product is >compromised or determined to be malicious, you'd want to pull it from >the marketplace ASAP. > >Maybe a compromise between the two - centrally serve an xml/binary feed >that the CS install can grab/use, something like a yum/apt/etc >repository. (note - I'm not suggesting add dependency functionality :) >) > >I don't think you want each potential seller contributing >xml/graphics/code, or checking this into the source tree? I'd think >what you want in the src tree is code for the client side, and maybe a >web portal (I wouldn't want us to spend a ton of time coding this up >unless this is a core feature moving forward): > >* Have a web UI where sellers can register/login and define/modify >their products >* Before products are listed in the feed, there's some sort of voting >process (maybe moderate each seller until they've "proven" themselves >over a release or two?) >* Daily cron process generates the feed, places it somewhere accessible >via http > >John > >On Jul 9, 2012, at 10:32 AM, Jie Feng wrote: > >> I would love to get folks' feedback on proposing a subproject under >>Apache CloudStack, called MarketPlace. There are many ISVs, SaaS/PaaS >>vendors providing value-added products and services on IaaS clouds. >>The goal is to make their products more visible and easier to consume >>by anyone who deploys CloudStack. It would also allow cloud admins to >>offer their own marketplace to their users to get access to a variety >>of products and services that can be used with CloudStack. >> >> Here is the idea: >> * The subproject (let's call it MarketPlace for now) will >>consist of source code for the CloudStack Marketplace user UI main >>page; a product/service listing template; an admin portal; and a >>repository of listing. Both the source code and listings will be part >>of the CloudStack Marketplace distribution. >> * Each listing will contain information about the >>product/service, the user action needed to use the product/service, >>and instructions for the admin to set up the product/service. Listings >>are contributed by sellers (i.e. ISVs, SaaS/PaaS vendors). To include >>a listing in the CloudStack MarketPlace distribution, the seller needs >>to place its XML files, graphics and code in the designated folder >>within the subproject. >> * When CloudStack is installed, the admin will have a >>choice to install MarketPlace including all the pre-packaged listings. >>The admin can then choose which listings to enable for the users to see. >>The admin may need to follow seller instructions to get >>products/services set up. >> * This is not a global marketplace for every CloudStack >>user. Each CloudStack instance will have its own marketplace if the >>admin chooses to install it. After CloudStack is installed, the admin >>should have the capability to add, delete, enable, disable, and update >>the listings. If a seller wants to add or update it listing for a >>specific CloudStack instance, s/he needs to go through the admin. >> >> To keep it simple in the first phase, I propose to support two types >>of listings only: SaaS/PaaS services and free image templates. Even >>though the image template is free, the seller can still enforce >>licensing and charge a fee within the application itself. To minimize >>product/service set up effort, in the case of image template, seller >>should provide a publicly accessible URL from which the image template can be >>downloaded. >> >> Future phases could include functions such as a seller listing >>publishing portal, listing approval workflow, and usage reporting, etc. >> >> Jie > >