Sheriffing/TBPL/DeveloperDocs: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "= About the service = (what does it do, what is the purpose?) = Development documentation = (is there a design doc for development?) = Logical diagram = = Physical diag...")
 
No edit summary
Line 2: Line 2:


(what does it do, what is the purpose?)  
(what does it do, what is the purpose?)  
In one sentence, Tbpl shows developers what is happening.
More specifically, it shows a list of pushes (code changes) to different branches (repositories) and associated jobs. These jobs can be any kind of compile and test jobs. It color-codes the success status of those jobs so it is easily visible if a code change contains errors or not.
It further allows developers to
* comment on a job
* restart a particular job
* cancel a running job


= Development documentation  =
= Development documentation  =

Revision as of 11:10, 10 August 2011

About the service

(what does it do, what is the purpose?)

In one sentence, Tbpl shows developers what is happening.

More specifically, it shows a list of pushes (code changes) to different branches (repositories) and associated jobs. These jobs can be any kind of compile and test jobs. It color-codes the success status of those jobs so it is easily visible if a code change contains errors or not. It further allows developers to

  • comment on a job
  • restart a particular job
  • cancel a running job

Development documentation

(is there a design doc for development?)

Logical diagram

Physical diagram

Hardware

(what is going to be used here, physically?)

OS

(self explanatory, note any exceptions)

Interface settings and IP allocations

VLANs

Private interfaces

Public interfaces

Network flows

(firewall needs?)

Load Balancing / Caching Load balancing

(round robin? VIP? GLB?)

Health checks

(how will the app be checked for validity from the lb?)

Front end caching

(http caching)

Back end caching

(memcache etc)

Database

(what database server(s) - rw & ro, db name(s), db username) Other requirements

(sphinx, redis, celery, etc)

File storage

(internally or externally mounted filesystems.. where will static data for this service live?)

Automation

Cron jobs

(if the cron jobs run from an admin machine, please specify where they will run)

Puppet

(what modules/classes will be used?)

Monitoring

Nagios

(what checks will need set for this service?)

Ganglia Update / Push procedure

(how to update the code, db, etc)

Common Troubleshooting

Backup / DR

(where are backups stored if any?

How can someone else fix this site in a disaster?)

Staging site

Deployment Bugs

Admin Contacts

Primary Admin:

Secondary Admin:

Developer Contacts