Gbib release: Difference between revisions
Line 22: | Line 22: | ||
== Alpha testing == | == Alpha testing == | ||
Alpha binaries can be copied into any gbib with this command: | |||
updateBrowser hgwdev <yourhgwdevusername> alpha | updateBrowser hgwdev <yourhgwdevusername> alpha | ||
Revision as of 10:35, 5 November 2014
Executive summary for the buildmeister
run this command: buildGbibAndZip
Buildmeister VM ("public" VM)
- the build account has a virtual machine (VMs) added called "browserbox". It is the "master" image of the Gbib and used by the buildmeister.
- aliases to start and stop his/her VM: boxStart and boxStop.
- browserbox listens at port 1234 for web requests and at 1235 for ssh.
- From hgwdev, the buildmeister can do "ssh box" to connect to the box (configured in .ssh/config). There is no password, because the buildmeister's ssh key was added to the box.
QA VM ("beta" VM)
- the qateam account has a VM called browserboxBeta. It is the beta testing VM and used by QA.
- qateam has aliases to start and stop their VM: boxBetaStart / boxBetaStop
- browserbox listens at port 1236 for web requests and at 1237 for ssh.
- one needs to use an ssh tunnel into hgwdev to use the webserver or ssh on this VM.
- From hgwdev, qa can do "ssh boxBeta" to connect to the box (configured in .ssh/config). There is no password, because the qateam's ssh key was added to the box.
Development
see Gbib development
Alpha testing
Alpha binaries can be copied into any gbib with this command:
updateBrowser hgwdev <yourhgwdevusername> alpha
A developer can also copy the binaries from their own sandbox, e.g. for user braney
updateBrowser hgwdev braney braney
In both cases, you will need to type your hgwdev username three times.
Beta testing
- QA has three options:
- QA can download the new ZIP created by the buildmeister and test on their own laptops (recommended)
- If QA still has an older gbib on their own laptop, the command "updateBrowser hgwdev <username> beta" can be used to pull in the beta CGIs that were compiled by the buildmeister
- QA can tunnel into hgwdev and use the browserboxBeta virtual machine there. See below how to tunnel into hgwdev.
Setup http access for testing the box
To test the browserbox, one has to connect with http to it. Browserbox accepts only connections from hgwdev, not from outside. You cannot connect from your desktop machine directly. So ssh on your desktop has to be told to forward at least one port to hgwdev. To make this happen, add this to your file ~/.ssh/config (create it if necessary) on your own OSX or linux machine:
Host hgwdevtunnel Hostname hgwdev.sdsc.edu User <YOURHGWDEVUSER e.g. rhead> #using 4321 to avoid clashing with your locally running gbib LocalForward 127.0.0.1:4321 127.0.0.1:1236
You can then do a "ssh devtunnel" to get connected to hgwdev and have the port 4321 on your machine forwarded to the box through the ssh connection to port 1236 on the box. Port 1236 is a http port of the browserboxBeta VM, so you can then test the browserbox that runs on hgwdev by pointing your internet browser on your laptop/desktop to http://127.0.0.1:4321
You can test the browserbox that is running on your own laptop at the same time by going to http://127.0.0.1:1234
Release
To prepare the box in its current state and the CGIs as they have been prepared by "boxPrep beta" on hgwdev for download, run this as qateam on hgwdev:
boxRelease.csh
This will ssh into the box, clean it (remove temp files, sessions, etc), stop it, zip it and place it onto hgwdev on http://hgwdev.soe.ucsc.edu/gbib/gbib.zip
The zipfile can be downloaded to OSX or Windows and possibly tested there again, with the slowNet command (necessary?).
At the end of the testing week (Friday?), the zipfile can be pushed to hgdownload.
At the next update of hgdownload, all boxes with activated auto-updates should update themselves automatically, see Gbib_auto_updates.
intensive box cleaning (optional)
Each time a new file is created on the box, the virtual disk file gets filled with the data, even if the file is deleted. The browserbox zipfile will therefore grow. If the zipfile is getting very big, it might be good to overwrite the empty space on the virtual disk with zeros.
To do this, install an RDP client on your OSX machine (Microsoft RDP client for OSX, in the app store, free), uncomment the RDP 3389 port forward in your .ssh/config and do an "ssh hgwdevtunnel" your desktop.
Start your RDP client, connect to localhost. You should see the console of the browserbox. Type:
sudo reboot
- Keep shift pressed while the box is rebooting.
- Select the Recovery mode, type "enter".
- Type "r" to select "root". Type "enter".
- Password is "browser".
- Run the script "./zeroVm.sh". run "sudo reboot".