Hi all, Update on the current progress.
- Tested all the applications in mock IaaS with two separate tenants. - Removed UUID and tenantId from the Bean classes so that the UUID and the tenantId is not visible to the end user via UI. - Modified integration tests to assert each and every artifact with the use of separate resources. - Fixed issued found when updating and deleting artifacts. - Modified log messages to add UUID to display in logs and remove UUID from response messages. Remaining tasks. - Problem when adding a cartridgeGroup with a name of a subgroup in another cartridge group - IaaS level testing (Kubernetes, OpenStack and EC2) - Testing via CLI Please find the test coverage document[1] which includes the tests which have done so far. [1] - https://docs.google.com/spreadsheets/d/1Om84yXP7qtnFhO_z36mqQPHXMm8-lieuVczQtAQWsiU/edit#gid=1196699162 Thanks. On Fri, Jul 24, 2015 at 6:15 PM, Dinithi De Silva <dinit...@wso2.com> wrote: > Hi, > > Update on the current progress. > > - Now we can deploy the same application in two separate tenants > without any issues. > - We have written an integration test to check this tenant isolation > functionality, using the single-group-app and it was passed successfully. > We will now modify this integration test to assert each and every artifact > and will be using separate resources for this test. (Auto scaling > functionality will be tested manually) > - Also we need to modify the UI to remove the UUID from displaying. > > Thanks. > > On Fri, Jul 17, 2015 at 8:31 PM, Imesh Gunaratne <im...@apache.org> wrote: > >> Great!! Thanks for the update Gayan & Dinithi!! >> >> On Fri, Jul 17, 2015 at 8:42 PM, Dinithi De Silva <dinit...@wso2.com> >> wrote: >> >>> Hi, >>> >>> We have successfully tested with a complex application (with four >>> cartridges and one cartridge group) by deploying and undeploying it in two >>> separate tenants. >>> Now I am writing an integration test to verify this functionality. >>> >>> Thanks >>> >>> On Thu, Jul 16, 2015 at 12:04 PM, Dinithi De Silva <dinit...@wso2.com> >>> wrote: >>> >>>> Hi Imesh, >>>> >>>> Up to now we were able to deploy the single-cartridge-app, >>>> single-group-app successfully. And also we have tested with a complex >>>> application with four cartridges and one cartridge group. >>>> Now we are in the process of testing the other complex applications >>>> with this implementation and fixing small issues found when deploying >>>> complex applications. >>>> >>>> We can implement an integration test as soon as these fixes are done. >>>> >>>> Thanks. >>>> >>>> >>>> On Thu, Jul 16, 2015 at 11:49 AM, Gayan Gunarathne <gay...@wso2.com> >>>> wrote: >>>> >>>>> Hi Imesh, >>>>> >>>>> We generate the cluster ID as "applicationUuid + "." + alias + "." + >>>>> cartridgeType + ".domain" and member id is already we generated as the >>>>> UUID. Because of that we don't need to change the cartridge agent logic as >>>>> we can distinguished the instances based on the unique member id and >>>>> cluster id.But still we have changes some events in the messaging module >>>>> to >>>>> incorporate the tenant isolation. >>>>> eg : ServiceCreatedEvent we have to include the serviceUuid >>>>> >>>>> Now we are almost complete the implementation and now we are doing the >>>>> testing with complex applications. >>>>> @Dinithi, please include the test we have done so far. >>>>> >>>>> Yeah.we can include a integration test to verify the tenant isolation >>>>> functionality. >>>>> >>>>> Thanks, >>>>> Gayan >>>>> >>>>> On Thu, Jul 16, 2015 at 10:44 AM, Imesh Gunaratne <im...@apache.org> >>>>> wrote: >>>>> >>>>>> Great work Gayan & Dinithi!! I guess this also includes changes to >>>>>> the messaging component for adding UUIDs for events. >>>>>> >>>>>> Shall we try to implement a quick integration test to verify this >>>>>> functionality (may be on high level, not everything)? >>>>>> >>>>>> Thanks >>>>>> >>>>>> On Tue, Jul 14, 2015 at 9:43 PM, Gayan Gunarathne <gay...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> Hi All, >>>>>>> >>>>>>> Now we have modified the followings artifacts with the UUID in the >>>>>>> tenant isolation implementation. >>>>>>> >>>>>>> Network Partitions >>>>>>> Deployment Policies >>>>>>> Autoscaling Policies >>>>>>> Application Policies >>>>>>> Cartridges >>>>>>> Cartridge Groups >>>>>>> Kubernetes Clusters >>>>>>> Applicatiion >>>>>>> >>>>>>> Now integration tests are passed for application >>>>>>> deployment/un-deployement. All the modifications are available in the >>>>>>> tenant-isolation branch. >>>>>>> >>>>>>> Following are the identified pending items. >>>>>>> >>>>>>> 1. Python Agent related changes with UUID >>>>>>> 2. Stratos console UI changes. >>>>>>> 2. Testing with tenant wise application deployement/undeployment in >>>>>>> different IaaS >>>>>>> 3. Testing with the all other samples available >>>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Gayan >>>>>>> >>>>>>> >>>>>>> On Mon, Jul 6, 2015 at 5:07 PM, Gayan Gunarathne <gay...@wso2.com> >>>>>>> wrote: >>>>>>> >>>>>>>> >>>>>>>> On Mon, Jul 6, 2015 at 4:04 PM, Imesh Gunaratne <im...@apache.org> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Gayan: Shall we call it "tenant-isolation"? >>>>>>>>> >>>>>>>> +1 >>>>>>>> >>>>>>>> >>>>>>>>> On Mon, Jul 6, 2015 at 2:22 PM, Dinithi De Silva < >>>>>>>>> dinit...@wso2.com> wrote: >>>>>>>>> >>>>>>>>>> Thanks Gayan. Now I am working on this new branch. >>>>>>>>>> >>>>>>>>>> On Mon, Jul 6, 2015 at 2:15 PM, Gayan Gunarathne <gay...@wso2.com >>>>>>>>>> > wrote: >>>>>>>>>> >>>>>>>>>>> Created new branch "tenantisolation" for this. >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Gayan >>>>>>>>>>> >>>>>>>>>>> On Mon, Jul 6, 2015 at 1:41 PM, Imesh Gunaratne < >>>>>>>>>>> im...@apache.org> wrote: >>>>>>>>>>> >>>>>>>>>>>> Yes Gayan, we could create a new branch for this. >>>>>>>>>>>> >>>>>>>>>>>> On Mon, Jul 6, 2015 at 11:23 AM, Gayan Gunarathne < >>>>>>>>>>>> gay...@wso2.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> +1. >>>>>>>>>>>>> >>>>>>>>>>>>> Since we are planing to implement this for 4.1.1 minor >>>>>>>>>>>>> release, shall we do this implementation in a new branch? >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks, >>>>>>>>>>>>> Gayan >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Tue, Jun 23, 2015 at 2:05 PM, Imesh Gunaratne < >>>>>>>>>>>>> im...@apache.org> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> +1 Thanks for contributing to this Dinithi! >>>>>>>>>>>>>> >>>>>>>>>>>>>> Few months back Lasindu did a major feature implementation >>>>>>>>>>>>>> for this and due to merge conflicts found with Composite >>>>>>>>>>>>>> Application Model >>>>>>>>>>>>>> and Kubernetes feature implementation we had to drop the entire >>>>>>>>>>>>>> branch. >>>>>>>>>>>>>> >>>>>>>>>>>>>> In this effort may be we could do an initial implementation >>>>>>>>>>>>>> to isolate the artifacts on the API level and on a second stage >>>>>>>>>>>>>> we could >>>>>>>>>>>>>> implement another feature to isolate events sent to message >>>>>>>>>>>>>> broker and >>>>>>>>>>>>>> isolate data stored in the registry/database. >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Mon, Jun 22, 2015 at 11:53 AM, Dinithi De Silva < >>>>>>>>>>>>>> dinit...@wso2.com> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> In the current Stratos implementation, the artifacts which >>>>>>>>>>>>>>> are created by a particular tenant is visible to all other >>>>>>>>>>>>>>> tenants. I am >>>>>>>>>>>>>>> going to implement the tenant isolation mechanism, so that the >>>>>>>>>>>>>>> artifacts >>>>>>>>>>>>>>> will be only visible to the tenant which has created the >>>>>>>>>>>>>>> artifacts. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> In order to implement this, the uuid attribute will be >>>>>>>>>>>>>>> introduced as the global identifier and the tenantId attribute >>>>>>>>>>>>>>> will remain >>>>>>>>>>>>>>> as the tenant identifier. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> As a further modification, we can include the "isPublic" >>>>>>>>>>>>>>> property to make an artifact visible to all other tenants. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Note: >>>>>>>>>>>>>>> We can include this implementation in Stratos 4.1.1 minor >>>>>>>>>>>>>>> release. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thanks. >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> *Dinithi De Silva* >>>>>>>>>>>>>>> Associate Software Engineer, WSO2 Inc. >>>>>>>>>>>>>>> m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com >>>>>>>>>>>>>>> | a: #20, Palm Grove, Colombo 03 >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> Imesh Gunaratne >>>>>>>>>>>>>> >>>>>>>>>>>>>> Senior Technical Lead, WSO2 >>>>>>>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> >>>>>>>>>>>>> Gayan Gunarathne >>>>>>>>>>>>> Technical Lead, WSO2 Inc. (http://wso2.com) >>>>>>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>>>>>> email : gay...@wso2.com | mobile : +94 766819985 >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Imesh Gunaratne >>>>>>>>>>>> >>>>>>>>>>>> Senior Technical Lead, WSO2 >>>>>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> >>>>>>>>>>> Gayan Gunarathne >>>>>>>>>>> Technical Lead, WSO2 Inc. (http://wso2.com) >>>>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>>>> email : gay...@wso2.com | mobile : +94 766819985 >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> *Dinithi De Silva* >>>>>>>>>> Associate Software Engineer, WSO2 Inc. >>>>>>>>>> m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com >>>>>>>>>> | a: #20, Palm Grove, Colombo 03 >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Imesh Gunaratne >>>>>>>>> >>>>>>>>> Senior Technical Lead, WSO2 >>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> Gayan Gunarathne >>>>>>>> Technical Lead, WSO2 Inc. (http://wso2.com) >>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>> email : gay...@wso2.com | mobile : +94 766819985 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> Gayan Gunarathne >>>>>>> Technical Lead, WSO2 Inc. (http://wso2.com) >>>>>>> Committer & PMC Member, Apache Stratos >>>>>>> email : gay...@wso2.com | mobile : +94 766819985 >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Imesh Gunaratne >>>>>> >>>>>> Senior Technical Lead, WSO2 >>>>>> Committer & PMC Member, Apache Stratos >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Gayan Gunarathne >>>>> Technical Lead, WSO2 Inc. (http://wso2.com) >>>>> Committer & PMC Member, Apache Stratos >>>>> email : gay...@wso2.com | mobile : +94 766819985 >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> *Dinithi De Silva* >>>> Associate Software Engineer, WSO2 Inc. >>>> m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com >>>> | a: #20, Palm Grove, Colombo 03 >>>> >>> >>> >>> >>> -- >>> *Dinithi De Silva* >>> Associate Software Engineer, WSO2 Inc. >>> m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com >>> | a: #20, Palm Grove, Colombo 03 >>> >> >> >> >> -- >> Imesh Gunaratne >> >> Senior Technical Lead, WSO2 >> Committer & PMC Member, Apache Stratos >> > > > > -- > *Dinithi De Silva* > Associate Software Engineer, WSO2 Inc. > m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com > | a: #20, Palm Grove, Colombo 03 > -- *Dinithi De Silva* Associate Software Engineer, WSO2 Inc. m:+94716667655 | e:dinit...@wso2.com | w: www.wso2.com | a: #20, Palm Grove, Colombo 03