...
The CAS Development Sandbox VM runs under Oracle Virtualbox VirtualBox (a Yale preferred free VM host) on your desktop or laptop Windows, Mac, or Linux machine. It provides the general setup for using Eclipse to develop an application that will run in JBoss on one or more datacenter VMs. Production Yale machine room servers do not have a interactive graphic environment, and they run everything in the background as a service. Developers need to compile, build, and debug. They need things to run interactively so they can start and stop JBoss. So the Sandbox has all the same elements as production, but they are installed in different directories and run under different userids than production. This does not affect code or configuration, and any minor details can be worked out when you get to DEV where the production environment is exactly duplicated.
The Sandbox is typically kept up to date with the latest system, Java, Eclipse, and JBoss patches. At the time this is written, it is a Centos 7 64 bit operating system with Oracle Java 1.7 64 bit, JBoss EAP 6.2, and Eclipse Luna 4.4.1. Because Eclipse is not part of the production system, you can upgrade it at any time and install any additional features that aid in development. However, it is probably a bad idea to use Java 1.8 if the production system will be 1.7, and while it doesn't matter much if JBoss is 6.1 or 6.3, you should use the same major version of JBoss that you are using in production (EAP 6.x).
The Sandbox is used to change code and configuration files that are checked into Subversion where allows you to edit and debug source. You can change existing files and create new files. You can work with Java source or configuration files. After you are done with basic testing, the changes you make are committed back to the Yale Subversion server. Then they are then used by the Jenkins jobs to build the DEV, TEST, or PROD environment. So once all your changes are committed to SVN, the Sandbox VM can be discarded. However, depending on how strongly you feel
So the result of Sandbox development is reflected in changes to SVN. After code goes into production, you can keep your copy of the Sandbox around for further development, or you can discard it and start over again with a fresh new Sandbox in any future project. If you have strong feelings about Linux or Eclipse, you may choose to customize your Sandbox VM and you may to your preferences, and then it makes sense to save it and use it for other development. Then it is convenient to keep it around with your configurations or customizations. This document should describe things clearly enough that you could maintain the Sandbox yourself and upgrade Java, Eclipse, or JBoss to a different version if it ages., even for other software projects.
Installation
You need a current version of VirtualBox which you can get from Oracle (virtualbox.org). You can install it on a Windows or Mac desktop or laptop computer . If you already have VMWare and prefer to use it, skip this step.The real computer is called the host and it typically runs Windows or Mac. The Sandbox creates one or two Virtual Machines (VM) that run under the host operating system under a VM environment like Oracle VirtualBox or VMWare playerwhich becomes the "host". VirtualBox is an open source project, but Oracle also creates some proprietary extensions that you are prompted to install immediately after you install the base software.
If you launch the VirtualBox application you will see a management console. It displays the Virtual Machines (VMs) that you already have and provides a Wizard for creating new VMs, typically by running the OS installer CD image for Windows or a Linux distribution. If you ask it to start an existing VM, VirtualBox creates a simulation of a full personal computer and even runs a power up BIOS. It then boots from the virtual hard disk image or from the virtual CD image.
The VM displays on the host computer screen as an application window. However, this "application" thinks that it is an OS on a real computer. To make it behave seamlessly on the host monitor, VirtualBox provides some device drivers that you can install on Windows (or build and install on Linux). With the drivers the mouse can move smoothly into and out of the VM window, and cut and paste of text operates between VM applications and host applications.
Once installed, the VM will be a directory of files in the location VirtualBox is configured to store its VMs. This VM is configured by the installation process with specific locations on the host disk and the names of specific configuration features from that specific host. So you to install the VM on another computer, you have to "Export" it to a type of file that is not bound to one specific system.
The Sandbox is distributed as a *.ova file. This is an open standard form of zip file that contains both the machine configuration and the disk image. It can be loaded into VirtualBox (or VMWare for that matter) to create the virtual machine. Once the VM directory is created, it contains configuration files that point to specific local machine values (the full path to files for example). A VM is not portable, but a *.ova file created from a VM directory can be moved. During installation, or any time before you start the VM, you may need to configure features that are potentially dependent on your local machine configuration. VirtualBox has a feature called "Shared Directory" that allows the host operating system to share one of its directories with the VM (like a network share, but implemented without the network). When the distribution was built, the shared directory was "D:\sandbox", but you may want to turn this off (it is a convenience) or change the name, especially if you do not have a D: drive or are not running Windows on your host computer.
...
The password for user casdev is not particularly secure, since it can only be used by the developer on the host machine. However, it will not be published here. Ask someone for it.
Where
The Oracle Java comes in a standard Red Hat distribution format called an "RPM" that contains both the files and instructions where to put them. Oracle puts a JVM in /usr/local/java. Red Hat official RPMs for JBoss are not available without a subscription, and RPMs for Eclipse are typically several releases behind the current verison. So JBoss comes from http://jbossas.jboss.org/downloads.html and Eclipse comes from http://www.eclipse.org/downloads/ and they are unzipped into subdirectories of /opt.
...