devel:hudson
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| devel:hudson [2012/08/22 14:29] – [Javascript Testing] bredal | devel:hudson [2024/05/13 09:50] (current) – remove obsolete page morten | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Hudson ====== | ||
| - | ===== Instalation ===== | ||
| - | |||
| - | * Install deb for hudson | ||
| - | * chmod +rx / | ||
| - | * Goto host:8080 | ||
| - | |||
| - | ===== Basic setup ===== | ||
| - | |||
| - | * Mangage hudson | ||
| - | * Plugins | ||
| - | * Installed | ||
| - | * Remove all installed plugins | ||
| - | * Restart | ||
| - | |||
| - | * Mangage hudson | ||
| - | * Plugins | ||
| - | * Available | ||
| - | * Check Green Balls, Setenv, and Mercurial Plugin | ||
| - | * Install (and wait for success) | ||
| - | * Restart | ||
| - | |||
| - | * Mangage hudson | ||
| - | * Configure system | ||
| - | * Environment variables | ||
| - | |||
| - | DJANGO_SETTINGS_MODULE=nav.django.settings | ||
| - | PGHOST=navdevdb | ||
| - | PGUSER=navtest | ||
| - | PGPASSWORD=s3cret | ||
| - | CLASSPATH=/ | ||
| - | |||
| - | * Hudson has no security enabled by default, so be sure to enable appropriate settings for your install. | ||
| - | |||
| - | ===== Make install job ===== | ||
| - | |||
| - | * New Job | ||
| - | * Name: make-install, | ||
| - | * SCM: mercurial repo: http:// | ||
| - | * Build Triggers: Poll SCM schedule: * * * * * | ||
| - | * Build: Execute shell | ||
| - | |||
| - | ./ | ||
| - | ./ | ||
| - | make | ||
| - | make install | ||
| - | |||
| - | * Test build | ||
| - | |||
| - | ===== Create DB job ===== | ||
| - | |||
| - | * New Job | ||
| - | * Name: createdb, Type: freestyle | ||
| - | * SCM: mercurial repo: http:// | ||
| - | * Build Triggers: After other: make-install | ||
| - | * Build env: | ||
| - | |||
| - | PGDATABASE=nav-$JOB_NAME | ||
| - | |||
| - | * Build: Execute shell | ||
| - | |||
| - | ./ | ||
| - | |||
| - | * Test build | ||
| - | |||
| - | ===== Python tests build ===== | ||
| - | |||
| - | * New Job | ||
| - | * Name: python-tests, | ||
| - | * SCM: mercurial repo: http:// | ||
| - | * Build Triggers: After other: make-install | ||
| - | * Build env: | ||
| - | |||
| - | PGDATABASE=nav-$JOB_NAME | ||
| - | |||
| - | * Build: Execute shell | ||
| - | |||
| - | ./ | ||
| - | source " | ||
| - | cd " | ||
| - | nosetests --with-xunit --verbose | ||
| - | |||
| - | * Post build: | ||
| - | * Test build | ||
| - | |||
| - | ===== Crawler / validation job ===== | ||
| - | |||
| - | * New Job | ||
| - | * Name: crawler-tests, | ||
| - | * Build Triggers: After other: createdb | ||
| - | * Build env: | ||
| - | |||
| - | PGDATABASE=nav-$JOB_NAME | ||
| - | TARGETURL=https:// | ||
| - | ADMINPASSWORD=s3cret | ||
| - | |||
| - | * Build: Execute shell: | ||
| - | |||
| - | ./ | ||
| - | source " | ||
| - | nosetests --with-xunit --verbose tests/ | ||
| - | |||
| - | * Post build: | ||
| - | * Setup apache | ||
| - | * Test build | ||
| - | |||
| - | ===== Upgrade DB job ===== | ||
| - | |||
| - | * New Job | ||
| - | * Name: upgradedb, Type: freestyle | ||
| - | * SCM: mercurial repo: http:// | ||
| - | * Build Triggers: After other: createdb | ||
| - | * Build env: | ||
| - | |||
| - | PGDATABASE=nav-$JOB_NAME | ||
| - | OTHER_URL=http:// | ||
| - | OTHER_FOLDER=$WORKSPACE/ | ||
| - | UPGRADE_FILES=3.6.*.sql trunk.sql | ||
| - | |||
| - | * Build: Execute shell: | ||
| - | |||
| - | test -d $OTHER_FOLDER && rm -rf $OTHER_FOLDER || true | ||
| - | hg clone $OTHER_URL $OTHER_FOLDER | ||
| - | cd $OTHER_FOLDER | ||
| - | hg update tip | ||
| - | ../ | ||
| - | cd - | ||
| - | cd doc/ | ||
| - | for file in `eval echo $UPGRADE_FILES`; | ||
| - | out=`mktemp` | ||
| - | psql -f $file 2>&1 | tee $out | ||
| - | retval=`grep ERROR $out | wc -l` | ||
| - | rm $out | ||
| - | test $retval -eq 0 | ||
| - | done | ||
| - | |||
| - | * Test build | ||
| - | |||
| - | ===== Notification setup ===== | ||
| - | |||
| - | * Manage Hudson | ||
| - | * Manage Plugins | ||
| - | * Available | ||
| - | * Select Hudson IRC Plugin, Hudson instant-messaging plugin | ||
| - | * Restart | ||
| - | |||
| - | * Manage Hudson | ||
| - | * Configure system | ||
| - | * Enable IRC Notfication | ||
| - | |||
| - | Hostname: chat.eu.freenode.net | ||
| - | Post: 6667 | ||
| - | Channels: #navbuild | ||
| - | Nickname: navbuild | ||
| - | Prefix: ! | ||
| - | Hudson username: navbuild | ||
| - | Hudson passwrod: s3cret | ||
| - | |||
| - | * Save | ||
| - | |||
| - | * Manage Hudson | ||
| - | * Manage Users | ||
| - | * Create user | ||
| - | |||
| - | username: navbuild | ||
| - | password: s3cret | ||
| - | fullname: hudson irc bot | ||
| - | email: bot@example.com | ||
| - | |||
| - | * create user | ||
| - | |||
| - | * For each job perform enable IRC notification | ||
| - | |||
| - | * Restart | ||
| - | * Test | ||
| - | |||
| - | ===== Javascript Testing ===== | ||
| - | * Install Node Package Manager | ||
| - | |||
| - | apt-get install make python g++ | ||
| - | wget -N http:// | ||
| - | tar xzvf node-latest.tar.gz && cd `ls -rd node-v*` | ||
| - | ./configure | ||
| - | make install | ||
| - | | ||
| - | |||
| - | * '' | ||
| - | * install Xvfb | ||
| - | * '' | ||
| - | * install google chrome | ||
| - | * Fetch correct package from https:// | ||
| - | * Install: '' | ||
| - | * Maybe you need some apt-fu: '' | ||
| - | ===== Future ideas ===== | ||
| - | |||
| - | * Hudson is currently only track adamcik/ | ||
| - | * Use LDAP for auth | ||
| - | * Use nav.uninett.no/ | ||
| - | * Perform schema diff of upgraded DB | ||
| - | * Integrate new createdb script once written | ||
| - | * As a new version of seeddb is being created, the old version has been blacklisted from the html validation test. This needs to be undone once the new seeddb version is merged. | ||
| - | * Use of virtualenv in bootstrap and the Hudson tests should be removed in favor of a nose version > 0.10 being installed on elixis. | ||
devel/hudson.1345645788.txt.gz · Last modified: by bredal
