Refer to the caNanoLab Wiki Home Page for complete and current caNanoLab user documentation and other technical information.
- JDK8 - available at OpenJDK
- An IDE (there is a Vagrant plugin for JetBrains IdeaJ)
- For Vagrant VM development:
- Hashicorp Vagrant
- Oracle VirtualBox
Before proceeding, make a new project in your IDE and clone the caNanoLab repository from GitHub (github.com/isb-cgc/cananolab).
- Download and install Node 16 for your machine. Do not use a newer version, and do not install it from the VM.
- Open a Command Line prompt and change directories to
cananolab/software/canaolab-client-new
npm i
npm install -g @angular/cli@latest
ng build --base-href / --output-path ./build/
- Download the additional JARs from the dev-tier deployment bucket
/jars
folder or the caNano Google
Drive Build Libraries
folder and place them into cananolab/localDev/jars
- Create a directory above the git repository root (
cananolab
) named secure_files
. Note that
if you are using IdeaJ this directory will be in your IdeajProjects
directory.- Launch IdeaJ
- Install the Vagrant plugin for IdeaJ from
File > Settings > Plugins
.- Start typing
Vagrant
into the search box and the plugin should appear. - The plugin can only be installed after installing Vagrant and VirtualBox on your machine.
- Double-check that your PATH/path has the Vagrant and VirutalBox executables on it.
- Start typing
Tools > Vagrant > Up
- Your first build will need to download the VirtualBox image. This might take a few extra minutes to complete depending on your connection speed.
- Subsequent builds will use this same image and should be faster.
- Vagrant will run several build scripts to load MySQL and set up the database, download and install Wildfly 23, copy the Angular front end into the correct spot, and build the initial WAR.
- Once the build finishes, in IdeaJ go to
Tools > Start SSH Session > Vagrant at [path to your Vagrant build]
- This will eventually open a terminal in the lower half of the IdeaJ window.
- It can be slow; alternatively you can use your own SSH client if you prefer.
- In your machine's CLI, change directories to
cananolab/software/cananolab-wepapp/
vagrant up
- The build should complete with an exit code of 0. At this point you can SSH into the VM from any SSH client using a login and password of vagrant/vagrant on port 2222.
cd /home/vagrant/cananolab/shell/
sudo -E ./build-and-redeploy.sh &
cd /home/vagrant/cananolab/software/cananolab-webapp/
sudo -E ../../shell/build-and-redeploy.sh -d &
The -d switch will cause the script to rebuild the WAR before starting wildfly and (re)deploying.
Wildfly will output its logs directly to the console.