Dl/Product Release Checklist: Difference between revisions
From stonehomewiki
Jump to navigationJump to search
Stonezhong (talk | contribs) No edit summary |
Stonezhong (talk | contribs) |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 63: | Line 63: | ||
* Highly Available | * Highly Available | ||
** Your service should be highly available. A common pattern is haing redundancy, so if your active server is down, your standby server can take over the control. And we expect the switch to be automatic. | ** Your service should be highly available. A common pattern is haing redundancy, so if your active server is down, your standby server can take over the control. And we expect the switch to be automatic. | ||
</div> | |||
</div> | |||
<p></p> | |||
= Capacity = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* You should deploy your service over the day-to-day capacity. For example, you should be prepared your service to handle 200% of traffic comparing your normal traffic. | |||
* You should have "capacity review" constantly, a common practice is to review capacity every year, and book the capacity for the entire year (with predicted growth) | |||
</div> | |||
</div> | |||
<p></p> | |||
= Beta Environment = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* For any product, you should have a beta environment | |||
* You should always deploy your change to beta environment first, verify nothing is broken before deploy to production. | |||
</div> | |||
</div> | |||
<p></p> | |||
= User facing document = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* Any product should have a user facing document. | |||
* User facing document should be in sync with product evolvement | |||
</div> | |||
</div> | |||
<p></p> | |||
= Design document = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* Make sure document your design. | |||
* Make sure your deisgn doc is in sync when you change your deisgn. | |||
</div> | |||
</div> | |||
<p></p> | |||
= CICD Pipeline = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* Your product's development environment should support CICD | |||
* Any product using Python should have at least 80% of code coverage (line based, branch based) | |||
</div> | |||
</div> | |||
<p></p> | |||
= Data Safety = | |||
<div class="toccolours mw-collapsible mw-collapsed expandable"> | |||
<div class="mw-collapsible-preview"></div> | |||
<div class="mw-collapsible-content"> | |||
* To prevent from physical data loss or logical data loss, you need to backup data periodically | |||
* Certain percent of data lost is tolerable since backup does not happen continously. | |||
</div> | </div> | ||
</div> | </div> | ||
<p></p> | <p></p> | ||