Changes between Version 7 and Version 8 of BuildFarm


Ignore:
Timestamp:
09/07/2011 07:39:20 PM (4 years ago)
Author:
jacob
Comment:

Removed outdated information and added what new info I've got.

Legend:

Unmodified
Added
Removed
Modified
  • BuildFarm

    v7 v8  
    1 Django uses a Hudson buildfarm. This page has notes about it.
     1Django uses a Jenkins buildfarm. This page has notes about it.
    22
    3 The buildfarm is at http://hudson.djangoproject.com/.
    4 
    5 == Current slaves ==
    6 
    7 || '''Name/IP''' || '''Username''' || '''Maintainer''' || '''Tags''' ||
    8 || hudson.jacobian.org || hudson || JKM || linux ubuntu ubuntu-9.10 python-2.4 python-2.5 python-2.6 sqlite ||
    9 || webshox.org   || hudson || || linux fedora fedora-13 python-2.6 sqlite postgres-8.4 mysql-5.1 ||
     3The buildfarm is at http://ci.django-cms.org/job/Django/.
    104
    115== Buildmaster Maintainers ==
     
    137Email django-developers for help, or contact on of the maintainers
    148
    15   * Eric Holscher (`eric -at- ericholscher -dot- com`); `ericholscher` on IRC.
    16   * Matt Croydon (`mcroydon -at- gmail -dot- com`); `matt_c` on IRC.
    17   * Jacob Kaplan-Moss (`jacob -at- jacobian -dot- org`); `jacobkm` on IRC.
    18 
    19 == Setting up a new slave ==
    20 
    21 1. Take a look at the current slave above and the list of desired slave configs below. It's really best if you can provide some target that's not provided by a current slave. At the very least, please be sure you can provide a combination that's unique. The minimum requirements for a server is probably 512 MB of RAM. You can probably get away with 256 MB, but you'll swap a lot. Make sure the server isn't a production one: Hudson and the test suite will peg your CPU.
    22 
    23 2. Create an account on your server for Hudson. Hudson needs to be able to connect over SSH as this user.
    24 
    25 3. Add this SSH key to the Hudson user:
    26 
    27 {{{
    28 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp+uprvRXMvGYF21DPYqPJ04SmGwazCD07K/pLNQhFvwIUIOu6cWw/5Wz7+Pvon1QqtSyiWbHvnXUCBH5VWfN1YbTFRY4dRaOUPFktFCzzqr8o7UA3IFdhbzvUZp5gjbiUBsaMWq5musYJntSDxJ/oJGCr8cn/tzp7Cw88uK9099ZA8OQm95Rsvz9uL4ehlZ4xgRfi/DmHyvK0TwIyUcgUfRjKszVbN5vxad69vagMhGL5Z/48sZSwts2+uqSGfs2T6YGuFoZmouJw3Uxg6lGUJW96I/EPrsG6jmMM0INdHUYuDab4CXPsaGNwEWrzv96iS/8b76n/5GLpAj8MNP9Kw== TestMaster
    29 }}}
    30 
    31 4. Make sure you have a JDK, Python, and pip installed. On Ubuntu, this looks like:
    32 
    33 {{{
    34 aptitude install openjdk-6-jre python-setuptools
    35 easy_install-2.6 pip
    36 }}}
    37 
    38 Other platforms should be similar, but please edit this page and say how!
    39 
    40 5. Currently the tests will fail if your locale doesn't handle UTF8 pathnames -- i.e. if your locale is "C". In the future the test suite should detect and skip this, but for best results you should make sure you've got a modern locale. On Ubuntu, you need to `aptitude install language-pack-en` and then add `export LC_ALL=en_US.utf8`to your Hudson user's `.bashrc`. Other platforms: please FIXME here!
    41 
    42 6. Name everything "hudson" and give it the password "hudson".  Use that approach on every bit you set up, a MySQL database, a PostgreSQL database and such stuff.  See the proper [http://dev.mysql.com/doc/refman/5.1/en/adding-users.html MySQL Documentation] and [http://www.postgresql.org/docs/8.1/static/app-createuser.html PostgreSQL Documentation] to setup the users.
    43 
    44 7. Add your server to the table above. Under "tags" select the tags from the configs below that apply to what you've got on the server.
    45 
    46 8. Contact a buildmaster maintainer (see above) and ask them to add your node. You'll need to provide them with some contact info so that we can nag you if your node fails.
    47 
    48 == Desired configs ==
    49 
    50 This is a list of all the configs we'd like to target and the tag(s) for each.
    51 
    52  * Python
    53      * 2.4 (python-2.4)
    54      * 2.5 (python-2.5)
    55      * 2.6 (python-2.6)
    56      * 2.7 (python-2.7)
    57 
    58  * Databases
    59      * SQLite (sqlite)
    60      * Postgres (postgres)
    61          * 8.2 (postgres-8, postgres-8.2)
    62          * 8.3 (postgres-8, postgres-8.3)
    63          * 8.4 (postgres-8, postgres-8.4)
    64          * 9.0 (postgres-9, postgres-9.0)
    65      * MySQL (mysql)
    66          * 4.1 (mysql-4, mysql-4.1)
    67          * 5.0 (mysql-5, mysql-5.0)
    68      * Oracle (oracle)
    69          * 9i (oracle-9i)
    70          * 10g (oracle-10g))
    71 
    72  * GIS
    73     * Postgis (postgis)
    74     * MySQL (mysqlgis)
    75     * Oracle (oraclegis)
    76     * Spatialite (spatialite)
    77 
    78  * OSes
    79      * Linux (linux)
    80          * Ubuntu LTS (ubuntu, ubuntu-<version>)
    81          * RHEL 4 (rhel, rhel-4)
    82          * RHEL 5 (rhel, rhel-5)
    83          * Fedora (fedora)
    84      * Mac OS 10.6 (macosx-10.6)
    85      * Windows (win)
    86          * ?
     9  * FIXME: maintainer contacts here
Back to Top