Difference between revisions of "Developer documentation"
From WormBaseWiki
Jump to navigationJump to searchLine 25: | Line 25: | ||
# [[Website:Testing|Testing]] | # [[Website:Testing|Testing]] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Software platform == | == Software platform == | ||
Line 96: | Line 83: | ||
*[[Updating The Development Server]] - ''Updating the development server with a new release of the database'' | *[[Updating The Development Server]] - ''Updating the development server with a new release of the database'' | ||
*[[Building WormMart|Building WormMart]] - ''How to convert a WormBase AceDB database into WormMart'' | *[[Building WormMart|Building WormMart]] - ''How to convert a WormBase AceDB database into WormMart'' | ||
+ | |||
+ | == Developer Tools == | ||
+ | |||
+ | *Twitter: [http://twitter.com/wormbase General announcements] | ||
+ | *FriendFeed: [http://friendfeed.com/wormbase WormBase FF room] | ||
+ | *[http://www.wormbase.org/forums/index.php?board=326.0 WormBase Forum: Developer Forum] | ||
+ | |||
+ | == Source Code Repositories == | ||
+ | |||
+ | ''We use the distributed source code management system Mercurial. Projects are hosted on [http://bitbucket.org BitBucket].'' | ||
+ | |||
+ | [[WormBase Source Code|How-To create, check out, and manage our repositories]] | ||
+ | |||
+ | *[http://bitbucket.org/tharris/wormbase WormBase] - ''The WormBase web application (public)'' | ||
+ | *[http://bitbucket.org/tharris/wormbase-admin WormBase-admin] - ''Administrative code (private)'' | ||
== Deprecated Documentation == | == Deprecated Documentation == |
Revision as of 14:48, 8 February 2010
This page contains information pertinent to employees of WormBase.
Contents
Project Management
- Project Calendar
- Conference call agendas and minutes
- Project meeting agendas and minutes
- Linking To WormBase
- Suggested pre-release data checks
- Internal documentation and standard operating procedures
- modENCODE Analysis & metadata discussion
- Orthologs: use cases for searches
- Genome sequence changes
WebSite Development
Design Stages
- Requirements analysis / Design Specifications
- Architecture Outline
- Prototyping
- Formal Development via established conventions
- Formal development strategy - An overview of the development process at WormBase
- Developer notes - Best practices, conventions, etc
- Coding standards
- Testing
Software platform
- Application overview - A quick tour through the software platform
- Migration matrix (GoogleDoc)
- Installing the Web Application (legacy code) - Here's how to install the classic WormBase web site for development purposes
- 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
- HOWTO migrate a CGI - quick overview of how to migrate an existing CGI into a Model, Controller, and View. Sparse
- 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)
- WormBase Development Environment - Building, Configuring, and Administering the WormBase development server
Routine Administration Tasks
- NFS at WormBase
- Cronjobs
- Creating a Google Sitemap
- Managing Perl Libraries - Managing Perl libraries across projects and architectures
- Managing GBrowse - Quick HowTo for managing GBrowse in development and production environments
- Log file management and analysis - rotating and analyzing logs.
- Site statistics
Load balancing and Failover
- Building Squid - How to build and install Squid
- Configuring Squid - basic squid configuration at WormBase
Monitoring and Crises Management
- Development Server Administration - Monitoring and fixing the development server
- General administration and monitoring notes - Partially redundant, sorry
- Monitoring services and servers
- Crises Recovery Plan - Everything breaks. Here's how to fix it.
Frozen Releases
- Building Frozen Releases - The most current documentation on how to build a frozen release
Frozen Releases as Virtual Machines
- How to build a WormBase Virtual Machine -- also describes how to create a VMX for a frozen release
- Configuring a server to host virtual machines -- quick guide to setting up a frozen release server
- Managing servers hosting virtual machines
- How to build a frozen release -- how to configure a WormBase VM as a frozen release server
- Creating Virtual Disks - How to create VMDKs for unlimited portable storage
Updates
- Updating The Development Server - Updating the development server with a new release of the database
- Building WormMart - How to convert a WormBase AceDB database into WormMart
Developer Tools
- Twitter: General announcements
- FriendFeed: WormBase FF room
- WormBase Forum: Developer Forum
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)
Deprecated Documentation
The good word gone bad. Cruft. Lint. Maybe useful but probably not.
- Trac installation notes
- Trac Feature Tracker / Subversion repository
- Establishing the SVN repository - Setting up the subversion repository