Hi Samisa,

On Tue, Jul 16, 2013 at 5:33 AM, Samisa Abeysinghe <[email protected]> wrote:

> How about mapping to tiers the tenant has subscribed to?
>

We can have separate build farms for different tiers. We need to discuss
aPaaS pricing. How many builds per tier and so on.

thanks,
dimuthu


>
> On Fri, Jul 12, 2013 at 7:06 PM, Ramith Jayasinghe <[email protected]>wrote:
>
>> Hi,
>>  I have been looking at possible ways to achieve the $subject.
>>
>>  And here's one possible way of achieving this.
>>
>>  Basis of this approach is to deploy jenkins as a web application on our
>> Application Server ( -- I tested this) [1].
>>
>>  There couple aspects we need to think about :
>>   1. Tenant Creation
>>   2. Authentication and authorization
>>   3. Building Jobs.
>>   4. Load balancing and HA
>> *
>> Tenant Creation*
>>  Now suppose user creates a organization/tenant xyz on Appfactory.
>>  Appfactory could either :
>>   1. Deploy jenkins onto the xyz tenant
>>   Or
>>   2. Deploy jenkins on super tenant. With this approach we have to rename
>> jenkins.war (possibly to xyz.war) to make this jenkins instance different
>> from others.
>>
>>  With either way each jenkins instance needs to be provided with a its
>> own JENKINS_HOME.
>>  This can be achieved via adding a context.xml file with content similar
>> to following to jenkins.war distribution ( specifically into META-INF)
>>
>> <Context>
>>       <Environment name="JENKINS_HOME" value="${J_HOMES}/xyz"
>> type="java.lang.String"/>
>> </Context>
>>
>> $J_HOMES refers to a directory in file system and supplied as a system
>> variable during the server start up etc.
>> 'xyz' sub-directory has to be created and filled with configurations,
>> plugins etc before deploying the webapp.
>>
>> Configuration that needs to go into this folder are typically related to
>> maven,jdks, plugins  etc. ( can puppet be of use to automate all this?)
>> *
>> **Note:* I already came across an issue where content in conext.xml is
>> not visible to jenkins.war when deployed onto a tenant ( maybe a bug in AS
>> ?)
>> *
>> Authentication & Authorization*
>>
>>  We could use Jenkins LDAP (may be with some modifications) plugin based
>> on the requirement or we might have to change current authentication plugin
>> [2] we wrote for jenkins.
>>  Further, I think with above approach we still can use the role strategy
>> plugin [3] that's currently in use.
>> *
>> Building Jobs*
>>
>> Master nodes ( - deployed on AS) should not run build jobs.
>> Instead these should be delegated to a pool of jenkins slaves [4][5]. We
>> need to figure out a scheme on how to do this.
>>
>> *Load balancing and HA *
>>
>> Deploying and testing jenkins on a AS cluster should be the starting
>> point to figure out weather this whole approach would scale.
>>
>>
>> [1] https://wiki.jenkins-ci.org/display/JENKINS/Tomcat
>> [2]
>> https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.1.0/products/appfactory/1.0.0/modules/webapps/appfactory-authentication-plugin
>> [3]
>> https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.1.0/dependencies/jenkins-ci/role-strategy-plugin/1.1.3-wso2v2
>> [4] https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds
>> [5]
>> https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds#Distributedbuilds-RunningMultipleSlavesontheSameMachine
>>
>>
>> --
>> Ramith Jayasinghe
>> Technical Lead
>> WSO2 Inc., http://wso2.com
>> lean.enterprise.middleware
>>
>> E: [email protected]
>>
>>
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
>
> Thanks,
> Samisa...
>
> Samisa Abeysinghe
> VP Engineering
> WSO2 Inc.
> http://wso2.com
> http://wso2.org
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 
Dimuthu Leelarathne
Architect & Product Lead of App Factory

WSO2, Inc. (http://wso2.com)
email: [email protected]
Mobile : 0773661935

Lean . Enterprise . Middleware
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to