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