ToDo for jenkins.debian.net =========================== :Author: Holger Levsen :Authorinitials: holger :EMail: holger@layer-acht.org :Status: in progress :lang: en :Doctype: article :Licence: GPLv2 == About jenkins.debian.net See link:https://jenkins.debian.net/userContent/about.html["about jenkins.debian.net"]. == Fix user submitted bugs * See https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=jenkins;users=qa.debian.org@packages.debian.org == General ToDo * move /srv/jenkins.debian.net-scm-sync.git somewhere public? * keep git+svn urls, and use commit hooks. also better for test setups of this setup as well as overall stability. ** create d-i_svn_trigger job to trigger sub-set jobs (like manual) ** create d-i git hooks * get rid of some reduncacy in job-cfg/*.yaml * fully automate backup and backup /var/lib/jenkins/jobs /var/lib/munin /var/log /root/ too * try awstats * put kgb-client.conf in git and sed passwords from filesystem into it... * push jenkins munin plugins upstream * some way to map failing jobs to debian bugs and display that in the job.... (probably via a 2nd build step) == Debian Packaging related * /usr/sbin/jenkins.debian.net-setup needs to be written * what update-j.d.n.sh does, needs to be put elsewhere... * debian/copyright is incorrect about some licenses: a.) the profitbricks+debian+jenkins logos b.) the preseeding files * better switch to scm trigger instead of scm pulling before releasing this as 0.1... === jenkins-job-builder related * this seems to be helpful: http://en.wikipedia.org/wiki/YAML#References (pyyaml which jenkins-job-builder uses supports them) * FIXME: sometimes true and some True used in yaml files * support for gitweb in jobs ** needs clean merge of my patches to jenkins-job-builder first... * cleanup my patches (eg add documentation) and send pull requests on github: ** publisher:logparse ** publisher:htmlpublisher ** publisher:imagegallery ** svn:scm ** properties: sidebar * d-i and chroot housekeeping jobs should be kept 365 days == Improve existing tests === d-i_manual* * svn:trunk/manual/po triggers the full build, should trigger language specific builds. * svn:trunk/manual is all thats needed, not whole svn:trunk * inform translators (and debian-boot for the package) === d-i_build* * run scripts/digress/ ? * bubulle wrote: "Another interesting target would be d-i builds *including non uploaded packages* (something like "d-i from git repositories" images). That would in some way require to create a quite specific image, with all udebs (while netboot only has udebs needed before one gets a working network setup). * build branches? (which?) * inform debian-boot@ ? === chroot-installation_* * inform debian-devel@ * "Hash Sum Mismatch" problem with squid, see https://jenkins.debian.net/job/chroot-installation_squeeze_install_developer_upgrade_to_wheezy/13/console ** pere says this is supposed to be fixed in squid3 * chroot-installation: only trigger (=really run) jobs if available+used packages have changed (save packages in db and compare) * warn about transitional packages installed (on non-upgrades only) ---- h01ger: how about all of the blends? pabs, if you could give me concrete (meta-)package names to install, that would be great+very helpful for ^education* and ^debian-edu* i can find them myself h01ger: hmm, doesn't seem to be easy to find that list, but here are a few: ezgo-* med-* science-* junior-* gis-* ---- === webchecks* * inform debian-www@ ? === g-i-installation_*: * babelbox.git has a nice langlist * $name-preseed.base -> sed .cfg (LANG) * for edu: pick LANG from predefined list at random - if last build was not successful or unstable fall back to English ** these jobs would not need to do an install, just booting them in rescue mode is probably enough general * test moar images: debian wheezy+sid cd and dvd images too and use lxde cd for installing lxde + etc * use jigdo to download images - but no edu jigdo images. * still havent got http://www.os-autoinst.org/ out of my mind === reproducible * pbuilder results cleanup * pbuilder cleanup cache * time+job based triggers reproducible build jobs: ** setup: time based ** example_good: triggered by setup ** core and all other: triggered by exampled_good * use git repo in job config? * document this on https://wiki.debian.org/ReproducibleBuilds * investigate packages not in sid from https://jenkins.debian.net/view/reproducible/job/reproducible_build_d-i/lastBuild/console - the list was taken from the jenkins d-i jobs... === Test Debian live * daily build from sid * test live images from http://live.debian.net/cdimage/release/current-next and .../current == Add more tests === Test more Debian Edu related things * manual - by language and full * build a cd-image from all edu packages (even (and especially) UNRELEASED ones and do a g-i-installation test with it ** this probably better is done after the edu packages has been switched to git and when edu cd are (also?) build on pettersson.d.o ** also because it's probably better to do this with unmodified d-i first :-) * test minimal and sugar profile, as well as gnome and lxde * test dvd. test amd64 +i386 chroot setup. === Test tasks: * test installations with (at least) more language tasks enabled, though tasksel doesn't work like this: ---- how do i install a task outside d-i? what interesting tasks are there? tasksel install h01ger: http://packages.debian.org/source/sid/tasksel ---- Help explaining how to test tasks (ie all the language tasks) very much welcome! === Test co-installability ---- Install everything with priority >= optional? These packages are not supposed to conflict with each other. jwilk, there are tools to detect these package sets just based on debian/control information. no need to test this every day by installing them :) running these tools daily OTOH... http://coinst.irill.org/ ---- === Test them all * build packages from all team repos on alioth with jenkins-debian-glue on team request (eg, via a .txt file in a git.repo) for specific branches (which shall also be automated, eg. to be able to only have squeeze+sid branches build, but not all other branches.) // vim: set filetype=asciidoc: