Hi Sandaruwan, It's nice to see your interest on this project. Hope you have already read the detailed description I have given on the issue.
On high level we need to be able to do the following: *1. Puppet based solution:* - Push software updates of a cartridge to Puppet Master (might not need to automate). - Invoke the software update process via the Stratos API for a given application. - Stratos Manager could send a new event to trigger puppet agent in each instance to apply the updates. *2. Docker based solution* - Create a new docker image (with a new image id) for the cartridge with software updates (might not need to automate). - Invoke the software update process via the Stratos API for a given application. - Autoscaler can implement a new feature to bring down existing instances and create new instances with the new docker image id. *Important!* - In each scenario if updates are backward compatible, software update process should execute in phases, it should not bring down the entire cluster to apply the updates. If so the service will be unavailable for a certain time period. The idea is to apply the updates to set of members at a time. - If the updates are not backward compatible, we could make the entire cluster unavailable at once and apply the updates. - Member's state needs to be changed to a new state called "Updating" when applying the updates. Thanks On Sun, Mar 8, 2015 at 1:24 AM, Sandaruwan Nanayakkara <[email protected] > wrote: > Hi Imesh, > > I would like to work on developing this solution to Stratos and already > started > digging some details. Can you give some ideas on approaches you have on > this solution? > > Thank You > Sandaruwan Nanayakkara > -- Imesh Gunaratne Technical Lead, WSO2 Committer & PMC Member, Apache Stratos
