Website:JBrowse set-up on dev.wormbase.org
These are the directions for setting up a new instance of JBrowse on dev.wormbase.org, which is where the current production version of JBrowse is hosted.
Set up JBrowse
Get the current JBrowse release, put it somewhere with a fair amount of disk space (current build is about 45GB). This directory will be JBrowse is served from, so it it will need to be made accessible to Apache when the set up is complete. The actual setup of JBrowse is quite easy; in the directory where the JBrowse release has been unzipped, do this:
./setup.sh
without root privileges. The setup script will use local::lib to install any needed perl prerequisites as well as format some sample data (which can be deleted later from the sample_data
directory).
Set up Build configuration
From a fresh checkout of the website-admin repository, copy the build config file, website-admin/jbrowse/conf/c_elegans.jbrowse.conf
, to a temporary working directory. This directory is where GFF files will be copied, parsed and the JBrowse script flatfile-to-json.pl will be run. While the config file is named "c_elegans..." it is actually organism agnostic and will be used for every organism. c_elegans.jbrowse.conf
is a fairly simple ini-style config file, with a general section at the top which you will need to edit, and sections for each track below, which generally you will not need to edit unless a new data type is added that no organism in JBrowse as accessed before (for example, if a track is already configured for C. elegans but is added for C. briggsae, you won't have to do anything in the config file for the build script to automatically include that track from C. briggsae).
This is a sample from the top of the c_elegans.jbrowse.conf
:
release=246 filedir=/usr/local/ftp/pub/wormbase/releases/ nosplitgff = 1 usenice=1 skipprepare=0 jbrowsedir=/home/scain/scain/jbrowse-test allstats=/usr/local/wormbase/website/tharris/conf/gbrowse/releases/WS246/ALL_SPECIES.stats includes=/home/scain/scain/website-admin/jbrowse/jbrowse/data/c_elegans/includes functions=/home/scain/scain/website-admin/jbrowse/jbrowse/data/functions.conf organisms=/home/scain/scain/website-admin/jbrowse/jbrowse/data/organisms.conf glyphs=/home/scain/scain/website-admin/jbrowse/jbrowse/src/JBrowse/View/FeatureGlyph
Most of these items you won't have to change often or at all. The primary things you need to change is the "release" entry and the "allstats" entry (though the need for the allstats entry may go away, as the path to it should be inferable from the release number). The paths to items in the website-admin directory could be updated to put to your current checkout to insure that it is the most currently available configuration. The other items probably won't need to be changed ever but here's an explanation of the non-obvious ones:
- nosplit
- usenice
- skipprepare
- jbrowsedir
Create a "multi-species" build shell script and run (best done in a screen process, and/or grab stdout and stderr to a file); it'll take about a day)
Update apache config to point at new build.