On Tue, Jan 21, 2014 at 8:59 AM, Lakmal Warusawithana <[email protected]>wrote:
> > > > On Tue, Jan 21, 2014 at 8:55 AM, Afkham Azeez <[email protected]> wrote: > >> >> >> >> On Tue, Jan 21, 2014 at 8:50 AM, Lakmal Warusawithana <[email protected]>wrote: >> >>> >>> >>> >>> On Tue, Jan 21, 2014 at 8:44 AM, Afkham Azeez <[email protected]> wrote: >>> >>>> >>>> >>>> >>>> On Tue, Jan 21, 2014 at 8:29 AM, Lakmal Warusawithana >>>> <[email protected]>wrote: >>>> >>>>> Hi Azeez, >>>>> >>>>> I have mention the cartridge type in this thread previously, here i >>>>> list again for your convenience. >>>>> >>>>> >>>>> 1. Application Cartridge - (e.g wordpress, drupal .etc - which >>>>> does not required external artifact repo) >>>>> 2. Data cartridge (e.g. MySQL, Mongo .etc - which does not >>>>> required external artifact repo) >>>>> 3. Framework cartridge (e.g. PHP, Ruby, Node.js .etc - which >>>>> required external artifact repo) >>>>> 4. LB cartridge (e.g Stratos LB, HAProxy LB - which does not >>>>> required external artifact repo) >>>>> >>>>> Based on these type, Front end and backend functionalities may change. >>>>> for e.g. whether it required a artifact repo or not ..etc >>>>> >>>>> >>>> It is fine to categorize cartridges for documentation purposes, but >>>> does the Stratos framework need to have prior knowledge about these >>>> cartridges? Do we have to change anything to introduce a new cartridge >>>> type? >>>> >>>> >>> >>> Yes, with the knowledge currently we have, all cartridges will fit into >>> one of above categorize. >>> >> >> Are these types hardcoded? Is there a way to easily introduce a new type >> without any changes to the framework? >> > > > AFAIK, in current code yes. IsuruH please correct me if I am wrong. I > agree we need to come with proper extension mechanism, which we need to > figure out. > Yeah, If there is code like, if(type == appCatridge) doSomething; if (type == dataCatridge) doSomethingElse; it is not good. Since Stratos is a PaaS framework, ideally, it should not have a prerequisite knowledge about the catridges. Defining catridges/types & plugging them in should solely be at the discretion of the users who deploy the PaaS framework.
