Thursday, June 28, 2012

Getting Started with WSO2 Appfactory VMware Image

In this post i am going to describe how to getting started with WSO2 Appfactory VMware image first mile stone  release.

WSO2 Appfactory

WSO2 Appfactory is a new solution that provides a convenient environment to manage Applications between different stages of development.For example each application developed in enterprise goes through so many stages (such as dev and QA)before going to live.While it is moving between stage it goes through so many reviews(such as security review and policy review) by different users and authorities.WSO2 Appfactory provides a convenient and easy to use environment to manage application between different stages.For more information on WSO2 Appfactory refer following blog.

WSO2 Appfactory VMware Image(M1 release)

WSO2 Appfactory team recently released their first appfactory milestone release as a VMware image.The image has following servers
1.WSO2 Appfactory
2.WSO2 Stratos Manager
3.WSO2 Application server (for each stage(dev and live))
4.SCM manager
All the servers are connected to a single LDAP and a remote  governance registry
Following diagram shows the deployment pattern that the image uses.

Now lets play with this image.

Prerequisites

1)VMware player should be installed in 64 bit machine with visualization enabled.
2)The host machine should have at least 4 GB memory and connected to Internet.

Getting Started with vm

1)Download the image from http://builder1.us1.wso2.org/~appfactory/releases/wso2appfactory-image-m1.zip
2)Unzip the downloaded file.
3)Start the VMware player.
4)Open the image as following





5)Edit the image setting as follow

Increase the memory to at least 2 GB(Recommended ~8GB)  and enable bridge network setting.
6)Start the image



use following credentials to login to the image.
User-name: appfactory
Password: appfactory

Note:
1.Change the /etc/hosts entry of vm.svn.appfactory.wso2.com to
 0.0.0.0 vm.svn.appfactory.wso2.com
2.Change keystore location of scm manager.
Open the carbon-auth.xml that can be found in /home/appfactory/final-zip/scm-server/repository/config.
Change the keystore location to /home/appfactory/final-zip/appfactory/wso2appfactory-1.0.0-SNAPSHOT/repository/resources/security/wso2carbon.jks

7)Start all the servers as back-end process.
Start Appfactory
cd /home/appfactory/final-zip/appfactory/wso2appfactory-1.0.0-SNAPSHOT/bin
nohup ./wso2server.sh &
Start Stratos Manager
cd  /home/appfactory/final-zip/cloud-manager/wso2stratos-manager-2.0.0-SNAPSHOT/bin
nohup ./wso2server.sh &
Start Dev cloud Application server
cd /home/appfactory/final-zip/dev-cloud/wso2as-5.0.0-SNAPSHOT/bin
nohup ./wso2server.sh &
Start Live cloud Application server
cd /home/appfactory/final-zip/live-cloud/wso2as-5.0.0-SNAPSHOT/bin
nohup ./wso2server.sh &
Start SCM Manager
cd /home/appfactory/final-zip/scm-server/bin
./scm-server start
8) Get IP address of the VM and enter following to /etc/hosts of the host.
In VM issue sudo ifconfig and get the IP.

172.16.9.130 vm.appfactory.wso2.com
172.16.9.130 vm.cloudmanager.appfactory.wso2.com
172.16.9.130 vm.dev-cloud.appserver.wso2.com
172.16.9.130 vm.live-cloud.appserver.wso2.com
172.16.9.130 vm.svn.appfactory.wso2.com

Add above entries to /etc/hosts of host machine.Here change the IP address as you got in previous step.
Wait for some time to start all the servers success fully then you can access the servers using following link in host machine browser.
Access Appfactory https://vm.appfactory.wso2.com:9443/appmgt/
Access Dev cloud Application server https://vm.dev-cloud.appserver.wso2.com:9445/
Access Live cloud Application server https://vm.live-cloud.appserver.wso2.com:9446/

Getting started with Appfactory

Now it is the time to create a application and deploy it to cloud.
1.Register a new user
 1.Access https://vm.appfactory.wso2.com:9443/appmgt/
 2.Register a user by clicking sign up button at left top of the sign in page as follow.
Fill the sign up form


Check your mail  and click the link sent by mail to validate the email address.


2.Create an App
 Login as created user
By clicking add apps create new app
After successful creation of application it will display the created SVN url.
 When ever user login he always see the list of applications with short details
When the user click on a app depending on the role of the user he will see different dashboards.
All the member can view the dev-view as follow.
The users in admin role can view admin view.The admin user can invite already registered users to application.

The user in devOps role can view devOps view.Here he can deploy the application to stages(dev or live).


3.Invite a user as a developer
Register a new user.
Invite him as a developer to created project.

4.Invite a user as devOps
Same way invite another user to devOps role.
5.Commit a CAR project into svn as developer
Check out the svn repository  displayed on dev-view as developer.
Add a car project  to the checkout directory(use following car project)
Commit the project


6.Login as devOps and you can
              -deploy to dev
              -deploy to live in dev-ops view.

7.Then finally you can check the relevant application server in cloud for the deployed application.
Login to https://vm.appfactory.wso2.com:9443/appmgt/
as the user who created application using user name as {user-name}@{application-id} and check the deployed car applications.


Thats all for milestone one release.I hope wso2 appfactory will come with more functionality with less distribution size in future releases.