Pre-Dogfood Server
To check tomorrow's code (trunk) with yesterday's data, you can access the links below. Most of the year, these sites are running trunk, but during the release process, we run the upcoming version. Ex.: branches/9.x is used instead of trunk until dev.tiki.org moves from 8.x to 9.x
http://trunkdev.tiki.org/
u: trunk
p: trunk
http://trunkdoc.tiki.org/
u: trunk
p: trunk
Requested for the future:
http://trunk.tiki.org/
u: trunk
p: trunk
http://trunkinfo.tiki.org/
u: trunk
p: trunk
http://trunkthemes.tiki.org/
u: trunk
p: trunk
http://trunktv.tiki.org/
u: trunk
p: trunk
http://trunkprofiles.tiki.org/
u: trunk
p: trunk
Inversely, if you want to see how Tiki 6.x was: http://legacydev.tiki.org/
Challenges
- Dogfooding Tiki on our own sites is great to find bugs, but it makes it difficult to work.
- Say I find a bug on a tiki.org site, is it fixed in the next version, or should I report/try to fix bug?
- This is very time consuming.
- Detecting and fixing bugs is much less efficient without real data. We would like to give developers access to a site where they can test a fix, before committing (or very quickly after)
- The Quality Team is supposed to check that a commit works in trunk, before accepting in the stable branch. How to do this efficiently without data?
Which is why we have set up a continuous Pre-Dogfood Server. Yesterday's data with tomorrow's code (code in trunk). Ideally, this would be part of TRIM so everyone in the community could easily set this up for themselves, but it's not at this stage.
Setup system for permanent testing of trunk with real data
1- Run a new site ex.: trunkdev.tiki.org- On a server we can give trusted devs access to test
- With backup of real data from dev.tiki.org
- Using trunk
3- Daily refresh of data (from live site)
Modifications
- Use .htaccess password to make sure robots don't index the site
Benefits
- Upgrade procedure is tested very frequently
- Makes it very easy to compare old & new interfaces (and people can say what they liked/want to keep about the old one)
- Make it easier for Tiki community to make a judgment on when to start dogfooding next version on community site.
Potential users
- All devs: To test before an upgrade. Ex.: They could load test daily and report any feature or performance regressions.
Ideas to improve
- Change the domain name from trunk to next, because it's not always trunk, but always next
- Tracker item: #4200 - - Compare generated HTML for all *.tiki.org sites between versions (to check for regressions/changes of behavior)
- Handle _htaccess
- Use unix file link from .htaccess to _htaccess
-
Clear all cacheNow part of the shell installer - Apply a profile
- To add a header "This is a test site, all modifications will be overriden"
- User_watches = n (Testing changes shouldn't spam people)
- A way to set robots to avoid indexing the site completely
- A way to receive alerts on major breaking
- SQL error, PHP error
- Would need a crawler for early detection of breakage
- To do the same thing, but for various profiles.
Related
- http://tikiwiki.svn.sourceforge.net/viewvc/tikiwiki/branches/9.x/doc/devtools/update.dogfoodserver.sh?view=markup
- Continuous Integration
