The proposed interface for RepositoryInformationProvider tentatively would have a single method:
public RepositoryInformation getRepositoryInformation(int tenantId); RepositoryInformation instance would hold data of the remote repository for the tenant, such as url, username, password, etc. On Wed, Apr 24, 2013 at 4:13 PM, Pradeep Fernando <[email protected]> wrote: > > Hi Isuru, > > On Wed, Apr 24, 2013 at 12:39 PM, Isuru Haththotuwa <[email protected]>wrote: > >> The main limitations with the current architecture related to >> generalizing the implementation are identified as follows: >> >> 1. The dependency on S2 based environment to get the information about >> the repositories for the tenants: >> >> A potential solution would be to abstract out the implementation for a >> repository information provider so that it can manage both the single >> repository (standard deployment), multiple repository (S2 / specialized >> deployment) and any other scenarios. >> >> 2. Usage of deployment synchronization messages in standard and S2 >> deployments: >> >> In the current implementation, the ADC will send a GroupManagementCommand >> (a deployment synchronization message) when there are updates in the >> repository. The standard Deployment Synchronization message has been >> programatically disabled from the git based deployment synchronizer >> component, which is an incorrect thing to do. >> >> It was decided to hold a separate discussion on this to come up with a >> proper architecture for usage of deployment synchronization messages in >> different environments (standard and S2 environment). >> > > please go ahead and schedule. > >> >> 3. Supporting ghost deployment of artifacts: >> >> Svn based deployment synchronizer supports ghost deployment of artifacts >> through svn partial checkouts. Git doesn't support partial checkouts, so >> this is a potential problem. There may be workarounds available, need to >> research on this. >> >> >> On Fri, Apr 19, 2013 at 6:21 PM, Isuru Haththotuwa <[email protected]>wrote: >> >>> The Git based Deployment Synchronizer developed for Stratos 2 supports >>> Git repositories per tenant, which is a significant difference from other >>> Deployment Synchronizers (SVN depsync, etc). Therefore Git Depsync has to >>> query a service to obtain the git repository URLs and the credentials for >>> the repositories for each tenant at run time. In the SVN depsync, a single >>> repo is used and it's defined in the carbon.xml. >>> >>> Because of this, it is not possible to use the Git Depsync to in a >>> normal worker manager separation, in a similar way as SVN Depsync. To use >>> it in the worker manager separated setup, we can either create another >>> component which is similar to SVN depsync which uses a single repository, >>> or else generalize this implementation so that it can be used in both S2 >>> scenario (with repos per tenant) and in normal worker manager separation >>> (single repo). >>> >>> Thoughts? >>> >>> >>> >>> >>> >>> > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > -- Thanks and Regards, Isuru H.
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
