DevZone Administration

DevZone consists of a number of services which partly depend on eachother:

  • Redmine (VM 203, http://dev.openttdcoop.org)
    • Main site with project management
    • Mounts the repositories from ''files'' VM
    • Stores the users public keys and thus grants access to repositories via ssh
    • Defines a global ~/.hgrc. Uses a checkout of '''misc''' (DevZone) repository in order to make use of the hooks stored in there:
      • pretxnchangegroup.check = python:misc/mercurial/hooks/check_commit.py:check_changegroup
      • changegroup.build = misc/mercurial/hooks/invoke_jenkins.sh &
      • changegroup.wget = misc/mercurial/hooks/update_redmine.sh 1>/dev/null 2>&1 &
    • creates repositories for new projects via crontab every 7 minutes. Uses '''create_repos.sh''' script from '''misc''' (DevZone) repository. This also takes care of making them known to rhodecode.
  • files (VM 240, http://bundles.openttdcoop.org)
    • VM which hosts all files: repositories and bundles. It is included via NFS into other VMS which need them
  • hg (VM 114, http://hg.openttdcoop.org)
  • Jenkins (VM 133, http://jenkins.openttdcoop.org)
    • Main build server. Uses the build scripts from '''misc''' repository as default build instructions.
    • Mounts the bundles and repositories from ''files'' VM
    • Has ssh key to Redmine VM in order to update the checkout of the '''misc''' repository upon commits which pass the test build
  • Translator (VM 135, http://translator.openttdcoop.org)
    • Eints translation manager
    • Has ssh key to Redmine in order to poll, pull from and push to repositories.
    • Has access to Redmine DB in order to determine its rights
    • More details in ~eints/readme.txt on the VM
  • Database (VM 130)
    • Stores the postgresql databases, used by Redmine, Rhodecode, Eints and Jenkins.
Somewhat independent:
  • Paste service (VM 127, paste.openttdcoop.org)
  • Etherpad (VM 151, etherpad.openttdcoop.org)
  • LDAP (VM 230)
  • IRC (VM 105)
  • Mail (VM 126)
  • Render (VM 113, render.openttdcoop.org)
  • proxy (VM 116)
  • bot (VM 104)
  • webster (VM 106)