wiki:SysAdmin

Version 4 (modified by Fran Boon, 11 years ago) ( diff )

--

SysAdmins

We can always use SysAdmin support to help out with our infrastructure: developing tools & maintaining sites.

Deployment Cycle

Setting up a New Instance

Eden project have 2 servers kindly donated by Zen Internet.
These run KVM to provide different virtual machines.
We use Proxmox to manage these VMs

These documents are secured - ask for access if you are going to contribute:

Upgrading an Instance

Need to decide whether the site will be upgraded straight from Trunk, or whether upgrades are staged via a Test server.

We manage upgrades using Fabfile.

  1. Add the site to fabile.py
  2. If no keys generated yet, then generate some:
    fab generate_keys
    
  3. deploy keys
    fab <site> distribute_keys
    
  4. Run the upgrade (as/when required)
    fab <site> deploy
    

References

ToDo

Infrastructure Virtual Machine Template

  • Update shell aliases: compile/pull
    • convert to scripts in /usr/local/bin (as per ISO/VM)
  • Add maintenance site & HTML
  • Rename site as xxxx.sahanafoundation.org
    • To work with fabfile
  • Provide a script to manage the MySQL root pw change
    • change the password
    • edit Eden's 000_config.py
    • edit /root/.my.cnf
  • Update Eden
  • Update Web2Py (as-required)
  • Update OS (to Squeeze & then maintain patches)
  • Increase swap to 2048Mb (from 750Mb)
    • can we do this in image? Add an emergency swapfile?
    • Add extra disk for those instances which need extra capacity

Test

  • Set up an instance of Hudson to automatically run through our Selenium tests

Demo

  • Have a set of reference data available

Pootle

  • Upgrade to 2.1.4 (from 2.1.1)

Trac

  • Upgrade to 0.12.1
    • Check Plugin Dependencies
  • Convert from sqlite to PostgreSQL (or MySQL) to improve performance
  • Add Timing & Estmation Plugin
  • Investigate a fix or alternative to http://trac-hacks.org/wiki/MathCaptchaPlugin for allowing Trac users to register bugs anonymously whilst not locking out our testing team.
  • See if we can not send emails out to users for the updates they make themselves (maybe fixed in 0.12.x?)
  • Investigate a fix for the last section edit doubling-up the footers (maybe fixed in 0.12.x?)

Release Process

Translation Process

  • Bzr start-commit hook to update all languages (need a script rather than the current appadmin UI method)
    cd web2py
    python web2py.py -S eden -R applications/eden/static/scripts/tools/languages.py
    
  • Scripts to automate the conversion 2 PO & upload/download to/from Pootle: UserGuidelinesLocalisation
Note: See TracWiki for help on using the wiki.