Developer documentation
From WormBaseWiki
This page contains information pertinent to developers of WormBase.
Contents
Getting started
- WormBase Wiki: Developer Forum
- Migration matrix (GoogleDoc)
- HOWTO migrate a CGI - quick overview of how to migrate an existing CGI into a Model, Controller, and View. Sparse
Useful Links
Source Code Repositories
We use the distributed source code management system Mercurial. Projects are hosted on BitBucket.
How-To create, check out, and manage our repositories
- WormBase - The WormBase web application (public)
- WormBase-admin - Administrative code (private)
Software platform
- Application overview - A quick tour through the software platform
- Installing the Web Application - Here's how to install the WormBase web application -- including Catalyst -- on your system
- Common Model elements - reference list of common model elements handled generically
- Coding standards
- WormBase Development Environment - Building, Configuring, and Administering the WormBase development server
- Deployment - How to deploy the web app for production use
Hardware platform
- Logical structure
- Physical structure
- MySQL database replication - Mirroring mysql databases across production nodes
- Performance optimization - Memory, Disk, and Network I/O troubleshooting
- Hardware catalog - A complete accounting of WormBase compute resources
- Base node configuration - CentOS5 - Configuring a WormBase node from scratch (CentOS 5)
- Building a production node - Configuring a new production node
Administration
- WormBase-admin (mercurial; Bitbucket) - The WormBase administration code repository (private)
- Updating The Development Server - Updating the development server with a new release of the database
- Managing GBrowse - Quick HowTo for managing GBrowse in development and production environments
- Monitoring services and servers
- Crises Recovery Plan - Everything breaks. Here's how to fix it.
- Building WormMart - How to convert a WormBase AceDB database into WormMart
Load balancing and Failover
- Building Squid - How to build and install Squid
- Configuring Squid - basic squid configuration at WormBase
- Log file management and analysis - rotating and analyzing logs
Deprecated Documentation
The good word gone bad. Cruft. Lint. Maybe useful but probably not.
OICR-specific documentation
- OICR-Configuring the development machine
- Building the WS200 frozen release
- Migrating frozen releases to OICR
Developer Meetings
Presentations
CSHL conference call slides
Part 1: Introduction (key, pdf)-- Catalyst, the reimplementation strategy, and roadmap
Part 2: On Configuration (key,pdf) -- Configuration basics (and freebies)