Creating a Personal Webvoyáge Development Environment

18
Creating a Personal Webvoyáge Development Environment Using VMware Chris Delis, CARLI

description

Creating a Personal Webvoyáge Development Environment. Using VMware Chris Delis, CARLI. Why might you need a personal development environment?. Multiple Developer Environment. Fundamental Issue With Multiple Developer Environments. - PowerPoint PPT Presentation

Transcript of Creating a Personal Webvoyáge Development Environment

Page 1: Creating a Personal Webvoyáge Development Environment

Creating a Personal Webvoyáge Development Environment

Using VMware

Chris Delis, CARLI

Page 2: Creating a Personal Webvoyáge Development Environment

Why might you need a personal development environment?

Page 3: Creating a Personal Webvoyáge Development Environment

Multiple Developer Environment

Page 4: Creating a Personal Webvoyáge Development Environment

Fundamental Issue With Multiple Developer Environments

One set of files, but more than one set of changes need to be made.

E.g., two developers working on separate features which share common files.

Page 5: Creating a Personal Webvoyáge Development Environment

Suboptimal “solution”

Coordinate efforts by word of mouth (in person, email, etc.) and “take turns” editing the same files.

Page 6: Creating a Personal Webvoyáge Development Environment

Suboptimal “solution”

Disadvantages:• Slows down development• Difficult to track changes between efforts

(who made which changes?)

Page 7: Creating a Personal Webvoyáge Development Environment

Solution is source control.

Source control software, such as subversion, is designed to help solve these problems.

But this solution depends on allowing each developer their own personal development environment.

Page 8: Creating a Personal Webvoyáge Development Environment

Where should I create these personal development environments?

• On the same server• On your own machine (laptop) using

virtualization software (VMware)

Page 9: Creating a Personal Webvoyáge Development Environment

On the same server

Server

Tomcat Tomcat

vwebvvwebv VxWSVxWS

Page 10: Creating a Personal Webvoyáge Development Environment

On the same server

Advantages:

• No additional hardware or software needed• No need to setup additional OS, Tomcat, and

Java

Page 11: Creating a Personal Webvoyáge Development Environment

On the same server

Disadvantages:

• Need to modify Tomcat environment for each additional development branch of Webvoyáge

• This means the file structure will be different than production (xxxdb/tomcat/vwebv)

Page 12: Creating a Personal Webvoyáge Development Environment

On your own machine(VMware)

Server

Tomcat

vwebvvwebv VxWSVxWS

Laptop

Tomcat

vwebvvwebv

Page 13: Creating a Personal Webvoyáge Development Environment

On your own machine(VMware)

Server

Tomcat

vwebvvwebv VxWSVxWS

Laptop

Tomcat

vwebvvwebv

Laptop

Tomcat

vwebvvwebv

Page 14: Creating a Personal Webvoyáge Development Environment

On your own machine

Advantages:

• File structure can be the exact SAME as production (xxxdb/tomcat/vwebv)

• You may restart Tomcat any time you wish without impacting others. (E.g., you may change Tomcat settings, add profiling tools, etc.)

Page 15: Creating a Personal Webvoyáge Development Environment

On your own machine (cont’d)

Advantages:

• Virtual Machines are easy to copy. Only one setup needed; the rest can be imaged.

• VMs may also be installed on server (VMware ESX)

• Your previous (single) development environment can now become a staging area for production

Page 16: Creating a Personal Webvoyáge Development Environment

How to setup master VM image

• Install your favorite OS. E.g., Ubuntu 8.04 LTS• Install recent version of Java SDK. E.g., Sun

JDK 1.6.xx• Copy (svn checkout) vwebv source files to

your new VM. Note: no need to copy any VxWS files!

• Configure vwebv to communicate with main “staging” development server (web.xml)

Page 17: Creating a Personal Webvoyáge Development Environment

Edit vwebv/context/vwebv/WEB-INF/web.xml

Page 18: Creating a Personal Webvoyáge Development Environment

That’s it!

You now have your own development environment where you can create your own branches, merge changes, etc., without impacting other developers.

svn copy trunk mybranchsvn checkoutsvn commitsvn mergeetc.